2014-07-24 2 views
1

J'ai grunt-contrib-uglify installé à la version 0.2.7. Selon the repo, la dernière version est 0.5. J'ai essayé de mettre à jour via:Pourquoi le paquet npm ne sera-t-il pas mis à jour vers la dernière version?

npm update grunt-contrib-uglify --save-dev 

mais cela installe à nouveau la version 0.2.7. Suis-je censé mettre à jour manuellement le numéro de version dans package.json et seulement ensuite exécuter la ligne ci-dessus? Question de bonus: Pourquoi ma mise à jour de npm n'a-t-elle pas été effectuée?

enter image description here

+0

Qu'est-ce que votre package.json a à dire à propos du paquet? –

+0

@JoachimIsaksson '" grunt-contrib-uglify ":" ~ 0.2.7 ",'. Suis-je censé mettre à jour ce numéro manuellement en premier? –

+0

Comment voulez-vous verrouiller la version? Toute version, majeure ou mineure> = 0.2.7 ou toute version avec version majeure 0 et> = 0.2.7 ou ...? –

Répondre

4

Il y a deux wildcards évidentes à utiliser, ^ (majeure) ou tenir ~ (tenir mineur);

"grunt-contrib-uglify": "^0.5.x", 

installera une version 0.x.x version du paquet supérieur ou égal à 0.5.0, mais la mise à jour de tenir à la version 1.x.x. Cela permettra à la mise à jour de tirer le dernier paquet 0.x.x.

"grunt-contrib-uglify": "~0.5.x", 

va installer n'importe quelle version 0.5.x, mais continuez sur 0.6.x. Cela permettra à la mise à jour de tirer le dernier paquet 0.5.x.

+0

alors comment puis-je déplacer la majuscule? il suffit de le supprimer de package.json et exécutez la mise à jour? – artSir

Questions connexes