# Angular v22.1.4 — 22.1.4 - Product: Angular (https://whatsnew.fyi/product/angular) - Vendor: Google - Date: 2026-08-27 - Version: v22.1.4 - Original notes: https://github.com/angular/angular/releases/tag/v22.1.4 - Permalink: https://whatsnew.fyi/product/angular/releases/v22.1.4 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **fixed** — avoid prototype member collisions in common - **fixed** — use locale NaN symbol in number formatting - **fixed** — scope animations declared in minified nested rules - **fixed** — default template diagnostic related message source file to template - **fixed** — produce correct tcb expression for optional chaining - **fixed** — retain metadata for strict standalone errors - **fixed** — avoid prototype member collisions in core - **fixed** — explicitly reject foreign components in JIT mode - **fixed** — preserve namespace for dynamic component hosts - **fixed** — prevent TransferState prototype pollution - **fixed** — throw coded RuntimeErrors instead of crashing when hydration/rendering cannot find an expected DOM node - **fixed** — use dot-access for readonly rule configuration - **fixed** — honor quote style preference when generating imports - **fixed** — preserve registerLocaleData calls in standalone bootstrap migration - **fixed** — avoid stripping unicode whitespace during url resolution ###### common | Commit | Description | | -- | -- | | [![fix - 60a874c3fb](https://img.shields.io/badge/60a874c3fb-fix-green)](https://github.com/angular/angular/commit/60a874c3fbedc2ce216bcf783325f4e1291edcb0) | avoid prototype member collisions | | [![fix - e8378dfeab](https://img.shields.io/badge/e8378dfeab-fix-green)](https://github.com/angular/angular/commit/e8378dfeab39fca5bcdc47126b7859c8fdab7a28) | use locale NaN symbol in number formatting | ###### compiler | Commit | Description | | -- | -- | | [![fix - 05c7c725a5](https://img.shields.io/badge/05c7c725a5-fix-green)](https://github.com/angular/angular/commit/05c7c725a534f4ea14c718503966423133474bbf) | scope animations declared in minified nested rules | ###### compiler-cli | Commit | Description | | -- | -- | | [![fix - afe8499a14](https://img.shields.io/badge/afe8499a14-fix-green)](https://github.com/angular/angular/commit/afe8499a14c1bf8ab42e6e30b35917a873745540) | default template diagnostic related message source file to template | | [![fix - 079a846263](https://img.shields.io/badge/079a846263-fix-green)](https://github.com/angular/angular/commit/079a846263599daf38cc1903c46ccea99c5758f8) | Produce correct tcb expression for optional chaining | | [![fix - 55eeb46418](https://img.shields.io/badge/55eeb46418-fix-green)](https://github.com/angular/angular/commit/55eeb46418080e2faf64c84eac389c21abea6df8) | retain metadata for strict standalone errors | ###### core | Commit | Description | | -- | -- | | [![fix - 3da35cbab9](https://img.shields.io/badge/3da35cbab9-fix-green)](https://github.com/angular/angular/commit/3da35cbab94777230871a3e9289455089b80fe7f) | avoid prototype member collisions | | [![fix - b199bdfa2a](https://img.shields.io/badge/b199bdfa2a-fix-green)](https://github.com/angular/angular/commit/b199bdfa2ad8b3fe189e7b4cef9dbea600cd4732) | explicitly reject foreign components in JIT mode | | [![fix - 9a8e4826b9](https://img.shields.io/badge/9a8e4826b9-fix-green)](https://github.com/angular/angular/commit/9a8e4826b9db4359c3f0e7185e9582b7bd08a3ef) | preserve namespace for dynamic component hosts | | [![fix - 7c752d4815](https://img.shields.io/badge/7c752d4815-fix-green)](https://github.com/angular/angular/commit/7c752d4815db41ee04e43d38cc826dd63214432b) | prevent TransferState prototype pollution | | [![fix - 7546b7a805](https://img.shields.io/badge/7546b7a805-fix-green)](https://github.com/angular/angular/commit/7546b7a80549c9620d52692cb0f5cab4c69b546c) | throw coded RuntimeErrors instead of crashing when hydration/rendering can't find an expected DOM node | ###### forms | Commit | Description | | -- | -- | | [![fix - c8eb7f0056](https://img.shields.io/badge/c8eb7f0056-fix-green)](https://github.com/angular/angular/commit/c8eb7f00564beceb21445b1f0374c93854b513d1) | use dot-access for readonly rule configuration | ###### language-service | Commit | Description | | -- | -- | | [![fix - 93d7f718d2](https://img.shields.io/badge/93d7f718d2-fix-green)](https://github.com/angular/angular/commit/93d7f718d2e057e37deda42d197e46672fe7f7f5) | honor quote style preference when generating imports | ###### migrations | Commit | Description | | -- | -- | | [![fix - 85c8829ac1](https://img.shields.io/badge/85c8829ac1-fix-green)](https://github.com/angular/angular/commit/85c8829ac189b0f47b865b036dad98905e576dc9) | preserve registerLocaleData calls in standalone bootstrap migration | ###### platform-server | Commit | Description | | -- | -- | | [![fix - 71e52d1396](https://img.shields.io/badge/71e52d1396-fix-green)](https://github.com/angular/angular/commit/71e52d1396b9cef98652929b73e08c4cde645970) | avoid stripping unicode whitespace during url resolution |