Le 2 mars dernier, Microsoft a franchi deux étapes importantes avec son IDE Visual Studio. D’une part, l’éditeur a livré la version de production de Visual Studio 2019 16.9 et d’autre part, il a dévoilé le premier aperçu de la prochaine version 16.10 de Visual Studio 2019. L’itération 16.9 permet une détection rapide des erreurs de mémoire avec Address Sanitizer (ASan), et une recherche des problèmes de mémoire du runtime. Dans cette version de production, Microsoft Visual C++ peut désormais déterminer quelles bibliothèques d'exécution sont nécessaires pour utiliser ASan avec un projet.

Toujours à propos du langage C++, Visual Studio 2019 16.9 implémente des propositions More Constexpr Containers qui permettent aux destructeurs et aux nouvelles expressions d'être constexpr. Enfin, C++ IntelliSense a été amélioré, notamment la stabilité et la fonction de fourniture de modules importés et d'unités d'en-tête.

Des fonctionnalités supplémentaires

Parmi les autres fonctionnalités et améliorations de Visual Studio 2019 16.9, on peut signaler que :

- Pour améliorer la productivité de .NET, les directives using seront ajoutées automatiquement lors du copier-coller de types dans un nouveau fichier. Des indications de type en ligne ont été ajoutées, qui permettent d'insérer des ornements pour les variables avec des types inférés et des types de paramètres lambda. La complétion IntelliSense insère désormais automatiquement un point-virgule comme caractère de validation pour la complétion de la méthode et la création d'objets.

- Le débogage de .NET Core dans WSL (Windows Subsystem for Linux) 2 permet de déboguer le code dans WSL 2 en utilisant la distribution Linux choisie par le développeur. Seules Ubuntu et Debian ont été testées et sont actuellement prises en charge. Les autres distributions devraient fonctionner mais nécessitent l'installation manuelle du runtime .NET Core et de Curl.

- Les outils XAML ont été améliorés pour WPF, WinUI, UWP et Xamarin.Forms. Parmi les améliorations, des ampoules ont été introduites dans l'éditeur de code XAML pour définir le design DataContext en XAML sur un modèle de vue disponible. Cette définition améliore IntelliSense.

- L'outil GitHub Actions a été amélioré, par exemple, la page de résumé a été remaniée et il est également possible de valider et de pousser un workflow en un seul clic. Un plus grand nombre de types de projets sont reconnus.

Visual Studio 2019 16.9 est la quatrième base de service prise en charge pour Visual Studio 2019. Il est conseillé aux entreprises et aux utilisateurs professionnels de se standardiser sur cette version. Elle sera prise en charge et recevra des correctifs et des mises à jour de sécurité pendant un an après la publication de la prochaine version de base de service. Avec la sortie de la version 16.9, la prise en charge de la dernière base de service 16.7 sera maintenue jusqu'en avril 2022. Les versions 16.0 à 16.3, 16.5, 16.6 et 16.8 ne sont plus prises en charge.

Qu’attendre de la version 16.10

Concernant l’aperçu 1 de Visual Studio 16.10, Microsoft a introduit les fonctionnalités, améliorations et gains de productivité suivants :

- Une commande pour supprimer les références inutilisées. Cette commande nettoie les références de projets et les paquets NuGet inutilisés.

- La refactorisation pour simplifier les expressions LINQ. Cette dernière supprimera un appel inutile à la méthode Enumerable pour la méthode .Where() afin d'améliorer la lisibilité et les performances.

- Un nouveau paramètre du mode IntelliSense définit les options de complétion par défaut.

- De nouvelles préférences de style de code ont été ajoutées pour les nouvelles lignes. Par exemple, un développeur peut définir des préférences pour signaler un diagnostic et proposer une correction pour supprimer les lignes vierges supplémentaires.

- La gestion de la pile d'appels a été améliorée pour les scénarios de débordement de la pile. Les trames redondantes sont filtrées de la pile d'appels quand le débogueur s'arrête sur une exception de débordement de pile.

- Les suggestions d'IntelliCode peuvent être appliquées de manière plus efficace sans interrompre le flux d'édition.

- Un nouvel analyseur automatique Auto Analyzer inspecte les threads dans un vidage de mémoire pour déterminer si une situation de non-réponse résulte d’une impasse dans les threads.

Visual Studio 2019 16.9 est accessible ici, tandis que l'aperçu 1 de la version 16.10 est disponible ici.