NPMモジュールを利用して開発を行っていて、定期的に利用しているNPMモジュールのバージョンを最新に更新したいと思うんだが、いちいちpackage.jsonの依存関係定義を書き直すのが面倒で「ま、そのうちやるか…」とか先送りにしてた。しかし、いざやらねばならなくなったので「何か一括でできる方法ないかなぁ」と探してみたら──やっぱり、ありました。
そんなわけで(自宅の環境にも反映させるためにも)忘れないようにここに書き留めておく。

まぁ、やり方は簡単で「npm-check-updates」モジュールを使うだけだ。

まずは、「npm-check-updates」をグローバルインストール。

$ npm install -g npm-check-updates 

あとは、ローカルプロジェクトのディレクトリ(package.jsonがあるところ)へ移動して、

$ ncu -u

──を実行するだけで、package.jsonの依存モジュールのバージョン定義をアップデートしてくれる(-uオプションなしだと、各モジュールの最新バージョンの通知のみしてくれる)。

実行例:

$ ncu -u

 gulp-flatten     0.0.4  →        0.1.1
 gulp-rev        ^3.0.1  →       ^5.1.0
 jshint-stylish  ^1.0.2  →       ^2.0.1
 lazypipe        ^0.2.3  →       ^1.0.1
 merge-stream    ^0.1.7  →       ^1.0.0
 wiredep         ^2.2.2  →  ^3.0.0-beta

The following dependencies are satisfied by their declared version range, but the installed versions are behind. You can
 install the latest versions without modifying your package.json by using npm update. If you want to update the dependen
cies in your package.json anyway, use ncu --upgradeAll.

 browser-sync    ^2.7.1  →   ^2.8.2
 coffee-script   ^1.9.2  →   ^1.9.3
 del             ^1.1.1  →   ^1.2.1
 gulp-changed    ^1.2.1  →   ^1.3.0
 gulp-concat     ^2.5.2  →   ^2.6.0
 gulp-imagemin   ^2.2.1  →   ^2.3.0
 gulp-jshint    ^1.10.0  →  ^1.11.2
 gulp-sass       ^2.0.1  →   ^2.0.4
 minimist        ^1.1.1  →   ^1.1.3
 run-sequence    ^1.1.0  →   ^1.1.2

Upgraded /var/www/html/my-project/package.json

これは便利だ!

NPMモジュールはどれも更新が激しいので、気が付いたらncuしておく習慣を付けておくと良いかも。