.NET 5 Hits 'Go Live' Status in RC1, Ready for Production
Developers can now feel free to use .NET 5 code in production, as Microsoft has deemed the new Release Candidate 1 a "go live" release ahead of the official debut on Nov. 10 -- after one more release candidate.
The ground-breaking, unifying .NET 5 already was described as "feature complete" late last month in its eighth preview.
It is ground-breaking because it provides a unification of all things .NET, wrapping up all of the ecosystem's components into one package that marks the transition from the aging, Windows-only .NET Framework to the open source, cross-platform ".NET Core" offerings to the new direction: .NET 5.
"There will be just one .NET going forward, and you will be able to use it to target Windows, Linux, macOS, iOS, Android, tvOS, watchOS and WebAssembly and more," said Microsoft's Richard Lander, program manager for the .NET team, in announcing .NET 5 in May 2019.
However, troubles with some parts -- such as client-side Blazor WebAssembly, which allows for C#-based web development, and the "huge technical challenge" in migrating desktop dev components -- and slowdowns caused by the COVID-19 pandemic that forced companies to shutter their offices and make developers work from home, resulted in .NET 5 falling short of its original goal.
In announcing Preview 8, Lander said: "Last year, we laid out our vision for one .NET and .NET 5. We said we would take .NET Core and Mono/Xamarin implementations and unify them into one base class library (BCL) and toolchain (SDK). In the wake of the global health pandemic, we've had to adapt to the changing needs of our customers and provide the support needed to assist with their smooth operations. Our efforts continue to be anchored in helping our customers address their most urgent needs. As a result, we expect these features to be available in preview by November 2020, but the unification will be truly completed with .NET 6, our Long-Term Support (LTS) release. Our vision hasn't changed, but our timeline has."
For one example, that new timeline calls for a much faster Blazor WebAssembly -- with the much-requested ahead-of-time (AOT) compilation -- to debut in .NET 6.
The company even published results of a survey indicating the lack of native AOT in .NET Core was holding developers back from using the framework more.
However, even though it's diminished from its original vision, Lander this week noted many improvements that come in .NET 5, including:
Lander also went into great detail to focus on records in C# and
System.Text.Json.JsonSerializer. "They are separate features, but also a nice pairing, particularly if you spend a lot of time crafting POCO types for deserialized JSON objects."
Looking forward to RC2, Lander said, "At this point, we're looking for reports of any remaining critical bugs that should be fixed before the final release. We need your feedback to get .NET 5.0 across the finish line."
He also reminded developers that the team isn't adding any new features to .NET 5 at this point and he's using these final previews/RCs to detail already-built features, asking readers to weigh in on what they'd like to see covered in more detail in the upcoming RC2 announcement post.
And developers certainly weren't hesitant to do so in some 65 comments at the time of this writing, along with asking questions about functionality ranging from WinForms designer, VB.Net WinForms, Universal Windows Platform (UWP) support and more.
For one example, the most recent comment at the time of this writing reads:
Another amazing release that I am looking forward to using.
Unfortunately, I jumped the gun and got a very bloody nose trying out RC1. We have some shared libraries between our WebAPI app and Azure Function app (specifically a EF Core data access layer). I thought that .NET 5 might not play with Azure Functions yet and I was right.
The Azure Functions team has been cranking out some major improvements, but I can't find .NET 5 support on their roadmap. The only reference I could find to .NET 5 was this: https://github.com/Azure/azure-functions-vs-build-sdk/issues/451#issuecomment-673733152
Maybe the Azure Functions team could chime in as to when they expect to be able to support .NET 5 in preview and release?
The team has been pretty good in responding to developer questions on the post, so look forward to more information on that question and many more.
David Ramel is an editor and writer for Converge360.