Yarnからpnpmへ移行した3つの理由
(hiddenest.dev)Airbridgeのフロントエンドで使っているパッケージマネージャーをYarn Berryからpnpmへ移行し、1年間使ってみて感じたことをまとめた記事です。
Yarn Berryで感じた不便な点
- Yarn PnPがGitに継続的に負荷をかける
- Ghost Dependencyとのしつこい戦い
- Yarn Workspaceの細かなバグ
pnpmを導入して得られた解決策
- デプロイ工程中のパッケージインストール時間が30秒〜1分ほど短縮
- グローバルストア(Virtual Store)にパッケージを保存し、プロジェクトの
node_modulesとはsymlinkで接続 - 重複したパッケージをインストールしないため、保存容量とネットワークを節約
- グローバルストア(Virtual Store)にパッケージを保存し、プロジェクトの
- パッケージ間のリンクが自動で行われ、より簡単にモノレポをセットアップ
patch-package、dedupeなどYarn Berryで使っていた機能もほぼそのまま利用可能
2件のコメント
たぶんそういう部分もあると思いますし、Yarn Berry の場合はプラグインシステムが強力だという点も一役買っている気がします。