Partager via


Icône de Visual Studio Notes de version de Visual Studio 2017 version 15.7

Note

La version prise en charge de Visual Studio 2017 est la version 15.9.

Important

Il ne s’agit pas de la dernière version de Visual Studio. Pour télécharger la dernière version, consultez https://visualstudio.microsoft.com/downloads/ les notes de publication de Visual Studio 2022.

Visual Studio Blog

Le blog Visual Studio est la source officielle d’insights sur les produits de l’équipe d’ingénierie Visual Studio. Vous trouverez des informations détaillées sur les versions de Visual Studio 15.7 dans les publications suivantes :

Version 15.7 de Visual Studio 2017



Résumé des nouvelles fonctionnalités notables dans la version 15.7

Principaux problèmes résolus dans la version 15.7

Voici les problèmes signalés par le client résolus dans la version 15.7 :

Consultez tous les problèmes signalés par le client résolus dans Visual Studio 2017 version 15.7.

Portail de la communauté des développeurs


Détails des nouveautés de la version 15.7

Icône Notes de publicationVisual Studio 2017 version 15.7.0

Publication : 07 mai 2018

Nouvelles fonctionnalités dans la version 15.7

Performance

  • Dans cette version, nous avons amélioré le temps de chargement des solutions pour les projets C# et Visual Basic d’une moyenne de 20%.
  • Dans les grands projets .NET Core, nous avons réduit le temps de chargement d’IntelliSense de 25%.
  • Lorsque vous changez de branches dans Git, la boîte de dialogue de progression modale a été supprimée lorsque les solutions et les projets n’ont pas besoin d’être rechargés.

Installation de Visual Studio

  • La boîte de dialogue de mise à jour fournit plus de détails sur votre mise à jour, telles que les nouveautés, la taille de téléchargement et la dernière version de mise à jour.
  • Amélioration de l’expérience d’enregistrement : Avant de mettre à jour Visual Studio, toutes les modifications en attente seront enregistrées localement en premier , avant de commencer la mise à jour. La boîte de dialogue mise à jour affiche un bouton Enregistrer tout et mettre à jour au lieu de Mettre à jour maintenant.
  • Nous avons réduit l’empreinte d’installation sur le lecteur système en déplaçant le cache de téléchargement, les composants partagés, certains kits SDK et les outils vers différents lecteurs (Figure 1).
Emplacements d'installation
(Figure 1) Choisir les emplacements d’installation

Il existe trois emplacements que vous pouvez gérer, et ces emplacements ne peuvent être définis qu’avec votre première installation :

  • Produit Visual Studio Core : Cet emplacement concerne les fichiers spécifiques à la version de Visual Studio que vous avez sélectionnée pour l’installation.
  • Télécharger le cache : Les fichiers et manifestes d’installation seront téléchargés à cet emplacement. Si vous décidez de ne pas conserver le cache de téléchargement en décochant la case à cocher, les fichiers seront supprimés une fois l’installation terminée.
  • Composants partagés, outils et kits SDK : Cet emplacement concerne les fichiers partagés par les installations de Visual Studio côte à côte.

Note

Les outils et kits sdk qui ont des règles différentes quant à l’emplacement où ils sont installés ne seront pas installés sur ce lecteur. Les règles spécifiques aux outils/SDK sont prioritaires.

Note

Les utilisateurs peuvent désactiver le cache du package et définir l’emplacement.

Environnement de développement intégré de Visual Studio

La fenêtre de boîte de dialogue (Figure 2) qui indique l’opération de longue durée qui maintient Visual Studio occupé, est désormais accessible au lecteur d’écran (par exemple, NVDA, Narrateur, etc.). Lorsque la boîte de dialogue est affichée par Visual Studio, le lecteur d’écran lit un indicateur audio indiquant que de nouvelles informations sont visibles à l’écran. Les utilisateurs peuvent lire le contenu de la boîte de dialogue ou interagir avec le bouton Annuler lorsqu’ils sont disponibles en appelant la commande Modifier la vue dans le Narrateur.

Boîte de dialogue d'attente
(Figure 2) Fenêtre de boîte de dialogue de chargement, désormais accessible par le lecteur d’écran

Note

Pour une prise en charge complète du Narrateur, vous devez utiliser les builds Windows 10 Redstone 4 (RS4).

Améliorations de Visual C++

  • Cette version contient un correctif pour une vulnérabilité de divulgation d’informations locale dans les fichiers PDB, comme décrit dans CVE-2018-1037.
  • C5045 est un nouveau diagnostic du compilateur qui vous permet de voir les modèles de code dans lesquels le compilateur aurait inséré une atténuation spectre.
  • L’installation groupée de Visual Studio CMake a été mise à niveau de la version 3.10 vers la version 3.11.
  • Les projets CMake prennent en charge l’analyse statique du code C++, comme VCXProj.
  • MSVC prend en charge la fonctionnalité C++17 P0426R1 « constexpr for std ::char_traits », ce qui rend std::string_view beaucoup plus utilisable au moment de la compilation.
  • Utilisez CodeLens au-dessus de chacun de vos tests unitaires pour exécuter, déboguer et afficher l’état des tests (Figure 3).
