Skip to content

Release v4.5.0

Choose a tag to compare

@github-actions github-actions released this 23 Oct 18:43
133ed78

Turn the bundled analyzers off with one property, and run large specification suites a little faster.

Added

  • CratisSpecificationsAnalyzers property: false turns the bundled CRSPEC analyzers off everywhere, ide keeps them in the editor and drops them from command-line and CI builds. Other analyzers and the native runner's source generator keep working. See Turning the analyzers off. (#84)
  • The native runner reports CRSPEC0010 as a warning for an async void fact or lifecycle method, whose failures cannot be observed. Return Task or ValueTask instead. (#84)

Changed

  • The CRSPEC analyzers ship only in the Cratis.Specifications package, so a project referencing several Cratis.Specifications packages loads them once. (#84)
  • ShouldContainOnly checks collections of 16 or more items with a counted lookup instead of a quadratic search in the xUnit, TUnit and runner packages; failure messages are unchanged. (#84)
  • The native runner's source generator skips its work in projects that do not reference Cratis.Specifications.Runner. (#84)

Fixed

  • The native runner reports the real return type of a fact (void, Task or ValueTask) in its test identity. (#84)