fix(deps): update angular monorepo to v21 (major) - autoclosed
This MR contains the following updates:
Release Notes
angular/angular (@angular/animations)
v21.2.0
common
| Commit | Type | Description |
|---|---|---|
| 18003a33bb | feat | add an 'outlet' injector option for ngTemplateOutlet |
| 8bbe6dc46c | feat | Add Location strategies to manage trailing slash on write |
| 51cc914807 | feat | support height in ImageLoaderConfig and built-in loaders |
compiler
| Commit | Type | Description |
|---|---|---|
| 72534e2a34 | feat | Add support for the instanceof binary operator |
| 95b3f37d4a | feat | Exhaustive checks for switch blocks |
| 04ba09a8d9 | feat | support AstVisitor.visitEmptyExpr()
|
| ce80136e7b | fix | optimize away unnecessary restore/reset view calls |
| 3242a61bae | fix | variable counter visiting some expressions twice |
compiler-cli
| Commit | Type | Description |
|---|---|---|
| 473dd3e1cb | fix | attach source spans to object literal keys in TCB |
| a904d9f77b | fix | support nested component declaration |
| 2ea6dfc6c9 | fix | update diagnostic to flag no-op arrow functions in listeners |
core
| Commit | Type | Description |
|---|---|---|
| 8d5210c9fe | feat | add ChangeDetectionStrategy.Eager alias for Default |
| 92d2498910 | feat | add host node to DeferBlockData (#66546) |
| ea2016a6dc | feat | add support for nested animations |
| 81cabc1477 | feat | add support for TypeScript 6 |
| 1ba9b7ac50 | feat | resource composition via snapshots |
| d9923b72a2 | feat | support arrow functions in expressions |
| a7e8abbb7e | fix | correctly handle SkipSelf when resolving from embedded view injector |
| 0806ee3826 | fix | prevent animated element duplication with dynamic components in zoneless mode |
| ed78fa05c7 | fix | Remove note to skip arrow functions in best practices |
forms
| Commit | Type | Description |
|---|---|---|
| f56bb07d83 | feat | add field param to submit action and onInvalid |
| ba009b6031 | feat | add form directive |
| 22afbb2f36 | feat | add parsing support to native inputs (#66917) |
| 95c386469c | feat | Add passing focus options to form field |
| 95ecce8334 | feat | allow setting submit options at form-level |
| ebae211add | feat | introduce parse errors in signal forms |
| 3937afc316 | feat | introduce SignalFormControl for Reactive Forms compatibility |
| 30f0914754 | feat | support binding null to number input (#66917) |
| dd208ca259 | feat | update submit function to accept options object |
| 27397b3f4f | fix | clear parse errors when model updates (#66917) |
| 63d8005703 | fix | preserve custom-control focus context in signal forms |
| 631f60d1f9 | fix | preserve parse errors when parse returns value |
| adfb83146b | fix | simplify design of parse errors |
| fb05fc86d0 | fix | sort error summary by DOM order |
| 567f292e8e | fix | support custom controls as host directives |
| bdfb60f3e3 | fix | use consistent error format returned from parse |
| d75046bc09 | fix | warn when showing hidden field state |
language-server
| Commit | Type | Description |
|---|---|---|
| ebc90c26f5 | feat | Add completions and hover info for inline styles |
| 26fd0839c3 | feat | Add folding range support for inline styles |
| 573aadef7e | feat | Add quick info for inline styles |
| 6fb39d9b62 | feat | Support client-side file watching via onDidChangeWatchedFiles
|
language-service
| Commit | Type | Description |
|---|---|---|
| 496967e7b1 | feat | add JSON schema for angularCompilerOptions |
| 8c21866f49 | feat | add linked editing ranges for HTML tag synchronization |
| d2137928e8 | perf | use lightweight project warmup for Angular analysis |
router
| Commit | Type | Description |
|---|---|---|
| b51bab583d | feat | Add partial ActivatedRouteSnapshot information to canMatch params |
| cf9620f7d0 | feat | Make match options optional in isActive |
| 907a94dcec | feat | Update IsActiveMatchOptions APIs to accept a Partial |
v21.1.6
Breaking Changes
core
-
Angular now only applies known attributes from HTML in translated ICU content. Unknown attributes are dropped and not rendered.
(cherry picked from commit
306f367)
common
| Commit | Type | Description |
|---|---|---|
| 31d3d56496 | fix | fix LCP image detection with duplicate URLs |
compiler-cli
| Commit | Type | Description |
|---|---|---|
| 24b578ce90 | fix | detect uninvoked functions in defer trigger expressions |
core
| Commit | Type | Description |
|---|---|---|
| b858309532 | fix | block creation of sensitive URI attributes from ICU messages |
v21.1.5
No user facing changes in this release
v21.1.4
compiler
| Commit | Type | Description |
|---|---|---|
| caab23dfe6 | fix | add geolocation element to schema |
core
| Commit | Type | Description |
|---|---|---|
| 2b99eaa019 | fix | capture animation dependencies eagerly to avoid destroyed injector |
| d6aeac504c | fix | Fix flakey test due to document injection |
forms
| Commit | Type | Description |
|---|---|---|
| 0d1acd0165 | feat | support signal-based schemas in validateStandardSchema |
http
| Commit | Type | Description |
|---|---|---|
| 3905015ccc | fix | correctly parse ArrayBuffer and Blob in transfer cache |
v21.1.3
core
| Commit | Type | Description |
|---|---|---|
| 2b254bc050 | fix |
linkedSignal.update should propagate errors |
| e5110b4fa1 | fix | export DirectiveWithBindings |
| 2cf4da0ea1 | fix | hold constructors weakly in DepsTracker cache |
| 70a5b651be | fix | prevent element duplication with dynamic components |
forms
| Commit | Type | Description |
|---|---|---|
| 6f75b6e3f6 | fix | Resolves debounce promise on abort in debounceForDuration |
localize
| Commit | Type | Description |
|---|---|---|
| 4c7126d23b | fix | add support for unit-test builder in ng-add schematic |
router
| Commit | Type | Description |
|---|---|---|
| d6268c0bbb | fix | limit UrlParser recursion depth to prevent stack overflow |
| 49a36f4cc7 | perf | Use .bind to avoid holding other closures in memory |
v21.1.2
forms
| Commit | Type | Description |
|---|---|---|
| 9f99b14882 | fix | only touch visible, interactive fields on submit |
language-service
| Commit | Type | Description |
|---|---|---|
| c57b0355b5 | fix | Detect local project version on creation |
router
| Commit | Type | Description |
|---|---|---|
| 21ecdc036a | fix | Do not intercept reload events with Navigation integration |
v21.1.1
compiler-cli
| Commit | Type | Description |
|---|---|---|
| 0e1f1ed573 | fix | drop .tsx extension for generated relative imports |
core
| Commit | Type | Description |
|---|---|---|
| 05adfcf8f2 | fix | handle Set in class bindings |
forms
| Commit | Type | Description |
|---|---|---|
| d89a80a970 | feat | Ability to manually register a form field binding in signal forms |
| cb75f9ce85 | fix | fix control value syncing on touch |
v21.1.0
Deprecations
upgrade
-
VERSIONfrom@angular/upgradeis deprecated. Please use the entry from@angular/upgrade/staticinstead.
common
| Commit | Type | Description |
|---|---|---|
| d8790972be | feat | Add custom transformations for Cloudflare and Cloudinary image loaders |
| a6b8cb68af | feat | support custom transformations in ImageKit and Imgix loaders |
compiler
| Commit | Type | Description |
|---|---|---|
| 640693da8e | feat | Add support for multiple swich cases matching |
| 0ad3adc7c6 | fix | Support empty cases |
core
| Commit | Type | Description |
|---|---|---|
| 99ad18a4ee | feat | Add stability debugging utility |
| a0dfa5fa86 | feat | support rest arguments in function calls |
| 6e18fa8bc9 | feat | support spread elements in array literals |
| e407280ab5 | feat | support spread expressions in object literals |
| 06be8034bb | fix | Microtask scheduling should be used after any application synchronization |
| b4f584cf42 | fix | return StaticProvider for providePlatformInitializer
|
forms
| Commit | Type | Description |
|---|---|---|
| 1ea5c97703 | feat | allow focusing bound control from field state |
platform-browser
| Commit | Type | Description |
|---|---|---|
| ec9dc94cee | feat | add context to createApplication
|
| ab67988d2e | feat | resolve JIT resources in createApplication
|
router
| Commit | Type | Description |
|---|---|---|
| 5edceffd04 | feat | add controls for route cleanup |
| a03c82564d | feat | Add scroll behavior controls on router navigation |
| e44839b016 | feat | Add standalone function to create a comptued for isActive |
| c25d749d85 | feat | Execute RunGuardsAndResolvers function in injection context |
| 1c00ab42f8 | feat | extend paramters of RedirectFunction to include paramMap and queryParamMap |
| 7003e8d241 | feat | Publish Router's integration with platform Navigation API as experimental |
| c84d372778 | feat | Support wildcard params with segments trailing (#64737) |
upgrade
| Commit | Type | Description |
|---|---|---|
| 75fe8f8af9 | refactor | deprecate VERSION export |
v21.0.9
forms
| Commit | Type | Description |
|---|---|---|
| 82d556a8fb | fix | Ensure the control instruction comes after the other bindings |
| 0055f3cc79 | fix | Rename signal form [field] to [formField] |
migrations
| Commit | Type | Description |
|---|---|---|
| e4bfa5c9e7 | fix | prevent duplicate imports in common-to-standalone migration |
v21.0.8
core
| Commit | Type | Description |
|---|---|---|
| a6a2621bf9 | fix | fix memory leak with event replay |
| 5239e471a1 | fix | handle cancelled traversals in fake navigation |
v21.0.7
compiler
| Commit | Type | Description |
|---|---|---|
| 8e808740c9 | fix | better types for a few expression AST nodes |
| 63b1cdcf70 | fix | produce accurate span for typeof and void expressions |
| 3c3ae0cb64 | fix | provide location information for literal map keys |
| 523dbaf1c3 | fix | stop ThisReceiver inheritance from ImplicitReceiver |
compiler-cli
| Commit | Type | Description |
|---|---|---|
| 4d9c4567ed | fix | ensure component import diagnostics are reported within the imports expression |
| cd405685af | fix | fix up spelling of diagnostic |
| 778460fcca | fix | support qualified names in typeof type references |
core
| Commit | Type | Description |
|---|---|---|
| 7c74674eb0 | fix | avoid leaking view data in animations |
| 0edbee4550 | fix | explicitly cast signal node value to String |
| f9c29572d2 | fix | sanitize sensitive attributes on SVG script elements |
forms
| Commit | Type | Description |
|---|---|---|
| e3fba182f9 | feat | add [formField] directive |
| 561772b152 | fix | allow custom controls to require dirty input |
| f0fb1d8581 | fix | allow custom controls to require hidden input |
| ec110f170b | fix | allow custom controls to require pending input |
| ae1dc16bb0 | fix | clean up abort listener after timeout |
| 9748b0d5da | fix | support custom controls with non signal-based models |
| 6bd22df987 | fix | Support readonly arrays in signal forms |
router
| Commit | Type | Description |
|---|---|---|
| 41cd4a6af8 | fix | Fix RouterLink href not updating with queryParamsHandling
|
| 5e9e09aee0 | fix | handle errors from view transition updateCallbackDone promise |
v21.0.6
Breaking Changes (affecting only experimental features)
forms
-
The shape of
SignalFormsConfig.classeshas changedPreviously each function in the
classesmap took aFieldState. Now it takes aFielddirective.For example if you previously had:
provideSignalFormsConfig({ classes: { 'my-valid': (state) => state.valid() } })You would need to update to:
provideSignalFormsConfig({ classes: { 'my-valid': ({state}) => state().valid() } })(cherry picked from commit
348f149) -
(cherry picked from commit
ae0c590)
core
| Commit | Type | Description |
|---|---|---|
| 4c8fb3631d | fix | throw better errors for potential circular references |
| 48492524ea | fix | use mutable ResponseInit type for RESPONSE_INIT token |
forms
| Commit | Type | Description |
|---|---|---|
| 81772b420d | feat | pass field directive to class config |
| 729b96476b | refactor | rename field to fieldTree in FieldContext and ValidationError |
language-service
| Commit | Type | Description |
|---|---|---|
| e0694df3ec | fix | avoid interpolation highlighting inside @let |
| 5047be4bc1 | fix | Prevent language service from crashing on suggestion diagnostic errors |
v21.0.5
core
| Commit | Type | Description |
|---|---|---|
| 69d243abb74 | fix | avoid false-positive deprecation when using InjectionToken with factory only |
forms
| Commit | Type | Description |
|---|---|---|
| 4fd2b722b40 | fix | fix signal forms type error |
v21.0.4
compiler
| Commit | Type | Description |
|---|---|---|
| f901cc9eb32 | perf | chain query creation instructions |
compiler-cli
| Commit | Type | Description |
|---|---|---|
| 65297c62011 | fix | expand type for native controls with a dynamic type |
forms
| Commit | Type | Description |
|---|---|---|
| f254ff4f2e0 | feat | expose element on signal forms Field directive |
| 5880fbc73c6 | feat | redo the signal forms metadata API |
| 55fc677cef4 | fix | add signals for dirty, hidden, and pending states in custom controls |
| cbb10179c80 | fix | allow resetting with empty string |
| bf1c12cd932 | fix | memoize reads of child fields in signal forms (#65802) |
| 6d7475582f9 | fix | Reuse key in parent in compat structure |
v21.0.3
compiler-cli
| Commit | Type | Description |
|---|---|---|
| 5a80a48e96 | fix | avoid allocating an object for signals in production mode |
| 1f1856e897 | fix | check that field radio button values are strings |
core
| Commit | Type | Description |
|---|---|---|
| 8c3304c766 | fix | run animation queue in environment injector context |
| 4bb085311e | fix | unable to inject viewProviders when host directive with providers is present |
| 609699ae17 | perf | tree shake unused dynamic [field] binding instructions (#65599) |
forms
| Commit | Type | Description |
|---|---|---|
| 6b4ab876e8 | feat | Allows transforms on FormUiControl signals |
| a5dbd4b382 | fix | support dynamic [field] bindings (#65599) |
http
| Commit | Type | Description |
|---|---|---|
| 20474d3f0f | fix | enable XSRF protection for same-origin absolute URLs |
router
| Commit | Type | Description |
|---|---|---|
| 48b89f9fbe | fix | handle errors from view transition finished promise |
v21.0.2
compiler
| Commit | Type | Description |
|---|---|---|
| 78fd159b78 | fix | prevent XSS via SVG animation attributeName and MathML/SVG URLs |
v21.0.1
compiler-cli
| Commit | Type | Description |
|---|---|---|
| 39c577bc36 | fix | do not type check native controls with ControlValueAccessor |
| 8d3a89a477 | fix | escape angular control flow in jsdoc |
| bc34083d34 | fix | ignore non-existent files |
core
| Commit | Type | Description |
|---|---|---|
| 0ea1e07174 | fix | apply bootstrap-options migration to platformBrowserDynamic
|
| 70507b8c1c | fix | debug data causing memory leak for root effects |
| a55482fca3 | fix | notify profiler events in case of errors |
| 49ad7c6508 | fix | use injected DOCUMENT for CSP_NONCE
|
| cc1ec09931 | perf | avoid repeat searches for field directive |
forms
| Commit | Type | Description |
|---|---|---|
| 7d5c7cf99a | feat | add DI option for classes on Field directive |
| 8acf5d2756 | fix | allow dynamic type bindings on signal form controls |
| de5fca94c5 | fix | run reset as untracked |
http
| Commit | Type | Description |
|---|---|---|
| 3240d856d9 | fix | prevent XSRF token leakage to protocol-relative URLs |
migrations
| Commit | Type | Description |
|---|---|---|
| f394215b14 | fix | detect structural ngTemplateOutlet and ngComponentOutlet |
v21.0.0
Blog post "Announcing Angular v21".
Breaking Changes
common
- (test only) -
TestBednow provides a fakePlatformLocationimplementation that supports the Navigation API. This may break some tests, though we have not observed any failures internally. You can revert to the old default forTestBedby providing theMockPlatformLocationfrom@angular/common/testingin your providers:{provide: PlatformLocation, useClass: MockPlatformLocation} -
ngComponentOutletContentis now of typeNode[][] | undefinedinstead ofany[][] | undefined. - NgModuleFactory has been removed, use NgModule instead.
compiler-cli
-
- Previously hidden type issues in host bindings may show up in your builds. Either resolve the type issues or set
"typeCheckHostBindings": falsein theangularCompilerOptionssection of your tsconfig.
- Previously hidden type issues in host bindings may show up in your builds. Either resolve the type issues or set
- The Angular compiler now produces an error when the
the
emitDeclarationOnlyTS compiler option is enabled as this mode is not supported.
core
-
The server-side bootstrapping process has been changed to eliminate the reliance on a global platform injector.
Before:
const bootstrap = () => bootstrapApplication(AppComponent, config);After:
const bootstrap = (context: BootstrapContext) => bootstrapApplication(AppComponent, config, context);A schematic is provided to automatically update
main.server.tsfiles to pass theBootstrapContextto thebootstrapApplicationcall.In addition,
getPlatform()anddestroyPlatform()will now returnnulland be a no-op respectively when running in a server environment. -
Using a combination of
provideZoneChangeDetectionwhile also removing ZoneJS polyfills will no longer result in the internal scheduler being disabled. All Angular applications now consistenly use the same scheduler, and those with the Zone change detection provider include additional automatic scheduling behaviors based on NgZone stabilization. -
- TypeScript versions less than 5.9 are no longer supported.
-
(test only) - Using
provideZoneChangeDetectionin the TestBed providers would previously preventTestBedfrom rethrowing errors as it should. Errors in the test will now be rethrown, regardless of the usage ofprovideZoneChangeDetection. Tests should be adjusted to prevent or account for these errors. As in previous major versions, this behavior can be disabled withrethrowApplicationErrors: falseinconfigureTestingModuleas a last resort. -
ignoreChangesOutsideZoneis no longer available as an option for configuring ZoneJS change detection behavior. -
Angular no longer provides a change detection scheduler for ZoneJS-based change detection by default. Add
provideZoneChangeDetectionto the providers of yourbootstrapApplicationfunction or yourAppModule(if usingbootstrapModule). This provider addition will be covered by an automated migration. -
moduleIdwas removed fromComponentmetadata. -
The
interpolationoption on Components has been removed. Only the default{{ ... }}is now supported.
elements
-
Fix signal input getter behavior in custom elements.
Before this change, signal inputs in custom elements required function calls to access their values (
elementRef.newInput()), while decorator inputs were accessed directly (elementRef.oldInput). This inconsistency caused confusion and typing difficulties.The getter behavior has been standardized so signal inputs can now be accessed directly, matching the behavior of decorator inputs:
Before:
- Decorator Input:
elementRef.oldInput - Signal Input:
elementRef.newInput()
After:
- Decorator Input:
elementRef.oldInput - Signal Input:
elementRef.newInput
- Decorator Input:
forms
- This new directive will conflict with existing FormArray directives or formArray inputs on the same element.
platform-browser
- The deprecated
ApplicationConfigexport from@angular/platform-browserhas been removed. Please importApplicationConfigfrom@angular/coreinstead.
router
-
lastSuccessfulNavigationis now a signal and needs to be invoked - Router navigations may take several additional microtasks to complete. Tests have been found to often be highly dependent on the exact timing of navigation completions with respect to the microtask queue. The most common fix for tests is to ensure all navigations have been completed before making assertions. On rare occasions, this can also affect production applications. This can be caused by multiple subscriptions to router state throughout the application, both of which trigger navigations that happened to not conflict with the previous timing.
upgrade
-
UpgradeAdapteris no longer available. Useupgrade/staticinstead
zone.js
- IE/Non-Chromium Edge are not supported anymore.
Deprecations
http
-
HttpResponseBase.statusTextis deprecated
common
| Commit | Type | Description |
|---|---|---|
| c795960ada | feat | Add experimental support for the Navigation API (#63406) |
| 9eac43cf46 | feat | Support of optional keys for the KeyValue pipe (#48814) |
| a1868c9d13 | feat | update to cldr 47 (#64032) |
| 196fa500a3 | fix | properly type ngComponentOutlet (#64561) |
| 7a4b225c57 | refactor | improve typing of ngComponentOutletContent (#63674) |
| 25f593ce2a | refactor | removengModuleFactory input of NgComponentOutlet (#62838) |
compiler
| Commit | Type | Description |
|---|---|---|
| ecea909bcc | fix | don't choke on unbalanced parens in declaration block |
| 04dd75ba94 | fix | support arbitrary nesting in :host-context() |
| f54cc4f28a | fix | support commas in :host() argument |
| 814b2713f5 | fix | support complex selectors in :nth-child() |
| aad6ced0ef | fix | support one additional level of nesting in :host() |
compiler-cli
| Commit | Type | Description |
|---|---|---|
| 563dbd998c | feat | Adds diagnostic for misconfigured @defer triggers (#64069) |
| 0571b335b9 | feat | enable type checking of host bindings by default (#63654) |
| 5b55200edf | fix | allow value to be set on radio fields |
| ab98b2425f | fix | capture metadata for undecorated fields (#63957) |
| be7110342b | fix | disallow compiling with the emitDeclarationOnly TS compiler option enabled (#61609) |
| bd322ca410 | fix | do not flag custom control required inputs as missing when field is present |
| 471da8a311 | fix | infer type of custom field controls |
| 96cb0cffda | fix | infer types of signal forms set on native inputs |
| 71ab11ccf0 | fix | make field detection logic more robust |
| 1f389b8b97 | fix | missingStructuralDirective diagnostic produces false negatives (#64579) |
| 7fd3db0423 | fix | remove internal syntax-related flags (#63787) |
| c371251e4c | fix | report invalid bindings on form controls |
| 01290ab275 | fix | use any when checking field interface conformance |
core
| Commit | Type | Description |
|---|---|---|
| 809a4ed8c1 | feat | Add migration for zoneless by default. (#63042) |
| 2a7a5de53f | feat | Allow passing application providers in bootstrapModule options (#64354) |
| 28926ba92c | feat | introduce BootstrapContext for improved server bootstrapping (#63562) |
| c2d376b85a | feat | make SimpleChanges generic (#64535) |
| ad2376435b | feat | support IntersectionObserver options in viewport triggers (#64130) |
| 539717f58a | feat | support regular expressions in templates (#63887) |
| ab415f3d7f | fix | control not recognized when input has directive injecting ViewContainerRef (#64368) |
| f008045ded | fix | do not rename ARIA property bindings to attributes (#63925) |
| 1352fbdbf2 | fix | Drop special-case disables automatic change detection scheduling (#63846) |
| c0791e1887 | fix | drop support for TypeScript 5.8 (#63589) |
| aa389a691b | fix | ensure @for iteration over field is reactive (#64113) |
| fec7c288e9 | fix | Error on invalid APP_ID (#63252) |
| d399d7d02b | fix | Explicit Zone CD in TestBed providers should not override TestBed error handler (#63404) |
| 92e09adc0a | fix | Remove ignoreChangesOutsideZone option (#62700) |
| 45fed3d201 | fix | Remove Zone-based change provider from internals by default (#63382) |
| c9f977833e | fix | skip Angular formatting when formatting signals recursively |
| 67fbd5ff1e | fix | SSR error in signal forms |
| c241038111 | fix | update symbols (#64481) |
| a5e5dbbc16 | refactor | remove moduleId from Component metadata (#63482) |
| 9a16718b13 | refactor | remove deprecated interpolation option on Components. (#63474) |
elements
| Commit | Type | Description |
|---|---|---|
| be0455adda | fix | return value on signal input getter (#62113) |
forms
| Commit | Type | Description |
|---|---|---|
| a278ee358c | feat | add debounce() rule for signal forms |
| b8314bd340 | feat | add experimental signal-based forms (#63408) |
| 0dd95c503f | feat | Add FormArrayDirective (#55880) |
| d201cd2c2b | feat | Prevents marking fields as touched/dirty when state is hidden/readonly/disabled (#63633) |
| 9c5e969f51 | fix | bind invalid input in custom controls (#64526) |
| 10ef96adb3 | fix | consistent treatment of empty (#63456) |
| d89e522a1f | fix | debounce updates from interop controls |
| c0d88c37c9 | fix | Emit FormResetEvent when resetting control (#64024) |
| 94b0afec00 | fix | implement interoperability between signal forms and reactive forms (#64471) |
| a1ac9a6415 | fix | interop supports CVAs with signals (#64618) |
| 505bde1fed | fix | mark field as dirty when value is changed by ControlValueAccessor (#64471) |
| 3529877772 | fix | mark field as dirty when value is changed by a bound control (#64483) |
| fd9af2afaf | fix | only propagate schema defined properties from field to control (#64446) |
| 91d8d55a80 | fix | Set error message of a schema error. |
| f4d1017c25 | fix | test that common field states are propagated to controls (#63884) |
| acd7c83597 | fix | test that min/max properties are propagated to controls (#63884) |
| 71e8672837 | fix | test that minLength/maxLength properties are propagated to controls (#63884) |
| 507b3466ee | perf | implement change detection for field control bindings |
| 781a3299f9 | perf | only update interop controls when bound field changes |
| 32f86d35f7 | perf | optimize [field] binding instructions (#64351) |
http
| Commit | Type | Description |
|---|---|---|
| 2739b7975b | feat | add referrerPolicy option to HttpResource (#64283) |
| 07e678872f | feat | Add reponseType property to HttpResponse and HttpErrorResponse (#63043) |
| 5cbdefcf11 | feat | add support for fetch referrerPolicy option in HttpClient (#64116) |
| 4bed062bc9 | feat | Provide http services in root (#56212) |
| 0e4e17cd97 | refactor |
HttpResponseBase.statusText (#64176) |
language-server
| Commit | Type | Description |
|---|---|---|
| 3f7111a9c3 | fix | fix directory renaming on Windows |
language-service
| Commit | Type | Description |
|---|---|---|
| 89095946cf | fix | address potential memory leak during project creation |
| 80e00ff4e5 | fix | prevent interpolation from superseding block braces (#64392) |
migrations
| Commit | Type | Description |
|---|---|---|
| 6ddb250391 | feat | add migration to convert ngClass to use class (#62983) |
| 8dc8914c8a | feat | add migration to convert ngStyle to use style (#63517) |
| 861cee34e0 | feat | Adds migration for deprecated router testing module (#64217) |
| 75fc16b261 | feat | Adds support for CommonModule to standalone migration (#64138) |
| 655a99d0c6 | fix | fix bug in ngclass-to-class migration (#63617) |
| 62bbce63b7 | fix | remove error for no matching files in control flow migration (#64253) |
platform-browser
| Commit | Type | Description |
|---|---|---|
| ce8db665f9 | refactor | remove deprecated ApplicationConfig export (#63529) |
router
| Commit | Type | Description |
|---|---|---|
| 4e0fc81491 | feat | convert lastSuccessfulNavigation to signal (#63057) |
| 5e61e8d3c3 | fix | Fix memory leak through Navigation.abort and canDeactivate guards (#64141) |
| f6a73f1913 | fix | Respect custom UrlSerializer handling of query parameters (#64449) |
| 5b53535dd1 | fix | Update recognize stage to use internally async/await (#62994) |
upgrade
| Commit | Type | Description |
|---|---|---|
| f86846555b | fix | Remove deprecated UpgradeAdapter (#61659) |
v20.3.17
Breaking Changes
core
-
Angular now only applies known attributes from HTML in translated ICU content. Unknown attributes are dropped and not rendered.
(cherry picked from commit
03da204)
core
| Commit | Type | Description |
|---|---|---|
| 7f9de3c118 | fix | block creation of sensitive URI attributes from ICU messages |
Configuration
- If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.