A few days ago, Microsoft published a blog post updating its progress and changes to .NET 6’s Hot Reload and the upcoming Visual Studio 2022 features. In this, the company declared something that turned a few heads but probably not in the way it had desired.
Microsoft announced that with .NET 6 general availability (GA) version, it “will enable Hot Reload functionality only through Visual Studio 2022”. The company later clarified this with an update stating:
[…] we are not releasing Hot Reload as a feature of the dotnet watch tool. We are investing all our energy into Visual Studio 2022 and working to support Hot Reload in Visual Studio for Mac in a future release.
Essentially, this meant that the Hot Reload feature was being locked down to Visual Studio 2022 only, which may need to be paid for depending on the version of the IDE a user opts for, and kind of defeats the purpose of an open-source foundation.
This led to an outcry from the developer community as the Hot Reload feature, which was introduced by Microsoft back in May, is a useful functionality that allows developers to alter and modify code on the fly without needing to pause or hitting a breakpoint. Realizing this, Microsoft pulled this request and has apologized for the matter today:
We made a mistake in executing on this plan in the way it was carried out. In our effort to scope, we inadvertently ended up deleting the source code instead of just not invoking that code path. We underestimated the number of developers that are dependent upon this capability in their environments across scenarios, and how the CLI was being used alongside Visual Studio to drive inner loop productivity by many.
[…] Our desire is to create an open and vibrant ecosystem for .NET. As is true with many companies, we are learning to balance the needs of OSS community and being a corporate sponsor for .NET. Sometimes we don’t get it right.
Hence, Hot Reload should be available when the .NET 6 SDK is generally rolled out on the 9th of next month. Meanwhile, Visual Studio 2022 GA version releases a day before.