Utiliser CodeLens au-dessus de chacun de vos tests unitaires
(Figure 3) Utiliser CodeLens au-dessus de chacun de vos tests unitaires
  • Nous avons mis à jour les outils de développement iOS de Visual Studio pour C++ pour qu’ils fonctionnent avec Xcode 9.
  • Nous avons ajouté l’option /analyze :ruleset à cl.exe pour filtrer les avertissements dans les outils d’analyse du code C++ en fonction de la configuration de l’ensemble de règles. Cela entraîne une expérience cohérente entre les appels autonomes du compilateur et l’IDE et améliore les performances en exécutant uniquement les règles mentionnées dans le jeu de règles.
  • Hériter d’un constructeur fonctionne désormais de la même façon que l’héritage d’un autre membre de classe de base. Auparavant, cela fonctionnait en déclarant un nouveau constructeur qui délègue à l’original ; avec cette modification, les constructeurs de classe de base sont visibles dans une classe dérivée comme s’ils étaient des constructeurs de classes dérivées, améliorant ainsi la cohérence en C++.
  • Les modèles conçus pour prendre n’importe quel type en tant que paramètre non type peuvent désormais utiliser le auto mot clé dans la liste des paramètres de modèle. Cela permet aux instanciations d’utiliser n’importe quel type au lieu de devoir déterminer et fournir le type de paramètre de modèle au point d’instanciation.
  • std::launder est désormais pris en charge.
  • La recherche de noms en deux phases fonctionne correctement dans presque tous les cas. Certains cas de périphérie, tels que les appels de fonction non dépendants aux opérateurs surchargés, seront résolus dans une prochaine mise à jour.
  • L’ensemble d’outils du compilateur MSVC est conforme à la norme C++ 17. Lors de la compilation avec le commutateur /Zc :__cplusplus, la valeur de la macro __cplusplus reflète les numéros de version Standard corrects.
  • Le Runtime Visual C++ prend en charge les atténuations pour la vulnérabilité Spectre variante 1. L’ensemble d’outils inclut des versions atténuées et non atténuées des DLL. L’activation de la fonctionnalité Atténuation de Spectre dans la page de propriétés Génération de code entraîne également la liaison à la version atténuée de la DLL. Pour plus d’informations sur les atténuations de Spectre, consultez le blog de l’équipe Visual C++.
  • Le support du compilateur pour les atténuations de Spectre est activé dans les builds non optimisées (/Od).
  • Le commutateur /Zf est désormais activé par défaut, ce qui permet une génération PDB plus rapide lors de l’utilisation de plusieurs processus de compilation.
  • Nous avons considérablement amélioré la génération de code pour /await. Nous avons ré-implémenté les coroutines dans le générateur de code pour améliorer la fiabilité, en corrigeant la grande majorité des bogues.
  • La vue Cibles CMake offre une autre façon d’afficher la source d’un projet CMake dans l’Explorateur de solutions ; Au lieu d’une vue basée sur un dossier, elle organise le code en cibles CMake individuelles (Figure 4). L’organisation est similaire à l’organisation des fichiers Projet et Solution créés par le générateur CMake « Visual Studio ».
