Следует ли фиксировать package-lock. json в хранилище пакета npm? - PullRequest
0 голосов
/ 14 марта 2020

Это похоже на Зафиксировать ли файл package-lock. json файл, созданный npm 5? или Следует ли также блокировать пакет. json также будет опубликовано?

, но для npm упаковки. Мне сказали, что не рекомендуется фиксировать этот файл в репозитории (он рекомендуется только для заявок), но сейчас я не могу найти эту информацию для подтверждения.

Из документации npm:

Одна ключевая деталь о блокировке пакетов. json заключается в том, что она не может быть опубликована и будет игнорироваться, если найдена в любом месте, кроме пакета верхнего уровня

https://docs.npmjs.com/configuring-npm/package-lock-json.html

Значит ли это, что не должно иметь значения, зафиксировать я файл или нет? Я спрашиваю, потому что github только что обнаружил уязвимость (снова) в моем репо (npm пакет) и говорит, что уязвимость находится в package-lock. json (одна была автоматически исправлена ​​ботом зависимости - PR). Означает ли это, что пакет npm также уязвим или нет, если файл блокировки не находится в репозитории npm.

Что такое повторные рекомендации относительно файлов блокировки для пакетов npm? Хороший справочный сайт с этой информацией тоже подойдет.

1 Ответ

0 голосов
/ 14 марта 2020

Полезно хранить блокировку пакетов в репозитории, поскольку это будет означать, что тот, кто загрузит и установит проект, получит в точности те же суб-зависимости, что и вы.

GitHub стал суетиться по поводу устаревших зависимостей, что может быть полезно, чтобы вы знали, не переустанавливая их, чтобы выяснить.

Могут быть случаи, когда вы загружаете старое хранилище и хотите, чтобы приложение было таким, каким оно было при последнем обновлении. Если блокировка пакетов отсутствует в репозитории, сделать это практически невозможно.

Часто, если у зависимости было серьезное обновление, вам необходимо изменить код в своем проекте, чтобы не отставать. Пакет-блокировка защищает вас от необходимости вносить все изменения сразу для старого проекта со многими устаревшими зависимостями.

...