Эквивалент проверки пряжи в нпм
В рамках моей разработки я хотел бы проверить, что версии зависимостей в node_modules
это то, что ожидается там в соответствии с тем, что указано в package.json
и файл блокировки package-lock.json
,
В пряже вы можете сделать это с yarn check
yarn check
проверкиpackage.json
соответствует файлу блокировкиyarn check --verify-tree
проверяет, чтоpackage.json
соответствует тому, что на самом деле присутствует вnode_modules
Я пытаюсь добиться того же, используя npm (версия 6+).
На данный момент я использую npm ci
( документы), который работает, в том смысле, что он полностью переустанавливает node_modules
от того, что находится в файле блокировки, а затем ошибки, если версии в package.json
не совпадают
Но это кажется немного тяжелым. Мне интересно, существует ли чисто статический способ запуска этих проверок с помощью npm, который не включает очистку и переустановку всего?
Это не просто из интереса, хотя это отчасти так. Я на самом деле хочу, чтобы он тоже был быстрее, так как он работает на каждой сборке разработчика. Даже с небольшим количеством зависимостей две вышеуказанные команды пряжи выполняются в ~3/4 времени npm ci
на моей машине. Я предполагаю, что это станет более выраженным только при большем количестве зависимостей, поскольку запись на диск, вероятно, является здесь узким местом.