Rx.NET 7.0 has been released, focusing on reducing the deployment size of Windows applications. The primary change involves separating Windows UI integration components, such as WPF, Windows Forms, UWP, and Windows Runtime, from the core System.Reactive package. This modification prevents self-contained applications from including tens of megabytes of unused framework dependencies in their deployment output.
The issue affected applications using self-contained or Native AOT deployment with a Windows-specific target framework moniker (e.g., net8.0-windows10.0.19041). Previously, referencing System.Reactive could cause the entire WPF and Windows Forms frameworks to be included, even if the application did not utilize these UI frameworks. This could add approximately 90 MB without trimming, 47 MB with trimming, and 11 MB for Native AOT builds, according to endjin, the maintainers of Rx.NET.
To resolve this, Rx.NET 7.0 moves UI-specific functionality into dedicated NuGet packages: System.Reactive.Windows.Forms, System.Reactive.Wpf, System.Reactive.WindowsRuntime, and System.Reactive.Uwp. Applications that require these integrations must explicitly add the corresponding package after upgrading. Projects not using these UI components will see smaller self-contained deployments without requiring source code changes.
Maintainers have worked to preserve binary compatibility despite the package split. Older UI APIs remain in the runtime assemblies of the main NuGet package but are removed from its reference assemblies. This allows precompiled components built against Rx.NET 6.1 to continue functioning, while new applications are prevented from inadvertently depending on Windows UI functionality without the correct package. An analyzer included with System.Reactive 7.0 identifies affected source code and suggests the necessary package. Rx.NET 7.0 also drops support for .NET 6 and .NET 7, continuing support for .NET 8, .NET 9, and .NET 10.
✨ This summary was generated by AI from the outlets' reporting listed below. It is not independently verified and may contain errors — check the original sources. How BrevFeed works →
One email each morning: the day's tech stories, clustered across outlets and summarized. No account needed.
One email a day. Unsubscribe in one click, any time.
Spend a few minutes, get the whole day. Every topic's top stories in one hands-free rundown — listen, watch, or read the transcript.
▶ Play today's briefNew every morning, and the back catalogue is archived by date.
Rx.NET 7.0 has been released, separating Windows UI integration components from the main System.Reactive package. This change reduces deployment sizes for self-contained .NET applications that do not use Windows UI frameworks, addressing an issue where unused dependencies added significant overhead.