Vue Cibles CMake
(Figure 4) Vue des Cibles CMake
  • Les fichiers sources (.cpp) appartenant aux projets CMake peuvent être générés individuellement via le menu CMake ou en cliquant avec le bouton droit sur un fichier source dans l’Explorateur de solutions.
  • Les macros inconnues qui provoquent des erreurs d’analyse syntaxique des balises sont désormais soulignées avec des zigzags verts. Une action rapide est disponible pour ajouter automatiquement la macro à un fichier hint C++ pour résoudre le problème. Toutes les erreurs d’analyse des balises dans la solution ou le dossier peuvent être répertoriées en cliquant sur Afficher les erreurs d’analyseur de balise dans le menu Projet.
  • Ajoutez des en-têtes au CppProperties.json inclure le chemin d’accès avec des actions rapides dans Ouvrir le dossier.
  • Les en-têtes des systèmes Linux et Unix sont désormais automatiquement téléchargés pour une utilisation par IntelliSense sur Windows. Ils sont également utilisés pour fournir une expérience IntelliSense améliorée pour le développement de plateforme native Linux.
  • Nous avons ajouté cinq nouvelles règles appliquant des éléments à partir desinstructions principales C++ concernant l’utilisation de la bibliothèque de prise en charge des instructions.
  • Nous autorisons les classes de base publiques dans les types d’agrégats afin qu’elles puissent être initialisées en utilisant la syntaxe d’initialisation d’agrégats sans écrire de constructeurs standard. Dans la liste d’initialiseurs entre accolades, les bases sont initialisées en premier, suivies des membres de données.
  • Étendre la déduction des arguments de modèle pour les fonctions aux constructeurs de classes de modèle ; lorsque vous construisez un modèle de classe, il n’est plus nécessaire de spécifier les arguments.
  • La définition des conversions de qualification a été modifiée par C++17. Auparavant, ceux-ci étaient autorisés entre des pointeurs multiniveaux et des pointeurs mixtes, de sorte que les qualificateurs pouvaient souvent être ajoutés à des niveaux autres que ceux du premier ; toutefois, cela ne s’appliquait pas de la même façon aux tableaux.
  • Affinez l’ordre d’évaluation des expressions pour les principaux opérateurs C++ qui étaient précédemment laissés au détail de l’implémentation du compilateur, par exemple, l’accès aux membres, l’affectation et l’index de tableau.
  • Développez la déclaration using pour prendre en charge la sémantique d’expansion de pack pour les membres de classe de base variadique, qui peuvent ensuite être utilisés à l’intérieur de la classe dérivée.
  • Nous sommes maintenant terminés avec l’implémentation complète de l’expression SFINAE et avons apporté les modifications correspondantes de la bibliothèque de modèles standard.
  • Nous avons implémenté des algorithmes parallèles conformes à la norme ISO C++17. Pour plus d’informations, consultez le fichier source situé à cet emplacement [VSInstallDir]\VC\Tools\MSVC\<ver>\include\yvals.h .
  • En mode /std :c++17, le niveau d’avertissement de C4834 (« ignorer la valeur de retour de la fonction avec l’attribut « nodiscard ») est augmenté de W3 à W1. En outre, le compilateur peut maintenant déduire le type d’un argument de modèle non de type déclaré avec auto.
  • Le débogage de grandes solutions avec/Debug :fastlink PDBs est plus robuste. Les modifications apportées au PDB entraînent une réduction de la latence et une réduction de 30% de la consommation de mémoire du tas dans le débogueur de VS.
  • C++ Core Check fait désormais partie de l’ensemble d’outils par défaut pour l’analyse du code natif. Chaque fois que l’analyse du code est exécutée sur un projet, un sous-ensemble de règles est activé à partir de C++ Core Check en plus des règles recommandées par défaut.
  • Nous avons ajouté la prise en charge de la compilation parallèle pour les projets Linux, ce qui peut améliorer considérablement les temps de génération. Cela peut être activé via les pages > de propriétés C/C++ > Nombre maximal de travaux de compilation parallèles.
  • La propriété de projet Linux « Répertoires d'inclusion de projets publics » a été ajoutée pour améliorer l'utilisation des inclusions issues des références entre projets dans les solutions Linux.
  • Nous avons ajouté la prise en charge de ClangFormat pour les développeurs C++ dans l’IDE. À l’instar de EditorConfig, vous pouvez utiliser ClangFormat pour mettre automatiquement en forme votre code au fur et à mesure que vous tapez, d’une manière qui peut être appliquée à l’ensemble de votre équipe de développement.

Compilateur C#

En plus des correctifs de bogues, cette version apporte les fonctionnalités C# 7.3 suivantes :

Python

  • Vous pouvez exécuter MyPy sur un projet en cliquant avec le bouton droit sur le projet et en sélectionnant Python > MyPy. MyPy vérifie votre code par rapport aux indicateurs de type, et toutes les erreurs de type détectées sont affichées dans la liste d’erreurs.
  • Vous pouvez créer et utiliser des environnements Conda, ainsi que gérer des packages pour vos environnements Conda à l’aide de pip ou Conda.
  • Anaconda version 5.1.0 est désormais disponible à partir de Visual Studio Installer et est installé par défaut lorsque la charge de travail Data Science est sélectionnée.
  • Nous avons ajouté une option facultative à la version ptvsd 4.0 du débogueur Python, basée sur le débogueur open source populaire pydevd. La fonction d’adhésion offre des performances de débogage plus rapides pour les applications et peut être activée en cochant Utiliser le débogueur expérimental depuis Outils > Options > Python > Expérimental.
  • Consultez le billet de blog Python dans Visual Studio 15.7 pour plus d’informations sur l’utilisation du débogueur, Conda, MyPy et des indicateurs de type.

Visual Studio Tools pour Xamarin

Cette version inclut Xamarin.Android 8.3 et Xamarin.iOS 11.10.

Gestion automatique du Kit de développement logiciel (SDK) Android

Lorsqu’un projet Xamarin.Android est chargé, Visual Studio peut déterminer si le niveau d’API Android utilisé par le projet est manquant dans votre ordinateur et l’installer automatiquement en arrière-plan. Pour activer cette fonctionnalité, accédez à Options > d’outils > Xamarin > Android Settings > Auto Install Android Sdks.

Amélioration d’IntelliSense XAML

Les développeurs Xamarin.Forms utilisant Visual Studio 2017 version 15.7 remarqueront une expérience IntelliSense largement améliorée (Figure 5). L’expérience d’édition XAML Xamarin.Forms est désormais alimentée par le même moteur IntelliSense qui alimente WPF et UWP. Cela apporte de nombreuses améliorations aux développeurs, notamment la correspondance améliorée, les suggestions contextuelles, la navigation dans le code, le linting, l’auto-complétion des ressources et la complétion des extensions de balisage.

