Skip to content

2.3.0

Latest

Choose a tag to compare

@github-actions github-actions released this 04 Jun 02:22

πŸ—žοΈ Splat.DI.SourceGenerator 2.3.0

Consolidated modernization release (rolls in the superseded 2.2.2), signed with a valid Certum certificate.

πŸ” Supersedes 2.2.2. Splat.DependencyInjection.SourceGenerator and Splat.DependencyInjection.Analyzer 2.2.2 were signed with a code-signing certificate that has since been revoked (NuGet restore fails with NU3012). 2.2.2 has been unlisted and deprecated; please move to 2.3.0. (2.1.x and earlier predate the affected certificate and are unaffected.)

✨ Features

  • Implemented the graph-level diagnostics that were previously declared but never reported β€” 775bed8:
    • SPLATDI005 β€” circular dependency between registered constructor parameters
    • SPLATDI006 β€” interface registered multiple times (warning)
    • SPLATDI007 β€” a Lazy<T> constructor parameter whose T is not registered via RegisterLazySingleton

πŸ› Fixes

  • Fully qualify contract keys, skip RegisterConstant in the analyzer, and improve code quality (#296)

πŸ”§ Splat 19.4.1 compatibility

  • Generated registration code now targets the current Splat API β€” Splat.AppLocator replaces the removed Splat.Locator β€” 775bed8

πŸ“¦ Dependencies

Updated to the latest valid builds (PRs across the 2.1.2 β†’ 2.3.0 range collapsed per dependency):

  • Splat β†’ 19.4.1 β€” 775bed8
  • ReactiveUI β†’ 23.2.28 (#298, 775bed8)
  • ReactiveUI.SourceGenerators β†’ 3.0.0 β€” 775bed8
  • Microsoft.CodeAnalysis.Analyzers β†’ 5.3.0 (Roslyn Microsoft.CodeAnalysis.CSharp* pinned at 4.14, the VS 2022 baseline) β€” 775bed8
  • TUnit β†’ 1.49.0 (#291, #294, 775bed8)
  • Verify.TUnit β†’ 31.19.0 (#293, #297, #300, 775bed8)
  • Basic.Reference.Assemblies β†’ 1.8.8 β€” 775bed8
  • Microsoft.SourceLink.GitHub β†’ 10.0.300 (#301, 775bed8)
  • Add Microsoft.Testing.Extensions.CodeCoverage β€” f1c1995

πŸ› οΈ Build & CI

  • Add a CodeQL Advanced workflow (C# + actions), bump download-artifact to v8, randomise the lock-threads/CodeQL cron schedules, drop the redundant TUnitImplicitUsings flags β€” 775bed8
  • Make the test app non-packable; logo/readme refresh (#290)
  • ci(release): allow releasing from a historical ref β€” dc54cac
  • ci: drop redundant versioningTool input (MinVer is now unconditional) β€” d5bd036
  • build: migrate versioning to MinVer and adopt container signing β€” 3e2f4c1
  • ci(security): pin 3rd-party actions to commit SHAs (CodeQL actions/unpinned-tag) β€” e30e7a5
  • ci(release): migrate signing from SSL.com eSigner to Certum SimplySign β€” 43c96cf

πŸ”— Full Changelog: 2.1.2...v2.3.0

πŸ™Œ Contributions

πŸ’– Thanks to all the contributors: @glennawatson
πŸ€– Automated services that contributed: @renovate[bot]