在开源社区的公开抗议下,微软正在改变从其即将发布的.NET 6中删除一个关键功能的决定。本周早些时候,微软因为商业利益原因在即将发布的.NET 6中删除了Hot Reload(热重载)的一个关键部分,从而激怒了.NET开源社区,该功能允许开发者在应用运行时修改源代码,并立即看到结果。
这是一个许多人一直期待在Visual StudioCode和多个平台上使用的功能,直到微软在最后一刻做出了一个有争议的决定,将其锁定在Visual Studio 2022,这是一个仅限于Windows的付费产品,据透露,最后一刻的改变是由微软开发者部门的负责人Julia Liuson做出的,是一个以商业利益为考量的举措。
"微软承认它犯了一个错误"
在引起反响后,微软现在已经推翻了这一改变,微软自己的许多员工在公司内部也很愤怒。"我们在执行我们的决定时犯了一个错误,花了比预期更长的时间来回应社区,".NET项目管理主任Scott Hunter解释说。微软现在已经批准了社区的拉动请求,重新启用这一功能,它将在.NET 6 SDK的最终版本中提供。
媒体要求微软对一位高管下令改变这一事实进行评论,但该公司不想讨论这一有争议的决定。"我们已经采取措施来解决我们的一些OSS社区成员遇到的问题,"微软发言人在一份声明中说。"热重载功能将出现在11月8日提供的.NET 6 SDK的一般可用性构建中。"
不过,微软的博客文章并没有谈到这个有争议的决定。相反,它表明删除代码而不是简单地禁用它只是一个错误,而不是一个商业决定。亨特说:"在我们努力扩大范围的过程中,我们无意中最终删除了源代码,而不是仅仅不调用该代码路径,"。
虽然对.NET社区来说,这种逆转是值得欢迎的,但对那些重视这种决策透明度的人来说,围绕这一事件的解释和情况不会让他们感到轻松。
亨特说:"就像许多公司一样,我们正在学习平衡开放源码软件社区的需求和作为.NET的企业赞助商,有时我们不能正确地处理这个问题。当我们没有做到这一点时,我们能做的就是从我们的错误中学习,并更好地向前迈进。"
这一事件发生在.NET社区因微软参与.NET基金会而产生的数周动荡之后。该基金会是在2014年微软将.NET开源时创建的,它应该是一个独立的组织,其存在是为了改善.NET的开源软件开发和合作。一位辞职的董事会成员最近对.NET基金会的作用提出质疑,他问道:"在这里是为了执行微软对.NET开源的意志,还是为了帮助培养和促进一个健康的社区?"
最近的一场争论也导致了.NET基金会执行董事Claire Novotny最近辞职,还有人质疑鉴于微软在其中的特权以及.NET基金会的独立性。微软的这一转折无疑损害了它十年来所建立的一些开源工作,该公司在改善与.NET社区的关系以及围绕其对.NET基金会的影响的问题上仍有许多工作要做。