📦
npm-check-updatesでパッケージを一括更新する
npm-check-updatesとは
npm-check-updates(通称ncu)は、package.jsonの依存パッケージを最新バージョンに更新するためのツールです。
通常のnpm updateコマンドでは、package.jsonのバージョン範囲内でしか更新されませんが、ncuを使うとメジャーバージョンアップも含めて最新版に更新できます。
インストール
グローバルにインストールします。
npm install -g npm-check-updates
基本的な使い方
更新可能なパッケージを確認
まずは更新可能なパッケージを確認します。
ncu
このコマンドで、現在のバージョンと最新バージョンが表示されますが、package.jsonは変更されません。
package.jsonを更新
package.jsonを最新バージョンに更新します。
ncu -u
または
ncu --upgrade
このコマンドを実行すると、package.jsonが最新バージョンに書き換わります。
パッケージをインストール
package.jsonが更新されたら、実際にパッケージをインストールします。
npm install
よく使うオプション
特定のパッケージのみ更新
ncu -u パッケージ名
例:
ncu -u react react-dom
インタラクティブモード
更新するパッケージを選択できます。
ncu -i
特定のパターンに一致するパッケージを更新
ncu -u --filter "パターン"
例:
ncu -u --filter "@types/*"
メジャーバージョンのみ、マイナーバージョンのみ更新
# メジャーバージョンのみ
ncu -u --target major
# マイナーバージョンのみ
ncu -u --target minor
実行例
$ ncu
Checking /path/to/project/package.json
[====================] 15/15 100%
express ^4.17.1 → ^4.18.2
react ^17.0.2 → ^18.2.0
typescript ^4.5.5 → ^5.0.4
Run ncu -u to upgrade package.json
$ ncu -u
Upgrading /path/to/project/package.json
[====================] 15/15 100%
express ^4.17.1 → ^4.18.2
react ^17.0.2 → ^18.2.0
typescript ^4.5.5 → ^5.0.4
Run npm install to install new versions.
注意点
- メジャーバージョンアップは破壊的変更を含む可能性がある
- 本番環境に適用する前に、開発環境やステージング環境でテストすることを推奨
- package-lock.jsonやyarn.lockも更新されるため、チーム開発では事前に共有する必要がある
まとめ
npm-check-updatesを使うことで、パッケージの更新作業を効率化できます。
定期的に依存パッケージを最新に保つことで、セキュリティの向上や新機能の恩恵を受けられます。
Discussion