Angular: 21.0.0-next.9 Release

Release date:
October 22, 2025
Previous version:
21.0.0-next.8 (released October 31, 2025)
Magnitude:
2,454 Diff Delta
Contributors:
9 total committers
Data confidence:
Commits:

Top Contributors in 21.0.0-next.9

SkyZeroZx
leonsenft
alan-agius4
kirjs
mattlewis92
hawkgs
aparzi
d-koppenhagen
hybrist

Directory Browser for 21.0.0-next.9

We haven't yet finished calculating and confirming the files and directories changed in this release. Please check back soon.

Release Notes Published

animations

| Commit | Description | | -- | -- | | fix - 2b257b3659 | account for Element.animate exceptions (#64506) |

common

| Commit | Description | | -- | -- | | feat - a1868c9d13 | update to cldr 47 (#64032) | | fix - 196fa500a3 | properly type ngComponentOutlet (#64561) |

compiler

| Commit | Description | | -- | -- | | fix - 9a7529dd66 | correctly compile long numeric HTML entities (#64297) |

compiler-cli

| Commit | Description | | -- | -- | | fix - c1d870bd38 | missingStructuralDirective diagnostic produces false negatives (#64470) | | fix - 1f389b8b97 | missingStructuralDirective diagnostic produces false negatives (#64579) |

core

| Commit | Description | | -- | -- | | feat - c2d376b85a | make SimpleChanges generic (#64535) | | fix - 70332b0453 | pass element removal property through in all locations (#64565) | | fix - 81bd671906 | prevent duplicate nodes from being retained with fast animate.leave` calls (#64592) | | fix - aab73671e4 | update animation scheduling (#64441) | | fix - c241038111 | update symbols (#64481) |

forms

| Commit | Description | | -- | -- | | fix - 9c5e969f51 | bind invalid input in custom controls (#64526) | | fix - 94b0afec00 | implement interoperability between signal forms and reactive forms (#64471) | | fix - 505bde1fed | mark field as dirty when value is changed by ControlValueAccessor (#64471) | | fix - 3529877772 | mark field as dirty when value is changed by a bound control (#64483) | | fix - fd9af2afaf | only propagate schema defined properties from field to control (#64446) |

language-service

| Commit | Description | | -- | -- | | fix - 80e00ff4e5 | prevent interpolation from superseding block braces (#64392) |

migrations

| Commit | Description | | -- | -- | | feat - 75fc16b261 | Adds support for CommonModule to standalone migration (#64138) |

platform-browser

| Commit | Description | | -- | -- | | fix - 29c397f883 | DomEventsPlugin should always be the last plugin to be called for supports(). (#50394) |

router

| Commit | Description | | -- | -- | | feat - 2bd764a3c4 | allow router outlet to be set on ng-container (#64562) | | fix - 7afc193016 | Fix outlet serialization and parsing with no primary children (#64505) | | fix - f6a73f1913 | Respect custom UrlSerializer handling of query parameters (#64449) | | fix - 46ae034c70 | Respect custom UrlSerializer handling of query parameters (#64449) | | fix - 7fb7511124 | Surface parse errors in Router.parseUrl (#64503) |

Breaking Changes

zone.js

  • IE/Non-Chromium Edge are not supported anymore.