Nexen v1.4.24 — Avalonia 12 + Full Modernization
A major infrastructure release: Avalonia 12, ReactiveUI SourceGenerators, xunit v3, and full dependency modernization across the entire project.
Changed
- Avalonia 12.0.0 migration — Full migration from Avalonia 11.x to 12.0.0 across 206 files, including all API changes, builder pattern updates, and package alignment (#1200)
- Full dependency modernization — Updated all NuGet packages to latest versions: Avalonia 12.0.0, Dock.Avalonia 12.0.0.2, ReactiveUI.Avalonia 11.4.12, SkiaSharp.NativeAssets.Linux 3.119.2, xunit.v3 3.2.2, and more (#1200)
- ReactiveUI.Fody to SourceGenerators — Migrated from ReactiveUI.Fody to ReactiveUI.SourceGenerators 2.6.1 across 189 files for compile-time property generation, eliminating runtime IL weaving (#1201)
- xUnit v2 to v3 — Migrated all test projects from xunit 2.9.3 to xunit.v3 3.2.2 with updated assertions,
CancellationTokenpatterns, andIAsyncLifetimechanges (#1202)
Added
- Save state OSD redesign — Centered badge/date/time box layout for save state on-screen display with improved visual hierarchy (#1199)
Fixed
- Native libs always updated in portable mode —
DependencyHelpernow always updates native libraries to latest version in portable mode, not just on fresh installs (#1200) - Post-migration build warnings — Resolved all CS8618, RXUISG0020, and xUnit1051 warnings from the modernization migration (#1204)
Technical Details
- Avalonia 12 API audit — Comprehensive audit of all 13 Avalonia 12 API categories confirmed zero deprecated usage
- Zero build warnings — Full solution builds with 0 warnings across C++ and .NET projects
- 5,691 tests passing — 3,675 C++ tests + 1,429 .NET tests + 587 MovieConverter tests, all green
- .NET 10 / C# 14 — All projects target net10.0 with latest language features
NuGet Package Updates
| Package | From | To |
|---|---|---|
| Avalonia | 11.3.13 | 12.0.0 |
| Dock.Avalonia | 11.3.11.22 | 12.0.0.2 |
| ReactiveUI.Avalonia | 20.1.63 | 11.4.12 |
| ReactiveUI.SourceGenerators | (new) | 2.6.1 |
| xunit.v3 | (new, replaces xunit 2.9.3) | 3.2.2 |
| SkiaSharp.NativeAssets.Linux | 3.119.2 | 3.119.2 |
| Tmds.DBus.Protocol | 0.92.0 | 0.92.0 |