pnpm 11.21-11.22

pnpm 11.21과 11.22에서는 pnpm install이 대부분의 일상적인 변경에 대해 전체 종속성 그래프를 다시 해석하는 대신 lockfile을 제자리에서 업데이트하도록 하고, CI에서 설치를 깨뜨리는 SSH URL을 더 이상 기록하지 않으며, 전역 설치가 원자적으로 전환되고 전역 대화형 업데이트가 설치 그룹 전체를 선택하도록 하고, pnpm cache path를 추가하며, 프로젝트가 pnpm-workspace.yaml을 통해 pnpm의 머신 수준 상태를 옮기는 기능을 제거합니다.

새로운 pnpm 12에서 달라진 점

pnpm 12는 pnpm을 Rust로 다시 작성한 것으로, 현재 릴리스 후보 단계입니다. 업그레이드는 마이그레이션을 의미하지 않습니다. 아래의 차이점을 제외하면 pnpm 11의 명령, 플래그, 설정, lockfile 형식을 그대로 유지하며, 문서는 두 버전 모두에 적용됩니다.

다섯 가지가 다르며, 그중 하나인 제거된 플래그는 다르게 동작하는 것이 아니라 아예 실패합니다. 이 글에서는 이를 한곳에 모았습니다.

pnpm 11.20

pnpm 11.20에서는 둘 이상의 레지스트리에서 설치하는 프로젝트의 패키지 대체 위험을 수정합니다. 이제 이름 있는 레지스트리에서 해석된 패키지는 lockfile에 레지스트리로 한정된 키로 기록됩니다. 또한 기본 제공 npmjs: 별칭을 추가하고, 빈 프록시 설정으로 설치가 실패하지 않도록 하며, 악의적인 lockfile에 대해 pnpm rebuild를 강화하고, 종속성 해석 속도를 높입니다.

pnpm 11.15-11.19

pnpm 11.15부터 11.19까지는 pnpm update와 pnpm outdated가 GitHub Actions를 업데이트할 수 있게 하고, pnpm update가 수행한 버전 올림에 대한 changeset을 작성하게 하며, 더 깔끔한 update 및 audit 설정 섹션을 도입하고, 다른 이름으로 패키지를 게시하기 위한 publishConfig.name을 추가하며, 프로젝트가 제공하는 구성으로부터 pnpm self-update를 보호하고, TTY 없이도 웹 기반 로그인이 동작하게 하며, =를 save-prefix로 허용합니다. 또한 대규모 워크스페이스에서 해석 시 최대 메모리 사용량을 몇 배 줄이고, 호환 가능한 종속성 변경 후 반복 설치 속도를 높입니다.

pnpm 11.11-11.14

pnpm 11.11부터 11.14까지는 네이티브 워크스페이스 릴리스 관리(pnpm change, pnpm lane, 인수 없는 pnpm version -r), 설치 상태를 처음부터 끝까지 진단하는 pnpm doctor 명령, 레지스트리에서 패키지와 조직을 관리하는 pnpm access 및 pnpm team 명령, 수렴 overrides, 스킴을 포함하는 peerDependencies 지정자를 추가합니다. 또한 경로 탐색 취약점을 수정하고, 콜드 캐시 해석 중 최대 메모리 사용량을 약 30% 줄이며, 피어 종속성 교착 상태를 해결합니다.

pnpm 11.10

pnpm 11.10은 CI 친화적인 레지스트리 인증을 위한 _auth 설정, 새로운 pnpm prefix 및 pnpm issues 명령, 그리고 pnpm self-update로 pnpm v12 (Rust 포트)를 설치하는 기능을 추가합니다. 또한 pnpm up의 정확도를 개선하고, 축약 메타데이터를 무시하는 레지스트리에 대한 해석 속도를 높이며, 전역 패키지 관리, pnpm deploy, pnpm pack-app을 강화합니다.

pnpm 11.9

pnpm 11.9에서는 체크섬을 게시할 수 없는 레지스트리에 대해 누락된 tarball integrity를 계산하고, pnpm sbom --exclude-peers를 추가하며, 순환 lockfile에서 감사 성능을 개선하고, 피어 해석의 비결정성을 수정하며, minimumReleaseAge 및 trustPolicy의 제외 처리를 강화합니다.

pnpm 11.8

pnpm 11.8에서는 설치 시험 실행 미리보기, Node.js 패키지 맵 생성, 더 풍부한 SBOM 출력, 현재 패키지를 기본값으로 사용하는 pnpm view, 그리고 올바른 pnpm run --no-bail 종료 코드가 추가되었습니다. 또한 구성 종속성 lockfile 경로 탐색 수정과 여러 설치/업데이트 결정성 수정이 포함됩니다.

pnpm 11.7

pnpm 11.7에서는 읽기 전용 패키지 스토어를 대상으로 설치하기 위한 frozenStore 설정, 전체 워크스페이스를 하나의 요청으로 게시하는 --batch 플래그, 스코프별 인증 토큰, 그리고 pacquet에 위임되는 전체 해석 설치가 추가되었습니다. 또한 lockfile 별칭 처리를 강화하고, 여러 설치 경로를 결정적으로 만들며, 여러 게시 및 Windows 관련 수정 사항이 포함됩니다.

pnpm 11.6

pnpm 11.6에서는 npm_config_//… 및 pnpm_config_//… 환경 변수를 통해 파일 없이 레지스트리 인증을 제공하는 방법이 추가되고, 기본 네트워크 동시성이 높아지며, pnpm-lock.yaml만 없는 경우 전체 재해석을 건너뜁니다. 또한 선택적 종속성의 플랫폼 필드를 추론하여 다른 플랫폼용 바이너리가 다운로드되지 않도록 합니다.