公開しているパッケージを deprecated にする

公開している npm パッケージが何らかの理由で非推奨となった場合に deprecated 扱いにする方法です。

npm-deprecate

公式サイトの npm-deprecate external_link に書かれているとおり、npm にはパッケージが非推奨であること、そして理由を登録する方法が用意されています。

パッケージを deprecated にする

npm deprecate コマンドを実行することで、パッケージ全体(全バージョン) を非推奨にできます。

$ npm deprecate <パッケージ名> "非推奨の理由"

非推奨となったパッケージは npm 上で以下のように deprecated であることがメッセージと共に表示されるようになります。

image.png

また、npm package をインストールした際にもコンソール上にメッセージが表示されます。

$ npm install --global @weseek/clf-date npm WARN deprecated @weseek/clf-date@0.2.1: Because a bug in 'lludol/clf-date' has been fixed, this package will be removed soon. https://github.com/lludol/clf-date/pull/7 C:\Program Files\nodejs\clf-date -> C:\Program Files\nodejs\node_modules\@weseek\clf-date\bin\clf-date.js + @weseek/clf-date@0.2.1 added 1 package from 1 contributor in 1.235s

パッケージの特定のバージョンだけ非推奨にする場合はバージョンを指定することも可能です。
バージョンは semver external_link による範囲指定が可能です。

$ npm deprecate <パッケージ名>@<バージョン> "非推奨の理由"

やり直す

非推奨にしたパッケージをやはり必要となって戻す場合は、deprecated メッセージを空にすれば ok です。

$ npm deprecate <パッケージ名> ""