はじめに
Ignite UI for Angular は修正や機能追加を継続して実施する継続的デリバリー (Continuous Delivery) を採用しており、非常に短いスパンでアップデートを実施しています。セマンティック バージョニングとは若干異なるバージョニングなので、混乱しやすいかもしれません。
下記の Wiki に Ignite UI for Angular のバージョニングについて解説されていますので日本語の説明を作りました。
GitHub – Ignite UI for Angular versioning
注:このバージョニング規約は 4.x.x 以降が対象となります。(4系はIgnite UI JSBlocksという名前のパッケージです)
#バージョン規約
<Angular Major>.<Major>.<Minor>
<Angular Major> は Ignite UI for Angular がサポートする Angular のバージョンを示しています。現在、Angular のメジャーバージョンが 6 なので、Angular 6 系をサポートする Ignite UI for Angular のバージョンは 6 から始まります。
<Angular Major>.<Major>.<Minor>
<Major> は Ignite UI for Angular の__メジャー バージョン__を指し示します。このバージョンが上がる際には機能追加や重大な変更が含まれることがあるため、__過去のバージョンとの互換性が失われている__可能性があります。
例) Ignite UI for Angular 6.0.x と今後リリースされる 6.1.x には互換性がない可能性があります。(過去のリリースの例:5.2.0 リリースノート)
<Angular Major>.<Major>.<Minor>
<Minor> は__マイナー アップデート__や__パッチ更新__を含み、同じメジャー バージョンとの互換性を保つように実装されています。
ベータ版の場合
ベータ版には –beta が付与されているため、一目で判別できるようになっています。また、正式版のリリースまでより細かくリリースを行う場合があるため、<Patch> が付与されます。(例: 5.2.0-beta.0)
<Angular Major>.<Major>.<Minor>-beta.<Patch>
シナリオ
- 5.y.z → 6.y.z : サポートする Angular のバージョンが変更された。__重大な変更が含まれる可能性__がある
- x.1.z → x.2.z : Ignite UI for Angular の機能追加、向上が行われた。__重大な変更が含まれる可能性__がある
- x.y.1 → x.y.2 : Ignite UI for Angular のマイナー更新、あるいはパッチ修正が行われた。y というメジャーバージョン内では__互換性が保たれて__いる。
- x.y.z-beta.0 : x.y.z のベータ版。バージョン x.y.z が後日リリースされる。
おわりに
通常のセマンティック バージョニングとは少し異なるため、わかりにくいよーと思っとります。