ローカルパッケージを更新する手順について説明します。
本記事では、複数のパッケージを一気にバージョンアップする方法については解説しません。ライブラリやフレームワークによっては公式でバージョンアップデート方法やマイグレーション方法を説明している場合があります。そのような場合は本手順ではなく、公式の手順に従うようにしてください。
また、パッケージのバージョンアップは十分注意して行うようにしてください。バグフィックスであっても意図しない動作をする可能性がありますので、十分テストした上でバージョンアップすることが大切です。
手順
sass
パッケージをアップデートする例で手順を説明します。
{
...
"devDependencies": {
"sass": "^1.56.1"
}
}
執筆時点では、sass
パッケージの最新バージョンは1.56.2
ですので、1.56.1
から1.56.2
へのバージョンアップを試みます。
アップデートの有無を確認する
エディタの機能等で最新バージョンを確認できる方は必要ありませんが、コマンドで最新バージョンが存在するかを確認することができます。
$ npm outdated
Package Current Wanted Latest Location Depended by
sass 1.56.1 1.56.2 1.56.2 node_modules/sass npm-update-sample
前述のとおり、現在バージョン(Current)は1.56.1
で最新バージョン(Latest)は1.56.2
であることがわかります。
各項目の意味は以下のとおりです。
- Package:最新バージョンがあるパッケージ(現在のバージョンが最新バージョンの場合は表示されない)
- Current:現在インストールされているバージョン
- Wanted:
package.json
に記載されたセマンティックバージョンの条件を満たす最新バージョン - Latest:最新バージョン
- Location:インストール先
- Depended by:このパッケージに依存しているパッケージ
パッケージをアップデートする
アップデートを確認できましたので、実際にアップデートを行っていきます。
ここでは、すべてのパッケージをアップデートするのではなく、バージョンアップしたいsass
パッケージだけをアップデートし、1.56.2
へ狙い撃ちでバージョンアップする方法を説明します。
パッケージのアップデートはnpm update
コマンドで行いますが、このコマンドでは対象パッケージを指定することまではできますが、特定のバージョンを指定してアップデートすることはできません。最新バージョンではなく、特定のバージョンを指定してアップデートしたい場合はnpm install
コマンドを用います。
$ npm install sass@1.56.2
changed 1 package, and audited 39 packages in 669ms
4 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
sass
パッケージはdevDependencies
にありますが、バージョンアップするときはオプションなしでアップデートできます。
{
...
"devDependencies": {
"sass": "^1.56.2"
}
}
package.json
を確認するとバージョンアップしていることが確認できます。