sillsdev / libpalaso

Palaso Library: A set of .Net libraries useful for developers of Language Software.
MIT License
44 stars 50 forks source link

Added Framework 4.8 to all projects #1326

Closed josephmyers closed 1 month ago

josephmyers commented 4 months ago

And fixed all warnings other than those warning about Framework 4.6.1.


This change is Reviewable

github-actions[bot] commented 2 months ago

LibPalaso Tests

    35 files  +   17      35 suites  +17   10m 12s :stopwatch: + 1m 58s  4 824 tests  -    68   4 593 :white_check_mark:  -    68  231 :zzz: ±  0  0 :x: ±0  11 044 runs  +4 707  10 516 :white_check_mark: +4 463  528 :zzz: +244  0 :x: ±0 

Results for commit 67306075. ± Comparison against base commit 8220e846.

This pull request removes 68 tests. ``` SIL.WritingSystems.Tests.SldrTests ‑ GetLdmlFile_CacheFileWithUidUnknown_StatusFileFromSldrCache SIL.WritingSystems.Tests.SldrTests ‑ GetLdmlFile_CacheFileWithUid_StatusFileFromSldrCache SIL.WritingSystems.Tests.SldrTests ‑ GetLdmlFile_GetsValidLDML("ar") SIL.WritingSystems.Tests.SldrTests ‑ GetLdmlFile_GetsValidLDML("en") SIL.WritingSystems.Tests.SldrTests ‑ GetLdmlFile_GetsValidLDML("false","ar") SIL.WritingSystems.Tests.SldrTests ‑ GetLdmlFile_GetsValidLDML("false","az") SIL.WritingSystems.Tests.SldrTests ‑ GetLdmlFile_GetsValidLDML("false","bn") SIL.WritingSystems.Tests.SldrTests ‑ GetLdmlFile_GetsValidLDML("false","de") SIL.WritingSystems.Tests.SldrTests ‑ GetLdmlFile_GetsValidLDML("false","en") SIL.WritingSystems.Tests.SldrTests ‑ GetLdmlFile_GetsValidLDML("false","en-GB") … ```

:recycle: This comment has been updated with latest results.

josephmyers commented 2 months ago

SIL.WritingSystems.Tests takes a ridiculous amount of time to finish. It's 8-10 minutes on my machine, and enough on the build server to time out. This is exacerbated by increasing our supported frameworks. Seems an appropriate time to look into how we can get those tests speedier.

josephmyers commented 2 months ago

The majority of the pain seems to be coming from the SldrTests. We could just not run these on the build server.

josephmyers commented 2 months ago

4a5ad40 succeeded in 10 minutes. Why did the previous time out at 30?

hahn-kev commented 2 months ago

@josephmyers I was seeing some tests hang when working on my writing systems tests, there's now a timeout in dotnet test to detect that so if it happens you should have some details about it at least, this is now in master.

josephmyers commented 2 months ago

oops, it looks like the following projects actually override TargetFrameworks meaning they don't pickup net48 from Directory.Build.props

  • AddSortKey
  • SIL.Core.Desktop
  • SIL.Core
  • SIL.DblBundle
  • SIL.DictionaryServices
  • SIL.Lexicon
  • SIL.Lift
  • SIL.Linux.Logging
  • SIL.Scripture
  • SIL.TestUtilities
  • SIL.WritingSystems

Good catch. So why is the test run doubled? Looks to me like it's running everything, though based on the code, it's likely not

LibPalaso Tests    34 files  +   17     34 suites  +17   9m 32s ⏱️ - 3m 43s 4 815 tests  -    68  4 584 ✅  -    68  231 💤 ±  0  0 ❌ ±0  9 668 runs  +4 766  9 180 ✅ +4 522  488 💤 +244  0 ❌ ±0 

Results for commit https://github.com/sillsdev/libpalaso/commit/d51226f79643393b134126283aa26325aabef746. ± Comparison against base commit https://github.com/sillsdev/libpalaso/commit/269c813ab4ec593d4cedfa5072b7b23948929db7.