Chcę napisać stałe wersje zależności w moim pakiecie.json zainstalowanych (! = Najnowsze dostępne) modułów.
Są to alternatywne rozwiązania, które nie spełniają wymagań:
Pisanie najnowszy dostępne wersje do pakietu package.json.
npm shrinkwrap zapisuje zależności do npm-shrinkwrap.json zamiast package.json
Nie chcę używać shrinkwrap, ponieważ jest po prostuinne narzędzie i dodatkowy plik konfiguracyjny dla problemu, który można rozwiązać bez. Lub może shrinkwrap być poprawione, aby napisać wszystkie wersje z npm-shrinkwrap.json do package.json?
Odpowiedzi:
0 dla odpowiedzi № 1Napisałem skrypt, który wyodrębnia wersje z pliku shrinkwrap w składni package.json:
node
var sw = require("/path/to/npm-shrinkwrap.json");
for (var key in sw.dependencies) { console.log(""" + key + "": "" + sw.dependencies[key].version + "",") }
Ale to jest brzydkie i nie działa dla zależności od deweloperów.
0 dla odpowiedzi nr 2
Ponieważ zależności twoich zależności będą również otrzymywać aktualizacje, których strategia nie jest udowodniona. Lepiej używać npm 5 z https://docs.npmjs.com/files/package-locks shrinkwrap lub przędza, która ma https://yarnpkg.com/lang/en/docs/yarn-lock/