Madogiwa Blog

主に技術系の学習メモに使っていきます。

pnpmのバージョン管理をCorepackから`manage-package-manager-versions`に移行する📝

個人のサービスでpnpmのバージョン管理にCorepackを利用していたのですが、Corepackは以下の通りNode.jsから削除されてしまうようです 😢

zenn.dev

そのためpnpmのv9.7で追加されたmanage-package-manager-versionsを使ってpnpmのバージョン管理をCorepackと同様にpackage.json内ので行うpackageManagerで行うようにしたので対応したことをメモ📝

github.com

manage-package-manager-versions Added in: v9.7.0 Default: false Type: Boolean When enabled, pnpm will automatically download and run the version of pnpm specified in the packageManager field of package.json. This is the same field used by Corepack.

Settings (.npmrc) | pnpm

やり方は簡単でpnpmのinstallをnpmでglobal installするように変更し、

- corepack enable pnpm
+ npm install -g pnpm 

※node.jsはinstallする必要があるのでスタンドアローンは採用せず普通にnpmでインストールするようにしました。 link

.npmrcを作成して以下の設定を追加するだけでした🙆

manage-package-manager-versions=true

これであとはCorepackと同様に以下のpackage.jsonpackageManagerの指定に基づいたバージョンを自動的に利用してくれます✨

  "packageManager": "pnpm@9.10.0"

CorepackがNode.jsの標準添付で無くなってしまうのは残念ですが、pnpmを利用しているのであればmanage-package-manager-versionsを利用すると、Corepack相当の機能を利用できるので便利ですね!!!(ありがたや🙏)

参考

qiita.com