Компания Microsoft перешла к практике удаления ранее открытого кода из состава платформы .NET. В частности, из открытой кодовой базы, в которой велась разработка новой ветки платформы .NET 6, была удалена реализация функции Hot Reload, изначально предложенной не только в среде разработки Visual Studio 2019 16.11 (Preview 1), но и в открытой утилите «dotnet watch».
В качестве причины удаления упоминается решение поставлять указанную функции только в коммерческом продукте Visual Studio 2022, чтобы повысить его привлекательность по сравнению с открытым редактором Visual Studio Code. Примечательно, что 21 октября в заметке с анонсом Hot Reload появилось дополнение, в котором говорилось, что поддержка Hot Reload не будет включена в состав .NET SDK 6 и все усилия сосредотачиваются на разработке Visual Studio 2022. После появления недовольства пользователей примечание было убрано, но через некоторое время опять возвращено.
Функция Hot Reload предоставляет средства для редактирования кода на лету во время выполнения программы, позволяя вносить изменения без ручной остановки выполнения и без прикрепления точек останова. Разработчик мог запустить приложение под управлением «dotnet watch», после чего вносимые в код изменения автоматически применялись к запущенному приложению, что позволяло сразу наблюдать результат.
Независимые разработчики попытались вернуть в репозиторий удалённый код, который уже числился открытым и входил в состав предварительного выпуска .NET 6 RC1, но Microsoft не допустила это изменение, а также ограничила возможность оставления комментариев в обсуждении. Действия Microsoft вызвали возмущение участников сообщества, которые считают вопрос возвращения принципиальным и позволяющим понять то, является ли платформа .NET на деле открытым проектом или нет. Недовольство также вызывает то, что из-за наличия Visual Studio только для платформы Windows, функциональность «Hot Reload» станет недоступной для macOS и Linux.
Хотелось бы послушать начальника транспортного цеха grim, который постоянно пропагандирует .Net на Линуксе :)