Notes de publication de NuGet 2.6
Notes de publication de NuGet 2.5 | Notes de publication de NuGet 2.6.1 pour WebMatrix
NuGet 2.6 a été publié le 26 juin 2013.
Fonctionnalités notables de la version
Prise en charge de Visual Studio 2013.
NuGet 2.6 est la première version qui prend en charge Visual Studio 2013. Et comme Visual Studio 2012, l’extension du Gestionnaire de package NuGet est incluse dans chaque édition de Visual Studio.
Afin de fournir la meilleure prise en charge possible de Visual Studio 2013 tout en prenant toujours en charge Visual Studio 2010 et Visual Studio 2012 et en conservant les tailles d’extension aussi petites que possible, nous produisons une extension distincte pour Visual Studio 2013 alors que l’extension d’origine continue de cibler Visual Studio 2010 et 2012.
À compter de NuGet 2.6, nous publierons deux extensions comme suit :
- Gestionnaire de package NuGet (s’applique à Visual Studio 2010 et 2012)
- Gestionnaire de package NuGet pour Visual Studio 2013
Avec ce fractionnement, le bouton « Installer NuGet » de page d’accueil nuget.org vous permet d’accéder à la page d’installation de NuGet, où vous trouverez plus d’informations sur l’installation des différents clients NuGet.
Prise en charge de la transformation XDT Web.config
L’une des fonctionnalités les plus demandées pour le client NuGet a été de prendre en charge des transformations XML plus puissantes à l’aide du moteur de transformation XDT utilisé dans les transformations de configuration de build Visual Studio.
En avril 2013, nous avons fait deux grandes annonces concernant le support de NuGet pour XDT. La première mentionnait que la bibliothèque XDT proprement dite était elle-même publiée en tant que package NuGet et [open sourced on CodePlex](http://xdt.codeplex.com/)
. Cette étape a permis à d’autres logiciels open source, y compris le client NuGet, d’utiliser librement le moteur XDT. La deuxième annonce indiquait le plan de prise en charge de l’utilisation du moteur XDT pour les transformations dans le client NuGet. NuGet 2.6 inclut cette intégration.
Fonctionnement
Pour bénéficier du support XDT de NuGet, les mécanismes ressemblent à ceux de la fonctionnalité de transformation de configuration actuelle. Les fichiers de transformation sont ajoutés au dossier de contenu du package. Toutefois, alors que les transformations de configuration utilisent un seul fichier pour l’installation et la désinstallation, les transformations XDT permettent un contrôle précis sur ces deux processus à l’aide des fichiers suivants :
- Web.config.install.xdt
- Web.config.uninstall.xdt
En outre, NuGet utilise le suffixe de fichier pour déterminer le moteur à exécuter pour les transformations, de sorte que les packages utilisant les web.config.transforms existants continueront de fonctionner. Les transformations XDT peuvent également être appliquées à n’importe quel fichier XML (pas seulement web.config), ce qui vous permet de tirer profit de cette fonction de cela pour d’autres applications de votre projet.
Possibilités offertes par XDT
L’une des plus grandes forces de XDT est sa syntaxe simple mais puissante pour manipuler la structure d’un DOM XML. Au lieu de simplement superposer une seule structure de document fixe sur une autre structure, XDT fournit des contrôles pour les éléments correspondants de différentes façons, de la correspondance de nom d’attribut simple à la prise en charge complète de XPath. Une fois qu’un élément ou un ensemble d’éléments correspondant est trouvé, XDT fournit un ensemble enrichi de fonctions permettant de manipuler les éléments, qu’il s’agisse d’ajouter, de mettre à jour ou de supprimer des attributs, de placer un nouvel élément à un emplacement spécifique ou de remplacer ou de supprimer l’ensemble de l’élément et ses enfants.
Configuration de l’ordinateur
L’un des grands atouts de NuGet consiste à décomposer un exécutable ou une bibliothèque normalement volumineux en un ensemble de composants modulaires qui peuvent être intégrés, et surtout conservés et versionnés indépendamment. Toutefois, l’un des effets secondaires est que l’idée conventionnelle d’un produit ou d’une famille de produits devient potentiellement plus fragmentée. La fonctionnalité source de package personnalisée de NuGet offre un moyen d’organiser des packages ; toutefois, les sources de package personnalisées ne sont pas détectables seules.
NuGet 2.6 étend la logique de configuration de NuGet en recherchant la hiérarchie de dossiers sous le chemin %ProgramData%/NuGet/Config. Les programmes d’installation de produits peuvent ajouter des fichiers de configuration NuGet personnalisés sous ce dossier pour inscrire une source de package personnalisée pour leurs produits. En outre, la structure de dossiers prend en charge la sémantique pour le produit, la version et même la référence SKU de l’IDE. Paramètres de ces annuaires sont appliqués dans l’ordre suivant avec une stratégie de précédence « last in wins » (priorité au dernier).
- %ProgramData%\NuGet\Config*.config
- %ProgramData%\NuGet\Config{IDE}*.config
- %ProgramData%\NuGet\Config{IDE}{Version}*.config
- %ProgramData%\NuGet\Config{IDE}{Version}{SKU}*.config
Dans cette liste, l’espace réservé {IDE} est spécifique à l’IDE dans lequel NuGet est en cours d’exécution. Par conséquent, dans le cas de Visual Studio, il s’agit de « VisualStudio ». Les espaces réservés {Version} et {SKU} sont fournis par l’IDE (par exemple, « 11.0 », « WDExpress », « VWDExpress » et « Pro », respectivement). Le dossier peut alors contenir de nombreux fichiers *.config différents. Par conséquent, la société de composants ACME peut, comme composant de son programme d’installation de produit, ajouter une source de package personnalisée qui sera visible uniquement dans les versions Professional et Ultimate de Visual Studio 2012 en créant le chemin d’accès au fichier suivant :
%ProgramData%\NuGet\Config\VisualStudio\11.0\Pro\acme.config
La structure de dossiers permet aux programmes tels que les programmes d’installation de logiciels d’ajouter en toute facilité des sources de package à l’échelle de l’ordinateur à la configuration de NuGet. Pendant ce temps, la boîte de dialogue de configuration NuGet a également été mise à jour pour permettre l’inscription de sources de package comme spécifiques à l’utilisateur (par exemple, enregistrées dans %AppData%/NuGet/NuGet.Config) ou à l’échelle de l’ordinateur.
Cette fonctionnalité est utilisée par Visual Studio 2013, où un fichier est installé sur :
%ProgramData%\NuGet\Config\VisualStudio\12.0\Microsoft.VisualStudio.config
Dans ce fichier, une nouvelle source de package appelée « Packages .NET Framework » est configurée.
Contextualisation de la recherche
Comme le nombre de packages servis par la galerie NuGet continue de croître à une allure exponentielle, l’amélioration de la recherche reste toujours en haut de la liste des priorités de NuGet. L’une des fonctionnalités planifiées pour NuGet est la recherche contextuelle. Cela signifie que NuGet va utiliser des informations sur la version et la référence SKU de Visual Studio que vous utilisez et le type de projet que vous créez en tant que critères pour déterminer la pertinence des résultats de la recherche potentiels.
À compter de NuGet 2.6, chaque fois qu’un package est installé, le contexte de l’installation est enregistré comme composant des données d’opération d’installation. Les recherches envoient également les mêmes informations de contexte, ce qui permet à la galerie NuGet d’améliorer les résultats de la recherche en fonction des tendances d’installation contextuelles. Une prochaine mise à jour de la galerie NuGet permettra d’améliorer la pertinence sensible au contexte.
Suivi des installations directes par rapport aux installations de dépendances
Les auteurs de packages s’appuient de plus en plus sur les statistiques de package fournies dans la galerie NuGet. Un point de données manquant important que les auteurs ont demandé est une différenciation entre les installations directes de packages et les installations de dépendance. Jusqu’à présent, le client NuGet n’a pas envoyé de contexte concernant l’opération d’installation pour savoir si le développeur a installé directement le package ou si le package a été installé pour satisfaire à une dépendance. À compter de NuGet 2.6, ces données seront désormais envoyées pour l’opération d’installation. Les statistiques de package de la galerie NuGet vont exposer ces données en tant qu’opérations d’installation distinctes, avec un suffixe « -Dependency ».
- Installer
- Install-Dependency
- Mettre à jour
- Update-Dependency
- Réinstallation
- Reinstall-Dependency
Outre le nom de l’opération, l’ID de package dépendant est également enregistré pour l’installation. Une prochaine mise à jour de la galerie NuGet va exposer ces données dans les rapports, ce qui permettra aux auteurs de packages de comprendre pleinement comment les développeurs installent leurs packages.
Correctifs de bogues
NuGet 2.6 inclut également plusieurs correctifs de bogues. Pour obtenir la liste complète des éléments de travail corrigés dans NuGet 2.6, veuillez consulter [NuGet Issue Tracker for this release](https://nuget.codeplex.com/workitem/list/advanced?keyword=&status=Closed&type=All&priority=All&release=NuGet%202.6&assignedTo=All&component=All&sortField=LastUpdatedDate&sortDirection=Descending&page=0&reasonClosed=All)
.