30秒で判断
- 対応すべき人: Angular 22.x を使用中で
I18nSelectPipe/ngSwitchを利用している / input writes マイグレーションを実施中 - 対応不要な人: Angular 21.x 以下を使用している / 上記の機能を使っていない
- 確認コマンド:
ng version(またはnpm list @angular/core)
この変更が意味すること
Angular v22.0.5 は Angular 22 系のパッチリリースで、common・compiler-cli・core の3モジュールにわたるバグ修正が含まれています。特に I18nSelectPipe の修正は、null プロトタイプオブジェクトを使用したマッピングを渡した場合に誤動作していた問題を解消します。また、toSignal の debugName トランスフォームへの組み込みは、Angular DevTools での Signal デバッグ体験を改善します。
主な変更点
common: I18nSelectPipe の null プロトタイプ対応
I18nSelectPipe のマッピング処理で、null プロトタイプオブジェクト(Object.create(null) で作成されたオブジェクト)やシャドウマッピングを適切に扱えなかった問題を修正しました。Object.hasOwn を使用することで、プロトタイプチェーン上のプロパティを誤って参照しないよう改善されています。
国際化(i18n)機能を使って動的な文字列選択を行っているコンポーネントで、null プロトタイプオブジェクトをマッピングに使用している場合に影響します。
compiler-cli: toSignal の debugName トランスフォーム対応
toSignal() で作成された Signal が debugName トランスフォームに含まれるよう修正されました。これにより、Angular DevTools での Signal の追跡・デバッグが改善されます。
core: input writes マイグレーション改善
ng update で実行される input writes のマイグレーション(ベストエフォートモード)が改善されました。また、動的スクリプトホスト要素が reject される場合の処理が修正されています。
EOL / サポート状況
| バージョン | ステータス | EOL日 | 備考 |
|---|---|---|---|
| 22.x | ✅ 最新 | — | latest: 22.0.5、next: 22.1.0-next.4 |
| 21.x | ✅ サポート中 | 2027-05-19 | latest: 21.2.17 |
| 20.x | ✅ サポート中 | 2026-11-28 | latest: 20.3.25 |
| 19.x | ❌ EOL | 2026-05-19 | — |
| 18.x | ❌ EOL | 2025-11-21 | — |
開発者への影響
- I18nSelectPipe 利用者: null プロトタイプオブジェクトを使ったマッピングで誤動作していた場合、このパッチで修正されます
- Signal ユーザー:
toSignal()の debugName が正しく表示されるようになり、DevTools でのデバッグが楽になります - マイグレーション実施中のチーム:
ng updateによる input writes マイグレーションの信頼性が向上します - Angular 19.x・18.x 利用者: EOL 済みのため、22.x または 21.x へのアップグレードを推奨します
アップデート方法
# Angular CLI 経由でのアップデート
ng update @angular/core @angular/cli
# npm 直接指定
npm install @angular/core@22.0.5 @angular/cli@22.0.5
# バージョン確認
ng version
データソース: GitHub Releases API, endoflife.date, npm Registry
AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
