はじめに
package.jsonに羅列されたnpm packageのバージョンを新しくしたい時に使用するnpm-check-updates。
意外とやりたいタイミング多そうなユースケースの解説の記事がすぐ見つからなかったので、自分用メモ的に。
全ライブラリの更新
一番基本の使い方。
グローバルインストールしたくないのでnpxから。
# チェック
npx -p npm-check-updates -c "ncu"
# 更新
npx -p npm-check-updates -c "ncu -u"
特定ライブラリの指定
npx -p npm-check-updates -c "ncu {パッケージ名}"
# e.g.
npx -p npm-check-updates -c "ncu prettier"
wildcardによる指定
アスタリスクを使用してwildcard指定が可能です。
# e.g.
npx -p npm-check-updates -c "ncu aws-cdk* @aws-sdk/*"
一緒に更新するものはシリーズものである場合も多いと思います。(記載の例のようにaws-cdkやaws-sdkなど)
このパターンは結構使えますね。
正規表現による指定
npx -p npm-check-updates -c "ncu '/^(?!gulp-).*$/'"
動かしてませんができるらしい。
インタラクティブに選択
npx -p npm-check-updates -c "ncu -i"
パッケージの一覧と更新バージョンが出てきて、カーソル上下で移動、左右で更新するかどうかを選択できます。
確定後、そのままyarn install(npmの場合はnpm install)も行ってくれます。
結構便利かも。
マイナーバージョンまでを最新化
"--target"オプションで指定。
npx -p npm-check-updates -c "ncu {パッケージ名} --target minor"
# e.g.
npx -p npm-check-updates -c "ncu jest --target minor"
また、"minor"ではなく"patch"を指定するとパッチバージョンだけ更新できます。
特定のパッケージ以外
"-x"で除外対象を指定。
npx -p npm-check-updates -c "ncu -x {パッケージ名}"
# e.g.
npx -p npm-check-updates -c "ncu ―x jest"