GoogleでAngularチームを率いるIgor Minar氏が,先週ベルギーで開催されたNG-BE 2016の基調講演でAngularについて語った。今後のバージョンに適用されるリリーススケジュールを紹介する中で,Minar氏は,次のメジャーバージョンがAngular 4になることを発表した。
Angular 2で開発チームは,新たなリリースに2.3.1のようなメジャー.マイナー.パッチという3つの数値を設定する,セマンティックバージョニングを導入した。毎週公開されるパッチバージョンには新たな機能は含まれず,通常はバグフィックスのみとなる。マイナーバージョンは毎月リリースされ,以前のバージョンとの互換性を失わないような新機能を備える。メジャーバージョンは6ヶ月毎に作られ,重大な変更を含む可能性のある新機能が追加される。重大な変更が何であるかは現時点では明らかではなく,Minar氏はその定義に関して,コミュニティのコントリビューションを求めている。現在のコンパイルエラーを警告にするような変更や,Angularを使用しているサードパーティコードに影響するようなAPIシグネチャの変更などが考えられる。
Minar氏によると,Angularチームには近い将来,現在使用しているTypeScript 1.8から2.1,あるいは2.2に切り換える計画がある。これは重大な変更を伴うため,新たなメジャーバージョンが導入されることになるだろう。
Angular routerの最新バージョン – 現在は3.3.0 – が,現在2.3.0である他のモジュールと整合しないことから,チームはこれらを同期させるため,次のメージャバージョンをAngular 3ではなくAngular 4にする計画である。またプロダクトとしても,今後はAngularJSやAngular 2,2.xないし4.xではなく,単にAngularと呼ばれるようになり,バージョンについては二次的な詳細情報に留められる。Angular 4の最初のベータ版(4.0.0-beta.0)は今週リリースされる予定で,その後は6回のベータ版イテレーションと3回のRCが続き,安定版の4.0.0を2017年3月1日に公開する目標である。2.3.xについては,今後パッチのみがリリースされる予定だ。
Angular 1.xから2.xへの移行時に経験した非互換性の問題を繰り返したくない開発チームとしては,Angular 4では可能な限りAngular 2との互換性を保ちたいと考えている。“エコシステムを損なうような互換性のない変更をしたくないのです”とMinar氏は付け加えた。 “すでに存在するコンポーネントを壊したくはありません。” 従って既存の安定したAPIや,あるいは一般的なAngularの使用パターンに従ったものは,大きくは変更されない。新機能の一部がエコシステムを損なうことが判明して,それを修正できない場合には,すべてを損なう危険よりもその機能を廃止する方を選択する,とMinar氏は述べている。
計画では6ヶ月毎にメジャーバージョンをリリースする予定なので,Angular 5は2017年9月,Angular 6は2018年3月,Angular 7は2018年9月にお目見えすることになる。将来のことは誰にも分からないが,今後のバージョンについては,重大な変更は最小限に抑えるという考え方だ。
この記事を評価
- 編集者評
- 編集長アクション