Après avoir mis à jour les dernières versions stables de node
et npm
, j'ai essayé npm install moment --save
. Il enregistre l'entrée dans le package.json
avec le préfixe caret ^
. Auparavant, c'était un préfixe tilde ~
.
npm
?~
et le caret ^
?Voir les docs NPM
~
fixe les numéros majeurs et mineurs. Elle est utilisée lorsque vous êtes prêt à accepter des corrections de bogues dans votre dépendance, mais que vous ne voulez pas de changements potentiellement incompatibles.
^
fixe uniquement le numéro majeur. Il est utilisé lorsque vous surveillez de près vos dépendances et que vous êtes prêt à modifier rapidement votre code si la version mineure est incompatible.
De plus, ^
n'est [pas supporté] (https://stackoverflow.com/questions/22270244/install-grunt-phonegap-error-no-compatible-version-found-urijs1-12-0#comment33861904_22270244) par les anciennes versions de npm, et doit être utilisé avec précaution.
Donc, ^
est un bon défaut, mais il n'est pas parfait. Je vous suggère de choisir et de configurer avec soin l'opérateur semver qui vous est le plus utile.
~
: Raisonnablement proche des
~1.1.5: 1.1.0 <= accepted < 1.2.0
^
: Compatible avec
^1.1.5: 1.1.5 <= accepted < 2.0.0
^0.1.3: 0.1.3 <= accepted < 0.2.0
^0.0.4: 0.0.4 <= accepted < 0.1.0