Expérience d’édition XAML Xamarin.Forms
(Figure 5) Expérience d’édition XAML Xamarin.Forms
Améliorations des outils pour xaml conditionnel

L’éditeur XAML fournit IntelliSense pour la création de code XAML conditionnel. Lors de l’utilisation d’un type qui n’est pas présent dans la version minimale cible de votre application, l’éditeur XAML avertit désormais, mais fournit également plusieurs options pour le corriger.

Approvisionnement automatique d’iOS

Nous avons simplifié l’approvisionnement d’appareils iOS pour le développement (Figure 6). Dans Visual Studio 2017 version 15.7, il existe une expérience simplifiée pour demander un certificat de développement, générer une clé de signature, ajouter un appareil dans le Centre de développement et créer un profil d’approvisionnement, tout en cliquant sur un seul clic. Tout le travail lourd de provisionnement d’un appareil iOS est géré pour vous en moins de 30 secondes.

Image des modèles de projet iOS & Android
(Figure 6) L’approvisionnement d’applications iOS est plus facile avec notre fonctionnalité d’approvisionnement automatique iOS.
Gestion du Kit de développement logiciel (SDK) Android

Choisir les SDK Android à installer pour le développement mobile peut être chronophage. Visual Studio 2017 version 15.7 ajoute un nouveau gestionnaire de sdk Android qui enlève les estimations de la gestion des installations du Kit de développement logiciel (SDK) Android. Une fois que vous avez ouvert un projet que vous n’avez pas installé de sdk pour le générer, un avis s’affiche pour vous aider à télécharger les kits SDK requis. Après avoir cliqué sur Télécharger & Installer et accepter le contrat de licence approprié, les kits SDK appropriés sont automatiquement installés en arrière-plan.

Nouveaux modèles de projet iOS &Android

Que vous soyez un développeur Xamarin nouveau ou expérimenté, les modèles de projet constituent une partie importante du parcours de création d’application. Ils doivent être faciles à trouver et à configurer pour réussir à partir du début (Figure 7). Dans cette version, nous avons entièrement reconstruit nos modèles de projet natifs iOS et Android pour améliorer la détectabilité et la prise en charge des modèles de navigation modernes tels que les onglets volants ou inférieurs.

Modèles de projet iOS &Android
(Figure 7) Facile à trouver et à définir vos modèles de projet iOS et Android
Améliorations apportées à l’installation

Visual Studio Installer est fourni avec une configuration android SDK mise à jour, notamment Android API 27 et Android SDK Tools 26. Cela inclut la prise en charge du démarrage rapide, ce qui permet à votre émulateur Android de démarrer en moins de cinq secondes.

En outre, nous incluons Android Device Manager dans le cadre du développement mobile avec le workload .NET pour créer, modifier et supprimer facilement des émulateurs.

Améliorations de la productivité .NET

  • Utilisez les actions rapides et les refactorisations (Ctrl+.) pour :
    • Convertissez for-en-foreach et vice versa.
    • Créez des champs readonlyprivés .
  • Go To Definition (F12) est désormais pris en charge pour les clauses de requête LINQ et les déconstructions.
  • Utilisez Ctrl+. pour basculer entre var et le type explicite, indépendamment de vos préférences de style de code.
  • Les informations rapides affichent des captures sur des fonctions lambda et locales, afin de voir quelles variables se trouvent dans l’étendue.
  • La refactorisation Change Signature (Ctrl+. sur la signature) est applicable aux fonctions locales.
  • Vous pouvez modifier les fichiers projet .NET Core sur place, de sorte que l’ouverture contenant le dossier, la restauration d’onglets et d’autres fonctionnalités de l’éditeur sont entièrement prises en charge. Les modifications de l’IDE, telles que l’ajout d’un fichier lié, seront fusionnées avec des modifications non enregistrées dans l’éditeur.

Essai

  • Live Unit Testing fonctionne avec les PDB incorporés et les PDB spécifiant /deterministic.
  • Nous avons ajouté la prise en charge des tests unitaires en direct pour les projets qui utilisent des assemblages de référence.
  • L’Explorateur de tests a des icônes plus réactives pendant les exécutions de test. Lorsqu’une exécution de test est en cours, un anneau de progression apparaît en regard des tests en cours d’exécution, et une icône d’horloge s’affiche pour les tests en attente d’exécution.

