Microsoft à nouveau sous le feu des développeurs .NET open source : fonctionnalité de rechargement à chaud retirée pour le bien des ventes de Visual Studio

  • FrançaisFrançais



  • Mis à jour Microsoft a enragé la communauté .NET open source en supprimant la fonctionnalité phare de .NET open source pour renforcer l’attrait de Visual Studio, notamment contre son cousin multiplateforme Visual Studio Code.

    Les deux éléments clés de ces derniers troubles sont cette demande d’extraction dans le référentiel open source .NET SDK sur GitHub, dans lequel 2 500 lignes de code implémentant une fonctionnalité appelée Hot Reload sont supprimées d’un outil appelé dotnet watch ; et ce billet de blog dans lequel Dmitry Lyalin, directeur de programme principal, a révélé « nous avons décidé qu’à partir de la prochaine version de .NET 6 GA, nous n’activerons la fonctionnalité de rechargement à chaud que via Visual Studio 2022 ».

    Le rechargement à chaud est une fonctionnalité grâce à laquelle les développeurs peuvent modifier le code source pendant qu’une application est en cours d’exécution, appliquer les modifications et voir les résultats dans l’application en cours d’exécution. Cela accélère le processus de développement car il est plus rapide que de reconstruire le code, d’arrêter l’application, d’appliquer les modifications, puis de la relancer.

    Lorsque Hot Reload a été introduit, Lyalin a déclaré que les développeurs pouvaient l’utiliser via “l’expérience .NET Hot Reload dans Visual Studio 2019 version 16.11 (Aperçu 1) et via l’outil de ligne de commande dotnet watch dans .NET 6 (Aperçu 4”). La fonctionnalité est dans .NET 6 RC2, qui a une licence de mise en service, et qui a été publiée le 12 octobre avant le lancement de .NET 6 prévu le 9 novembre lors de la .NET Conf 2021 en ligne.

    La suppression de Hot Reload est surprenante à ce stade avancé et a été accueillie avec consternation par les développeurs .NET – à tel point qu’une pull request pour empêcher le changement a été soumise et a rapidement attiré un soutien. “C’est le PR qui va vraiment décider que .NET est vraiment un OSS [open source software project] ou pas », a déclaré un développeur.

    Pourquoi cela compte pour nous tous

    Pourquoi si important ? Bien que Hot Reload soit une fonctionnalité d’outillage, l’implication du changement est que le SDK open source .NET est délibérément paralysé pour rendre apparemment Visual Studio – qui est un produit commercial avec une version gratuite réduite – plus attrayant que ses rivaux, y compris le code Visual Studio sponsorisé par Microsoft. Le changement s’est également fait sans concertation avec la communauté, qui semble sourde à la suite de la crise concernant la Fondation .NET qui a en son cœur la même question : Microsoft est-il sérieux que .NET soit une plate-forme open-source ?

    La décision de limiter la disponibilité de Hot Reload semble également curieuse aux étrangers. Les outils de développement sont stratégiquement importants pour une entreprise de plate-forme comme Microsoft : en termes simples, ils attirent les programmeurs vers la plate-forme. Qui peut oublier Steve Ballmer, ancien PDG de Microsoft, et son cri de “développeurs, développeurs, développeurs” ? Rire nous pouvons; Pourtant, le cabinet d’analystes Redmonk a fondé son entreprise sur la « thèse selon laquelle les développeurs sont les nouveaux faiseurs de rois ».

    Une application critique pour l’entreprise peut générer des dépenses importantes sur Azure, et le cloud de Microsoft est une destination naturelle pour .NET, tout comme Google Cloud bénéficie du statut de la société de publicité en tant qu’inventeur de Kubernetes. Visual Studio Code est gratuit, mais c’est aussi le produit le plus réussi de Microsoft dans la communauté des développeurs, et une solide prise en charge de .NET dans VS Code présente un avantage potentiel bien plus important pour Redmond qu’un léger impact sur les ventes de Visual Studio.

    « Est-ce que je comprends bien cela comme signifiant que la fonctionnalité de rechargement à chaud qui fonctionne déjà avec dotnet watch dans les aperçus .NET 6 est supprimée ? À l’heure actuelle, je peux créer une application console .NET, l’exécuter avec dotnet watch, modifier des fichiers et avoir qu’ils soient rechargés automatiquement sans redémarrage de l’application. Si cela s’en va… oof », a déclaré un autre développeur, tandis qu’un autre commentaire demandait : « Comment pouvez-vous vous attendre à ce que .NET soit une solution valable pour le développement multiplateforme si vous gimp activement expérience de développeur sur des plateformes autres que Windows ?”

    Un autre problème lié à la création d’une fonctionnalité d’outillage clé exclusive à Visual Studio est qu’elle supprime l’option des développeurs macOS et Linux, car Visual Studio est uniquement Windows. Microsoft a déclaré que la fonctionnalité est également prévue pour Visual Studio Mac ; mais cela a une utilisation minime par rapport à VS Code.

    Des excuses

    La raison invoquée par Microsoft, dans la mesure où elle a été mentionnée, est qu’avec .NET “le backlog continue de croître”, laissant entendre que le problème est le manque de ressources. Personne ne le croit, sachant que Lyalin passe la majeure partie de son article à souligner comment l’équipe a fait d’excellents progrès pour améliorer la fonctionnalité.

    Sur Twitter, c’était c’est noté que la suppression « s’est produite après que RC1 et RC2 aient été rendus publics … et après qu’ils aient officiellement annoncé que les fonctionnalités disponibles dans RC1 seraient disponibles et prises en charge dans le produit final ». La discussion sur la tristement célèbre demande d’extraction du SDK .NET était “verrouillée et limitée aux collaborateurs”, un autre signe que c’est quelque chose dont le géant informatique ne veut pas discuter.

    Qu’en pense l’équipe .NET de Microsoft ? Les évangélistes normaux sont restés silencieux sur la question, bien que l’avocat des développeurs bien connu et normalement exubérant de Microsoft, Scott Hanselman, ait poster une larme hier soir sans en donner la raison : qui sait, il pourrait y avoir un lien.

    Lyalin a ajouté puis supprimé une section intitulée “Mise à jour du 21 octobre 2021” à son message, qui indiquait: “Pour clarifier, nous ne publions pas Hot Reload en tant que fonctionnalité de l’outil de surveillance dotnet. Nous investissons toute notre énergie dans Visual Studio 2022.” Nous ne savons pas quoi penser de la suppression de cette mise à jour et avons également demandé à Microsoft de plus amples commentaires. ®

    Note de blog

    À peu près ou peu de temps après la publication de cet article, le billet de blog de Lyalin a été à nouveau mis à jour pour rétablir la clarification ci-dessus. Et c’est ainsi.

    Mis à jour pour ajouter

    Il semble que Microsoft ait changé d’avis à la lumière du tollé des développeurs et que Hot Reload ne soit pas supprimé de .NET open source. Samedi, le directeur de la gestion des programmes de .NET, Scott Hunter, a déclaré :

    “D’abord et avant tout, nous voulons nous excuser. Nous avons fait une erreur en exécutant notre décision et avons pris plus de temps que prévu pour répondre à la communauté. Nous avons approuvé la pull request pour réactiver ce chemin de code et ce sera dans le Version GA du SDK .NET 6.”

    L'équipe de Comparaland

    Rédacteur web depuis 2009 et webmestre depuis 2011.

    Je m'intéresse à tous les sujets comme la politique, la culture, la géopolitique, l'économie ou la technologie. Toute information permettant d'éclairer mon esprit et donc, le vôtre, dans un monde obscur et à la dérive. Je suis l'auteur de plusieurs livre

    Pour me contacter personnellement :

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *