Microsoft a passé les 10 dernières années à adopter les logiciels open source et, à plusieurs reprises, à même admettre qu'il aime Linux et la communauté open source. La Linux Foundation a même félicité Microsoft pour sa collaboration avec la communauté open source après que la société a rejoint la fondation il y a près de cinq ans. Toute cette bonne volonté pourrait être sur le point de s'effondrer, grâce à une tempête qui se prépare dans la communauté .NET – la boîte à outils de développement phare et le framework logiciel de base de Microsoft.
Une décision commerciale controversée au sein de Microsoft a laissé de nombreuses questions sur l'engagement de l'entreprise envers l'open source. Plusieurs sources chez Microsoft disent à The Verge qu'il a également mis en colère de nombreux développeurs au sein de l'entreprise, mais qu'on leur a effectivement dit de ne pas se plaindre.
:no_upscale()/cdn.vox-cdn.com /uploads/chorus_asset/file/7105443/microsoftloveslinux.0.jpg)
Microsoft a discrètement supprimé une partie clé de Hot Reload dans la prochaine version de .NET 6 cette semaine, une fonctionnalité qui permet essentiellement aux développeurs d'obtenir un retour instantané lorsqu'ils créent un projet et modifiez le code pour voir immédiatement les résultats. C'est un argument de vente important pour le langage de programmation rival de Google Dart et la boîte à outils Flutter, et Microsoft a rattrapé son retard pour l'amener à .NET et Visual Studio.
Microsoft a décrit ses plans initiaux comme « un projet ambitieux visant à amener Hot Reload à autant de développeurs .NET que possible », mais un changement de dernière minute l'a laissé principalement limité aux développeurs Windows et Visual Studio au lieu d'être ouvert et disponible sur plusieurs plates-formes. . Microsoft a testé des versions presque finales « Release Candidate » de .NET 6 qui ont permis aux développeurs d'utiliser Hot Reload dans une variété d'environnements et de plates-formes avec dotnet watch, y compris le populaire environnement de développement Visual Studio Code. Une Release Candidate signifie généralement que Microsoft la considère prête pour la production, complète et que les utilisateurs doivent simplement se méfier des bogues avant qu'elle ne soit complètement publiée.
Connexe
Microsoft aime vraiment Linux
Microsoft : nous nous sommes trompés sur l'open source
Microsoft livrera un noyau Linux complet dans Windows 10
Microsoft rejoint le Linux Foundation, 15 ans après que Ballmer l'ait appelé 'cancer'
Mais un changement de dernière minute annoncé plus tôt cette semaine signifie que Microsoft “activera la fonctionnalité de rechargement à chaud uniquement via Visual Studio 2022 afin que nous puissions nous concentrer sur la fourniture des meilleures expériences au plus grand nombre d'utilisateurs”. Dmitry Lyalin, un responsable de programme travaillant sur la fonctionnalité Hot Reload chez Microsoft, a déclaré que l'entreprise « devait établir des priorités » et a donc abandonné Hot Reload en tant que fonctionnalité de l'outil de surveillance dotnet. Un fil sur GitHub remettant en question la suppression met en évidence la frustration de la communauté, ainsi que des commentaires sur Hacker News et le propre article de blog de Microsoft.
Désolé pour toute confusion. Pour clarifier, étant donné le nombre de scénarios sur lesquels nous travaillons, nous avons dû prioriser :(. Par conséquent, Hot Reload ne sortira pas en tant que fonctionnalité de l'outil de surveillance dotnet. Nous doublons la mise sur VS 2022 avec la prise en charge de VS4Mac à venir plus tard
— Dmitry Lyalin (@LyalinDotCom) 21 octobre 2021
« C'est encore plus décevant en regardant le code source de voir que la prise en charge était d'environ 1 à 2 000 lignes de code, et que ce code a maintenant été arraché au dernier moment », déclare Phillip Carter, un ancien employé de Microsoft sur le site de l'entreprise. L'équipe F#. « C'est un retour en arrière clair, en particulier parce que le rechargement à chaud n'a pas commencé comme étant réservé à Visual Studio. J'espère vraiment que ce n'est pas le début d'un modèle.”
The Verge comprend que la décision de supprimer la fonctionnalité de .NET 6 a été prise par Julia Liuson, responsable de la division développeur de Microsoft. Des sources décrivent cette décision comme une décision prise par les entreprises, et il est clair que l'entreprise pensait qu'elle passerait sous le radar et ne générerait pas de réaction. Les ingénieurs de Microsoft qui ont travaillé sur .NET pendant des années avec la communauté open source se sentent trahis et craignent que cette décision n'ait des effets durables sur les efforts open source de Microsoft.
« Si vous voulez une bonne expérience de développeur, vous êtes obligé d'utiliser Visual Studio, ce qui semble aller à l'encontre de tous les efforts multiplateformes de l'équipe .NET », explique Reilly Wood, un développeur indépendant qui a initialement soulevé le problème de la suppression sur GitHub. .
La décision intervient également après des semaines de troubles au sein de la communauté .NET au sujet de l'implication de Microsoft dans la fondation .NET. La fondation a été créée en 2014 lorsque Microsoft a rendu .NET open source, et c'est censé être une organisation indépendante qui existe pour améliorer le développement de logiciels open source et la collaboration pour .NET. Un membre démissionnaire du conseil d'administration a récemment remis en question le rôle de la .NET Foundation, demandant si elle est « ici pour faire respecter la volonté de Microsoft sur .NET Open Source, ou êtes-vous ici pour aider à favoriser et à promouvoir une communauté saine ? »
Microsoft a également verrouillé et limité une pull request pour supprimer cette fonctionnalité de rechargement à chaud dans .NET 6 pour dotnet watch. Cela empêche effectivement la communauté de commenter ou de rejeter les changements de dernière minute. La communauté a maintenant soumis sa propre pull request pour annuler les modifications de Microsoft, mais il est peu probable qu'elle soit approuvée.
Dans l'ordre pour que @dotnetfdn aille de l'avant, j'ai remis ma démission en tant que directeur exécutif. Je fais toujours partie de l'équipe @dotnet et j'ai hâte de continuer à travailler sur ma plateforme préférée.https://t.co/Xn4ghK3vMd
— Claire Novotny (@clairernovotny) 8 octobre 2021
< p id="ixrJGD">Une controverse récente a également conduit à la démission de la directrice exécutive de la Fondation .NET, Claire Novotny, et d'autres ont remis en question l'indépendance de la Fondation .NET compte tenu des privilèges spéciaux de Microsoft. Cette dernière controverse sur .NET 6 n'améliorera pas la tempête qui se prépare dans la communauté .NET.
Nous avons contacté Microsoft au sujet des modifications de .NET 6 et de la fondation .NET , et la société n'a pas été en mesure de publier une déclaration à temps pour la publication.
Mise à jour, 17 h 18 HE : article mis à jour pour clarifier les détails de Microsoft Pull request lock sur GitHub.