GoogleのAngular開発チームは5月3日、JavaScriptフレームワークAngularの最新メジャーリリースとなる「Angular 6.0.0」を公開した。ツールチェーンなどにフォーカスした機能強化が加わっている。

AngularはJavaScript/Typescript向けのアプリケーション開発フレームワーク。Web、モバイル、デスクトップなどさまざまなプラットフォーム向けにコードを再利用して作成し、実装できる。Web Workers、サーバーサイドレンダリングなどによる性能を特徴とする。

Angular 6.0は、2017年11月に公開したバージョン5に続く最新版。本バージョンより、長期サポート（LTS）をすべてのメジャーリリースに拡大する。LTSは18か月間（6か月のアクティブ開発期間と12か月の重要なバグ修正およびセキュリティパッチ提供期間）のサポートが提供されるもので、これまではバージョン4、6が対象だった。すべてのメジャーリリースがLTSとなることで、大規模なプロジェクトがアップデートのプランニングの時間的余裕を持てるようにするとしている。

CLIコマンドとして「ng update <package>」や「ng add <package>」が加わった。ng updateコマンドは、package.jsonを分析してアプリケーションアップデートを推薦するもので、npmやyarnといったパッケージ管理ツールを使って適切な依存性バージョンの採用や依存性の同期ができるという。サードパーティもワークフローツールのSchematicsを利用してng updateを作成、提供できる。これにより、自動的にコードをアップデートできるという。

ng addは依存性やSchematicsベースのインストールスクリプトを加えるためのコマンド。パッケージマネジャーが新しい依存性をダウンロードしてインストールスクリプトを開始する。「ng add @angular/elements」、「ng add @ng-bootstrap/schematics」といった使い方がある。

Angular Elementsは初のリリースとなり、Angularコンポーネントをカスタムエレメントとして使用することができる。Angular Materialでは、階層データ表示のためのツリーコンポーネント、手短に情報を表示するバッチ、モバイル向けのダイアログとなるボトムシートの3種類が加わった。

CLIでは、複数のプロジェクト、ターゲット、設定を含むワークスペースをサポートした。プロジェクトの設定とビルドでは.angular-cli.jsonに変わってangular.jsonを使うように変更されている。CLIで最も要求が多かった機能として、ライブラリの作成と構築をサポートした。

アニメーションなど全体の性能を強化した。Observablesアーキテクチャを使ったリアクティブプログラミング用のライブラリRxJS（Reactive Extensions for JavaScript）はバージョン6となった。

最新版に合わせて、@angular/core、@angular/common、@angular/compilerなどのフレームワークパッケージ、Angular CLI、Angular Material + CDKなどもメジャーバージョンとなっている。

Angular 6.0はプロジェクトのWebサイトより入手できる。ライセンスはMIT License。

Angular

https://angular.io/