Как создать для пакета package-lock.json для существующего моно-репо Lerna - PullRequest
0 голосов
/ 11 июня 2018

У нас есть существующее моно-репо Lerna , которое имеет структуру, такую ​​как:

/
  /packages
    /package1
    /package2
    /package3
    ...

В настоящее время мы используем пряжу для нашего проекта, и фактически имеем только верхний уровень yarn.lock file, без пакета yarn.lock, так как мы никогда не использовали рабочие пространства.

Мы пытаемся перейти на npm и хотим сгенерировать файл package-lock.json для каждого пакета в моно-репо,не только на высшем уровне.Как мы можем это сделать?Выполнение npm run lerna bootstrap --hoist создает файл блокировки верхнего уровня, но не включает теги "dev": true и не включает в себя локальные пакеты.Лучшее, что я смог сделать, - это сделать npm run lerna add somePackage --scope=package1, что, хотя somePackage уже существует в package, заставляет генерировать файл package-lock.json для каждого пакета в моно репо, кроме package1.Кроме того, сгенерированные package-lock.json файлы не имеют никаких dev-зависимостей.

Кроме того, я не могу зайти в каждый пакет и запустить npm install, потому что npm не знает о многих локальных пакетах.у нас есть в моно-репо, от которого зависят другие локальные пакеты.Как ни странно, даже в package-lock.json файлах, сгенерированных из npm через lerna add, эти файлы не содержат ссылок на локальные пакеты, только внешние.

Итак: как сгенерировать package-lock.json файл для каждого пакета в моно-репо, который также включает devDependencies?

...