Outils Web

  • Les modèles de projet d’application web ASP.NET ont été actualisés vers des versions plus récentes des packages dépendants.
  • Vous pouvez publier vos applications non conteneurisées sur Azure App Service sur Linux.
  • Lien pour ouvrir votre azure App Service dans Cloud Explorer à partir de la page Publier le résumé.
  • Vous bénéficiez d'un support pour la publication d'applications dépendantes du framework .NET Core et autonomes.
  • Publier la prise en charge des applications F# dans App Service et dossier.
  • Nous avons ajouté la prise en charge de l'hébergement des applications ASP.NET Core directement dans le processus IIS Express.
  • Vous pouvez créer un compte de stockage et fournir un nom de chaîne de connexion à stocker dans les paramètres App Service lors de la publication dans un nouvel Azure App Service.
  • Nous avons amélioré la prise en charge de HTTPS par Kestrel lors du débogage.
  • Les applications ASP.NET Core prennent en charge plusieurs valeurs séparées par des points-virgules dans le champ « URL de l'application » sous les propriétés du projet. Lorsque plusieurs URL sont présentes dans ce champ, la première est utilisée pour lancer le navigateur.
  • Le nouvel outil d'échafaudage appelé « Identité » est disponible via la ligne de commande (prise en charge de l'interface graphique bientôt), ce qui ajoute l'interface utilisateur de gestion des identités à vos applications ASP.NET Core 2.1.
  • ASP.NET et ASP.NET projets Core peuvent créer et associer des coffres de clés Azure à leurs applications web au sein de l’IDE en configurant le service connecté « Key Vault ».
  • Lorsqu’une application ASP.NET ou ASP.NET Core dépend d’Azure Key Vault, une erreur s’affiche dans la liste d’erreurs si l’application ne parvient pas à accéder à Key Vault lors de l’exécution à partir de l’ordinateur du développeur en fonction du compte sélectionné sous Options > d’outils > Authentification du service Azure. Cela réduit le temps nécessaire pour découvrir et corriger le problème d’autorisation ou de compte et éviter une défaillance de l’application lors de l’exécution.
  • Lorsque votre application web utilise un Coffre de clés auquel votre compte d’utilisateur ASAL sélectionné n’a aucun accès, un avertissement s’affiche désormais dans la liste d’erreurs.

Outils de génération Visual Studio 2017

Prise en charge d’Azure, UWP et d’autres charges de travail

Visual Studio 2017 Build Tools prend en charge les builds de ligne de commande pour la plupart des projets Visual Studio. Les projets pris en charge sont les suivants : ASP.NET, Azure, C++desktop, ClickOnce, conteneurs, .NET Core, .NET Desktop, Node.js, Office et SharePoint, Python, TypeScript, Tests unitaires, UWP, WCF et Xamarin. Nous prévoyons d’ajouter la prise en charge de SQL dans une prochaine version. Visual Studio Build Tools prend désormais également en charge l’installation dans un conteneur. Vous pouvez télécharger Visual Studio Build Tools à partir des téléchargements Visual Studio. Vous trouverez la liste des ID de charge de travail et de composant avec lesquels vous pouvez adapter votre image conteneur dans le répertoire des composants Visual Studio Build Tools 2017.

Note

Build Tools nécessite une licence pour Visual Studio 2017.

Prise en charge UWP dans les outils de construction de Visual Studio 2017

Visual Studio Build Tools vous permet de créer des serveurs de build sans installer visual Studio. En réponse aux demandes des clients, nous avons amélioré Visual Studio Build Tools pour prendre en charge des types de projets supplémentaires. Ces types de projets incluent les outils UWP, qui apportent la liste de projets prise en charge ASP.NET, Azure, C++ desktop, ClickOnce, conteneurs, .NET Core, .NET Desktop, Node.js, Office et SharePoint, Python, TypeScript, Tests unitaires, UWP, WCF et Xamarin. Nous prévoyons d’ajouter la prise en charge de SQL dans une prochaine version.

Outils pour les développeurs de plateforme Windows universelle

  • Les outils de gestion de l'état visuel et d'animation sont disponibles dans Blend avec les dernières mises à jour du concepteur XAML. Tous les développeurs UWP ont accès à ces outils. En outre, XAML Edit &Continue prend en charge la modification des états visuels et des animations.
  • La prise en charge du Windows Machine Learning pour la génération automatique de code permet de générer des classes wrapper WinML en ajoutant vos fichiers de modèle ONNX en tant qu’élément existant dans le projet.
  • Le SDK de mise à jour Windows 10 avril 2018 (Build 17134) est le SDK par défaut pour la charge de travail de développement pour la plateforme universelle Windows dans Visual Studio.
  • Vous pouvez créer des ensembles associés avec l’exécution du code dans des packages facultatifs à l’aide de C# et du nouveau modèle de projet Paquet de code facultatif.
  • Avec le nouveau modèle d’élément « Mise en page de package », vous pouvez facilement construire des ensembles de packages plats.

Prise en charge d’AppInstaller dans les paquets APPX

La plateforme Windows universelle permet de distribuer des applications sans le Microsoft Store à l’aide d’un mécanisme appelé « chargement indépendant ». Cette version vous permet de générer le fichier appinstaller pour obtenir des mises à jour automatiques à partir de vos déploiements basés sur APPX. En savoir plus sur la technologie sous-jacente.

NuGet

  • Cette version fournit la prise en charge prête à l'emploi pour la migration de projets existants basés sur packages.config vers PackageReference.

  • Nous avons ajouté la prise en charge des signatures de NuGet package. L’installation ou la restauration de packages signés valide la signature numérique avant d’extraire le contenu des packages. Si la validation de signature échoue (par exemple, le contenu a été falsifié, le certificat non valide, etc.) l’opération est bloquée avec une erreur de génération qui s’affiche dans la liste d’erreurs.

