fix(deps): update dependencies (major and minor) (major) - autoclosed #243

Closed
Renovate wants to merge 0 commits from renovate/major-dependencies-(major-and-minor) into main
Collaborator

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@angular/animations (source) ^19.0.0 -> ^20.0.0 age adoption passing confidence
@angular/cdk ~19.2.0 -> ~20.0.0 age adoption passing confidence
@angular/common (source) ^19.0.0 -> ^20.0.0 age adoption passing confidence
@angular/compiler (source) ^19.2.4 -> ^20.0.0 age adoption passing confidence
@angular/core (source) ^19.0.0 -> ^20.0.0 age adoption passing confidence
@angular/forms (source) ^19.0.0 -> ^20.0.0 age adoption passing confidence
@angular/platform-browser (source) ^19.0.0 -> ^20.0.0 age adoption passing confidence
@angular/platform-browser-dynamic (source) ^19.0.0 -> ^20.0.0 age adoption passing confidence
@angular/router (source) ^19.0.0 -> ^20.0.0 age adoption passing confidence
@fortawesome/angular-fontawesome ^1.0.0 -> ^2.0.0 age adoption passing confidence

Release Notes

angular/angular (@​angular/animations)

v20.0.0

Compare Source

Blog post: https://blog.angular.dev/announcing-angular-v20-b5c9c06cf301

Breaking Changes

common
  • Using the Y formatter (week-numbering year) without also including w (week number) is now detected as suspicious date pattern, as y is typically intended.
  • AsyncPipe now directly catches unhandled errors in
    subscriptions and promises and reports them to the application's
    ErrorHandler. For Zone-based applications, these errors would have
    been caught by ZoneJS and reported to ErrorHandler so the result is
    generally the same. The change to the exact mechanism for reporting can
    result in differences in test environments that will require test
    updates.
compiler
  • 'in' in an expression now refers to the operator

  • void in an expression now refers to the operator

    Previously an expression in the template like {{void}} referred to a
    property on the component class. After this change it now refers to the
    void operator, which would make the above example invalid. If you have
    existing expressions that need to refer to a property named void,
    change the expression to use this.void instead: {{this.void}}.

core
  • TypeScript versions less than 5.8 are no longer supported.

  • the TestBed.flushEffects() was removed - use
    the TestBed.tick() instead.

  • provideExperimentalCheckNoChangesForDebug has several
    breaking changes:

    • It is renamed to provideCheckNoChangesConfig
    • The behavior applies to all checkNoChanges runs
    • The useNgZoneOnStable option is removed. This wasn't found to be generally
      more useful than interval
  • provideExperimentalZonelessChangeDetection is
    renamed to provideZonelessChangeDetection as it is now "Developer
    Preview" rather than "Experimental".

    • InjectFlags has been removed.
    • inject no longer accepts InjectFlags.
    • Injector.get no longer accepts InjectFlags.
    • EnvironmentInjector.get no longer accepts InjectFlags.
    • TestBed.get no longer accepts InjectFlags.
    • TestBed.inject no longer accepts InjectFlags.
    • TestBed.get has been removed. Use TestBed.inject instead.
  • afterRender was renamed to afterEveryRender.

    • Angular no longer supports Node.js v18.
    • Node.js versions 22.0 to 22.10 are also no longer supported.
      Before upgrading to Angular v20, ensure the Node.js version is at least 20.11.1.
      For the full list of supported versions, visit: https://angular.dev/reference/versions
  • PendingTasks.run no longer returns the result of the
    async function. If this behavior is desired, it can be re-implemented
    manually with the PendingTasks.add. Be aware, however, that promise rejections
    will need to be handled or they can cause the node process to shut down
    when using SSR.

  • Uncaught errors in listeners which were previously only reported to
    ErrorHandler are now also reported to Angular's internal error
    handling machinery. For tests, this means that the error will be
    rethrown by default rather than only logging the error. Developers
    should fix these errors, catch them in the test if the test is
    intentionally covering an error case, or use rethrowApplicationErrors: false in configureTestingModule as a last resort.

  • The any overload has been removed from
    injector.get. It now only supports ProviderToken<T> and (deprecated
    since v4) string.

  • Animations are guaranteed to be flushed when Angular
    runs automatic change detection or manual calls to ApplicationRef.tick.
    Prior to this change, animations would not be flushed in some situations
    if change detection did not run on any views attached to the
    application. This change can affect tests which may rely on the old
    behavior, often by making assertions on DOM elements that should have
    been removed but weren't because DOM removal is delayed until animations
    are flushed.

  • ApplicationRef.tick will no longer catch and report
    errors to the appplication ErrorHandler. Errors will instead be thrown out of
    the method and will allow callers to determine how to handle these
    errors, such as aborting follow-up work or reporting the error and
    continuing.

  • This commit deprecates ng-reflect-* attributes and updates the runtime to stop producing them by default. Please refactor application and test code to avoid relying on ng-reflect-* attributes.

    To enable a more seamless upgrade to v20, we've added the provideNgReflectAttributes() function (can be imported from the @angular/core package), which enables the mode in which Angular would be producing those attribites (in dev mode only). You can add the provideNgReflectAttributes() function to the list of providers within the bootstrap call.

router
  • The RedirectFn can now return Observable or
    Promise. Any code that directly calls functions returning this type
    may need to be adjusted to account for this.
  • Several methods in the public API of the Router which
    required writable arrays have now been updated to accept readonly
    arrays when no mutations are done.
  • The guards arrays on Route no longer include any in
    the type union. The union includes functions for the functional guards
    as well as a type matching Injector.get: ProviderToken<T>|string.
    Note that string is still deprecated on both the route guards and
    Injector.get.

Deprecations

core
  • ngIf/ngFor/ngSwitch are deprecated. Use the control flow blocks instead (@for/@if/@switch).
platform-browser
  • All entries of the @angular/platform-browser-dynamic
  • HammerJS support is deprecated and will be removed in a future major version.
platform-server
  • @angular/platform-server/testing

    Use e2e tests to verify SSR behavior instead.

