
GitHub 공식 변경 로그에 따르면 npm v12는 npm install의 기본 동작을 보안 중심으로 바꾼다. GitHub는 다음 주요 버전에서 의존성의 설치 스크립트 실행을 기본적으로 막고, Git 의존성과 원격 URL 의존성도 명시적으로 허용한 경우에만 해석하도록 전환할 계획이라고 밝혔다.
가장 큰 변화는 allowScripts 기본값이다. 현재 npm install 과정에서 자동 실행될 수 있는 preinstall, install, postinstall 스크립트는 npm v12부터 프로젝트가 허용한 패키지에 한해 실행된다. native node-gyp 빌드와 Git·file·link 의존성의 prepare 스크립트도 같은 기준을 적용받는다.
GitHub는 이 변화가 공급망 공격에서 반복적으로 악용돼 온 설치 단계 코드 실행 경로를 줄이기 위한 조치라고 설명했다. Git 의존성은 --allow-git, 원격 tarball 등 원격 URL 의존성은 --allow-remote 옵션으로 명시 허용해야 한다. 관련 경고와 준비 절차는 npm 11.16.0 이상에서 미리 확인할 수 있으며, v12 출시는 2026년 7월로 예상됐다.
개발팀 입장에서는 패키지 설치가 더 예측 가능해지는 대신, 기존 빌드·설치 자동화가 중단될 수 있다. 특히 네이티브 모듈이나 설치 후 스크립트에 의존하는 프로젝트는 npm approve-scripts로 신뢰할 패키지를 확인하고, 그 결과를 package.json에 반영해야 한다.
출처: GitHub Changelog https://github.blog/changelog/2026-06-09-upcoming-breaking-changes-for-npm-v12/ / npm Docs https://docs.npmjs.com/cli/v11/commands/npm-approve-scripts