· javascript
angular 22.2.4 released
Angular version 22.2.4 has been released, bringing several targeted improvements across the framework's core tooling.
In the compiler, fixes address several specific behaviors. One update ensures that attributes possessing object prototype names are not treated as translated. Additionally, the compiler now defaults to Eager change detection when dealing with pre-v22 libraries in JIT mode.
Further compiler enhancements include reporting errors for template literal interpolations that are improperly formed and skipping escaped characters when searching for comments within expressions.
The compiler-cli received a necessary update, now requiring `@jridgewell/sourcemap-codec` version 1.6.0 or newer.
Core functionality saw numerous refinements. Developers can expect fixes that prevent mutating the shared ICU case queue during i18n hydration and avoid reloading a resource if its parameters remain unchanged.
Other core fixes include catching view effect errors when using targeted change detection, checking every i18n attribute translation for ICUs, and guarding against integer overflow within i18n handling. Performance improvements were also introduced, such as avoiding reading linked signal debug names in production.
The forms module saw fixes to annotate field context helpers with `void` and to prevent crashes when a `formControlName` lacks a corresponding control. A performance enhancement allows matching multi-select identities in a single pass.
For HTTP handling, a fix was implemented to properly account for multiple cache control headers. The language service now resolves symbols for inputs that have restricted access.
Migration tooling introduced a feature to migrate static string and array `ngClass` bindings over to using the class syntax.
The router received several important corrections. It will no longer intercept downloads via the Navigation API, and it now drops null query params when calling `createUrlTreeFromSnapshot`. Furthermore, it properly handles redirects during traversal navigations using the Navigation API.


