インストール時に互換な依存版をワークスペース全体で 1 つへ寄せる autoDedupe が加わった。複数版が並び、どれか 1 つがすべてのレンジを満たせばそのバージョンを選ぶ。frozen install では lockfile を変えない。有効化は pnpm-workspace.yaml のほか、pnpm install --auto-dedupe / pnpm add --auto-dedupe。

yaml
autoDedupe: true

macOS と Linux ではプロジェクトごと移動・コピーした node_modules と bin shim を pnpm install / run / exec が再利用する。移動後の初回コマンドでツリーを確認し新位置を記録するため、node_modules/.bin のプロジェクトコマンドは動き続ける。

pnpm add --save-types は入手可能な @types/* を devDependencies に保存する。バンドルされた TypeScript 型を宣言するパッケージは対象外。既定化は saveTypes: true。

sh
pnpm add express --save-types
  • pnpm add / update / remove / pkg / link / set-script / version が package.yaml を更新し、既存コメントとキー順は残す
  • catalog エントリが file: と link: を受け付け、相対パスと裸パスは pnpm-workspace.yaml のあるディレクトリから測る
  • pnpm tasks status が各 concurrency group の実行中・待機タスクを列挙し、待機は priority 降順で空き枠を取る
  • POSIX の bin shim は Cygwin / MSYS2 / WSL2 で cygpath / wslpath をシステムの既定 PATH から取り、依存が別パッケージの shim を差し替えられない

#参考文献