TypeScript et JavaScript

TypeScript 2.8 RC est désormais inclus dans Visual Studio 2017 version 15.7.
Cette version apporte les améliorations suivantes :

  • Prise en charge de jsconfig.json, un fichier qui peut aider à contrôler vos options d’éditeur beaucoup comme tsconfig.json.
  • Option permettant de réduire l’utilisation des ressources en désactivant la vérification du type pour les fichiers non ouverts.
    • Il s’agit de la seule option de rapport de diagnostics pour les fichiers ouverts dans l'éditeur dans le menu Outils > Options > TextEditor > JavaScript/TypeScript > Project.
  • Nouvelles fonctionnalités d’édition pour les utilisateurs TypeScript et JavaScript :
    • Application de tous les correctifs rapides dans un fichier.
    • Organiser les importations.
    • Achèvements pour this. les classes et accolades dans JSX.
  • Fonctionnalités de TypeScript 2.8 :
    • Types conditionnels (A extends B ? C : D).
    • Nouveaux lib.d.ts helpers de type conditionnel tels que NonNullable, ReturnType, Extract, et Exclude.
    • Contrôle granulaire sur les modificateurs dans les types mappés.
    • Contrôler les usines JSX dans les fichiers en utilisant le nouveau // @jsx pragma.

Vous trouverez plus d’informations sur TypeScript 2.8 dans le blog TypeScript 2.8 RC.

  • Fonctionnalités de TypeScript 2.7 :
    • Initialisation stricte des propriétés.
    • Séparateurs numériques.
    • Gardes de type plus intelligents.

Vous trouverez plus d’informations sur TypeScript 2.7 dans le blog TypeScript 2.7.

Nous avons également résolu certains des principaux problèmes soulevés par les clients, notamment le déclenchement prématuré d’extraits de code, les refactorisations incancellables, la mise en forme difficile à désactiver et la sélection incorrecte de la version TypeScript.

Note

Ces améliorations sont optimisées par TypeScript 2.8. Pour une expérience optimale, mettez à jour vos projets existants vers la dernière version de TypeScript.

Débogage JavaScript avec Microsoft Edge

Visual Studio ASP.NET et les développeurs .NET Core sur les builds Windows Insider peuvent définir des points d’arrêt et déboguer leurs fichiers JavaScript à l’aide d’un navigateur Microsoft Edge. Visual Studio utilisera le nouveau protocole DevTools Edge développé par l’équipe Microsoft Edge lors du ciblage du navigateur Microsoft Edge. Les développeurs peuvent déboguer et résoudre les problèmes JavaScript à partir de Visual Studio dans les navigateurs Microsoft Edge et Google Chrome. Nous sommes heureux d’activer cette fonctionnalité souvent demandée par nos clients. Nous aimerions entendre vos commentaires sur la fonctionnalité pour nous aider à améliorer et à créer un meilleur Visual Studio.

Débogage et diagnostics

Cette version ajoute la prise en charge des authentifications VSTS et GitHub pour Source Link. L’authentification sera ajoutée automatiquement aux demandes de liaison source si elle est disponible via l’IDE. Si l’utilisateur n’est pas déjà authentifié, l’interface utilisateur de connexion s’affiche pour activer l’authentification.

La fonctionnalité de débogage pas à pas d’IntelliTrace est prise en charge pour le débogage de projets .NET Core.

  • Pour activer la fonctionnalité, accédez auxparamètres IntelliTrace des options > d’outils>, puis sélectionnez l’option Événements et captures instantanées IntelliTrace.
  • La fonctionnalité de débogage rétroactif d’IntelliTrace prend en charge la prise d’instantanés sur des exceptions. Pour activer la fonctionnalité, accédez aux paramètres IntelliTrace des options > d’outils>, puis sélectionnez l’option Événements et instantanés IntelliTrace(Figure 8).
Instantané lors de l’exception
(Figure 8) Instantané d'exception

Lancer et attacher le débogueur de script à Microsoft Edge pour les projets ASP.NET

Vous pouvez déboguer JavaScript et TypeScript directement dans Visual Studio lors de l’utilisation de Google Chrome comme navigateur de votre choix. Il vous suffit de sélectionner Chrome comme navigateur dans Visual Studio et d’atteindre F5 pour déboguer. Pour plus d’informations, consultez le débogage côté client des projets ASP.NET dans Google Chrome .

Team Explorer

Dans Les paramètres Git, les paramètres globaux dans Team Explorer permettent de choisir entre OpenSSL et Secure Channel. OpenSSL est la valeur par défaut.

Outils Service Fabric pour la version 6.2 de Service Fabric

Les outils Service Fabric pour la version Service Fabric 6.2 prennent en charge la compatibilité pour le runtime 6.2 et le SDK 3.1. Outre plusieurs correctifs de bogues, une nouvelle fonctionnalité permet d’ajouter la prise en charge des conteneurs aux projets ASP.NET ou console existants. Les projets .NET Framework et .NET Core 2.0 sont pris en charge via un nouveau menu contextuel « Ajouter une prise en charge de l’orchestration » et une boîte de dialogue. Une fois ces projets dotés de la prise en charge de l’orchestration Service Fabric, ils peuvent être déployés à distance et débogués sur le cluster Service Fabric local.

