.NET Hot Reload Support via CLI

Scott Hunter [MSFT]

Last week, our blog post and the removal of the Hot Reload capability from the .NET SDK repo led to a lot of feedback from the community.

First and foremost, we want to apologize. We made a mistake in executing on our decision and took longer than expected to respond back to the community. We have approved the pull request to re-enable this code path and it will be in the GA build of the .NET 6 SDK.

As a team, we are committed to .NET being an open platform and doing our development in the open. The very fact that we decided to adopt an open posture by default from the start for developing the Hot Reload feature is a testament to that. That said, like any development team, from time to time we have to look at quality, time, resources to make tradeoffs while continuing to make forward progress. The vast majority of the .NET developers are using Visual Studio, and we want to make sure VS delivers the best experience for .NET 6.

With the runway getting short for the .NET 6 release and Visual Studio 2022, we chose to focus on bringing Hot Reload to VS2022 first. 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.

We are always listening to our customers’ feedback to deliver on their needs. Thank you for making your feedback heard. We are sorry that we made so many community members upset via this change across many parameters including timing and execution.

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. When we don’t, the best we can do is learn from our mistakes and be better moving forward.

Thank you for all of your feedback and your contributions over the years. We are committed to developing .NET in the open and look forward to continuing to work closely with the community.

Thank you! 🙏


Discussion is closed. Login to edit/delete existing comments.

  • Иван Ночной 0

    I don’t understand how such a thing could have come to mind?

    • Someone 0

      Yes, this is great question. How even somebody could think about that BAD decision.

  • Kazi Rahiv 0

    Thanks for listening!

  • Alberto Monteiro 0

    Thank you very much for listening the dotnet community.

  • Justin King 0

    Note for the future: just stop it with Visual Studio. Nobody feels you should pay for an IDE anymore and so resources/time are just wasted trying to hold onto this dying ecosystem that takes an hour to launch and half your disk space. development is open source, get your money from hosting .NET code best. Shift to VSCode and call it a day.

    • Someone 0

      Yes, they should close Visual Studio and create new, free, cross-platform, open-sourced, fast IDE. Just better tool which will be supported on Linux, Windows, macOS.

  • Trevor Herr 0

    A lot of pretty negative and skeptical comments. I for one feel very optimistic about the reversal despite the poor justification for it happening in the first place. I am hoping this is a lesson learned and we won’t have to worry about another said situation in the near future. It also shows there is a lot of good support within Microsoft to keep .NET as truely open-source as possible.

    • Fabien Geraud 0

      It’s seem it’s like you’re first time. If hot reload was the only problem there would be not so much comment. In fact it’s far from beein the only one.

      And you can add the problem of Dotnet foundation to all that https://github.com/dotnet-foundation/Home/discussions/39 .

      And it’s only the part we can see. What’s hidden. Has some say it take years to gain trust second to loose it. Personnally i use to defend them. But with this it’s like i betray all the people i lead to use .Net.

      More this aritcle never say it won’t happend again. And like omnisharp dotnet watch need a lot of ressource to be develop. They can just stop founding it and will be as if it was remove. I pretty sure dontnet watch will have one or two buf fix a year just to make anyone dream.

  • Ali Aslan 0

    We say that Microsoft is not like it used to be, positive things are happening. But you do something again and you break our hope. People do not believe that they have changed because of such behavior.

    You say open source and cross platform, you have no proper support or program other than Windows.

    You say we listen to our customers, but you act without asking your customers. You are thinking of the company’s interests, not them.

    You say .NET is so good, none of your great apps are written in .NET. I am sure that you will not write a new program or system that you will develop with .net.

    You’re pushing people to other operating systems and other programming languages, you realize?

    Tell me, how do you manage to make so many mistakes despite being such a big company?

    • Someone 0

      There are very great questions. Looking forward to see answers and GOOD actions.

  • Someone 0

    Money isn’t everything. Just think about bigger things such as community, open source, free software, cross-platform etc. Don’t think in terms of money charts, marketing, lying to people. If you want to create amazing community you should care, smart and hard work, respect people. If management in your company are toxic then you should change them. You should create better company, not stepping back to bad roots. Thanks to .NET community and few smart Microsoft programmers you apologized everyone. People don’t want next drama.

    That’s all and thank you and keep in mind what is going on.

  • mobin Motallebizadeh 0

    As a lifetime loyal fan and contributor, I lost my trust in Microsoft today. This was not a technical or management related issue. It was a moral one.

  • Robin Güldenpfennig 0

    Thanks for listening to the community.

  • Mariusz 0

    This “apology” doesn’t address most of the things that “can we trust Microsoft” blog post talk about: https://dusted.codes/can-we-trust-microsoft-with-open-source

    For me this situation was truly a wake-up call. I believed whole “Microsoft embrace opensource because now they earn most money on Azure and they embrace the fact that you use free and open source stuff because they just want you to use their cloud services” mantra and now I feel like an idiot.

    If Microsoft want to regain trust in developers and convince us that they take opensource serious they should do more. Much more. For example:
    * change .NET Core debugging libraries licence,
    * embrace Omnisharp and C# programming on free VS Code
    * maybe bring back MonoDevelop, fully open source and cross platform. Get rid of this “Visual Studio for Mac”.
    * be honest, let the core developers speak out about what really happened, event if they would “bad mouth” some higher ups
    * most important (and honestly I don’t know how they can do this) show us that “Visual Studio people” won’t sabotage future opensource and cross-platform .NET development.
    Maybe “.NET/sdk/c# deparment” and “Visual Studio department” are to tightly connected. I don’t know how Microsoft is organized. The people responsible for Visual Studio shouldn’t have that much power to affect .NET development and decision making.

    On a side note. I’m using Rider for about month now. This whole situation just convinced me more that this was a right choice…

Feedback usabilla icon