Skip to content

Conversation

angular-robot
Copy link
Contributor

@angular-robot angular-robot commented Sep 16, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@angular/animations (source) ^20.2.0 -> ^21.0.0-next age adoption passing confidence
@angular/build ^20.2.0 -> ^21.0.0-next age adoption passing confidence
@angular/cdk ^20.2.0 -> ^21.0.0-next age adoption passing confidence
@angular/cli ^20.2.0 -> ^21.0.0-next age adoption passing confidence
@angular/common (source) ^20.2.0 -> ^21.0.0-next age adoption passing confidence
@angular/compiler (source) ^20.2.0 -> ^21.0.0-next age adoption passing confidence
@angular/compiler-cli (source) ^20.2.0 -> ^21.0.0-next age adoption passing confidence
@angular/core (source) ^20.2.0 -> ^21.0.0-next age adoption passing confidence
@angular/forms (source) ^20.2.0 -> ^21.0.0-next age adoption passing confidence
@angular/material ^20.2.0 -> ^21.0.0-next age adoption passing confidence
@angular/platform-browser (source) ^20.2.0 -> ^21.0.0-next age adoption passing confidence
@angular/platform-server (source) ^20.2.0 -> ^21.0.0-next age adoption passing confidence
@angular/router (source) ^20.2.0 -> ^21.0.0-next age adoption passing confidence
@angular/ssr ^20.2.0 -> ^21.0.0-next age adoption passing confidence

Release Notes

angular/angular (@​angular/animations)

v21.0.0-next.4

Compare Source

Breaking Changes

common
  • ngComponentOutletContent is now of type Node[][] | undefined instead of any[][] | undefined.
core
  • Using a combination of provideZoneChangeDetection
    while 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.
  • Angular no longer provides a change detection scheduler
    for ZoneJS-based change detection by default. Add
    provideZoneChangeDetection to the providers of your
    bootstrapApplication function or your AppModule (if using
    bootstrapModule). This provider addition will be covered by an
    automated migration.
  • moduleId was removed from Component metadata.
  • The interpolation option on Components has been removed. Only the default {{ ... }} is now supported.
