/
githubmirror
/
node
Обзор
Документация
Войти
/
githubmirror
/
node
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
deps/npm/lib/utils/warn-workspace-allow-scripts.js
40 строк
1 KB
npm CLI robot
deps: upgrade npm to 11.19.0
04 авг 2026, 22:27
Не верифицирован
04 авг 2026, 22:27
c8fa0b1
Код
Авторство
О чём код?
const { log } = require('proc-log') // The allowScripts policy MUST live at the project root (RFC npm/rfcs#868). // A non-root workspace declaring its own allowScripts is almost always a // mistake: that policy would be silently ignored at install time. // // `findWorkspaceAllowScripts` returns the list of offending workspace nodes. // `warnWorkspaceAllowScripts` is the side-effecting variant that emits one // install-time `log.warn` per offender. const findWorkspaceAllowScripts = (tree) => { const offenders = [] if (!tree?.inventory) { return offenders } for (const node of tree.inventory.values()) { if (!node.isWorkspace || node.isProjectRoot) { continue } if (node.package?.allowScripts !== undefined) { offenders.push(node) } } return offenders } const warnWorkspaceAllowScripts = (tree) => { for (const node of findWorkspaceAllowScripts(tree)) { const name = node.packageName || node.name log.warn( 'install-scripts', `allowScripts in workspace ${name} (${node.path}) is ignored. ` + 'Move the field to the project root package.json.' ) } } module.exports = warnWorkspaceAllowScripts module.exports.warnWorkspaceAllowScripts = warnWorkspaceAllowScripts module.exports.findWorkspaceAllowScripts = findWorkspaceAllowScripts