概要
pnpm install による取得・配置(node_modules のレイアウト、フック、ネットワーク)まわり。複数階層の modulesDir(www/modules など)が各プロジェクトに正しく連結されるようになり、nodeLinker: hoisted で削除したパッケージのコマンドが .bin に残らなくなった。engineStrict の判定前に readPackage フックが適用されるようになり、レジストリが応答を止めたときはタイムアウトだと分かるエラーを出す。未リリースの新機能として、http/https の tarball 依存でレスポンスの Cache-Control に従い、不要なリクエストを省くようになった。v12.8.1 では 12.8.0 で file: ディレクトリ依存や injected パッケージのファイルが実行ビットを失っていた後退が直った。未リリースの修正として、CA 証明書の無いシステムで NODE_EXTRA_CA_CERTS を設定しても同梱のルートにフォールバックし、Nix のサンドボックスでもシムのヘルパーが PATH から見つかるようになり、tarball の展開に zlib-rs を使うようになった。
主な API・オプション
modulesDir— 相対パスは全体を各プロジェクトのディレクトリに連結(pnpm binも同様)readPackageフック(.pnpmfile.cjs)—engineStrictを含むインストール可否の判定前に適用fetchTimeout— 超えた場合のエラーにタイムアウトであることと設定のヒントを表示- http/https tarball の
Cache-Control—<cacheDir>/v11/tarball-resolutionsに記録し、新鮮なら通信なし、古ければIf-None-Matchで再検証(v12) NODE_EXTRA_CA_CERTS— システムの CA ストアが空なら同梱の Mozilla ルートに追加して使う(v12、未リリース)
変更履歴
- 2026-09-30 —
flate2のzlib-rsバックエンドで展開を高速化(#16235)⏳ 未リリース · 変更 - 2026-09-30 — シムのヘルパーが
command -pで見つからないときPATHにフォールバック(#16379)⏳ 未リリース · 変更 - 2026-09-30 — CA 証明書の無いシステムでも
NODE_EXTRA_CA_CERTSを追加扱いに(#16367)⏳ 未リリース · 変更 - 2026-09-30 — local ディレクトリ依存のファイルが実行ビットを失う 12.8.0 の後退を修正(#16318)📦 v12.8.1 · 変更
- 2026-09-28 — http/https の tarball 依存で
Cache-Controlを尊重(#15719)⏳ 未リリース · 変更 - 2026-09-28 — レジストリが応答を止めたときにタイムアウトだと分かるエラーに(#15544)📦 pnpr@0.1.0-alpha.13 · 変更
- 2026-09-28 —
nodeLinker: hoistedで削除したパッケージのコマンドを.binから除去(#15429)📦 pnpr@0.1.0-alpha.13 · 変更 - 2026-09-28 —
engineStrictのチェック前にreadPackageフックを適用(#15525)📦 pnpr@0.1.0-alpha.13 · 変更 - 2026-09-28 — 複数階層の
modulesDirをプロジェクトディレクトリに正しく連結(#15524)📦 pnpr@0.1.0-alpha.13 · 変更