node の package.json とかで ~ とか ^ を見た時にどういう意味だかよく忘れるので備忘録がてら ドキュメントは公式で詳しくまとまっているので見に行ってみると良いと思う。 Semantic Versioning (semver) のおさらい Semantic versioning はバージョン管理の命名規則を標準化する事で、依存関係の定義や互換性の判断を簡単、正確に行えるようにしようという取り組み。 バージョンを3つのセクションで区切り、以下の意味付けをしている。 Major: 後方互換性を保証しないバージョンアップ Minor: 後方互換性を保証した機能追加などのバージョンアップ Patch: 後方互換性を保証したバグの修正によるバージョンアップ semver の範囲指定 npm では semver を使って依存関係を指定していて、そこで特殊な記号である特定の範囲を表し