概要
Node.jsのpackage.jsonのバージョン指定でよく使う設定について記載。
動作環境
- Node.js 8.9.x
バージョン固定
バージョンだけの記載(例:1.0.1)の場合、その バージョンに限定して取得します。
設定例
{ "dependencies": { "hoge": "1.0.1" } }
x指定
パッチ or マイナー バージョン箇所にx指定する場合があります。
マイナーバージョンの場合、記載は1.x
等になります。
範囲は1.0.0
以上、2.0.0
未満の最新が対象となります。
パッチバージョンの場合、記載は1.1.x
等になります。
範囲は1.1.0
以上、1.2.0
未満の最新が対象となります。
TypeScript等にマイナーバージョンで破壊的変更が入るライブラリの場合は、パッチバージョンにx指定をしておくと安全です。
設定例
{ "dependencies": { "hoge": "1.x", "hige": "1.2.x" } }
~(チルダ)指定
基本的にはx指定と同じです。
パッチバージョンが指定されている場合は、指定されたパッチバージョン以上になります。
~1.2.3
の場合、1.2.3
以上 1.3.0
未満
~1.2
= 1.2.x
~1
= 1.x
^(キャレット)指定
挙動にくせがある指定方法です。一番左の0
以外を変更しないようにバージョンを取得します。
そのため、メジャー・マイナーバージョンの指定によって挙動が変わります。
基本的にはチルダ指定をおすすめします。
^1.2.3
の場合、1.2.3
以上、1.3.0
未満
^0.2.3
の場合、0.2.3
以上、0.3.0
未満
^0.0.3
の場合、0.0.3
以上、0.0.4
未満