сбой ci npm с локальными пакетами

#node.js #npm

#node.js #npm

Вопрос:

Я использую nodejs 10 и npm 6.9.

Я хотел создать два проекта. Один зависит от другого.

Итак, я создал эти папки

-myapps

—parentproj

—childproj

затем я выполнил эти шаги:

  1. перейдите в папку parentproj

  2. выполните команду «npm create»

  3. выполните «npm install fs-extra» (для добавления ссылки на стороннюю программу)

  4. перейдите в папку childproj

  5. выполните команду «npm create»

  6. выполните «установку npm ..parentproj»

теперь папка childproj содержит как файл package.json, так и файл package-lock.json.

Если я запускаю «npm ci», я получаю эту ошибку

«ошибка npm! fs-extra недоступен из parentproj»

Более того, если я запускаю «npm ls» из папки childproj, я получаю это сообщение

`— НЕУДОВЛЕТВОРЕННАЯ ЗАВИСИМОСТЬ fs-extra@^7.0.1

Я делаю что-то не так?

Каков правильный способ работы с локальными пакетами без их публикации?

с уважением.

Комментарии:

1. Я попытался воспроизвести проблему, но с npm 6.4.1 все в порядке ( cmd а также bash — я думал, что это может быть проблема с символической ссылкой). Не могли бы вы попробовать с этой версией, поскольку узел 10 поставляется в комплекте с этой версией?

2. Я немного покопался в проблеме, протестировав версии 6.4.1 и 6.9 . Разница, которую я обнаружил, заключалась в package-lock.json формате. В 6.4.1 версии parent запись будет содержать поле зависимостей, которое используется npm, в то время как в версии 6.9 этого нет. Я открыл отчет об ошибке в сообществе npm, так что, возможно, скоро это будет исправлено. На данный момент я предлагаю понизить рейтинг до версии 6.4.1 .

3. Я сам провел несколько тестов со старыми версиями npm и обнаружил, что в сценарии, описанном в этом вопросе, если я запускаю command npm ci, версия npm 6.7 работает корректно. версия 6.8 выходит из строя.

4. Здесь та же проблема, мы также понизили рейтинг до версии 6.7.