pnpm 11
pnpm 11 がリリースされた。Node.js 18〜21 のサポートは終了し、実行には Node.js 22 以上が必要になる。スタンドアロン実行ファイルは glibc 2.27 以上を前提とする。v10 からの設定移行は pnpm-v10-to-v11 codemod と公式の移行ガイドで補われる。
主な変更は次のとおり。
minimumReleaseAgeの既定は 1 日(1440 分)で、blockExoticSubdepsは true が既定。従来のビルド依存まわりの設定はallowBuildsのマップへ集約された。- グローバルインストールはグローバル仮想ストア上で分離され、
pnpm install -g(引数なし)は廃止されpnpm add -g <pkg>に寄せられた。 - ストアは SQLite ベースのインデックス(store v11)に刷新され、マニフェスト同梱などで I/O を減らしている。
pnpm publish/login/view/dist-tagなどは npm CLI への委譲をやめた。.npmrcは認証とレジストリ中心に整理され、pnpm 固有の設定はpnpm-workspace.yamlまたは~/.config/pnpm/config.yamlに置く。環境変数の接頭辞はpnpm_config_*に統一された。pnpm auditは bulk advisories エンドポイントを使うため、auditConfig.ignoreCvesはignoreGhsas(GHSA ベース)へ移行する。
minimumReleaseAge を無効化するには pnpm-workspace.yaml で 0 を指定する。
yaml
# pnpm-workspace.yaml
minimumReleaseAge: 0ビルド許可は allowBuilds で名前パターンごとに true / false を書く。
yaml
# pnpm-workspace.yaml
allowBuilds:
electron: true
core-js: false
esbuild: false