common
Commit Type Description
7a4b225c57 refactor improve typing of ngComponentOutletContent (#​63674)
compiler
Commit Type Description
803dc8e44c fix Add support for aria-invalid (#​63748)
compiler-cli
Commit Type Description
89cf62f907 fix only bind inputs that are part of microsyntax to a structural directive (#​52453)
7fd3db0423 fix remove internal syntax-related flags (#​63787)
0a60e355e1 fix signal not invoked diagnostic not raised when input has same name in template (#​63754)
core
Commit Type Description
809a4ed8c1 feat Add migration for zoneless by default. (#​63042)
1352fbdbf2 fix Drop special-case disables automatic change detection scheduling (#​63846)
3d6eeab2e0 fix prevent animation events from being cleaned up on destroy (#​63414)
a4001c440f fix Prevent leave animations on a move operation (#​63745)
45fed3d201 fix Remove Zone-based change provider from internals by default (#​63382)
a5e5dbbc16 refactor remove moduleId from Component metadata (#​63482)
9a16718b13 refactor remove deprecated interpolation option on Components. (#​63474)
forms
Commit Type Description
d201cd2c2b feat Prevents marking fields as touched/dirty when state is hidden/readonly/disabled (#​63633)
migrations
Commit Type Description
8dc8914c8a feat add migration to convert ngStyle to use style (#​63517)
4133b08d93 fix fix route-lazy-loading migration (#​63818)

v21.0.0-next.3

Compare Source

Breaking Changes

compiler-cli
    • Previously hidden type issues in host bindings may show up in your builds. Either resolve the type issues or set "typeCheckHostBindings": false in the angularCompilerOptions section of your tsconfig.
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.ts files to pass the BootstrapContext to the bootstrapApplication call.

    In addition, getPlatform() and destroyPlatform() will now return null and be a no-op respectively when running in a server environment.

    • TypeScript versions less than 5.9 are no longer supported.
Commit Type Description
ef025880cc fix remove refresh button from transfer state tab (#​63592)
compiler-cli
Commit Type Description
0571b335b9 feat enable type checking of host bindings by default (#​63654)
core
Commit Type Description
28926ba92c feat introduce BootstrapContext for improved server bootstrapping (#​63562)
c0791e1887 fix drop support for TypeScript 5.8 (#​63589)
migrations
Commit Type Description
655a99d0c6 fix fix bug in ngclass-to-class migration (#​63617)

v21.0.0-next.2

Compare Source

Breaking Changes

common
  • (test only) - TestBed now provides a fake PlatformLocation
    implementation 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 for TestBed by providing the MockPlatformLocation from
    @angular/common/testing in your providers:
    {provide: PlatformLocation, useClass: MockPlatformLocation}
core
  • (test only) - Using provideZoneChangeDetection in the
    TestBed providers would previously prevent TestBed from rethrowing
    errors as it should. Errors in the test will now be rethrown, regardless
    of the usage of provideZoneChangeDetection. Tests should be adjusted to
    prevent or account for these errors. As in previous major versions,
    this behavior can be disabled with rethrowApplicationErrors: false in
    configureTestingModule as a last resort.
  • ignoreChangesOutsideZone is no longer available as an
    option for configuring ZoneJS change detection behavior.
platform-browser
  • The deprecated ApplicationConfig export from @angular/platform-browser has been removed.
    Please import ApplicationConfig from @angular/core instead.
router
  • 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
  • UpgradeAdapter is no longer available. Use
    upgrade/static instead
common
Commit Type Description
c795960ada feat Add experimental support for the Navigation API (#​63406)
compiler
Commit Type Description
0a82138d4b fix fixes regression with event parsing and animate prefix (#​63470)
core
Commit Type Description
538de86a72 fix avoid injecting internal error handler from a destroyed injector (#​62275)
d399d7d02b fix Explicit Zone CD in TestBed providers should not override TestBed error handler (#​63404)
ed3d1f246b fix Fix cancellation of animation enter classes (#​63442)
06f4fd4456 fix Fixed inject migration schematics for migrate destructured properties (#​62832)
9ae9875384 fix Prevent an error on cleanup when an rxResource stream threw before returning an Observable (#​63342)
92e09adc0a fix Remove ignoreChangesOutsideZone option (#​62700)
forms
Commit Type Description
b8314bd340 feat add experimental signal-based forms (#​63408)
10ef96adb3 fix consistent treatment of empty (#​63456)
http
Commit Type Description
07e678872f feat Add reponseType property to HttpResponse and HttpErrorResponse (#​63043)
platform-browser
Commit Type Description
ce8db665f9 refactor remove deprecated ApplicationConfig export (#​63529)
platform-server
Commit Type Description
ee73dc9553 fix prevent false warning for duplicate state serialization (#​63525)
router
Commit Type Description
5b53535dd1 fix Update recognize stage to use internally async/await (#​62994)
upgrade
Commit Type Description
f86846555b fix Remove deprecated UpgradeAdapter (#​61659)

v21.0.0-next.1

Compare Source

Breaking Changes

common
  • NgModuleFactory has been removed, use NgModule instead.
forms
  • This new directive will conflict with existing FormArray directives or formArray inputs on the same element.
common
Commit Type Description
25f593ce2a refactor removengModuleFactory input of NgComponentOutlet (#​62838)
compiler
Commit Type Description
a0388409e3 fix fixes animations on elements with structural directives (#​63390)
827c3c15f4 fix Keep paraenthesis in Nullish + Boolean expression. (#​63292)
core
Commit Type Description
37ead5ffb5 fix Ensures @for loop animations never get cancelled (#​63328)
18c9352d21 fix fix memory leak with leaving nodes tracking (#​63328)
9139fe0d95 fix Fixes animate.leave binding to a string with spaces (#​63366)
forms
Commit Type Description
0dd95c503f feat Add FormArrayDirective (#​55880)
migrations
Commit Type Description
6ddb250391 feat add migration to convert ngClass to use class (#​62983)

v21.0.0-next.0

Compare Source

Breaking Changes

compiler-cli
  • The Angular compiler now produces an error when the
    the emitDeclarationOnly TS compiler option is enabled as this mode is
    not supported.
router
  • lastSuccessfulNavigation is now a signal and needs to be invoked
compiler-cli
Commit Type Description
be7110342b fix disallow compiling with the emitDeclarationOnly TS compiler option enabled (#​61609)
http
Commit Type Description
4bed062bc9 feat Provide http services in root (#​56212)
router
Commit Type Description
4e0fc81491 feat convert lastSuccessfulNavigation to signal (#​63057)

v20.3.1

Compare Source

compiler
Commit Type Description
7fb5a8087e fix Add support for aria-invalid (#​63748)
compiler-cli
Commit Type Description
8843707919 fix only bind inputs that are part of microsyntax to a structural directive (#​52453)
38c9921ff3 fix signal not invoked diagnostic not raised when input has same name in template (#​63754)
core
Commit Type Description
802dbcc2a0 fix prevent animation events from being cleaned up on destroy (#​63414)
3ec8a5c753 fix Prevent leave animations on a move operation (#​63745)
migrations
Commit Type Description
6e54bdfdcb fix fix route-lazy-loading migration (#​63818)

v20.3.0

Compare Source

Breaking Changes

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.ts files to pass the BootstrapContext to the bootstrapApplication call.

    In addition, getPlatform() and destroyPlatform() will now return null and be a no-op respectively when running in a server environment.

    (cherry picked from commit 8bf80c9)

Commit Type Description
a3f808d7c8 fix remove refresh button from transfer state tab (#​63592)
core
Commit Type Description
6117ccee2e feat introduce BootstrapContext for improved server bootstrapping (#​63636)
angular/angular-cli (@​angular/build)

v21.0.0-next.4

Compare Source

@​angular/build
Commit Type Description
a908bf3d4 feat add 'filter' option to unit-test builder
c0b00d78e feat add reporter output file option for unit-test
66dd6dd83 feat allow options for unit test reporters
43fc5536f fix add timestamp to bundle generation log
c6176f6df fix add upfront dependency validation for unit-test runners
69c3b1226 fix improve error handling in unit-test builder
dae732059 fix serve build assets and styles in vitest

v21.0.0-next.3

Compare Source

Breaking Changes

@​angular/build
    • TypeScript versions older than 5.9 are no longer supported.
@​angular/ssr
  • 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);
@​schematics/angular
Commit Type Description
ddebe3d4f fix align labels in ai-config schema
8e6e0a293 fix remove explicit flag for host bindings
b983ea8e5 fix respect skip-install for tailwind schematic
@​angular/cli
Commit Type Description
d014630fa feat add advanced filtering to MCP example search
1ee9ce3c9 feat promote MCP find_examples tool to a stable tool
dbf1aaf70 fix add snippet support to example search MCP tool
11cee1acb fix correct boolean parsing in MCP example front matter
def412a55 fix enhance find_examples MCP tool with structured output
2037b912b fix improve bun lockfile detection and optimize lockfile checks
@​angular-devkit/build-angular
Commit Type Description
9749ec687 fix avoid extra tick in SSR builds
@​angular/build
Commit Type Description
cd5c92b99 fix correct Vitest coverage reporting for test files
1529595d4 fix drop support for TypeScript 5.8
58da860fc fix preserve names in esbuild for improved debugging in dev mode
26127bd3b fix resolve PostCSS plugins relative to config file
@​angular/ssr
Commit Type Description
f0b0980fb feat introduce BootstrapContext for isolated server-side rendering

v21.0.0-next.2

Compare Source

@​angular/cli
Commit Type Description
301b50da4 feat add fallback support for packages without direct ng add functionality
2c498d2b8 fix don't set a default for array options when length is 0
f099c9157 fix improve list_projects MCP tool to find all workspaces in monorepos
[e192e8c7e](https://redirect.github.com/angular/angular-cli/commit/e192e8c7ec

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 becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


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

This PR has been generated by Renovate Bot.

See associated pull request for more information.
@crisbeto
Copy link
Member

Closing since we want to use stable version of Angular here.

@crisbeto crisbeto closed this Sep 18, 2025
@angular-robot
Copy link
Contributor Author

Renovate Ignore Notification

Because you closed this PR without merging, Renovate will ignore this update. You will not get PRs for any future 21.x releases. But if you manually upgrade to 21.x then Renovate will re-enable minor and patch updates automatically.

If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.

@angular-robot angular-robot deleted the ng-renovate/cross-repo-angular-dependencies branch September 18, 2025 11:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants