Получение дедуплированного дерева npm - PullRequest
0 голосов
/ 12 июня 2018

При установке узла (например, v10.4.0) он поставляется с копией npm, которая дедуплицируется и избегает чрезвычайно глубоких путей.например, просматривая C:\Program Files\nodejs\node_modules\npm\node_modules\libnpmhook\node_modules\npm-registry-fetch, нет никаких подпапок, потому что дочерние модули были перемещены ближе к корню.

Однако при загрузке официального zip из https://github.com/npm/npm/archive/v6.1.0.zip, вы в конечном итоге получаете что-тото есть не дедуплицировано и имеет очень длинные пути.например, взяв тот же пример, что и выше, он идет намного глубже, чем npm-registry-fetch:

node_modules\libnpmhook\node_modules\npm-registry-fetch\node_modules\make-fetch-happen\node_modules\https-proxy-agent\node_modules\agent-base\node_modules\es6-promisify\node_modules\es6-promise\lib\es6-promise\promise\resolve.js

Аналогично, если запустить npm install npm@6.1.0 в чистой папке, вы получите такое же глубокое дерево.

Вопрос : как можно получить или создать дерево npm, которое оптимизировано и аналогично тому, которое устанавливается с помощью самого Node?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...