Недавно обнаружен npm-audit
, и при первом запуске он обнаружил множество уязвимостей, в основном в отношении пакетов и их зависимостей.
Желая устранить эти уязвимости, я обнаружил npm shrinkwrap
, который позволяет мне указать, какие версии и его зависимости следует использовать?Так или иначе, я вижу это (Пожалуйста, исправьте меня, если не так, здесь, чтобы узнать).
Один пример, который я пытаюсь исправить, - это модуль hoek
, в моем package.json
это установлено как "hoek": "^5.0.3"
Когда я запускаю npm shrinkwrap
, одна из зависимостей имеет hoek
, установленную как версию 2
"boom": {
"version": "2.10.1",
"resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
"integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
"requires": {
"hoek": "2.x.x"
},
"dependencies": {
"hoek": {
"version": "2.16.3",
"resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
"integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0="
}
}
},
Я подумал, что могу отредактировать это и указать, какую версию я хочу, чтобы зависимость использовалась кактак
"boom": {
"version": "2.10.1",
"resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
"integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
"dev": true,
"requires": {
"hoek": "2.x.x"
},
"dependencies": {
"hoek": {
"version": "5.0.3",
"resolved": "https://registry.npmjs.org/hoek/-/hoek-5.0.3.tgz",
"integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=",
"dev": true
}
}
},
Однако, когда я запускаю npm shrinkwrap
или npm install
, все это возвращается к исходному
Как мне поступить с этим?Является ли термоусадочная пленка правильным выбором или я пытаюсь сделать что-то с этим, чего просто не могу?
Спасибо