common
Commit Type Description
2e5362a469 feat accept undefined inputs in NgTemplateOutlet (#​61404)
b7d3f3dbfc feat Allow passing ScrollOptions to ViewportScroller (#​61002)
74cceba587 feat throw error for suspicious date patterns (#​59798)
255c79e048 fix cleanup updateLatestValue if view is destroyed before promise resolves (#​58041)
739cadae62 fix Handle errors in async pipe subscriptions (#​60057)
cbbea70fa3 fix issue a warning instead of an error when NgOptimizedImage exceeds the preload limit (#​60879)
fc4a56d5c5 fix rename httpResource function in factory (#​60022)
785a1110e6 fix resolve host binding type issues (#​60481)
compiler
Commit Type Description
7a971766dc feat add extended diagnostic for uninvoked track function on @for blocks (#​60495)
f2d5cf7edd feat support exponentiation operator in templates (#​59894)
51b8ff23ce feat support tagged template literals in expressions (#​59947)
1b8e7ab9fe feat support the in keyword in Binary expression (#​58432)
0361c2d81f feat support void operator in templates (#​59894)
8b990a31c3 fix error if rawText isn't estimated correctly (#​60529)
4fe489f1b4 fix exponentiation should be right-to-left associative (#​60101)
ef1fd137a9 fix incorrect spans for template literals (#​60323)
e0d378d20e fix incorrectly handling let declarations inside i18n (#​60512)
b70ad3c4e6 fix proper handling of typeof, void in RecursiveAstVisitor (#​60101)
e25e6c95a2 fix remove TypeScript from linker (#​61635)
768239a89c perf reduce allocations for let declarations only used in the same view (#​60512)
compiler-cli
Commit Type Description
bec1610da2 feat add extended diagnostic for invalid nullish coalescing (#​60279)
c889382a20 feat detect missing structural directive imports (#​59443)
1971e57a45 feat support type checking of host bindings (#​60267)
9ec9c7e1b8 fix avoid fatal diagnostics for invalid module schemas (#​61220)
a1cacc5b17 fix avoid fatal diagnostics for missing template files (#​58673)
1e6faad479 fix correctly parse event name in HostListener (#​60561)
ffb19e64f1 fix preserve required parens for nullish coalescing (#​60060)
7c9b4892e9 fix preserve required parens in exponentiation expressions (#​60101)
7e03af898e fix set correct target when type checking events (#​60561)
2d51a203dc fix wrong event name for host listener decorators (#​60460)
core
Commit Type Description
22d3f0562c feat add hook for producer creation side effects (#​60333)
fe57332fc5 feat add input binding support to dynamically-created components (#​60137)
65adb3024d feat Add provider which reports unhandled errors on window to ErrorHandler (#​60704)
b154fb3911 feat add support for two-way bindings on dynamically-created components (#​60342)
82aa2c1a52 feat add the ability to apply directives to dynamically-created components (#​60137)
326d48afb4 feat drop support for TypeScript older than 5.8 (#​60197)
d260ca3091 feat emit template function for template related profiler hooks (#​60174)
a4bad8d361 feat export signalGetFn from signal primitives (#​60497)
4812215a7b feat Expose Injector.destroy on Injector created with Injector.create (#​60054)
c1bcae91dd feat expose performance data in Chrome DevTools (#​60789)
809b5b4596 feat introduce new DI profiling event (#​60158)
d5fd7349fb feat introduce TestBed.tick() (#​60993)
4e88e18a8e feat mark toObservable as stable (#​60449)
727cda3856 feat mark linkedSignal API as public (#​60865)
644d9f3bbd feat mark the toSignal API as stable (#​60442)
e711f99d81 feat move provideExperimentalCheckNoChangesForDebug to provideCheckNoChangesConfig (#​60906)
7ccec1494f feat move DOCUMENT token into core (#​60663)
953c4b2580 feat Move zoneless change detection to dev preview (#​60748)
611baaf069 feat remove InjectFlags from public API (#​60318)
5e209cb560 feat remove TestBed.get (#​60414)
d8fbb909ce feat rename afterRender to afterEveryRender and stabilize (#​60999)
567522398f feat stabilize incremental hydration api (#​60888)
8d050b5bfc feat stabilize linkedSignal API (#​60741)
866cea9a05 feat Stabilize PendingTasks Injectable (#​60716)
bf8492b871 feat stabilize withI18nSupport() api (#​60889)
be44cc8f40 feat support listening to outputs on dynamically-created components (#​60137)
fe9b79b615 feat update Node.js version support (#​60545)
e170d24240 fix add migration away from InjectFlags (#​60318)
7eb59d3887 fix added @​angular/compiler as a peer dependency (#​55610)
7232ce5b17 fix Catch and report rejections in async function of PendingTasks.run (#​60044)
fd12220a35 fix defer block render failures should report to application error handler (#​60149)
3459faadbf fix do not allow setInput to be used with inputBinding (#​60137)
0ac949c266 fix do not run change detection on global error events (#​60944)
4fe34f4cfe fix enable stashing only when withEventReplay() is invoked (#​61077)
962b59b14e fix Ensure ComponentFixture does not duplicate error reporting from FakeAsync (#​60104)
7b819be83f fix Ensure errors in listeners report to the application error handler (#​60251)
ff772d7800 fix fix typing on injector.get to omit 'any' (#​60202)
13d1c8ab38 fix fixes timing of hydration cleanup on control flow (#​60425)
0b69b61929 fix Flush animations when no component has been checked (#​58089)
3ba39bc28f fix getting resource value throws an error instead of returning undefined (#​61441)
ca6295e90b fix handle different DI token types in Chrome DevTools integration (#​61333)
0162ceb427 fix inject migration should treat @Attribute as optional (#​60916)
ea5eb28865 fix input targeting not checking if input exists on host (#​60137)
c8951159ac fix mark zone.js as an optional peer dependency (#​61616)
d62379bb13 fix move reload method from Resource to WritableResource (#​61441)
a89f1cff24 fix narrow error type for resources API (#​61441)
624be2ef0c fix prevent stash listener conflicts (#​59635)
017cc0a37c fix properly handle app stabilization with defer blocks (#​61040)
6e79eaf739 fix reading resource value after reload in the error state (#​61441)
3d85d9363c fix reduce total memory usage of various migration schematics (#​60774)
1c7b356625 fix release hasPendingTasks observers (#​59723)
43cbc58254 fix remove forceRoot flag for effects (#​60535)
48974c3cf8 fix remove rejectErrors option encourages uncaught exceptions (#​60397)
491b0a4ead fix Remove duplicate reporting of errors in CDR.detectChanges (#​60056)
04d963c0a5 fix remove unused parameter from listener instruction (#​60406)
0ae1889560 fix run ApplicationRef.prototype.bootstrap in NgZone (#​60720)
a611b234d7 fix run root effects in creation order (#​60534)
338818ce89 fix Surface errors from ApplicationRef.tick to callsite (#​60102)
350776b412 fix TestBed.tick should ensure test components are synchronized (#​61382)
3d4ddd2247 fix Testing should not throw when Zone does not patch test FW APIs (#​61628)
30e081287d fix update min Node.js support to 20.19, 22.12, and 24.0 (#​61500)
b407157ee8 refactor Deprecate the structural directives ngIf/ngFor/ngSwitch. (#​60492)
c2987d8402 refactor stop producing ng-reflect attributes by default (#​60973)
forms
Commit Type Description
a07ee60989 feat add markAllAsDirty to AbstractControl (#​58663)
bdfbd54932 feat Allow to reset a form without emitting events (#​60354)
81fe0536fd fix Make sure statusChanges is emitted (#​57098)
bdd5e20423 fix resolve host binding type issues (#​60481)
http
Commit Type Description
ccc5cc068f feat add keepalive support for fetch requests (#​60621)
5795e03cdf fix Delay stabilization until next app synchronization (#​60656)
platform-browser
Commit Type Description
bc2cab747f refactor Deprecate the platform-browser-dynamic package (#​61043)
a980ac9a6a refactor Deprecate the HammerJS integration (#​60257)
platform-server
Commit Type Description
2240a21c97 refactor deprecate the testing entry point (#​60915)
router
Commit Type Description
0bb4bd661e feat Add ability to directly abort a navigation (#​60380)
62de7d930a feat add asynchronous redirects (#​60863)
7c12cb1df9 feat Allow resolvers to read resolved data from ancestors (#​59860)
ff98ccb193 feat support custom elements for RouterLink (#​60290)
219f41d049 fix Prevent dangling promise rejections from internal navigations (#​60162)
2419060fef fix relax required types on router commands to readonly array (#​60345)
c57951d58f fix Remove 'any' type from route guards (#​60378)
db2f2d99c8 fix Scroller should scroll as soon as change detection completes (#​60086)
angular/components (@​angular/cdk)

v20.0.1

Compare Source

material
Commit Type Description
ecd17ad75 fix button: add token for icon button shape (#​31223)
20fa71807 fix schematics: filter paths when renaming tokens (#​31249)

v20.0.0

Compare Source

Breaking Changes

cdk
    • SelectionModel.clear now returns a boolean.
    • SelectionModel.deselect now returns a boolean.
    • SelectionModel.select now returns a boolean.
    • SelectionModel.setSelection now returns a boolean.
    • SelectionModel.toggle now returns a boolean.
    • DIALOG_SCROLL_STRATEGY_PROVIDER has been removed.
    • DIALOG_SCROLL_STRATEGY_PROVIDER_FACTORY has been removed.
    • DragDropRegistry is no longer generic.
    • DragDropRegistry.scroll has been removed. Use the scrolled method instead.
    • DomPortalHost has been removed. Use DomPortalOutlet instead.
    • PortalInjector has been removed. Use Injector.create instead.
    • PortalHost has been removed. Use PortalOutlet instead.
    • BasePortalHost has been removed. Use BasePortalOutlet instead.
    • Constructor symbol has been removed.
    • CanStickCtor symbol has been removed.
    • mixinHasStickyInput has been removed. Implement the CanStick interface instead.
    • CanStick has been removed.
    • CDK_TABLE_TEMPLATE has been removed.
    • StickyDirection has been removed.
    • StickyStyler has been removed.
material
    • ButtonVariant which is returned by MatButtonHarness.getVariant no longer includes the appearance of the button. Use MatButtonHarness.getAppearance instead.
  • tabindex values set as [attr.tabindex] set on a Material button might not work as expected. Use tabindex for static values, or [tabindex]/[tabIndex] for dynamic ones.
    • MAT_CHECKBOX_REQUIRED_VALIDATOR has been removed.
    • MAT_CHECKBOX_VALUE_ACCESSOR has been removed.
    • MatCheckboxRequiredValidator has been removed.
    • _MatCheckboxRequiredValidatorModule has been removed.
    • MAT_DIALOG_SCROLL_STRATEGY_PROVIDER has been removed.
    • MAT_DIALOG_SCROLL_STRATEGY_PROVIDER_FACTORY has been removed.
    • matSelectAnimations.transformPanelWrap has been removed.
    • MAT_SLIDE_TOGGLE_REQUIRED_VALIDATOR has been removed.
    • MAT_SLIDE_TOGGLE_VALUE_ACCESSOR has been removed.
    • MatSlideToggleRequiredValidator has been removed.
    • _MatSlideToggleRequiredValidatorModule has been removed.
multiple
    • DialogConfig.componentFactoryResolver has been removed.
    • The constructor of DomPortalOutlet has changed.
    • ComponentPortal.componentFactoryResolver has been removed.
    • The constructor signature of ComponentPortal has changed.
    • MatDialogConfig.componentFactoryResolver has been removed.
cdk-experimental
Commit Type Description
e456c751c feat listbox: add cdk-active class (#​30932)
6ac4c1ae2 feat listbox: readonly mode (#​30803)
96fa9fc55 feat popover-edit: Support skipping over annotated rows when the user moves focus up/down. (#​30916)
025010b64 feat tabs: add cdk-active class and update example styles (#​30950)
9a94bb76a feat tabs: support initial tab selection and add unit tests (#​31023)
1833aa32e feat ui-patterns: add expansion behavior and refactor tabs (#​30962)
fc4699744 feat ui-patterns: listbox ui pattern (#​30495)
9caed2a8a feat ui-patterns: tabs ui pattern (#​30568)
e0446ecfc fix listbox: change shift+nav behavior (#​30854)
184ceee3a fix listbox: ignore spaces during typeahead (#​30766)
44e9ccbf5 fix listbox: initial listbox focus state (#​30764)
a7df65f3e fix listbox: use meta as alternative to ctrl (#​30852)
149fe6129 fix popover-edit: use MutationObserver to detect table rows (#​30713)
16493ecab fix scrolling: Fix ExpressionChangedAfterItWasCheckedError (#​31076)
0e391700c fix tabs: handle space and enter events (#​30889)
2e34b20cb fix ui-patterns: add missing event handlers (#​30786)
4bf3591c7 fix ui-patterns: add modifier checks for regexps (#​30738)
ae8f9dd28 fix ui-patterns: fix lint and build config (#​30877)
10890983c fix ui-patterns: listbox pointer event handler (#​30843)
7343657f5 fix ui-patterns: small fixes for internal compatibi… (#​30625)
youtube-player
Commit Type Description
18ddea330 fix use safevalues (#​30773)
material
Commit Type Description
fb81ab4f2 feat button: add support for tonal button (#​30638)
e79f60558 feat button: allow appearance to be set dynamically
663585a1c feat card: support filled variant (#​29868)
82f0fa6fa feat core: handle prefers-reduced-motion automatically (#​30796)
3daa36030 feat core: introduce custom token for controlling animations (#​30749)
764a1ccd1 feat dialog: add closePredicate option
097f49d90 fix autocomplete: allow overlay backdrop by setting hasBackdrop option (#​30631)
7d360ac77 fix button-toggle: changed after checked error when updating tabindex (#​31172)
2c7199c02 fix button: align harness with new terminology
6a5943d8b fix button: combine MatButton and MatAnchor (#​30492)
3aecb3521 fix button: tonal touch target token transgression (#​30688)
77d6b69e7 fix checkbox: breaking changes for v20
907815dc5 fix checkbox: hardcode token renames (#​30752)
f01ac6e9c fix checkbox: resolve change after checked error
aba4c4437 fix chips: chip input not showing placeholder (#​30664)
33795a1a1 fix chips: implement disabledInteractive in chip input (#​30665)
92bcc67c2 fix core: include density tokens in system theme (#​30845)
5bc01c398 fix datepicker: resolve change after checked errors
227e83d24 fix dialog: breaking changes for v20
a5aade2df fix form-field: preserve aria-describedby set externally across all form controls (#​30699)
ec538b598 fix form-field: use ResizeObserver for label offset calculation (#​30702)
d120f973f fix list: resolve changed after checked error
fd162d201 fix schematics: add schematic to rename tokens (#​31051)
db090cac3 fix select: breaking changes for v20
688c430fe fix select: close panel on detach output event (#​30634)
12f96e229 fix select: resolve change after checked errors
404868707 fix sidenav: resolve changed after checked error
c6ad44c68 fix slide-toggle: breaking changes for v20
d3a8c5b89 fix slide-toggle: opacity tokens not being used (#​30946)
2d86ad441 fix slider: fix clobbered token for hover/focus/pressed (#​30754)
0e985f2c6 fix slider: handle null values in slider input (#​30621)
8b033742b fix snack-bar: change politeness level (#​30851)
40d0ab4fc fix snack-bar: rename snackbar token prefix (#​30750)
0cf6ba107 fix stepper: done icon tokens not emitted in M3 (#​30996)
e1f97f920 fix stepper: resolve changed after checked errors
c63b1fe7b fix tabs: flicker when animationDuration is set to zero (#​30966)
922c678c0 fix tabs: not emitting token in M3 (#​31136)
1a800decc fix tabs: resolve change after checked errors
6c9678e69 perf form-field: set notch outline variable only on relevant element (#​30955)
10a6ea493 perf form-field: split DOM accesses into read and write (#​31086)
cdk
Commit Type Description
06821d85a feat dialog: add closePredicate option
cf619601a feat drag-drop: introduce resetToBoundary (#​30436)
77c8534ff fix accordion: resolve changed after checked error
1167d0638 fix collections: breaking changes for v20
79e887219 fix dialog: breaking changes for v20
a2ab84da1 fix dialog: provide proper shaped Directionality (#​30898)
b3e516f2d fix drag-drop: breaking changes for v20
69eedd75f fix drag-drop: incorrect type DragConstrainPosition (#​30510)
f9973ee23 fix overlay: use MutationObserver to detach overlay (#​30703)
11599f808 fix portal: remove deprecated symbols (#​30584)
87501e866 fix schematics: support project index file discovery for object-form and default (#​30967)
8078efc21 fix table: breaking changes for v20
0f48b04dd fix table: move out unused style scheduler (#​30963)
6ffe9c748 fix table: remove private symbols from public API (#​30956)
08f4acfef perf overlay: add tree-shakeable alternatives for overlay APIs (#​30904)
material-angular-io
Commit Type Description
3a1a0b368 fix streamline directive and component metadata handling in dgeni (#​30661)
multiple
Commit Type Description
e1cf2844f fix avoid repeating selectors in m3 themes (#​30645)
3465f9271 fix ensure mat-option parents are the offsetParent (#​30977)
cb3b0a87a fix ensure re-exported module symbols can be imported (#​30667)
590971359 fix remove backwards-compatibility code (#​30747)
cda5c8e68 fix remove remaining references to ComponentFactoryResolver (#​30569)
5229fe0a0 fix rename hardcoded tokens that were renamed (#​30807)
9bf4be9e2 fix rename token prefixes to match components (#​30802)
32353fb3a fix resolve directive host binding issues (#​30606)
48894ad55 fix use DI token for tag name (#​30892)
FortAwesome/angular-fontawesome (@​fortawesome/angular-fontawesome)

v2.0.1

Compare Source

Fixed
  • Restored possibility to set inputs to undefined.

v2.0.0

Compare Source

Converted all library internal component implementation to use reactive Signal APIs.

Make sure to check upgrade instructions.

Added
  • Support for Angular 20.
  • Documentation on changes in Programmatic API.
  • Documentation for upgrading 1.0.0 to 2.0.0
  • Updated code to use signal APIs like signal, computed, effect, input, model.
  • Updated changeDetection: ChangeDetectionStrategy.OnPush 🚀 for all components.
Removed

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@angular/animations](https://github.com/angular/angular) ([source](https://github.com/angular/angular/tree/HEAD/packages/animations)) | [`^19.0.0` -> `^20.0.0`](https://renovatebot.com/diffs/npm/@angular%2fanimations/19.2.14/20.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@angular%2fanimations/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@angular%2fanimations/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@angular%2fanimations/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@angular%2fanimations/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@angular/cdk](https://github.com/angular/components) | [`~19.2.0` -> `~20.0.0`](https://renovatebot.com/diffs/npm/@angular%2fcdk/19.2.18/20.0.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@angular%2fcdk/20.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@angular%2fcdk/20.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@angular%2fcdk/19.2.18/20.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@angular%2fcdk/19.2.18/20.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@angular/common](https://github.com/angular/angular) ([source](https://github.com/angular/angular/tree/HEAD/packages/common)) | [`^19.0.0` -> `^20.0.0`](https://renovatebot.com/diffs/npm/@angular%2fcommon/19.2.14/20.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@angular%2fcommon/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@angular%2fcommon/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@angular%2fcommon/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@angular%2fcommon/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@angular/compiler](https://github.com/angular/angular) ([source](https://github.com/angular/angular/tree/HEAD/packages/compiler)) | [`^19.2.4` -> `^20.0.0`](https://renovatebot.com/diffs/npm/@angular%2fcompiler/19.2.14/20.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@angular%2fcompiler/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@angular%2fcompiler/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@angular%2fcompiler/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@angular%2fcompiler/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@angular/core](https://github.com/angular/angular) ([source](https://github.com/angular/angular/tree/HEAD/packages/core)) | [`^19.0.0` -> `^20.0.0`](https://renovatebot.com/diffs/npm/@angular%2fcore/19.2.14/20.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@angular%2fcore/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@angular%2fcore/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@angular%2fcore/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@angular%2fcore/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@angular/forms](https://github.com/angular/angular) ([source](https://github.com/angular/angular/tree/HEAD/packages/forms)) | [`^19.0.0` -> `^20.0.0`](https://renovatebot.com/diffs/npm/@angular%2fforms/19.2.14/20.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@angular%2fforms/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@angular%2fforms/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@angular%2fforms/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@angular%2fforms/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@angular/platform-browser](https://github.com/angular/angular) ([source](https://github.com/angular/angular/tree/HEAD/packages/platform-browser)) | [`^19.0.0` -> `^20.0.0`](https://renovatebot.com/diffs/npm/@angular%2fplatform-browser/19.2.14/20.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@angular%2fplatform-browser/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@angular%2fplatform-browser/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@angular%2fplatform-browser/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@angular%2fplatform-browser/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@angular/platform-browser-dynamic](https://github.com/angular/angular) ([source](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic)) | [`^19.0.0` -> `^20.0.0`](https://renovatebot.com/diffs/npm/@angular%2fplatform-browser-dynamic/19.2.14/20.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@angular%2fplatform-browser-dynamic/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@angular%2fplatform-browser-dynamic/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@angular%2fplatform-browser-dynamic/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@angular%2fplatform-browser-dynamic/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@angular/router](https://github.com/angular/angular/tree/main/packages/router) ([source](https://github.com/angular/angular/tree/HEAD/packages/router)) | [`^19.0.0` -> `^20.0.0`](https://renovatebot.com/diffs/npm/@angular%2frouter/19.2.14/20.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@angular%2frouter/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@angular%2frouter/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@angular%2frouter/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@angular%2frouter/19.2.14/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@fortawesome/angular-fontawesome](https://github.com/FortAwesome/angular-fontawesome) | [`^1.0.0` -> `^2.0.0`](https://renovatebot.com/diffs/npm/@fortawesome%2fangular-fontawesome/1.0.0/2.0.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@fortawesome%2fangular-fontawesome/2.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@fortawesome%2fangular-fontawesome/2.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@fortawesome%2fangular-fontawesome/1.0.0/2.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@fortawesome%2fangular-fontawesome/1.0.0/2.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>angular/angular (@&#8203;angular/animations)</summary> ### [`v20.0.0`](https://github.com/angular/angular/blob/HEAD/CHANGELOG.md#2000-2025-05-28) [Compare Source](https://github.com/angular/angular/compare/19.2.14...20.0.0) Blog post: https://blog.angular.dev/announcing-angular-v20-b5c9c06cf301 #### Breaking Changes ##### common - Using the `Y` formatter (week-numbering year) without also including `w` (week number) is now detected as suspicious date pattern, as `y` is typically intended. - `AsyncPipe` now directly catches unhandled errors in subscriptions and promises and reports them to the application's `ErrorHandler`. For Zone-based applications, these errors would have been caught by ZoneJS and reported to `ErrorHandler` so the result is generally the same. The change to the exact mechanism for reporting can result in differences in test environments that will require test updates. ##### compiler - 'in' in an expression now refers to the operator - `void` in an expression now refers to the operator Previously an expression in the template like `{{void}}` referred to a property on the component class. After this change it now refers to the `void` operator, which would make the above example invalid. If you have existing expressions that need to refer to a property named `void`, change the expression to use `this.void` instead: `{{this.void}}`. ##### core - TypeScript versions less than 5.8 are no longer supported. - the `TestBed.flushEffects()` was removed - use the `TestBed.tick()` instead. - `provideExperimentalCheckNoChangesForDebug` has several breaking changes: - It is renamed to `provideCheckNoChangesConfig` - The behavior applies to *all* checkNoChanges runs - The `useNgZoneOnStable` option is removed. This wasn't found to be generally more useful than `interval` - `provideExperimentalZonelessChangeDetection` is renamed to `provideZonelessChangeDetection` as it is now "Developer Preview" rather than "Experimental". - - `InjectFlags` has been removed. - `inject` no longer accepts `InjectFlags`. - `Injector.get` no longer accepts `InjectFlags`. - `EnvironmentInjector.get` no longer accepts `InjectFlags`. - `TestBed.get` no longer accepts `InjectFlags`. - `TestBed.inject` no longer accepts `InjectFlags`. - - `TestBed.get` has been removed. Use `TestBed.inject` instead. - afterRender was renamed to afterEveryRender. - - Angular no longer supports Node.js v18. - Node.js versions 22.0 to 22.10 are also no longer supported. Before upgrading to Angular v20, ensure the Node.js version is at least 20.11.1. For the full list of supported versions, visit: https://angular.dev/reference/versions - `PendingTasks.run` no longer returns the result of the async function. If this behavior is desired, it can be re-implemented manually with the `PendingTasks.add`. Be aware, however, that promise rejections will need to be handled or they can cause the node process to shut down when using SSR. - Uncaught errors in listeners which were previously only reported to `ErrorHandler` are now also reported to Angular's internal error handling machinery. For tests, this means that the error will be rethrown by default rather than only logging the error. Developers should fix these errors, catch them in the test if the test is intentionally covering an error case, or use `rethrowApplicationErrors: false` in `configureTestingModule` as a last resort. - The `any` overload has been removed from `injector.get`. It now only supports `ProviderToken<T>` and (deprecated since v4) `string`. - Animations are guaranteed to be flushed when Angular runs automatic change detection or manual calls to `ApplicationRef.tick`. Prior to this change, animations would not be flushed in some situations if change detection did not run on any views attached to the application. This change can affect tests which may rely on the old behavior, often by making assertions on DOM elements that should have been removed but weren't because DOM removal is delayed until animations are flushed. - `ApplicationRef.tick` will no longer catch and report errors to the appplication `ErrorHandler`. Errors will instead be thrown out of the method and will allow callers to determine how to handle these errors, such as aborting follow-up work or reporting the error and continuing. - This commit deprecates `ng-reflect-*` attributes and updates the runtime to stop producing them by default. Please refactor application and test code to avoid relying on `ng-reflect-*` attributes. To enable a more seamless upgrade to v20, we've added the `provideNgReflectAttributes()` function (can be imported from the `@angular/core` package), which enables the mode in which Angular would be producing those attribites (in dev mode only). You can add the `provideNgReflectAttributes()` function to the list of providers within the bootstrap call. ##### router - The `RedirectFn` can now return `Observable` or `Promise`. Any code that directly calls functions returning this type may need to be adjusted to account for this. - Several methods in the public API of the Router which required writable arrays have now been updated to accept readonly arrays when no mutations are done. - The guards arrays on `Route` no longer include `any` in the type union. The union includes functions for the functional guards as well as a type matching `Injector.get`: `ProviderToken<T>|string`. Note that string is still deprecated on both the route guards and `Injector.get`. #### Deprecations ##### core - `ngIf`/`ngFor`/`ngSwitch` are deprecated. Use the control flow blocks instead (`@for`/`@if`/`@switch`). ##### platform-browser - All entries of the `@angular/platform-browser-dynamic` - HammerJS support is deprecated and will be removed in a future major version. ##### platform-server - `@angular/platform-server/testing` Use e2e tests to verify SSR behavior instead. ##### common | Commit | Type | Description | | -- | -- | -- | | [2e5362a469](https://github.com/angular/angular/commit/2e5362a4695c6d0c5e130f286a52cc9d97d0f721) | feat | accept undefined inputs in NgTemplateOutlet ([#&#8203;61404](https://github.com/angular/angular/pull/61404)) | | [b7d3f3dbfc](https://github.com/angular/angular/commit/b7d3f3dbfcfc40000ca34087d3b8b42319468177) | feat | Allow passing ScrollOptions to ViewportScroller ([#&#8203;61002](https://github.com/angular/angular/pull/61002)) | | [74cceba587](https://github.com/angular/angular/commit/74cceba5871e83e77a23536d8b64ff8888862dd3) | feat | throw error for suspicious date patterns ([#&#8203;59798](https://github.com/angular/angular/pull/59798)) | | [255c79e048](https://github.com/angular/angular/commit/255c79e0480b0adc876b526e2a96d5005692e42f) | fix | cleanup `updateLatestValue` if view is destroyed before promise resolves ([#&#8203;58041](https://github.com/angular/angular/pull/58041)) | | [739cadae62](https://github.com/angular/angular/commit/739cadae62fd7302ef5fffa7897c8c4f2701a556) | fix | Handle errors in async pipe subscriptions ([#&#8203;60057](https://github.com/angular/angular/pull/60057)) | | [cbbea70fa3](https://github.com/angular/angular/commit/cbbea70fa37b14e89e4f3459ae880116c0e894b1) | fix | issue a warning instead of an error when `NgOptimizedImage` exceeds the preload limit ([#&#8203;60879](https://github.com/angular/angular/pull/60879)) | | [fc4a56d5c5](https://github.com/angular/angular/commit/fc4a56d5c5fa270dbb1402c7cafe6d4f2af571eb) | fix | rename httpResource function in factory ([#&#8203;60022](https://github.com/angular/angular/pull/60022)) | | [785a1110e6](https://github.com/angular/angular/commit/785a1110e603a3573261528f2fda28718f548b4a) | fix | resolve host binding type issues ([#&#8203;60481](https://github.com/angular/angular/pull/60481)) | ##### compiler | Commit | Type | Description | | -- | -- | -- | | [7a971766dc](https://github.com/angular/angular/commit/7a971766dc59691dc68da9439e180a6c4d7b17d8) | feat | add extended diagnostic for uninvoked track function on `@for` blocks ([#&#8203;60495](https://github.com/angular/angular/pull/60495)) | | [f2d5cf7edd](https://github.com/angular/angular/commit/f2d5cf7eddb1ca2d946076d7622778fb12273d31) | feat | support exponentiation operator in templates ([#&#8203;59894](https://github.com/angular/angular/pull/59894)) | | [51b8ff23ce](https://github.com/angular/angular/commit/51b8ff23cefb5112937dec9727a5b5d6e913aae6) | feat | support tagged template literals in expressions ([#&#8203;59947](https://github.com/angular/angular/pull/59947)) | | [1b8e7ab9fe](https://github.com/angular/angular/commit/1b8e7ab9fe46901979389b377be4232e11092260) | feat | support the `in` keyword in Binary expression ([#&#8203;58432](https://github.com/angular/angular/pull/58432)) | | [0361c2d81f](https://github.com/angular/angular/commit/0361c2d81f5d2c56597002f465c00e9b1c4003e4) | feat | support void operator in templates ([#&#8203;59894](https://github.com/angular/angular/pull/59894)) | | [8b990a31c3](https://github.com/angular/angular/commit/8b990a31c3f9b27e096c4ac63a7fa1873fadbe72) | fix | error if rawText isn't estimated correctly ([#&#8203;60529](https://github.com/angular/angular/pull/60529)) | | [4fe489f1b4](https://github.com/angular/angular/commit/4fe489f1b4f8d1c0840af1224ee09d44cbb9c583) | fix | exponentiation should be right-to-left associative ([#&#8203;60101](https://github.com/angular/angular/pull/60101)) | | [ef1fd137a9](https://github.com/angular/angular/commit/ef1fd137a9e180059963b1f3a025c3acc1610b8f) | fix | incorrect spans for template literals ([#&#8203;60323](https://github.com/angular/angular/pull/60323)) | | [e0d378d20e](https://github.com/angular/angular/commit/e0d378d20e768d353b01bc28e10ad53c5485b426) | fix | incorrectly handling let declarations inside i18n ([#&#8203;60512](https://github.com/angular/angular/pull/60512)) | | [b70ad3c4e6](https://github.com/angular/angular/commit/b70ad3c4e63158a72b8aea173b1268ec8ab08e2b) | fix | proper handling of typeof, void in RecursiveAstVisitor ([#&#8203;60101](https://github.com/angular/angular/pull/60101)) | | [e25e6c95a2](https://github.com/angular/angular/commit/e25e6c95a28e4b01a58b9988d404a4199b7d1d13) | fix | remove TypeScript from linker ([#&#8203;61635](https://github.com/angular/angular/pull/61635)) | | [768239a89c](https://github.com/angular/angular/commit/768239a89cba7e7cf1f497e15589705b1446f8a6) | perf | reduce allocations for let declarations only used in the same view ([#&#8203;60512](https://github.com/angular/angular/pull/60512)) | ##### compiler-cli | Commit | Type | Description | | -- | -- | -- | | [bec1610da2](https://github.com/angular/angular/commit/bec1610da241f24bdb9120843a91973a3823a004) | feat | add extended diagnostic for invalid nullish coalescing ([#&#8203;60279](https://github.com/angular/angular/pull/60279)) | | [c889382a20](https://github.com/angular/angular/commit/c889382a2044f9a024f475680c8573d0f7112562) | feat | detect missing structural directive imports ([#&#8203;59443](https://github.com/angular/angular/pull/59443)) | | [1971e57a45](https://github.com/angular/angular/commit/1971e57a457ff9fd4dc8a353b59b51364e08b443) | feat | support type checking of host bindings ([#&#8203;60267](https://github.com/angular/angular/pull/60267)) | | [9ec9c7e1b8](https://github.com/angular/angular/commit/9ec9c7e1b8473c76661ad09a3961016ccc4ddfc7) | fix | avoid fatal diagnostics for invalid module schemas ([#&#8203;61220](https://github.com/angular/angular/pull/61220)) | | [a1cacc5b17](https://github.com/angular/angular/commit/a1cacc5b17d6f865bb260f475f1d2ef37dc845f1) | fix | avoid fatal diagnostics for missing template files ([#&#8203;58673](https://github.com/angular/angular/pull/58673)) | | [1e6faad479](https://github.com/angular/angular/commit/1e6faad479e879083550424f92b6501fe09d48ba) | fix | correctly parse event name in HostListener ([#&#8203;60561](https://github.com/angular/angular/pull/60561)) | | [ffb19e64f1](https://github.com/angular/angular/commit/ffb19e64f1ced7b5eb55e1c1b96b6f7c54835a1d) | fix | preserve required parens for nullish coalescing ([#&#8203;60060](https://github.com/angular/angular/pull/60060)) | | [7c9b4892e9](https://github.com/angular/angular/commit/7c9b4892e9f6df164e4e289195bff27f2cc9a0ea) | fix | preserve required parens in exponentiation expressions ([#&#8203;60101](https://github.com/angular/angular/pull/60101)) | | [7e03af898e](https://github.com/angular/angular/commit/7e03af898e5144eb3a64b17dd6470874467d9133) | fix | set correct target when type checking events ([#&#8203;60561](https://github.com/angular/angular/pull/60561)) | | [2d51a203dc](https://github.com/angular/angular/commit/2d51a203dc87d6d880c3cf6d68bf8590f5dd689b) | fix | wrong event name for host listener decorators ([#&#8203;60460](https://github.com/angular/angular/pull/60460)) | ##### core | Commit | Type | Description | | -- | -- | -- | | [22d3f0562c](https://github.com/angular/angular/commit/22d3f0562cc6c21ebf7c29ff0e01bce40dcd50a0) | feat | add hook for producer creation side effects ([#&#8203;60333](https://github.com/angular/angular/pull/60333)) | | [fe57332fc5](https://github.com/angular/angular/commit/fe57332fc5c4e6b44f01b9b4343385e90b3edf77) | feat | add input binding support to dynamically-created components ([#&#8203;60137](https://github.com/angular/angular/pull/60137)) | | [65adb3024d](https://github.com/angular/angular/commit/65adb3024d6ae2af14952f4afdb2b92b600da074) | feat | Add provider which reports unhandled errors on window to ErrorHandler ([#&#8203;60704](https://github.com/angular/angular/pull/60704)) | | [b154fb3911](https://github.com/angular/angular/commit/b154fb391142db6139cddad820a9a72838f0f16c) | feat | add support for two-way bindings on dynamically-created components ([#&#8203;60342](https://github.com/angular/angular/pull/60342)) | | [82aa2c1a52](https://github.com/angular/angular/commit/82aa2c1a527be85e09f0f660ece56b594bff5a76) | feat | add the ability to apply directives to dynamically-created components ([#&#8203;60137](https://github.com/angular/angular/pull/60137)) | | [326d48afb4](https://github.com/angular/angular/commit/326d48afb4266ef9b028860e2f845de005653d75) | feat | drop support for TypeScript older than 5.8 ([#&#8203;60197](https://github.com/angular/angular/pull/60197)) | | [d260ca3091](https://github.com/angular/angular/commit/d260ca3091a6de215ba31f2516134d1aa11fe04c) | feat | emit template function for template related profiler hooks ([#&#8203;60174](https://github.com/angular/angular/pull/60174)) | | [a4bad8d361](https://github.com/angular/angular/commit/a4bad8d361e8a65b52df8c3d5436401343abace7) | feat | export signalGetFn from signal primitives ([#&#8203;60497](https://github.com/angular/angular/pull/60497)) | | [4812215a7b](https://github.com/angular/angular/commit/4812215a7b3bcb54bce3f017d89246aa39af2cc5) | feat | Expose `Injector.destroy` on `Injector` created with `Injector.create` ([#&#8203;60054](https://github.com/angular/angular/pull/60054)) | | [c1bcae91dd](https://github.com/angular/angular/commit/c1bcae91ddb03efb04451799fbf92e9fd1e82026) | feat | expose performance data in Chrome DevTools ([#&#8203;60789](https://github.com/angular/angular/pull/60789)) | | [809b5b4596](https://github.com/angular/angular/commit/809b5b4596cafcdabdb1c5fa92fcab539c6f637f) | feat | introduce new DI profiling event ([#&#8203;60158](https://github.com/angular/angular/pull/60158)) | | [d5fd7349fb](https://github.com/angular/angular/commit/d5fd7349fb8b3942f0727cd7ee62e7a7b231e9e4) | feat | introduce TestBed.tick() ([#&#8203;60993](https://github.com/angular/angular/pull/60993)) | | [4e88e18a8e](https://github.com/angular/angular/commit/4e88e18a8ef0f19aed85316e80627ad6d2ec80a7) | feat | mark `toObservable` as stable ([#&#8203;60449](https://github.com/angular/angular/pull/60449)) | | [727cda3856](https://github.com/angular/angular/commit/727cda385690066c0bbc94734e344cf5ad741e9a) | feat | mark linkedSignal API as public ([#&#8203;60865](https://github.com/angular/angular/pull/60865)) | | [644d9f3bbd](https://github.com/angular/angular/commit/644d9f3bbdb5e77a78d95669cfd6b0f6d8cb09b9) | feat | mark the toSignal API as stable ([#&#8203;60442](https://github.com/angular/angular/pull/60442)) | | [e711f99d81](https://github.com/angular/angular/commit/e711f99d81ea7dbd4526f859c363244fccdf0626) | feat | move `provideExperimentalCheckNoChangesForDebug` to `provideCheckNoChangesConfig` ([#&#8203;60906](https://github.com/angular/angular/pull/60906)) | | [7ccec1494f](https://github.com/angular/angular/commit/7ccec1494f864a485d2188da62d2006c31849f3f) | feat | move DOCUMENT token into core ([#&#8203;60663](https://github.com/angular/angular/pull/60663)) | | [953c4b2580](https://github.com/angular/angular/commit/953c4b25808b357e78bf1cf6b2ef8b4a84ffaf49) | feat | Move zoneless change detection to dev preview ([#&#8203;60748](https://github.com/angular/angular/pull/60748)) | | [611baaf069](https://github.com/angular/angular/commit/611baaf0695882f1684baa1c007f7ae112afa5d4) | feat | remove InjectFlags from public API ([#&#8203;60318](https://github.com/angular/angular/pull/60318)) | | [5e209cb560](https://github.com/angular/angular/commit/5e209cb560fdfb943169a09d35389c703fa71418) | feat | remove TestBed.get ([#&#8203;60414](https://github.com/angular/angular/pull/60414)) | | [d8fbb909ce](https://github.com/angular/angular/commit/d8fbb909ce4380c0ea48512cf5d364a2785fd428) | feat | rename afterRender to afterEveryRender and stabilize ([#&#8203;60999](https://github.com/angular/angular/pull/60999)) | | [567522398f](https://github.com/angular/angular/commit/567522398ffc4149e726ef30d87b0169ae6f3e21) | feat | stabilize incremental hydration api ([#&#8203;60888](https://github.com/angular/angular/pull/60888)) | | [8d050b5bfc](https://github.com/angular/angular/commit/8d050b5bfc49878f01777f71a37e34d5c1733b1b) | feat | stabilize linkedSignal API ([#&#8203;60741](https://github.com/angular/angular/pull/60741)) | | [866cea9a05](https://github.com/angular/angular/commit/866cea9a057ac67fa3f679f1f3da18700926c15a) | feat | Stabilize PendingTasks Injectable ([#&#8203;60716](https://github.com/angular/angular/pull/60716)) | | [bf8492b871](https://github.com/angular/angular/commit/bf8492b8711dd25f5a1488a7338f435b59b9e91c) | feat | stabilize withI18nSupport() api ([#&#8203;60889](https://github.com/angular/angular/pull/60889)) | | [be44cc8f40](https://github.com/angular/angular/commit/be44cc8f40fb2364dbaf20ba24496e4355f84e78) | feat | support listening to outputs on dynamically-created components ([#&#8203;60137](https://github.com/angular/angular/pull/60137)) | | [fe9b79b615](https://github.com/angular/angular/commit/fe9b79b615bb72989498c2dc9e84a89e618ebeb4) | feat | update Node.js version support ([#&#8203;60545](https://github.com/angular/angular/pull/60545)) | | [e170d24240](https://github.com/angular/angular/commit/e170d242402f5ee4671dd425c24e5f31fbc67b21) | fix | add migration away from InjectFlags ([#&#8203;60318](https://github.com/angular/angular/pull/60318)) | | [7eb59d3887](https://github.com/angular/angular/commit/7eb59d38872667c73e09a42e4260e8a58f102448) | fix | added [@&#8203;angular/compiler](https://github.com/angular/compiler) as a peer dependency ([#&#8203;55610](https://github.com/angular/angular/pull/55610)) | | [7232ce5b17](https://github.com/angular/angular/commit/7232ce5b17c9cce87bebe41c81f55043f21e639b) | fix | Catch and report rejections in async function of `PendingTasks.run` ([#&#8203;60044](https://github.com/angular/angular/pull/60044)) | | [fd12220a35](https://github.com/angular/angular/commit/fd12220a35665d2378b74905c998fcff6130eb91) | fix | defer block render failures should report to application error handler ([#&#8203;60149](https://github.com/angular/angular/pull/60149)) | | [3459faadbf](https://github.com/angular/angular/commit/3459faadbfce9be7b1ca69f4d4db82a65b31de50) | fix | do not allow setInput to be used with inputBinding ([#&#8203;60137](https://github.com/angular/angular/pull/60137)) | | [0ac949c266](https://github.com/angular/angular/commit/0ac949c266637ab723430ff17adb1af58b14fa0d) | fix | do not run change detection on global error events ([#&#8203;60944](https://github.com/angular/angular/pull/60944)) | | [4fe34f4cfe](https://github.com/angular/angular/commit/4fe34f4cfea2aa0e355afa04c7183545637283c3) | fix | enable stashing only when `withEventReplay()` is invoked ([#&#8203;61077](https://github.com/angular/angular/pull/61077)) | | [962b59b14e](https://github.com/angular/angular/commit/962b59b14e9dad166973be72d74d1e04d25db5a4) | fix | Ensure ComponentFixture does not duplicate error reporting from FakeAsync ([#&#8203;60104](https://github.com/angular/angular/pull/60104)) | | [7b819be83f](https://github.com/angular/angular/commit/7b819be83fc3c5ced7a7d14f777cad0691eef709) | fix | Ensure errors in listeners report to the application error handler ([#&#8203;60251](https://github.com/angular/angular/pull/60251)) | | [ff772d7800](https://github.com/angular/angular/commit/ff772d780089b7b1fcaa14fbd9139d6eeca2f596) | fix | fix typing on injector.get to omit 'any' ([#&#8203;60202](https://github.com/angular/angular/pull/60202)) | | [13d1c8ab38](https://github.com/angular/angular/commit/13d1c8ab38707b06dbed4941a556f982665b3304) | fix | fixes timing of hydration cleanup on control flow ([#&#8203;60425](https://github.com/angular/angular/pull/60425)) | | [0b69b61929](https://github.com/angular/angular/commit/0b69b619296231edfab0561480296c477e2c72ca) | fix | Flush animations when no component has been checked ([#&#8203;58089](https://github.com/angular/angular/pull/58089)) | | [3ba39bc28f](https://github.com/angular/angular/commit/3ba39bc28f93c208f7b50fcb878fe1aa1bc0413d) | fix | getting resource value throws an error instead of returning undefined ([#&#8203;61441](https://github.com/angular/angular/pull/61441)) | | [ca6295e90b](https://github.com/angular/angular/commit/ca6295e90b72b352319ebf77d969b33783b284ed) | fix | handle different DI token types in Chrome DevTools integration ([#&#8203;61333](https://github.com/angular/angular/pull/61333)) | | [0162ceb427](https://github.com/angular/angular/commit/0162ceb427243e065d2cd81042451d705838d090) | fix | inject migration should treat `@Attribute` as optional ([#&#8203;60916](https://github.com/angular/angular/pull/60916)) | | [ea5eb28865](https://github.com/angular/angular/commit/ea5eb288651a87923edd86b2445d6ed32e52ed85) | fix | input targeting not checking if input exists on host ([#&#8203;60137](https://github.com/angular/angular/pull/60137)) | | [c8951159ac](https://github.com/angular/angular/commit/c8951159ac1994ecd98798627333af958aeb56cf) | fix | mark `zone.js` as an optional peer dependency ([#&#8203;61616](https://github.com/angular/angular/pull/61616)) | | [d62379bb13](https://github.com/angular/angular/commit/d62379bb13f08e9e0fe9c7b93fe7c6ef46f8f181) | fix | move reload method from Resource to WritableResource ([#&#8203;61441](https://github.com/angular/angular/pull/61441)) | | [a89f1cff24](https://github.com/angular/angular/commit/a89f1cff2465cca383765e9f9d7e719970a3a6e4) | fix | narrow error type for resources API ([#&#8203;61441](https://github.com/angular/angular/pull/61441)) | | [624be2ef0c](https://github.com/angular/angular/commit/624be2ef0c7255e62082751cc339d2cd618bd633) | fix | prevent stash listener conflicts ([#&#8203;59635](https://github.com/angular/angular/pull/59635)) | | [017cc0a37c](https://github.com/angular/angular/commit/017cc0a37cf5b2534a07ebd207061a05d6ab89ec) | fix | properly handle app stabilization with defer blocks ([#&#8203;61040](https://github.com/angular/angular/pull/61040)) | | [6e79eaf739](https://github.com/angular/angular/commit/6e79eaf7399170611bcbefda0082947b629f2693) | fix | reading resource value after reload in the error state ([#&#8203;61441](https://github.com/angular/angular/pull/61441)) | | [3d85d9363c](https://github.com/angular/angular/commit/3d85d9363c6dd02d2f14181bdad1dc0b05fedc31) | fix | reduce total memory usage of various migration schematics ([#&#8203;60774](https://github.com/angular/angular/pull/60774)) | | [1c7b356625](https://github.com/angular/angular/commit/1c7b35662587de8c3245ca26ba7a04aba2c0a341) | fix | release `hasPendingTasks` observers ([#&#8203;59723](https://github.com/angular/angular/pull/59723)) | | [43cbc58254](https://github.com/angular/angular/commit/43cbc58254ecb8a1a6a938479b6c388cc00143d7) | fix | remove `forceRoot` flag for effects ([#&#8203;60535](https://github.com/angular/angular/pull/60535)) | | [48974c3cf8](https://github.com/angular/angular/commit/48974c3cf88ab1a70411bea4950823f975994087) | fix | remove `rejectErrors` option encourages uncaught exceptions ([#&#8203;60397](https://github.com/angular/angular/pull/60397)) | | [491b0a4ead](https://github.com/angular/angular/commit/491b0a4ead98822c767543e1f1c8046ed9d1be20) | fix | Remove duplicate reporting of errors in `CDR.detectChanges` ([#&#8203;60056](https://github.com/angular/angular/pull/60056)) | | [04d963c0a5](https://github.com/angular/angular/commit/04d963c0a5f68c93015c13973d29107fe35bb942) | fix | remove unused parameter from listener instruction ([#&#8203;60406](https://github.com/angular/angular/pull/60406)) | | [0ae1889560](https://github.com/angular/angular/commit/0ae18895605eef6b4946898ff0752ae3917c0057) | fix | run `ApplicationRef.prototype.bootstrap` in `NgZone` ([#&#8203;60720](https://github.com/angular/angular/pull/60720)) | | [a611b234d7](https://github.com/angular/angular/commit/a611b234d7405f3a06389d66860a139cd9202c60) | fix | run root effects in creation order ([#&#8203;60534](https://github.com/angular/angular/pull/60534)) | | [338818ce89](https://github.com/angular/angular/commit/338818ce8992294a6b3ab15947e65eb0c6d01391) | fix | Surface errors from `ApplicationRef.tick` to callsite ([#&#8203;60102](https://github.com/angular/angular/pull/60102)) | | [350776b412](https://github.com/angular/angular/commit/350776b4128271760008c4f1430c9a44c8b83234) | fix | TestBed.tick should ensure test components are synchronized ([#&#8203;61382](https://github.com/angular/angular/pull/61382)) | | [3d4ddd2247](https://github.com/angular/angular/commit/3d4ddd224766401982b6dd4b30d88eba3d99f029) | fix | Testing should not throw when Zone does not patch test FW APIs ([#&#8203;61628](https://github.com/angular/angular/pull/61628)) | | [30e081287d](https://github.com/angular/angular/commit/30e081287da68d6801f8ebd5a00d495b51d4c68d) | fix | update min Node.js support to 20.19, 22.12, and 24.0 ([#&#8203;61500](https://github.com/angular/angular/pull/61500)) | | [b407157ee8](https://github.com/angular/angular/commit/b407157ee848296cd264891b1d7cc9c57c719418) | refactor | Deprecate the structural directives `ngIf`/`ngFor`/`ngSwitch`. ([#&#8203;60492](https://github.com/angular/angular/pull/60492)) | | [c2987d8402](https://github.com/angular/angular/commit/c2987d8402b7b03333b0081a7f97750cdf612e99) | refactor | stop producing `ng-reflect` attributes by default ([#&#8203;60973](https://github.com/angular/angular/pull/60973)) | ##### forms | Commit | Type | Description | | -- | -- | -- | | [a07ee60989](https://github.com/angular/angular/commit/a07ee60989441c38e6539fd25cad5166622e9f9e) | feat | add markAllAsDirty to AbstractControl ([#&#8203;58663](https://github.com/angular/angular/pull/58663)) | | [bdfbd54932](https://github.com/angular/angular/commit/bdfbd5493240869e9a25fa10a0f6c21510e12492) | feat | Allow to reset a form without emitting events ([#&#8203;60354](https://github.com/angular/angular/pull/60354)) | | [81fe0536fd](https://github.com/angular/angular/commit/81fe0536fdb86ba2428954ac5305c2424f369339) | fix | Make sure statusChanges is emitted ([#&#8203;57098](https://github.com/angular/angular/pull/57098)) | | [bdd5e20423](https://github.com/angular/angular/commit/bdd5e204233eeb79e04a782a51c08429991eb03e) | fix | resolve host binding type issues ([#&#8203;60481](https://github.com/angular/angular/pull/60481)) | ##### http | Commit | Type | Description | | -- | -- | -- | | [ccc5cc068f](https://github.com/angular/angular/commit/ccc5cc068f788013c19498c44d13530c1bc98912) | feat | add keepalive support for fetch requests ([#&#8203;60621](https://github.com/angular/angular/pull/60621)) | | [5795e03cdf](https://github.com/angular/angular/commit/5795e03cdf25f4a96b73a49be915efbeeb398d83) | fix | Delay stabilization until next app synchronization ([#&#8203;60656](https://github.com/angular/angular/pull/60656)) | ##### platform-browser | Commit | Type | Description | | -- | -- | -- | | [bc2cab747f](https://github.com/angular/angular/commit/bc2cab747f23e517128bdefedd7d5296a1c9ebbc) | refactor | Deprecate the `platform-browser-dynamic` package ([#&#8203;61043](https://github.com/angular/angular/pull/61043)) | | [a980ac9a6a](https://github.com/angular/angular/commit/a980ac9a6a9b47246db8690e7779e563bf231a90) | refactor | Deprecate the HammerJS integration ([#&#8203;60257](https://github.com/angular/angular/pull/60257)) | ##### platform-server | Commit | Type | Description | | -- | -- | -- | | [2240a21c97](https://github.com/angular/angular/commit/2240a21c9703f3b1945a37ebe86428a8daf40b36) | refactor | deprecate the testing entry point ([#&#8203;60915](https://github.com/angular/angular/pull/60915)) | ##### router | Commit | Type | Description | | -- | -- | -- | | [0bb4bd661e](https://github.com/angular/angular/commit/0bb4bd661e8fafe3228692181397272898fb9e9a) | feat | Add ability to directly abort a navigation ([#&#8203;60380](https://github.com/angular/angular/pull/60380)) | | [62de7d930a](https://github.com/angular/angular/commit/62de7d930a5d2f3cc39b6bf38dedbe3e9d938842) | feat | add asynchronous redirects ([#&#8203;60863](https://github.com/angular/angular/pull/60863)) | | [7c12cb1df9](https://github.com/angular/angular/commit/7c12cb1df980734c64a4d127c2b9a7094e0fe9fb) | feat | Allow resolvers to read resolved data from ancestors ([#&#8203;59860](https://github.com/angular/angular/pull/59860)) | | [ff98ccb193](https://github.com/angular/angular/commit/ff98ccb19391ed4e04528b82771c04ad67067d68) | feat | support custom elements for RouterLink ([#&#8203;60290](https://github.com/angular/angular/pull/60290)) | | [219f41d049](https://github.com/angular/angular/commit/219f41d049cf6798f81fbb393b4e23b2a030ff48) | fix | Prevent dangling promise rejections from internal navigations ([#&#8203;60162](https://github.com/angular/angular/pull/60162)) | | [2419060fef](https://github.com/angular/angular/commit/2419060fef4e59a5633c29bfd5d55e2d5a17dd00) | fix | relax required types on router commands to readonly array ([#&#8203;60345](https://github.com/angular/angular/pull/60345)) | | [c57951d58f](https://github.com/angular/angular/commit/c57951d58f3c1c9287349d40687715b631a1b25e) | fix | Remove 'any' type from route guards ([#&#8203;60378](https://github.com/angular/angular/pull/60378)) | | [db2f2d99c8](https://github.com/angular/angular/commit/db2f2d99c82aae52d8a0ae46616c6411d070b35e) | fix | Scroller should scroll as soon as change detection completes ([#&#8203;60086](https://github.com/angular/angular/pull/60086)) | <!-- CHANGELOG SPLIT MARKER --> </details> <details> <summary>angular/components (@&#8203;angular/cdk)</summary> ### [`v20.0.1`](https://github.com/angular/components/blob/HEAD/CHANGELOG.md#2001-sulfur-sandpaper-2025-05-28) [Compare Source](https://github.com/angular/components/compare/20.0.0...20.0.1) ##### material | Commit | Type | Description | | -- | -- | -- | | [ecd17ad75](https://github.com/angular/components/commit/ecd17ad758dd831f0be2d106ad4b4cd63f116069) | fix | **button:** add token for icon button shape ([#&#8203;31223](https://github.com/angular/components/pull/31223)) | | [20fa71807](https://github.com/angular/components/commit/20fa71807bcbb8ef4dee75b86f0000aee31591f5) | fix | **schematics:** filter paths when renaming tokens ([#&#8203;31249](https://github.com/angular/components/pull/31249)) | <!-- CHANGELOG SPLIT MARKER --> ### [`v20.0.0`](https://github.com/angular/components/blob/HEAD/CHANGELOG.md#2000-calcium-carrot-2025-05-28) [Compare Source](https://github.com/angular/components/compare/19.2.18...20.0.0) #### Breaking Changes ##### cdk - - `SelectionModel.clear` now returns a boolean. - `SelectionModel.deselect` now returns a boolean. - `SelectionModel.select` now returns a boolean. - `SelectionModel.setSelection` now returns a boolean. - `SelectionModel.toggle` now returns a boolean. - - `DIALOG_SCROLL_STRATEGY_PROVIDER` has been removed. - `DIALOG_SCROLL_STRATEGY_PROVIDER_FACTORY` has been removed. - - `DragDropRegistry` is no longer generic. - `DragDropRegistry.scroll` has been removed. Use the `scrolled` method instead. - - `DomPortalHost` has been removed. Use `DomPortalOutlet` instead. - `PortalInjector` has been removed. Use `Injector.create` instead. - `PortalHost` has been removed. Use `PortalOutlet` instead. - `BasePortalHost` has been removed. Use `BasePortalOutlet` instead. - - `Constructor` symbol has been removed. - `CanStickCtor` symbol has been removed. - `mixinHasStickyInput` has been removed. Implement the `CanStick` interface instead. - - `CanStick` has been removed. - `CDK_TABLE_TEMPLATE` has been removed. - `StickyDirection` has been removed. - `StickyStyler` has been removed. ##### material - - `ButtonVariant` which is returned by `MatButtonHarness.getVariant` no longer includes the appearance of the button. Use `MatButtonHarness.getAppearance` instead. - `tabindex` values set as `[attr.tabindex]` set on a Material button might not work as expected. Use `tabindex` for static values, or `[tabindex]`/`[tabIndex]` for dynamic ones. - - `MAT_CHECKBOX_REQUIRED_VALIDATOR` has been removed. - `MAT_CHECKBOX_VALUE_ACCESSOR` has been removed. - `MatCheckboxRequiredValidator` has been removed. - `_MatCheckboxRequiredValidatorModule` has been removed. - - `MAT_DIALOG_SCROLL_STRATEGY_PROVIDER` has been removed. - `MAT_DIALOG_SCROLL_STRATEGY_PROVIDER_FACTORY` has been removed. - - `matSelectAnimations.transformPanelWrap` has been removed. - - `MAT_SLIDE_TOGGLE_REQUIRED_VALIDATOR` has been removed. - `MAT_SLIDE_TOGGLE_VALUE_ACCESSOR` has been removed. - `MatSlideToggleRequiredValidator` has been removed. - `_MatSlideToggleRequiredValidatorModule` has been removed. ##### multiple - - `DialogConfig.componentFactoryResolver` has been removed. - The constructor of `DomPortalOutlet` has changed. - `ComponentPortal.componentFactoryResolver` has been removed. - The constructor signature of `ComponentPortal` has changed. - `MatDialogConfig.componentFactoryResolver` has been removed. ##### cdk-experimental | Commit | Type | Description | | -- | -- | -- | | [e456c751c](https://github.com/angular/components/commit/e456c751cdeff2f196e90933d4c99de317e70b31) | feat | **listbox:** add cdk-active class ([#&#8203;30932](https://github.com/angular/components/pull/30932)) | | [6ac4c1ae2](https://github.com/angular/components/commit/6ac4c1ae2ca67564eef15e11f5b4363c5262747e) | feat | **listbox:** readonly mode ([#&#8203;30803](https://github.com/angular/components/pull/30803)) | | [96fa9fc55](https://github.com/angular/components/commit/96fa9fc5526e79127edf028eef88f547c8c93b88) | feat | **popover-edit:** Support skipping over annotated rows when the user moves focus up/down. ([#&#8203;30916](https://github.com/angular/components/pull/30916)) | | [025010b64](https://github.com/angular/components/commit/025010b64c59b4aa2bfec8593f050e75fe3eefaa) | feat | **tabs:** add cdk-active class and update example styles ([#&#8203;30950](https://github.com/angular/components/pull/30950)) | | [9a94bb76a](https://github.com/angular/components/commit/9a94bb76a755a01cd18f5f5a333502ca9d6ddd6d) | feat | **tabs:** support initial tab selection and add unit tests ([#&#8203;31023](https://github.com/angular/components/pull/31023)) | | [1833aa32e](https://github.com/angular/components/commit/1833aa32e662968d6b62209d2934e609c2f0d24b) | feat | **ui-patterns:** add expansion behavior and refactor tabs ([#&#8203;30962](https://github.com/angular/components/pull/30962)) | | [fc4699744](https://github.com/angular/components/commit/fc46997442b72bc1ba395fcd5f008b0358e5c91f) | feat | **ui-patterns:** listbox ui pattern ([#&#8203;30495](https://github.com/angular/components/pull/30495)) | | [9caed2a8a](https://github.com/angular/components/commit/9caed2a8a7b0433383b19526cadbf20325685040) | feat | **ui-patterns:** tabs ui pattern ([#&#8203;30568](https://github.com/angular/components/pull/30568)) | | [e0446ecfc](https://github.com/angular/components/commit/e0446ecfcb3d74a73f8b4799cb17d2098ba6c433) | fix | **listbox:** change shift+nav behavior ([#&#8203;30854](https://github.com/angular/components/pull/30854)) | | [184ceee3a](https://github.com/angular/components/commit/184ceee3a1abd829f303c606a05403b97a93a1b6) | fix | **listbox:** ignore spaces during typeahead ([#&#8203;30766](https://github.com/angular/components/pull/30766)) | | [44e9ccbf5](https://github.com/angular/components/commit/44e9ccbf5080abade2d35478ad3c82451ac61585) | fix | **listbox:** initial listbox focus state ([#&#8203;30764](https://github.com/angular/components/pull/30764)) | | [a7df65f3e](https://github.com/angular/components/commit/a7df65f3e0faf6c3dca96876d99df67c4e2f42b4) | fix | **listbox:** use meta as alternative to ctrl ([#&#8203;30852](https://github.com/angular/components/pull/30852)) | | [149fe6129](https://github.com/angular/components/commit/149fe6129c9647b0d330ec47d901909f01f933a5) | fix | **popover-edit:** use MutationObserver to detect table rows ([#&#8203;30713](https://github.com/angular/components/pull/30713)) | | [16493ecab](https://github.com/angular/components/commit/16493ecab893d522f81b769e059f8fa6138b9e7e) | fix | **scrolling:** Fix ExpressionChangedAfterItWasCheckedError ([#&#8203;31076](https://github.com/angular/components/pull/31076)) | | [0e391700c](https://github.com/angular/components/commit/0e391700cb55786a74a3aa16757e90596eb55e6c) | fix | **tabs:** handle space and enter events ([#&#8203;30889](https://github.com/angular/components/pull/30889)) | | [2e34b20cb](https://github.com/angular/components/commit/2e34b20cb7d2ede488c5df4ca858684524ef8073) | fix | **ui-patterns:** add missing event handlers ([#&#8203;30786](https://github.com/angular/components/pull/30786)) | | [4bf3591c7](https://github.com/angular/components/commit/4bf3591c77af15881a5d49b73492ddfa023d9833) | fix | **ui-patterns:** add modifier checks for regexps ([#&#8203;30738](https://github.com/angular/components/pull/30738)) | | [ae8f9dd28](https://github.com/angular/components/commit/ae8f9dd2828107af387062bae1aad03a9c8d6204) | fix | **ui-patterns:** fix lint and build config ([#&#8203;30877](https://github.com/angular/components/pull/30877)) | | [10890983c](https://github.com/angular/components/commit/10890983c8b91a5d5280e85b158b1a28eedda951) | fix | **ui-patterns:** listbox pointer event handler ([#&#8203;30843](https://github.com/angular/components/pull/30843)) | | [7343657f5](https://github.com/angular/components/commit/7343657f5a562990418e3859d5409c8681f03ea1) | fix | **ui-patterns:** small fixes for internal compatibi… ([#&#8203;30625](https://github.com/angular/components/pull/30625)) | ##### youtube-player | Commit | Type | Description | | -- | -- | -- | | [18ddea330](https://github.com/angular/components/commit/18ddea33077d5c7c805f6dcf8f6e31f7d1863dd2) | fix | use safevalues ([#&#8203;30773](https://github.com/angular/components/pull/30773)) | ##### material | Commit | Type | Description | | -- | -- | -- | | [fb81ab4f2](https://github.com/angular/components/commit/fb81ab4f234498acd5b9925087bb712a7db039f6) | feat | **button:** add support for tonal button ([#&#8203;30638](https://github.com/angular/components/pull/30638)) | | [e79f60558](https://github.com/angular/components/commit/e79f60558fec6055c78dddc9d6e291a600778bc5) | feat | **button:** allow appearance to be set dynamically | | [663585a1c](https://github.com/angular/components/commit/663585a1c4f539b946d12bc0d014c97f02d940d0) | feat | **card:** support filled variant ([#&#8203;29868](https://github.com/angular/components/pull/29868)) | | [82f0fa6fa](https://github.com/angular/components/commit/82f0fa6fa750779a04687d2564537e672a326b90) | feat | **core:** handle prefers-reduced-motion automatically ([#&#8203;30796](https://github.com/angular/components/pull/30796)) | | [3daa36030](https://github.com/angular/components/commit/3daa360300a98e0c63db770f6812faa94eea1133) | feat | **core:** introduce custom token for controlling animations ([#&#8203;30749](https://github.com/angular/components/pull/30749)) | | [764a1ccd1](https://github.com/angular/components/commit/764a1ccd15f5f231058789eb98cdcf4e40dc69db) | feat | **dialog:** add closePredicate option | | [097f49d90](https://github.com/angular/components/commit/097f49d90f5fe079a0399fd499202a8bdd1542cf) | fix | **autocomplete:** allow overlay backdrop by setting hasBackdrop option ([#&#8203;30631](https://github.com/angular/components/pull/30631)) | | [7d360ac77](https://github.com/angular/components/commit/7d360ac7761520c4382776c2950d47919e59cc21) | fix | **button-toggle:** changed after checked error when updating tabindex ([#&#8203;31172](https://github.com/angular/components/pull/31172)) | | [2c7199c02](https://github.com/angular/components/commit/2c7199c02886ebf0c8c668f9290ed47a1b7b20ab) | fix | **button:** align harness with new terminology | | [6a5943d8b](https://github.com/angular/components/commit/6a5943d8b0fe6042c885e608d7d2a071e27dd802) | fix | **button:** combine MatButton and MatAnchor ([#&#8203;30492](https://github.com/angular/components/pull/30492)) | | [3aecb3521](https://github.com/angular/components/commit/3aecb3521614d1bae40a5233d7fcc609fed0e632) | fix | **button:** tonal touch target token transgression ([#&#8203;30688](https://github.com/angular/components/pull/30688)) | | [77d6b69e7](https://github.com/angular/components/commit/77d6b69e7789d97220afac64144e8025c5960353) | fix | **checkbox:** breaking changes for v20 | | [907815dc5](https://github.com/angular/components/commit/907815dc5cecc2b56d54fd9c525b1e37fb9002be) | fix | **checkbox:** hardcode token renames ([#&#8203;30752](https://github.com/angular/components/pull/30752)) | | [f01ac6e9c](https://github.com/angular/components/commit/f01ac6e9c8bfce3056ed79937900469c1c262e69) | fix | **checkbox:** resolve change after checked error | | [aba4c4437](https://github.com/angular/components/commit/aba4c44371c119e1c95e52874d58d50a13e6e296) | fix | **chips:** chip input not showing placeholder ([#&#8203;30664](https://github.com/angular/components/pull/30664)) | | [33795a1a1](https://github.com/angular/components/commit/33795a1a138cb4930b9e20773403ec712e0ace73) | fix | **chips:** implement disabledInteractive in chip input ([#&#8203;30665](https://github.com/angular/components/pull/30665)) | | [92bcc67c2](https://github.com/angular/components/commit/92bcc67c2d2be8c9560c0e1ab59598b20f7753da) | fix | **core:** include density tokens in system theme ([#&#8203;30845](https://github.com/angular/components/pull/30845)) | | [5bc01c398](https://github.com/angular/components/commit/5bc01c3984d2c45582b945a7e15e2b5613bc26f1) | fix | **datepicker:** resolve change after checked errors | | [227e83d24](https://github.com/angular/components/commit/227e83d242a83d680d8cd39b36f6385c9f653102) | fix | **dialog:** breaking changes for v20 | | [a5aade2df](https://github.com/angular/components/commit/a5aade2df3a34532924365c3ac797e4b343633f6) | fix | **form-field:** preserve aria-describedby set externally across all form controls ([#&#8203;30699](https://github.com/angular/components/pull/30699)) | | [ec538b598](https://github.com/angular/components/commit/ec538b598bb7e4b5184d460de852b31523b99710) | fix | **form-field:** use ResizeObserver for label offset calculation ([#&#8203;30702](https://github.com/angular/components/pull/30702)) | | [d120f973f](https://github.com/angular/components/commit/d120f973f8bc1f665a1d7bda9b6bacc92b4c18fb) | fix | **list:** resolve changed after checked error | | [fd162d201](https://github.com/angular/components/commit/fd162d201807670f7eebd6e55fa0ba544a3cabfd) | fix | **schematics:** add schematic to rename tokens ([#&#8203;31051](https://github.com/angular/components/pull/31051)) | | [db090cac3](https://github.com/angular/components/commit/db090cac310118915c91cec6187ef9c1cfa7ced5) | fix | **select:** breaking changes for v20 | | [688c430fe](https://github.com/angular/components/commit/688c430fe8df09152ee59eb8a2ca62b5ba2fb81e) | fix | **select:** close panel on detach output event ([#&#8203;30634](https://github.com/angular/components/pull/30634)) | | [12f96e229](https://github.com/angular/components/commit/12f96e2297d04782246c5e726da33722168e2c35) | fix | **select:** resolve change after checked errors | | [404868707](https://github.com/angular/components/commit/40486870719f8d6a12ee8144e690d4225d41a704) | fix | **sidenav:** resolve changed after checked error | | [c6ad44c68](https://github.com/angular/components/commit/c6ad44c68d478833ddfa5d55a14922921f858771) | fix | **slide-toggle:** breaking changes for v20 | | [d3a8c5b89](https://github.com/angular/components/commit/d3a8c5b8921c057a7655b44e2e6fc7c282b66b0b) | fix | **slide-toggle:** opacity tokens not being used ([#&#8203;30946](https://github.com/angular/components/pull/30946)) | | [2d86ad441](https://github.com/angular/components/commit/2d86ad441eeb3ec5fac3e99d7c9081db356615b3) | fix | **slider:** fix clobbered token for hover/focus/pressed ([#&#8203;30754](https://github.com/angular/components/pull/30754)) | | [0e985f2c6](https://github.com/angular/components/commit/0e985f2c671b6472f6c4f5c3ecdce11e3c1c85f3) | fix | **slider:** handle null values in slider input ([#&#8203;30621](https://github.com/angular/components/pull/30621)) | | [8b033742b](https://github.com/angular/components/commit/8b033742b68c08b733e2df4caf0fe0ced61db57a) | fix | **snack-bar:** change politeness level ([#&#8203;30851](https://github.com/angular/components/pull/30851)) | | [40d0ab4fc](https://github.com/angular/components/commit/40d0ab4fc73f059cb5496c4c035d4dcebc08b8b0) | fix | **snack-bar:** rename snackbar token prefix ([#&#8203;30750](https://github.com/angular/components/pull/30750)) | | [0cf6ba107](https://github.com/angular/components/commit/0cf6ba1076dff1a7ec9f6e6c88f39a71751bb5d9) | fix | **stepper:** done icon tokens not emitted in M3 ([#&#8203;30996](https://github.com/angular/components/pull/30996)) | | [e1f97f920](https://github.com/angular/components/commit/e1f97f920bbcf0c653d2ea743d7deb5af12cfde6) | fix | **stepper:** resolve changed after checked errors | | [c63b1fe7b](https://github.com/angular/components/commit/c63b1fe7b340796d21492b9ccc28e91df6464f37) | fix | **tabs:** flicker when animationDuration is set to zero ([#&#8203;30966](https://github.com/angular/components/pull/30966)) | | [922c678c0](https://github.com/angular/components/commit/922c678c0790161c5b9dc001393e82fafc607025) | fix | **tabs:** not emitting token in M3 ([#&#8203;31136](https://github.com/angular/components/pull/31136)) | | [1a800decc](https://github.com/angular/components/commit/1a800decc8656ae118c64394647b5481bb32379b) | fix | **tabs:** resolve change after checked errors | | [6c9678e69](https://github.com/angular/components/commit/6c9678e6902f13a841511df671efc724720cca1e) | perf | **form-field:** set notch outline variable only on relevant element ([#&#8203;30955](https://github.com/angular/components/pull/30955)) | | [10a6ea493](https://github.com/angular/components/commit/10a6ea493bf8fd845a7fec81ff2036488812d67f) | perf | **form-field:** split DOM accesses into read and write ([#&#8203;31086](https://github.com/angular/components/pull/31086)) | ##### cdk | Commit | Type | Description | | -- | -- | -- | | [06821d85a](https://github.com/angular/components/commit/06821d85a0d75648fcc936c714f333908d5be017) | feat | **dialog:** add closePredicate option | | [cf619601a](https://github.com/angular/components/commit/cf619601a8b58aa44bcbbb4793d4ee8a9d9de3ec) | feat | **drag-drop:** introduce `resetToBoundary` ([#&#8203;30436](https://github.com/angular/components/pull/30436)) | | [77c8534ff](https://github.com/angular/components/commit/77c8534ff17174998045d5fd857ab139a403e64a) | fix | **accordion:** resolve changed after checked error | | [1167d0638](https://github.com/angular/components/commit/1167d063882d8f85f30c682244f92804f59afc2b) | fix | **collections:** breaking changes for v20 | | [79e887219](https://github.com/angular/components/commit/79e887219316c5d606d687c7a31fc387507da40e) | fix | **dialog:** breaking changes for v20 | | [a2ab84da1](https://github.com/angular/components/commit/a2ab84da1788075dadcf653c007abe9f9ac00e43) | fix | **dialog:** provide proper shaped Directionality ([#&#8203;30898](https://github.com/angular/components/pull/30898)) | | [b3e516f2d](https://github.com/angular/components/commit/b3e516f2d1d0cb09b6e1c150d094717f8e68dee3) | fix | **drag-drop:** breaking changes for v20 | | [69eedd75f](https://github.com/angular/components/commit/69eedd75f79ceec549ecaf0a8dfc38c36e33f02a) | fix | **drag-drop:** incorrect type DragConstrainPosition ([#&#8203;30510](https://github.com/angular/components/pull/30510)) | | [f9973ee23](https://github.com/angular/components/commit/f9973ee231166e02bb176f5c6172f1d4a1e0bfef) | fix | **overlay:** use MutationObserver to detach overlay ([#&#8203;30703](https://github.com/angular/components/pull/30703)) | | [11599f808](https://github.com/angular/components/commit/11599f808f823b38e7c3eca99fb5bbf1b48ad922) | fix | **portal:** remove deprecated symbols ([#&#8203;30584](https://github.com/angular/components/pull/30584)) | | [87501e866](https://github.com/angular/components/commit/87501e8662e1bd551376cd452fdd181b4091751c) | fix | **schematics:** support project index file discovery for object-form and default ([#&#8203;30967](https://github.com/angular/components/pull/30967)) | | [8078efc21](https://github.com/angular/components/commit/8078efc21403d5fc83a0cb40a17df43b64a28c67) | fix | **table:** breaking changes for v20 | | [0f48b04dd](https://github.com/angular/components/commit/0f48b04dd340461811f974d112c05374a5fb1a4a) | fix | **table:** move out unused style scheduler ([#&#8203;30963](https://github.com/angular/components/pull/30963)) | | [6ffe9c748](https://github.com/angular/components/commit/6ffe9c748ef85cea8c7af1018962d5807a78a8ee) | fix | **table:** remove private symbols from public API ([#&#8203;30956](https://github.com/angular/components/pull/30956)) | | [08f4acfef](https://github.com/angular/components/commit/08f4acfefd57bcc213e34ac399f04c3923c53e26) | perf | **overlay:** add tree-shakeable alternatives for overlay APIs ([#&#8203;30904](https://github.com/angular/components/pull/30904)) | ##### material-angular-io | Commit | Type | Description | | -- | -- | -- | | [3a1a0b368](https://github.com/angular/components/commit/3a1a0b3685866103d297b80b1b6bbb27b95fb307) | fix | streamline directive and component metadata handling in dgeni ([#&#8203;30661](https://github.com/angular/components/pull/30661)) | ##### multiple | Commit | Type | Description | | -- | -- | -- | | [e1cf2844f](https://github.com/angular/components/commit/e1cf2844f047bfd044cb8b5306faad4bdc09bdbd) | fix | avoid repeating selectors in m3 themes ([#&#8203;30645](https://github.com/angular/components/pull/30645)) | | [3465f9271](https://github.com/angular/components/commit/3465f9271811733fb623536af0e53cd529b4b2a9) | fix | ensure mat-option parents are the offsetParent ([#&#8203;30977](https://github.com/angular/components/pull/30977)) | | [cb3b0a87a](https://github.com/angular/components/commit/cb3b0a87a7528aa2f3525f951a021398821df970) | fix | ensure re-exported module symbols can be imported ([#&#8203;30667](https://github.com/angular/components/pull/30667)) | | [590971359](https://github.com/angular/components/commit/590971359f053f93e891d84d8544c6295d6d321e) | fix | remove backwards-compatibility code ([#&#8203;30747](https://github.com/angular/components/pull/30747)) | | [cda5c8e68](https://github.com/angular/components/commit/cda5c8e686b0c4394b382db08c2d0b4b793ac7d6) | fix | remove remaining references to ComponentFactoryResolver ([#&#8203;30569](https://github.com/angular/components/pull/30569)) | | [5229fe0a0](https://github.com/angular/components/commit/5229fe0a0824a94baf1c595b798ae11fd19f1a09) | fix | rename hardcoded tokens that were renamed ([#&#8203;30807](https://github.com/angular/components/pull/30807)) | | [9bf4be9e2](https://github.com/angular/components/commit/9bf4be9e231add2698324f020ef2c8c3c28769cc) | fix | rename token prefixes to match components ([#&#8203;30802](https://github.com/angular/components/pull/30802)) | | [32353fb3a](https://github.com/angular/components/commit/32353fb3ab97de9a5617115b92dafa667d53f1e0) | fix | resolve directive host binding issues ([#&#8203;30606](https://github.com/angular/components/pull/30606)) | | [48894ad55](https://github.com/angular/components/commit/48894ad5570e3dfdbd3e2128ebcd88c206d80733) | fix | use DI token for tag name ([#&#8203;30892](https://github.com/angular/components/pull/30892)) | <!-- CHANGELOG SPLIT MARKER --> </details> <details> <summary>FortAwesome/angular-fontawesome (@&#8203;fortawesome/angular-fontawesome)</summary> ### [`v2.0.1`](https://github.com/FortAwesome/angular-fontawesome/blob/HEAD/CHANGELOG.md#201-2025-06-02) [Compare Source](https://github.com/FortAwesome/angular-fontawesome/compare/2.0.0...2.0.1) ##### Fixed - Restored possibility to set inputs to `undefined`. ### [`v2.0.0`](https://github.com/FortAwesome/angular-fontawesome/blob/HEAD/CHANGELOG.md#200-2025-05-31) [Compare Source](https://github.com/FortAwesome/angular-fontawesome/compare/1.0.0...2.0.0) Converted all library internal component implementation to use reactive Signal APIs. Make sure to check [upgrade instructions](https://github.com/FortAwesome/angular-fontawesome/blob/master/UPGRADING.md). ##### Added - Support for Angular 20. - Documentation on changes in Programmatic API. - Documentation for upgrading 1.0.0 to 2.0.0 - Updated code to use signal APIs like signal, computed, effect, input, model. - Updated `changeDetection: ChangeDetectionStrategy.OnPush` 🚀 for all components. ##### Removed - Deprecated the `render` function from the `FaIconComponent`. - Programmatic API has changed, [please refer here](https://github.com/FortAwesome/angular-fontawesome/blob/master/docs/usage/features.md#programmatic-api) and migration guide [1.0.0 to 2.0.0](docs/upgrading/1.0.0-2.0.0.md) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MC4zMy45IiwidXBkYXRlZEluVmVyIjoiNDAuMzkuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
Renovate force-pushed renovate/major-dependencies-(major-and-minor) from 31e47f381c to 252495337d 2025-05-31 19:02:09 +00:00 Compare
Renovate changed title from fix(deps): update dependencies (major and minor) to v20 (major) to fix(deps): update dependencies (major and minor) (major) 2025-05-31 19:02:12 +00:00
Renovate force-pushed renovate/major-dependencies-(major-and-minor) from 252495337d to 6d10d1c8d6 2025-06-01 11:02:36 +00:00 Compare
Renovate force-pushed renovate/major-dependencies-(major-and-minor) from 6d10d1c8d6 to b061e14b53 2025-06-01 12:02:24 +00:00 Compare
Renovate force-pushed renovate/major-dependencies-(major-and-minor) from b061e14b53 to 1c75c5c5fe 2025-06-02 13:02:46 +00:00 Compare
Renovate force-pushed renovate/major-dependencies-(major-and-minor) from 1c75c5c5fe to f5b6d61647 2025-06-03 06:09:22 +00:00 Compare
Renovate force-pushed renovate/major-dependencies-(major-and-minor) from f5b6d61647 to 794a64e9a6 2025-06-03 07:02:04 +00:00 Compare
Renovate force-pushed renovate/major-dependencies-(major-and-minor) from 794a64e9a6 to 6a8366f5a4 2025-06-03 08:02:16 +00:00 Compare
forgejo-actions added the
frontend
label 2025-06-03 08:04:53 +00:00
Renovate force-pushed renovate/major-dependencies-(major-and-minor) from 6a8366f5a4 to d68e907061 2025-06-03 08:47:33 +00:00 Compare
forgejo-actions added the
size
small
label 2025-06-03 08:50:08 +00:00
Renovate changed title from fix(deps): update dependencies (major and minor) (major) to fix(deps): update dependencies (major and minor) (major) - autoclosed 2025-06-04 06:51:03 +00:00
Renovate closed this pull request 2025-06-04 06:51:03 +00:00
Commenting is not possible because the repository is archived.
No reviewers
No milestone
No project
No assignees
1 participant
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: SZUT/casino#243
No description provided.