Améliorations apportées aux outils Entity Framework

Améliorations des outils F# et F#

Nous avons apporté de nombreuses améliorations à F# et à ses outils. Les performances et le nettoyage des expériences existantes avec les projets de style sdk .NET ont été le focus pour cette version. Comme toujours, nous avons également reçu des contributions significatives de la communauté F# merveilleuse.

Améliorations apportées au compilateur F# et à la bibliothèque principale
  • Activation de la génération de F# AssemblyInfo à partir de propriétés avec le compilateur F# dans le Kit de développement logiciel (SDK) .NET.
  • --debug:full est pris en charge pour le compilateur F# .NET Core sur Windows.
  • MakeTuple est pris en charge pour les tuples de struct.
  • Un avertissement inutile lors de l’utilisation d’une méthode d’extension pour un tuple est maintenant résolu.
  • MailboxProcessor.PostAndAsyncReply gère correctement l’annulation lorsqu’un processus parent est annulé.
  • L’égalité des types float32 est désormais correcte lorsqu’on utilise NonStructuralComparison.
  • Les avertissements sont désormais transmis pendant la recherche de surcharges de méthode, par Matthias Dittrich.
  • Amélioration d’un avertissement lors de la correspondance de modèle sur une énumération pour fournir un exemple d’énumération non correspondante, par John Wostenberg.
Améliorations apportées aux outils F#
  • Réductions significatives de l’utilisation de la mémoire dans le service compilateur F#, par Avi Avni et Microsoft.
  • Améliorations significatives des performances pour l’analyseur Open Analyzer inutilisé lorsqu’il est activé.
  • Réactivité améliorée lorsque les analyseurs F# et les correctifs de code sont activés, de sorte que les diagnostics d’erreur sont toujours hiérarchisés au-dessus du reste.
  • Nous avons ajouté ASP.NET modèles Core pour F#.
  • L’ordre initial des fichiers collés dans les dossiers pour les projets du Kit de développement logiciel (SDK) .NET est désormais correctement en haut de l’étendue dans laquelle le fichier a été collé.
  • Les scripts F# sans fichier projet envoient correctement du code à F# Interactive lorsque Alt+Entrée est enfoncée.
  • La vue du débogueur pour les listes F# a été étendue de 50 éléments à 5 000 éléments.
  • Les projets F# classiques (.NET Framework uniquement) effectuent également des builds au moment du design, ce qui réduit le temps de chargement de la solution.
  • Les instructions structurées et les affichages Plan peuvent désormais être activés, sous Paramètres > éditeur > de texte F# > Avancé.
  • Les attributs au niveau de l’assembly sont désormais retournés par le Service du compilateur F#.
  • Nous avons ajouté Entity.DeclaringEntity au service compilateur F#.
  • L’optimisation est disponible via l’API du service compilateur F#, par Steffen Forkmann et ncave.
  • GetDeclarationLocation n’a plus besoin d’un fichier pour fournir des résultats sur des données autrement correctes, par amieres.
  • IsNameGenerated est désormais disponible dans l’API Symboles F#, par Eugene Auduchinok.
Améliorations apportées à l’infrastructure F#
  • autoconf n’est plus nécessaire dans notre build Mono.
  • Tous les projets d’intégration Visual Studio utilisent désormais le Kit de développement logiciel (SDK) .NET.
  • Le hachage de validation pour une build des outils est disponible dans >.

Pour voir le journal de validation complet de ce qui a été intégré dans cette version, consultez notre tag de publication pour la version 15.7.


---

Icône Notes de publication Avis de sécurité de Visual Studio 2017 version 15.7

Avis de sécurité de Visual Studio 2017 version 15.7.6- publiée le 2 août 2018

CVE-2018-8356 Vulnérabilité de contournement des fonctionnalités de sécurité .NET Core

Microsoft a connaissance d’une vulnérabilité de contournement d’une fonctionnalité de sécurité qui apparaît quand .NET Core ne valide pas correctement les certificats. Un attaquant qui parviendrait à exploiter cette vulnérabilité pourrait présenter un certificat expiré quand il y serait invité. La mise à jour corrige la vulnérabilité en corrigeant la manière dont .NET Core gère la validation des certificats.

Avis de sécurité de Visual Studio 2017 version 15.7.5- publiée le 10 juillet 2018

CVE-2018-8172 Vulnérabilité liée à l’exécution de code à distance de Visual Studio

Une vulnérabilité d’exécution de code à distance pouvant conduire à l’exploitation de l’ordinateur d’un utilisateur en ouvrant un projet ou un fichier de ressources spécialement conçu. La mise à jour de sécurité élimine la vulnérabilité en corrigeant la façon dont Visual Studio vérifie le balisage source d’un fichier.

