Pnpm has a new setting to stave off supply chain attacks
pnpm 10.16
12 сентября 2025 · 3 мин чтения
Незначительные изменения
Новая настройка для отложенных обновлений зависимостей
Для снижения риска установки скомпрометированных версий пакетов вводится настройка minimumReleaseAge, которая задерживает установку недавно выпущенных зависимостей. Например, minimumReleaseAge: 1440 разрешает установку только пакетов, выпущенных не менее дня назад.
Исключения можно указать в minimumReleaseAgeExclude:
minimumReleaseAgeExclude:
- webpack
Расширенная фильтрация зависимостей с помощью функций-поисковиков
Добавлена поддержка finders в .pnpmfile.cjs. Теперь можно искать зависимости не только по имени, но и по другим свойствам, например, по наличию определённой версии React в peerDependencies:
module.exports = {
finders: {
react17: (ctx) => {
return ctx.readManifest().peerDependencies?.react === "^17.0.0";
},
},
};
Использование:
pnpm why --find-by=react17
Функции могут возвращать дополнительную информацию для вывода.
Исправления
- Устранено предупреждение о устаревании при запуске в Node.js 24.
- Добавлена проверка на точную версию semver для
nodeVersion. - Исправлена возможность публикации
.tar.gzфайлов черезpnpm publish. - Прерывание процесса Ctrl-C теперь возвращает ненулевой код выхода.