Releases: reactiveui/ReactiveUI.SourceGenerators
3.1.0
🗞️ What's Changed
🐛 Fixes
- 3c0aa37 fix: restore Roslyn 4.8 band so .NET 8 SDK users work again @glennawatson
🔗 Full Changelog: v3.0.0...3.1.0
🙌 Contributions
💖 Thanks to all the contributors: @glennawatson
3.0.0
⚠️ Breaking change — Roslyn 4.8 / 4.12 support dropped
3.0.0 ships only the roslyn4.14 and roslyn5.0 analyzer bands. The roslyn4.8 and roslyn4.12 bands were removed, because per the Visual Studio 2022 lifecycle only 17.14 (Roslyn 4.14) remains a serviced VS 2022 baseline (17.8 / Roslyn 4.8 and 17.12 / Roslyn 4.12 are end of support).
Minimum requirements (updated)
| Minimum | |
|---|---|
| Visual Studio | 2022 17.14 (Roslyn 4.14) — or Visual Studio 2026 (Roslyn 5.0) |
| .NET SDK | 9.0.3xx (Roslyn 4.14) — or .NET 10 SDK (Roslyn 5.0) |
| ReactiveUI | 23.2.28+ |
| C# | 12.0 |
Action required: build with Visual Studio 2022 17.14+ / a Roslyn 4.14+ SDK, and reference ReactiveUI 23.2.28 or later. If you must stay on an older toolchain, remain on the 2.x line of this package.
🗞️ What's Changed
🧹 General Changes
- 0eea016 build: support only Roslyn 4.14 + 5.0 (drop 4.8/4.12 bands) @glennawatson
- b9e65f9 chore(deps): update NuGet packages to latest @glennawatson
- 7418f3d build: migrate versioning to MinVer and adopt container signing @glennawatson
- f9ac285 ci(release): adopt the common Certum SimplySign release workflow @glennawatson
- e324549 ci(release): allow releasing from a historical ref @glennawatson
- 2b1b70d ci: drop redundant versioningTool input (MinVer is now unconditional) @glennawatson
- c5a0ac8 ci(security): pin 3rd-party actions to commit SHAs @glennawatson
📝 Documentation
- 7f3d743 docs: correct minimum requirements — VS 2022 17.14 (Roslyn 4.14) and ReactiveUI 23.2.28+ @glennawatson
- e3b3b53 docs: make Roslyn support section timeless (factual VS 2022 end-of-support dates) @glennawatson
📦 Dependencies
Like-for-like dependency bumps grouped by package (final version shown):
Test stack
- TUnit → 1.45.29 (#405, #414, #418, #422, #423, #424, #427, #428) @renovate[bot]
- Verify.TUnit → 31.17.0 (#404, #417, #429) @renovate[bot]
- Microsoft.NET.Test.Sdk → 18.5.1 (#410) @renovate[bot]
- .NET test stack (#432) @renovate[bot]
Avalonia (sample app)
- Avalonia → v12 (#402, #419, #433) @renovate[bot]
- Avalonia.Diagnostics → 11.3.16 (#425) @renovate[bot]
ReactiveUI
Build / runtime
- Microsoft.SourceLink.GitHub → 10.0.300 (#412, #420) @renovate[bot]
- System.Formats.Asn1 → 10.0.8 (#413, #421) @renovate[bot]
- Microsoft.Extensions.Logging.Debug → 10.0.8 (#411) @renovate[bot]
- PolySharp → 1.16.0 (#431) @renovate[bot]
Final shipped versions are set in
Directory.Packages.props(e.g. TUnit1.48.6, Verify.TUnit31.19.0, ReactiveUI23.2.28); the lines above summarise the Renovate bumps that landed during the cycle.
🔗 Full Changelog: v2.6.30...v3.0.0
🙌 Contributions
💖 Thanks to all the contributors: @glennawatson
🤖 Automated services that contributed: @renovate[bot]
2.6.1
🗞️ What's Changed
♻️ Refactoring
- 6222fa4 Refactor model namespaces and update imports (#362) @ChrisPulman
🧹 General Changes
- 84d74d0 housekeeping: Bump version from 2.5 to 2.6.x @glennawatson
- 0ff4332 Housekeeping Add use of dependent source generator to the Readme (#318) (#325) @xecrets
- 215611a Housekeeping Update copyright year to 2026 (#361) @ChrisPulman
📦 Dependencies
- 3dfd83e chore(deps): update dependency verify.nunit to 31.7.3 (#335) @renovate[bot]
- b5b7b26 chore(deps): update dependency publicapigenerator to 11.5.3 (#332) @renovate[bot]
- f8a5eca chore(deps): update dependency nunit3testadapter to 6.0.1 (#353) @renovate[bot]
- d150a5c chore(deps): update dependency nunit3testadapter to 6.1.0 (#367) @renovate[bot]
- 99176d1 chore(deps): update dependency splat to v19 (#366) @renovate[bot]
- ad900a2 chore(deps): update dependency basic.reference.assemblies.net80 to 1.8.4 (#333) @renovate[bot]
- 5ad3136 chore(deps): update dependency verify.nunit to 31.9.3 (#358) @renovate[bot]
- cd6e454 chore(deps): update dependency splat to v18 (#357) @renovate[bot]
- 425a3d8 chore(deps): update dependency splat to 17.2.1 (#355) @renovate[bot]
- 58189bc chore(deps): update dependency nerdbank.gitversioning to 3.9.50 (#326) @renovate[bot]
- cbb80f6 chore(deps): update dependency basic.reference.assemblies.net80windows to 1.8.4 (#334) @renovate[bot]
- 263fcd5 chore(deps): update dependency splat to 19.2.1 (#368) @renovate[bot]
- cbc9adf chore(deps): update dotnet monorepo to v10 (major) (#327) @renovate[bot]
- 33e7e65 chore(deps): update reactiveui to 22.3.1 (#336) @renovate[bot]
- 015657e chore(deps): update avalonia to 11.3.10 (#350) @renovate[bot]
- a5e882c chore(deps): update dependency verify.nunit to 31.9.0 (#349) @renovate[bot]
- e5b36ba chore(deps): update dependency roslynator.analyzers to 4.15.0 (#348) @renovate[bot]
- ae4e029 chore(deps): update dessant/lock-threads action to v6 (#346) @renovate[bot]
- a28d1e2 chore(deps): update dependency publicapigenerator to 11.5.4 (#343) @renovate[bot]
- 4bb5460 chore(deps): update dependency nunit3testadapter to v6 (#344) @renovate[bot]
- ecb5527 chore(deps): update dependency verify.nunit to 31.8.0 (#340) @renovate[bot]
- d727ca8 chore(deps): update avalonia to 11.3.9 (#330) @renovate[bot]
- e7df116 chore(deps): update .net test stack (#320) @renovate[bot]
📌 Other
- de20111 Add IReactiveObject source generator and tests (#352) @ChrisPulman
- 9957d5c Replace Locator with AppLocator and RxApp with RxSchedulers (#339) @ChrisPulman
- b022d99 Add AlsoNotify support to ReactiveAttribute and generator (#354) @ChrisPulman
- 895e334 Add migration guide from ReactiveUI.Fody to SourceGenerators (#363) @ChrisPulman
- b0f2e5a Improve AlsoNotify handling in ReactiveGenerator (#356) @ChrisPulman
- bebb6cf Add Roslyn 5.0 support to source generators (#364) @ChrisPulman
- 8aedecb Add support for nullable return types in ReactiveCommand (#345) @ChrisPulman
- f283e27 Add ViewModelRegistrationType to IViewFor attribute (#341) @ChrisPulman
- 1f97e4a Add AccessModifier support to ReactiveCommand (#342) @ChrisPulman
- 5a781d7 Add analyzer and code fix for [Reactive] misuse (#365) @ChrisPulman
🔗 Full Changelog: 2.5.1...2.6.1
🙌 Contributions
🌱 New contributors since the last release: @xecrets
💖 Thanks to all the contributors: @ChrisPulman, @glennawatson, @xecrets
🤖 Automated services that contributed: @renovate[bot]
2.5.1
🗞️ What's Changed
✨ Features
- 4a5d460 Feature Add Splat Registrations to IViewFor Generator (#289) @ChrisPulman
🧹 General Changes
- 1b5705a chore(tests): migrate test suite from xUnit to NUnit 4.4.0, eliminate .shproj, and centralize TFMs (#321) @Copilot @copilot-swe-agent[bot] @glennawatson
- c9074e5 chore: Bump version from 2.4 to 2.5.x @glennawatson
- de78e34 Update productNamespacePrefix in CI workflow @glennawatson
📦 Dependencies
- 2a9f6be chore(deps): update avalonia to 11.3.8 (#322) @renovate[bot]
- 087b420 chore(deps): update dependency fluentassertions to 8.7.0 (#299) @renovate[bot]
- 90c20c3 chore(deps): update reactiveui to v21 (major) (#301) @renovate[bot]
- b3d91c3 chore(deps): update dependency microsoft.reactive.testing to 6.0.2 (#291) @renovate[bot]
- e86b027 chore(deps): update .net test stack (#298) @renovate[bot]
- 07844a7 chore(deps): update .net test stack (major) (#309) @renovate[bot]
- 4566240 chore(deps): update dependency roslynator.analyzers to 4.14.1 (#311) @renovate[bot]
- bf7f3c9 chore(deps): update dependency verify.xunit to 30.20.1 (#310) @renovate[bot]
- 343c521 chore(deps): update dependency publicapigenerator to 11.5.0 (#314) @renovate[bot]
- e666338 chore(deps): update reactiveui to 22.1.1 (#313) @renovate[bot]
- e497356 chore(deps): update reactiveui to v22 (major) (#308) @renovate[bot]
- ffdb4d5 chore(deps): update dependency microsoft.reactive.testing to 6.1.0 (#307) @renovate[bot]
- 317f731 chore(deps): update avalonia to 11.3.7 (#306) @renovate[bot]
- 7db6957 chore(deps): update dependency verify.xunit to 30.19.2 (#305) @renovate[bot]
- 3a84faf chore(deps): update dependency splat to v17 (#304) @renovate[bot]
- f1fdec1 chore(deps): update dependency splat to 16.2.1 (#303) @renovate[bot]
- 1813422 chore(deps): update dependency verify.xunit to 30.10.0 (#290) @renovate[bot]
- 78e2e4c chore(deps): update dependency fluentassertions to 8.7.1 (#302) @renovate[bot]
- a10008b chore(deps): update avalonia to 11.3.6 (#297) @renovate[bot]
- 4ed6677 chore(deps): update dependency nerdbank.gitversioning to 3.8.118 (#300) @renovate[bot]
- 9c173d4 chore(deps): update reactiveui to 22.2.1 (#324) @renovate[bot]
📌 Other
- 42b4246 Enable installation of workloads in CI build @glennawatson
- 50f1622 Enable Windows targeting in build properties @glennawatson
- 3a5af09 Change installWorkloads to false in CI build @glennawatson
🔗 Full Changelog: 2.4.1...2.5.1
🙌 Contributions
🌱 New contributors since the last release: @Copilot
💖 Thanks to all the contributors: @ChrisPulman, @Copilot, @glennawatson
🤖 Automated services that contributed: @copilot-swe-agent[bot], @renovate[bot]
2.4.1
Refactors
- Add ReactiveCollection source generator and tests by @ChrisPulman in #271
- Add ReactiveCollection to the Readme by @ChrisPulman in #273
Fixes
- Fix for partial classes add documentation comments by @ChrisPulman in #269
Dependencies
- chore(deps): update dependency reactiveui.maui to 20.4.1 by @renovate[bot] in #270
- chore(deps): update avalonia monorepo to 11.3.2 by @renovate[bot] in #264
- chore(deps): update dependency fluentassertions to 8.5.0 by @renovate[bot] in #272
- chore(deps): update dependency xunit.runner.visualstudio to 3.1.2 by @renovate[bot] in #274
- chore(deps): update dependency xunit.runner.visualstudio to 3.1.3 by @renovate[bot] in #276
- chore(deps): update dependency basic.reference.assemblies.net80windows to 1.8.3 by @renovate[bot] in #279
- chore(deps): update dependency basic.reference.assemblies.net80 to 1.8.3 by @renovate[bot] in #278
- chore(deps): update dependency xunit.stafact to v3 by @renovate[bot] in #275
- chore(deps): update dependency verify.xunit to 30.5.0 by @renovate[bot] in #277
- chore(deps): update dependency verify.xunit to 30.6.0 by @renovate[bot] in #282
- chore(deps): update dependency roslynator.analyzers to 4.14.0 by @renovate[bot] in #280
- chore(deps): update avalonia monorepo to 11.3.3 by @renovate[bot] in #281
- chore(deps): update dependency verify.xunit to 30.6.1 by @renovate[bot] in #283
- chore(deps): update dependency fluentassertions to 8.6.0 by @renovate[bot] in #285
- chore(deps): update dependency verify.xunit to 30.7.2 by @renovate[bot] in #284
- chore(deps): update dependency xunit.runner.visualstudio to 3.1.4 by @renovate[bot] in #287
- chore(deps): update dependency verify.xunit to 30.7.3 - autoclosed by @renovate[bot] in #288
- chore(deps): update avalonia monorepo to 11.3.4 by @renovate[bot] in #286
Contributions
Thanks to all the contributors: @ChrisPulman, @glennawatson
The following automated services have also contributed to this release: @renovate[bot]
Full Changelog: 2.3.1...2.4.1
2.3.1
What's Changed
- chore(deps): update dependency microsoft.net.test.sdk to 17.14.0 by @renovate in #243
- chore(deps): update dependency fluentassertions to 8.3.0 by @renovate in #247
- chore(deps): update dependency basic.reference.assemblies.net80windows to 1.8.1 by @renovate in #249
- chore(deps): update dependency basic.reference.assemblies.net80 to 1.8.1 by @renovate in #248
- chore(deps): update dependency basic.reference.assemblies.net80windows to 1.8.2 by @renovate in #253
- Fix For Attribute to use System.Attribute by @ChrisPulman in #250
- Fix Attribute On Partial Reactive Property Is Duplicated by @ChrisPulman in #251
- chore(deps): update dependency basic.reference.assemblies.net80 to 1.8.2 by @renovate in #252
- chore(deps): update dependency reactiveui to 20.3.1 by @renovate in #254
- chore(deps): update dependency reactiveui.maui to 20.3.1 - autoclosed by @renovate in #255
- chore(deps): update dependency verify.xunit to 30.4.0 by @renovate in #256
- chore(deps): update avalonia monorepo to 11.3.1 by @renovate in #258
- chore(deps): update dependency xunit.runner.visualstudio to 3.1.1 by @renovate in #259
- chore(deps): update dependency microsoft.net.test.sdk to 17.14.1 by @renovate in #257
- chore(deps): update dependency verify.xunit to 30.4.0 by @renovate in #261
- Update README by @ChrisPulman in #263
- Fix for not respected by IntelliSense by @ChrisPulman in #262
Contributions
Thanks to all the contributors: @ChrisPulman, @glennawatson
The following automated services have also contributed to this release: @renovate[bot]
Full Changelog: 2.2.4...2.3.1
2.2.4
Features
- a31d58e Feature Enable Partial Reactive Properties to have initializer (#231) @ChrisPulman
Fixes
- 1e6657b Fix support for classes implementing IReactiveObject without inheriting from ReactiveObject (#225) @megazyz
General Changes
- 59bd8c8 Housekeeping Update readme to reflect changes made (#235) @ChrisPulman
- f7eca5c Housekeeping fix file header (#227) @ChrisPulman
- c677fef Housekeeping update copyright (#219) @ChrisPulman
Dependencies
- 76401de chore(deps): update dependency reactiveui.maui to 20.2.45 (#214) @renovate[bot]
- 807d318 chore(deps): update dependency verify.xunit to 28.15.0 (#217) @renovate[bot]
- 9c64086 chore(deps): update dependency fluentassertions to 8.2.0 (#212) @renovate[bot]
- 97a5af1 chore(deps): update dependency verify.xunit to 28.14.0 (#211) @renovate[bot]
- b12eeb4 chore(deps): update dependency reactiveui to 20.2.45 (#213) @renovate[bot]
- 248d21e chore(deps): update dependency xunit.stafact to v2 (#210) @renovate[bot]
- 4285486 chore(deps): update nuget monorepo to 6.14.0 (#238) @renovate[bot]
- c0796f0 chore(deps): update dependency publicapigenerator to 11.4.6 (#228) @renovate[bot]
- f496b8f chore(deps): update avalonia monorepo to 11.2.8 (#221) @renovate[bot]
- d21c2e2 chore(deps): update dependency verify.xunit to v29 (#223) @renovate[bot]
- c5ffd62 chore(deps): update dependency verify.xunit to 29.4.0 (#229) @renovate[bot]
- 07b7f27 chore(deps): update dependency xunit.stafact to 2.1.7 (#226) @renovate[bot]
- b016b77 chore(deps): update dependency verify.xunit to 29.5.0 (#230) @renovate[bot]
- 3441e3f chore(deps): update dependency verify.xunit to v30 (#233) @renovate[bot]
- ac64ac6 chore(deps): update avalonia monorepo to 11.3.0 (#232) @renovate[bot]
- 6287dc7 chore(deps): update dependency verify.xunit to 30.1.0 (#236) @renovate[bot]
- 48ca2e5 chore(deps): update dependency xunit.runner.visualstudio to 3.1.0 (#234) @renovate[bot]
- c6f2d12 chore(deps): update dependency verify.xunit to 28.14.1 (#215) @renovate[bot]
Contributions
New contributors since the last release: @megazyz
Thanks to all the contributors: @ChrisPulman, @megazyz
The following automated services have also contributed to this release: @renovate[bot]
2.1.27
Fixes
- 24ce747 Fix for required keyword on partial properties (#209) @ChrisPulman
- d0eb22b Fix for Nullable partial OAPH properties (#199) @ChrisPulman
- 5205db6 Fix For Reactive generator using value (#198) @ChrisPulman
Dependencies
- 7255423 chore(deps): update dependency xunit.runner.visualstudio to 3.0.2 (#189) @renovate[bot]
- 76252c1 chore(deps): update dependency publicapigenerator to 11.4.2 (#196) @renovate[bot]
- abd3315 chore(deps): update dependency verify.xunit to 28.11.0 (#194) @renovate[bot]
- dfa2a4c chore(deps): update dependency roslynator.analyzers to 4.13.0 (#190) @renovate[bot]
- 09b386f chore(deps): update avalonia monorepo to 11.2.4 (#195) @renovate[bot]
- fd8e5cf chore(deps): update dependency microsoft.net.test.sdk to 17.13.0 (#191) @renovate[bot]
- 0227aeb chore(deps): update dependency verify.xunit to 28.10.0 (#187) @renovate[bot]
- e75ad6f chore(deps): update dependency fluentassertions to 8.1.0 (#200) @renovate[bot]
- b8dacdc chore(deps): update dependency roslynator.analyzers to 4.13.1 (#203) @renovate[bot]
- 6a7a1cc chore(deps): update dependency fluentassertions to 8.1.1 (#201) @renovate[bot]
- e01572a chore(deps): update dependency verify.xunit to 28.12.0 (#202) @renovate[bot]
- a502fd6 chore(deps): update avalonia monorepo to 11.2.5 (#205) @renovate[bot]
- 153ff52 chore(deps): update dependency verify.xunit to 28.13.0 (#204) @renovate[bot]
- 7c78042 chore(deps): update dependency publicapigenerator to 11.4.5 (#207) @renovate[bot]
- 5fb155f chore(deps): update dependency verify.xunit to 28.10.1 (#188) @renovate[bot]
- 75041ce chore(deps): update nuget monorepo to 6.13.2 (#206) @renovate[bot]
Contributions
Thanks to all the contributors: @ChrisPulman
The following automated services have also contributed to this release: @renovate[bot]
2.1.8
Fixes
- 865e35b Fix ReadOnly for OAPH (#186) @ChrisPulman
General Changes
- f98b5b5 Update Code Fix to report more accurately (#178) @ChrisPulman
Dependencies
- 8c53514 chore(deps): update dependency coverlet.msbuild to 6.0.4 (#175) @renovate[bot]
- 861c469 chore(deps): update dependency publicapigenerator to 11.4.0 (#179) @renovate[bot]
- 7edb7a2 chore(deps): update dependency publicapigenerator to 11.4.1 (#182) @renovate[bot]
- 0ab3159 chore(deps): update dependency roslynator.analyzers to 4.12.11 (#181) @renovate[bot]
Contributions
Thanks to all the contributors: @ChrisPulman
The following automated services have also contributed to this release: @renovate[bot]
2.1.1
Features
- 9e86c87 Feature Add OutputScheduler to ReactiveCommand (#166) @ChrisPulman
Fixes
- a2f5e52 Fix for : Same class name in different namespaces (#132) @ChrisPulman
- 45490dc Fix For OAPH With Nested Classes (#156) @ChrisPulman
- ba42ba4 Fix For ReactiveCommand With Nested Classes (#155) @ChrisPulman
- 725bb73 Fix For Reactive Property with Nested Classes (#152) @ChrisPulman
Dependencies
- 9e64cbe chore(deps): update dependency verify.xunit to 28.1.3 (#130) @renovate[bot]
- e70cb67 chore(deps): update dependency verify.xunit to 28.2.0 (#135) @renovate[bot]
- bdcdd98 chore(deps): update dependency polysharp to 1.15.0 (#141) @renovate[bot]
- 03beb2f chore(deps): update dependency microsoft.net.test.sdk to 17.12.0 (#140) @renovate[bot]
- fe75680 chore(deps): update dependency verify.xunit to v28 (#128) @renovate[bot]
- 812d691 chore(deps): update dependency nerdbank.gitversioning to 3.7.112 (#146) @renovate[bot]
- b5eac5e chore(deps): update dotnet monorepo to 4.12.0 (#148) @renovate[bot]
- bdd96e2 chore(deps): update dependency fluentassertions to v7 (#143) @renovate[bot]
- cbdf9de chore(deps): update dependency verify.xunit to 28.6.1 (#138) @renovate[bot]
- 4744244 chore(deps): update dependency xunit.runner.visualstudio to v3 (#149) @renovate[bot]
- 357b211 chore(deps): update dependency roslynator.analyzers to 4.12.10 (#150) @renovate[bot]
- c098374 chore(deps): update avalonia monorepo to 11.2.3 (#139) @renovate[bot]
- 69c08f0 chore(deps): update nuget monorepo to 6.12.1 (#137) @renovate[bot]
- dcb81e9 chore(deps): update dependency publicapigenerator to 11.3.0 (#147) @renovate[bot]
- 9c23d0f chore(deps): update dotnet monorepo to v9 (major) (#136) @renovate[bot]
- b62b609 chore(deps): update xunit-dotnet monorepo to 2.9.3 (#165) @renovate[bot]
- 63f305e chore(deps): update dependency fluentassertions to v8 (#169) @renovate[bot]
- 0e0a227 chore(deps): update dependency xunit.runner.visualstudio to 3.0.1 (#170) @renovate[bot]
- 902d429 chore(deps): update dependency verify.xunit to 28.7.0 (#153) @renovate[bot]
- 4fc8211 chore(deps): update dependency nerdbank.gitversioning to 3.7.115 (#171) @renovate[bot]
- b044e18 chore(deps): update dependency verify.xunit to 28.9.0 (#167) @renovate[bot]
- 8f99801 chore(deps): update dependency xunit.stafact to 1.2.69 (#168) @renovate[bot]
- c27bc5c chore(deps): update dependency basic.reference.assemblies.net80 to 1.8.0 (#162) @renovate[bot]
- 16b12c3 chore(deps): update dependency coverlet.msbuild to 6.0.3 (#160) @renovate[bot]
- 5f67734 chore(deps): update dependency basic.reference.assemblies.net80windows to 1.8.0 (#163) @renovate[bot]
- ddcfa72 chore(deps): update dependency fluentassertions to 6.12.2 (#127) @renovate[bot]
- 3a78bfa chore(deps): update dependency verify.xunit to 28.8.1 (#158) @renovate[bot]
- 465f6a0 chore(deps): update avalonia monorepo to 11.2.0 (#129) @renovate[bot]
Contributions
Thanks to all the contributors: @ChrisPulman, @glennawatson
The following automated services have also contributed to this release: @renovate[bot]