След като обнових до последните стабилни версии на node
и npm
, опитах да инсталирам npm moment --save
. Той запазва записа в package.json
с префикса caret ^
. Преди това префиксът беше с тилда ~
.
npm
?~
и карета ^
?~
поправя главните и второстепенните номера. Използва се, когато сте готови да приемете поправки на грешки в зависимостта си, но не искате потенциално несъвместими промени.
^
поправя само главния номер. Използва се, когато внимателно следите зависимостите си и сте готови бързо да промените кода си, ако минорната версия ще бъде несъвместима.
Освен това ^
не се поддържа от стари версии на npm и трябва да се използва с повишено внимание.
Така че, ^
е добро решение по подразбиране, но не е перфектно. Предлагам внимателно да изберете и конфигурирате оператора на semver, който е най-полезен за вас.
~
: Доста близко до
~1.1.5: 1.1.0 <= accepted < 1.2.0
^
: Съвместим с
^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