CVE-2018-8260 Vulnérabilité d’exécution de code à distance du .NET Framework

Il existe une vulnérabilité d’exécution de code à distance dans le logiciel .NET, qui peut entraîner l’exploitation de l’ordinateur d’un utilisateur en permettant à des attaquants d’exécuter du code arbitraire dans le contexte de l’utilisateur actif. La mise à jour de sécurité élimine la vulnérabilité en corrigeant la façon dont .NET vérifie le balisage source d’un fichier.

CVE-2018-8232 Vulnérabilité liée à la falsification de .NET Microsoft Macro Assembler

Vulnérabilité de falsification liée à la validation incorrecte du code par Microsoft Macro Assembler. La mise à jour de sécurité corrige la vulnérabilité en garantissant que Microsoft Macro Assembler valide correctement la logique du code.

CVE-2018-8171 Vulnérabilité liée au contournement d’une fonctionnalité de sécurité d’ASP.NET Core

Il existe une vulnérabilité de contournement d’une fonctionnalité de sécurité d’ASP.NET Core quand le nombre de tentatives de connexion incorrectes n’est pas vérifié, ce qui peut permettre à un attaquant d’effectuer des tentatives d’authentification en nombre infini. La mise à jour corrige la vulnérabilité en vérifiant le nombre de tentatives de connexion incorrectes.

Avis de sécurité de Visual Studio 2017 version 15.7.4- publiée le 18 juin 2018

CVE-2018-11235 Avis de sécurité Microsoft concernant une faille de sécurité Git

Nous avons corrigé une faille de sécurité dans Git, signalée par la communauté Git. Cette vulnérabilité peut entraîner une exécution de code arbitraire quand un utilisateur clone un référentiel malveillant.

Avis sur la sécurité de Visual Studio 2017 version 15.7.1- publiée le 08 mai 2018

CVE-2018-0765 Avis de sécurité Microsoft pour la vulnérabilité de déni de service .NET Core

Microsoft publie cet avis de sécurité pour fournir des informations sur une vulnérabilité dans .NET Core et .NET native version 2.0. Cet avis fournit également des conseils sur ce que les développeurs peuvent faire pour mettre à jour leurs applications afin de supprimer cette vulnérabilité. Microsoft est conscient d’une vulnérabilité de déni de service qui existe lorsque .NET Framework et .NET Core traitent incorrectement les documents XML. Un attaquant qui a réussi à exploiter cette vulnérabilité peut provoquer un déni de service contre une application .NET Framework, .NET Core ou .NET native. La mise à jour résout la vulnérabilité en corrigeant la façon dont les applications .NET Framework, .NET Core et .NET natives gèrent le traitement des documents XML. Si votre application est une application ASP.NET Core, les développeurs sont également invités à effectuer une mise à jour vers ASP.NET Core 2.0.8.


Icône Notes de publication Visual Studio 2017 version 15.7.1

Publication : 08 mai 2018

Principaux problèmes résolus dans la version 15.7.1

Voici les problèmes signalés par le client résolus dans la version 15.7.1 :

  • Cette version inclut un correctif qui réduit l’utilisation de la mémoire et la pression GC pendant la charge de la solution.

Icône de notes de publication Visual Studio 2017 version 15.7.2

Publication : 21 mai 2018

Principaux problèmes résolus dans la version 15.7.2

Voici les problèmes signalés par le client résolus dans la version 15.7.2 :


Icône Notes de publication Visual Studio 2017 version 15.7.3

Publication : 31 mai 2018

Principaux problèmes résolus dans la version 15.7.3

Voici les problèmes signalés par le client résolus dans la version 15.7.3 :


Icône des notes de publication : Visual Studio 2017 version 15.7.4

Publication : 18 juin 2018

Principaux problèmes résolus dans la version 15.7.4

Voici les problèmes signalés par le client résolus dans la version 15.7.4 :


Icône Release Notes IconVisual Studio 2017 version 15.7.5

Publication : 10 juillet 2018

Principaux problèmes résolus dans la version 15.7.5

Voici les problèmes signalés par le client résolus dans la version 15.7.5 :


Icône des notes de publication Visual Studio 2017 version 15.7.6

Publication : 2 août 2018

Résumé des mises à jour dans la version 15.7.6

Cette version contient les améliorations et perfectionnements suivants :

  • Cette version installe maintenant Java™ Development Kit 8, Update 181 (JDK version 8u181).

Principaux problèmes résolus dans la version 15.7.6

Voici les problèmes signalés par le client résolus dans la version 15.7.6 :


Problèmes connus

Nous nous engageons à tenir compte de vos commentaires. Visitez le site de la communauté des développeurs pour découvrir les derniers problèmes, consigner de nouveaux problèmes et voter pour les problèmes existants. Consultez tous les problèmes connus existants et les solutions de contournement disponibles dans Visual Studio 2017 version 15.7.

Problèmes connus de Visual Studio 2017


Historique des notes de publication de Visual Studio 2017

Pour plus d’informations sur les versions précédentes de Visual Studio 2017, consultez la page Historique des notes de publication de Visual Studio 2017.