Angular Schematics - CLI
Last release today
26 Aug 2026
Ships on a steady schedule
a new release about every 2 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
9 years old
1004 releases · first in 2018
Release timeline
1004 releases since 2018Releases
- 22.2.0-next.526 Aug 2026pre-release
Release notes
Open source →@angular/build
@angular/ssr
Commit Description abort web request signal when node request is aborted Additional notes
Open source →@angular/build
Commit Type Description 4d0be683b7 fix ignore side-effect annotations in unit test builds e4111ae818 fix prevent memory leaks in parallel compilation and caches 62999cabf4 perf batch prerender routes and share in-memory server bundles 0589edd9cd perf consolidate component stylesheet bundling with shared load result cache a877aa7ebd perf implement SharedArrayBuffer translation dictionaries for zero-copy worker access f1cc959439 perf implement sliding-window batching and worker translation eviction f4dad31cce perf unify Oxc linking and optimization AST traversal passes @angular/ssr
Commit Type Description f8576e3c8b fix abort web request signal when node request is aborted <!-- CHANGELOG SPLIT MARKER -->
<a name="22.1.6"></a>
- 22.2.0-next.419 Aug 2026pre-release
Release notes
Open source →@schematics/angular
Commit Description transform fail() to expect.fail() in refactor-jasmine-vitest @angular/cli
Commit Description enforce MCP roots in get_best_practices tool handle errors from isAllowedWorkspacePath in best-practices tool throw on out-of-roots workspace in best-practices tool @angular/build
Additional notes
Open source →@angular/cli
Commit Type Description 34e1e0bb5 fix enforce MCP roots in get_best_practices tool 2b060630c fix handle errors from isAllowedWorkspacePath in best-practices tool 24fd8fce2 fix throw on out-of-roots workspace in best-practices tool @schematics/angular
Commit Type Description ce1b60f89 fix transform fail() to expect.fail() in refactor-jasmine-vitest @angular/build
Commit Type Description 175273931 feat Support splitting browser and server stats jsonfiles for easier consumption 1ee0beca7 fix correct misleading error message for top-level await 0ffe2d27f fix disable code splitting for unit test builds 50994d76e fix preserve integrity and crossorigin in autoCsp loader d6fd24320 perf traverse AST with iterative post-order walker in i18n inliner <!-- CHANGELOG SPLIT MARKER -->
<a name="22.1.5"></a>
- 22.2.0-next.313 Aug 2026pre-release
Release notes
Open source →@schematics/angular
Commit Description generate CLAUDE.md for Claude Code instead of AGENTS.md import UrlSegment instead of subPath in guard generator @angular/cli
@angular/build
@angular/ssr
Commit Description destroy platform when response stream is cancelled Additional notes
Open source →@schematics/angular
Commit Description generate CLAUDE.md for Claude Code instead of AGENTS.md import UrlSegment instead of subPath in guard generator @angular/cli
Commit Description disable searching current directory for bare executable names on Windows serialize configuration as a single argv token in run_target strategies (#33657) avoid eager module loading during global bootstrap @angular/build
@angular/ssr
Commit Description destroy platform when response stream is cancelled Additional notes
Open source →@angular/cli
Commit Type Description 7106676e6 fix disable searching current directory for bare executable names on Windows ecf8c0822 fix serialize configuration as a single argv token in run_target strategies (#33657) 2e4dd90c3 perf avoid eager module loading during global bootstrap @schematics/angular
Commit Type Description 1161e6c99 fix generate CLAUDE.md for Claude Code instead of AGENTS.md c536ae364 fix import UrlSegment instead of subPath in guard generator @angular/build
Commit Type Description 04b532772 fix count statically imported chunks in the initial total 2274babb6 fix normalize setupFiles paths to POSIX for vitest runner 199a864df fix prevent syntax corruption for Crockford-style enum IIFE 0d9851600 fix recursively ignore output and cache paths in watch mode 3eba6f726 fix return direct file contents for non-Angular TypeScript files 3c7ac1518 fix return only lowest version per target engine 3e9fed9a6 fix set target for Rolldown dependency prebundling in Vite dev server 87551ad5c perf avoid encoding intermediate source maps before remapping 194be2088 perf avoid encoding the inline source map before remapping a55a6b78e perf batch last_accessed updates in sqlite cache store 33b305416 perf hash the i18n inline cache key options once per locale 1c00edce0 perf optimize sourcemap stripping and loading with buffer fast path b6269a816 perf optimize template string size calculation in server manifest a6ef9cfbe perf replace watchpack with @parcel/watcher and chokidar 596847f89 perf share i18n translations with the inliner workers by reference 19c91e48d perf use Map for chunk asset size lookups in budget calculator @angular/ssr
Commit Type Description 6a3446770 fix destroy platform when response stream is cancelled <!-- CHANGELOG SPLIT MARKER -->
<a name="22.1.4"></a>
- 22.2.0-next.25 Aug 2026pre-release
Release notes
Open source →@angular/build
Commit Description disable linker internal source mapping in OXC linker prevent syntax corruption in linker and oxc transform Additional notes
Open source →@angular/build
Commit Description disable linker internal source mapping in OXC linker prevent syntax corruption in linker and oxc transform Additional notes
Open source →@angular/build
Commit Type Description 7e5510e464 fix disable linker internal source mapping in OXC linker bad31421cb fix prevent syntax corruption in linker and oxc transform <!-- CHANGELOG SPLIT MARKER -->
<a name="22.2.0-next.1"></a>
- 22.2.0-next.15 Aug 2026pre-release
Release notes
Open source →@angular/cli
@angular/build
@angular/ssr
Commit Description settle writeResponseToNodeResponse when client disconnects avoid buffering request body when sanitizing headers Additional notes
Open source →@angular/cli
Commit Description add --rootcommand line option tomcpcommandadd packages with built-in schematics to devDependencies only always install package during ng add to inspect manifest on disk for schematics (#33718) correctly report available package updates during bare ng update discover migrations from installed packages when omitted by registry metadata (#33718) normalize Windows drive-letter casing for process.cwd @angular/build
Commit Description migrate Angular Linker to oxc-parser and magic-string prevent build process hang on unhandled error (#33715) prevent IIFE wrapper interleaving for adjacent classes in minified files retain watch files on error in load result cache support case-insensitive and alternative license file names release build resources early in non-watch mode (#33715) @angular/ssr
Commit Description settle writeResponseToNodeResponse when client disconnects avoid buffering request body when sanitizing headers Additional notes
Open source →@angular/cli
Commit Type Description 41555dfb3b feat add --rootcommand line option tomcpcommand035b9d5c9b fix add packages with built-in schematics to devDependencies only 0ae5690c35 fix always install package during ng add to inspect manifest on disk for schematics (#33718) 44ff584b33 fix correctly report available package updates during bare ng update 1d4f9ebbe9 fix discover migrations from installed packages when omitted by registry metadata (#33718) 25034f97ad fix normalize Windows drive-letter casing for process.cwd @angular/build
Commit Type Description ad8271320f feat migrate Angular Linker to oxc-parser and magic-string 4fb12292c2 fix prevent build process hang on unhandled error (#33715) abd8ec9f3e fix prevent IIFE wrapper interleaving for adjacent classes in minified files bcadbbef20 fix retain watch files on error in load result cache e1c7193dce fix support case-insensitive and alternative license file names f4a0f846e7 perf release build resources early in non-watch mode (#33715) @angular/ssr
Commit Type Description b74eef889f fix settle writeResponseToNodeResponse when client disconnects 33169801c6 perf avoid buffering request body when sanitizing headers <!-- CHANGELOG SPLIT MARKER -->
<a name="22.1.3"></a>
- 22.2.0-next.030 Jul 2026pre-release
Release notes
Open source →@angular/cli
Commit Description support npm 12 metadata array and error formats @angular/build
Commit Description rewrite paths from sandboxed execroots when running under Bazel Additional notes
Open source →@angular/cli
Commit Type Description e148a8df93 fix support npm 12 metadata array and error formats @angular/build
Commit Type Description 6469b5f1f5 fix rewrite paths from sandboxed execroots when running under Bazel <!-- CHANGELOG SPLIT MARKER -->
<a name="22.1.0"></a>
- 22.1.626 Aug 2026
Release notes
Open source →@angular/build
Commit Description ignore side-effect annotations in unit test builds batch prerender routes and share in-memory server bundles @angular/ssr
Commit Description abort web request signal when node request is aborted Additional notes
Open source →@angular/build
Commit Type Description 3f132eaa97 fix ignore side-effect annotations in unit test builds 5b1028936f perf batch prerender routes and share in-memory server bundles @angular/ssr
Commit Type Description 76818cb811 fix abort web request signal when node request is aborted <!-- CHANGELOG SPLIT MARKER -->
<a name="21.2.22"></a>
- 22.1.519 Aug 2026
Release notes
Open source →@schematics/angular
Commit Description transform fail() to expect.fail() in refactor-jasmine-vitest @angular/cli
Commit Description enforce MCP roots in get_best_practices tool handle errors from isAllowedWorkspacePath in best-practices tool throw on out-of-roots workspace in best-practices tool @angular/build
Additional notes
Open source →@angular/cli
Commit Type Description e672271f8 fix enforce MCP roots in get_best_practices tool a14916cc4 fix handle errors from isAllowedWorkspacePath in best-practices tool d6e1cddff fix throw on out-of-roots workspace in best-practices tool @schematics/angular
Commit Type Description ba2b0e4c2 fix transform fail() to expect.fail() in refactor-jasmine-vitest @angular/build
Commit Type Description cba72902d fix correct misleading error message for top-level await b4679998c fix disable code splitting for unit test builds ff1d3565e fix preserve integrity and crossorigin in autoCsp loader 1fc1fb05c perf traverse AST with iterative post-order walker in i18n inliner <!-- CHANGELOG SPLIT MARKER -->
<a name="22.2.0-next.3"></a>
- 22.1.413 Aug 2026
Release notes
Open source →@schematics/angular
Commit Description generate CLAUDE.md for Claude Code instead of AGENTS.md import UrlSegment instead of subPath in guard generator @angular/cli
@angular/build
@angular/ssr
Commit Description destroy platform when response stream is cancelled Additional notes
Open source →@schematics/angular
Commit Description generate CLAUDE.md for Claude Code instead of AGENTS.md import UrlSegment instead of subPath in guard generator @angular/cli
Commit Description disable searching current directory for bare executable names on Windows serialize configuration as a single argv token in run_target strategies (#33657) avoid eager module loading during global bootstrap @angular/build
@angular/ssr
Commit Description destroy platform when response stream is cancelled Additional notes
Open source →@angular/cli
Commit Type Description 67a29899b fix disable searching current directory for bare executable names on Windows 1b0ba5c17 fix serialize configuration as a single argv token in run_target strategies (#33657) 9440432d2 perf avoid eager module loading during global bootstrap @schematics/angular
Commit Type Description d4a48e3ab fix generate CLAUDE.md for Claude Code instead of AGENTS.md d451f15b2 fix import UrlSegment instead of subPath in guard generator @angular/build
Commit Type Description 46fcb29d6 fix count statically imported chunks in the initial total 796b57684 fix normalize setupFiles paths to POSIX for vitest runner c805e5cfb fix prevent syntax corruption for Crockford-style enum IIFE cc6c17716 fix prevent syntax corruption in oxc transform a142f6f83 fix return direct file contents for non-Angular TypeScript files 956c6578d fix return only lowest version per target engine 689b5b116 fix set target for Rolldown dependency prebundling in Vite dev server 70461f6ed perf avoid encoding the inline source map before remapping 22cce7563 perf batch last_accessed updates in sqlite cache store ab2ed18d5 perf hash the i18n inline cache key options once per locale 34516ff73 perf optimize template string size calculation in server manifest 712971c37 perf share i18n translations with the inliner workers by reference 78f8c5fef perf use Map for chunk asset size lookups in budget calculator @angular/ssr
Commit Type Description 2331c1047 fix destroy platform when response stream is cancelled <!-- CHANGELOG SPLIT MARKER -->
<a name="21.2.21"></a>
- 22.1.35 Aug 2026
Release notes
Open source →@angular/cli
@angular/build
@angular/ssr
Commit Description settle writeResponseToNodeResponse when client disconnects avoid buffering request body when sanitizing headers Additional notes
Open source →@angular/cli
Commit Description always install package during ng add to inspect manifest on disk for schematics (#33718) correctly report available package updates during bare ng update discover migrations from installed packages when omitted by registry metadata (#33718) normalize Windows drive-letter casing for process.cwd @angular/build
Commit Description prevent build process hang on unhandled error (#33715) retain watch files on error in load result cache support case-insensitive and alternative license file names release build resources early in non-watch mode (#33715) @angular/ssr
Commit Description settle writeResponseToNodeResponse when client disconnects avoid buffering request body when sanitizing headers Additional notes
Open source →@angular/cli
Commit Type Description f837b788c6 fix always install package during ng add to inspect manifest on disk for schematics (#33718) 72ae93638d fix correctly report available package updates during bare ng update a949e06568 fix discover migrations from installed packages when omitted by registry metadata (#33718) 1d9122fd50 fix normalize Windows drive-letter casing for process.cwd @angular/build
Commit Type Description a4860d505a fix prevent build process hang on unhandled error (#33715) 7686d66cab fix retain watch files on error in load result cache 25b7cf7504 fix support case-insensitive and alternative license file names 4fd81402ce perf release build resources early in non-watch mode (#33715) @angular/ssr
Commit Type Description 6af906cb94 fix settle writeResponseToNodeResponse when client disconnects 917d3b2254 perf avoid buffering request body when sanitizing headers <!-- CHANGELOG SPLIT MARKER -->
<a name="21.2.20"></a>
- 22.1.230 Jul 2026
Release notes
Open source →@angular/cli
Commit Description add packages with built-in schematics to devDependencies only @angular/build
Commit Description prevent IIFE wrapper interleaving for adjacent classes in minified files Additional notes
Open source →@angular/cli
Commit Type Description 57db27ea91 fix add packages with built-in schematics to devDependencies only @angular/build
Commit Type Description baed978885 fix prevent IIFE wrapper interleaving for adjacent classes in minified files <!-- CHANGELOG SPLIT MARKER -->
<a name="22.1.1"></a>
- 22.1.130 Jul 2026
Release notes
Open source →@angular/cli
Commit Description support npm 12 metadata array and error formats @angular/build
Commit Description rewrite paths from sandboxed execroots when running under Bazel Additional notes
Open source →@angular/cli
Commit Type Description ab971a8543 fix support npm 12 metadata array and error formats @angular/build
Commit Type Description db24220fb8 fix rewrite paths from sandboxed execroots when running under Bazel <!-- CHANGELOG SPLIT MARKER -->
<a name="22.2.0-next.0"></a>
- 22.1.029 Jul 2026
Release notes
Open source →@angular/cli
@schematics/angular
Commit Description update ai-config to include Angular MCP server config remove unused spec tsconfig outDir @angular-devkit/core
Commit Description deprecate stringToFileBuffer and fileBufferToString @angular/build
@angular/ssr
Commit Description support the standard Forwarded header Deprecations
@angular-devkit/core
-
stringToFileBufferandfileBufferToStringare deprecated. Use standard Web APIs (TextEncoderandTextDecoder) instead.Internal usages within the repository have been removed and replaced with standard Web APIs. The public API golden file for
@angular-devkit/corehas been updated to reflect the deprecations.
Additional notes
Open source →Deprecations
@angular-devkit/core
-
stringToFileBufferandfileBufferToStringare deprecated. Use standard Web APIs (TextEncoderandTextDecoder) instead.Internal usages within the repository have been removed and replaced with standard Web APIs. The public API golden file for
@angular-devkit/corehas been updated to reflect the deprecations.
@schematics/angular
Commit Type Description 89d7f59cd feat update ai-config to include Angular MCP server config b345bb54d fix remove unused spec tsconfig outDir @angular/cli
Commit Type Description f59bcf529 fix abort and guide manual mitigation when updating catalog packages 48f90f5d5 fix prevent Yarn registry environment variable override c963ecbec fix remove algoliasearch dependency and support latest docs versions 6859d25c3 fix resolve correct registry name when using npm alias syntax during update 3a2589dac fix respect client-side release age settings during update resolution 5c3101bff fix revert package.json changes if installation tasks fail during update 7932caaf9 fix robustly parse npm manifest from array @angular-devkit/core
Commit Type Description fd336d365 refactor deprecate stringToFileBuffer and fileBufferToString @angular/build
Commit Type Description 34d558c3c feat add built-in SQLite cache store fallback 0c18dc0f6 feat emit debug ids for stable subresource integrity hashes 51f69276f feat enable chunk optimization for server builds 10dc30f9c feat migrate advanced optimization Babel plugins to oxc-parser + magic-string 917393a4c feat migrate i18n inliner to oxc-parser + magic-string 52ae7f862 feat share persistent build cache across git worktrees 95510511d fix add bounded timeout to vitest executor disposal 62b11e316 fix anchor debug ID comment matching and make injection idempotent 6d9b360e5 fix prevent esbuild service hang on internal component stylesheet builds 291caab61 fix prevent stripping nested sourceMappingURL comments 0e3ca3dfb fix support hyphens and underscores when stripping chunk hash in chunk optimizer 585d08af8 perf default chunk optimization to use Rolldown 09d0a11a8 perf enable fast-path AST printing with sourcemaps in AotCompilation @angular/ssr
Commit Type Description 7ef9ed24d feat support the standard Forwarded header <!-- CHANGELOG SPLIT MARKER -->
<a name="22.0.9"></a>
-
- 22.1.0-rc.023 Jul 2026pre-release
Release notes
Open source →@angular/cli
@angular/build
- 22.1.0-next.415 Jul 2026pre-release
Release notes
Open source →@schematics/angular
Commit Description remove unused spec tsconfig outDir @angular/cli
Commit Description copy packageManager field and yarn config for temp installs support resolving subproject dependencies in pnpm workspaces @angular/build
Commit Description emit debug ids for stable subresource integrity hashes prevent stripping nested sourceMappingURL comments - 22.1.0-next.39 Jul 2026pre-release
Release notes
Open source →@angular/build
@angular/ssr
Commit Description replace all route parameters when resolving relative redirects - 22.1.0-next.21 Jul 2026pre-release
Release notes
Open source →@schematics/angular
Commit Description remove unused app tsconfig outDir @angular/cli
@angular-devkit/build-angular
Commit Description prevent OS command injection in ssr-dev-server builder @angular/build
@angular/ssr
Commit Description preserve response headers during redirect - 22.1.0-next.124 Jun 2026pre-release
Release notes
Open source →@schematics/angular
Commit Description remove default workspace vscode mcp.json configuration @angular/cli
Commit Description prevent Yarn registry environment variable override support registry metadata fetching under bun package manager implement semaphore backpressure throttling in PackageManager @angular/build
@angular/ssr
Commit Description support the standard Forwarded header avoid caching non-SSG page lookups prioritize options over environment variables in AngularNodeAppEngine - 22.1.0-next.011 Jun 2026pre-release
Release notes
Open source →@angular/cli
Commit Description robustly parse npm manifest from array @schematics/angular
Commit Description update ai-config to include Angular MCP server config @angular-devkit/core
Commit Description deprecate stringToFileBuffer and fileBufferToString @angular/ssr
Commit Description correct grammar in console warning for redirected location headers Deprecations
@angular-devkit/core
-
stringToFileBufferandfileBufferToStringare deprecated. Use standard Web APIs (TextEncoderandTextDecoder) instead.Internal usages within the repository have been removed and replaced with standard Web APIs. The public API golden file for
@angular-devkit/corehas been updated to reflect the deprecations.
-
- 22.0.929 Jul 2026
Release notes
Open source →@angular/cli
Commit Description declare devserver_start and devserver_stop as isReadOnly:false @angular/build
Commit Description safeguard Karma builder stream controller against closed state Additional notes
Open source →@angular/cli
Commit Type Description 9ee8f9b669 fix declare devserver_start and devserver_stop as isReadOnly:false @angular/build
Commit Type Description d0c776d461 fix safeguard Karma builder stream controller against closed state <!-- CHANGELOG SPLIT MARKER -->
<a name="22.0.8"></a>
- 22.0.823 Jul 2026
Release notes
Open source →@angular/cli
Commit Description batch Prettier invocations during migration formatting update MCP devserver tool names to conform to spec regex @angular/build
Additional notes
Open source →@angular/cli
Commit Type Description 41c356256 fix batch Prettier invocations during migration formatting bc87c85c3 fix update MCP devserver tool names to conform to spec regex @angular/build
Commit Type Description 5724bf632 fix canonicalize drive letter casing for workspace root on Windows b8bdbaa1e fix ensure import map integrity keys are valid URL-like specifiers 212a7bb21 fix favor istanbul coverage provider when browser testing is enabled bc760b005 fix preserve custom config options in runnerConfig for vitest 19cda7415 fix remap metafile paths when workspace root is a symlink or junction fdcc98c79 perf skip semantic affected-file walk when type checking is disabled <!-- CHANGELOG SPLIT MARKER -->
<a name="22.0.7"></a>
- 22.0.715 Jul 2026
Release notes
Open source →@angular/cli
Commit Description copy packageManager field and yarn config for temp installs support resolving subproject dependencies in pnpm workspaces Additional notes
Open source →@angular/cli
Commit Type Description e85c10ccb fix copy packageManager field and yarn config for temp installs b87cafec0 fix support resolving subproject dependencies in pnpm workspaces <!-- CHANGELOG SPLIT MARKER -->
<a name="21.2.19"></a>
- 22.0.69 Jul 2026
Release notes
Open source →@angular/build
@angular/ssr
Commit Description replace all route parameters when resolving relative redirects Additional notes
Open source →@angular/build
Commit Type Description df49966c6 fix fallback to build target preserveSymlinks option in karma runner 9906add5b fix prevent externalizing builder-injected i18n locale data 070155f6e fix strip all vite id prefixes from minified code with external dependencies @angular/ssr
Commit Type Description c9aa354b1 fix replace all route parameters when resolving relative redirects <!-- CHANGELOG SPLIT MARKER -->
<a name="22.0.5"></a>
- 22.0.51 Jul 2026
Release notes
Open source →@schematics/angular
Commit Description remove unused app tsconfig outDir @angular/cli
Commit Description gracefully handle package manager errors in command handler respect release age policy in update bootstrapping logic @angular-devkit/build-angular
Commit Description prevent OS command injection in ssr-dev-server builder @angular/build
@angular/ssr
Commit Description preserve response headers during redirect Additional notes
Open source →@angular/cli
Commit Type Description f099e641c fix gracefully handle package manager errors in command handler cf033ec48 fix respect release age policy in update bootstrapping logic @schematics/angular
Commit Type Description 862a38069 fix remove unused app tsconfig outDir @angular-devkit/build-angular
Commit Type Description f75085f4b fix prevent OS command injection in ssr-dev-server builder @angular/build
Commit Type Description dfee1e7b1 fix auto-inject localize/init in library unit tests aba718403 fix inherit preserveSymlinks option from build target in unit-test builder 7c0d9f03c fix load zone.js dynamically for library unit tests 4288e4452 fix scope createRequire module resolution using paths to prevent parent paths @angular/ssr
Commit Type Description 5f774f891 fix preserve response headers during redirect <!-- CHANGELOG SPLIT MARKER -->
<a name="21.2.18"></a>
- 22.0.424 Jun 2026
Release notes
Open source →@angular/build
Commit Description aggregate parallel worker performance timings on the main thread dispose builder result context early in non-watch mode Additional notes
Open source →@angular/build
Commit Type Description 46185ceac fix aggregate parallel worker performance timings on the main thread 5d7e29c41 perf dispose builder result context early in non-watch mode <!-- CHANGELOG SPLIT MARKER -->
<a name="21.2.17"></a>
- 22.0.318 Jun 2026
Release notes
Open source →Additional notes
Open source →@schematics/angular
Commit Type Description 0eddea898 fix remove default workspace vscode mcp.json configuration <!-- CHANGELOG SPLIT MARKER -->
<a name="21.2.16"></a>
- 22.0.217 Jun 2026
Release notes
Open source →@angular/cli
Commit Description support registry metadata fetching under bun package manager implement semaphore backpressure throttling in PackageManager @angular/build
Commit Description implement semaphore backpressure throttling in JavaScriptTransformer @angular/ssr
Commit Description avoid caching non-SSG page lookups correct grammar in console warning for redirected location headers prioritize options over environment variables in AngularNodeAppEngine Additional notes
Open source →@angular/cli
Commit Type Description 136fc2714 fix support registry metadata fetching under bun package manager 2653dd5c7 perf implement semaphore backpressure throttling in PackageManager @angular/build
Commit Type Description 0b4a48add perf implement semaphore backpressure throttling in JavaScriptTransformer @angular/ssr
Commit Type Description d996a27e9 fix avoid caching non-SSG page lookups 285a34e42 fix correct grammar in console warning for redirected location headers c8088a536 fix prioritize options over environment variables in AngularNodeAppEngine <!-- CHANGELOG SPLIT MARKER -->
<a name="20.3.28"></a>
- 22.0.110 Jun 2026
Release notes
Open source →@schematics/angular
@angular/cli
@angular/build
Additional notes
Open source →@angular/cli
Commit Type Description b54e9a549 fix do not sort migrations of the same version alphabetically d33311612 fix fallback to local package.json for schematic detection on first run 918102a93 fix isolate temporary package installation from parent pnpm workspace b048b5f4a fix remove forceAuth and unscoped credential parsing 277934035 fix validate registry option is a valid URL in ng add 4510dae02 perf optimize update schematic registry query counts by fetching package metadata lazily @schematics/angular
Commit Type Description c80012294 fix fix browserMode option mapping in refactor-jasmine-vitest a9b6bd904 fix safely comment out multiline statements in refactor-jasmine-vitest 12199df00 fix use null objects and callbacks in karma-to-vitest migration @angular/build
Commit Type Description 89d1be979 fix allow disabling Vitest isolation from builder d45b84be9 fix exclude JSON imports from Vite dependency optimization e3cab4ddd fix prevent concurrent stylesheet bundling esbuild context leaks bd413b0eb fix restrict application builder output paths to output directory <!-- CHANGELOG SPLIT MARKER -->
<a name="22.0.0"></a>
- 22.0.03 Jun 2026
Release notes
Open source →@schematics/angular
@angular/cli
Commit Description update minimum supported Node.js versions remove @angular-devkit/architect-clipackageremove experimental Jest and Web Test Runner builders @angular-devkit/build-angular
Commit Description deprecate Webpack builders @angular-devkit/build-webpack
Commit Description deprecate webpack and webpack-dev-server builders @angular/build
@angular/ssr
@ngtools/webpack
Commit Description deprecate @ngtools/webpack loader and plugin Breaking Changes
- Node.js v20 is no longer supported. The minimum supported Node.js versions are now v22.22.0 and v24.13.1.
- The
@angular-devkit/architect-clipackage is no longer available. ThearchitectCLI tool has been moved to the@angular-devkit/architectpackage. - The experimental
@angular-devkit/build-angular:jestand@angular-devkit/build-angular:web-test-runnerbuilders have been removed.
@angular/build
- The
@angular/build:dev-server (ng serve)now assigns the highest priority to thePORTenvironment variable. This value will override any port configurations specified inangular.jsonor via the--portcommand-line flag. This includes the default port 4200. istanbul-lib-instrumentis now an optional peer dependency. Projects using karma with code coverage enabled will need to ensure that istanbul-lib-instrument is installed. Note:ng updatewill automatically add this dependency during the update process.
@angular/ssr
- The server no longer falls back to Client-Side Rendering (CSR) when a request fails host validation. Requests with unrecognized 'Host' headers will now return a 400 Bad Request status code. Users must ensure all valid hosts are correctly configured in the 'allowedHosts' option.
Deprecations
@angular-devkit/build-angular
- Webpack builders in build-angular are deprecated. Use @angular/build builders instead.
@angular-devkit/build-webpack
- Webpack builders in build-webpack are deprecated. Use @angular/build builders instead.
@angular/ssr
- CommonEngine APIs are deprecated in favor of AngularNodeAppEngine or AngularAppEngine.
@ngtools/webpack
- @ngtools/webpack loader and plugin are deprecated. Use @angular/build instead.
Additional notes
Open source →Breaking Changes
- Node.js v20 is no longer supported. The minimum supported Node.js versions are now v22.22.0 and v24.13.1.
- The
@angular-devkit/architect-clipackage is no longer available. ThearchitectCLI tool has been moved to the@angular-devkit/architectpackage. - The experimental
@angular-devkit/build-angular:jestand@angular-devkit/build-angular:web-test-runnerbuilders have been removed.
@angular/build
- The
@angular/build:dev-server (ng serve)now assigns the highest priority to thePORTenvironment variable. This value will override any port configurations specified inangular.jsonor via the--portcommand-line flag. This includes the default port 4200. istanbul-lib-instrumentis now an optional peer dependency. Projects using karma with code coverage enabled will need to ensure that istanbul-lib-instrument is installed. Note:ng updatewill automatically add this dependency during the update process.
@angular/ssr
- The server no longer falls back to Client-Side Rendering (CSR) when a request fails host validation. Requests with unrecognized 'Host' headers will now return a 400 Bad Request status code. Users must ensure all valid hosts are correctly configured in the 'allowedHosts' option.
Deprecations
@angular-devkit/build-angular
- Webpack builders in build-angular are deprecated. Use @angular/build builders instead.
@angular-devkit/build-webpack
- Webpack builders in build-webpack are deprecated. Use @angular/build builders instead.
@angular/ssr
- CommonEngine APIs are deprecated in favor of AngularNodeAppEngine or AngularAppEngine.
@ngtools/webpack
- @ngtools/webpack loader and plugin are deprecated. Use @angular/build instead.
@angular/cli
Commit Type Description 58c0978f6 feat add support for Node.js 26.0.0 a5c7c0b5f fix reflect new minimum supported Node version in ng.js a5e1e48db fix update odd-numbered Node.js version warning condition for future releases 93c3eb8fb fix update zoneless migration tool to handle ChangeDetectionStrategy.Eagera39a33128 perf cache root manifest and resolve restricted package exports in ng add @schematics/angular
Commit Type Description be60a63b7 feat add migrate-karma-to-vitest update migration 43505066e feat add migration to add istanbul-lib-instrument b2f7a038b feat conditionally install istanbul coverage provider for Vitest migration d227e6985 feat migrate fake async to Vitest fake timers d2aa9ede5 feat migrate fakeAsync's flush behavior when used in beforeEach f98cc82eb feat rely on strict template default in generated workspaces c9f408153 feat set up fake timers in beforeEach instead of beforeAll de630c2fc feat stabilize refactor-jasmine-vitest schematic 8d0805dd1 feat update TSConfig globals during karma to vitest migration 470e1f937 fix add istanbul-lib-instrument to application/library generator dependencies dc1238e5a fix add trusted-proxy-headers migration 6572a6944 fix default components to OnPush change detection aed407db8 fix defer karma config deletion in Karma to Vitest migration 4fbc60891 fix preserve Jasmine stub-by-default semantics for bare spies b3d838dfd fix replace deprecated ChangeDetectionStrategy.DefaultwithEagera7ac8e5f0 fix support spy call arguments migration in refactor-jasmine-vitest 7fb59eaa6 fix use service decorator in ng generate Commit Type Description d0e9e8163 build update minimum supported Node.js versions 1f21e89d9 refactor remove @angular-devkit/architect-clipackageb4885b851 refactor remove experimental Jest and Web Test Runner builders @angular-devkit/build-angular
Commit Type Description b7940dbcb refactor deprecate Webpack builders @angular-devkit/build-webpack
Commit Type Description 3d5daa45e refactor deprecate webpack and webpack-dev-server builders @angular/build
Commit Type Description e9aa7967b feat add isolate option to unit-test builder fe720cab6 feat add process.env.PORT support to the dev server 0781f7498 feat add quiet option to suppress build noise in unit tests cd2ad3c19 feat enable chunk optimization by default with heuristics 3007f46b7 feat move istanbul-lib-instrument to optional peer dependency af2c7e944 feat rename experimentalPlatformtoplatformin application builder58c7c7a9d feat subresource integrity validation for dynamically loaded modules 73233dc5f feat support Istanbul coverage in Vitest runner 414320d02 feat support runtime Zone.js detection in Vitest unit test runner b85ec6798 fix allow configuring Access-Control-Allow-Origin via headers option edfa782d5 fix use dynamic TestComponentRenderer for Vitest @angular/ssr
Commit Type Description 5adc92541 fix enforce explicit opt-in for proxy headers f85343925 fix support all X-Forwarded-* headers when trustProxyHeaders is true 8471ba634 fix support server-side rendering configuration options 50b16a65b refactor deprecate CommonEngine APIs 27cd35561 refactor remove CSR fallback for invalid hosts @ngtools/webpack
Commit Type Description 547ca515b refactor deprecate @ngtools/webpack loader and plugin <!-- CHANGELOG SPLIT MARKER -->
<a name="21.2.14"></a>
- 22.0.0-rc.31 Jun 2026pre-release
Release notes
Open source →@schematics/angular
Commit Description preserve Jasmine stub-by-default semantics for bare spies @angular/cli
Commit Description expand package groups for newly added peer dependencies in update schematic @angular/build
Commit Description prevent esbuild service child process leakage @angular/ssr
Commit Description support server-side rendering configuration options - 22.0.0-rc.228 May 2026pre-release
Release notes
Open source →@angular-devkit/build-angular
Commit Description remove unconditional CORS wildcard from webpack dev-server - 22.0.0-rc.121 May 2026pre-release
Release notes
Open source →@schematics/angular
Commit Description support spy call arguments migration in refactor-jasmine-vitest @angular/build
Commit Description assert that asset input paths are within workspace root ignore virtual esbuild paths with (disabled): - 22.0.0-rc.013 May 2026pre-release
Release notes
Open source →@angular/cli
Commit Description add support for Node.js 26.0.0 restrict MCP workspace access to allowed client roots during resolution update odd-numbered Node.js version warning condition for future releases @schematics/angular
@angular-devkit/build-angular
Commit Description deprecate Webpack builders @angular-devkit/build-webpack
Commit Description deprecate webpack and webpack-dev-server builders @angular/build
Commit Description subresource integrity validation for dynamically loaded modules use dynamic TestComponentRenderer for Vitest @angular/ssr
Commit Description remove stateful flag from URL_PARAMETER_REGEXP support all X-Forwarded-* headers when trustProxyHeaders is true deprecate CommonEngine APIs @ngtools/webpack
Commit Description deprecate @ngtools/webpack loader and plugin Deprecations
@angular-devkit/build-angular
- Webpack builders in build-angular are deprecated. Use @angular/build builders instead.
@angular-devkit/build-webpack
- Webpack builders in build-webpack are deprecated. Use @angular/build builders instead.
@angular/ssr
- CommonEngine APIs are deprecated in favor of AngularNodeAppEngine or AngularAppEngine.
@ngtools/webpack
- @ngtools/webpack loader and plugin are deprecated. Use @angular/build instead.
- 22.0.0-next.811 May 2026pre-release
Release notes
Open source →@angular/cli
@schematics/angular
@angular-devkit/build-angular
Commit Description deprecate Webpack builders @angular-devkit/build-webpack
Commit Description deprecate webpack and webpack-dev-server builders @angular-devkit/core
Commit Description deprecate stringToFileBuffer and fileBufferToString @angular/build
Commit Description subresource integrity validation for dynamically loaded modules use dynamic TestComponentRenderer for Vitest @angular/ssr
Commit Description deprecate CommonEngine APIs @ngtools/webpack
Commit Description deprecate @ngtools/webpack loader and plugin Deprecations
@angular-devkit/build-angular
- Webpack builders in build-angular are deprecated. Use @angular/build builders instead.
@angular-devkit/build-webpack
- Webpack builders in build-webpack are deprecated. Use @angular/build builders instead.
@angular-devkit/core
-
stringToFileBufferandfileBufferToStringare deprecated. Use standard Web APIs (TextEncoderandTextDecoder) instead.Internal usages within the repository have been removed and replaced with standard Web APIs. The public API golden file for
@angular-devkit/corehas been updated to reflect the deprecations.
@angular/ssr
- CommonEngine APIs are deprecated in favor of AngularNodeAppEngine or AngularAppEngine.
@ngtools/webpack
- @ngtools/webpack loader and plugin are deprecated. Use @angular/build instead.
- 22.0.0-next.729 Apr 2026pre-release
Release notes
Open source →@schematics/angular
Commit Description add missing imports for focus and skip APIs in refactor-jasmine-vitest add trusted-proxy-headers migration @angular/cli
Commit Description fix broken img ref in ai-tutor introduce initial package manager workspace awareness remove standalone true ref in ai tutor @angular/build
Commit Description add isolate option to unit-test builder support Istanbul coverage in Vitest runner @angular/ssr
- 22.0.0-next.622 Apr 2026pre-release
Release notes
Open source →@schematics/angular
Commit Description stabilize refactor-jasmine-vitest schematic @angular/cli
Commit Description dynamically resolve project Angular CLI executable inside MCP tools ignore EBADF file system errors during MCP project scan use headless option in MCP test tool @angular-devkit/build-angular
Commit Description ensure route has leading slash in prerender builder fix app-shell route format and @angular/build
- 22.0.0-next.58 Apr 2026pre-release
Release notes
Open source →@angular/cli
Commit Description handle missing package manager during analytics initialization @schematics/angular
Commit Description add migrate-karma-to-vitest update migration add migration to add istanbul-lib-instrument add istanbul-lib-instrument to application/library generator dependencies @angular/build
Commit Description move istanbul-lib-instrument to optional peer dependency preserve coverage ignore comments in development show clear error when styleUrl points to a TypeScript file Breaking Changes
@angular/build
istanbul-lib-instrumentis now an optional peer dependency. Projects using karma with code coverage enabled will need to ensure that istanbul-lib-instrument is installed. Note:ng updatewill automatically add this dependency during the update process.
- 22.0.0-next.41 Apr 2026pre-release
Release notes
Open source →@angular/cli
Commit Description support custom port in MCP devserver start tool fix sourceRoot resolution for MCP projects tool @angular/build
@angular/ssr
Commit Description allow underscores in host validation patch Headers.forEach in cloneRequestAndPatchHeaders - 22.0.0-next.326 Mar 2026pre-release
Release notes
Open source →@schematics/angular
Commit Description rely on strict template default in generated workspaces @angular/cli
Commit Description restore console methods after logger completes @angular/build
@angular/ssr
Commit Description apply forwarded prefix and vary header in accept-language redirects support '*' in allowedHosts and warn about security risks - 22.0.0-next.218 Mar 2026pre-release
Release notes
Open source →@schematics/angular
Commit Description default components to OnPush change detection @angular/cli
Commit Description use parsed package name for migrate-only updates @angular/build
Commit Description alias createRequire banner import to avoid duplicate binding only use external packages for polyfills when no local files are present @angular/ssr
Commit Description disallow x-forwarded-prefix starting with a backslash ensure unique values in redirect response Vary header support custom headers in redirect responses - 22.0.0-next.111 Mar 2026pre-release
Release notes
Open source →@angular/cli
@schematics/angular
Commit Description replace deprecated ChangeDetectionStrategy.DefaultwithEager@angular/build
Breaking Changes
@angular/build
- The
@angular/build:dev-server (ng serve)now assigns the highest priority to thePORTenvironment variable. This value will override any port configurations specified inangular.jsonor via the--portcommand-line flag. This includes the default port 4200.
- The
- 22.0.0-next.05 Mar 2026pre-release
Release notes
Open source →@angular/cli
Commit Description reflect new minimum supported Node version in ng.js Commit Description update minimum supported Node.js versions remove @angular-devkit/architect-clipackageremove experimental Jest and Web Test Runner builders @angular/build
Commit Description support runtime Zone.js detection in Vitest unit test runner allow any CHROME_BINfor vitest playwright provider@angular/ssr
Commit Description remove CSR fallback for invalid hosts Breaking Changes
- Node.js v20 is no longer supported. The minimum supported Node.js versions are now v22.22.0 and v24.13.1.
- The
@angular-devkit/architect-clipackage is no longer available. ThearchitectCLI tool has been moved to the@angular-devkit/architectpackage. - The experimental
@angular-devkit/build-angular:jestand@angular-devkit/build-angular:web-test-runnerbuilders have been removed.
@angular/ssr
- The server no longer falls back to Client-Side Rendering (CSR) when a request fails host validation. Requests with unrecognized 'Host' headers will now return a 400 Bad Request status code. Users must ensure all valid hosts are correctly configured in the 'allowedHosts' option.
- 21.2.2226 Aug 2026
Release notes
Open source →Additional notes
Open source →@angular-devkit/build-angular
Commit Type Description b0047b04f5 fix update webpack-dev-server to 5.2.6 <!-- CHANGELOG SPLIT MARKER -->
<a name="20.3.35"></a>
- 21.2.2112 Aug 2026
Release notes
Open source →@angular/cli
Commit Description update dependency @modelcontextprotocol/sdk to v1.30.0 @angular/build
Commit Description bump undici to 7.29.0 Additional notes
Open source →@angular/cli
Commit Description update dependency @modelcontextprotocol/sdk to v1.30.0 @angular/build
Commit Description bump undici to 7.29.0 Additional notes
Open source →@angular/cli
Commit Type Description ba5d16cac fix update dependency @modelcontextprotocol/sdk to v1.30.0 @angular/build
Commit Type Description f7f60e69e fix bump undici to 7.29.0 <!-- CHANGELOG SPLIT MARKER -->
<a name="20.3.34"></a>
- 21.2.205 Aug 2026
Release notes
Open source →@angular-devkit/build-angular
Commit Description upgrade postcss to 8.5.23 @angular/build
Commit Description upgrade postcss to 8.5.23 Additional notes
Open source →@angular-devkit/build-angular
Commit Description upgrade postcss to 8.5.23 @angular/build
Commit Description upgrade postcss to 8.5.23 Additional notes
Open source →@angular-devkit/build-angular
Commit Type Description 972f6db7e9 fix upgrade postcss to 8.5.23 @angular/build
Commit Type Description 8de75ada50 fix upgrade postcss to 8.5.23 <!-- CHANGELOG SPLIT MARKER -->
<a name="20.3.33"></a>
- 21.2.199 Jul 2026
Release notes
Open source →Additional notes
Open source →@angular-devkit/build-angular
Commit Type Description df5429871 fix update http-proxy-middleware to 3.0.7 <!-- CHANGELOG SPLIT MARKER -->
<a name="20.3.32"></a>
- 21.2.181 Jul 2026
Release notes
Open source →@angular/cli
Commit Description respect release age policy in update bootstrapping logic @angular/build
Commit Description bump undici to 7.28.0 bump vite to 7.3.6 Additional notes
Open source →@angular/cli
Commit Type Description 61a810ab6 fix respect release age policy in update bootstrapping logic @angular/build
Commit Type Description a2b6116ed fix bump undici to 7.28.0 2510ee3c9 fix bump vite to 7.3.6 <!-- CHANGELOG SPLIT MARKER -->
<a name="20.3.31"></a>
- 21.2.1724 Jun 2026
Release notes
Open source →@angular/build
Commit Description bump @babel/core to 7.29.7 bump esbuild to 0.28.1 bump piscina to 5.2.0 bump vite to 7.3.5 Additional notes
Open source →@angular/build
Commit Type Description 9c366e8be fix bump @babel/core to 7.29.7 6a06ce9e9 fix bump esbuild to 0.28.1 637b84877 fix bump piscina to 5.2.0 e86d58a12 fix bump vite to 7.3.5 <!-- CHANGELOG SPLIT MARKER -->
<a name="20.3.30"></a>
- 21.2.1617 Jun 2026
Release notes
Open source →@angular/cli
Commit Description update pacote to 21.5.1 @angular/ssr
Commit Description prioritize options over environment variables in AngularNodeAppEngine Additional notes
Open source →@angular/cli
Commit Type Description 77c9047ac fix update pacote to 21.5.1 @angular/ssr
Commit Type Description d052e97da fix prioritize options over environment variables in AngularNodeAppEngine <!-- CHANGELOG SPLIT MARKER -->
<a name="20.3.29"></a>
- 21.2.1511 Jun 2026
Release notes
Open source →@angular/cli
Commit Description remove forceAuth and unscoped credential parsing support registry metadata fetching under bun package manager Additional notes
Open source →@angular/cli
Commit Type Description 42ac0ed0f fix remove forceAuth and unscoped credential parsing c7a7f1955 fix support registry metadata fetching under bun package manager <!-- CHANGELOG SPLIT MARKER -->
<a name="22.0.1"></a>
- 21.2.143 Jun 2026
Release notes
Open source →@angular/cli
Commit Description expand package groups for newly added peer dependencies in update schematic @angular/build
Commit Description prevent esbuild service child process leakage Additional notes
Open source →@angular/cli
Commit Type Description aed448748 fix expand package groups for newly added peer dependencies in update schematic @angular/build
Commit Type Description d46c082fb fix prevent esbuild service child process leakage <!-- CHANGELOG SPLIT MARKER -->
<a name="20.3.27"></a>
- 21.2.1327 May 2026
Release notes
Open source →@angular-devkit/build-angular
Commit Description remove unconditional CORS wildcard from webpack dev-server @angular/build
Commit Description assert that asset input paths are within workspace root Additional notes
Open source →@angular-devkit/build-angular
Commit Type Description 3c6d26a31 fix remove unconditional CORS wildcard from webpack dev-server @angular/build
Commit Type Description 2b3e95517 fix assert that asset input paths are within workspace root <!-- CHANGELOG SPLIT MARKER -->
<a name="21.2.12"></a>
- 21.2.1220 May 2026
Release notes
Open source →Additional notes
Open source →@angular/build
Commit Type Description cbad57579 fix ignore virtual esbuild paths with (disabled): <!-- CHANGELOG SPLIT MARKER -->
<a name="21.2.11"></a>
- 21.2.1113 May 2026
Release notes
Open source →@angular/cli
Commit Description robustly parse npm manifest from array @angular/ssr
Commit Description allow all hosts in common engine rendering options to prevent validation errors remove stateful flag from URL_PARAMETER_REGEXP Additional notes
Open source →@angular/cli
Commit Type Description bbd63b7a5 fix robustly parse npm manifest from array @angular/ssr
Commit Type Description eafe1a719 fix allow all hosts in common engine rendering options to prevent validation errors 7a116a80d fix remove stateful flag from URL_PARAMETER_REGEXP <!-- CHANGELOG SPLIT MARKER -->
<a name="20.3.26"></a>
- 21.2.106 May 2026
Release notes
Open source →@angular/cli
Commit Description restrict MCP workspace access to allowed client roots during resolution Additional notes
Open source →@angular/cli
Commit Type Description bb8611913 fix restrict MCP workspace access to allowed client roots during resolution <!-- CHANGELOG SPLIT MARKER -->
<a name="19.2.25"></a>
- 21.2.929 Apr 2026
Release notes
Open source →@schematics/angular
Commit Description add missing imports for focus and skip APIs in refactor-jasmine-vitest @angular/cli
Commit Description fix broken img ref in ai-tutor introduce initial package manager workspace awareness remove standalone true ref in ai tutor @angular/ssr
Additional notes
Open source →@angular/cli
Commit Type Description 233deef01 fix fix broken img ref in ai-tutor 7cea9885c fix introduce initial package manager workspace awareness 5b1a5b743 fix remove standalone true ref in ai tutor @schematics/angular
Commit Type Description e7abeb5c7 fix add missing imports for focus and skip APIs in refactor-jasmine-vitest @angular/ssr
Commit Type Description 94023f62c fix introduce trustProxyHeaders option to safely validate and sanitize proxy headers 5ffe5c309 fix add support for configuring trusted proxy headers via environment variable 930ada9b7 fix decode route segments when building and matching route tree 0dc8a440c fix use router to normalize URLs for comparison <!-- CHANGELOG SPLIT MARKER -->
<a name="20.3.25"></a>
- 21.2.822 Apr 2026
Release notes
Open source →@angular/cli
Commit Description dynamically resolve project Angular CLI executable inside MCP tools ignore EBADF file system errors during MCP project scan use headless option in MCP test tool @angular-devkit/build-angular
Commit Description ensure route has leading slash in prerender builder fix app-shell route format and @angular/build
Commit Description use rootDir for HMR component updates path resolution validate V8 coverage support for browsers in Vitest - 21.2.78 Apr 2026
Release notes
Open source →@angular/cli
Commit Description handle missing package manager during analytics initialization @angular/build
Commit Description preserve coverage ignore comments in development show clear error when styleUrl points to a TypeScript file Additional notes
Open source →@angular/cli
Commit Type Description 971041aa1 fix handle missing package manager during analytics initialization @angular/build
Commit Type Description 365cce81d fix preserve coverage ignore comments in development 9f74660c3 fix show clear error when styleUrl points to a TypeScript file <!-- CHANGELOG SPLIT MARKER -->
<a name="20.3.23"></a>
- 21.2.61 Apr 2026
Release notes
Open source →@angular/cli
Commit Description fix sourceRoot resolution for MCP projects tool @angular/build
Additional notes
Open source →@angular/cli
Commit Type Description ea14f28cc fix fix sourceRoot resolution for MCP projects tool @angular/build
Commit Type Description 9136eb376 fix ensure transitive SCSS partial errors are tracked in watch mode 8186faa11 fix ensure Vitest mock patching is executed only once 107d1a9e2 fix preserve error stack traces during prerendering b7f457253 fix scope CHROME_BIN executable path to individual playwright instances <!-- CHANGELOG SPLIT MARKER -->
<a name="21.2.5"></a>
- 21.2.527 Mar 2026
Release notes
Open source →@angular/cli
Commit Description support custom port in MCP devserver start tool @angular/ssr
Commit Description allow underscores in host validation patch Headers.forEach in cloneRequestAndPatchHeaders Additional notes
Open source →@angular/cli
Commit Type Description cadf9b201 feat support custom port in MCP devserver start tool @angular/ssr
Commit Type Description bbc255419 fix allow underscores in host validation b1fe66a7f fix patch Headers.forEach in cloneRequestAndPatchHeaders <!-- CHANGELOG SPLIT MARKER -->
<a name="20.3.22"></a>