web-dev-qa-db-fra.com

dépendances des spécifications de nuget, obtenir la dernière version?

Dans la documentation nuspec versioning , je vois

1.0  = 1.0 ≤ x
(,1.0]  = x ≤ 1.0
(,1.0)  = x < 1.0
[1.0] = x == 1.0
(1.0) = invalid
(1.0,) = 1.0 < x
(1.0,2.0) = 1.0 < x < 2.0
[1.0,2.0] = 1.0 ≤ x ≤ 2.0
empty = latest version.

J'ai un packages.config qui ressemble à ceci

<packages>
  <package id="psake" version="4.2.0.1" />
</packages>

et je voudrais changer la version à "dernière".

J'ai essayé les deux 

<packages>
  <package id="psake" version="" />
</packages>

et

<packages>
  <package id="psake" />
</packages>

mais les deux résultent en Unable to parse version value '' from 'packages.config'.

J'utilise Nuget.exe 2.8.2

27
George Mauer

À partir de Nuget 2.8, vous pouvez ajouter l'attribut suivant à votre nuget.config.

<configuration>
    <config> 
        <add key="dependencyversion" value="Highest" /> 
    </config>
</configuration>

Lors de la résolution de vos paquets, la dernière version de ce paquet sera résolue. Les autres attributs sont les suivants: HigherMinor, HigherPatch et low (basé sur le versioning sémantique)

Source: http://docs.nuget.org/docs/release-notes/nuget-2.8

31
Joseph Devlin

Je suppose que vous essayez d’utiliser l’installation ou la restauration de nuget pour installer le paquet NuGet à l’aide de NuGet.exe.

L'attribut version dans packages.config définit la version installée dans le projet ou la solution.

Pour obtenir la dernière version du package psake NuGet, vous devez l'installer à l'aide de la console du gestionnaire de packages, de la boîte de dialogue Gérer les packages ou en connaissant la version exacte du package, en l'ajoutant au fichier packages.config et en utilisant le package de restauration. . Puisque psake est un package de niveau solution, il ne met pas à jour votre projet, la dernière option est réalisable. 

Les plages de versions permettent de restreindre les versions de package pouvant être installées dans votre projet.

<packages>
    <package id="SomePackage" version="2.1.0" allowedVersions="[2,3)" />
</packages>
4
Matt Ward

Sinon, vous pouvez exécuter restore sur une version arbitraire suivie de update selon https://docs.nuget.org/consume/command-line-reference . Pour être au courant, vous devrez réexécuter update.

Mettre à jour les packages vers les dernières versions disponibles. Cette commande met également à jour NuGet.exe lui-même. Veuillez noter que la présence du dossier Packages est requise pour exécuter la commande Update. Une méthode recommandée consiste à exécuter la commande de restauration NuGet.exe avant d'exécuter la commande de mise à jour.

0
KCD