{"id":14934,"name":"@angular-builders/jest","ecosystem":"npm","repository_url":"https://github.com/just-jeb/angular-builders","issues_count":55,"created_at":"2025-06-06T23:53:55.584Z","updated_at":"2025-06-06T23:53:55.584Z","purl":"pkg:npm/@angular-builders/jest","metadata":{"id":810393,"name":"@angular-builders/jest","ecosystem":"npm","description":"Jest runner for Angular build facade. Allows ng test run with Jest instead of Karma","homepage":null,"licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/just-jeb/angular-builders","keywords_array":["jest","testing","test","angular","cli","builder","runner"],"namespace":"angular-builders","versions_count":174,"first_release_published_at":"2018-08-08T13:17:04.524Z","latest_release_published_at":"2025-04-07T10:28:41.146Z","latest_release_number":"19.0.1","last_synced_at":"2025-06-06T21:01:04.910Z","created_at":"2022-04-07T13:32:23.727Z","updated_at":"2025-06-06T21:02:50.854Z","registry_url":"https://www.npmjs.com/package/@angular-builders/jest","install_command":"npm install @angular-builders/jest","documentation_url":null,"metadata":{"funding":null,"dist-tags":{"jest-preset-alpha":"7.3.0-alpha.1","lerna-try":"8.0.0-RC.0","7.x.x":"7.4.4","latest":"19.0.1","next":"19.0.1-beta.1"}},"repo_metadata":{"id":37601978,"uuid":"139593633","full_name":"just-jeb/angular-builders","owner":"just-jeb","description":"Angular build facade extensions (Jest and custom webpack configuration) ","archived":false,"fork":false,"pushed_at":"2025-06-03T21:35:52.000Z","size":54104,"stargazers_count":1157,"open_issues_count":91,"forks_count":202,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-06-04T21:32:33.721Z","etag":null,"topics":["angular","angular-cli","angular15","angular16","angular17","angular18","build","builder","builders","custom","customization","customized-builds","dev-server","extend","ivy","jest","jest-test","unit-test","webpack","webpack-dev-server"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/just-jeb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":null,"patreon":"justjeb","open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":["https://www.paypal.com/cgi-bin/webscr?cmd=_donations\u0026business=43KX7EMK96A94\u0026currency_code=USD\u0026source=url"]}},"created_at":"2018-07-03T14:15:02.000Z","updated_at":"2025-06-04T11:38:26.000Z","dependencies_parsed_at":"2023-10-02T08:44:12.844Z","dependency_job_id":"d09bfdd2-81a5-4269-9c32-2dd828871f6b","html_url":"https://github.com/just-jeb/angular-builders","commit_stats":{"total_commits":1994,"total_committers":62,"mean_commits":32.16129032258065,"dds":0.7231695085255767,"last_synced_commit":"21e3b6e9428865446a02047d7aee4c9c7fc4ca4b"},"previous_names":["meltedspark/angular-builders","meltedspark/angular-cli-builders"],"tags_count":1911,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/just-jeb%2Fangular-builders","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/just-jeb%2Fangular-builders/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/just-jeb%2Fangular-builders/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/just-jeb%2Fangular-builders/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/just-jeb","download_url":"https://codeload.github.com/just-jeb/angular-builders/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/just-jeb%2Fangular-builders/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":258257006,"owners_count":22672650,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"just-jeb","name":"JeB","uuid":"9823087","kind":"user","description":"Software engineer, open source enthusiast.  \r\n\r\nhttps://medium.com/@justjeb","email":"","website":"https://www.justjeb.com/","location":"Israel","twitter":"jebbacca","company":"@wix ","icon_url":"https://avatars.githubusercontent.com/u/9823087?u=d22547839db681af8d3d7b75afa2ead952574e8f\u0026v=4","repositories_count":24,"last_synced_at":"2023-04-10T02:07:32.716Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/just-jeb","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-02T16:37:06.242Z","updated_at":"2023-04-10T02:07:33.542Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/just-jeb","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/just-jeb/repositories"}},"repo_metadata_updated_at":"2025-06-06T21:02:50.853Z","dependent_packages_count":100,"downloads":727299,"downloads_period":"last-month","dependent_repos_count":2721,"rankings":{"downloads":0.38559558123957816,"dependent_repos_count":0.43769221949782056,"dependent_packages_count":0.4201808657070688,"stargazers_count":2.3954494909533315,"forks_count":2.4444128261178877,"docker_downloads_count":1.5392900443151158,"average":1.2704368379718003},"purl":"pkg:npm/%40angular-builders/jest","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/npm/@angular-builders/jest","docker_dependents_count":3,"docker_downloads_count":690,"usage_url":"https://repos.ecosyste.ms/usage/npm/@angular-builders/jest","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/npm/@angular-builders/jest/dependencies","status":null,"funding_links":["https://patreon.com/justjeb","https://www.paypal.com/cgi-bin/webscr?cmd=_donations\u0026business=43KX7EMK96A94\u0026currency_code=USD\u0026source=url"],"critical":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@angular-builders%2Fjest/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@angular-builders%2Fjest/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@angular-builders%2Fjest/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@angular-builders%2Fjest/related_packages","maintainers":[{"uuid":"justjeb","login":"justjeb","name":null,"email":"work@justjeb.com","url":null,"packages_count":9,"html_url":"https://www.npmjs.com/~justjeb","role":null,"created_at":"2022-11-15T00:08:13.262Z","updated_at":"2022-11-15T00:08:13.262Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/justjeb/packages"}],"registry":{"name":"npmjs.org","url":"https://registry.npmjs.org","ecosystem":"npm","default":true,"packages_count":5008192,"maintainers_count":1013077,"namespaces_count":295677,"keywords_count":700469,"github":"npm","metadata":{"funded_packages_count":150263},"icon_url":"https://github.com/npm.png","created_at":"2022-04-04T15:19:23.081Z","updated_at":"2025-06-07T05:25:21.688Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/namespaces"}},"unique_repositories_count":23,"unique_repositories_count_past_30_days":2,"recent_issues":[{"uuid":"4371342955","node_id":"PR_kwDOSS92m87XwBqP","number":10,"state":"open","title":"chore(deps-dev): bump @angular-builders/jest from 17.0.3 to 21.0.3 in /frontend","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-03T09:02:35.000Z","updated_at":"2026-05-03T09:02:35.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev)","packages":[{"name":"@angular-builders/jest","old_version":"17.0.3","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"}],"path":"/frontend","ecosystem":"npm"},"body":"Bumps [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) from 17.0.3 to 21.0.3.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e@​angular-builders/jest's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.1 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.0 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187\"\u003e9c0d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f7\"\u003e5d8e5f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.2\"\u003e21.0.2\u003c/a\u003e (2026-01-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.1\"\u003e21.0.1\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.1-beta.0\"\u003e21.0.1-beta.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.0\"\u003e21.0.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.1-beta.1...@angular-builders/jest@21.0.0-beta.1\"\u003e21.0.0-beta.1\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e configPath option renamed to config\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe config option now accepts:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFile path (string): \u0026quot;jest.config.js\u0026quot;\u003c/li\u003e\n\u003cli\u003eJSON string: '{\u0026quot;verbose\u0026quot;: true}'\u003c/li\u003e\n\u003cli\u003eInline object in angular.json\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e zoneless is now the default\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eApps using zone.js change detection must set zoneless: false in angular.json.\u003c/p\u003e\n\u003cp\u003eglobalMocks option now only supports matchMedia. The styleTransform,\ngetComputedStyle, and doctype mocks have been removed as Jest 30's\njsdom supports these natively.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e Requires Jest 30\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eUsers must upgrade:\nnpm install --save-dev jest@^30.0.0 jest-environment-jsdom@^30.0.0 jsdom@^26.0.0\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/df93aba91f4bdace2a54e0052e9b4603638f9fd4\"\u003e\u003ccode\u003edf93aba\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4af87374773bedb22c0a050d8ece327a51f432d3\"\u003e\u003ccode\u003e4af8737\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1f20a38d517527be88d140bb36dc00cf6bcb7583\"\u003e\u003ccode\u003e1f20a38\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187e93be6b9ba7773432826fc2f63ca9cff6\"\u003e\u003ccode\u003e9c0d187\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f70dc25f05fa8ea6e67efe07d2271182c9a\"\u003e\u003ccode\u003e5d8e5f7\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9f8d27afa52bfa0a44d3aa97081c0e0bf94d2a5c\"\u003e\u003ccode\u003e9f8d27a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/63f716a171b650bdfed007bec8f286e28f8b6c0c\"\u003e\u003ccode\u003e63f716a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1d1aa1b1eb60aa4379ac38d5913ce0a31dd45160\"\u003e\u003ccode\u003e1d1aa1b\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/c457fdeee426b904bd0c0864e31c42d91864ce32\"\u003e\u003ccode\u003ec457fde\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/7bfe31233d86cd04798055d19a552e7d8ab424a3\"\u003e\u003ccode\u003e7bfe312\u003c/code\u003e\u003c/a\u003e feat(jest)!: rename configPath to config with object support\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@21.0.3/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@angular-builders/jest\u0026package-manager=npm_and_yarn\u0026previous-version=17.0.3\u0026new-version=21.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/FKAV64/web-based-progrmming-end-of-year-project/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/FKAV64%2Fweb-based-progrmming-end-of-year-project/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"},{"uuid":"4304071751","node_id":"PR_kwDOHn-f-c7UX2_T","number":2923,"state":"closed","title":"Bump @tootallnate/once and @angular-builders/jest in /alcs-frontend","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-01T20:39:47.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-21T16:48:01.000Z","updated_at":"2026-05-01T20:39:48.000Z","time_to_close":877906,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@tootallnate/once","repository_url":"https://github.com/TooTallNate/once","old_version":null,"new_version":null,"is_removal":true},{"name":"@angular-builders/jest","repository_url":"https://github.com/just-jeb/angular-builders","old_version":"20.0.0","new_version":"21.0.3"}],"path":"/alcs-frontend","ecosystem":"npm"},"body":"Removes [@tootallnate/once](https://github.com/TooTallNate/once). It's no longer used after updating ancestor dependency [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest). These dependencies need to be updated together.\n\nRemoves `@tootallnate/once`\n\nUpdates `@angular-builders/jest` from 20.0.0 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.1 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.0 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187\"\u003e9c0d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f7\"\u003e5d8e5f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.2\"\u003e21.0.2\u003c/a\u003e (2026-01-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.1\"\u003e21.0.1\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.1-beta.0\"\u003e21.0.1-beta.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.0\"\u003e21.0.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.1-beta.1...@angular-builders/jest@21.0.0-beta.1\"\u003e21.0.0-beta.1\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e configPath option renamed to config\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe config option now accepts:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFile path (string): \u0026quot;jest.config.js\u0026quot;\u003c/li\u003e\n\u003cli\u003eJSON string: '{\u0026quot;verbose\u0026quot;: true}'\u003c/li\u003e\n\u003cli\u003eInline object in angular.json\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e zoneless is now the default\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eApps using zone.js change detection must set zoneless: false in angular.json.\u003c/p\u003e\n\u003cp\u003eglobalMocks option now only supports matchMedia. The styleTransform,\ngetComputedStyle, and doctype mocks have been removed as Jest 30's\njsdom supports these natively.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e Requires Jest 30\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eUsers must upgrade:\nnpm install --save-dev jest@^30.0.0 jest-environment-jsdom@^30.0.0 jsdom@^26.0.0\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/df93aba91f4bdace2a54e0052e9b4603638f9fd4\"\u003e\u003ccode\u003edf93aba\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4af87374773bedb22c0a050d8ece327a51f432d3\"\u003e\u003ccode\u003e4af8737\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1f20a38d517527be88d140bb36dc00cf6bcb7583\"\u003e\u003ccode\u003e1f20a38\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187e93be6b9ba7773432826fc2f63ca9cff6\"\u003e\u003ccode\u003e9c0d187\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f70dc25f05fa8ea6e67efe07d2271182c9a\"\u003e\u003ccode\u003e5d8e5f7\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9f8d27afa52bfa0a44d3aa97081c0e0bf94d2a5c\"\u003e\u003ccode\u003e9f8d27a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/63f716a171b650bdfed007bec8f286e28f8b6c0c\"\u003e\u003ccode\u003e63f716a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1d1aa1b1eb60aa4379ac38d5913ce0a31dd45160\"\u003e\u003ccode\u003e1d1aa1b\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/c457fdeee426b904bd0c0864e31c42d91864ce32\"\u003e\u003ccode\u003ec457fde\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/7bfe31233d86cd04798055d19a552e7d8ab424a3\"\u003e\u003ccode\u003e7bfe312\u003c/code\u003e\u003c/a\u003e feat(jest)!: rename configPath to config with object support\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@21.0.3/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\nYou can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/bcgov/alcs/network/alerts).\n\n\u003c/details\u003e","html_url":"https://github.com/bcgov/alcs/pull/2923","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/bcgov%2Falcs/issues/2923","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2923/packages"},{"uuid":"4007874687","node_id":"PR_kwDOOhidSs7HKUZl","number":138,"state":"closed","title":"Chore(deps): Bump the frontend-angular-dependencies group across 1 directory with 23 updates","user":"dependabot[bot]","labels":["dependencies","frontend"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-01T22:50:50.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-01T18:03:27.000Z","updated_at":"2026-04-01T22:50:52.000Z","time_to_close":2695643,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Chore(deps): Bump","group_name":"frontend-angular-dependencies","update_count":23,"packages":[{"name":"@angular/cdk","old_version":"21.0.5","new_version":"21.2.0","repository_url":"https://github.com/angular/components"},{"name":"@angular/common","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/compiler","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/core","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/forms","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/localize","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser-dynamic","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/router","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@ng-select/ng-select","old_version":"21.1.3","new_version":"21.4.0","repository_url":"https://github.com/ng-select/ng-select"},{"name":"ngx-ui-tour-ng-bootstrap","old_version":"17.0.1","new_version":"18.0.0","repository_url":"https://github.com/hakimio/ngx-ui-tour"},{"name":"@angular-builders/custom-webpack","old_version":"20.0.0","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"20.0.0","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/build-angular","old_version":"21.0.4","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/core","old_version":"21.0.4","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/schematics","old_version":"21.0.4","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-eslint/builder","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin-template","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/schematics","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/template-parser","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular/cli","old_version":"21.0.4","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/compiler-cli","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"}],"path":null,"ecosystem":"npm"},"body":"Bumps the frontend-angular-dependencies group with 23 updates in the /src-ui directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/cdk](https://github.com/angular/components) | `21.0.5` | `21.2.0` |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `21.0.6` | `21.2.0` |\n| [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) | `21.0.6` | `21.2.0` |\n| [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) | `21.0.6` | `21.2.0` |\n| [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) | `21.0.6` | `21.2.0` |\n| [@angular/localize](https://github.com/angular/angular) | `21.0.6` | `21.2.0` |\n| [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) | `21.0.6` | `21.2.0` |\n| [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) | `21.0.6` | `21.2.0` |\n| [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) | `21.0.6` | `21.2.0` |\n| [@ng-select/ng-select](https://github.com/ng-select/ng-select) | `21.1.3` | `21.4.0` |\n| [ngx-ui-tour-ng-bootstrap](https://github.com/hakimio/ngx-ui-tour) | `17.0.1` | `18.0.0` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `20.0.0` | `21.0.3` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `20.0.0` | `21.0.3` |\n| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `21.0.4` | `21.2.0` |\n| [@angular-devkit/core](https://github.com/angular/angular-cli) | `21.0.4` | `21.2.0` |\n| [@angular-devkit/schematics](https://github.com/angular/angular-cli) | `21.0.4` | `21.2.0` |\n| [@angular-eslint/builder](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/builder) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/eslint-plugin](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/eslint-plugin-template](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin-template) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/schematics](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/schematics) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/template-parser](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/template-parser) | `21.1.0` | `21.2.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `21.0.4` | `21.2.0` |\n| [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) | `21.0.6` | `21.2.0` |\n\n\nUpdates `@angular/cdk` from 21.0.5 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8c4526935ef7e960ed4245a4621d41065ba34e3b\"\u003e\u003cimg src=\"https://img.shields.io/badge/8c4526935e-fix-green\" alt=\"fix - 8c4526935e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e expose strong focus indicator structural styles (\u003ca href=\"https://redirect.github.com/angular/components/issues/32808\"\u003e#32808\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/7fe308114829c4ce454cc247e59e59387ee7fd17\"\u003e\u003cimg src=\"https://img.shields.io/badge/7fe3081148-fix-green\" alt=\"fix - 7fe3081148\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e drop dependency on NgClass (\u003ca href=\"https://redirect.github.com/angular/components/issues/32810\"\u003e#32810\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/cd5209e9f59c8bd31de29d03fd743452d8ae3d03\"\u003e\u003cimg src=\"https://img.shields.io/badge/cd5209e9f5-fix-green\" alt=\"fix - cd5209e9f5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eportal:\u003c/strong\u003e allow bindings to be passed to component portal (\u003ca href=\"https://redirect.github.com/angular/components/issues/32814\"\u003e#32814\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e397ecbcfad4e85fde8d116faf5caa80dcddca45\"\u003e\u003cimg src=\"https://img.shields.io/badge/e397ecbcfa-fix-green\" alt=\"fix - e397ecbcfa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e remove string-based DI tokens (\u003ca href=\"https://redirect.github.com/angular/components/issues/32677\"\u003e#32677\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/31ff7f26b5dd08c1d48dc5ebb8f1a9ba57a2dc9c\"\u003e\u003cimg src=\"https://img.shields.io/badge/31ff7f26b5-fix-green\" alt=\"fix - 31ff7f26b5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d030725f462d93bbca9918f153a48b5631ef0476\"\u003e\u003cimg src=\"https://img.shields.io/badge/d030725f46-fix-green\" alt=\"fix - d030725f46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.2.0-rc.0\u003c/h2\u003e\n\u003cp\u003eNo release notes provided.\u003c/p\u003e\n\u003ch2\u003e21.2.0-next.5\u003c/h2\u003e\n\u003ch3\u003egoogle-maps\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0870786036286c3b0d3485cb31098afdf22c0350\"\u003e\u003cimg src=\"https://img.shields.io/badge/0870786036-fix-green\" alt=\"fix - 0870786036\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix mismatch in clusterer types (\u003ca href=\"https://redirect.github.com/angular/components/issues/32778\"\u003e#32778\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f5c586925eb9a1cc00a9b2e22860be1f69ef9184\"\u003e\u003cimg src=\"https://img.shields.io/badge/f5c586925e-fix-green\" alt=\"fix - f5c586925e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e disable position locking (\u003ca href=\"https://redirect.github.com/angular/components/issues/32772\"\u003e#32772\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/b15b48df980b1f86885d4d25fdc8ba58b2bac62b\"\u003e\u003cimg src=\"https://img.shields.io/badge/b15b48df98-fix-green\" alt=\"fix - b15b48df98\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e no nodes focusable if data is replaced (\u003ca href=\"https://redirect.github.com/angular/components/issues/32781\"\u003e#32781\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c57e6a1545d79d6ad515082fc89f0dfb5cb1ab8f\"\u003e\u003cimg src=\"https://img.shields.io/badge/c57e6a1545-fix-green\" alt=\"fix - c57e6a1545\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e fix autocomplete examples and add comments explaining combobox selection behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32714\"\u003e#32714\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.2.0-next.4\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4ff346bbb56bb8f6b117c9d03b6f80eac32bc2f8\"\u003e\u003cimg src=\"https://img.shields.io/badge/4ff346bbb-fix-green\" alt=\"fix - 4ff346bbb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eradio:\u003c/strong\u003e hide empty labels (\u003ca href=\"https://redirect.github.com/angular/components/issues/32754\"\u003e#32754\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/bee55117c674ac1ab3ec44acc624e92d1f960e14\"\u003e\u003cimg src=\"https://img.shields.io/badge/bee55117c-fix-green\" alt=\"fix - bee55117c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eslide-toggle:\u003c/strong\u003e overly broad selector (\u003ca href=\"https://redirect.github.com/angular/components/issues/32740\"\u003e#32740\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/06750e02e42283f7cdf84772da76ef3d9426b5ab\"\u003e\u003cimg src=\"https://img.shields.io/badge/06750e02e-fix-green\" alt=\"fix - 06750e02e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e do not block events to other overlays\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/70f8b6aac471a20dcc8f51da7aefdc930469b185\"\u003e\u003cimg src=\"https://img.shields.io/badge/70f8b6aac-perf-orange\" alt=\"perf - 70f8b6aac\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e performance when selecting in a large grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32766\"\u003e#32766\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 \u0026quot;plastic-lion\u0026quot; (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/31ff7f26b5dd08c1d48dc5ebb8f1a9ba57a2dc9c\"\u003e31ff7f26b5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d030725f462d93bbca9918f153a48b5631ef0476\"\u003ed030725f46\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/cd5209e9f59c8bd31de29d03fd743452d8ae3d03\"\u003ecd5209e9f5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eportal:\u003c/strong\u003e allow bindings to be passed to component portal (\u003ca href=\"https://redirect.github.com/angular/components/pull/32814\"\u003e#32814\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e397ecbcfad4e85fde8d116faf5caa80dcddca45\"\u003ee397ecbcfa\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e remove string-based DI tokens (\u003ca href=\"https://redirect.github.com/angular/components/pull/32677\"\u003e#32677\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8c4526935ef7e960ed4245a4621d41065ba34e3b\"\u003e8c4526935e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e expose strong focus indicator structural styles (\u003ca href=\"https://redirect.github.com/angular/components/pull/32808\"\u003e#32808\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/7fe308114829c4ce454cc247e59e59387ee7fd17\"\u003e7fe3081148\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e drop dependency on NgClass (\u003ca href=\"https://redirect.github.com/angular/components/pull/32810\"\u003e#32810\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.1.6 \u0026quot;plastic-monkey\u0026quot; (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/50c34e6ef314177cdd725a5b0c3177b65cc2809a\"\u003e50c34e6ef3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e Adjust AutoComplete examples to properly announce no results text (\u003ca href=\"https://redirect.github.com/angular/components/pull/32786\"\u003e#32786\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.1.5 \u0026quot;chlorine-car\u0026quot; (2026-02-18)\u003c/h1\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/017caa3be77563aafa7fe2d964172559bfc7874b\"\u003e017caa3be7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e fix autocomplete examples and add comments explaining combobox selection behavior (\u003ca href=\"https://redirect.github.com/angular/components/pull/32714\"\u003e#32714\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c825fa208d0313429321dc66d680f09378488399\"\u003ec825fa208d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e no nodes focusable if data is replaced (\u003ca href=\"https://redirect.github.com/angular/components/pull/32781\"\u003e#32781\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8f412ec5b72b9fe6e8cb9be8956eb126a5f697c3\"\u003e8f412ec5b7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e disable position locking (\u003ca href=\"https://redirect.github.com/angular/components/pull/32772\"\u003e#32772\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003egoogle-maps\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a73a70d291f0dc8229241cd45ec8775b392cdc86\"\u003ea73a70d291\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix mismatch in clusterer types (\u003ca href=\"https://redirect.github.com/angular/components/pull/32778\"\u003e#32778\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/37cffba9ef92e9aade70984abe037fee58666e0a\"\u003e\u003ccode\u003e37cffba\u003c/code\u003e\u003c/a\u003e release: cut the v21.2.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/eeacb0ecacf7632560486f67ebd1e70aef4ec17a\"\u003e\u003ccode\u003eeeacb0e\u003c/code\u003e\u003c/a\u003e ci: remove mmalerba from code reviewers (\u003ca href=\"https://redirect.github.com/angular/components/issues/32824\"\u003e#32824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/cd5209e9f59c8bd31de29d03fd743452d8ae3d03\"\u003e\u003ccode\u003ecd5209e\u003c/code\u003e\u003c/a\u003e fix(cdk/portal): allow bindings to be passed to component portal (\u003ca href=\"https://redirect.github.com/angular/components/issues/32814\"\u003e#32814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/7fe308114829c4ce454cc247e59e59387ee7fd17\"\u003e\u003ccode\u003e7fe3081\u003c/code\u003e\u003c/a\u003e fix(material/datepicker): drop dependency on NgClass (\u003ca href=\"https://redirect.github.com/angular/components/issues/32810\"\u003e#32810\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ef2f1cb303a04e1d127fbc15819fff843ccd4749\"\u003e\u003ccode\u003eef2f1cb\u003c/code\u003e\u003c/a\u003e build: set up schematics for v22 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32806\"\u003e#32806\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/8c4526935ef7e960ed4245a4621d41065ba34e3b\"\u003e\u003ccode\u003e8c45269\u003c/code\u003e\u003c/a\u003e fix(material/core): expose strong focus indicator structural styles (\u003ca href=\"https://redirect.github.com/angular/components/issues/32808\"\u003e#32808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ddd5114e779bb6686f0450caf350218ab3fb1543\"\u003e\u003ccode\u003eddd5114\u003c/code\u003e\u003c/a\u003e build: update dependencies and resolve breaking change (\u003ca href=\"https://redirect.github.com/angular/components/issues/32799\"\u003e#32799\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/f9e7149dbc42f2dc23f99bed11722645807dfe70\"\u003e\u003ccode\u003ef9e7149\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/32802\"\u003e#32802\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/e94e19c79533768463da3b3fa6925c8c0763813c\"\u003e\u003ccode\u003ee94e19c\u003c/code\u003e\u003c/a\u003e build: update pnpm to v10.30.0 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32804\"\u003e#32804\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/1c14bfbc30383293ca0735245c8b7d628678f69f\"\u003e\u003ccode\u003e1c14bfb\u003c/code\u003e\u003c/a\u003e fix(aria/combobox): Adjust AutoComplete examples to properly announce no resu...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/v21.0.5...v21.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/common` from 21.0.6 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): Highlight function calls with optional chaining (\u003ca href=\"https://github.com/angular/angular/commit/4f8d3995f082929d1ef4163dcb4373d3ef7a67cf\"\u003e4f8d3995f0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add linked editing ranges for HTML tag synchronization (\u003ca href=\"https://github.com/angular/angular/commit/8c21866f49ff74344551395ae0a5df1841d54c0d\"\u003e8c21866f49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(vscode-extension): support highlighting for class bindings with brackets (\u003ca href=\"https://github.com/angular/angular/commit/01ed57f297d6713724dfaedc9520f80471f37c10\"\u003e01ed57f297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add JSON schema for angularCompilerOptions (\u003ca href=\"https://github.com/angular/angular/commit/496967e7b13dfe1ebdde69724cd62880914beb60\"\u003e496967e7b1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(language-service): Detect local project version on creation (\u003ca href=\"https://github.com/angular/angular/commit/8a7cbd46685874f4500c52629d09c5f7fd309080\"\u003e8a7cbd4668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Support client-side file watching via \u003ccode\u003eonDidChangeWatchedFiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/commit/6fb39d9b62cbb634e95ec00fe5ef85d84da3bdbd\"\u003e6fb39d9b62\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add completions and hover info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/ebc90c26f5ff1ba1e0ca9b775a44e301ebfb9473\"\u003eebc90c26f5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add quick info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/573aadef7eb8b6b5e83b82a16f95d2a556f27c01\"\u003e573aadef7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add folding range support for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/26fd0839c32d2ebeaa5e3ecc10ed70ab9ca17749\"\u003e26fd0839c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003cimg src=\"https://img.shields.io/badge/18003a33bb-feat-blue\" alt=\"feat - 18003a33bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e\u003cimg src=\"https://img.shields.io/badge/8bbe6dc46c-feat-blue\" alt=\"feat - 8bbe6dc46c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003cimg src=\"https://img.shields.io/badge/51cc914807-feat-blue\" alt=\"feat - 51cc914807\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e\u003cimg src=\"https://img.shields.io/badge/72534e2a34-feat-blue\" alt=\"feat - 72534e2a34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003cimg src=\"https://img.shields.io/badge/95b3f37d4a-feat-blue\" alt=\"feat - 95b3f37d4a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e\u003cimg src=\"https://img.shields.io/badge/04ba09a8d9-feat-blue\" alt=\"feat - 04ba09a8d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce80136e7b-fix-green\" alt=\"fix - ce80136e7b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e\u003cimg src=\"https://img.shields.io/badge/3242a61bae-fix-green\" alt=\"fix - 3242a61bae\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e\u003cimg src=\"https://img.shields.io/badge/473dd3e1cb-fix-green\" alt=\"fix - 473dd3e1cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003e\u003cimg src=\"https://img.shields.io/badge/a904d9f77b-fix-green\" alt=\"fix - a904d9f77b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ea6dfc6c9-fix-green\" alt=\"fix - 2ea6dfc6c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d5210c9fe-feat-blue\" alt=\"feat - 8d5210c9fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d2498910-feat-blue\" alt=\"feat - 92d2498910\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea2016a6dc-feat-blue\" alt=\"feat - ea2016a6dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e\u003cimg src=\"https://img.shields.io/badge/81cabc1477-feat-blue\" alt=\"feat - 81cabc1477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ba9b7ac50-feat-blue\" alt=\"feat - 1ba9b7ac50\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003e\u003cimg src=\"https://img.shields.io/badge/d9923b72a2-feat-blue\" alt=\"feat - d9923b72a2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003e\u003cimg src=\"https://img.shields.io/badge/a7e8abbb7e-fix-green\" alt=\"fix - a7e8abbb7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e\u003cimg src=\"https://img.shields.io/badge/0806ee3826-fix-green\" alt=\"fix - 0806ee3826\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003e\u003cimg src=\"https://img.shields.io/badge/ed78fa05c7-fix-green\" alt=\"fix - ed78fa05c7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003e\u003cimg src=\"https://img.shields.io/badge/f56bb07d83-feat-blue\" alt=\"feat - f56bb07d83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba009b6031-feat-blue\" alt=\"feat - ba009b6031\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e\u003cimg src=\"https://img.shields.io/badge/22afbb2f36-feat-blue\" alt=\"feat - 22afbb2f36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e18003a33bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e8bbe6dc46c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e51cc914807\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e72534e2a34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e95b3f37d4a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e04ba09a8d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003ece80136e7b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e3242a61bae\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e473dd3e1cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003ea904d9f77b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e2ea6dfc6c9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e8d5210c9fe\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e92d2498910\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003eea2016a6dc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e81cabc1477\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e1ba9b7ac50\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003ed9923b72a2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003ea7e8abbb7e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e0806ee3826\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003eed78fa05c7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003ef56bb07d83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003eba009b6031\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e22afbb2f36\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95c386469c7a2f09dd731601c2061bdb10d25717\"\u003e95c386469c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd passing focus options to form field\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95ecce8334299defe55fb2b74264e5258ffd137c\"\u003e95ecce8334\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eallow setting submit options at form-level\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ebae211add37700858adeb8fc5d87bf503a59721\"\u003eebae211add\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce parse errors in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3937afc3167ce409eebb06d91d5fb122eea4e33d\"\u003e3937afc316\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce SignalFormControl for Reactive Forms compatibility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/30f09147545b67185f93efb9796e37c1db76733a\"\u003e30f0914754\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport binding null to number input (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/dd208ca2595258fcd1e289374f812ce0b56c7011\"\u003edd208ca259\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eupdate submit function to accept options object\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/27397b3f4f3182ce00d6e2f8690285c316e2a274\"\u003e27397b3f4f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eclear parse errors when model updates (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/63d80057039928b3e878b59c1fe6b93ef1c6b701\"\u003e63d8005703\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve custom-control focus context in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/631f60d1f9be72cb68330308a6ff18cc195babb8\"\u003e631f60d1f9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve parse errors when parse returns value\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/adfb83146b0c149734f43961563b389e00cc1d85\"\u003eadfb83146b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esimplify design of parse errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/fb05fc86d0f12ffafd94c7c1420118d8a79f7e59\"\u003efb05fc86d0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esort error summary by DOM order\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/70e4c7fbabb45277cf76ee138c0be275beec7919\"\u003e\u003ccode\u003e70e4c7f\u003c/code\u003e\u003c/a\u003e refactor(common): log a warning when a KeyValuePipe receives a signal\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/2eeeabb7606900ad4fe8e3370d73f6add985f35d\"\u003e\u003ccode\u003e2eeeabb\u003c/code\u003e\u003c/a\u003e fix(common): fix LCP image detection with duplicate URLs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3c4deaa52bb42130f90126f55786331aa8b4f7dc\"\u003e\u003ccode\u003e3c4deaa\u003c/code\u003e\u003c/a\u003e refactor(common): log a warning when a JsonPipe receives a signal\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a8aab6480962f18ff0b28b5e46358ff8d43745c9\"\u003e\u003ccode\u003ea8aab64\u003c/code\u003e\u003c/a\u003e refactor(core): remove outdated TODO comments referencing TypeScript 2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ddfc833df9e40d9c427c0300a41e195e5e398767\"\u003e\u003ccode\u003eddfc833\u003c/code\u003e\u003c/a\u003e refactor(common): improve image directive typings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003ccode\u003e18003a3\u003c/code\u003e\u003c/a\u003e feat(common): add an 'outlet' injector option for ngTemplateOutlet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/0c6eb60c8629c02fc342f849f4bb09567cd3f7dd\"\u003e\u003ccode\u003e0c6eb60\u003c/code\u003e\u003c/a\u003e test(http): remove zone-based testing utilities\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003ccode\u003e51cc914\u003c/code\u003e\u003c/a\u003e feat(common): support height in ImageLoaderConfig and built-in loaders\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/c6d75002030875a3e6b9460e7317ca3a9ae68179\"\u003e\u003ccode\u003ec6d7500\u003c/code\u003e\u003c/a\u003e test(common): remove zone-based testing utilities\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/cb1163e5e5434d5d96897180f6f0eb86d3992964\"\u003e\u003ccode\u003ecb1163e\u003c/code\u003e\u003c/a\u003e fix(http): correctly parse ArrayBuffer and Blob in transfer cache\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/v21.2.0/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/compiler` from 21.0.6 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): Highlight function calls with optional chaining (\u003ca href=\"https://github.com/angular/angular/commit/4f8d3995f082929d1ef4163dcb4373d3ef7a67cf\"\u003e4f8d3995f0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add linked editing ranges for HTML tag synchronization (\u003ca href=\"https://github.com/angular/angular/commit/8c21866f49ff74344551395ae0a5df1841d54c0d\"\u003e8c21866f49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(vscode-extension): support highlighting for class bindings with brackets (\u003ca href=\"https://github.com/angular/angular/commit/01ed57f297d6713724dfaedc9520f80471f37c10\"\u003e01ed57f297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add JSON schema for angularCompilerOptions (\u003ca href=\"https://github.com/angular/angular/commit/496967e7b13dfe1ebdde69724cd62880914beb60\"\u003e496967e7b1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(language-service): Detect local project version on creation (\u003ca href=\"https://github.com/angular/angular/commit/8a7cbd46685874f4500c52629d09c5f7fd309080\"\u003e8a7cbd4668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Support client-side file watching via \u003ccode\u003eonDidChangeWatchedFiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/commit/6fb39d9b62cbb634e95ec00fe5ef85d84da3bdbd\"\u003e6fb39d9b62\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add completions and hover info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/ebc90c26f5ff1ba1e0ca9b775a44e301ebfb9473\"\u003eebc90c26f5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add quick info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/573aadef7eb8b6b5e83b82a16f95d2a556f27c01\"\u003e573aadef7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add folding range support for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/26fd0839c32d2ebeaa5e3ecc10ed70ab9ca17749\"\u003e26fd0839c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003cimg src=\"https://img.shields.io/badge/18003a33bb-feat-blue\" alt=\"feat - 18003a33bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e\u003cimg src=\"https://img.shields.io/badge/8bbe6dc46c-feat-blue\" alt=\"feat - 8bbe6dc46c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003cimg src=\"https://img.shields.io/badge/51cc914807-feat-blue\" alt=\"feat - 51cc914807\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e\u003cimg src=\"https://img.shields.io/badge/72534e2a34-feat-blue\" alt=\"feat - 72534e2a34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003cimg src=\"https://img.shields.io/badge/95b3f37d4a-feat-blue\" alt=\"feat - 95b3f37d4a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e\u003cimg src=\"https://img.shields.io/badge/04ba09a8d9-feat-blue\" alt=\"feat - 04ba09a8d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce80136e7b-fix-green\" alt=\"fix - ce80136e7b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e\u003cimg src=\"https://img.shields.io/badge/3242a61bae-fix-green\" alt=\"fix - 3242a61bae\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e\u003cimg src=\"https://img.shields.io/badge/473dd3e1cb-fix-green\" alt=\"fix - 473dd3e1cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003e\u003cimg src=\"https://img.shields.io/badge/a904d9f77b-fix-green\" alt=\"fix - a904d9f77b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ea6dfc6c9-fix-green\" alt=\"fix - 2ea6dfc6c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d5210c9fe-feat-blue\" alt=\"feat - 8d5210c9fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d2498910-feat-blue\" alt=\"feat - 92d2498910\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea2016a6dc-feat-blue\" alt=\"feat - ea2016a6dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e\u003cimg src=\"https://img.shields.io/badge/81cabc1477-feat-blue\" alt=\"feat - 81cabc1477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ba9b7ac50-feat-blue\" alt=\"feat - 1ba9b7ac50\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003e\u003cimg src=\"https://img.shields.io/badge/d9923b72a2-feat-blue\" alt=\"feat - d9923b72a2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003e\u003cimg src=\"https://img.shields.io/badge/a7e8abbb7e-fix-green\" alt=\"fix - a7e8abbb7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e\u003cimg src=\"https://img.shields.io/badge/0806ee3826-fix-green\" alt=\"fix - 0806ee3826\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003e\u003cimg src=\"https://img.shields.io/badge/ed78fa05c7-fix-green\" alt=\"fix - ed78fa05c7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003e\u003cimg src=\"https://img.shields.io/badge/f56bb07d83-feat-blue\" alt=\"feat - f56bb07d83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba009b6031-feat-blue\" alt=\"feat - ba009b6031\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e\u003cimg src=\"https://img.shields.io/badge/22afbb2f36-feat-blue\" alt=\"feat - 22afbb2f36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e18003a33bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e8bbe6dc46c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e51cc914807\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e72534e2a34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e95b3f37d4a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e04ba09a8d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003ece80136e7b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e3242a61bae\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e473dd3e1cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003ea904d9f77b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e2ea6dfc6c9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e8d5210c9fe\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e92d2498910\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003eea2016a6dc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e81cabc1477\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e1ba9b7ac50\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003ed9923b72a2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003ea7e8abbb7e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e0806ee3826\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003eed78fa05c7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003ef56bb07d83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003eba009b6031\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e22afbb2f36\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95c386469c7a2f09dd731601c2061bdb10d25717\"\u003e95c386469c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd passing focus options to form field\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95ecce8334299defe55fb2b74264e5258ffd137c\"\u003e95ecce8334\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eallow setting submit options at form-level\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ebae211add37700858adeb8fc5d87bf503a59721\"\u003eebae211add\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce parse errors in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3937afc3167ce409eebb06d91d5fb122eea4e33d\"\u003e3937afc316\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce SignalFormControl for Reactive Forms compatibility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/30f09147545b67185f93efb9796e37c1db76733a\"\u003e30f0914754\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport binding null to number input (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/dd208ca2595258fcd1e289374f812ce0b56c7011\"\u003edd208ca259\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eupdate submit function to accept options object\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/27397b3f4f3182ce00d6e2f8690285c316e2a274\"\u003e27397b3f4f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eclear parse errors when model updates (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/63d80057039928b3e878b59c1fe6b93ef1c6b701\"\u003e63d8005703\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve custom-control focus context in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/631f60d1f9be72cb68330308a6ff18cc195babb8\"\u003e631f60d1f9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve parse errors when parse returns value\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/adfb83146b0c149734f43961563b389e00cc1d85\"\u003eadfb83146b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esimplify design of parse errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/fb05fc86d0f12ffafd94c7c1420118d8a79f7e59\"\u003efb05fc86d0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esort error summary by DOM order\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003ccode\u003e95b3f37\u003c/code\u003e\u003c/a\u003e feat(compiler): Exhaustive checks for switch blocks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9c5658adb1146b24ebf31fef534c4bbae1ced548\"\u003e\u003ccode\u003e9c5658a\u003c/code\u003e\u003c/a\u003e refactor(compiler): clean up pipeline compatibility distinction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e0d783e5b5a256c0aa2fb1d3e008677c0603382\"\u003e\u003ccode\u003e6e0d783\u003c/code\u003e\u003c/a\u003e refactor(compiler): Add info about unclosed element.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/06d94ac0caacce20d5afbdb1e940911bdc500d78\"\u003e\u003ccode\u003e06d94ac\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(compiler): Add info about unclosed element.\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/097208454bb0d5ebaad701a991125d2a33d1f79b\"\u003e\u003ccode\u003e0972084\u003c/code\u003e\u003c/a\u003e refactor(compiler): Add info about unclosed element.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b386f95bd05c6e9efdc00050b1e9ac28421e5f44\"\u003e\u003ccode\u003eb386f95\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(compiler): Add info about unclosed element.\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9b69e296032a0c1572356c2b9f7b74fad6290052\"\u003e\u003ccode\u003e9b69e29\u003c/code\u003e\u003c/a\u003e refactor(compiler): Add info about unclosed element.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/11834a42745e62830a83a4c14eea9d203baec680\"\u003e\u003ccode\u003e11834a4\u003c/code\u003e\u003c/a\u003e fix(compiler): add geolocation element to schema\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/11767cabe48606a1f575d50b8af79b8bbb35a852\"\u003e\u003ccode\u003e11767ca\u003c/code\u003e\u003c/a\u003e build: update Jasmine to 6.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a1441a432d508281e7c7fe8e03f92628a77a5685\"\u003e\u003ccode\u003ea1441a4\u003c/code\u003e\u003c/a\u003e refactor(compiler): remove zone-based testing utilities\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/v21.2.0/packages/compiler\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/core` from 21.0.6 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): Highlight function calls with optional chaining (\u003ca href=\"https://github.com/angular/angular/commit/4f8d3995f082929d1ef4163dcb4373d3ef7a67cf\"\u003e4f8d3995f0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add linked editing ranges for HTML tag synchronization (\u003ca href=\"https://github.com/angular/angular/commit/8c21866f49ff74344551395ae0a5df1841d54c0d\"\u003e8c21866f49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(vscode-extension): support highlighting for class bindings with brackets (\u003ca href=\"https://github.com/angular/angular/commit/01ed57f297d6713724dfaedc9520f80471f37c10\"\u003e01ed57f297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add JSON schema for angularCompilerOptions (\u003ca href=\"https://github.com/angular/angular/commit/496967e7b13dfe1ebdde69724cd62880914beb60\"\u003e496967e7b1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(language-service): Detect local project version on creation (\u003ca href=\"https://github.com/angular/angular/commit/8a7cbd46685874f4500c52629d09c5f7fd309080\"\u003e8a7cbd4668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Support client-side file watching via \u003ccode\u003eonDidChangeWatchedFiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/commit/6fb39d9b62cbb634e95ec00fe5ef85d84da3bdbd\"\u003e6fb39d9b62\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add completions and hover info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/ebc90c26f5ff1ba1e0ca9b775a44e301ebfb9473\"\u003eebc90c26f5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add quick info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/573aadef7eb8b6b5e83b82a16f95d2a556f27c01\"\u003e573aadef7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add folding range support for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/26fd0839c32d2ebeaa5e3ecc10ed70ab9ca17749\"\u003e26fd0839c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003cimg src=\"https://img.shields.io/badge/18003a33bb-feat-blue\" alt=\"feat - 18003a33bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e\u003cimg src=\"https://img.shields.io/badge/8bbe6dc46c-feat-blue\" alt=\"feat - 8bbe6dc46c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003cimg src=\"https://img.shields.io/badge/51cc914807-feat-blue\" alt=\"feat - 51cc914807\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e\u003cimg src=\"https://img.shields.io/badge/72534e2a34-feat-blue\" alt=\"feat - 72534e2a34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003cimg src=\"https://img.shields.io/badge/95b3f37d4a-feat-blue\" alt=\"feat - 95b3f37d4a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e\u003cimg src=\"https://img.shields.io/badge/04ba09a8d9-feat-blue\" alt=\"feat - 04ba09a8d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce80136e7b-fix-green\" alt=\"fix - ce80136e7b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e\u003cimg src=\"https://img.shields.io/badge/3242a61bae-fix-green\" alt=\"fix - 3242a61bae\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e\u003cimg src=\"https://img.shields.io/badge/473dd3e1cb-fix-green\" alt=\"fix - 473dd3e1cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003e\u003cimg src=\"https://img.shields.io/badge/a904d9f77b-fix-green\" alt=\"fix - a904d9f77b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ea6dfc6c9-fix-green\" alt=\"fix - 2ea6dfc6c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d5210c9fe-feat-blue\" alt=\"feat - 8d5210c9fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d2498910-feat-blue\" alt=\"feat - 92d2498910\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea2016a6dc-feat-blue\" alt=\"feat - ea2016a6dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e\u003cimg src=\"https://img.shields.io/badge/81cabc1477-feat-blue\" alt=\"feat - 81cabc1477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ba9b7ac50-feat-blue\" alt=\"feat - 1ba9b7ac50\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003e\u003cimg src=\"https://img.shields.io/badge/d9923b72a2-feat-blue\" alt=\"feat - d9923b72a2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003e\u003cimg src=\"https://img.shields.io/badge/a7e8abbb7e-fix-green\" alt=\"fix - a7e8abbb7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e\u003cimg src=\"https://img.shields.io/badge/0806ee3826-fix-green\" alt=\"fix - 0806ee3826\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003e\u003cimg src=\"https://img.shields.io/badge/ed78fa05c7-fix-green\" alt=\"fix - ed78fa05c7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003e\u003cimg src=\"https://img.shields.io/badge/f56bb07d83-feat-blue\" alt=\"feat - f56bb07d83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba009b6031-feat-blue\" alt=\"feat - ba009b6031\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e\u003cimg src=\"https://img.shields.io/badge/22afbb2f36-feat-blue\" alt=\"feat - 22afbb2f36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e18003a33bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e8bbe6dc46c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e51cc914807\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e72534e2a34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e95b3f37d4a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e04ba09a8d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003ece80136e7b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e3242a61bae\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e473dd3e1cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/...\n\n_Description has been truncated_","html_url":"https://github.com/frankykevin/paperless-ngx/pull/138","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/frankykevin%2Fpaperless-ngx/issues/138","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/138/packages"},{"uuid":"4005467652","node_id":"PR_kwDORbXkoM7HCyv8","number":9,"state":"open","title":"Chore(deps): Bump the frontend-angular-dependencies group in /src-ui with 23 updates","user":"dependabot[bot]","labels":["dependencies","non-trivial","frontend"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-02-28T21:33:53.000Z","updated_at":"2026-02-28T21:34:25.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Chore(deps): Bump","group_name":"frontend-angular-dependencies","update_count":23,"packages":[{"name":"@angular/cdk","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/components"},{"name":"@angular/common","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/compiler","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/core","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/forms","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/localize","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser-dynamic","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/router","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@ng-select/ng-select","old_version":"21.1.4","new_version":"21.4.0","repository_url":"https://github.com/ng-select/ng-select"},{"name":"ngx-ui-tour-ng-bootstrap","old_version":"17.0.1","new_version":"18.0.0","repository_url":"https://github.com/hakimio/ngx-ui-tour"},{"name":"@angular-builders/custom-webpack","old_version":"21.0.0-beta.1","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"21.0.0-beta.1","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/core","old_version":"21.0.5","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/schematics","old_version":"21.0.5","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-eslint/builder","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin-template","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/schematics","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/template-parser","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular/build","old_version":"21.0.5","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/cli","old_version":"21.0.5","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/compiler-cli","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"}],"path":"/src-ui","ecosystem":"npm"},"body":"Bumps the frontend-angular-dependencies group in /src-ui with 23 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/cdk](https://github.com/angular/components) | `21.0.6` | `21.2.0` |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `21.0.8` | `21.2.0` |\n| [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) | `21.0.8` | `21.2.0` |\n| [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) | `21.0.8` | `21.2.0` |\n| [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) | `21.0.8` | `21.2.0` |\n| [@angular/localize](https://github.com/angular/angular) | `21.0.8` | `21.2.0` |\n| [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) | `21.0.8` | `21.2.0` |\n| [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) | `21.0.8` | `21.2.0` |\n| [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) | `21.0.8` | `21.2.0` |\n| [@ng-select/ng-select](https://github.com/ng-select/ng-select) | `21.1.4` | `21.4.0` |\n| [ngx-ui-tour-ng-bootstrap](https://github.com/hakimio/ngx-ui-tour) | `17.0.1` | `18.0.0` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `21.0.0-beta.1` | `21.0.3` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `21.0.0-beta.1` | `21.0.3` |\n| [@angular-devkit/core](https://github.com/angular/angular-cli) | `21.0.5` | `21.2.0` |\n| [@angular-devkit/schematics](https://github.com/angular/angular-cli) | `21.0.5` | `21.2.0` |\n| [@angular-eslint/builder](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/builder) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/eslint-plugin](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/eslint-plugin-template](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin-template) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/schematics](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/schematics) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/template-parser](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/template-parser) | `21.1.0` | `21.2.0` |\n| [@angular/build](https://github.com/angular/angular-cli) | `21.0.5` | `21.2.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `21.0.5` | `21.2.0` |\n| [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) | `21.0.8` | `21.2.0` |\n\nUpdates `@angular/cdk` from 21.0.6 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8c4526935ef7e960ed4245a4621d41065ba34e3b\"\u003e\u003cimg src=\"https://img.shields.io/badge/8c4526935e-fix-green\" alt=\"fix - 8c4526935e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e expose strong focus indicator structural styles (\u003ca href=\"https://redirect.github.com/angular/components/issues/32808\"\u003e#32808\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/7fe308114829c4ce454cc247e59e59387ee7fd17\"\u003e\u003cimg src=\"https://img.shields.io/badge/7fe3081148-fix-green\" alt=\"fix - 7fe3081148\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e drop dependency on NgClass (\u003ca href=\"https://redirect.github.com/angular/components/issues/32810\"\u003e#32810\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/cd5209e9f59c8bd31de29d03fd743452d8ae3d03\"\u003e\u003cimg src=\"https://img.shields.io/badge/cd5209e9f5-fix-green\" alt=\"fix - cd5209e9f5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eportal:\u003c/strong\u003e allow bindings to be passed to component portal (\u003ca href=\"https://redirect.github.com/angular/components/issues/32814\"\u003e#32814\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e397ecbcfad4e85fde8d116faf5caa80dcddca45\"\u003e\u003cimg src=\"https://img.shields.io/badge/e397ecbcfa-fix-green\" alt=\"fix - e397ecbcfa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e remove string-based DI tokens (\u003ca href=\"https://redirect.github.com/angular/components/issues/32677\"\u003e#32677\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/31ff7f26b5dd08c1d48dc5ebb8f1a9ba57a2dc9c\"\u003e\u003cimg src=\"https://img.shields.io/badge/31ff7f26b5-fix-green\" alt=\"fix - 31ff7f26b5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d030725f462d93bbca9918f153a48b5631ef0476\"\u003e\u003cimg src=\"https://img.shields.io/badge/d030725f46-fix-green\" alt=\"fix - d030725f46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.2.0-rc.0\u003c/h2\u003e\n\u003cp\u003eNo release notes provided.\u003c/p\u003e\n\u003ch2\u003e21.2.0-next.5\u003c/h2\u003e\n\u003ch3\u003egoogle-maps\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0870786036286c3b0d3485cb31098afdf22c0350\"\u003e\u003cimg src=\"https://img.shields.io/badge/0870786036-fix-green\" alt=\"fix - 0870786036\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix mismatch in clusterer types (\u003ca href=\"https://redirect.github.com/angular/components/issues/32778\"\u003e#32778\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f5c586925eb9a1cc00a9b2e22860be1f69ef9184\"\u003e\u003cimg src=\"https://img.shields.io/badge/f5c586925e-fix-green\" alt=\"fix - f5c586925e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e disable position locking (\u003ca href=\"https://redirect.github.com/angular/components/issues/32772\"\u003e#32772\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/b15b48df980b1f86885d4d25fdc8ba58b2bac62b\"\u003e\u003cimg src=\"https://img.shields.io/badge/b15b48df98-fix-green\" alt=\"fix - b15b48df98\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e no nodes focusable if data is replaced (\u003ca href=\"https://redirect.github.com/angular/components/issues/32781\"\u003e#32781\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c57e6a1545d79d6ad515082fc89f0dfb5cb1ab8f\"\u003e\u003cimg src=\"https://img.shields.io/badge/c57e6a1545-fix-green\" alt=\"fix - c57e6a1545\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e fix autocomplete examples and add comments explaining combobox selection behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32714\"\u003e#32714\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.2.0-next.4\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4ff346bbb56bb8f6b117c9d03b6f80eac32bc2f8\"\u003e\u003cimg src=\"https://img.shields.io/badge/4ff346bbb-fix-green\" alt=\"fix - 4ff346bbb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eradio:\u003c/strong\u003e hide empty labels (\u003ca href=\"https://redirect.github.com/angular/components/issues/32754\"\u003e#32754\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/bee55117c674ac1ab3ec44acc624e92d1f960e14\"\u003e\u003cimg src=\"https://img.shields.io/badge/bee55117c-fix-green\" alt=\"fix - bee55117c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eslide-toggle:\u003c/strong\u003e overly broad selector (\u003ca href=\"https://redirect.github.com/angular/components/issues/32740\"\u003e#32740\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/06750e02e42283f7cdf84772da76ef3d9426b5ab\"\u003e\u003cimg src=\"https://img.shields.io/badge/06750e02e-fix-green\" alt=\"fix - 06750e02e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e do not block events to other overlays\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/70f8b6aac471a20dcc8f51da7aefdc930469b185\"\u003e\u003cimg src=\"https://img.shields.io/badge/70f8b6aac-perf-orange\" alt=\"perf - 70f8b6aac\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e performance when selecting in a large grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32766\"\u003e#32766\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 \u0026quot;plastic-lion\u0026quot; (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/31ff7f26b5dd08c1d48dc5ebb8f1a9ba57a2dc9c\"\u003e31ff7f26b5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d030725f462d93bbca9918f153a48b5631ef0476\"\u003ed030725f46\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/cd5209e9f59c8bd31de29d03fd743452d8ae3d03\"\u003ecd5209e9f5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eportal:\u003c/strong\u003e allow bindings to be passed to component portal (\u003ca href=\"https://redirect.github.com/angular/components/pull/32814\"\u003e#32814\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e397ecbcfad4e85fde8d116faf5caa80dcddca45\"\u003ee397ecbcfa\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e remove string-based DI tokens (\u003ca href=\"https://redirect.github.com/angular/components/pull/32677\"\u003e#32677\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8c4526935ef7e960ed4245a4621d41065ba34e3b\"\u003e8c4526935e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e expose strong focus indicator structural styles (\u003ca href=\"https://redirect.github.com/angular/components/pull/32808\"\u003e#32808\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/7fe308114829c4ce454cc247e59e59387ee7fd17\"\u003e7fe3081148\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e drop dependency on NgClass (\u003ca href=\"https://redirect.github.com/angular/components/pull/32810\"\u003e#32810\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.1.6 \u0026quot;plastic-monkey\u0026quot; (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/50c34e6ef314177cdd725a5b0c3177b65cc2809a\"\u003e50c34e6ef3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e Adjust AutoComplete examples to properly announce no results text (\u003ca href=\"https://redirect.github.com/angular/components/pull/32786\"\u003e#32786\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.1.5 \u0026quot;chlorine-car\u0026quot; (2026-02-18)\u003c/h1\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/017caa3be77563aafa7fe2d964172559bfc7874b\"\u003e017caa3be7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e fix autocomplete examples and add comments explaining combobox selection behavior (\u003ca href=\"https://redirect.github.com/angular/components/pull/32714\"\u003e#32714\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c825fa208d0313429321dc66d680f09378488399\"\u003ec825fa208d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e no nodes focusable if data is replaced (\u003ca href=\"https://redirect.github.com/angular/components/pull/32781\"\u003e#32781\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8f412ec5b72b9fe6e8cb9be8956eb126a5f697c3\"\u003e8f412ec5b7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e disable position locking (\u003ca href=\"https://redirect.github.com/angular/components/pull/32772\"\u003e#32772\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003egoogle-maps\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a73a70d291f0dc8229241cd45ec8775b392cdc86\"\u003ea73a70d291\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix mismatch in clusterer types (\u003ca href=\"https://redirect.github.com/angular/components/pull/32778\"\u003e#32778\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/37cffba9ef92e9aade70984abe037fee58666e0a\"\u003e\u003ccode\u003e37cffba\u003c/code\u003e\u003c/a\u003e release: cut the v21.2.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/eeacb0ecacf7632560486f67ebd1e70aef4ec17a\"\u003e\u003ccode\u003eeeacb0e\u003c/code\u003e\u003c/a\u003e ci: remove mmalerba from code reviewers (\u003ca href=\"https://redirect.github.com/angular/components/issues/32824\"\u003e#32824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/cd5209e9f59c8bd31de29d03fd743452d8ae3d03\"\u003e\u003ccode\u003ecd5209e\u003c/code\u003e\u003c/a\u003e fix(cdk/portal): allow bindings to be passed to component portal (\u003ca href=\"https://redirect.github.com/angular/components/issues/32814\"\u003e#32814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/7fe308114829c4ce454cc247e59e59387ee7fd17\"\u003e\u003ccode\u003e7fe3081\u003c/code\u003e\u003c/a\u003e fix(material/datepicker): drop dependency on NgClass (\u003ca href=\"https://redirect.github.com/angular/components/issues/32810\"\u003e#32810\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ef2f1cb303a04e1d127fbc15819fff843ccd4749\"\u003e\u003ccode\u003eef2f1cb\u003c/code\u003e\u003c/a\u003e build: set up schematics for v22 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32806\"\u003e#32806\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/8c4526935ef7e960ed4245a4621d41065ba34e3b\"\u003e\u003ccode\u003e8c45269\u003c/code\u003e\u003c/a\u003e fix(material/core): expose strong focus indicator structural styles (\u003ca href=\"https://redirect.github.com/angular/components/issues/32808\"\u003e#32808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ddd5114e779bb6686f0450caf350218ab3fb1543\"\u003e\u003ccode\u003eddd5114\u003c/code\u003e\u003c/a\u003e build: update dependencies and resolve breaking change (\u003ca href=\"https://redirect.github.com/angular/components/issues/32799\"\u003e#32799\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/f9e7149dbc42f2dc23f99bed11722645807dfe70\"\u003e\u003ccode\u003ef9e7149\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/32802\"\u003e#32802\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/e94e19c79533768463da3b3fa6925c8c0763813c\"\u003e\u003ccode\u003ee94e19c\u003c/code\u003e\u003c/a\u003e build: update pnpm to v10.30.0 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32804\"\u003e#32804\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/1c14bfbc30383293ca0735245c8b7d628678f69f\"\u003e\u003ccode\u003e1c14bfb\u003c/code\u003e\u003c/a\u003e fix(aria/combobox): Adjust AutoComplete examples to properly announce no resu...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/v21.0.6...v21.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/common` from 21.0.8 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): Highlight function calls with optional chaining (\u003ca href=\"https://github.com/angular/angular/commit/4f8d3995f082929d1ef4163dcb4373d3ef7a67cf\"\u003e4f8d3995f0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add linked editing ranges for HTML tag synchronization (\u003ca href=\"https://github.com/angular/angular/commit/8c21866f49ff74344551395ae0a5df1841d54c0d\"\u003e8c21866f49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(vscode-extension): support highlighting for class bindings with brackets (\u003ca href=\"https://github.com/angular/angular/commit/01ed57f297d6713724dfaedc9520f80471f37c10\"\u003e01ed57f297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add JSON schema for angularCompilerOptions (\u003ca href=\"https://github.com/angular/angular/commit/496967e7b13dfe1ebdde69724cd62880914beb60\"\u003e496967e7b1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(language-service): Detect local project version on creation (\u003ca href=\"https://github.com/angular/angular/commit/8a7cbd46685874f4500c52629d09c5f7fd309080\"\u003e8a7cbd4668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Support client-side file watching via \u003ccode\u003eonDidChangeWatchedFiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/commit/6fb39d9b62cbb634e95ec00fe5ef85d84da3bdbd\"\u003e6fb39d9b62\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add completions and hover info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/ebc90c26f5ff1ba1e0ca9b775a44e301ebfb9473\"\u003eebc90c26f5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add quick info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/573aadef7eb8b6b5e83b82a16f95d2a556f27c01\"\u003e573aadef7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add folding range support for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/26fd0839c32d2ebeaa5e3ecc10ed70ab9ca17749\"\u003e26fd0839c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003cimg src=\"https://img.shields.io/badge/18003a33bb-feat-blue\" alt=\"feat - 18003a33bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e\u003cimg src=\"https://img.shields.io/badge/8bbe6dc46c-feat-blue\" alt=\"feat - 8bbe6dc46c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003cimg src=\"https://img.shields.io/badge/51cc914807-feat-blue\" alt=\"feat - 51cc914807\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e\u003cimg src=\"https://img.shields.io/badge/72534e2a34-feat-blue\" alt=\"feat - 72534e2a34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003cimg src=\"https://img.shields.io/badge/95b3f37d4a-feat-blue\" alt=\"feat - 95b3f37d4a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e\u003cimg src=\"https://img.shields.io/badge/04ba09a8d9-feat-blue\" alt=\"feat - 04ba09a8d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce80136e7b-fix-green\" alt=\"fix - ce80136e7b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e\u003cimg src=\"https://img.shields.io/badge/3242a61bae-fix-green\" alt=\"fix - 3242a61bae\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e\u003cimg src=\"https://img.shields.io/badge/473dd3e1cb-fix-green\" alt=\"fix - 473dd3e1cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003e\u003cimg src=\"https://img.shields.io/badge/a904d9f77b-fix-green\" alt=\"fix - a904d9f77b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ea6dfc6c9-fix-green\" alt=\"fix - 2ea6dfc6c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d5210c9fe-feat-blue\" alt=\"feat - 8d5210c9fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d2498910-feat-blue\" alt=\"feat - 92d2498910\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea2016a6dc-feat-blue\" alt=\"feat - ea2016a6dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e\u003cimg src=\"https://img.shields.io/badge/81cabc1477-feat-blue\" alt=\"feat - 81cabc1477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ba9b7ac50-feat-blue\" alt=\"feat - 1ba9b7ac50\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003e\u003cimg src=\"https://img.shields.io/badge/d9923b72a2-feat-blue\" alt=\"feat - d9923b72a2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003e\u003cimg src=\"https://img.shields.io/badge/a7e8abbb7e-fix-green\" alt=\"fix - a7e8abbb7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e\u003cimg src=\"https://img.shields.io/badge/0806ee3826-fix-green\" alt=\"fix - 0806ee3826\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003e\u003cimg src=\"https://img.shields.io/badge/ed78fa05c7-fix-green\" alt=\"fix - ed78fa05c7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003e\u003cimg src=\"https://img.shields.io/badge/f56bb07d83-feat-blue\" alt=\"feat - f56bb07d83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba009b6031-feat-blue\" alt=\"feat - ba009b6031\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e\u003cimg src=\"https://img.shields.io/badge/22afbb2f36-feat-blue\" alt=\"feat - 22afbb2f36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e18003a33bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e8bbe6dc46c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e51cc914807\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e72534e2a34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e95b3f37d4a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e04ba09a8d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003ece80136e7b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e3242a61bae\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e473dd3e1cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003ea904d9f77b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e2ea6dfc6c9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e8d5210c9fe\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e92d2498910\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003eea2016a6dc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e81cabc1477\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e1ba9b7ac50\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003ed9923b72a2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003ea7e8abbb7e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e0806ee3826\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003eed78fa05c7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003ef56bb07d83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003eba009b6031\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e22afbb2f36\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95c386469c7a2f09dd731601c2061bdb10d25717\"\u003e95c386469c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd passing focus options to form field\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95ecce8334299defe55fb2b74264e5258ffd137c\"\u003e95ecce8334\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eallow setting submit options at form-level\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ebae211add37700858adeb8fc5d87bf503a59721\"\u003eebae211add\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce parse errors in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3937afc3167ce409eebb06d91d5fb122eea4e33d\"\u003e3937afc316\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce SignalFormControl for Reactive Forms compatibility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/30f09147545b67185f93efb9796e37c1db76733a\"\u003e30f0914754\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport binding null to number input (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/dd208ca2595258fcd1e289374f812ce0b56c7011\"\u003edd208ca259\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eupdate submit function to accept options object\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/27397b3f4f3182ce00d6e2f8690285c316e2a274\"\u003e27397b3f4f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eclear parse errors when model updates (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/63d80057039928b3e878b59c1fe6b93ef1c6b701\"\u003e63d8005703\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve custom-control focus context in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/631f60d1f9be72cb68330308a6ff18cc195babb8\"\u003e631f60d1f9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve parse errors when parse returns value\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/adfb83146b0c149734f43961563b389e00cc1d85\"\u003eadfb83146b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esimplify design of parse errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/fb05fc86d0f12ffafd94c7c1420118d8a79f7e59\"\u003efb05fc86d0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esort error summary by DOM order\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/70e4c7fbabb45277cf76ee138c0be275beec7919\"\u003e\u003ccode\u003e70e4c7f\u003c/code\u003e\u003c/a\u003e refactor(common): log a warning when a KeyValuePipe receives a signal\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/2eeeabb7606900ad4fe8e3370d73f6add985f35d\"\u003e\u003ccode\u003e2eeeabb\u003c/code\u003e\u003c/a\u003e fix(common): fix LCP image detection with duplicate URLs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3c4deaa52bb42130f90126f55786331aa8b4f7dc\"\u003e\u003ccode\u003e3c4deaa\u003c/code\u003e\u003c/a\u003e refactor(common): log a warning when a JsonPipe receives a signal\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a8aab6480962f18ff0b28b5e46358ff8d43745c9\"\u003e\u003ccode\u003ea8aab64\u003c/code\u003e\u003c/a\u003e refactor(core): remove outdated TODO comments referencing TypeScript 2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ddfc833df9e40d9c427c0300a41e195e5e398767\"\u003e\u003ccode\u003eddfc833\u003c/code\u003e\u003c/a\u003e refactor(common): improve image directive typings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003ccode\u003e18003a3\u003c/code\u003e\u003c/a\u003e feat(common): add an 'outlet' injector option for ngTemplateOutlet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/0c6eb60c8629c02fc342f849f4bb09567cd3f7dd\"\u003e\u003ccode\u003e0c6eb60\u003c/code\u003e\u003c/a\u003e test(http): remove zone-based testing utilities\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003ccode\u003e51cc914\u003c/code\u003e\u003c/a\u003e feat(common): support height in ImageLoaderConfig and built-in loaders\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/c6d75002030875a3e6b9460e7317ca3a9ae68179\"\u003e\u003ccode\u003ec6d7500\u003c/code\u003e\u003c/a\u003e test(common): remove zone-based testing utilities\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/cb1163e5e5434d5d96897180f6f0eb86d3992964\"\u003e\u003ccode\u003ecb1163e\u003c/code\u003e\u003c/a\u003e fix(http): correctly parse ArrayBuffer and Blob in transfer cache\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/v21.2.0/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/compiler` from 21.0.8 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): Highlight function calls with optional chaining (\u003ca href=\"https://github.com/angular/angular/commit/4f8d3995f082929d1ef4163dcb4373d3ef7a67cf\"\u003e4f8d3995f0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add linked editing ranges for HTML tag synchronization (\u003ca href=\"https://github.com/angular/angular/commit/8c21866f49ff74344551395ae0a5df1841d54c0d\"\u003e8c21866f49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(vscode-extension): support highlighting for class bindings with brackets (\u003ca href=\"https://github.com/angular/angular/commit/01ed57f297d6713724dfaedc9520f80471f37c10\"\u003e01ed57f297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add JSON schema for angularCompilerOptions (\u003ca href=\"https://github.com/angular/angular/commit/496967e7b13dfe1ebdde69724cd62880914beb60\"\u003e496967e7b1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(language-service): Detect local project version on creation (\u003ca href=\"https://github.com/angular/angular/commit/8a7cbd46685874f4500c52629d09c5f7fd309080\"\u003e8a7cbd4668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Support client-side file watching via \u003ccode\u003eonDidChangeWatchedFiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/commit/6fb39d9b62cbb634e95ec00fe5ef85d84da3bdbd\"\u003e6fb39d9b62\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add completions and hover info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/ebc90c26f5ff1ba1e0ca9b775a44e301ebfb9473\"\u003eebc90c26f5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add quick info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/573aadef7eb8b6b5e83b82a16f95d2a556f27c01\"\u003e573aadef7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add folding range support for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/26fd0839c32d2ebeaa5e3ecc10ed70ab9ca17749\"\u003e26fd0839c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003cimg src=\"https://img.shields.io/badge/18003a33bb-feat-blue\" alt=\"feat - 18003a33bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e\u003cimg src=\"https://img.shields.io/badge/8bbe6dc46c-feat-blue\" alt=\"feat - 8bbe6dc46c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003cimg src=\"https://img.shields.io/badge/51cc914807-feat-blue\" alt=\"feat - 51cc914807\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e\u003cimg src=\"https://img.shields.io/badge/72534e2a34-feat-blue\" alt=\"feat - 72534e2a34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003cimg src=\"https://img.shields.io/badge/95b3f37d4a-feat-blue\" alt=\"feat - 95b3f37d4a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e\u003cimg src=\"https://img.shields.io/badge/04ba09a8d9-feat-blue\" alt=\"feat - 04ba09a8d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce80136e7b-fix-green\" alt=\"fix - ce80136e7b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e\u003cimg src=\"https://img.shields.io/badge/3242a61bae-fix-green\" alt=\"fix - 3242a61bae\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e\u003cimg src=\"https://img.shields.io/badge/473dd3e1cb-fix-green\" alt=\"fix - 473dd3e1cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003e\u003cimg src=\"https://img.shields.io/badge/a904d9f77b-fix-green\" alt=\"fix - a904d9f77b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ea6dfc6c9-fix-green\" alt=\"fix - 2ea6dfc6c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d5210c9fe-feat-blue\" alt=\"feat - 8d5210c9fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d2498910-feat-blue\" alt=\"feat - 92d2498910\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea2016a6dc-feat-blue\" alt=\"feat - ea2016a6dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e\u003cimg src=\"https://img.shields.io/badge/81cabc1477-feat-blue\" alt=\"feat - 81cabc1477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ba9b7ac50-feat-blue\" alt=\"feat - 1ba9b7ac50\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003e\u003cimg src=\"https://img.shields.io/badge/d9923b72a2-feat-blue\" alt=\"feat - d9923b72a2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003e\u003cimg src=\"https://img.shields.io/badge/a7e8abbb7e-fix-green\" alt=\"fix - a7e8abbb7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e\u003cimg src=\"https://img.shields.io/badge/0806ee3826-fix-green\" alt=\"fix - 0806ee3826\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003e\u003cimg src=\"https://img.shields.io/badge/ed78fa05c7-fix-green\" alt=\"fix - ed78fa05c7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003e\u003cimg src=\"https://img.shields.io/badge/f56bb07d83-feat-blue\" alt=\"feat - f56bb07d83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba009b6031-feat-blue\" alt=\"feat - ba009b6031\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e\u003cimg src=\"https://img.shields.io/badge/22afbb2f36-feat-blue\" alt=\"feat - 22afbb2f36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e18003a33bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e8bbe6dc46c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e51cc914807\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e72534e2a34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e95b3f37d4a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e04ba09a8d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003ece80136e7b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e3242a61bae\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e473dd3e1cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003ea904d9f77b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e2ea6dfc6c9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e8d5210c9fe\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e92d2498910\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003eea2016a6dc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e81cabc1477\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e1ba9b7ac50\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003ed9923b72a2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003ea7e8abbb7e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e0806ee3826\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003eed78fa05c7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003ef56bb07d83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003eba009b6031\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e22afbb2f36\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95c386469c7a2f09dd731601c2061bdb10d25717\"\u003e95c386469c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd passing focus options to form field\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95ecce8334299defe55fb2b74264e5258ffd137c\"\u003e95ecce8334\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eallow setting submit options at form-level\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ebae211add37700858adeb8fc5d87bf503a59721\"\u003eebae211add\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce parse errors in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3937afc3167ce409eebb06d91d5fb122eea4e33d\"\u003e3937afc316\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce SignalFormControl for Reactive Forms compatibility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/30f09147545b67185f93efb9796e37c1db76733a\"\u003e30f0914754\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport binding null to number input (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/dd208ca2595258fcd1e289374f812ce0b56c7011\"\u003edd208ca259\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eupdate submit function to accept options object\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/27397b3f4f3182ce00d6e2f8690285c316e2a274\"\u003e27397b3f4f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eclear parse errors when model updates (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/63d80057039928b3e878b59c1fe6b93ef1c6b701\"\u003e63d8005703\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve custom-control focus context in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/631f60d1f9be72cb68330308a6ff18cc195babb8\"\u003e631f60d1f9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve parse errors when parse returns value\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/adfb83146b0c149734f43961563b389e00cc1d85\"\u003eadfb83146b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esimplify design of parse errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/fb05fc86d0f12ffafd94c7c1420118d8a79f7e59\"\u003efb05fc86d0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esort error summary by DOM order\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003ccode\u003e95b3f37\u003c/code\u003e\u003c/a\u003e feat(compiler): Exhaustive checks for switch blocks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9c5658adb1146b24ebf31fef534c4bbae1ced548\"\u003e\u003ccode\u003e9c5658a\u003c/code\u003e\u003c/a\u003e refactor(compiler): clean up pipeline compatibility distinction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e0d783e5b5a256c0aa2fb1d3e008677c0603382\"\u003e\u003ccode\u003e6e0d783\u003c/code\u003e\u003c/a\u003e refactor(compiler): Add info about unclosed element.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/06d94ac0caacce20d5afbdb1e940911bdc500d78\"\u003e\u003ccode\u003e06d94ac\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(compiler): Add info about unclosed element.\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/097208454bb0d5ebaad701a991125d2a33d1f79b\"\u003e\u003ccode\u003e0972084\u003c/code\u003e\u003c/a\u003e refactor(compiler): Add info about unclosed element.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b386f95bd05c6e9efdc00050b1e9ac28421e5f44\"\u003e\u003ccode\u003eb386f95\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(compiler): Add info about unclosed element.\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9b69e296032a0c1572356c2b9f7b74fad6290052\"\u003e\u003ccode\u003e9b69e29\u003c/code\u003e\u003c/a\u003e refactor(compiler): Add info about unclosed element.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/11834a42745e62830a83a4c14eea9d203baec680\"\u003e\u003ccode\u003e11834a4\u003c/code\u003e\u003c/a\u003e fix(compiler): add geolocation element to schema\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/11767cabe48606a1f575d50b8af79b8bbb35a852\"\u003e\u003ccode\u003e11767ca\u003c/code\u003e\u003c/a\u003e build: update Jasmine to 6.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a1441a432d508281e7c7fe8e03f92628a77a5685\"\u003e\u003ccode\u003ea1441a4\u003c/code\u003e\u003c/a\u003e refactor(compiler): remove zone-based testing utilities\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/v21.2.0/packages/compiler\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/core` from 21.0.8 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): Highlight function calls with optional chaining (\u003ca href=\"https://github.com/angular/angular/commit/4f8d3995f082929d1ef4163dcb4373d3ef7a67cf\"\u003e4f8d3995f0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add linked editing ranges for HTML tag synchronization (\u003ca href=\"https://github.com/angular/angular/commit/8c21866f49ff74344551395ae0a5df1841d54c0d\"\u003e8c21866f49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(vscode-extension): support highlighting for class bindings with brackets (\u003ca href=\"https://github.com/angular/angular/commit/01ed57f297d6713724dfaedc9520f80471f37c10\"\u003e01ed57f297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add JSON schema for angularCompilerOptions (\u003ca href=\"https://github.com/angular/angular/commit/496967e7b13dfe1ebdde69724cd62880914beb60\"\u003e496967e7b1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(language-service): Detect local project version on creation (\u003ca href=\"https://github.com/angular/angular/commit/8a7cbd46685874f4500c52629d09c5f7fd309080\"\u003e8a7cbd4668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Support client-side file watching via \u003ccode\u003eonDidChangeWatchedFiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/commit/6fb39d9b62cbb634e95ec00fe5ef85d84da3bdbd\"\u003e6fb39d9b62\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add completions and hover info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/ebc90c26f5ff1ba1e0ca9b775a44e301ebfb9473\"\u003eebc90c26f5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add quick info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/573aadef7eb8b6b5e83b82a16f95d2a556f27c01\"\u003e573aadef7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add folding range support for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/26fd0839c32d2ebeaa5e3ecc10ed70ab9ca17749\"\u003e26fd0839c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003cimg src=\"https://img.shields.io/badge/18003a33bb-feat-blue\" alt=\"feat - 18003a33bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e\u003cimg src=\"https://img.shields.io/badge/8bbe6dc46c-feat-blue\" alt=\"feat - 8bbe6dc46c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003cimg src=\"https://img.shields.io/badge/51cc914807-feat-blue\" alt=\"feat - 51cc914807\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e\u003cimg src=\"https://img.shields.io/badge/72534e2a34-feat-blue\" alt=\"feat - 72534e2a34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003cimg src=\"https://img.shields.io/badge/95b3f37d4a-feat-blue\" alt=\"feat - 95b3f37d4a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e\u003cimg src=\"https://img.shields.io/badge/04ba09a8d9-feat-blue\" alt=\"feat - 04ba09a8d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce80136e7b-fix-green\" alt=\"fix - ce80136e7b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e\u003cimg src=\"https://img.shields.io/badge/3242a61bae-fix-green\" alt=\"fix - 3242a61bae\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e\u003cimg src=\"https://img.shields.io/badge/473dd3e1cb-fix-green\" alt=\"fix - 473dd3e1cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003e\u003cimg src=\"https://img.shields.io/badge/a904d9f77b-fix-green\" alt=\"fix - a904d9f77b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ea6dfc6c9-fix-green\" alt=\"fix - 2ea6dfc6c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d5210c9fe-feat-blue\" alt=\"feat - 8d5210c9fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d2498910-feat-blue\" alt=\"feat - 92d2498910\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea2016a6dc-feat-blue\" alt=\"feat - ea2016a6dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e\u003cimg src=\"https://img.shields.io/badge/81cabc1477-feat-blue\" alt=\"feat - 81cabc1477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ba9b7ac50-feat-blue\" alt=\"feat - 1ba9b7ac50\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003e\u003cimg src=\"https://img.shields.io/badge/d9923b72a2-feat-blue\" alt=\"feat - d9923b72a2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003e\u003cimg src=\"https://img.shields.io/badge/a7e8abbb7e-fix-green\" alt=\"fix - a7e8abbb7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e\u003cimg src=\"https://img.shields.io/badge/0806ee3826-fix-green\" alt=\"fix - 0806ee3826\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003e\u003cimg src=\"https://img.shields.io/badge/ed78fa05c7-fix-green\" alt=\"fix - ed78fa05c7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003e\u003cimg src=\"https://img.shields.io/badge/f56bb07d83-feat-blue\" alt=\"feat - f56bb07d83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba009b6031-feat-blue\" alt=\"feat - ba009b6031\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e\u003cimg src=\"https://img.shields.io/badge/22afbb2f36-feat-blue\" alt=\"feat - 22afbb2f36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e18003a33bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e8bbe6dc46c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e51cc914807\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e72534e2a34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e95b3f37d4a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e04ba09a8d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003ece80136e7b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e3242a61bae\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e473dd3e1cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca ...\n\n_Description has been truncated_","html_url":"https://github.com/wittmannaaron/paperless-ngx/pull/9","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/wittmannaaron%2Fpaperless-ngx/issues/9","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/9/packages"},{"uuid":"3914073653","node_id":"PR_kwDOGe8x_M7CXOvs","number":1142,"state":"closed","title":"build(deps-dev): bump the development-dependencies group across 1 directory with 25 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-02-16T06:48:00.000Z","author_association":null,"state_reason":null,"created_at":"2026-02-09T01:56:19.000Z","updated_at":"2026-02-16T06:48:02.000Z","time_to_close":622301,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps-dev): bump","group_name":"development-dependencies","update_count":25,"packages":[{"name":"@eslint/compat","old_version":"2.0.1","new_version":"2.0.2","repository_url":"https://github.com/eslint/rewrite"},{"name":"@golevelup/ts-jest","old_version":"1.2.0","new_version":"1.2.1","repository_url":"https://github.com/golevelup/nestjs"},{"name":"@nestjs/testing","old_version":"11.1.11","new_version":"11.1.13","repository_url":"https://github.com/nestjs/nest"},{"name":"@stylistic/eslint-plugin","old_version":"5.7.0","new_version":"5.7.1","repository_url":"https://github.com/eslint-stylistic/eslint-stylistic"},{"name":"@types/node","old_version":"25.0.6","new_version":"25.2.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.52.0","new_version":"8.54.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.52.0","new_version":"8.54.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint-plugin-jest","old_version":"29.12.1","new_version":"29.13.0","repository_url":"https://github.com/jest-community/eslint-plugin-jest"},{"name":"eslint-plugin-prettier","old_version":"5.5.4","new_version":"5.5.5","repository_url":"https://github.com/prettier/eslint-plugin-prettier"},{"name":"prettier","old_version":"3.7.4","new_version":"3.8.1","repository_url":"https://github.com/prettier/prettier"},{"name":"typescript-eslint","old_version":"8.52.0","new_version":"8.54.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@angular-builders/jest","old_version":"21.0.0-beta.1","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/architect","old_version":"0.2100.5","new_version":"0.2101.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/core","old_version":"21.0.5","new_version":"21.1.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/schematics","old_version":"21.0.5","new_version":"21.1.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-eslint/builder","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin-template","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/schematics","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/template-parser","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular/language-service","old_version":"21.0.8","new_version":"21.1.3","repository_url":"https://github.com/angular/angular"},{"name":"@compodoc/compodoc","old_version":"1.1.32","new_version":"1.2.1","repository_url":"https://github.com/compodoc/compodoc"},{"name":"@playwright/test","old_version":"1.57.0","new_version":"1.58.2","repository_url":"https://github.com/microsoft/playwright"},{"name":"@schematics/angular","old_version":"21.0.5","new_version":"21.1.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"angular-eslint","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"}],"path":null,"ecosystem":"npm"},"body":"Bumps the development-dependencies group with 25 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint/compat](https://github.com/eslint/rewrite/tree/HEAD/packages/compat) | `2.0.1` | `2.0.2` |\n| [@golevelup/ts-jest](https://github.com/golevelup/nestjs) | `1.2.0` | `1.2.1` |\n| [@nestjs/testing](https://github.com/nestjs/nest/tree/HEAD/packages/testing) | `11.1.11` | `11.1.13` |\n| [@stylistic/eslint-plugin](https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin) | `5.7.0` | `5.7.1` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.0.6` | `25.2.2` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.52.0` | `8.54.0` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.52.0` | `8.54.0` |\n| [eslint-plugin-jest](https://github.com/jest-community/eslint-plugin-jest) | `29.12.1` | `29.13.0` |\n| [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) | `5.5.4` | `5.5.5` |\n| [prettier](https://github.com/prettier/prettier) | `3.7.4` | `3.8.1` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.52.0` | `8.54.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `21.0.0-beta.1` | `21.0.3` |\n| [@angular-devkit/architect](https://github.com/angular/angular-cli) | `0.2100.5` | `0.2101.3` |\n| [@angular-devkit/core](https://github.com/angular/angular-cli) | `21.0.5` | `21.1.3` |\n| [@angular-devkit/schematics](https://github.com/angular/angular-cli) | `21.0.5` | `21.1.3` |\n| [@angular-eslint/builder](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/builder) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/eslint-plugin](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/eslint-plugin-template](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin-template) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/schematics](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/schematics) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/template-parser](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/template-parser) | `21.1.0` | `21.2.0` |\n| [@angular/language-service](https://github.com/angular/angular/tree/HEAD/packages/language-service) | `21.0.8` | `21.1.3` |\n| [@compodoc/compodoc](https://github.com/compodoc/compodoc) | `1.1.32` | `1.2.1` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.57.0` | `1.58.2` |\n| [@schematics/angular](https://github.com/angular/angular-cli) | `21.0.5` | `21.1.3` |\n| [angular-eslint](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/angular-eslint) | `21.1.0` | `21.2.0` |\n\n\nUpdates `@eslint/compat` from 2.0.1 to 2.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/rewrite/releases\"\u003e\u003ccode\u003e@​eslint/compat\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecompat: v2.0.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/compat-v2.0.1...compat-v2.0.2\"\u003e2.0.2\u003c/a\u003e (2026-01-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd eslint 10 as peer dependency (\u003ca href=\"https://redirect.github.com/eslint/rewrite/issues/361\"\u003e#361\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint/rewrite/commit/ecb37dcafc6513649c03f245f0f2505e7eb10dd1\"\u003eecb37dc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe following workspace dependencies were updated\n\u003cul\u003e\n\u003cli\u003edependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/core\u003c/code\u003e bumped from ^1.0.1 to ^1.1.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emigrate-config: v2.0.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/migrate-config-v2.0.1...migrate-config-v2.0.2\"\u003e2.0.2\u003c/a\u003e (2026-01-29)\u003c/h2\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe following workspace dependencies were updated\n\u003cul\u003e\n\u003cli\u003edependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/compat\u003c/code\u003e bumped from ^2.0.1 to ^2.0.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edevDependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/core\u003c/code\u003e bumped from ^1.0.1 to ^1.1.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/rewrite/blob/main/packages/compat/CHANGELOG.md\"\u003e\u003ccode\u003e@​eslint/compat\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/compat-v2.0.1...compat-v2.0.2\"\u003e2.0.2\u003c/a\u003e (2026-01-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd eslint 10 as peer dependency (\u003ca href=\"https://redirect.github.com/eslint/rewrite/issues/361\"\u003e#361\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint/rewrite/commit/ecb37dcafc6513649c03f245f0f2505e7eb10dd1\"\u003eecb37dc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe following workspace dependencies were updated\n\u003cul\u003e\n\u003cli\u003edependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/core\u003c/code\u003e bumped from ^1.0.1 to ^1.1.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/7960653fe678b563051e2fbb99caf9fd3c07528c\"\u003e\u003ccode\u003e7960653\u003c/code\u003e\u003c/a\u003e chore: release main (\u003ca href=\"https://github.com/eslint/rewrite/tree/HEAD/packages/compat/issues/356\"\u003e#356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/ecb37dcafc6513649c03f245f0f2505e7eb10dd1\"\u003e\u003ccode\u003eecb37dc\u003c/code\u003e\u003c/a\u003e fix: add eslint 10 as peer dependency (\u003ca href=\"https://github.com/eslint/rewrite/tree/HEAD/packages/compat/issues/361\"\u003e#361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/074cac2268ef11f9433282b6f043a15cec8c609d\"\u003e\u003ccode\u003e074cac2\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/a3b0fd51027ce7b3102591ebda42326af87b8e3e\"\u003e\u003ccode\u003ea3b0fd5\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/rewrite/commits/compat-v2.0.2/packages/compat\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@golevelup/ts-jest` from 1.2.0 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/golevelup/nestjs/releases\"\u003e\u003ccode\u003e@​golevelup/ts-jest\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​golevelup/ts-jest\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.2.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIncludes dev dependencies upgrades such as Vite, Vitest and nestjs CLI and a new Stripe upgrade\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/36e2f4758c7278842c5127b76b88bbe2bf61f0cc\"\u003e\u003ccode\u003e36e2f47\u003c/code\u003e\u003c/a\u003e chore(release): version packages (\u003ca href=\"https://redirect.github.com/golevelup/nestjs/issues/1130\"\u003e#1130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/e44298ad81ebf9de305820861c577b688b0c077d\"\u003e\u003ccode\u003ee44298a\u003c/code\u003e\u003c/a\u003e chore: devDependencies upgrade such as Vite and Stripe upgrade (\u003ca href=\"https://redirect.github.com/golevelup/nestjs/issues/1129\"\u003e#1129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/99b849ecda273cb4a77b36c03cef401d629ebaf9\"\u003e\u003ccode\u003e99b849e\u003c/code\u003e\u003c/a\u003e docs(stripe): fix for wrong import in example (\u003ca href=\"https://redirect.github.com/golevelup/nestjs/issues/1123\"\u003e#1123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/cf48defe825669bb2c4bbcd99cae32881040d212\"\u003e\u003ccode\u003ecf48def\u003c/code\u003e\u003c/a\u003e chore(release): version packages (\u003ca href=\"https://redirect.github.com/golevelup/nestjs/issues/1122\"\u003e#1122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/45be4036cc1e1006e4e2dff229f09a9ae34fd45e\"\u003e\u003ccode\u003e45be403\u003c/code\u003e\u003c/a\u003e chore: bump version deployment for several packages with deps updated\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/afcc69ef14f44e122daba0b2d29983b295bfb00f\"\u003e\u003ccode\u003eafcc69e\u003c/code\u003e\u003c/a\u003e chore: update deps (\u003ca href=\"https://redirect.github.com/golevelup/nestjs/issues/1121\"\u003e#1121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/3cbf0b90773aba602fd485a2c3bf96dd0e69bace\"\u003e\u003ccode\u003e3cbf0b9\u003c/code\u003e\u003c/a\u003e chore(release): version packages (\u003ca href=\"https://redirect.github.com/golevelup/nestjs/issues/1119\"\u003e#1119\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/08c1deb49691244ff3e53dad9277d9ffce500fdd\"\u003e\u003ccode\u003e08c1deb\u003c/code\u003e\u003c/a\u003e chore: bump google cloud pubsub package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/8c15f80093cd8d74685f2cbe18e4828feec891ca\"\u003e\u003ccode\u003e8c15f80\u003c/code\u003e\u003c/a\u003e feat(\u003ccode\u003e@​golevelup/nestjs-google-cloud-pubsub\u003c/code\u003e): batching, async initialization, ...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golevelup/nestjs/compare/@golevelup/ts-jest@1.2.0...@golevelup/ts-jest@1.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@nestjs/testing` from 11.1.11 to 11.1.13\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/nestjs/nest/releases\"\u003e\u003ccode\u003e@​nestjs/testing\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev11.1.13 (2026-02-03)\u003c/h1\u003e\n\u003ch4\u003eBug fixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ecommon\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16230\"\u003e#16230\u003c/a\u003e fix(common): Fix skipping maxArrayLength and maxStringLength option (\u003ca href=\"https://github.com/chojs23\"\u003e\u003ccode\u003e@​chojs23\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eEnhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003emicroservices\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16286\"\u003e#16286\u003c/a\u003e feat(microservices): support per-handler qos in mqtt (\u003ca href=\"https://github.com/suuuuuuminnnnnn\"\u003e\u003ccode\u003e@​suuuuuuminnnnnn\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16262\"\u003e#16262\u003c/a\u003e Feat/microservices configurable max buffer size (\u003ca href=\"https://github.com/jobnow\"\u003e\u003ccode\u003e@​jobnow\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ecommon\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16202\"\u003e#16202\u003c/a\u003e fix(common): exclude built-in primitives from strip proto keys (\u003ca href=\"https://github.com/som14062005\"\u003e\u003ccode\u003e@​som14062005\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eDependencies\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eplatform-fastify\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16282\"\u003e#16282\u003c/a\u003e fix(deps): update dependency fastify to v5.7.4 (\u003ca href=\"https://github.com/apps/renovate\"\u003e\u003ccode\u003e@​renovate[bot]\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eplatform-express\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16241\"\u003e#16241\u003c/a\u003e fix(deps): update dependency cors to v2.8.6 (\u003ca href=\"https://github.com/apps/renovate\"\u003e\u003ccode\u003e@​renovate[bot]\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 6\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eLee Donghyun (\u003ca href=\"https://github.com/devizi0\"\u003e\u003ccode\u003e@​devizi0\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMykhailo Skrypsky (\u003ca href=\"https://github.com/mixator\"\u003e\u003ccode\u003e@​mixator\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNeo (\u003ca href=\"https://github.com/chojs23\"\u003e\u003ccode\u003e@​chojs23\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePraveen Somasundaram (\u003ca href=\"https://github.com/som14062005\"\u003e\u003ccode\u003e@​som14062005\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRicardo Gomes (\u003ca href=\"https://github.com/jobnow\"\u003e\u003ccode\u003e@​jobnow\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e조수민 (\u003ca href=\"https://github.com/suuuuuuminnnnnn\"\u003e\u003ccode\u003e@​suuuuuuminnnnnn\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev11.1.12 (2026-01-15)\u003c/h2\u003e\n\u003ch4\u003eBug fixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ecommon\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16187\"\u003e#16187\u003c/a\u003e fix(common): regression in loading file-type under Windows OS (\u003ca href=\"https://github.com/iamkanguk97\"\u003e\u003ccode\u003e@​iamkanguk97\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eDependencies\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eplatform-ws\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16161\"\u003e#16161\u003c/a\u003e chore(deps): bump ws from 8.18.3 to 8.19.0 (\u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ecommon\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16155\"\u003e#16155\u003c/a\u003e fix(deps): update dependency file-type to v21.3.0 (\u003ca href=\"https://github.com/apps/renovate\"\u003e\u003ccode\u003e@​renovate[bot]\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eplatform-fastify\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16154\"\u003e#16154\u003c/a\u003e fix(deps): update dependency find-my-way to v9.4.0 (\u003ca href=\"https://github.com/apps/renovate\"\u003e\u003ccode\u003e@​renovate[bot]\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 3\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAntonio Tripodi (\u003ca href=\"https://github.com/Tony133\"\u003e\u003ccode\u003e@​Tony133\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eKANGUK LEE (\u003ca href=\"https://github.com/iamkanguk97\"\u003e\u003ccode\u003e@​iamkanguk97\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/miso-kyoungminkim\"\u003e\u003ccode\u003e@​miso-kyoungminkim\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nestjs/nest/commit/e3a958ac3efebe7995e6d487e00bbc6fd6267fd5\"\u003e\u003ccode\u003ee3a958a\u003c/code\u003e\u003c/a\u003e chore(release): publish v11.1.13 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nestjs/nest/commit/96932ad073cc417e26f0bdea8f58d58145b1ca19\"\u003e\u003ccode\u003e96932ad\u003c/code\u003e\u003c/a\u003e chore(release): publish v11.1.12 release\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/nestjs/nest/commits/v11.1.13/packages/testing\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@stylistic/eslint-plugin` from 5.7.0 to 5.7.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/releases\"\u003e\u003ccode\u003e@​stylistic/eslint-plugin\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/compare/v5.7.0...v5.7.1\"\u003e5.7.1\u003c/a\u003e (2026-01-23)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003emeta\u003c/code\u003e to plugin (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1102\"\u003e#1102\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/f9d8a2143ae854924b58c8bac7c5f5c22a06b5c4\"\u003ef9d8a21\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e revert \u003ccode\u003eeslint-visitor-keys\u003c/code\u003e and \u003ccode\u003eespree\u003c/code\u003e to compatible versions (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1111\"\u003e#1111\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/572f1abf6382248e276f0ad2e3107f08a035436f\"\u003e572f1ab\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edisable-legacy:\u003c/strong\u003e disable \u003ccode\u003emultiline-comment-style\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1103\"\u003e#1103\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/03fc476d716e4aa41390b867f2f0fa0155a9bfec\"\u003e03fc476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eno-whitespace-before-property:\u003c/strong\u003e detect whitespace in \u003ccode\u003eTSIndexedAccessType\u003c/code\u003e with parens (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1099\"\u003e#1099\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/60aafcbf47c086031522c4700ada4b2a313614ce\"\u003e60aafcb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupgrade deps (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1112\"\u003e#1112\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/29a1d0a5aa0d0f248b515474a1c6583abcd5fe1b\"\u003e29a1d0a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eindent:\u003c/strong\u003e update deprecation tips (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1109\"\u003e#1109\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/6a6d30b125e3bfd031c62ed058358cfcc0356fa5\"\u003e6a6d30b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eextract \u003ccode\u003esafeReplaceTextBetween\u003c/code\u003e to reuse common fix logic (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1104\"\u003e#1104\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/a49451f8246d5efe670116beec741d993c53a682\"\u003ea49451f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ejsx-rules:\u003c/strong\u003e cleanup \u003ccode\u003emeta\u003c/code\u003e, use \u003ccode\u003edefaultOptions\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1108\"\u003e#1108\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/55bbd1d52f5d5b300bfd6032a17c4ada66629453\"\u003e55bbd1d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eline-comment-position:\u003c/strong\u003e simplify options initialization (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1106\"\u003e#1106\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/4d6b10ad6a29ec4443b66db3634f88e314df4f74\"\u003e4d6b10a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003edefaultOptions\u003c/code\u003e in rules (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1105\"\u003e#1105\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/666e8eea27f98ffeb836ede36ce81491a8c580e7\"\u003e666e8ee\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​stylistic/eslint-plugin\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/compare/v5.7.0...v5.7.1\"\u003e5.7.1\u003c/a\u003e (2026-01-23)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003emeta\u003c/code\u003e to plugin (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1102\"\u003e#1102\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/f9d8a2143ae854924b58c8bac7c5f5c22a06b5c4\"\u003ef9d8a21\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e revert \u003ccode\u003eeslint-visitor-keys\u003c/code\u003e and \u003ccode\u003eespree\u003c/code\u003e to compatible versions (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1111\"\u003e#1111\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/572f1abf6382248e276f0ad2e3107f08a035436f\"\u003e572f1ab\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edisable-legacy:\u003c/strong\u003e disable \u003ccode\u003emultiline-comment-style\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1103\"\u003e#1103\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/03fc476d716e4aa41390b867f2f0fa0155a9bfec\"\u003e03fc476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eno-whitespace-before-property:\u003c/strong\u003e detect whitespace in \u003ccode\u003eTSIndexedAccessType\u003c/code\u003e with parens (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1099\"\u003e#1099\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/60aafcbf47c086031522c4700ada4b2a313614ce\"\u003e60aafcb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupgrade deps (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1112\"\u003e#1112\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/29a1d0a5aa0d0f248b515474a1c6583abcd5fe1b\"\u003e29a1d0a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eindent:\u003c/strong\u003e update deprecation tips (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1109\"\u003e#1109\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/6a6d30b125e3bfd031c62ed058358cfcc0356fa5\"\u003e6a6d30b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eextract \u003ccode\u003esafeReplaceTextBetween\u003c/code\u003e to reuse common fix logic (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1104\"\u003e#1104\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/a49451f8246d5efe670116beec741d993c53a682\"\u003ea49451f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ejsx-rules:\u003c/strong\u003e cleanup \u003ccode\u003emeta\u003c/code\u003e, use \u003ccode\u003edefaultOptions\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1108\"\u003e#1108\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/55bbd1d52f5d5b300bfd6032a17c4ada66629453\"\u003e55bbd1d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eline-comment-position:\u003c/strong\u003e simplify options initialization (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1106\"\u003e#1106\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/4d6b10ad6a29ec4443b66db3634f88e314df4f74\"\u003e4d6b10a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003edefaultOptions\u003c/code\u003e in rules (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1105\"\u003e#1105\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/666e8eea27f98ffeb836ede36ce81491a8c580e7\"\u003e666e8ee\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/5c4b512a225a314fa5f41eead9fdc4d51fc243d7\"\u003e\u003ccode\u003e5c4b512\u003c/code\u003e\u003c/a\u003e chore: release v5.7.1 (main) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1101\"\u003e#1101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/29a1d0a5aa0d0f248b515474a1c6583abcd5fe1b\"\u003e\u003ccode\u003e29a1d0a\u003c/code\u003e\u003c/a\u003e fix: upgrade deps (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1112\"\u003e#1112\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/6a6d30b125e3bfd031c62ed058358cfcc0356fa5\"\u003e\u003ccode\u003e6a6d30b\u003c/code\u003e\u003c/a\u003e docs(indent): update deprecation tips (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1109\"\u003e#1109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/62b7247ef9414e6a361ab3c638526b24f3880419\"\u003e\u003ccode\u003e62b7247\u003c/code\u003e\u003c/a\u003e chore(lint): enable \u003ccode\u003eeslint-plugin/no-meta-schema-default\u003c/code\u003e internally (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1110\"\u003e#1110\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/666e8eea27f98ffeb836ede36ce81491a8c580e7\"\u003e\u003ccode\u003e666e8ee\u003c/code\u003e\u003c/a\u003e refactor: use \u003ccode\u003edefaultOptions\u003c/code\u003e in rules (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1105\"\u003e#1105\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/55bbd1d52f5d5b300bfd6032a17c4ada66629453\"\u003e\u003ccode\u003e55bbd1d\u003c/code\u003e\u003c/a\u003e refactor(jsx-rules): cleanup \u003ccode\u003emeta\u003c/code\u003e, use \u003ccode\u003edefaultOptions\u003c/code\u003e (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1108\"\u003e#1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/4d6b10ad6a29ec4443b66db3634f88e314df4f74\"\u003e\u003ccode\u003e4d6b10a\u003c/code\u003e\u003c/a\u003e refactor(line-comment-position): simplify options initialization (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1106\"\u003e#1106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/a49451f8246d5efe670116beec741d993c53a682\"\u003e\u003ccode\u003ea49451f\u003c/code\u003e\u003c/a\u003e refactor: extract \u003ccode\u003esafeReplaceTextBetween\u003c/code\u003e to reuse common fix logic (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1104\"\u003e#1104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/b250f8422429434ecf539ea819e4312460e5c60c\"\u003e\u003ccode\u003eb250f84\u003c/code\u003e\u003c/a\u003e chore: setup \u003ccode\u003eeslint-plugin-eslint-plugin\u003c/code\u003e, sort \u003ccode\u003emeta\u003c/code\u003e \u0026amp; \u003ccode\u003ecreateRule\u003c/code\u003e (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1107\"\u003e#1107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/f9d8a2143ae854924b58c8bac7c5f5c22a06b5c4\"\u003e\u003ccode\u003ef9d8a21\u003c/code\u003e\u003c/a\u003e fix: add \u003ccode\u003emeta\u003c/code\u003e to plugin (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1102\"\u003e#1102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commits/v5.7.1/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@types/node` from 25.0.6 to 25.2.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.52.0 to 8.54.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e\u003ccode\u003e@​typescript-eslint/eslint-plugin\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.54.0\u003c/h2\u003e\n\u003ch2\u003e8.54.0 (2026-01-26)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin-internal:\u003c/strong\u003e add prefer-tsutils-methods rule (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11974\"\u003e#11974\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11625\"\u003e#11625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e support ScopeManager#addGlobals (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11914\"\u003e#11914\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-estree:\u003c/strong\u003e add shortcut methods to ParserServicesWithTypeInformation (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11965\"\u003e#11965\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11955\"\u003e#11955\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unused-private-class-members] private destructured class member is defined but used (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11785\"\u003e#11785\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] check both base constraint and actual type for non-null assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11967\"\u003e#11967\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11559\"\u003e#11559\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e fix catch clause scopes \u003ccode\u003edef.name\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11982\"\u003e#11982\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e prevent misidentification of \u003ccode\u003e\u0026quot;use strict\u0026quot;\u003c/code\u003e directives (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11995\"\u003e#11995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e handle missing \u003ccode\u003eFlatESLint\u003c/code\u003e and \u003ccode\u003eLegacyESLint\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11958\"\u003e#11958\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBrad Zacher \u003ca href=\"https://github.com/bradzacher\"\u003e\u003ccode\u003e@​bradzacher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efnx \u003ca href=\"https://github.com/DMartens\"\u003e\u003ccode\u003e@​DMartens\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFrancesco Trotta\u003c/li\u003e\n\u003cli\u003eJosh Goldberg\u003c/li\u003e\n\u003cli\u003eMinJae \u003ca href=\"https://github.com/Ju-MINJAE\"\u003e\u003ccode\u003e@​Ju-MINJAE\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMinyeong Kim \u003ca href=\"https://github.com/minyeong981\"\u003e\u003ccode\u003e@​minyeong981\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eoverlookmotel\u003c/li\u003e\n\u003cli\u003eYuya Yoshioka \u003ca href=\"https://github.com/YuyaYoshioka\"\u003e\u003ccode\u003e@​YuyaYoshioka\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e김현수 \u003ca href=\"https://github.com/Kimsoo0119\"\u003e\u003ccode\u003e@​Kimsoo0119\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.53.1\u003c/h2\u003e\n\u003ch2\u003e8.53.1 (2026-01-19)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [consistent-indexed-object-style] skip fixer if interface is a default export (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11951\"\u003e#11951\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e make RuleCreator root defaultOptions optional (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11956\"\u003e#11956\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCameron\u003c/li\u003e\n\u003cli\u003eYukihiro Hasegawa \u003ca href=\"https://github.com/y-hsgw\"\u003e\u003ccode\u003e@​y-hsgw\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.53.0\u003c/h2\u003e\n\u003ch2\u003e8.53.0 (2026-01-12)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e\u003ccode\u003e@​typescript-eslint/eslint-plugin\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.54.0 (2026-01-26)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin-internal:\u003c/strong\u003e add prefer-tsutils-methods rule (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11974\"\u003e#11974\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11625\"\u003e#11625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-estree:\u003c/strong\u003e add shortcut methods to ParserServicesWithTypeInformation (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11965\"\u003e#11965\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11955\"\u003e#11955\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] check both base constraint and actual type for non-null assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11967\"\u003e#11967\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11559\"\u003e#11559\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency prettier to v3.8.0 (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11991\"\u003e#11991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e fix catch clause scopes \u003ccode\u003edef.name\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11982\"\u003e#11982\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unused-private-class-members] private destructured class member is defined but used (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11785\"\u003e#11785\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBrad Zacher \u003ca href=\"https://github.com/bradzacher\"\u003e\u003ccode\u003e@​bradzacher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJosh Goldberg\u003c/li\u003e\n\u003cli\u003eMinJae \u003ca href=\"https://github.com/Ju-MINJAE\"\u003e\u003ccode\u003e@​Ju-MINJAE\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMinyeong Kim \u003ca href=\"https://github.com/minyeong981\"\u003e\u003ccode\u003e@​minyeong981\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eoverlookmotel\u003c/li\u003e\n\u003cli\u003eYuya Yoshioka \u003ca href=\"https://github.com/YuyaYoshioka\"\u003e\u003ccode\u003e@​YuyaYoshioka\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e김현수 \u003ca href=\"https://github.com/Kimsoo0119\"\u003e\u003ccode\u003e@​Kimsoo0119\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.53.1 (2026-01-19)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e make RuleCreator root defaultOptions optional (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11956\"\u003e#11956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [consistent-indexed-object-style] skip fixer if interface is a default export (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11951\"\u003e#11951\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCameron\u003c/li\u003e\n\u003cli\u003eYukihiro Hasegawa \u003ca href=\"https://github.com/y-hsgw\"\u003e\u003ccode\u003e@​y-hsgw\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.53.0 (2026-01-12)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e add rule [strict-void-return] (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/9707\"\u003e#9707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unused-vars] add a fixer to remove unused imports (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11922\"\u003e#11922\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-useless-default-assignment] fix false positive for parameters corresponding to a rest parameter (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11916\"\u003e#11916\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/d423e57622e1c8e789a1b84109d1ab2c15497507\"\u003e\u003ccode\u003ed423e57\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.54.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80e33ff2fd81f88100cda942db5232851adab90e\"\u003e\u003ccode\u003e80e33ff\u003c/code\u003e\u003c/a\u003e feat(eslint-plugin-internal): add prefer-tsutils-methods rule (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11974\"\u003e#11974\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec4f73aaae8ad3344d55e98f710e6acdd482ff19\"\u003e\u003ccode\u003eec4f73a\u003c/code\u003e\u003c/a\u003e feat(typescript-estree): add shortcut methods to ParserServicesWithTypeInform...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/d32f90955962cd9c0968ed6f675d52fc80059496\"\u003e\u003ccode\u003ed32f909\u003c/code\u003e\u003c/a\u003e test(eslint-plugin): skip rules tests in windows ci (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11988\"\u003e#11988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/17fa993c2de60b9837658360af786a42e51de4ab\"\u003e\u003ccode\u003e17fa993\u003c/code\u003e\u003c/a\u003e test(eslint-plugin): improve vitest performance with isolate: false (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11754\"\u003e#11754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1c66ab44c407cf05462d2344b37c09b507ea8052\"\u003e\u003ccode\u003e1c66ab4\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unnecessary-type-assertion] check both base constrain...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/aaa7ca2d6afd8def8cf9d01d0d9deedd38ae1495\"\u003e\u003ccode\u003eaaa7ca2\u003c/code\u003e\u003c/a\u003e fix(deps): update dependency prettier to v3.8.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11991\"\u003e#11991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/d50aa1899ff83254056320c5313a5c041f465afb\"\u003e\u003ccode\u003ed50aa18\u003c/code\u003e\u003c/a\u003e fix(scope-manager): fix catch clause scopes \u003ccode\u003edef.name\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11982\"\u003e#11982\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4c0b37964eac642cf54a3a76723531c2f468183c\"\u003e\u003ccode\u003e4c0b379\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unused-private-class-members] private destructured cl...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/9940e53a156ec75b2e2910a63310650b4d19a6c6\"\u003e\u003ccode\u003e9940e53\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.53.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.54.0/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.52.0 to 8.54.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e\u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.54.0\u003c/h2\u003e\n\u003ch2\u003e8.54.0 (2026-01-26)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin-internal:\u003c/strong\u003e add prefer-tsutils-methods rule (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11974\"\u003e#11974\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11625\"\u003e#11625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e support ScopeManager#addGlobals (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11914\"\u003e#11914\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-estree:\u003c/strong\u003e add shortcut methods to ParserServicesWithTypeInformation (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11965\"\u003e#11965\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11955\"\u003e#11955\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unused-private-class-members] private destructured class member is defined but used (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11785\"\u003e#11785\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] check both base constraint and actual type for non-null assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11967\"\u003e#11967\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11559\"\u003e#11559\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e fix catch clause scopes \u003ccode\u003edef.name\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11982\"\u003e#11982\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e prevent misidentification of \u003ccode\u003e\u0026quot;use strict\u0026quot;\u003c/code\u003e directives (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11995\"\u003e#11995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e handle missing \u003ccode\u003eFlatESLint\u003c/code\u003e and \u003ccode\u003eLegacyESLint\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11958\"\u003e#11958\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBrad Zacher \u003ca href=\"https://github.com/bradzacher\"\u003e\u003ccode\u003e@​bradzacher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efnx \u003ca href=\"https://github.com/DMartens\"\u003e\u003ccode\u003e@​DMartens\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFrancesco Trotta\u003c/li\u003e\n\u003cli\u003eJosh Goldberg\u003c/li\u003e\n\u003cli\u003eMinJae \u003ca href=\"https://github.com/Ju-MINJAE\"\u003e\u003ccode\u003e@​Ju-MINJAE\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMinyeong Kim \u003ca href=\"https://github.com/minyeong981\"\u003e\u003ccode\u003e@​minyeong981\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eoverlookmotel\u003c/li\u003e\n\u003cli\u003eYuya Yoshioka \u003ca href=\"https://github.com/YuyaYoshioka\"\u003e\u003ccode\u003e@​YuyaYoshioka\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e김현수 \u003ca href=\"https://github.com/Kimsoo0119\"\u003e\u003ccode\u003e@​Kimsoo0119\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.53.1\u003c/h2\u003e\n\u003ch2\u003e8.53.1 (2026-01-19)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [consistent-indexed-object-style] skip fixer if interface is a default export (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11951\"\u003e#11951\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e make RuleCreator root defaultOptions optional (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11956\"\u003e#11956\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCameron\u003c/li\u003e\n\u003cli\u003eYukihiro Hasegawa \u003ca href=\"https://github.com/y-hsgw\"\u003e\u003ccode\u003e@​y-hsgw\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.53.0\u003c/h2\u003e\n\u003ch2\u003e8.53.0 (2026-01-12)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e\u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.54.0 (2026-01-26)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.53.1 (2026-01-19)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.53.0 (2026-01-12)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/d423e57622e1c8e789a1b84109d1ab2c15497507\"\u003e\u003ccode\u003ed423e57\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.54.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/9940e53a156ec75b2e2910a63310650b4d19a6c6\"\u003e\u003ccode\u003e9940e53\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3021ede961732e66b1daca804759aa0cf4143b97\"\u003e\u003ccode\u003e3021ede\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.53.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.54.0/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-jest` from 29.12.1 to 29.13.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/releases\"\u003eeslint-plugin-jest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev29.13.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/compare/v29.12.2...v29.13.0\"\u003e29.13.0\u003c/a\u003e (2026-02-08)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esupport ESLint v10 (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/7735c44b285b3969066e206c71d5f77e20590446\"\u003e7735c44\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev29.12.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/compare/v29.12.1...v29.12.2\"\u003e29.12.2\u003c/a\u003e (2026-02-03)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd optional peer dependency on TypeScript (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1926\"\u003e#1926\u003c/a\u003e) (\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/82e3b043d15d3b9fbffc263fb57631ebe56f9ea7\"\u003e82e3b04\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/blob/main/CHANGELOG.md\"\u003eeslint-plugin-jest's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/compare/v29.12.2...v29.13.0\"\u003e29.13.0\u003c/a\u003e (2026-02-08)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esupport ESLint v10 (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/7735c44b285b3969066e206c71d5f77e20590446\"\u003e7735c44\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/compare/v29.12.1...v29.12.2\"\u003e29.12.2\u003c/a\u003e (2026-02-03)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd optional peer dependency on TypeScript (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1926\"\u003e#1926\u003c/a\u003e) (\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/82e3b043d15d3b9fbffc263fb57631ebe56f9ea7\"\u003e82e3b04\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/cb36f1ff5702a3493e4848941122424cb82cfa30\"\u003e\u003ccode\u003ecb36f1f\u003c/code\u003e\u003c/a\u003e chore(release): 29.13.0 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/7735c44b285b3969066e206c71d5f77e20590446\"\u003e\u003ccode\u003e7735c44\u003c/code\u003e\u003c/a\u003e feat: support ESLint v10 (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1929\"\u003e#1929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/53efb753a83d4ad217f3e47f7fea0996750140a6\"\u003e\u003ccode\u003e53efb75\u003c/code\u003e\u003c/a\u003e test: update titles (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1930\"\u003e#1930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/4acda625d6fe7c3aaec1a44d3cbeae4972e452b6\"\u003e\u003ccode\u003e4acda62\u003c/code\u003e\u003c/a\u003e chore(release): 29.12.2 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/82e3b043d15d3b9fbffc263fb57631ebe56f9ea7\"\u003e\u003ccode\u003e82e3b04\u003c/code\u003e\u003c/a\u003e fix: add optional peer dependency on TypeScript (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1926\"\u003e#1926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/10501cfeeecc5decf63db8bb9690dcecd1019fd0\"\u003e\u003ccode\u003e10501cf\u003c/code\u003e\u003c/a\u003e chore(deps): update workflows (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1922\"\u003e#1922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/d3958b0d03583c97036db2f739bddee95b49f413\"\u003e\u003ccode\u003ed3958b0\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1925\"\u003e#1925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/410f511d30a5a5b1f9683d39bee5dfd2a2257afe\"\u003e\u003ccode\u003e410f511\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1924\"\u003e#1924\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/b2e6d5e3a6606a8fa6847de9824461df7924d988\"\u003e\u003ccode\u003eb2e6d5e\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1923\"\u003e#1923\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/5e2cffbb3089fd3a161e4e25ee5585b0d13393d9\"\u003e\u003ccode\u003e5e2cffb\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1921\"\u003e#1921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/compare/v29.12.1...v29.13.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-prettier` from 5.5.4 to 5.5.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/releases\"\u003eeslint-plugin-prettier's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.5.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/pull/772\"\u003e#772\u003c/a\u003e \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/7264ed0a6cf47fc36befed32f459e7d875f5992c\"\u003e\u003ccode\u003e7264ed0\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/BPScott\"\u003e\u003ccode\u003e@​BPScott\u003c/code\u003e\u003c/a\u003e! - Bump prettier-linter-helpers dependency to v1.0.1\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/pull/776\"\u003e#776\u003c/a\u003e \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/77651a33cd16fd4c50b7346971990b900a42408b\"\u003e\u003ccode\u003e77651a3\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/aswils\"\u003e\u003ccode\u003e@​aswils\u003c/code\u003e\u003c/a\u003e! - fix: bump synckit for yarn PnP ESM issue\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/blob/main/CHANGELOG.md\"\u003eeslint-plugin-prettier's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.5.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/pull/772\"\u003e#772\u003c/a\u003e \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/7264ed0a6cf47fc36befed32f459e7d875f5992c\"\u003e\u003ccode\u003e7264ed0\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/BPScott\"\u003e\u003ccode\u003e@​BPScott\u003c/code\u003e\u003c/a\u003e! - Bump prettier-linter-helpers dependency to v1.0.1\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/pull/776\"\u003e#776\u003c/a\u003e \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/77651a33cd16fd4c50b7346971990b900a42408b\"\u003e\u003ccode\u003e77651a3\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/aswils\"\u003e\u003ccode\u003e@​aswils\u003c/code\u003e\u003c/a\u003e! - fix: bump synckit for yarn PnP ESM issue\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/e2c154a7214d4548dad225a56ee1e333d6389b66\"\u003e\u003ccode\u003ee2c154a\u003c/code\u003e\u003c/a\u003e chore: release eslint-plugin-prettier (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/773\"\u003e#773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/6795c1abf6dc9949da8681b05ec31d323794d00c\"\u003e\u003ccode\u003e6795c1a\u003c/code\u003e\u003c/a\u003e build(deps): Bump the actions group across 1 directory with 2 updates (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/774\"\u003e#774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/77651a33cd16fd4c50b7346971990b900a42408b\"\u003e\u003ccode\u003e77651a3\u003c/code\u003e\u003c/a\u003e fix: bump synckit for yarn PnP ESM issue (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/776\"\u003e#776\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/7264ed0a6cf47fc36befed32f459e7d875f5992c\"\u003e\u003ccode\u003e7264ed0\u003c/code\u003e\u003c/a\u003e chore: bump prettier-linter-helpers to v1.0.1 (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/772\"\u003e#772\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/e11a5b7e71f41b3238da944ba1ee84f7f518a4f4\"\u003e\u003ccode\u003ee11a5b7\u003c/code\u003e\u003c/a\u003e build(deps): Bump the actions group across 1 directory with 3 updates (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/769\"\u003e#769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/befda88381335cd5491d2aaa16b67350ba3cc602\"\u003e\u003ccode\u003ebefda88\u003c/code\u003e\u003c/a\u003e ci: enable trusted publishing (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/757\"\u003e#757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/compare/v5.5.4...v5.5.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by [GitHub Actions](\u003ca href=\"https://www.npmjs.com/~GitHub\"\u003ehttps://www.npmjs.com/~GitHub\u003c/a\u003e Actions), a new releaser for eslint-plugin-prettier since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prettier` from 3.7.4 to 3.8.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/prettier/releases\"\u003eprettier's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.8.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eInclude available \u003ccode\u003eprinters\u003c/code\u003e in plugin type declarations (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18706\"\u003e#18706\u003c/a\u003e by \u003ca href=\"https://github.com/porada\"\u003e\u003ccode\u003e@​porada\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://github.com/prettier/prettier/blob/main/CHANGELOG.md#381\"\u003eChangelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.8.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Angular v21.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.7.4...3.8.0\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://prettier.io/blog/2026/01/14/3.8.0\"\u003eRelease note \u0026quot;Prettier 3.8: Support for Angular v21.1\u0026quot;\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/prettier/blob/main/CHANGELOG.md\"\u003eprettier's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.8.1\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.8.0...3.8.1\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eInclude available \u003ccode\u003eprinters\u003c/code\u003e in plugin type declarations (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18706\"\u003e#18706\u003c/a\u003e by \u003ca href=\"https://github.com/porada\"\u003e\u003ccode\u003e@​porada\u003c/code\u003e\u003c/a\u003e)\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// Input\nimport * as prettierPluginEstree from \u0026quot;prettier/plugins/estree\u0026quot;;\n\u003cp\u003e// Prettier 3.8.0\n// Property 'printers' does not exist on type 'typeof import(\u0026quot;prettier/plugins/estree\u0026quot;)'. ts(2339)\nprettierPluginEstree.printers.estree; //=\u0026gt; any\u003c/p\u003e\n\u003cp\u003e// Prettier 3.8.1\nprettierPluginEstree.printers.estree; //=\u0026gt; Printer\nprettierPluginEstree.printers[\u0026quot;estree-json\u0026quot;]; //=\u0026gt; Printer\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch1\u003e3.8.0\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.7.4...3.8.0\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://prettier.io/blog/2026/01/14/3.8.0\"\u003eRelease Notes\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/90983f40dce5e20beea4e5618b5e0426a6a7f4f0\"\u003e\u003ccode\u003e90983f4\u003c/code\u003e\u003c/a\u003e Release 3.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/57f702f7656e6fc03873f8121480c321b2f44c8c\"\u003e\u003ccode\u003e57f702f\u003c/code\u003e\u003c/a\u003e Include available \u003ccode\u003eprinters\u003c/code\u003e in plugin type declarations (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18706\"\u003e#18706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/bece82785141274c12956b0af3bae77a44ae3a9e\"\u003e\u003ccode\u003ebece827\u003c/code\u003e\u003c/a\u003e Revert change in release script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/82a4ab26f1e7fccd0041272de12a3c6b942e622b\"\u003e\u003ccode\u003e82a4ab2\u003c/code\u003e\u003c/a\u003e Bump Prettier dependency to 3.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/5213ee463c653f47e1821de414a4f30573f83337\"\u003e\u003ccode\u003e5213ee4\u003c/code\u003e\u003c/a\u003e Clean changelog_unreleased\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/f95ad0f8e1dd9fb5507e7088f42f91fa6b5f3cb0\"\u003e\u003ccode\u003ef95ad0f\u003c/code\u003e\u003c/a\u003e Comment out finished steps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/b2034e819aef944fe1fe3bbf532118885a854f64\"\u003e\u003ccode\u003eb2034e8\u003c/code\u003e\u003c/a\u003e Fix release script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/5824b15189303d52892ffbc0812751533666c674\"\u003e\u003ccode\u003e5824b15\u003c/code\u003e\u003c/a\u003e Release 3.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/04336012b351529f624eaeb3ac9af52a5b7b7c01\"\u003e\u003ccode\u003e0433601\u003c/code\u003e\u003c/a\u003e Add blog post for v3.8.0 (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18639\"\u003e#18639\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/b04d05b831f1476ac6e24e1211972bfdd475c9b8\"\u003e\u003ccode\u003eb04d05b\u003c/code\u003e\u003c/a\u003e Remove lint step from release script (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18415\"\u003e#18415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prettier/prettier/compare/3.7.4...3.8.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript-eslint` from 8.52.0 to 8.54.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003etypescript-eslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.54.0\u003c/h2\u003e\n\u003ch2\u003e8.54.0 (2026-01-26)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin-internal:\u003c/strong\u003e add prefer-tsutils-methods rule (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11974\"\u003e#11974\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11625\"\u003e#11625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e support ScopeManager#addGlobals (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11914\"\u003e#11914\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-estree:\u003c/strong\u003e add shortcut methods to ParserServicesWithTypeInformation (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11965\"\u003e#11965\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11955\"\u003e#11955\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unused-private-class-members] private destructured class member is defined but used (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11785\"\u003e#11785\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] check both base constraint and actual type for non-null assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11967\"\u003e#11967\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11559\"\u003e#11559\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e fix catch clause scopes \u003ccode\u003edef.name\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11982\"\u003e#11982\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e prevent misidentification of \u003ccode\u003e\u0026quot;use strict\u0026quot;\u003c/code\u003e directives (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11995\"\u003e#11995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e handle missing \u003ccode\u003eFlatESLint\u003c/code\u003e and \u003ccode\u003eLegacyESLint\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11958\"\u003e#11958\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBrad Zacher \u003ca href=\"https://github.com/bradzacher\"\u003e\u003ccode\u003e@​bradzacher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efnx \u003ca href=\"https://github.com/DMartens\"\u003e\u003ccode\u003e@​DMartens\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFrancesco Trotta\u003c/li\u003e\n\u003cli\u003eJosh Goldberg\u003c/li\u003e\n\u003cli\u003eMinJae \u003ca href=\"https://github.com/Ju-MINJAE\"\u003e\u003ccode\u003e@​Ju-MINJAE\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMinyeong Kim \u003ca href=\"https://github.com/minyeong981\"\u003e\u003ccode\u003e@​minyeong981\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eoverlookmotel\u003c/li\u003e\n\u003cli\u003eYuya Yoshioka \u003ca href=\"https://github.com/YuyaYoshioka\"\u003e\u003ccode\u003e@​YuyaYoshioka\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e김현수 \u003ca href=\"https://github.com/Kimsoo0119\"\u003e\u003ccode\u003e@​Kimsoo0119\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.53.1\u003c/h2\u003e\n\u003ch2\u003e8.53.1 (2026-01-19)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [consistent-indexed-object-style] skip fixer if interface is a default export (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11951\"\u003e#11951\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e make RuleCreator root defaultOptions optional (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11956\"\u003e#11956\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCameron\u003c/li\u003e\n\u003cli\u003eYukihiro Hasegawa \u003ca href=\"https://github.com/y-hsgw\"\u003e\u003ccode\u003e@​y-hsgw\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.53.0\u003c/h2\u003e\n\u003ch2\u003e8.53.0 (2026-01-12)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md\"\u003etypescript-eslint's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.54.0 (2026-01-26)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.53.1 (2026-01-19)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.53.0 (2026-01-12)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/d423e57622e1c8e789a1b84109d1ab2c15497507\"\u003e\u003ccode\u003ed423e57\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.54.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/9940e53a156ec75b2e2910a63310650b4d19a6c6\"\u003e\u003ccode\u003e9940e53\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3021ede961732e66b1daca804759aa0cf4143b97\"\u003e\u003ccode\u003e3021ede\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.53.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.54.0/packages/typescript-eslint\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 21.0.0-beta.1 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.1 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.0 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187\"\u003e9c0d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f7\"\u003e5d8e5f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.2\"\u003e21.0.2\u003c/a\u003e (2026-01-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.1\"\u003e21.0.1\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.1-beta.0\"\u003e21.0.1-beta.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.0\"\u003e21.0.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/df93aba91f4bdace2a54e0052e9b4603638f9fd4\"\u003e\u003ccode\u003edf93aba\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4af87374773bedb22c0a050d8ece327a51f432d3\"\u003e\u003ccode\u003e4af8737\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1f20a38d517527be88d140bb36dc00cf6bcb7583\"\u003e\u003ccode\u003e1f20a38\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187e93be6b9ba7773432826fc2f63ca9cff6\"\u003e\u003ccode\u003e9c0d187\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f70dc25f05fa8ea6e67efe07d2271182c9a\"\u003e\u003ccode\u003e5d8e5f7\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9f8d27afa52bfa0a44d3aa97081c0e0bf94d2a5c\"\u003e\u003ccode\u003e9f8d27a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/63f716a171b650bdfed007bec8f286e28f8b6c0c\"\u003e\u003ccode\u003e63f716a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@21.0.3/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by [GitHub Actions](\u003ca href=\"https://www.npmjs.com/~GitHub\"\u003ehttps://www.npmjs.com/~GitHub\u003c/a\u003e Actions), a new releaser for \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-devkit/architect` from 0.2100.5 to 0.2101.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular/angular-cli/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-devkit/core` from 21.0.5 to 21.1.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/releases\"\u003e\u003ccode\u003e@​angular-devkit/core\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.1.3\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/a18196a1096e5eb69cf64102943781d34c4389bf\"\u003e\u003cimg src=\"https://img.shields.io/badge/a18196a10-fix-green\" alt=\"fix - a18196a10\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ewarn when production configuration is missing for service worker\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/6d05d27ca097b16efb139bcee1c45b1b51dfe746\"\u003e\u003cimg src=\"https://img.shields.io/badge/6d05d27ca-fix-green\" alt=\"fix - 6d05d27ca\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eaddress Node.js deprecation DEP0190\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.1.2\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/schematics-cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescripti...\n\n_Description has been truncated_","html_url":"https://github.com/b310-digital/teammapper/pull/1142","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/b310-digital%2Fteammapper/issues/1142","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1142/packages"},{"uuid":"3815783638","node_id":"PR_kwDOAYyT6c69StPw","number":6049,"state":"open","title":"build(deps): bump the angular group across 1 directory with 11 updates","user":"dependabot[bot]","labels":["theme: dependencies","theme: angular"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-01-15T03:05:36.000Z","updated_at":"2026-02-04T20:01:25.824Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"angular","update_count":11,"packages":[{"name":"@angular/common","old_version":"20.3.14","new_version":"21.1.0","repository_url":"https://github.com/angular/angular"},{"name":"@fortawesome/angular-fontawesome","old_version":"3.0.0","new_version":"4.0.0","repository_url":"https://github.com/FortAwesome/angular-fontawesome"},{"name":"@ng-bootstrap/ng-bootstrap","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/ng-bootstrap/ng-bootstrap"},{"name":"ngx-cookie-service","old_version":"20.1.1","new_version":"21.1.0","repository_url":"https://github.com/stevermeister/ngx-cookie-service"},{"name":"ngx-infinite-scroll","old_version":"20.0.0","new_version":"21.0.0","repository_url":"https://github.com/orizens/ngx-infinite-scroll"},{"name":"zone.js","old_version":"0.15.1","new_version":"0.16.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular-builders/custom-esbuild","old_version":"20.0.0","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/custom-webpack","old_version":"20.0.0","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"20.0.0","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular/build","old_version":"20.3.10","new_version":"21.1.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/cli","old_version":"20.3.10","new_version":"21.1.0","repository_url":"https://github.com/angular/angular-cli"}],"path":null,"ecosystem":"npm"},"body":"Bumps the angular group with 11 updates in the /generators/angular/resources directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `20.3.14` | `21.1.0` |\n| [@fortawesome/angular-fontawesome](https://github.com/FortAwesome/angular-fontawesome) | `3.0.0` | `4.0.0` |\n| [@ng-bootstrap/ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap) | `19.0.1` | `20.0.0` |\n| [ngx-cookie-service](https://github.com/stevermeister/ngx-cookie-service) | `20.1.1` | `21.1.0` |\n| [ngx-infinite-scroll](https://github.com/orizens/ngx-infinite-scroll) | `20.0.0` | `21.0.0` |\n| [zone.js](https://github.com/angular/angular/tree/HEAD/packages/zone.js) | `0.15.1` | `0.16.0` |\n| [@angular-builders/custom-esbuild](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-esbuild) | `20.0.0` | `21.0.3` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `20.0.0` | `21.0.3` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `20.0.0` | `21.0.3` |\n| [@angular/build](https://github.com/angular/angular-cli) | `20.3.10` | `21.1.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `20.3.10` | `21.1.0` |\n\n\nUpdates `@angular/common` from 20.3.14 to 21.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.1.0\u003c/h2\u003e\n\u003ch2\u003e21.1.0 (2026-01-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): convert enum member kind in completions correctly (\u003ca href=\"https://github.com/angular/angular/commit/50674f8c28c970e6a9cfe222f9f55bace4e16321\"\u003e50674f8c28\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.1.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d8790972bea4c59a208219dd36d158b5d7e4fdde\"\u003e\u003cimg src=\"https://img.shields.io/badge/d8790972be-feat-blue\" alt=\"feat - d8790972be\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd custom transformations for Cloudflare and Cloudinary image loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a6b8cb68afaded6999ee68f495512be1a9932ae4\"\u003e\u003cimg src=\"https://img.shields.io/badge/a6b8cb68af-feat-blue\" alt=\"feat - a6b8cb68af\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport custom transformations in ImageKit and Imgix loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/640693da8e667c015662246152236585d9b24e7f\"\u003e\u003cimg src=\"https://img.shields.io/badge/640693da8e-feat-blue\" alt=\"feat - 640693da8e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for multiple swich cases matching\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ad3adc7c6d4094f1e3432a3f2e3bdc9862cb4fa\"\u003e\u003cimg src=\"https://img.shields.io/badge/0ad3adc7c6-fix-green\" alt=\"fix - 0ad3adc7c6\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eSupport empty cases\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/99ad18a4ee82ecc5524106d1d403ccfa9bae2304\"\u003e\u003cimg src=\"https://img.shields.io/badge/99ad18a4ee-feat-blue\" alt=\"feat - 99ad18a4ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd stability debugging utility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a0dfa5fa86f40520b0e368a021b3c72009a45e8e\"\u003e\u003cimg src=\"https://img.shields.io/badge/a0dfa5fa86-feat-blue\" alt=\"feat - a0dfa5fa86\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport rest arguments in function calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e18fa8bc9d7e6801e2e89e635c2f759dc422317\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e18fa8bc9-feat-blue\" alt=\"feat - 6e18fa8bc9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport spread elements in array literals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e407280ab53cde5f93c3a643457c848845c6ec8b\"\u003e\u003cimg src=\"https://img.shields.io/badge/e407280ab5-feat-blue\" alt=\"feat - e407280ab5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport spread expressions in object literals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/06be8034bb9b9adfc07ab0d40cd87c6ae5de02de\"\u003e\u003cimg src=\"https://img.shields.io/badge/06be8034bb-fix-green\" alt=\"fix - 06be8034bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMicrotask scheduling should be used after any application synchronization\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/b4f584cf42235c94bb8389fa55bc634e23d7b010\"\u003e\u003cimg src=\"https://img.shields.io/badge/b4f584cf42-fix-green\" alt=\"fix - b4f584cf42\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ereturn \u003ccode\u003eStaticProvider\u003c/code\u003e for \u003ccode\u003eprovidePlatformInitializer\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ea5c97703ad3c6d8e4cb1b4297eec57629ce117\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ea5c97703-feat-blue\" alt=\"feat - 1ea5c97703\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow focusing bound control from field state\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ec9dc94ceeb3c026c64e01c6889b7f5c6fd25a66\"\u003e\u003cimg src=\"https://img.shields.io/badge/ec9dc94cee-feat-blue\" alt=\"feat - ec9dc94cee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd \u003ccode\u003econtext\u003c/code\u003e to \u003ccode\u003ecreateApplication\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab67988d2e5242eff0034483f984428d684acd02\"\u003e\u003cimg src=\"https://img.shields.io/badge/ab67988d2e-feat-blue\" alt=\"feat - ab67988d2e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve JIT resources in \u003ccode\u003ecreateApplication\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5edceffd0431f5a25e111a731db521e966b91f86\"\u003e\u003cimg src=\"https://img.shields.io/badge/5edceffd04-feat-blue\" alt=\"feat - 5edceffd04\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd controls for route cleanup\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a03c82564da6824e199ff48d5249ea8708040951\"\u003e\u003cimg src=\"https://img.shields.io/badge/a03c82564d-feat-blue\" alt=\"feat - a03c82564d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd scroll behavior controls on router navigation\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e44839b01640505e554fff16f24e08f282a557c0\"\u003e\u003cimg src=\"https://img.shields.io/badge/e44839b016-feat-blue\" alt=\"feat - e44839b016\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd standalone function to create a comptued for isActive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c25d749d85374fff7745980cd9bb2673c661105a\"\u003e\u003cimg src=\"https://img.shields.io/badge/c25d749d85-feat-blue\" alt=\"feat - c25d749d85\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExecute RunGuardsAndResolvers function in injection context\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1c00ab42f8714f2775ed75bbf3cdf0fd44ee32c3\"\u003e\u003cimg src=\"https://img.shields.io/badge/1c00ab42f8-feat-blue\" alt=\"feat - 1c00ab42f8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eextend paramters of RedirectFunction to include paramMap and queryParamMap\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7003e8d2417660f71b3a2a017aff3e650c8d9646\"\u003e\u003cimg src=\"https://img.shields.io/badge/7003e8d241-feat-blue\" alt=\"feat - 7003e8d241\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePublish Router's integration with platform Navigation API as experimental\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c84d37277874cf7cbd7582a295d796ff113b9cc1\"\u003e\u003cimg src=\"https://img.shields.io/badge/c84d372778-feat-blue\" alt=\"feat - c84d372778\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eSupport wildcard params with segments trailing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64737\"\u003e#64737\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/75fe8f8af9488bae6f7068b64d44500643c5d63f\"\u003e\u003cimg src=\"https://img.shields.io/badge/75fe8f8af9-refactor-yellow\" alt=\"refactor - 75fe8f8af9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edeprecate \u003ccode\u003eVERSION\u003c/code\u003e export\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eDeprecations\u003c/h2\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.1.0 (2026-01-14)\u003c/h1\u003e\n\u003ch2\u003eDeprecations\u003c/h2\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eVERSION\u003c/code\u003e from \u003ccode\u003e@angular/upgrade\u003c/code\u003e is deprecated. Please use the entry from \u003ccode\u003e@angular/upgrade/static\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d8790972bea4c59a208219dd36d158b5d7e4fdde\"\u003ed8790972be\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd custom transformations for Cloudflare and Cloudinary image loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a6b8cb68afaded6999ee68f495512be1a9932ae4\"\u003ea6b8cb68af\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport custom transformations in ImageKit and Imgix loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/640693da8e667c015662246152236585d9b24e7f\"\u003e640693da8e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for multiple swich cases matching\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ad3adc7c6d4094f1e3432a3f2e3bdc9862cb4fa\"\u003e0ad3adc7c6\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eSupport empty cases\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/99ad18a4ee82ecc5524106d1d403ccfa9bae2304\"\u003e99ad18a4ee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd stability debugging utility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a0dfa5fa86f40520b0e368a021b3c72009a45e8e\"\u003ea0dfa5fa86\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport rest arguments in function calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e18fa8bc9d7e6801e2e89e635c2f759dc422317\"\u003e6e18fa8bc9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport spread elements in array literals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e407280ab53cde5f93c3a643457c848845c6ec8b\"\u003ee407280ab5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport spread expressions in object literals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/06be8034bb9b9adfc07ab0d40cd87c6ae5de02de\"\u003e06be8034bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMicrotask scheduling should be used after any application synchronization\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/b4f584cf42235c94bb8389fa55bc634e23d7b010\"\u003eb4f584cf42\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ereturn \u003ccode\u003eStaticProvider\u003c/code\u003e for \u003ccode\u003eprovidePlatformInitializer\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ea5c97703ad3c6d8e4cb1b4297eec57629ce117\"\u003e1ea5c97703\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eallow focusing bound control from field state\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ec9dc94ceeb3c026c64e01c6889b7f5c6fd25a66\"\u003eec9dc94cee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd \u003ccode\u003econtext\u003c/code\u003e to \u003ccode\u003ecreateApplication\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab67988d2e5242eff0034483f984428d684acd02\"\u003eab67988d2e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eresolve JIT resources in \u003ccode\u003ecreateApplication\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5edceffd0431f5a25e111a731db521e966b91f86\"\u003e5edceffd04\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd controls for route cleanup\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a03c82564da6824e199ff48d5249ea8708040951\"\u003ea03c82564d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd scroll behavior controls on router navigation\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e44839b01640505e554fff16f24e08f282a557c0\"\u003ee44839b016\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd standalone function to create a comptued for isActive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c25d749d85374fff7745980cd9bb2673c661105a\"\u003ec25d749d85\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExecute RunGuardsAndResolvers function in injection context\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1c00ab42f8714f2775ed75bbf3cdf0fd44ee32c3\"\u003e1c00ab42f8\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eextend paramters of RedirectFunction to include paramMap and queryParamMap\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7003e8d2417660f71b3a2a017aff3e650c8d9646\"\u003e7003e8d241\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003ePublish Router's integration with platform Navigation API as experimental\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c84d37277874cf7cbd7582a295d796ff113b9cc1\"\u003ec84d372778\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eSupport wildcard params with segments trailing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64737\"\u003e#64737\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/75fe8f8af9488bae6f7068b64d44500643c5d63f\"\u003e75fe8f8af9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erefactor\u003c/td\u003e\n\u003ctd\u003edeprecate \u003ccode\u003eVERSION\u003c/code\u003e export\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3954dc278b7a61ea2b82021041b030d8fc068c74\"\u003e\u003ccode\u003e3954dc2\u003c/code\u003e\u003c/a\u003e refactor(http): remove redundant providedIn: 'root' in XSRF_HEADER_NAME\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/03e2b3682693e47f7bf84fa12df45659ebb09599\"\u003e\u003ccode\u003e03e2b36\u003c/code\u003e\u003c/a\u003e refactor(core): update error message links to versioned docs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/66374\"\u003e#66374\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/74af7d85e5c6fbda8e2c7a2a61c26fcae437d14c\"\u003e\u003ccode\u003e74af7d8\u003c/code\u003e\u003c/a\u003e refactor(core): Use the provided Document value rather than global in FakeNav...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2b94299922b3cb09c63cb8eb517bcf3b94be8bb\"\u003e\u003ccode\u003ea2b9429\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;feat(router): add trailingSlash config option\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/12fccc5e99c9f6b1babf77fde52d84001e68f11a\"\u003e\u003ccode\u003e12fccc5\u003c/code\u003e\u003c/a\u003e feat(router): add trailingSlash config option\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3dfdb71d65ed15e7d3e69ffe3b89b7b4cef9504a\"\u003e\u003ccode\u003e3dfdb71\u003c/code\u003e\u003c/a\u003e docs: add docs for transform property in built-in loaders\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/dd58c4b667b74e978f5e5eae56af1204f84e2688\"\u003e\u003ccode\u003edd58c4b\u003c/code\u003e\u003c/a\u003e refactor(common): Add token to indicate whether precommit handler is supported\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a6b8cb68afaded6999ee68f495512be1a9932ae4\"\u003e\u003ccode\u003ea6b8cb6\u003c/code\u003e\u003c/a\u003e feat(common): support custom transformations in ImageKit and Imgix loaders\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/d8790972bea4c59a208219dd36d158b5d7e4fdde\"\u003e\u003ccode\u003ed879097\u003c/code\u003e\u003c/a\u003e feat(common): Add custom transformations for Cloudflare and Cloudinary image ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6270bba056cfaadb3fe0b2bf3b17036bdc28b90e\"\u003e\u003ccode\u003e6270bba\u003c/code\u003e\u003c/a\u003e ci: reformat files\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/v21.1.0/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@fortawesome/angular-fontawesome` from 3.0.0 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 21.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAngular 20.x is no longer supported. If you are using this version, please, stick with version 3.0.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/3.1.0\"\u003e4.0.0\u003c/a\u003e (2025-11-24)\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 21.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAngular 20.x is no longer supported. If you are using this version, please, stick with version 3.0.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/5e71eb5027ede783e649ffd0e1b9a64fc8a82602\"\u003e\u003ccode\u003e5e71eb5\u003c/code\u003e\u003c/a\u003e Release 4.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/5343c8473a811ecea04bb6d658f6fe32b70173ff\"\u003e\u003ccode\u003e5343c84\u003c/code\u003e\u003c/a\u003e Add support for Angular 21 (\u003ca href=\"https://redirect.github.com/FortAwesome/angular-fontawesome/issues/481\"\u003e#481\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/204c473ac5f3c10235642d1364055f955bf210fd\"\u003e\u003ccode\u003e204c473\u003c/code\u003e\u003c/a\u003e Reduce boilerplate in tests using direct component creation with bindings (\u003ca href=\"https://redirect.github.com/FortAwesome/angular-fontawesome/issues/478\"\u003e#478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/compare/3.0.0...4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ng-bootstrap/ng-bootstrap` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/releases\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e21.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cp\u003eThis release includes \u003cstrong\u003ecomponent entry points\u003c/strong\u003e. This allows applications importing ng-bootstrap to speed up their build and have a slightly smaller bundle.\u003c/p\u003e\n\u003cp\u003eFor example, you can use the ng-bootstrap pagination component like this:\u003c/p\u003e\n\u003cpre lang=\"typescript\"\u003e\u003ccode\u003eimport { NgbPagination } from '@ng-bootstrap/ng-bootstrap/pagination';\n\u003cp\u003e\u003ca href=\"https://github.com/Component\"\u003e\u003ccode\u003e@​Component\u003c/code\u003e\u003c/a\u003e({\ntemplate: \u003ccode\u003e\u0026amp;lt;ngb-pagination [collectionSize]=\u0026amp;quot;50\u0026amp;quot; /\u0026amp;gt;\u003c/code\u003e,\nimports: [NgbPagination]\n})\nexport class MyComponent {}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003ePlease note that this is not a breaking change, you will still be able to import everything from the main entrypoint.\u003c/p\u003e\n\u003ch2\u003eRegarding Zoneless support\u003c/h2\u003e\n\u003cp\u003eng-bootstrap demo has been using \u003ca href=\"https://angular.dev/guide/zoneless\"\u003eZoneless Change Detection\u003c/a\u003e since version 17.0.1\u003cbr /\u003e\nIf you have any issue using ng-bootstrap in a zoneless app, please open a bug and we will patch ng-bootstrap 20\u003c/p\u003e\n\u003ch2\u003eMiscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated all links of the demo website from angular.io to their corresponding one on angular.dev\u003c/li\u003e\n\u003cli\u003eUpdated all demo codes to use the standalone components instead of modules\u003c/li\u003e\n\u003cli\u003eMoved unit tests to vitest\u003c/li\u003e\n\u003cli\u003eStackblitzes now run on zoneless\u003c/li\u003e\n\u003cli\u003eFixed stackblitz links for popover / tooltip custom target examples\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e20.0.0-rc.0\u003c/h2\u003e\n\u003cp\u003eThis release candidate version bumps minimum required versions to Angular 21.0.0\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cp\u003eThis release includes \u003cstrong\u003ecomponent entry points\u003c/strong\u003e. This allows applications importing ng-bootstrap to speed up their build and have a slightly smaller bundle.\u003c/p\u003e\n\u003cp\u003eFor example, you can use the ng-bootstrap pagination component like this:\u003c/p\u003e\n\u003cpre lang=\"typescript\"\u003e\u003ccode\u003eimport { NgbPagination } from '@ng-bootstrap/ng-bootstrap/pagination';\n\u003cp\u003e\u003ca href=\"https://github.com/Component\"\u003e\u003ccode\u003e@​Component\u003c/code\u003e\u003c/a\u003e({\ntemplate: \u003ccode\u003e\u0026amp;lt;ngb-pagination [collectionSize]=\u0026amp;quot;50\u0026amp;quot; /\u0026amp;gt;\u003c/code\u003e,\nimports: [NgbPagination]\n}\nexport class MyComponent {}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/blob/master/CHANGELOG.md\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.1...20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-12-12)\u003c/h1\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e21.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cp\u003eThis release includes \u003cstrong\u003ecomponent entry points\u003c/strong\u003e. This allows applications importing ng-bootstrap to speed up their build and have a slightly smaller bundle.\u003c/p\u003e\n\u003cp\u003eFor example, you can use the ng-bootstrap pagination component like this:\u003c/p\u003e\n\u003cpre lang=\"typescript\"\u003e\u003ccode\u003eimport { NgbPagination } from '@ng-bootstrap/ng-bootstrap/pagination';\n\u003cp\u003e\u003ca href=\"https://github.com/Component\"\u003e\u003ccode\u003e@​Component\u003c/code\u003e\u003c/a\u003e({\ntemplate: \u003ccode\u003e\u0026amp;lt;ngb-pagination [collectionSize]=\u0026amp;quot;50\u0026amp;quot; /\u0026amp;gt;\u003c/code\u003e,\nimports: [NgbPagination]\n})\nexport class MyComponent {}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003ePlease note that this is not a breaking change, you will still be able to import everything from the main entrypoint.\u003c/p\u003e\n\u003ch2\u003eRegarding Zoneless support\u003c/h2\u003e\n\u003cp\u003eng-bootstrap demo has been using \u003ca href=\"https://angular.dev/guide/zoneless\"\u003eZoneless Change Detection\u003c/a\u003e since version 17.0.1\u003cbr /\u003e\nIf you have any issue using ng-bootstrap in a zoneless app, please open a bug and we will patch ng-bootstrap 20\u003c/p\u003e\n\u003ch2\u003eMiscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated all links of the demo website from angular.io to their corresponding one on angular.dev\u003c/li\u003e\n\u003cli\u003eUpdated all demo codes to use the standalone components instead of modules\u003c/li\u003e\n\u003cli\u003eMoved unit tests to vitest\u003c/li\u003e\n\u003cli\u003eStackblitzes now run on zoneless\u003c/li\u003e\n\u003cli\u003eFixed stackblitz links for popover / tooltip custom target examples\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/0cba2e312e572a8554a9006069e241027de3b05a\"\u003e\u003ccode\u003e0cba2e3\u003c/code\u003e\u003c/a\u003e docs: release 20.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d71730a78168b405664e5fe1ed6e8482fcfb865e\"\u003e\u003ccode\u003ed71730a\u003c/code\u003e\u003c/a\u003e docs: add scrollspy tag to package.json\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/e099c06a610e1eaef12539d6503b1b434b08200a\"\u003e\u003ccode\u003ee099c06\u003c/code\u003e\u003c/a\u003e refactor: upgrade deps for ejs, primsjs and gh-pages (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4878\"\u003e#4878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/e26242de2e36aa5fec6e87f2120196f19b665d01\"\u003e\u003ccode\u003ee26242d\u003c/code\u003e\u003c/a\u003e fix: demo stackblitzes after switch to multiple entrypoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/5aa50dce3b3d39e19a20c2dea90bfa0b0c937dad\"\u003e\u003ccode\u003e5aa50dc\u003c/code\u003e\u003c/a\u003e demo: include 19 in historical versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/3a8fee8fc28b2921e5d421b4befce5349f8ab99b\"\u003e\u003ccode\u003e3a8fee8\u003c/code\u003e\u003c/a\u003e ci: unexpose utils (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4877\"\u003e#4877\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1eeca8a56ce5ec801acf4f62386a15ab4fad08c7\"\u003e\u003ccode\u003e1eeca8a\u003c/code\u003e\u003c/a\u003e test: drop saucelabs and add webkit and firefox to units\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/91e05bf0f1f794c174010140ecefe7e2a5d4cce4\"\u003e\u003ccode\u003e91e05bf\u003c/code\u003e\u003c/a\u003e test: fix sauce browser configs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/403121b5564f1e647899410ae8a3c10304762b08\"\u003e\u003ccode\u003e403121b\u003c/code\u003e\u003c/a\u003e test: set saucelabs region to us\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/27516a00881c4b5305792b80ffa31759b420d20b\"\u003e\u003ccode\u003e27516a0\u003c/code\u003e\u003c/a\u003e test: move units to vitest (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4875\"\u003e#4875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.1...20.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-cookie-service` from 20.1.1 to 21.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/releases\"\u003engx-cookie-service's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(tests): migrate from Karma/Jasmine to Vitest for testing framework and update configurations by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/372\"\u003estevermeister/ngx-cookie-service#372\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v21.0.0...v21.1.0\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v21.0.0...v21.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(core): upgrade Angular and related dependencies to version 21.0.0 by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/371\"\u003estevermeister/ngx-cookie-service#371\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v20.1.1...v21.0.0\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v20.1.1...v21.0.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/268d9a6728741f605334cd3e3331253385c0ced5\"\u003e\u003ccode\u003e268d9a6\u003c/code\u003e\u003c/a\u003e feat(tests): migrate from Karma/Jasmine to Vitest for testing framework and u...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/8c1895d4edbd1ef4a667996eb25aabbcb063f51a\"\u003e\u003ccode\u003e8c1895d\u003c/code\u003e\u003c/a\u003e chore(package): bump version to 21.1.0 for ngx-cookie-service and ngx-cookie-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/195f56c90108d1ad120e38d3d4a203817f160bd9\"\u003e\u003ccode\u003e195f56c\u003c/code\u003e\u003c/a\u003e feat(tests): migrate from Karma/Jasmine to Vitest for testing framework and u...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/3726ea778cf4dfb83908b808dc45db90bf56b005\"\u003e\u003ccode\u003e3726ea7\u003c/code\u003e\u003c/a\u003e chore(package): upgrade Angular and related dependencies to version 21.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/f6ca6fd5c8291a2e08a6b74f68bb0cb4b17ab914\"\u003e\u003ccode\u003ef6ca6fd\u003c/code\u003e\u003c/a\u003e feat(core): upgrade Angular and related dependencies to version 21.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/5a3ecc06a98ad6d204747b915a7b5008411e2942\"\u003e\u003ccode\u003e5a3ecc0\u003c/code\u003e\u003c/a\u003e chore(package): upgrade Angular and related dependencies to version 21.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/f892c7e9e41aad189114fe60a34122bb6e941855\"\u003e\u003ccode\u003ef892c7e\u003c/code\u003e\u003c/a\u003e chore(package): upgrade Angular and related dependencies to version 21.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/283369387f71727bca5617c2a81a64614c309436\"\u003e\u003ccode\u003e2833693\u003c/code\u003e\u003c/a\u003e chore(package): upgrade Angular and related dependencies to version 21.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/c30836d983cb92ee29460fb10b6996b15ba2d3ee\"\u003e\u003ccode\u003ec30836d\u003c/code\u003e\u003c/a\u003e chore(package): upgrade Angular and related dependencies to version 21.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/39cbf0ed1477388c7ef2d8cec38f006008762708\"\u003e\u003ccode\u003e39cbf0e\u003c/code\u003e\u003c/a\u003e Add SSR Cookie Service Demo link for CommonEngine\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v20.1.1...v21.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-infinite-scroll` from 20.0.0 to 21.0.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/orizens/ngx-infinite-scroll/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zone.js` from 0.15.1 to 0.16.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/packages/zone.js/CHANGELOG.md\"\u003ezone.js's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e0.16.0 (2025-11-19)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(zone.js): Support jasmine v6 (\u003ca href=\"https://github.com/angular/angular/commit/48abe00\"\u003e48abe00\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(zone.js): waitForAsync should pass args to the test function (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61755\"\u003e#61755\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/3c216c1\"\u003e3c216c1\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/61755\"\u003e#61755\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/61717\"\u003e#61717\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/61755\"\u003e#61755\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(zone.js): Add internal implementation for auto ticking fakeAsync (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/62135\"\u003e#62135\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/0a827f9\"\u003e0a827f9\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/62135\"\u003e#62135\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/62135\"\u003e#62135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(zone.js): Improve missing proxy zone error for jest imported (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/64497\"\u003e#64497\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/ced2fa5\"\u003eced2fa5\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/64497\"\u003e#64497\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/47603\"\u003e#47603\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/64497\"\u003e#64497\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(zone.js): remove legacy browser support (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/63511\"\u003e#63511\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/2e46596\"\u003e2e46596\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/63511\"\u003e#63511\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/63511\"\u003e#63511\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(zone.js): remove unused jasmine globalerror monkey patching. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/63077\"\u003e#63077\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/9aef481\"\u003e9aef481\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/63077\"\u003e#63077\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/63072\"\u003e#63072\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/63077\"\u003e#63077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(zone.js): refactor tests to remove usage of shelljs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/64042\"\u003e#64042\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/422a3b9\"\u003e422a3b9\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/64042\"\u003e#64042\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/64042\"\u003e#64042\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGE\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIE/Non-Chromium Edge are not supported anymore.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/58014cb01a2ec4e7c5338806b5f1e3fdd7deefb9\"\u003e\u003ccode\u003e58014cb\u003c/code\u003e\u003c/a\u003e release: cut the zone.js-0.16.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/d99b7437d13486cb9e63c263936d4b867fedea6a\"\u003e\u003ccode\u003ed99b743\u003c/code\u003e\u003c/a\u003e build: update all non-major dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3cde920ecff18b36134c531a97006396f18bce22\"\u003e\u003ccode\u003e3cde920\u003c/code\u003e\u003c/a\u003e build: update all non-major dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/26fed34e0e340166b70702d6177ad639bbfa94aa\"\u003e\u003ccode\u003e26fed34\u003c/code\u003e\u003c/a\u003e build: format md files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/2b711812887dd8a273c91a3cf0c5421113c84eaf\"\u003e\u003ccode\u003e2b71181\u003c/code\u003e\u003c/a\u003e build: update all non-major dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/48abe007d914626c6bb5f8fe17b3b07881221794\"\u003e\u003ccode\u003e48abe00\u003c/code\u003e\u003c/a\u003e fix(zone.js): Support jasmine v6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/77ead34cc7d03500d8ceafecc7086a069becfcee\"\u003e\u003ccode\u003e77ead34\u003c/code\u003e\u003c/a\u003e build: update dependency vitest to v4 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/64635\"\u003e#64635\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ced2fa52539eb4ef64197413224e60c1ee231e5c\"\u003e\u003ccode\u003eced2fa5\u003c/code\u003e\u003c/a\u003e refactor(zone.js): Improve missing proxy zone error for jest imported (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/64497\"\u003e#64497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/fad6e1351e79548cdb232970e0ba45de06758604\"\u003e\u003ccode\u003efad6e13\u003c/code\u003e\u003c/a\u003e build: update all non-major dependencies (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/64514\"\u003e#64514\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/10aa4f9cf3a4400d9a2f442b4275fbd98cf4516f\"\u003e\u003ccode\u003e10aa4f9\u003c/code\u003e\u003c/a\u003e build: update all non-major dependencies (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/64488\"\u003e#64488\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/zone.js-0.16.0/packages/zone.js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/custom-esbuild` from 20.0.0 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-esbuild/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.1 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.0 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187\"\u003e9c0d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f7\"\u003e5d8e5f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@21.0.1-beta.0...@angular-builders/custom-esbuild@21.0.2\"\u003e21.0.2\u003c/a\u003e (2026-01-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@21.0.1-beta.0...@angular-builders/custom-esbuild@21.0.1\"\u003e21.0.1\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@21.0.0-beta.1...@angular-builders/custom-esbuild@21.0.1-beta.0\"\u003e21.0.1-beta.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@21.0.0-beta.1...@angular-builders/custom-esbuild@21.0.0\"\u003e21.0.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@20.1.0-beta.1...@angular-builders/custom-esbuild@21.0.0-beta.1\"\u003e21.0.0-beta.1\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAll packages now require Angular 21\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to Angular 21 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/98059dcfc2c2654f4672cb6f4597835522ee50ba\"\u003e98059dc\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/just-jeb/angular-builders/issues/1957\"\u003e#1957\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@20.1.0-beta.1...@angular-builders/custom-esbuild@21.0.0-beta.0\"\u003e21.0.0-beta.0\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAll packages now require Angular 21\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to Angular 21 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/98059dcfc2c2654f4672cb6f4597835522ee50ba\"\u003e98059dc\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/just-jeb/angular-builders/issues/1957\"\u003e#1957\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@20.1.0-beta.0...@angular-builders/custom-esbuild@20.1.0-beta.1\"\u003e20.1.0-beta.1\u003c/a\u003e (2025-11-13)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/df93aba91f4bdace2a54e0052e9b4603638f9fd4\"\u003e\u003ccode\u003edf93aba\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4af87374773bedb22c0a050d8ece327a51f432d3\"\u003e\u003ccode\u003e4af8737\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1f20a38d517527be88d140bb36dc00cf6bcb7583\"\u003e\u003ccode\u003e1f20a38\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187e93be6b9ba7773432826fc2f63ca9cff6\"\u003e\u003ccode\u003e9c0d187\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f70dc25f05fa8ea6e67efe07d2271182c9a\"\u003e\u003ccode\u003e5d8e5f7\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9f8d27afa52bfa0a44d3aa97081c0e0bf94d2a5c\"\u003e\u003ccode\u003e9f8d27a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/63f716a171b650bdfed007bec8f286e28f8b6c0c\"\u003e\u003ccode\u003e63f716a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1d1aa1b1eb60aa4379ac38d5913ce0a31dd45160\"\u003e\u003ccode\u003e1d1aa1b\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/c457fdeee426b904bd0c0864e31c42d91864ce32\"\u003e\u003ccode\u003ec457fde\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/98059dcfc2c2654f4672cb6f4597835522ee50ba\"\u003e\u003ccode\u003e98059dc\u003c/code\u003e\u003c/a\u003e chore!: upgrade to Angular 21\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-esbuild@21.0.3/packages/custom-esbuild\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by [GitHub Actions](\u003ca href=\"https://www.npmjs.com/~GitHub\"\u003ehttps://www.npmjs.com/~GitHub\u003c/a\u003e Actions), a new releaser for \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/custom-webpack` from 20.0.0 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-webpack/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.1 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.0 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187\"\u003e9c0d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f7\"\u003e5d8e5f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@21.0.1-beta.0...@angular-builders/custom-webpack@21.0.2\"\u003e21.0.2\u003c/a\u003e (2026-01-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@21.0.1-beta.0...@angular-builders/custom-webpack@21.0.1\"\u003e21.0.1\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@21.0.0-beta.1...@angular-builders/custom-webpack@21.0.1-beta.0\"\u003e21.0.1-beta.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@21.0.0-beta.1...@angular-builders/custom-webpack@21.0.0\"\u003e21.0.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.1-beta.1...@angular-builders/custom-webpack@21.0.0-beta.1\"\u003e21.0.0-beta.1\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAll packages now require Angular 21\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to Angular 21 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/98059dcfc2c2654f4672cb6f4597835522ee50ba\"\u003e98059dc\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/just-jeb/angular-builders/issues/1957\"\u003e#1957\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.1-beta.1...@angular-builders/custom-webpack@21.0.0-beta.0\"\u003e21.0.0-beta.0\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAll packages now require Angular 21\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to Angular 21 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/98059dcfc2c2654f4672cb6f4597835522ee50ba\"\u003e98059dc\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/just-jeb/angular-builders/issues/1957\"\u003e#1957\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.1-beta.0...@angular-builders/custom-webpack@20.0.1-beta.1\"\u003e20.0.1-beta.1\u003c/a\u003e (2025-11-13)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/df93aba91f4bdace2a54e0052e9b4603638f9fd4\"\u003e\u003ccode\u003edf93aba\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4af87374773bedb22c0a050d8ece327a51f432d3\"\u003e\u003ccode\u003e4af8737\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1f20a38d517527be88d140bb36dc00cf6bcb7583\"\u003e\u003ccode\u003e1f20a38\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187e93be6b9ba7773432826fc2f63ca9cff6\"\u003e\u003ccode\u003e9c0d187\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f70dc25f05fa8ea6e67efe07d2271182c9a\"\u003e\u003ccode\u003e5d8e5f7\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9f8d27afa52bfa0a44d3aa97081c0e0bf94d2a5c\"\u003e\u003ccode\u003e9f8d27a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/63f716a171b650bdfed007bec8f286e28f8b6c0c\"\u003e\u003ccode\u003e63f716a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1d1aa1b1eb60aa4379ac38d5913ce0a31dd45160\"\u003e\u003ccode\u003e1d1aa1b\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/c457fdeee426b904bd0c0864e31c42d91864ce32\"\u003e\u003ccode\u003ec457fde\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/98059dcfc2c2654f4672cb6f4597835522ee50ba\"\u003e\u003ccode\u003e98059dc\u003c/code\u003e\u003c/a\u003e chore!: upgrade to Angular 21\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-webpack@21.0.3/packages/custom-webpack\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by [GitHub Actions](\u003ca href=\"https://www.npmjs.com/~GitHub\"\u003ehttps://www.npmjs.com/~GitHub\u003c/a\u003e Actions), a new releaser for \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 20.0.0 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.1 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.0 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187\"\u003e9c0d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f7\"\u003e5d8e5f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.2\"\u003e21.0.2\u003c/a\u003e (2026-01-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.1\"\u003e21.0.1\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.1-beta.0\"\u003e21.0.1-beta.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.0\"\u003e21.0.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.1-beta.1...@angular-builders/jest@21.0.0-beta.1\"\u003e21.0.0-beta.1\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e configPath option renamed to config\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe config option now accepts:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFile path (string): \u0026quot;jest.config.js\u0026quot;\u003c/li\u003e\n\u003cli\u003eJSON string: '{\u0026quot;verbose\u0026quot;: true}'\u003c/li\u003e\n\u003cli\u003eInline object in angular.json\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e zoneless is now the default\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eApps using zone.js change detection must set zoneless: false in angular.json.\u003c/p\u003e\n\u003cp\u003eglobalMocks option now only supports matchMedia. The styleTransform,\ngetComputedStyle, and doctype mocks have been removed as Jest 30's\njsdom supports these natively.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e Requires Jest 30\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eUsers must upgrade:\nnpm install --save-dev jest@^30.0.0 jest-environment-jsdom@^30.0.0 jsdom@^26.0.0\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/df93aba91f4bdace2a54e0052e9b4603638f9fd4\"\u003e\u003ccode\u003edf93aba\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4af87374773bedb22c0a050d8ece327a51f432d3\"\u003e\u003ccode\u003e4af8737\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1f20a38d517527be88d140bb36dc00cf6bcb7583\"\u003e\u003ccode\u003e1f20a38\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187e93be6b9ba7773432826fc2f63ca9cff6\"\u003e\u003ccode\u003e9c0d187\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f70dc25f05fa8ea6e67efe07d2271182c9a\"\u003e\u003ccode\u003e5d8e5f7\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9f8d27afa52bfa0a44d3aa97081c0e0bf94d2a5c\"\u003e\u003ccode\u003e9f8d27a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/63f716a171b650bdfed007bec8f286e28f8b6c0c\"\u003e\u003ccode\u003e63f716a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1d1aa1b1eb60aa4379ac38d5913ce0a31dd45160\"\u003e\u003ccode\u003e1d1aa1b\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/c457fdeee426b904bd0c0864e31c42d91864ce32\"\u003e\u003ccode\u003ec457fde\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/7bfe31233d86cd04798055d19a552e7d8ab424a3\"\u003e\u003ccode\u003e7bfe312\u003c/code\u003e\u003c/a\u003e feat(jest)!: rename configPath to config with object support\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@21.0.3/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by [GitHub Actions](\u003ca href=\"https://www.npmjs.com/~GitHub\"\u003ehttps://www.npmjs.com/~GitHub\u003c/a\u003e Actions), a new releaser for \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/build` from 20.3.10 to 21.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/releases\"\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.1.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/36cf3afb485a01f86c4c90f136b38a3cf338e313\"\u003e\u003cimg src=\"https://img.shields.io/badge/36cf3afb4-feat-blue\" alt=\"feat - 36cf3afb4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd browserMode option to jasmine-vitest schematic\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/e71a72ffdc426e26bfb4f0bb92e8f5795a621c18\"\u003e\u003cimg src=\"https://img.shields.io/badge/e71a72ffd-feat-blue\" alt=\"feat - e71a72ffd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003egenerate detailed migration report for \u003ccode\u003erefactor-jasmine-vitest\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/18cf6c51b72ce5c7f23012585ed992cf91cef5ed\"\u003e\u003cimg src=\"https://img.shields.io/badge/18cf6c51b-fix-green\" alt=\"fix - 18cf6c51b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd MCP configuration file to new workspaces\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/772e6efe7acb2d2318a57ba77092a85fc286c51b\"\u003e\u003cimg src=\"https://img.shields.io/badge/772e6efe7-feat-blue\" alt=\"feat - 772e6efe7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd 'test' and 'e2e' MCP tools\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/8efb8631842401e219e20dd7955512d4a90a28a3\"\u003e\u003cimg src=\"https://img.shields.io/badge/8efb86318-feat-blue\" alt=\"feat - 8efb86318\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd \u0026quot;all\u0026quot; as an experimental tool group\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/c3c9ac5067275461e2d8caefba81ac9701949776\"\u003e\u003cimg src=\"https://img.shields.io/badge/c3c9ac506-feat-blue\" alt=\"feat - c3c9ac506\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd MCP tools for building and running devservers\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d635a6c6335d0838fc0977f6742f6aa9f769c527\"\u003e\u003cimg src=\"https://img.shields.io/badge/d635a6c63-feat-blue\" alt=\"feat - d635a6c63\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd signal forms lessons\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d8b76e93d3e9e4e7bd7ad6e12fdf59cd663cbb8e\"\u003e\u003cimg src=\"https://img.shields.io/badge/d8b76e93d-fix-green\" alt=\"fix - d8b76e93d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle yarn classic tag manifest fetching\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/7ab5c0b0a1c637f3e0adb71486e5e7e8716561e4\"\u003e\u003cimg src=\"https://img.shields.io/badge/7ab5c0b0a-fix-green\" alt=\"fix - 7ab5c0b0a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly spawn package managers on Windows in new abstraction\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/348096623326857a5d8cf77d56712776e1190180\"\u003e\u003cimg src=\"https://img.shields.io/badge/348096623-fix-green\" alt=\"fix - 348096623\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eenhance list_projects MCP tool file system traversal and symlink handling\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/316fca8626d51b28ea8cd840f3815b7c6dfcfffa\"\u003e\u003cimg src=\"https://img.shields.io/badge/316fca862-fix-green\" alt=\"fix - 316fca862\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle array output from npm view in manifest parser\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/032257a6d00360d2c4e6d5406409dcfa5b27d1d5\"\u003e\u003cimg src=\"https://img.shields.io/badge/032257a6d-fix-green\" alt=\"fix - 032257a6d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove signal forms lesson examples in AI tutor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/18d74dde8938dbe566df80753d5c148c19040179\"\u003e\u003cimg src=\"https://img.shields.io/badge/18d74dde8-fix-green\" alt=\"fix - 18d74dde8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erename mcp devserver tools to comply with naming spec\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1ad773671afa2849a966f9974cb30e7c8e8ed7d4\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ad773671-fix-green\" alt=\"fix - 1ad773671\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate dependency \u003ccode\u003e@​modelcontextprotocol/sdk\u003c/code\u003e to v1.25.2\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/45d4f5668018362f90fcc4cdc487470286f03c02\"\u003e\u003cimg src=\"https://img.shields.io/badge/45d4f5668-fix-green\" alt=\"fix - 45d4f5668\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate yarn berry package manager configuration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/122ed27c906613b7966cbda8fe2f36dbe6f60198\"\u003e\u003cimg src=\"https://img.shields.io/badge/122ed27c9-fix-green\" alt=\"fix - 122ed27c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse project-local temporary directory in ng add\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/a15db28b29f6f43bef1ed1ca7c6a963d9943f801\"\u003e\u003cimg src=\"https://img.shields.io/badge/a15db28b2-perf-orange\" alt=\"perf - a15db28b2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecache resolved specific version in package manager abstraction\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/240588b7e3c8698c83110793ab98d20caee4e1a4\"\u003e\u003cimg src=\"https://img.shields.io/badge/240588b7e-perf-orange\" alt=\"perf - 240588b7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize \u003ccode\u003eng add\u003c/code\u003e version discovery\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1eda0a99f89f625f8db1ecfe4873a7672e625401\"\u003e\u003cimg src=\"https://img.shields.io/badge/1eda0a99f-feat-blue\" alt=\"feat - 1eda0a99f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edirectly support ng-packagr in unit-test builder\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/87175f9dcdb7349dc8701fa1d5cf61c1b8542d42\"\u003e\u003cimg src=\"https://img.shields.io/badge/87175f9dc-feat-blue\" alt=\"feat - 87175f9dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edisable TestBed teardown during debugging in Vitest\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1e39c77a4fe272ccab1a1d8bd58eef1ce608a6c7\"\u003e\u003cimg src=\"https://img.shields.io/badge/1e39c77a4-fix-green\" alt=\"fix - 1e39c77a4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003einject source-map-support for Vitest browser tests\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/3fd7dcd764be0d0afb9cd792d53268d6f314df83\"\u003e\u003cimg src=\"https://img.shields.io/badge/3fd7dcd76-fix-green\" alt=\"fix - 3fd7dcd76\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enormalize roots to POSIX in test discovery for Windows compatibility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/164e7dbbc2b06bbd5aab84937c903e0590591c60\"\u003e\u003cimg src=\"https://img.shields.io/badge/164e7dbbc-fix-green\" alt=\"fix - 164e7dbbc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve test files correctly on Windows when using non-C drives\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ad99e00ad7edd17e369777c8d38b4137ea736121\"\u003e\u003cimg src=\"https://img.shields.io/badge/ad99e00ad-fix-green\" alt=\"fix - ad99e00ad\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esimplify SSL handling for \u003ccode\u003eng serve\u003c/code\u003e with SSR (\u003ca href=\"https://redirect.github.com/angular/angular-cli/issues/31722\"\u003e#31722\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.1.0-rc.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/9006ec057ced126f1c7822ffd36adee7748819ed\"\u003e\u003cimg src=\"https://img.shields.io/badge/9006ec057-fix-green\" alt=\"fix - 9006ec057\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emove 'provideZoneChangeDetection' to the root module\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d4febf4698ac33f9aa5a2d2d6183adca34f7b5\"\u003e\u003cimg src=\"https://img.shields.io/badge/42d4febf4-fix-green\" alt=\"fix - 42d4febf4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate application schematics for module-based apps to use 'provideZoneChangeDetection'\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5dfc0eea03c1faecd636fac775b0f5bc5f0ed430\"\u003e\u003cimg src=\"https://img.shields.io/badge/5dfc0eea0-fix-green\" alt=\"fix - 5dfc0eea0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate default app component message\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/424a465df7fa131803de4184f787ad9573a65090\"\u003e\u003cimg src=\"https://img.shields.io/badge/424a465df-fix-green\" alt=\"fix - 424a465df\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate default app component welcome message\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/772e6efe7acb2d2318a57ba77092a85fc286c51b\"\u003e\u003cimg src=\"https://img.shields.io/badge/772e6efe7-feat-blue\" alt=\"feat - 772e6efe7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd 'test' and 'e2e' MCP tools\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/8efb8631842401e219e20dd7955512d4a90a28a3\"\u003e\u003cimg src=\"https://img.shields.io/badge/8efb86318-feat-blue\" alt=\"feat - 8efb86318\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd \u0026quot;all\u0026quot; as an experimental tool group\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/316fca8626d51b28ea8cd840f3815b7c6dfcfffa\"\u003e\u003cimg src=\"https://img.shields.io/badge/316fca862-fix-green\" alt=\"fix - 316fca862\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle array output from npm view in manifest parser\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1ad773671afa2849a966f9974cb30e7c8e8ed7d4\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ad773671-fix-green\" alt=\"fix - 1ad773671\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate dependency \u003ccode\u003e@​modelcontextprotocol/sdk\u003c/code\u003e to v1.25.2\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.1.0 (2026-01-14)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/772e6efe7acb2d2318a57ba77092a85fc286c51b\"\u003e772e6efe7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd 'test' and 'e2e' MCP tools\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/8efb8631842401e219e20dd7955512d4a90a28a3\"\u003e8efb86318\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd \u0026quot;all\u0026quot; as an experimental tool group\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/c3c9ac5067275461e2d8caefba81ac9701949776\"\u003ec3c9ac506\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd MCP tools for building and running devservers\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d635a6c6335d0838fc0977f6742f6aa9f769c527\"\u003ed635a6c63\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd signal forms lessons\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d8b76e93d3e9e4e7bd7ad6e12fdf59cd663cbb8e\"\u003ed8b76e93d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly handle yarn classic tag manifest fetching\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/7ab5c0b0a1c637f3e0adb71486e5e7e8716561e4\"\u003e7ab5c0b0a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly spawn package managers on Windows in new abstraction\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/348096623326857a5d8cf77d56712776e1190180\"\u003e348096623\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eenhance list_projects MCP tool file system traversal and symlink handling\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/316fca8626d51b28ea8cd840f3815b7c6dfcfffa\"\u003e316fca862\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle array output from npm view in manifest parser\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/032257a6d00360d2c4e6d5406409dcfa5b27d1d5\"\u003e032257a6d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eimprove signal forms lesson examples in AI tutor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/18d74dde8938dbe566df80753d5c148c19040179\"\u003e18d74dde8\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003erename mcp devserver tools to comply with naming spec\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1ad773671afa2849a966f9974cb30e7c8e8ed7d4\"\u003e1ad773671\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate dependency \u003ccode\u003e@​modelcontextprotocol/sdk\u003c/code\u003e to v1.25.2\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/45d4f5668018362f90fcc4cdc487470286f03c02\"\u003e45d4f5668\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate yarn berry package manager configuration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/122ed27c906613b7966cbda8fe2f36dbe6f60198\"\u003e122ed27c9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003euse project-local temporary directory in ng add\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/a15db28b29f6f43bef1ed1ca7c6a963d9943f801\"\u003ea15db28b2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003ecache resolved specific version in package manager abstraction\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/240588b7e3c8698c83110793ab98d20caee4e1a4\"\u003e240588b7e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003eoptimize \u003ccode\u003eng add\u003c/code\u003e version discovery\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/36cf3afb485a01f86c4c90f136b38a3cf338e313\"\u003e36cf3afb4\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd browserMode option to jasmine-vitest schematic\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/e71a72ffdc426e26bfb4f0bb92e8f5795a621c18\"\u003ee71a72ffd\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003egenerate detailed migration report for \u003ccode\u003erefactor-jasmine-vitest\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/18cf6c51b72ce5c7f23012585ed992cf91cef5ed\"\u003e18cf6c51b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd MCP configuration file to new workspaces\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead...\n\n_Description has been truncated_","html_url":"https://github.com/atomfrede/generator-jhipster/pull/6049","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/atomfrede%2Fgenerator-jhipster/issues/6049","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6049/packages"},{"uuid":"3691252583","node_id":"PR_kwDOHn-f-c6240CF","number":2682,"state":"closed","title":"Bump @angular/common, @angular/cdk, @angular/forms, @angular/material, @angular/material-experimental, @angular/material-moment-adapter, @angular/platform-browser, @angular/platform-browser-dynamic, @angular/router, @ng-matero/extensions, @ng-select/ng-option-highlight and @angular-builders/jest in /alcs-frontend","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-30T00:15:13.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-03T17:44:23.000Z","updated_at":"2026-01-30T00:15:21.000Z","time_to_close":4948250,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@angular/common, @angular/cdk, @angular/forms, @angular/material, @angular/material-experimental, @angular/material-moment-adapter, @angular/platform-browser, @angular/platform-browser-dynamic, @angular/router, @ng-matero/extensions, @ng-select/ng-option-highlight"},{"name":"@angular-builders/jest","repository_url":"https://github.com/just-jeb/angular-builders"}],"path":"/alcs-frontend","ecosystem":"npm"},"body":"Bumps [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common), [@angular/cdk](https://github.com/angular/components), [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms), [@angular/material](https://github.com/angular/components), [@angular/material-experimental](https://github.com/angular/components), [@angular/material-moment-adapter](https://github.com/angular/components), [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser), [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic), [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router), [@ng-matero/extensions](https://github.com/ng-matero/extensions), [@ng-select/ng-option-highlight](https://github.com/ng-select/ng-select) and [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest). These dependencies needed to be updated together.\nUpdates `@angular/common` from 17.3.12 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.3\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5a80a48e962f72825050202198b32abbfee66714\"\u003e\u003cimg src=\"https://img.shields.io/badge/5a80a48e96-fix-green\" alt=\"fix - 5a80a48e96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid allocating an object for signals in production mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1f1856e897e0a10e2ca6d934c80fd69d1ac06210\"\u003e\u003cimg src=\"https://img.shields.io/badge/1f1856e897-fix-green\" alt=\"fix - 1f1856e897\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003echeck that field radio button values are strings\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8c3304c766131b031b736ee3fe2ec9c9a42fbe07\"\u003e\u003cimg src=\"https://img.shields.io/badge/8c3304c766-fix-green\" alt=\"fix - 8c3304c766\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erun animation queue in environment injector context\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4bb085311e24966ef2dd673f23746988c449c7ff\"\u003e\u003cimg src=\"https://img.shields.io/badge/4bb085311e-fix-green\" alt=\"fix - 4bb085311e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to inject viewProviders when host directive with providers is present\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/609699ae1781a9160b0f474b7ebe0998221c0722\"\u003e\u003cimg src=\"https://img.shields.io/badge/609699ae17-perf-orange\" alt=\"perf - 609699ae17\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003etree shake unused dynamic \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b4ab876e811b4e3a6f9617a2b379f62cf187403\"\u003e\u003cimg src=\"https://img.shields.io/badge/6b4ab876e8-feat-blue\" alt=\"feat - 6b4ab876e8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAllows transforms on \u003ccode\u003eFormUiControl\u003c/code\u003e signals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a5dbd4b382417fc111d6a622862a015c47027a41\"\u003e\u003cimg src=\"https://img.shields.io/badge/a5dbd4b382-fix-green\" alt=\"fix - a5dbd4b382\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport dynamic \u003ccode\u003e[field]\u003c/code\u003e bindings (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/20474d3f0fd7c64071add6e84acf720627e5c19b\"\u003e\u003cimg src=\"https://img.shields.io/badge/20474d3f0f-fix-green\" alt=\"fix - 20474d3f0f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eenable XSRF protection for same-origin absolute URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/48b89f9fbe16acff8b2f3f37853e745ed43d3a32\"\u003e\u003cimg src=\"https://img.shields.io/badge/48b89f9fbe-fix-green\" alt=\"fix - 48b89f9fbe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle errors from view transition finished promise\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.2\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/78fd159b78d32cb8b94891e3fc6013076d7838af\"\u003e\u003cimg src=\"https://img.shields.io/badge/78fd159b78-fix-green\" alt=\"fix - 78fd159b78\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent XSS via SVG animation \u003ccode\u003eattributeName\u003c/code\u003e and MathML/SVG URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e\u003cimg src=\"https://img.shields.io/badge/39c577bc36-fix-green\" alt=\"fix - 39c577bc36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edo not type check native controls with ControlValueAccessor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d3a89a477e273b9b2223b6db775955e35105963\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d3a89a477-fix-green\" alt=\"fix - 8d3a89a477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eescape angular control flow in jsdoc\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/bc34083d349a7d30efb43df97de0509fd85a1996\"\u003e\u003cimg src=\"https://img.shields.io/badge/bc34083d34-fix-green\" alt=\"fix - bc34083d34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eignore non-existent files\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ea1e071742a031d9afb7a39f8e23082cd88ca2e\"\u003e\u003cimg src=\"https://img.shields.io/badge/0ea1e07174-fix-green\" alt=\"fix - 0ea1e07174\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eapply bootstrap-options migration to \u003ccode\u003eplatformBrowserDynamic\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70507b8c1ce733b8232a12fa45037ee219b5b102\"\u003e\u003cimg src=\"https://img.shields.io/badge/70507b8c1c-fix-green\" alt=\"fix - 70507b8c1c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edebug data causing memory leak for root effects\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a55482fca3b7e4f39d95f8ff236b6619e59b8190\"\u003e\u003cimg src=\"https://img.shields.io/badge/a55482fca3-fix-green\" alt=\"fix - a55482fca3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enotify profiler events in case of errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49ad7c650818ee7db321a24c89282dbf9bb250f3\"\u003e\u003cimg src=\"https://img.shields.io/badge/49ad7c6508-fix-green\" alt=\"fix - 49ad7c6508\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse injected \u003ccode\u003eDOCUMENT\u003c/code\u003e for \u003ccode\u003eCSP_NONCE\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cc1ec099315b0f429d0b0f07c9b1bf686668db6b\"\u003e\u003cimg src=\"https://img.shields.io/badge/cc1ec09931-perf-orange\" alt=\"perf - cc1ec09931\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid repeat searches for field directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.3 (2025-12-03)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5a80a48e962f72825050202198b32abbfee66714\"\u003e5a80a48e96\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid allocating an object for signals in production mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1f1856e897e0a10e2ca6d934c80fd69d1ac06210\"\u003e1f1856e897\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003echeck that field radio button values are strings\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8c3304c766131b031b736ee3fe2ec9c9a42fbe07\"\u003e8c3304c766\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003erun animation queue in environment injector context\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4bb085311e24966ef2dd673f23746988c449c7ff\"\u003e4bb085311e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to inject viewProviders when host directive with providers is present\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/609699ae1781a9160b0f474b7ebe0998221c0722\"\u003e609699ae17\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003etree shake unused dynamic \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b4ab876e811b4e3a6f9617a2b379f62cf187403\"\u003e6b4ab876e8\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAllows transforms on \u003ccode\u003eFormUiControl\u003c/code\u003e signals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a5dbd4b382417fc111d6a622862a015c47027a41\"\u003ea5dbd4b382\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esupport dynamic \u003ccode\u003e[field]\u003c/code\u003e bindings (\u003ca href=\"https://redirect.github.com/angular/angular/pull/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/20474d3f0fd7c64071add6e84acf720627e5c19b\"\u003e20474d3f0f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eenable XSRF protection for same-origin absolute URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/48b89f9fbe16acff8b2f3f37853e745ed43d3a32\"\u003e48b89f9fbe\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle errors from view transition finished promise\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.2 (2025-12-01)\u003c/h1\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/78fd159b78d32cb8b94891e3fc6013076d7838af\"\u003e78fd159b78\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent XSS via SVG animation \u003ccode\u003eattributeName\u003c/code\u003e and MathML/SVG URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/20474d3f0fd7c64071add6e84acf720627e5c19b\"\u003e\u003ccode\u003e20474d3\u003c/code\u003e\u003c/a\u003e fix(http): enable XSRF protection for same-origin absolute URLs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3240d856d942727372a705252f7c8c115394a41e\"\u003e\u003ccode\u003e3240d85\u003c/code\u003e\u003c/a\u003e fix(http): prevent XSRF token leakage to protocol-relative URLs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6de892659473f8748fd87dbdb6100d48a1009bf3\"\u003e\u003ccode\u003e6de8926\u003c/code\u003e\u003c/a\u003e refactor(core): add debug name to resource (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64172\"\u003e#64172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/00ffe91c898e182c36f9ce032dd2efc925109b71\"\u003e\u003ccode\u003e00ffe91\u003c/code\u003e\u003c/a\u003e refactor(common): removes unused NgModuleFactory config in NgComponentOutlet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8765b66f5ad33e5ad99eb56507ddf9b98f7f0eb2\"\u003e\u003ccode\u003e8765b66\u003c/code\u003e\u003c/a\u003e docs: add reference to Built-in Pipes in multiple pipe files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab98e71c413928dbc75703e3de3131cf93100837\"\u003e\u003ccode\u003eab98e71\u003c/code\u003e\u003c/a\u003e fix(common): remove placeholder image listeners once view is removed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8ab084754b32762fb2e0552f2242cb2bf7039524\"\u003e\u003ccode\u003e8ab0847\u003c/code\u003e\u003c/a\u003e refactor(core): mark \u003ccode\u003eVERSION\u003c/code\u003e as \u003ccode\u003e@__PURE__\u003c/code\u003e for better tree-shaking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/650af71026752525f5b0978782c906c5348a6bbb\"\u003e\u003ccode\u003e650af71\u003c/code\u003e\u003c/a\u003e refactor(http): migrate XSRF classes to use inject() function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3bed9f0f166f6698e862cdbd360e3ba9bcceb935\"\u003e\u003ccode\u003e3bed9f0\u003c/code\u003e\u003c/a\u003e build: format md files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3c2fe819ab1e39b3f9a9a26e6aae7b90c207979\"\u003e\u003ccode\u003ea3c2fe8\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(common): Removes unused imports to clean up dependencies\u0026quot;\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/21.0.3/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/cdk` from 17.3.10 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003cimg src=\"https://img.shields.io/badge/043d9cacc-fix-green\" alt=\"fix - 043d9cacc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003cimg src=\"https://img.shields.io/badge/ccc12c387-fix-green\" alt=\"fix - ccc12c387\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003cimg src=\"https://img.shields.io/badge/02965bb0e-fix-green\" alt=\"fix - 02965bb0e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a821a3ef07d99d5ce8631469cd818929b9c0559b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a821a3ef0-feat-blue\" alt=\"feat - a821a3ef0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e create the aria grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32092\"\u003e#32092\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f9d3cde14984c6da006e09e8e79809247e017a65\"\u003e\u003cimg src=\"https://img.shields.io/badge/f9d3cde14-feat-blue\" alt=\"feat - f9d3cde14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e create the aria menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/32080\"\u003e#32080\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a0b5800277c206127999e21eda77ef003c066aee\"\u003e\u003cimg src=\"https://img.shields.io/badge/a0b580027-feat-blue\" alt=\"feat - a0b580027\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds skip disabled toolbar example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32127\"\u003e#32127\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/5396c43474fe272ad5e21366c027cd1ae0c6d593\"\u003e\u003cimg src=\"https://img.shields.io/badge/5396c4347-feat-blue\" alt=\"feat - 5396c4347\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar basic vertical example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32126\"\u003e#32126\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ba9f79be528c6228e50a73809ec62efcbfc7afc6\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba9f79be5-feat-blue\" alt=\"feat - ba9f79be5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar-basic-horizontal-example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32106\"\u003e#32106\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ec6045b270211131b6987e316fb3252745c89e11\"\u003e\u003cimg src=\"https://img.shields.io/badge/ec6045b27-fix-green\" alt=\"fix - ec6045b27\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eaccordion:\u003c/strong\u003e rename value to panelId for trigger and panel (\u003ca href=\"https://redirect.github.com/angular/components/issues/32295\"\u003e#32295\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0b03c6e96485f83447ed3451070be138bf21d4e6\"\u003e\u003cimg src=\"https://img.shields.io/badge/0b03c6e96-fix-green\" alt=\"fix - 0b03c6e96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e add missing apis (\u003ca href=\"https://redirect.github.com/angular/components/issues/32124\"\u003e#32124\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/25223a2f8be7b13699b94b99a1335e4ac7185772\"\u003e\u003cimg src=\"https://img.shields.io/badge/25223a2f8-fix-green\" alt=\"fix - 25223a2f8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e dialog popup support (\u003ca href=\"https://redirect.github.com/angular/components/issues/32279\"\u003e#32279\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a47ebeb964e794e3868659d68e46b3b782d1550b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a47ebeb96-fix-green\" alt=\"fix - a47ebeb96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32308\"\u003e#32308\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/127d3dba5754a4ceaa60f56ced7b4795c29372cc\"\u003e\u003cimg src=\"https://img.shields.io/badge/127d3dba5-fix-green\" alt=\"fix - 127d3dba5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e escape key behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32364\"\u003e#32364\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c3279ca4b47f91cd61e0ba0be24bdd10869fa059\"\u003e\u003cimg src=\"https://img.shields.io/badge/c3279ca4b-fix-green\" alt=\"fix - c3279ca4b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e highlighting edge cases (\u003ca href=\"https://redirect.github.com/angular/components/issues/32136\"\u003e#32136\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/1232805db6f0a0a07154b3601eaa8b9cc0d94f31\"\u003e\u003cimg src=\"https://img.shields.io/badge/1232805db-fix-green\" alt=\"fix - 1232805db\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e readonly behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32169\"\u003e#32169\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/6c46f950d451862692c2c74f41a704a3ef0fd472\"\u003e\u003cimg src=\"https://img.shields.io/badge/6c46f950d-fix-green\" alt=\"fix - 6c46f950d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e several small fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32202\"\u003e#32202\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8beb22f8c8d0d9f415225826188c38964c65ceee\"\u003e\u003cimg src=\"https://img.shields.io/badge/8beb22f8c-fix-green\" alt=\"fix - 8beb22f8c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e use click instead of pointerup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32324\"\u003e#32324\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/92d933421953a2f5123d0f823dc7880bb4e69098\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d933421-fix-green\" alt=\"fix - 92d933421\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e fix navigation bugs and add grid behavior unit tests (\u003ca href=\"https://redirect.github.com/angular/components/issues/32140\"\u003e#32140\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e3babf3fc3229879e38751eff2c5941ed2152ae7\"\u003e\u003cimg src=\"https://img.shields.io/badge/e3babf3fc-fix-green\" alt=\"fix - e3babf3fc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e rtl navigation (\u003ca href=\"https://redirect.github.com/angular/components/issues/32170\"\u003e#32170\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/fe79e982cb7b3f0b42c2be056face255ccfe5783\"\u003e\u003cimg src=\"https://img.shields.io/badge/fe79e982c-fix-green\" alt=\"fix - fe79e982c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add expansion delay (\u003ca href=\"https://redirect.github.com/angular/components/issues/32293\"\u003e#32293\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3d1cafbdd3839c12d5298f216abaef59f717f04c\"\u003e\u003cimg src=\"https://img.shields.io/badge/3d1cafbdd-fix-green\" alt=\"fix - 3d1cafbdd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add selectable to inputs (\u003ca href=\"https://redirect.github.com/angular/components/issues/32131\"\u003e#32131\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/56631cb858fda514cfd81e23064e7859aa338843\"\u003e\u003cimg src=\"https://img.shields.io/badge/56631cb85-fix-green\" alt=\"fix - 56631cb85\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e deferred content import\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/95e648ad8a4fb3591fd20229db3a0649ac95ebb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/95e648ad8-fix-green\" alt=\"fix - 95e648ad8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32301\"\u003e#32301\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ce20dbe1a3e4be0e1002533f7f1910b1f9efd0c3\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce20dbe1a-fix-green\" alt=\"fix - ce20dbe1a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e lazy render trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32203\"\u003e#32203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/19095030a0a6f102aa1ba7276afbc12fd79a27c7\"\u003e\u003cimg src=\"https://img.shields.io/badge/19095030a-fix-green\" alt=\"fix - 19095030a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e public api cleanup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32189\"\u003e#32189\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4b5db13286b263cb28918938dce515376b4a5f5b\"\u003e\u003cimg src=\"https://img.shields.io/badge/4b5db1328-fix-green\" alt=\"fix - 4b5db1328\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e rtl text direction (\u003ca href=\"https://redirect.github.com/angular/components/issues/32254\"\u003e#32254\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/bac171d8bc82fd7bfd716cc5214c49f1bfbc76bb\"\u003e\u003cimg src=\"https://img.shields.io/badge/bac171d8b-fix-green\" alt=\"fix - bac171d8b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e allow developers to wrap widgets (\u003ca href=\"https://redirect.github.com/angular/components/issues/32341\"\u003e#32341\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d8acd69f5d26c85ffc08224e67be5f594c85e38a\"\u003e\u003cimg src=\"https://img.shields.io/badge/d8acd69f5-fix-green\" alt=\"fix - d8acd69f5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e adds rtl keyboard functionality for tree (\u003ca href=\"https://redirect.github.com/angular/components/issues/32305\"\u003e#32305\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/86558d2aa6437556bac805a6acdf8c31f5b2cfb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/86558d2aa-fix-green\" alt=\"fix - 86558d2aa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e internal conformance check (\u003ca href=\"https://redirect.github.com/angular/components/issues/32337\"\u003e#32337\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/09e31e71673a73d80033e7aaf8ad8f6ae9db8f89\"\u003e\u003cimg src=\"https://img.shields.io/badge/09e31e716-fix-green\" alt=\"fix - 09e31e716\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e only reset selected values if used in combobox (\u003ca href=\"https://redirect.github.com/angular/components/issues/32329\"\u003e#32329\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/05f936ae14d8943ced0ad981cde8f3c2ac95afd1\"\u003e\u003cimg src=\"https://img.shields.io/badge/05f936ae1-fix-green\" alt=\"fix - 05f936ae1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e tree item visibility issue (\u003ca href=\"https://redirect.github.com/angular/components/issues/32156\"\u003e#32156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/afe4d063dd8f3dc5932519761693e7a79de77dc1\"\u003e\u003cimg src=\"https://img.shields.io/badge/afe4d063d-fix-green\" alt=\"fix - afe4d063d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e internal conformance fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32102\"\u003e#32102\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.1 \u0026quot;sulfur-snack\u0026quot; (2025-11-26)\u003c/h1\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003eccc12c387\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/pull/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e043d9cacc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/pull/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e02965bb0e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/pull/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0 \u0026quot;damask-dachshund\u0026quot; (2025-11-19)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eLIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-container\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-container-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$dark-backdrop-background\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-color\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-backdrop\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTemplatePortalDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortal\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePortalHostDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortalOutlet\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTestElement\u003c/code\u003e implementations need to provide a \u003ccode\u003esetContenteditableValue\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematBottomSheet\u003c/code\u003e animations symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_FAB_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_CHECKBOX_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAnimationCurves\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnimationDurations\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eNativeDateAdapter.useUtcForDisplay\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATE_LOCAL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMatCommonModule\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eGranularSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMATERIAL_SANITY_CHECKS\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematDatepickerAnimations\u003c/code\u003e symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_RANGE_DATE_SELECTION_MODEL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/39696e36ce3b64652cca2e7d92085dc46b318801\"\u003e\u003ccode\u003e39696e3\u003c/code\u003e\u003c/a\u003e release: cut the v21.0.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003ccode\u003e02965bb\u003c/code\u003e\u003c/a\u003e fix(multiple): resolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0cc3abd3f1de3ab7f1ad156bf19c7ba38ca2769a\"\u003e\u003ccode\u003e0cc3abd\u003c/code\u003e\u003c/a\u003e build: unblock Bazel updates (\u003ca href=\"https://redirect.github.com/angular/components/issues/32414\"\u003e#32414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0b9e78ed7fed478319cd5c02d1380682ab47ce2c\"\u003e\u003ccode\u003e0b9e78e\u003c/code\u003e\u003c/a\u003e refactor: set up function for setting innerHTML (\u003ca href=\"https://redirect.github.com/angular/components/issues/32404\"\u003e#32404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003ccode\u003e043d9ca\u003c/code\u003e\u003c/a\u003e fix(material/select): render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003ccode\u003eccc12c3\u003c/code\u003e\u003c/a\u003e fix(cdk/testing): errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/a68964a002630b1027881dc84aa0752050be4e4f\"\u003e\u003ccode\u003ea68964a\u003c/code\u003e\u003c/a\u003e build: update dependency bazel to v7.7.1 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32361\"\u003e#32361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/5cfdd477540e43b3a93eb7141bbc4637357b0cf7\"\u003e\u003ccode\u003e5cfdd47\u003c/code\u003e\u003c/a\u003e test: remove unnecessary test calls (\u003ca href=\"https://redirect.github.com/angular/components/issues/32396\"\u003e#32396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/9ae3b5aabd0301c1b6012d88747d5a848cee3e73\"\u003e\u003ccode\u003e9ae3b5a\u003c/code\u003e\u003c/a\u003e build: fix stackblitz test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/b1726541b0c9c239b838c01cf6838d44806ababf\"\u003e\u003ccode\u003eb172654\u003c/code\u003e\u003c/a\u003e build: fix test-based Stackblitz examples\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/17.3.10...21.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/forms` from 17.3.12 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.3\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5a80a48e962f72825050202198b32abbfee66714\"\u003e\u003cimg src=\"https://img.shields.io/badge/5a80a48e96-fix-green\" alt=\"fix - 5a80a48e96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid allocating an object for signals in production mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1f1856e897e0a10e2ca6d934c80fd69d1ac06210\"\u003e\u003cimg src=\"https://img.shields.io/badge/1f1856e897-fix-green\" alt=\"fix - 1f1856e897\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003echeck that field radio button values are strings\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8c3304c766131b031b736ee3fe2ec9c9a42fbe07\"\u003e\u003cimg src=\"https://img.shields.io/badge/8c3304c766-fix-green\" alt=\"fix - 8c3304c766\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erun animation queue in environment injector context\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4bb085311e24966ef2dd673f23746988c449c7ff\"\u003e\u003cimg src=\"https://img.shields.io/badge/4bb085311e-fix-green\" alt=\"fix - 4bb085311e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to inject viewProviders when host directive with providers is present\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/609699ae1781a9160b0f474b7ebe0998221c0722\"\u003e\u003cimg src=\"https://img.shields.io/badge/609699ae17-perf-orange\" alt=\"perf - 609699ae17\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003etree shake unused dynamic \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b4ab876e811b4e3a6f9617a2b379f62cf187403\"\u003e\u003cimg src=\"https://img.shields.io/badge/6b4ab876e8-feat-blue\" alt=\"feat - 6b4ab876e8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAllows transforms on \u003ccode\u003eFormUiControl\u003c/code\u003e signals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a5dbd4b382417fc111d6a622862a015c47027a41\"\u003e\u003cimg src=\"https://img.shields.io/badge/a5dbd4b382-fix-green\" alt=\"fix - a5dbd4b382\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport dynamic \u003ccode\u003e[field]\u003c/code\u003e bindings (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/20474d3f0fd7c64071add6e84acf720627e5c19b\"\u003e\u003cimg src=\"https://img.shields.io/badge/20474d3f0f-fix-green\" alt=\"fix - 20474d3f0f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eenable XSRF protection for same-origin absolute URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/48b89f9fbe16acff8b2f3f37853e745ed43d3a32\"\u003e\u003cimg src=\"https://img.shields.io/badge/48b89f9fbe-fix-green\" alt=\"fix - 48b89f9fbe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle errors from view transition finished promise\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.2\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/78fd159b78d32cb8b94891e3fc6013076d7838af\"\u003e\u003cimg src=\"https://img.shields.io/badge/78fd159b78-fix-green\" alt=\"fix - 78fd159b78\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent XSS via SVG animation \u003ccode\u003eattributeName\u003c/code\u003e and MathML/SVG URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e\u003cimg src=\"https://img.shields.io/badge/39c577bc36-fix-green\" alt=\"fix - 39c577bc36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edo not type check native controls with ControlValueAccessor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d3a89a477e273b9b2223b6db775955e35105963\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d3a89a477-fix-green\" alt=\"fix - 8d3a89a477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eescape angular control flow in jsdoc\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/bc34083d349a7d30efb43df97de0509fd85a1996\"\u003e\u003cimg src=\"https://img.shields.io/badge/bc34083d34-fix-green\" alt=\"fix - bc34083d34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eignore non-existent files\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ea1e071742a031d9afb7a39f8e23082cd88ca2e\"\u003e\u003cimg src=\"https://img.shields.io/badge/0ea1e07174-fix-green\" alt=\"fix - 0ea1e07174\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eapply bootstrap-options migration to \u003ccode\u003eplatformBrowserDynamic\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70507b8c1ce733b8232a12fa45037ee219b5b102\"\u003e\u003cimg src=\"https://img.shields.io/badge/70507b8c1c-fix-green\" alt=\"fix - 70507b8c1c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edebug data causing memory leak for root effects\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a55482fca3b7e4f39d95f8ff236b6619e59b8190\"\u003e\u003cimg src=\"https://img.shields.io/badge/a55482fca3-fix-green\" alt=\"fix - a55482fca3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enotify profiler events in case of errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49ad7c650818ee7db321a24c89282dbf9bb250f3\"\u003e\u003cimg src=\"https://img.shields.io/badge/49ad7c6508-fix-green\" alt=\"fix - 49ad7c6508\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse injected \u003ccode\u003eDOCUMENT\u003c/code\u003e for \u003ccode\u003eCSP_NONCE\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cc1ec099315b0f429d0b0f07c9b1bf686668db6b\"\u003e\u003cimg src=\"https://img.shields.io/badge/cc1ec09931-perf-orange\" alt=\"perf - cc1ec09931\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid repeat searches for field directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.3 (2025-12-03)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5a80a48e962f72825050202198b32abbfee66714\"\u003e5a80a48e96\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid allocating an object for signals in production mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1f1856e897e0a10e2ca6d934c80fd69d1ac06210\"\u003e1f1856e897\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003echeck that field radio button values are strings\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8c3304c766131b031b736ee3fe2ec9c9a42fbe07\"\u003e8c3304c766\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003erun animation queue in environment injector context\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4bb085311e24966ef2dd673f23746988c449c7ff\"\u003e4bb085311e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to inject viewProviders when host directive with providers is present\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/609699ae1781a9160b0f474b7ebe0998221c0722\"\u003e609699ae17\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003etree shake unused dynamic \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b4ab876e811b4e3a6f9617a2b379f62cf187403\"\u003e6b4ab876e8\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAllows transforms on \u003ccode\u003eFormUiControl\u003c/code\u003e signals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a5dbd4b382417fc111d6a622862a015c47027a41\"\u003ea5dbd4b382\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esupport dynamic \u003ccode\u003e[field]\u003c/code\u003e bindings (\u003ca href=\"https://redirect.github.com/angular/angular/pull/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/20474d3f0fd7c64071add6e84acf720627e5c19b\"\u003e20474d3f0f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eenable XSRF protection for same-origin absolute URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/48b89f9fbe16acff8b2f3f37853e745ed43d3a32\"\u003e48b89f9fbe\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle errors from view transition finished promise\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.2 (2025-12-01)\u003c/h1\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/78fd159b78d32cb8b94891e3fc6013076d7838af\"\u003e78fd159b78\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent XSS via SVG animation \u003ccode\u003eattributeName\u003c/code\u003e and MathML/SVG URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b4ab876e811b4e3a6f9617a2b379f62cf187403\"\u003e\u003ccode\u003e6b4ab87\u003c/code\u003e\u003c/a\u003e feat(forms): Allows transforms on \u003ccode\u003eFormUiControl\u003c/code\u003e signals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/609699ae1781a9160b0f474b7ebe0998221c0722\"\u003e\u003ccode\u003e609699a\u003c/code\u003e\u003c/a\u003e perf(core): tree shake unused dynamic \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/65599\"\u003e#65599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a5dbd4b382417fc111d6a622862a015c47027a41\"\u003e\u003ccode\u003ea5dbd4b\u003c/code\u003e\u003c/a\u003e fix(forms): support dynamic \u003ccode\u003e[field]\u003c/code\u003e bindings (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/65599\"\u003e#65599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/017672f742935e660510f728cd9e67e3ad1ba90b\"\u003e\u003ccode\u003e017672f\u003c/code\u003e\u003c/a\u003e refactor(compiler): Generate the \u003ccode\u003econtrolCreate\u003c/code\u003e instruction after the native...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8e0df4083d5294a841d751ac1d1f8b2e97ef7bba\"\u003e\u003ccode\u003e8e0df40\u003c/code\u003e\u003c/a\u003e docs(docs-infra): Show examples on function overloads\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e3f5f34732c90989517f0f0b1c511d0f5ced39c3\"\u003e\u003ccode\u003ee3f5f34\u003c/code\u003e\u003c/a\u003e refactor(forms): Make reset take value\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d5c7cf99aa5c6490f8bea950b04bd56073582a1\"\u003e\u003ccode\u003e7d5c7cf\u003c/code\u003e\u003c/a\u003e feat(forms): add DI option for classes on \u003ccode\u003eField\u003c/code\u003e directive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8acf5d27563ec51cc76971732d50e1f4142a3fe3\"\u003e\u003ccode\u003e8acf5d2\u003c/code\u003e\u003c/a\u003e fix(forms): allow dynamic \u003ccode\u003etype\u003c/code\u003e bindings on signal form controls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/4845a33018cf2c48e37c667892c24d6c6ec81f6b\"\u003e\u003ccode\u003e4845a33\u003c/code\u003e\u003c/a\u003e refactor(forms): support custom control directives\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/de5fca94c5cfafa9098d9ee270f448b90d4ac06f\"\u003e\u003ccode\u003ede5fca9\u003c/code\u003e\u003c/a\u003e fix(forms): run reset as untracked\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/21.0.3/packages/forms\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/material` from 17.3.10 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/material\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003cimg src=\"https://img.shields.io/badge/043d9cacc-fix-green\" alt=\"fix - 043d9cacc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003cimg src=\"https://img.shields.io/badge/ccc12c387-fix-green\" alt=\"fix - ccc12c387\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003cimg src=\"https://img.shields.io/badge/02965bb0e-fix-green\" alt=\"fix - 02965bb0e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a821a3ef07d99d5ce8631469cd818929b9c0559b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a821a3ef0-feat-blue\" alt=\"feat - a821a3ef0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e create the aria grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32092\"\u003e#32092\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f9d3cde14984c6da006e09e8e79809247e017a65\"\u003e\u003cimg src=\"https://img.shields.io/badge/f9d3cde14-feat-blue\" alt=\"feat - f9d3cde14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e create the aria menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/32080\"\u003e#32080\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a0b5800277c206127999e21eda77ef003c066aee\"\u003e\u003cimg src=\"https://img.shields.io/badge/a0b580027-feat-blue\" alt=\"feat - a0b580027\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds skip disabled toolbar example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32127\"\u003e#32127\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/5396c43474fe272ad5e21366c027cd1ae0c6d593\"\u003e\u003cimg src=\"https://img.shields.io/badge/5396c4347-feat-blue\" alt=\"feat - 5396c4347\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar basic vertical example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32126\"\u003e#32126\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ba9f79be528c6228e50a73809ec62efcbfc7afc6\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba9f79be5-feat-blue\" alt=\"feat - ba9f79be5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar-basic-horizontal-example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32106\"\u003e#32106\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ec6045b270211131b6987e316fb3252745c89e11\"\u003e\u003cimg src=\"https://img.shields.io/badge/ec6045b27-fix-green\" alt=\"fix - ec6045b27\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eaccordion:\u003c/strong\u003e rename value to panelId for trigger and panel (\u003ca href=\"https://redirect.github.com/angular/components/issues/32295\"\u003e#32295\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0b03c6e96485f83447ed3451070be138bf21d4e6\"\u003e\u003cimg src=\"https://img.shields.io/badge/0b03c6e96-fix-green\" alt=\"fix - 0b03c6e96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e add missing apis (\u003ca href=\"https://redirect.github.com/angular/components/issues/32124\"\u003e#32124\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/25223a2f8be7b13699b94b99a1335e4ac7185772\"\u003e\u003cimg src=\"https://img.shields.io/badge/25223a2f8-fix-green\" alt=\"fix - 25223a2f8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e dialog popup support (\u003ca href=\"https://redirect.github.com/angular/components/issues/32279\"\u003e#32279\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a47ebeb964e794e3868659d68e46b3b782d1550b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a47ebeb96-fix-green\" alt=\"fix - a47ebeb96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32308\"\u003e#32308\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/127d3dba5754a4ceaa60f56ced7b4795c29372cc\"\u003e\u003cimg src=\"https://img.shields.io/badge/127d3dba5-fix-green\" alt=\"fix - 127d3dba5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e escape key behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32364\"\u003e#32364\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c3279ca4b47f91cd61e0ba0be24bdd10869fa059\"\u003e\u003cimg src=\"https://img.shields.io/badge/c3279ca4b-fix-green\" alt=\"fix - c3279ca4b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e highlighting edge cases (\u003ca href=\"https://redirect.github.com/angular/components/issues/32136\"\u003e#32136\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/1232805db6f0a0a07154b3601eaa8b9cc0d94f31\"\u003e\u003cimg src=\"https://img.shields.io/badge/1232805db-fix-green\" alt=\"fix - 1232805db\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e readonly behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32169\"\u003e#32169\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/6c46f950d451862692c2c74f41a704a3ef0fd472\"\u003e\u003cimg src=\"https://img.shields.io/badge/6c46f950d-fix-green\" alt=\"fix - 6c46f950d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e several small fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32202\"\u003e#32202\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8beb22f8c8d0d9f415225826188c38964c65ceee\"\u003e\u003cimg src=\"https://img.shields.io/badge/8beb22f8c-fix-green\" alt=\"fix - 8beb22f8c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e use click instead of pointerup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32324\"\u003e#32324\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/92d933421953a2f5123d0f823dc7880bb4e69098\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d933421-fix-green\" alt=\"fix - 92d933421\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e fix navigation bugs and add grid behavior unit tests (\u003ca href=\"https://redirect.github.com/angular/components/issues/32140\"\u003e#32140\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e3babf3fc3229879e38751eff2c5941ed2152ae7\"\u003e\u003cimg src=\"https://img.shields.io/badge/e3babf3fc-fix-green\" alt=\"fix - e3babf3fc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e rtl navigation (\u003ca href=\"https://redirect.github.com/angular/components/issues/32170\"\u003e#32170\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/fe79e982cb7b3f0b42c2be056face255ccfe5783\"\u003e\u003cimg src=\"https://img.shields.io/badge/fe79e982c-fix-green\" alt=\"fix - fe79e982c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add expansion delay (\u003ca href=\"https://redirect.github.com/angular/components/issues/32293\"\u003e#32293\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3d1cafbdd3839c12d5298f216abaef59f717f04c\"\u003e\u003cimg src=\"https://img.shields.io/badge/3d1cafbdd-fix-green\" alt=\"fix - 3d1cafbdd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add selectable to inputs (\u003ca href=\"https://redirect.github.com/angular/components/issues/32131\"\u003e#32131\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/56631cb858fda514cfd81e23064e7859aa338843\"\u003e\u003cimg src=\"https://img.shields.io/badge/56631cb85-fix-green\" alt=\"fix - 56631cb85\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e deferred content import\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/95e648ad8a4fb3591fd20229db3a0649ac95ebb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/95e648ad8-fix-green\" alt=\"fix - 95e648ad8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32301\"\u003e#32301\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ce20dbe1a3e4be0e1002533f7f1910b1f9efd0c3\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce20dbe1a-fix-green\" alt=\"fix - ce20dbe1a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e lazy render trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32203\"\u003e#32203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/19095030a0a6f102aa1ba7276afbc12fd79a27c7\"\u003e\u003cimg src=\"https://img.shields.io/badge/19095030a-fix-green\" alt=\"fix - 19095030a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e public api cleanup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32189\"\u003e#32189\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4b5db13286b263cb28918938dce515376b4a5f5b\"\u003e\u003cimg src=\"https://img.shields.io/badge/4b5db1328-fix-green\" alt=\"fix - 4b5db1328\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e rtl text direction (\u003ca href=\"https://redirect.github.com/angular/components/issues/32254\"\u003e#32254\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/bac171d8bc82fd7bfd716cc5214c49f1bfbc76bb\"\u003e\u003cimg src=\"https://img.shields.io/badge/bac171d8b-fix-green\" alt=\"fix - bac171d8b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e allow developers to wrap widgets (\u003ca href=\"https://redirect.github.com/angular/components/issues/32341\"\u003e#32341\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d8acd69f5d26c85ffc08224e67be5f594c85e38a\"\u003e\u003cimg src=\"https://img.shields.io/badge/d8acd69f5-fix-green\" alt=\"fix - d8acd69f5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e adds rtl keyboard functionality for tree (\u003ca href=\"https://redirect.github.com/angular/components/issues/32305\"\u003e#32305\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/86558d2aa6437556bac805a6acdf8c31f5b2cfb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/86558d2aa-fix-green\" alt=\"fix - 86558d2aa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e internal conformance check (\u003ca href=\"https://redirect.github.com/angular/components/issues/32337\"\u003e#32337\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/09e31e71673a73d80033e7aaf8ad8f6ae9db8f89\"\u003e\u003cimg src=\"https://img.shields.io/badge/09e31e716-fix-green\" alt=\"fix - 09e31e716\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e only reset selected values if used in combobox (\u003ca href=\"https://redirect.github.com/angular/components/issues/32329\"\u003e#32329\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/05f936ae14d8943ced0ad981cde8f3c2ac95afd1\"\u003e\u003cimg src=\"https://img.shields.io/badge/05f936ae1-fix-green\" alt=\"fix - 05f936ae1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e tree item visibility issue (\u003ca href=\"https://redirect.github.com/angular/components/issues/32156\"\u003e#32156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/afe4d063dd8f3dc5932519761693e7a79de77dc1\"\u003e\u003cimg src=\"https://img.shields.io/badge/afe4d063d-fix-green\" alt=\"fix - afe4d063d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e internal conformance fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32102\"\u003e#32102\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/material\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.1 \u0026quot;sulfur-snack\u0026quot; (2025-11-26)\u003c/h1\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003eccc12c387\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/pull/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e043d9cacc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/pull/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e02965bb0e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/pull/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0 \u0026quot;damask-dachshund\u0026quot; (2025-11-19)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eLIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-container\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-container-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$dark-backdrop-background\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-color\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-backdrop\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTemplatePortalDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortal\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePortalHostDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortalOutlet\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTestElement\u003c/code\u003e implementations need to provide a \u003ccode\u003esetContenteditableValue\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematBottomSheet\u003c/code\u003e animations symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_FAB_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_CHECKBOX_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAnimationCurves\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnimationDurations\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eNativeDateAdapter.useUtcForDisplay\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATE_LOCAL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMatCommonModule\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eGranularSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMATERIAL_SANITY_CHECKS\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematDatepickerAnimations\u003c/code\u003e symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_RANGE_DATE_SELECTION_MODEL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/39696e36ce3b64652cca2e7d92085dc46b318801\"\u003e\u003ccode\u003e39696e3\u003c/code\u003e\u003c/a\u003e release: cut the v21.0.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003ccode\u003e02965bb\u003c/code\u003e\u003c/a\u003e fix(multiple): resolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0cc3abd3f1de3ab7f1ad156bf19c7ba38ca2769a\"\u003e\u003ccode\u003e0cc3abd\u003c/code\u003e\u003c/a\u003e build: unblock Bazel updates (\u003ca href=\"https://redirect.github.com/angular/components/issues/32414\"\u003e#32414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0b9e78ed7fed478319cd5c02d1380682ab47ce2c\"\u003e\u003ccode\u003e0b9e78e\u003c/code\u003e\u003c/a\u003e refactor: set up function for setting innerHTML (\u003ca href=\"https://redirect.github.com/angular/components/issues/32404\"\u003e#32404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003ccode\u003e043d9ca\u003c/code\u003e\u003c/a\u003e fix(material/select): render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003ccode\u003eccc12c3\u003c/code\u003e\u003c/a\u003e fix(cdk/testing): errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/a68964a002630b1027881dc84aa0752050be4e4f\"\u003e\u003ccode\u003ea68964a\u003c/code\u003e\u003c/a\u003e build: update dependency bazel to v7.7.1 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32361\"\u003e#32361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/5cfdd477540e43b3a93eb7141bbc4637357b0cf7\"\u003e\u003ccode\u003e5cfdd47\u003c/code\u003e\u003c/a\u003e test: remove unnecessary test calls (\u003ca href=\"https://redirect.github.com/angular/components/issues/32396\"\u003e#32396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/9ae3b5aabd0301c1b6012d88747d5a848cee3e73\"\u003e\u003ccode\u003e9ae3b5a\u003c/code\u003e\u003c/a\u003e build: fix stackblitz test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/b1726541b0c9c239b838c01cf6838d44806ababf\"\u003e\u003ccode\u003eb172654\u003c/code\u003e\u003c/a\u003e build: fix test-based Stackblitz examples\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/17.3.10...21.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/material-experimental` from 17.3.10 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/material-experimental\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003cimg src=\"https://img.shields.io/badge/043d9cacc-fix-green\" alt=\"fix - 043d9cacc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003cimg src=\"https://img.shields.io/badge/ccc12c387-fix-green\" alt=\"fix - ccc12c387\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003cimg src=\"https://img.shields.io/badge/02965bb0e-fix-green\" alt=\"fix - 02965bb0e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a821a3ef07d99d5ce8631469cd818929b9c0559b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a821a3ef0-feat-blue\" alt=\"feat - a821a3ef0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e create the aria grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32092\"\u003e#32092\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f9d3cde14984c6da006e09e8e79809247e017a65\"\u003e\u003cimg src=\"https://img.shields.io/badge/f9d3cde14-feat-blue\" alt=\"feat - f9d3cde14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e create the aria menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/32080\"\u003e#32080\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr...\n\n_Description has been truncated_\n\n\u003e **Note**\n\u003e Automatic rebases have been disabled on this pull request as it has been open for over 30 days.\n","html_url":"https://github.com/bcgov/alcs/pull/2682","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/bcgov%2Falcs/issues/2682","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2682/packages"},{"uuid":"3669385200","node_id":"PR_kwDOEeu1mM61v4b3","number":337,"state":"open","title":"chore(deps): bump @angular/common, @angular/cdk, @angular/forms, @angular/material, @angular/platform-browser, @angular/platform-browser-dynamic, @angular/router and @angular-builders/jest","user":"dependabot[bot]","labels":["dependencies","stale","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-11-26T23:54:15.000Z","updated_at":"2026-01-26T03:25:26.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"@angular/common, @angular/cdk, @angular/forms, @angular/material, @angular/platform-browser, @angular/platform-browser-dynamic, @angular/router"},{"name":"@angular-builders/jest","repository_url":"https://github.com/just-jeb/angular-builders"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common), [@angular/cdk](https://github.com/angular/components), [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms), [@angular/material](https://github.com/angular/components), [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser), [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic), [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) and [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest). These dependencies needed to be updated together.\nUpdates `@angular/common` from 16.2.12 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e\u003cimg src=\"https://img.shields.io/badge/39c577bc36-fix-green\" alt=\"fix - 39c577bc36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edo not type check native controls with ControlValueAccessor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d3a89a477e273b9b2223b6db775955e35105963\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d3a89a477-fix-green\" alt=\"fix - 8d3a89a477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eescape angular control flow in jsdoc\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/bc34083d349a7d30efb43df97de0509fd85a1996\"\u003e\u003cimg src=\"https://img.shields.io/badge/bc34083d34-fix-green\" alt=\"fix - bc34083d34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eignore non-existent files\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ea1e071742a031d9afb7a39f8e23082cd88ca2e\"\u003e\u003cimg src=\"https://img.shields.io/badge/0ea1e07174-fix-green\" alt=\"fix - 0ea1e07174\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eapply bootstrap-options migration to \u003ccode\u003eplatformBrowserDynamic\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70507b8c1ce733b8232a12fa45037ee219b5b102\"\u003e\u003cimg src=\"https://img.shields.io/badge/70507b8c1c-fix-green\" alt=\"fix - 70507b8c1c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edebug data causing memory leak for root effects\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a55482fca3b7e4f39d95f8ff236b6619e59b8190\"\u003e\u003cimg src=\"https://img.shields.io/badge/a55482fca3-fix-green\" alt=\"fix - a55482fca3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enotify profiler events in case of errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49ad7c650818ee7db321a24c89282dbf9bb250f3\"\u003e\u003cimg src=\"https://img.shields.io/badge/49ad7c6508-fix-green\" alt=\"fix - 49ad7c6508\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse injected \u003ccode\u003eDOCUMENT\u003c/code\u003e for \u003ccode\u003eCSP_NONCE\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cc1ec099315b0f429d0b0f07c9b1bf686668db6b\"\u003e\u003cimg src=\"https://img.shields.io/badge/cc1ec09931-perf-orange\" alt=\"perf - cc1ec09931\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid repeat searches for field directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d5c7cf99aa5c6490f8bea950b04bd56073582a1\"\u003e\u003cimg src=\"https://img.shields.io/badge/7d5c7cf99a-feat-blue\" alt=\"feat - 7d5c7cf99a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd DI option for classes on \u003ccode\u003eField\u003c/code\u003e directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8acf5d27563ec51cc76971732d50e1f4142a3fe3\"\u003e\u003cimg src=\"https://img.shields.io/badge/8acf5d2756-fix-green\" alt=\"fix - 8acf5d2756\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow dynamic \u003ccode\u003etype\u003c/code\u003e bindings on signal form controls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de5fca94c5cfafa9098d9ee270f448b90d4ac06f\"\u003e\u003cimg src=\"https://img.shields.io/badge/de5fca94c5-fix-green\" alt=\"fix - de5fca94c5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erun reset as untracked\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3240d856d942727372a705252f7c8c115394a41e\"\u003e\u003cimg src=\"https://img.shields.io/badge/3240d856d9-fix-green\" alt=\"fix - 3240d856d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent XSRF token leakage to protocol-relative URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f394215b14d59c49e1433472ecdd2fd5547cc769\"\u003e\u003cimg src=\"https://img.shields.io/badge/f394215b14-fix-green\" alt=\"fix - f394215b14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edetect structural ngTemplateOutlet and ngComponentOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eVSCode Extension: 21.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(language-service): address potential memory leak during project creation (89095946cf)\u003c/li\u003e\n\u003cli\u003efix(language-server): fix directory renaming on Windows (3f7111a9c3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c795960ada1a7e21b8bee411e20a08c700b6e385\"\u003e\u003cimg src=\"https://img.shields.io/badge/c795960ada-feat-blue\" alt=\"feat - c795960ada\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd experimental support for the Navigation API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63406\"\u003e#63406\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9eac43cf46993442e9de5764e2ccca98e3837939\"\u003e\u003cimg src=\"https://img.shields.io/badge/9eac43cf46-feat-blue\" alt=\"feat - 9eac43cf46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eSupport of optional keys for the KeyValue pipe (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/48814\"\u003e#48814\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a1868c9d13991d24f893499406b29a5f2e0a388b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a1868c9d13-feat-blue\" alt=\"feat - a1868c9d13\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate to cldr 47 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64032\"\u003e#64032\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/196fa500a3c282af5158fa2873df8e2a73243493\"\u003e\u003cimg src=\"https://img.shields.io/badge/196fa500a3-fix-green\" alt=\"fix - 196fa500a3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eproperly type ngComponentOutlet (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64561\"\u003e#64561\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a4b225c57d8e390ec06731f5211d52d14da3a9c\"\u003e\u003cimg src=\"https://img.shields.io/badge/7a4b225c57-refactor-yellow\" alt=\"refactor - 7a4b225c57\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove typing of \u003ccode\u003engComponentOutletContent\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63674\"\u003e#63674\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/25f593ce2a623add0cbd4ab3bb0d4987793e4f34\"\u003e\u003cimg src=\"https://img.shields.io/badge/25f593ce2a-refactor-yellow\" alt=\"refactor - 25f593ce2a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove\u003ccode\u003engModuleFactory\u003c/code\u003e input of \u003ccode\u003eNgComponentOutlet\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62838\"\u003e#62838\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ecea909bccc3d6a3c33e77e1feb4ad0926e72f9e\"\u003e\u003cimg src=\"https://img.shields.io/badge/ecea909bcc-fix-green\" alt=\"fix - ecea909bcc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edon't choke on unbalanced parens in declaration block\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.1 (2025-11-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e39c577bc36\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edo not type check native controls with ControlValueAccessor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d3a89a477e273b9b2223b6db775955e35105963\"\u003e8d3a89a477\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eescape angular control flow in jsdoc\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/bc34083d349a7d30efb43df97de0509fd85a1996\"\u003ebc34083d34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eignore non-existent files\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ea1e071742a031d9afb7a39f8e23082cd88ca2e\"\u003e0ea1e07174\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eapply bootstrap-options migration to \u003ccode\u003eplatformBrowserDynamic\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70507b8c1ce733b8232a12fa45037ee219b5b102\"\u003e70507b8c1c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edebug data causing memory leak for root effects\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a55482fca3b7e4f39d95f8ff236b6619e59b8190\"\u003ea55482fca3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003enotify profiler events in case of errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49ad7c650818ee7db321a24c89282dbf9bb250f3\"\u003e49ad7c6508\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003euse injected \u003ccode\u003eDOCUMENT\u003c/code\u003e for \u003ccode\u003eCSP_NONCE\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cc1ec099315b0f429d0b0f07c9b1bf686668db6b\"\u003ecc1ec09931\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003eavoid repeat searches for field directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d5c7cf99aa5c6490f8bea950b04bd56073582a1\"\u003e7d5c7cf99a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd DI option for classes on \u003ccode\u003eField\u003c/code\u003e directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8acf5d27563ec51cc76971732d50e1f4142a3fe3\"\u003e8acf5d2756\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow dynamic \u003ccode\u003etype\u003c/code\u003e bindings on signal form controls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de5fca94c5cfafa9098d9ee270f448b90d4ac06f\"\u003ede5fca94c5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003erun reset as untracked\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3240d856d942727372a705252f7c8c115394a41e\"\u003e3240d856d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent XSRF token leakage to protocol-relative URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f394215b14d59c49e1433472ecdd2fd5547cc769\"\u003ef394215b14\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edetect structural ngTemplateOutlet and ngComponentOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0 (2025-11-19)\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"http://goo.gle/angular-v21-blog\"\u003eBlog post \u0026quot;Announcing Angular v21\u0026quot;\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3240d856d942727372a705252f7c8c115394a41e\"\u003e\u003ccode\u003e3240d85\u003c/code\u003e\u003c/a\u003e fix(http): prevent XSRF token leakage to protocol-relative URLs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6de892659473f8748fd87dbdb6100d48a1009bf3\"\u003e\u003ccode\u003e6de8926\u003c/code\u003e\u003c/a\u003e refactor(core): add debug name to resource (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64172\"\u003e#64172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/00ffe91c898e182c36f9ce032dd2efc925109b71\"\u003e\u003ccode\u003e00ffe91\u003c/code\u003e\u003c/a\u003e refactor(common): removes unused NgModuleFactory config in NgComponentOutlet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8765b66f5ad33e5ad99eb56507ddf9b98f7f0eb2\"\u003e\u003ccode\u003e8765b66\u003c/code\u003e\u003c/a\u003e docs: add reference to Built-in Pipes in multiple pipe files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab98e71c413928dbc75703e3de3131cf93100837\"\u003e\u003ccode\u003eab98e71\u003c/code\u003e\u003c/a\u003e fix(common): remove placeholder image listeners once view is removed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8ab084754b32762fb2e0552f2242cb2bf7039524\"\u003e\u003ccode\u003e8ab0847\u003c/code\u003e\u003c/a\u003e refactor(core): mark \u003ccode\u003eVERSION\u003c/code\u003e as \u003ccode\u003e@__PURE__\u003c/code\u003e for better tree-shaking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/650af71026752525f5b0978782c906c5348a6bbb\"\u003e\u003ccode\u003e650af71\u003c/code\u003e\u003c/a\u003e refactor(http): migrate XSRF classes to use inject() function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3bed9f0f166f6698e862cdbd360e3ba9bcceb935\"\u003e\u003ccode\u003e3bed9f0\u003c/code\u003e\u003c/a\u003e build: format md files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3c2fe819ab1e39b3f9a9a26e6aae7b90c207979\"\u003e\u003ccode\u003ea3c2fe8\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(common): Removes unused imports to clean up dependencies\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6d3e0f1a51f60991c7aad8c2518c10b33c89b87c\"\u003e\u003ccode\u003e6d3e0f1\u003c/code\u003e\u003c/a\u003e refactor(common): Removes unused imports to clean up dependencies\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/21.0.1/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/cdk` from 16.2.14 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003cimg src=\"https://img.shields.io/badge/043d9cacc-fix-green\" alt=\"fix - 043d9cacc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003cimg src=\"https://img.shields.io/badge/ccc12c387-fix-green\" alt=\"fix - ccc12c387\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003cimg src=\"https://img.shields.io/badge/02965bb0e-fix-green\" alt=\"fix - 02965bb0e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a821a3ef07d99d5ce8631469cd818929b9c0559b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a821a3ef0-feat-blue\" alt=\"feat - a821a3ef0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e create the aria grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32092\"\u003e#32092\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f9d3cde14984c6da006e09e8e79809247e017a65\"\u003e\u003cimg src=\"https://img.shields.io/badge/f9d3cde14-feat-blue\" alt=\"feat - f9d3cde14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e create the aria menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/32080\"\u003e#32080\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a0b5800277c206127999e21eda77ef003c066aee\"\u003e\u003cimg src=\"https://img.shields.io/badge/a0b580027-feat-blue\" alt=\"feat - a0b580027\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds skip disabled toolbar example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32127\"\u003e#32127\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/5396c43474fe272ad5e21366c027cd1ae0c6d593\"\u003e\u003cimg src=\"https://img.shields.io/badge/5396c4347-feat-blue\" alt=\"feat - 5396c4347\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar basic vertical example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32126\"\u003e#32126\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ba9f79be528c6228e50a73809ec62efcbfc7afc6\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba9f79be5-feat-blue\" alt=\"feat - ba9f79be5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar-basic-horizontal-example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32106\"\u003e#32106\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ec6045b270211131b6987e316fb3252745c89e11\"\u003e\u003cimg src=\"https://img.shields.io/badge/ec6045b27-fix-green\" alt=\"fix - ec6045b27\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eaccordion:\u003c/strong\u003e rename value to panelId for trigger and panel (\u003ca href=\"https://redirect.github.com/angular/components/issues/32295\"\u003e#32295\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0b03c6e96485f83447ed3451070be138bf21d4e6\"\u003e\u003cimg src=\"https://img.shields.io/badge/0b03c6e96-fix-green\" alt=\"fix - 0b03c6e96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e add missing apis (\u003ca href=\"https://redirect.github.com/angular/components/issues/32124\"\u003e#32124\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/25223a2f8be7b13699b94b99a1335e4ac7185772\"\u003e\u003cimg src=\"https://img.shields.io/badge/25223a2f8-fix-green\" alt=\"fix - 25223a2f8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e dialog popup support (\u003ca href=\"https://redirect.github.com/angular/components/issues/32279\"\u003e#32279\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a47ebeb964e794e3868659d68e46b3b782d1550b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a47ebeb96-fix-green\" alt=\"fix - a47ebeb96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32308\"\u003e#32308\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/127d3dba5754a4ceaa60f56ced7b4795c29372cc\"\u003e\u003cimg src=\"https://img.shields.io/badge/127d3dba5-fix-green\" alt=\"fix - 127d3dba5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e escape key behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32364\"\u003e#32364\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c3279ca4b47f91cd61e0ba0be24bdd10869fa059\"\u003e\u003cimg src=\"https://img.shields.io/badge/c3279ca4b-fix-green\" alt=\"fix - c3279ca4b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e highlighting edge cases (\u003ca href=\"https://redirect.github.com/angular/components/issues/32136\"\u003e#32136\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/1232805db6f0a0a07154b3601eaa8b9cc0d94f31\"\u003e\u003cimg src=\"https://img.shields.io/badge/1232805db-fix-green\" alt=\"fix - 1232805db\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e readonly behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32169\"\u003e#32169\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/6c46f950d451862692c2c74f41a704a3ef0fd472\"\u003e\u003cimg src=\"https://img.shields.io/badge/6c46f950d-fix-green\" alt=\"fix - 6c46f950d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e several small fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32202\"\u003e#32202\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8beb22f8c8d0d9f415225826188c38964c65ceee\"\u003e\u003cimg src=\"https://img.shields.io/badge/8beb22f8c-fix-green\" alt=\"fix - 8beb22f8c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e use click instead of pointerup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32324\"\u003e#32324\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/92d933421953a2f5123d0f823dc7880bb4e69098\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d933421-fix-green\" alt=\"fix - 92d933421\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e fix navigation bugs and add grid behavior unit tests (\u003ca href=\"https://redirect.github.com/angular/components/issues/32140\"\u003e#32140\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e3babf3fc3229879e38751eff2c5941ed2152ae7\"\u003e\u003cimg src=\"https://img.shields.io/badge/e3babf3fc-fix-green\" alt=\"fix - e3babf3fc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e rtl navigation (\u003ca href=\"https://redirect.github.com/angular/components/issues/32170\"\u003e#32170\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/fe79e982cb7b3f0b42c2be056face255ccfe5783\"\u003e\u003cimg src=\"https://img.shields.io/badge/fe79e982c-fix-green\" alt=\"fix - fe79e982c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add expansion delay (\u003ca href=\"https://redirect.github.com/angular/components/issues/32293\"\u003e#32293\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3d1cafbdd3839c12d5298f216abaef59f717f04c\"\u003e\u003cimg src=\"https://img.shields.io/badge/3d1cafbdd-fix-green\" alt=\"fix - 3d1cafbdd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add selectable to inputs (\u003ca href=\"https://redirect.github.com/angular/components/issues/32131\"\u003e#32131\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/56631cb858fda514cfd81e23064e7859aa338843\"\u003e\u003cimg src=\"https://img.shields.io/badge/56631cb85-fix-green\" alt=\"fix - 56631cb85\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e deferred content import\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/95e648ad8a4fb3591fd20229db3a0649ac95ebb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/95e648ad8-fix-green\" alt=\"fix - 95e648ad8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32301\"\u003e#32301\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ce20dbe1a3e4be0e1002533f7f1910b1f9efd0c3\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce20dbe1a-fix-green\" alt=\"fix - ce20dbe1a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e lazy render trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32203\"\u003e#32203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/19095030a0a6f102aa1ba7276afbc12fd79a27c7\"\u003e\u003cimg src=\"https://img.shields.io/badge/19095030a-fix-green\" alt=\"fix - 19095030a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e public api cleanup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32189\"\u003e#32189\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4b5db13286b263cb28918938dce515376b4a5f5b\"\u003e\u003cimg src=\"https://img.shields.io/badge/4b5db1328-fix-green\" alt=\"fix - 4b5db1328\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e rtl text direction (\u003ca href=\"https://redirect.github.com/angular/components/issues/32254\"\u003e#32254\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/bac171d8bc82fd7bfd716cc5214c49f1bfbc76bb\"\u003e\u003cimg src=\"https://img.shields.io/badge/bac171d8b-fix-green\" alt=\"fix - bac171d8b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e allow developers to wrap widgets (\u003ca href=\"https://redirect.github.com/angular/components/issues/32341\"\u003e#32341\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d8acd69f5d26c85ffc08224e67be5f594c85e38a\"\u003e\u003cimg src=\"https://img.shields.io/badge/d8acd69f5-fix-green\" alt=\"fix - d8acd69f5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e adds rtl keyboard functionality for tree (\u003ca href=\"https://redirect.github.com/angular/components/issues/32305\"\u003e#32305\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/86558d2aa6437556bac805a6acdf8c31f5b2cfb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/86558d2aa-fix-green\" alt=\"fix - 86558d2aa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e internal conformance check (\u003ca href=\"https://redirect.github.com/angular/components/issues/32337\"\u003e#32337\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/09e31e71673a73d80033e7aaf8ad8f6ae9db8f89\"\u003e\u003cimg src=\"https://img.shields.io/badge/09e31e716-fix-green\" alt=\"fix - 09e31e716\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e only reset selected values if used in combobox (\u003ca href=\"https://redirect.github.com/angular/components/issues/32329\"\u003e#32329\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/05f936ae14d8943ced0ad981cde8f3c2ac95afd1\"\u003e\u003cimg src=\"https://img.shields.io/badge/05f936ae1-fix-green\" alt=\"fix - 05f936ae1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e tree item visibility issue (\u003ca href=\"https://redirect.github.com/angular/components/issues/32156\"\u003e#32156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/afe4d063dd8f3dc5932519761693e7a79de77dc1\"\u003e\u003cimg src=\"https://img.shields.io/badge/afe4d063d-fix-green\" alt=\"fix - afe4d063d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e internal conformance fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32102\"\u003e#32102\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.1 \u0026quot;sulfur-snack\u0026quot; (2025-11-26)\u003c/h1\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003eccc12c387\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/pull/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e043d9cacc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/pull/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e02965bb0e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/pull/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0 \u0026quot;damask-dachshund\u0026quot; (2025-11-19)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eLIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-container\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-container-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$dark-backdrop-background\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-color\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-backdrop\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTemplatePortalDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortal\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePortalHostDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortalOutlet\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTestElement\u003c/code\u003e implementations need to provide a \u003ccode\u003esetContenteditableValue\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematBottomSheet\u003c/code\u003e animations symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_FAB_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_CHECKBOX_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAnimationCurves\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnimationDurations\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eNativeDateAdapter.useUtcForDisplay\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATE_LOCAL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMatCommonModule\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eGranularSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMATERIAL_SANITY_CHECKS\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematDatepickerAnimations\u003c/code\u003e symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_RANGE_DATE_SELECTION_MODEL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/39696e36ce3b64652cca2e7d92085dc46b318801\"\u003e\u003ccode\u003e39696e3\u003c/code\u003e\u003c/a\u003e release: cut the v21.0.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003ccode\u003e02965bb\u003c/code\u003e\u003c/a\u003e fix(multiple): resolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0cc3abd3f1de3ab7f1ad156bf19c7ba38ca2769a\"\u003e\u003ccode\u003e0cc3abd\u003c/code\u003e\u003c/a\u003e build: unblock Bazel updates (\u003ca href=\"https://redirect.github.com/angular/components/issues/32414\"\u003e#32414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0b9e78ed7fed478319cd5c02d1380682ab47ce2c\"\u003e\u003ccode\u003e0b9e78e\u003c/code\u003e\u003c/a\u003e refactor: set up function for setting innerHTML (\u003ca href=\"https://redirect.github.com/angular/components/issues/32404\"\u003e#32404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003ccode\u003e043d9ca\u003c/code\u003e\u003c/a\u003e fix(material/select): render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003ccode\u003eccc12c3\u003c/code\u003e\u003c/a\u003e fix(cdk/testing): errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/a68964a002630b1027881dc84aa0752050be4e4f\"\u003e\u003ccode\u003ea68964a\u003c/code\u003e\u003c/a\u003e build: update dependency bazel to v7.7.1 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32361\"\u003e#32361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/5cfdd477540e43b3a93eb7141bbc4637357b0cf7\"\u003e\u003ccode\u003e5cfdd47\u003c/code\u003e\u003c/a\u003e test: remove unnecessary test calls (\u003ca href=\"https://redirect.github.com/angular/components/issues/32396\"\u003e#32396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/9ae3b5aabd0301c1b6012d88747d5a848cee3e73\"\u003e\u003ccode\u003e9ae3b5a\u003c/code\u003e\u003c/a\u003e build: fix stackblitz test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/b1726541b0c9c239b838c01cf6838d44806ababf\"\u003e\u003ccode\u003eb172654\u003c/code\u003e\u003c/a\u003e build: fix test-based Stackblitz examples\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/16.2.14...21.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/forms` from 16.2.12 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e\u003cimg src=\"https://img.shields.io/badge/39c577bc36-fix-green\" alt=\"fix - 39c577bc36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edo not type check native controls with ControlValueAccessor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d3a89a477e273b9b2223b6db775955e35105963\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d3a89a477-fix-green\" alt=\"fix - 8d3a89a477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eescape angular control flow in jsdoc\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/bc34083d349a7d30efb43df97de0509fd85a1996\"\u003e\u003cimg src=\"https://img.shields.io/badge/bc34083d34-fix-green\" alt=\"fix - bc34083d34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eignore non-existent files\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ea1e071742a031d9afb7a39f8e23082cd88ca2e\"\u003e\u003cimg src=\"https://img.shields.io/badge/0ea1e07174-fix-green\" alt=\"fix - 0ea1e07174\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eapply bootstrap-options migration to \u003ccode\u003eplatformBrowserDynamic\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70507b8c1ce733b8232a12fa45037ee219b5b102\"\u003e\u003cimg src=\"https://img.shields.io/badge/70507b8c1c-fix-green\" alt=\"fix - 70507b8c1c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edebug data causing memory leak for root effects\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a55482fca3b7e4f39d95f8ff236b6619e59b8190\"\u003e\u003cimg src=\"https://img.shields.io/badge/a55482fca3-fix-green\" alt=\"fix - a55482fca3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enotify profiler events in case of errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49ad7c650818ee7db321a24c89282dbf9bb250f3\"\u003e\u003cimg src=\"https://img.shields.io/badge/49ad7c6508-fix-green\" alt=\"fix - 49ad7c6508\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse injected \u003ccode\u003eDOCUMENT\u003c/code\u003e for \u003ccode\u003eCSP_NONCE\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cc1ec099315b0f429d0b0f07c9b1bf686668db6b\"\u003e\u003cimg src=\"https://img.shields.io/badge/cc1ec09931-perf-orange\" alt=\"perf - cc1ec09931\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid repeat searches for field directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d5c7cf99aa5c6490f8bea950b04bd56073582a1\"\u003e\u003cimg src=\"https://img.shields.io/badge/7d5c7cf99a-feat-blue\" alt=\"feat - 7d5c7cf99a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd DI option for classes on \u003ccode\u003eField\u003c/code\u003e directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8acf5d27563ec51cc76971732d50e1f4142a3fe3\"\u003e\u003cimg src=\"https://img.shields.io/badge/8acf5d2756-fix-green\" alt=\"fix - 8acf5d2756\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow dynamic \u003ccode\u003etype\u003c/code\u003e bindings on signal form controls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de5fca94c5cfafa9098d9ee270f448b90d4ac06f\"\u003e\u003cimg src=\"https://img.shields.io/badge/de5fca94c5-fix-green\" alt=\"fix - de5fca94c5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erun reset as untracked\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3240d856d942727372a705252f7c8c115394a41e\"\u003e\u003cimg src=\"https://img.shields.io/badge/3240d856d9-fix-green\" alt=\"fix - 3240d856d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent XSRF token leakage to protocol-relative URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f394215b14d59c49e1433472ecdd2fd5547cc769\"\u003e\u003cimg src=\"https://img.shields.io/badge/f394215b14-fix-green\" alt=\"fix - f394215b14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edetect structural ngTemplateOutlet and ngComponentOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eVSCode Extension: 21.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(language-service): address potential memory leak during project creation (89095946cf)\u003c/li\u003e\n\u003cli\u003efix(language-server): fix directory renaming on Windows (3f7111a9c3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c795960ada1a7e21b8bee411e20a08c700b6e385\"\u003e\u003cimg src=\"https://img.shields.io/badge/c795960ada-feat-blue\" alt=\"feat - c795960ada\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd experimental support for the Navigation API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63406\"\u003e#63406\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9eac43cf46993442e9de5764e2ccca98e3837939\"\u003e\u003cimg src=\"https://img.shields.io/badge/9eac43cf46-feat-blue\" alt=\"feat - 9eac43cf46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eSupport of optional keys for the KeyValue pipe (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/48814\"\u003e#48814\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a1868c9d13991d24f893499406b29a5f2e0a388b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a1868c9d13-feat-blue\" alt=\"feat - a1868c9d13\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate to cldr 47 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/64032\"\u003e#64032\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/196fa500a3c282af5158fa2873df8e2a73243493\"\u003e\u003cimg src=\"https://img.shields.io/badge/196fa500a3-fix-green\" alt=\"fix - 196fa500a3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eproperly type ngComponentOutlet (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/64561\"\u003e#64561\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a4b225c57d8e390ec06731f5211d52d14da3a9c\"\u003e\u003cimg src=\"https://img.shields.io/badge/7a4b225c57-refactor-yellow\" alt=\"refactor - 7a4b225c57\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove typing of \u003ccode\u003engComponentOutletContent\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63674\"\u003e#63674\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/25f593ce2a623add0cbd4ab3bb0d4987793e4f34\"\u003e\u003cimg src=\"https://img.shields.io/badge/25f593ce2a-refactor-yellow\" alt=\"refactor - 25f593ce2a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove\u003ccode\u003engModuleFactory\u003c/code\u003e input of \u003ccode\u003eNgComponentOutlet\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62838\"\u003e#62838\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ecea909bccc3d6a3c33e77e1feb4ad0926e72f9e\"\u003e\u003cimg src=\"https://img.shields.io/badge/ecea909bcc-fix-green\" alt=\"fix - ecea909bcc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edon't choke on unbalanced parens in declaration block\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.1 (2025-11-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e39c577bc36\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edo not type check native controls with ControlValueAccessor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d3a89a477e273b9b2223b6db775955e35105963\"\u003e8d3a89a477\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eescape angular control flow in jsdoc\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/bc34083d349a7d30efb43df97de0509fd85a1996\"\u003ebc34083d34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eignore non-existent files\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ea1e071742a031d9afb7a39f8e23082cd88ca2e\"\u003e0ea1e07174\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eapply bootstrap-options migration to \u003ccode\u003eplatformBrowserDynamic\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70507b8c1ce733b8232a12fa45037ee219b5b102\"\u003e70507b8c1c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edebug data causing memory leak for root effects\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a55482fca3b7e4f39d95f8ff236b6619e59b8190\"\u003ea55482fca3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003enotify profiler events in case of errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49ad7c650818ee7db321a24c89282dbf9bb250f3\"\u003e49ad7c6508\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003euse injected \u003ccode\u003eDOCUMENT\u003c/code\u003e for \u003ccode\u003eCSP_NONCE\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cc1ec099315b0f429d0b0f07c9b1bf686668db6b\"\u003ecc1ec09931\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003eavoid repeat searches for field directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d5c7cf99aa5c6490f8bea950b04bd56073582a1\"\u003e7d5c7cf99a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd DI option for classes on \u003ccode\u003eField\u003c/code\u003e directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8acf5d27563ec51cc76971732d50e1f4142a3fe3\"\u003e8acf5d2756\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow dynamic \u003ccode\u003etype\u003c/code\u003e bindings on signal form controls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de5fca94c5cfafa9098d9ee270f448b90d4ac06f\"\u003ede5fca94c5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003erun reset as untracked\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3240d856d942727372a705252f7c8c115394a41e\"\u003e3240d856d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent XSRF token leakage to protocol-relative URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f394215b14d59c49e1433472ecdd2fd5547cc769\"\u003ef394215b14\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edetect structural ngTemplateOutlet and ngComponentOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0 (2025-11-19)\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"http://goo.gle/angular-v21-blog\"\u003eBlog post \u0026quot;Announcing Angular v21\u0026quot;\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e3f5f34732c90989517f0f0b1c511d0f5ced39c3\"\u003e\u003ccode\u003ee3f5f34\u003c/code\u003e\u003c/a\u003e refactor(forms): Make reset take value\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d5c7cf99aa5c6490f8bea950b04bd56073582a1\"\u003e\u003ccode\u003e7d5c7cf\u003c/code\u003e\u003c/a\u003e feat(forms): add DI option for classes on \u003ccode\u003eField\u003c/code\u003e directive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8acf5d27563ec51cc76971732d50e1f4142a3fe3\"\u003e\u003ccode\u003e8acf5d2\u003c/code\u003e\u003c/a\u003e fix(forms): allow dynamic \u003ccode\u003etype\u003c/code\u003e bindings on signal form controls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/4845a33018cf2c48e37c667892c24d6c6ec81f6b\"\u003e\u003ccode\u003e4845a33\u003c/code\u003e\u003c/a\u003e refactor(forms): support custom control directives\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/de5fca94c5cfafa9098d9ee270f448b90d4ac06f\"\u003e\u003ccode\u003ede5fca9\u003c/code\u003e\u003c/a\u003e fix(forms): run reset as untracked\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/91d8d55a80a1d1894827ef06e38e56de6e661575\"\u003e\u003ccode\u003e91d8d55\u003c/code\u003e\u003c/a\u003e fix(forms): Set error message of a schema error.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e682f00e29093bda29ac59c1cf685637d06e61b2\"\u003e\u003ccode\u003ee682f00\u003c/code\u003e\u003c/a\u003e refactor(forms): reduce boilerplate needed to define custom controls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/d89e522a1f07c4b2ac7fd2b926ae44658f9394d4\"\u003e\u003ccode\u003ed89e522\u003c/code\u003e\u003c/a\u003e fix(forms): debounce updates from interop controls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e1a7c35370a628cbd594fca346d4d4bd52c627e0\"\u003e\u003ccode\u003ee1a7c35\u003c/code\u003e\u003c/a\u003e refactor(forms): improve typing on min \u0026amp; max (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/65212\"\u003e#65212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ff4633dab863409beeb10d87d078e044be9be0cd\"\u003e\u003ccode\u003eff4633d\u003c/code\u003e\u003c/a\u003e refactor(forms): allow passing number|string|null paths to min \u0026amp; max (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/65212\"\u003e#65212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/21.0.1/packages/forms\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/material` from 16.2.14 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/material\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003cimg src=\"https://img.shields.io/badge/043d9cacc-fix-green\" alt=\"fix - 043d9cacc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003cimg src=\"https://img.shields.io/badge/ccc12c387-fix-green\" alt=\"fix - ccc12c387\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003cimg src=\"https://img.shields.io/badge/02965bb0e-fix-green\" alt=\"fix - 02965bb0e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a821a3ef07d99d5ce8631469cd818929b9c0559b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a821a3ef0-feat-blue\" alt=\"feat - a821a3ef0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e create the aria grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32092\"\u003e#32092\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f9d3cde14984c6da006e09e8e79809247e017a65\"\u003e\u003cimg src=\"https://img.shields.io/badge/f9d3cde14-feat-blue\" alt=\"feat - f9d3cde14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e create the aria menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/32080\"\u003e#32080\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a0b5800277c206127999e21eda77ef003c066aee\"\u003e\u003cimg src=\"https://img.shields.io/badge/a0b580027-feat-blue\" alt=\"feat - a0b580027\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds skip disabled toolbar example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32127\"\u003e#32127\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/5396c43474fe272ad5e21366c027cd1ae0c6d593\"\u003e\u003cimg src=\"https://img.shields.io/badge/5396c4347-feat-blue\" alt=\"feat - 5396c4347\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar basic vertical example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32126\"\u003e#32126\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ba9f79be528c6228e50a73809ec62efcbfc7afc6\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba9f79be5-feat-blue\" alt=\"feat - ba9f79be5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar-basic-horizontal-example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32106\"\u003e#32106\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ec6045b270211131b6987e316fb3252745c89e11\"\u003e\u003cimg src=\"https://img.shields.io/badge/ec6045b27-fix-green\" alt=\"fix - ec6045b27\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eaccordion:\u003c/strong\u003e rename value to panelId for trigger and panel (\u003ca href=\"https://redirect.github.com/angular/components/issues/32295\"\u003e#32295\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0b03c6e96485f83447ed3451070be138bf21d4e6\"\u003e\u003cimg src=\"https://img.shields.io/badge/0b03c6e96-fix-green\" alt=\"fix - 0b03c6e96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e add missing apis (\u003ca href=\"https://redirect.github.com/angular/components/issues/32124\"\u003e#32124\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/25223a2f8be7b13699b94b99a1335e4ac7185772\"\u003e\u003cimg src=\"https://img.shields.io/badge/25223a2f8-fix-green\" alt=\"fix - 25223a2f8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e dialog popup support (\u003ca href=\"https://redirect.github.com/angular/components/issues/32279\"\u003e#32279\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a47ebeb964e794e3868659d68e46b3b782d1550b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a47ebeb96-fix-green\" alt=\"fix - a47ebeb96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32308\"\u003e#32308\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/127d3dba5754a4ceaa60f56ced7b4795c29372cc\"\u003e\u003cimg src=\"https://img.shields.io/badge/127d3dba5-fix-green\" alt=\"fix - 127d3dba5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e escape key behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32364\"\u003e#32364\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c3279ca4b47f91cd61e0ba0be24bdd10869fa059\"\u003e\u003cimg src=\"https://img.shields.io/badge/c3279ca4b-fix-green\" alt=\"fix - c3279ca4b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e highlighting edge cases (\u003ca href=\"https://redirect.github.com/angular/components/issues/32136\"\u003e#32136\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/1232805db6f0a0a07154b3601eaa8b9cc0d94f31\"\u003e\u003cimg src=\"https://img.shields.io/badge/1232805db-fix-green\" alt=\"fix - 1232805db\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e readonly behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32169\"\u003e#32169\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/6c46f950d451862692c2c74f41a704a3ef0fd472\"\u003e\u003cimg src=\"https://img.shields.io/badge/6c46f950d-fix-green\" alt=\"fix - 6c46f950d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e several small fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32202\"\u003e#32202\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8beb22f8c8d0d9f415225826188c38964c65ceee\"\u003e\u003cimg src=\"https://img.shields.io/badge/8beb22f8c-fix-green\" alt=\"fix - 8beb22f8c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e use click instead of pointerup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32324\"\u003e#32324\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/92d933421953a2f5123d0f823dc7880bb4e69098\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d933421-fix-green\" alt=\"fix - 92d933421\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e fix navigation bugs and add grid behavior unit tests (\u003ca href=\"https://redirect.github.com/angular/components/issues/32140\"\u003e#32140\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e3babf3fc3229879e38751eff2c5941ed2152ae7\"\u003e\u003cimg src=\"https://img.shields.io/badge/e3babf3fc-fix-green\" alt=\"fix - e3babf3fc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e rtl navigation (\u003ca href=\"https://redirect.github.com/angular/components/issues/32170\"\u003e#32170\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/fe79e982cb7b3f0b42c2be056face255ccfe5783\"\u003e\u003cimg src=\"https://img.shields.io/badge/fe79e982c-fix-green\" alt=\"fix - fe79e982c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add expansion delay (\u003ca href=\"https://redirect.github.com/angular/components/issues/32293\"\u003e#32293\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3d1cafbdd3839c12d5298f216abaef59f717f04c\"\u003e\u003cimg src=\"https://img.shields.io/badge/3d1cafbdd-fix-green\" alt=\"fix - 3d1cafbdd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add selectable to inputs (\u003ca href=\"https://redirect.github.com/angular/components/issues/32131\"\u003e#32131\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/56631cb858fda514cfd81e23064e7859aa338843\"\u003e\u003cimg src=\"https://img.shields.io/badge/56631cb85-fix-green\" alt=\"fix - 56631cb85\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e deferred content import\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/95e648ad8a4fb3591fd20229db3a0649ac95ebb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/95e648ad8-fix-green\" alt=\"fix - 95e648ad8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32301\"\u003e#32301\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ce20dbe1a3e4be0e1002533f7f1910b1f9efd0c3\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce20dbe1a-fix-green\" alt=\"fix - ce20dbe1a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e lazy render trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32203\"\u003e#32203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/19095030a0a6f102aa1ba7276afbc12fd79a27c7\"\u003e\u003cimg src=\"https://img.shields.io/badge/19095030a-fix-green\" alt=\"fix - 19095030a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e public api cleanup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32189\"\u003e#32189\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4b5db13286b263cb28918938dce515376b4a5f5b\"\u003e\u003cimg src=\"https://img.shields.io/badge/4b5db1328-fix-green\" alt=\"fix - 4b5db1328\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e rtl text direction (\u003ca href=\"https://redirect.github.com/angular/components/issues/32254\"\u003e#32254\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/bac171d8bc82fd7bfd716cc5214c49f1bfbc76bb\"\u003e\u003cimg src=\"https://img.shields.io/badge/bac171d8b-fix-green\" alt=\"fix - bac171d8b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e allow developers to wrap widgets (\u003ca href=\"https://redirect.github.com/angular/components/issues/32341\"\u003e#32341\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d8acd69f5d26c85ffc08224e67be5f594c85e38a\"\u003e\u003cimg src=\"https://img.shields.io/badge/d8acd69f5-fix-green\" alt=\"fix - d8acd69f5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e adds rtl keyboard functionality for tree (\u003ca href=\"https://redirect.github.com/angular/components/issues/32305\"\u003e#32305\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/86558d2aa6437556bac805a6acdf8c31f5b2cfb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/86558d2aa-fix-green\" alt=\"fix - 86558d2aa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e internal conformance check (\u003ca href=\"https://redirect.github.com/angular/components/issues/32337\"\u003e#32337\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/09e31e71673a73d80033e7aaf8ad8f6ae9db8f89\"\u003e\u003cimg src=\"https://img.shields.io/badge/09e31e716-fix-green\" alt=\"fix - 09e31e716\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e only reset selected values if used in combobox (\u003ca href=\"https://redirect.github.com/angular/components/issues/32329\"\u003e#32329\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/05f936ae14d8943ced0ad981cde8f3c2ac95afd1\"\u003e\u003cimg src=\"https://img.shields.io/badge/05f936ae1-fix-green\" alt=\"fix - 05f936ae1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e tree item visibility issue (\u003ca href=\"https://redirect.github.com/angular/components/issues/32156\"\u003e#32156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/afe4d063dd8f3dc5932519761693e7a79de77dc1\"\u003e\u003cimg src=\"https://img.shields.io/badge/afe4d063d-fix-green\" alt=\"fix - afe4d063d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e internal conformance fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32102\"\u003e#32102\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/material\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.1 \u0026quot;sulfur-snack\u0026quot; (2025-11-26)\u003c/h1\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003eccc12c387\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/pull/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e043d9cacc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/pull/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e02965bb0e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/pull/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0 \u0026quot;damask-dachshund\u0026quot; (2025-11-19)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eLIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-container\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-container-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$dark-backdrop-background\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-color\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-backdrop\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTemplatePortalDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortal\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePortalHostDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortalOutlet\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTestElement\u003c/code\u003e implementations need to provide a \u003ccode\u003esetContenteditableValue\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematBottomSheet\u003c/code\u003e animations symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_FAB_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_CHECKBOX_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAnimationCurves\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnimationDurations\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eNativeDateAdapter.useUtcForDisplay\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATE_LOCAL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMatCommonModule\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eGranularSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMATERIAL_SANITY_CHECKS\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematDatepickerAnimations\u003c/code\u003e symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_RANGE_DATE_SELECTION_MODEL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/39696e36ce3b64652cca2e7d92085dc46b318801\"\u003e\u003ccode\u003e39696e3\u003c/code\u003e\u003c/a\u003e release: cut the v21.0.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003ccode\u003e02965bb\u003c/code\u003e\u003c/a\u003e fix(multiple): resolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0cc3abd3f1de3ab7f1ad156bf19c7ba38ca2769a\"\u003e\u003ccode\u003e0cc3abd\u003c/code\u003e\u003c/a\u003e build: unblock Bazel updates (\u003ca href=\"https://redirect.github.com/angular/components/issues/32414\"\u003e#32414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0b9e78ed7fed478319cd5c02d1380682ab47ce2c\"\u003e\u003ccode\u003e0b9e78e\u003c/code\u003e\u003c/a\u003e refactor: set up function for setting innerHTML (\u003ca href=\"https://redirect.github.com/angular/components/issues/32404\"\u003e#32404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003ccode\u003e043d9ca\u003c/code\u003e\u003c/a\u003e fix(material/select): render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003ccode\u003eccc12c3\u003c/code\u003e\u003c/a\u003e fix(cdk/testing): errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/a68964a002630b1027881dc84aa0752050be4e4f\"\u003e\u003ccode\u003ea68964a\u003c/code\u003e\u003c/a\u003e build: update dependency bazel to v7.7.1 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32361\"\u003e#32361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/5cfdd477540e43b3a93eb7141bbc4637357b0cf7\"\u003e\u003ccode\u003e5cfdd47\u003c/code\u003e\u003c/a\u003e test: remove unnecessary test calls (\u003ca href=\"https://redirect.github.com/angular/components/issues/32396\"\u003e#32396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/9ae3b5aabd0301c1b6012d88747d5a848cee3e73\"\u003e\u003ccode\u003e9ae3b5a\u003c/code\u003e\u003c/a\u003e build: fix stackblitz test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/b1726541b0c9c239b838c01cf6838d44806ababf\"\u003e\u003ccode\u003eb172654\u003c/code\u003e\u003c/a\u003e build: fix test-based Stackblitz examples\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/16.2.14...21.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/platform-browser` from 16.2.12 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/platform-browser\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e\u003cimg src=\"https://img.shields.io/badge...\n\n_Description has been truncated_","html_url":"https://github.com/sitmun/sitmun-admin-app/pull/337","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sitmun%2Fsitmun-admin-app/issues/337","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/337/packages"},{"uuid":"3541731993","node_id":"PR_kwDOEX7hus6vHV5j","number":1615,"state":"open","title":"chore(deps): bump the angular-major group with 20 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-10-22T17:34:38.000Z","updated_at":"2025-10-22T22:00:40.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"angular-major","update_count":20,"packages":[{"name":"@angular/animations","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/cdk","old_version":"19.2.19","new_version":"20.2.10","repository_url":"https://github.com/angular/components"},{"name":"@angular/common","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/compiler","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/core","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/forms","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser-dynamic","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/router","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/build-angular","old_version":"19.2.15","new_version":"20.3.6","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-eslint/builder","old_version":"19.8.1","new_version":"20.4.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin","old_version":"19.8.1","new_version":"20.4.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin-template","old_version":"19.8.1","new_version":"20.4.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/schematics","old_version":"19.8.1","new_version":"20.4.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/template-parser","old_version":"19.8.1","new_version":"20.4.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular/cli","old_version":"19.2.15","new_version":"20.3.6","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/compiler-cli","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/language-service","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"ng-packagr","old_version":"19.2.2","new_version":"20.3.0","repository_url":"https://github.com/ng-packagr/ng-packagr"}],"path":null,"ecosystem":"npm"},"body":"Bumps the angular-major group with 20 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/animations](https://github.com/angular/angular/tree/HEAD/packages/animations) | `19.2.14` | `20.3.6` |\n| [@angular/cdk](https://github.com/angular/components) | `19.2.19` | `20.2.10` |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `19.2.14` | `20.3.6` |\n| [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) | `19.2.14` | `20.3.6` |\n| [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) | `19.2.14` | `20.3.6` |\n| [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) | `19.2.14` | `20.3.6` |\n| [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) | `19.2.14` | `20.3.6` |\n| [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) | `19.2.14` | `20.3.6` |\n| [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) | `19.2.14` | `20.3.6` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `19.2.15` | `20.3.6` |\n| [@angular-eslint/builder](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/builder) | `19.8.1` | `20.4.0` |\n| [@angular-eslint/eslint-plugin](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin) | `19.8.1` | `20.4.0` |\n| [@angular-eslint/eslint-plugin-template](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin-template) | `19.8.1` | `20.4.0` |\n| [@angular-eslint/schematics](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/schematics) | `19.8.1` | `20.4.0` |\n| [@angular-eslint/template-parser](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/template-parser) | `19.8.1` | `20.4.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `19.2.15` | `20.3.6` |\n| [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) | `19.2.14` | `20.3.6` |\n| [@angular/language-service](https://github.com/angular/angular/tree/HEAD/packages/language-service) | `19.2.14` | `20.3.6` |\n| [ng-packagr](https://github.com/ng-packagr/ng-packagr) | `19.2.2` | `20.3.0` |\n\nUpdates `@angular/animations` from 19.2.14 to 20.3.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/animations\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.6\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/911d6822cb18dabf4f72312dfc2e2ef9904bf6c2\"\u003e\u003cimg src=\"https://img.shields.io/badge/911d6822cb-fix-green\" alt=\"fix - 911d6822cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate animation scheduling (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64441\"\u003e#64441\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ece42866d0ee8240e73ebcef79ba47378777368\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ece42866d-fix-green\" alt=\"fix - 2ece42866d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003eDomEventsPlugin\u003c/code\u003e should always be the last plugin to be called for \u003ccode\u003esupports()\u003c/code\u003e. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/50394\"\u003e#50394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8dec92ff9f1055c6b4fc4e767d8b1b408ac28e67\"\u003e\u003cimg src=\"https://img.shields.io/badge/8dec92ff9f-fix-green\" alt=\"fix - 8dec92ff9f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/63957\"\u003e#63957\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64317\"\u003e#64317\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c2e817b0efb6f617312936b756ace2c85139d1fc\"\u003e\u003cimg src=\"https://img.shields.io/badge/c2e817b0ef-perf-orange\" alt=\"perf - c2e817b0ef\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix performance of \u0026quot;interpolated signal not invoked\u0026quot; check (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64410\"\u003e#64410\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f15cfa4cc414f1d2f4b126bdfc26d74922732672\"\u003e\u003cimg src=\"https://img.shields.io/badge/f15cfa4cc4-fix-green\" alt=\"fix - f15cfa4cc4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efixes regression in \u003ccode\u003eanimate.leave\u003c/code\u003e function bindings (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64413\"\u003e#64413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d54dd674ca9db874c95027161b8080bd37250af6\"\u003e\u003cimg src=\"https://img.shields.io/badge/d54dd674ca-fix-green\" alt=\"fix - d54dd674ca\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePrevents early style pruning with leave animations (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64335\"\u003e#64335\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/554573e5248a72f73df1468e992da08ce5f6112d\"\u003e\u003cimg src=\"https://img.shields.io/badge/554573e524-fix-green\" alt=\"fix - 554573e524\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emigrating input with more than 1 usage in a method (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64367\"\u003e#64367\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2c79ca0b579d99346c267e6b61789699e8656dc5\"\u003e\u003cimg src=\"https://img.shields.io/badge/2c79ca0b57-fix-green\" alt=\"fix - 2c79ca0b57\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove error for no matching files in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64253\"\u003e#64253\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64314\"\u003e#64314\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e4bcc7d22d4699a33d6648e628fb65a38d0ad8f\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e4bcc7d22-fix-green\" alt=\"fix - 6e4bcc7d22\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eScroll restoration should use instant scroll behavior for traversals (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64299\"\u003e#64299\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.4\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/853ed169a8a1392ef2da7790181fb8e100f59519\"\u003e\u003cimg src=\"https://img.shields.io/badge/853ed169a8-fix-green\" alt=\"fix - 853ed169a8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eensure missing leave animations don't queue leave animations (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64226\"\u003e#64226\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6fed986b7a8f22dfe81d94b1e55490a278e6d82a\"\u003e\u003cimg src=\"https://img.shields.io/badge/6fed986b7a-fix-green\" alt=\"fix - 6fed986b7a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eFixes animations in conjunction with content projection (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/63776\"\u003e#63776\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/76fe5599fe8e034c2a5a432608785a53018e23d2\"\u003e\u003cimg src=\"https://img.shields.io/badge/76fe5599fe-fix-green\" alt=\"fix - 76fe5599fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle undefined CSS time values in parseCssTimeUnitsToMs function (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64181\"\u003e#64181\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3b959105be04d7b11a1eb1035f1938bd0c43fe8b\"\u003e\u003cimg src=\"https://img.shields.io/badge/3b959105be-fix-green\" alt=\"fix - 3b959105be\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent early exit from leave animations when multiple transitions are present (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64225\"\u003e#64225\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65884895fff5bc499974849e9ec5a5792eb9e36c\"\u003e\u003cimg src=\"https://img.shields.io/badge/65884895ff-fix-green\" alt=\"fix - 65884895ff\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003epreserve component imports when pruning NgModules in standalone migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64186\"\u003e#64186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.3\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f51ab32fb3000ae34c077b049ff2f7b8e3e22d14\"\u003e\u003cimg src=\"https://img.shields.io/badge/f51ab32fb3-fix-green\" alt=\"fix - f51ab32fb3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erecover template literals with broken expressions (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64150\"\u003e#64150\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/animations\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.6 (2025-10-16)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/911d6822cb18dabf4f72312dfc2e2ef9904bf6c2\"\u003e911d6822cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate animation scheduling (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64441\"\u003e#64441\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ece42866d0ee8240e73ebcef79ba47378777368\"\u003e2ece42866d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003eDomEventsPlugin\u003c/code\u003e should always be the last plugin to be called for \u003ccode\u003esupports()\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/angular/angular/pull/50394\"\u003e#50394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.8 (2025-10-15)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/563dbd998c86e850b3c4dde4c7cee00d7c9d7581\"\u003e563dbd998c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds diagnostic for misconfigured \u003ccode\u003e@defer\u003c/code\u003e triggers (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64069\"\u003e#64069\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab98b2425f4c4cb59927aa686818ecee99e634c7\"\u003eab98b2425f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63957\"\u003e#63957\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49377d274afb2ae039d6ac81184104f448e01d8e\"\u003e49377d274a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003efix performance of \u0026quot;interpolated signal not invoked\u0026quot; check (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64410\"\u003e#64410\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2a7a5de53fd6fb5714c06c63dd1dad5718086083\"\u003e2a7a5de53f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAllow passing application providers in \u003ccode\u003ebootstrapModule\u003c/code\u003e options (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64354\"\u003e#64354\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ad2376435b4bcfdb695d841272f8234ab2a7cca5\"\u003ead2376435b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport IntersectionObserver options in viewport triggers (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64130\"\u003e#64130\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab415f3d7f23cef8e00595e9cf6af2c8b764a8ae\"\u003eab415f3d7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003econtrol not recognized when input has directive injecting ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64368\"\u003e#64368\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ed6c9396049adde45ac8707a9dc7f9a7f4b7b01\"\u003e0ed6c93960\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efixes regression in \u003ccode\u003eanimate.leave\u003c/code\u003e function bindings (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64413\"\u003e#64413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e2281023780297f29cfff087aeea913bfc686cd7\"\u003ee228102378\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ePrevents early style pruning with leave animations (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64335\"\u003e#64335\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f4d1017c25813b290697d8e1a829983a7b1bca27\"\u003ef4d1017c25\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that common field states are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/acd7c83597ad376ec9a48421b3b291951ca2d75e\"\u003eacd7c83597\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that min/max properties are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/71e8672837eb6c2da2570eb2341e896fbf7ca5a3\"\u003e71e8672837\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that minLength/maxLength properties are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/32f86d35f7cd177b6e4525a7ae97909888d9fee4\"\u003e32f86d35f7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003eoptimize \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64351\"\u003e#64351\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2739b7975ba40a8cfc3b00f0c444a3a147f7f553\"\u003e2739b7975b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd referrerPolicy option to HttpResource (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64283\"\u003e#64283\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/861cee34e0e9b5562cfe70d245f30b7ddea7d8fd\"\u003e861cee34e0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds migration for deprecated router testing module (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64217\"\u003e#64217\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ffcfb625a0417faba091ae9dbd0156e9f241b43\"\u003e1ffcfb625a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds migration for deprecated router testing module (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64217\"\u003e#64217\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e99bbd3d2a391b5d531be65f534cbabdcf0be516\"\u003ee99bbd3d2a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emigrating input with more than 1 usage in a method (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64367\"\u003e#64367\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e1da41ffdfd984f844c9528ead2d66fd83749aed\"\u003ee1da41ffdf\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eScroll restoration should use instant scroll behavior for traversals (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64299\"\u003e#64299\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003e\u003ccode\u003ee78451c\u003c/code\u003e\u003c/a\u003e fix(core): prevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/63921\"\u003e#63921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a7725ee4c91641ef92b19f0fd35dc0fc000bc84\"\u003e\u003ccode\u003e7a7725e\u003c/code\u003e\u003c/a\u003e refactor(core): Update tests for zoneless by default (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/63672\"\u003e#63672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed50120d4c1a98958663e58633472f6cd857cd10\"\u003e\u003ccode\u003eed50120\u003c/code\u003e\u003c/a\u003e refactor(animations): remove dependency on \u003ccode\u003e@angular/common\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/63248\"\u003e#63248\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9a27c5befb676e894c522392e2c06b4f8fdca25a\"\u003e\u003ccode\u003e9a27c5b\u003c/code\u003e\u003c/a\u003e build: rename defaults2.bzl to defaults.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/63384\"\u003e#63384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ec8cd3e1897e005cf2916ba537f91e0c24735d12\"\u003e\u003ccode\u003eec8cd3e\u003c/code\u003e\u003c/a\u003e refactor(animations): optimize resolveTimeExpression (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62927\"\u003e#62927\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/fa8d8b8396c9992d25a2e0256ae895ca7c86ad66\"\u003e\u003ccode\u003efa8d8b8\u003c/code\u003e\u003c/a\u003e build: migrate all npm packages to use new rules_js based npm_package rule (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/cbc258eec8f70785c728dda615ed685742c1dc82\"\u003e\u003ccode\u003ecbc258e\u003c/code\u003e\u003c/a\u003e build: remove ts_project_interop infrastructure (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62908\"\u003e#62908\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/793ff35602946748b88ae3da2542ccb7076c9290\"\u003e\u003ccode\u003e793ff35\u003c/code\u003e\u003c/a\u003e build: move http_server and generate_api_docs into defaults2.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62878\"\u003e#62878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9766116cea69607d80144251a599f1cc1b12e02c\"\u003e\u003ccode\u003e9766116\u003c/code\u003e\u003c/a\u003e refactor(animations): deprecate the animations package (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62795\"\u003e#62795\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bf97d13707b8cfee3c782d1501a1e622593a697\"\u003e\u003ccode\u003e8bf97d1\u003c/code\u003e\u003c/a\u003e build: remove all usages of the interop_deps attr for ts_project and ng_proje...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.3.6/packages/animations\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/cdk` from 19.2.19 to 20.2.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.2.10\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/b2cd596d315585c1f8b895c64230b49aecd3e6f8\"\u003e\u003cimg src=\"https://img.shields.io/badge/b2cd596d3-fix-green\" alt=\"fix - b2cd596d3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e differentiate container colors in m2 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32076\"\u003e#32076\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.9\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/af3b9612145ed20a3290f773e4fbf51206804145\"\u003e\u003cimg src=\"https://img.shields.io/badge/af3b961214-fix-green\" alt=\"fix - af3b961214\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003echeckbox:\u003c/strong\u003e use GrayText for disabled colors in high contrast mode (\u003ca href=\"https://redirect.github.com/angular/components/issues/32066\"\u003e#32066\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a90abb0a77b77b0ec5188582a1ea4d587508da5e\"\u003e\u003cimg src=\"https://img.shields.io/badge/a90abb0a77-fix-green\" alt=\"fix - a90abb0a77\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003esnack-bar:\u003c/strong\u003e add max height for snack bar (\u003ca href=\"https://redirect.github.com/angular/components/issues/32000\"\u003e#32000\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.8\u003c/h2\u003e\n\u003ch3\u003ematerial-date-fns-adapter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/2d1f8d068e18fa1e0044e0dd4c968c3fa6761e10\"\u003e\u003cimg src=\"https://img.shields.io/badge/2d1f8d068-fix-green\" alt=\"fix - 2d1f8d068\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eparse time string containing only hours (\u003ca href=\"https://redirect.github.com/angular/components/issues/31978\"\u003e#31978\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/6d61babe77a6a6f0c464b498ee773561b795663f\"\u003e\u003cimg src=\"https://img.shields.io/badge/6d61babe7-fix-green\" alt=\"fix - 6d61babe7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e error due to synchronous change detection\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e43dcabd005239a380ffef50cfea374b24a67735\"\u003e\u003cimg src=\"https://img.shields.io/badge/e43dcabd0-fix-green\" alt=\"fix - e43dcabd0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e make date filter nullable (\u003ca href=\"https://redirect.github.com/angular/components/issues/31980\"\u003e#31980\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f30c1c6c3f6490ddf21ba668d4065c4d5f89f26f\"\u003e\u003cimg src=\"https://img.shields.io/badge/f30c1c6c3-fix-green\" alt=\"fix - f30c1c6c3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eradio:\u003c/strong\u003e Hovering over label of a radio will show the pointer cursor (\u003ca href=\"https://redirect.github.com/angular/components/issues/32015\"\u003e#32015\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/de3f9e5662edae3c19f44a89ee1ee34555eba147\"\u003e\u003cimg src=\"https://img.shields.io/badge/de3f9e566-fix-green\" alt=\"fix - de3f9e566\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e assign form control value before emitting events (\u003ca href=\"https://redirect.github.com/angular/components/issues/31981\"\u003e#31981\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.7\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/85ed6550c2a3f8199350dcb1fb7d6f775dc2ba61\"\u003e\u003cimg src=\"https://img.shields.io/badge/85ed6550c2-fix-green\" alt=\"fix - 85ed6550c2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e prevent child menu reopening while parent is animating away (\u003ca href=\"https://redirect.github.com/angular/components/issues/31958\"\u003e#31958\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.6\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a6f0bd8e72d64d897611ec02cb2d9eb54d922318\"\u003e\u003cimg src=\"https://img.shields.io/badge/a6f0bd8e7-fix-green\" alt=\"fix - a6f0bd8e7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e switch internal state to signals (\u003ca href=\"https://redirect.github.com/angular/components/issues/31934\"\u003e#31934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/94716a8055ace7b4332a3b5bc37404434ccaf475\"\u003e\u003cimg src=\"https://img.shields.io/badge/94716a805-fix-green\" alt=\"fix - 94716a805\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e rotate arrow while open (\u003ca href=\"https://redirect.github.com/angular/components/issues/31936\"\u003e#31936\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e8e8662ab68e493d3ae7c364297c569032a7af7f\"\u003e\u003cimg src=\"https://img.shields.io/badge/e8e8662ab-fix-green\" alt=\"fix - e8e8662ab\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003escrolling:\u003c/strong\u003e Fix undefined error when documentElement.style is undefined (\u003ca href=\"https://redirect.github.com/angular/components/issues/31904\"\u003e#31904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a9b1afdb6ba4e6720ec0358f0b85888f506905fc\"\u003e\u003cimg src=\"https://img.shields.io/badge/a9b1afdb6-fix-green\" alt=\"fix - a9b1afdb6\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003escrolling:\u003c/strong\u003e prevent subpixel gaps in virtual scroll viewport (\u003ca href=\"https://redirect.github.com/angular/components/issues/31940\"\u003e#31940\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.5\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/36be42637df5021ae9afa4d097e84d83d78c197e\"\u003e\u003cimg src=\"https://img.shields.io/badge/36be42637-fix-green\" alt=\"fix - 36be42637\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e move internal tokens (\u003ca href=\"https://redirect.github.com/angular/components/issues/31907\"\u003e#31907\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3ac762be5dc180594c0681e2842e35123195feb6\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ac762be5-fix-green\" alt=\"fix - 3ac762be5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eform-field:\u003c/strong\u003e restore error message animation (\u003ca href=\"https://redirect.github.com/angular/components/issues/31774\"\u003e#31774\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.2.10 \u0026quot;aleutite-anchovy\u0026quot; (2025-10-22)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/b2cd596d315585c1f8b895c64230b49aecd3e6f8\"\u003eb2cd596d3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e differentiate container colors in m2 (\u003ca href=\"https://redirect.github.com/angular/components/pull/32076\"\u003e#32076\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.9 \u0026quot;plastic-fork\u0026quot; (2025-10-15)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTestElement\u003c/code\u003e implementations need to provide a \u003ccode\u003esetContenteditableValue\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/71d590796c8c29a198fefa31864c06ddfd334738\"\u003e71d590796c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003esort:\u003c/strong\u003e add content projection slot for custom icon (\u003ca href=\"https://redirect.github.com/angular/components/pull/32016\"\u003e#32016\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/85f596b3c32d22541c3825da3479b67832a2f4da\"\u003e85f596b3c3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e add harness for \u0026quot;no data\u0026quot; row (\u003ca href=\"https://redirect.github.com/angular/components/pull/32075\"\u003e#32075\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ff9059d8d14b82a465481e51f01582caf6d83b6c\"\u003eff9059d8d1\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003echeckbox:\u003c/strong\u003e use GrayText for disabled colors in high contrast mode (\u003ca href=\"https://redirect.github.com/angular/components/pull/32066\"\u003e#32066\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/5f12b26ab3abad9acb2a3d008100d06e0fb63ab5\"\u003e5f12b26ab3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003esnack-bar:\u003c/strong\u003e add max height for snack bar (\u003ca href=\"https://redirect.github.com/angular/components/pull/32000\"\u003e#32000\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/7dfabca03d14729926b708e4c86d913bc5b8f735\"\u003e7dfabca03d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e add interface for timepicker input (\u003ca href=\"https://redirect.github.com/angular/components/pull/32050\"\u003e#32050\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/544438c865532b30005ef7d03606fc4be4818a39\"\u003e544438c865\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e make setContenteditableValue required (\u003ca href=\"https://redirect.github.com/angular/components/pull/32058\"\u003e#32058\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.2.9 \u0026quot;plastic-spoon\u0026quot; (2025-10-15)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/af3b9612145ed20a3290f773e4fbf51206804145\"\u003eaf3b961214\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003echeckbox:\u003c/strong\u003e use GrayText for disabled colors in high contrast mode (\u003ca href=\"https://redirect.github.com/angular/components/pull/32066\"\u003e#32066\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a90abb0a77b77b0ec5188582a1ea4d587508da5e\"\u003ea90abb0a77\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003esnack-bar:\u003c/strong\u003e add max height for snack bar (\u003ca href=\"https://redirect.github.com/angular/components/pull/32000\"\u003e#32000\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.8 \u0026quot;osmium-summit\u0026quot; (2025-10-08)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.7 \u0026quot;selenium-summit\u0026quot; (2025-10-08)\u003c/h1\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/82cd076bfb3084e258f8e20af6cac570349822ce\"\u003e82cd076bf\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eoverlay:\u003c/strong\u003e Allow passing separate X and Y values for the viewportMargin (\u003ca href=\"https://redirect.github.com/angular/components/pull/29563\"\u003e#29563\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/3553ed438c786233409d3c1a66112c1b2befcef4\"\u003e\u003ccode\u003e3553ed4\u003c/code\u003e\u003c/a\u003e release: cut the v20.2.10 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/3977d117960289ceecc0f0931f3340dab21329f0\"\u003e\u003ccode\u003e3977d11\u003c/code\u003e\u003c/a\u003e build: update rules_browsers digest to 6a699bf (\u003ca href=\"https://redirect.github.com/angular/components/issues/32119\"\u003e#32119\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/67fd815617c96e9506f74fc1369298337bd6e3d3\"\u003e\u003ccode\u003e67fd815\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/32122\"\u003e#32122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/c6f531ca3c0df991245d9d77f86b7b111ad34f8e\"\u003e\u003ccode\u003ec6f531c\u003c/code\u003e\u003c/a\u003e build: update github/codeql-action action to v3.30.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/d310c471d9dd801c1c05e1e2925bc5436414da88\"\u003e\u003ccode\u003ed310c47\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/32100\"\u003e#32100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/8aa25705d5dab35adebfaae79d486b492ca1bea6\"\u003e\u003ccode\u003e8aa2570\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies to v20.3.6 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32088\"\u003e#32088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/488e664e889b4c6f2852956df71f3807cab523e3\"\u003e\u003ccode\u003e488e664\u003c/code\u003e\u003c/a\u003e build: update bazel dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/31972\"\u003e#31972\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/be5e4a44cdfef984fe117b82d1e5eea6a870d8c1\"\u003e\u003ccode\u003ebe5e4a4\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/32078\"\u003e#32078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/a1f645209aa64f3e6063ba37c2ed6a0e6ece12fc\"\u003e\u003ccode\u003ea1f6452\u003c/code\u003e\u003c/a\u003e build: update pnpm to v10.18.3 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32082\"\u003e#32082\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/b2cd596d315585c1f8b895c64230b49aecd3e6f8\"\u003e\u003ccode\u003eb2cd596\u003c/code\u003e\u003c/a\u003e fix(material/core): differentiate container colors in m2 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32076\"\u003e#32076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/19.2.19...20.2.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/common` from 19.2.14 to 20.3.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.6\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/911d6822cb18dabf4f72312dfc2e2ef9904bf6c2\"\u003e\u003cimg src=\"https://img.shields.io/badge/911d6822cb-fix-green\" alt=\"fix - 911d6822cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate animation scheduling (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64441\"\u003e#64441\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ece42866d0ee8240e73ebcef79ba47378777368\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ece42866d-fix-green\" alt=\"fix - 2ece42866d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003eDomEventsPlugin\u003c/code\u003e should always be the last plugin to be called for \u003ccode\u003esupports()\u003c/code\u003e. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/50394\"\u003e#50394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8dec92ff9f1055c6b4fc4e767d8b1b408ac28e67\"\u003e\u003cimg src=\"https://img.shields.io/badge/8dec92ff9f-fix-green\" alt=\"fix - 8dec92ff9f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63957\"\u003e#63957\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64317\"\u003e#64317\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c2e817b0efb6f617312936b756ace2c85139d1fc\"\u003e\u003cimg src=\"https://img.shields.io/badge/c2e817b0ef-perf-orange\" alt=\"perf - c2e817b0ef\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix performance of \u0026quot;interpolated signal not invoked\u0026quot; check (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64410\"\u003e#64410\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f15cfa4cc414f1d2f4b126bdfc26d74922732672\"\u003e\u003cimg src=\"https://img.shields.io/badge/f15cfa4cc4-fix-green\" alt=\"fix - f15cfa4cc4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efixes regression in \u003ccode\u003eanimate.leave\u003c/code\u003e function bindings (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64413\"\u003e#64413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d54dd674ca9db874c95027161b8080bd37250af6\"\u003e\u003cimg src=\"https://img.shields.io/badge/d54dd674ca-fix-green\" alt=\"fix - d54dd674ca\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePrevents early style pruning with leave animations (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64335\"\u003e#64335\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/554573e5248a72f73df1468e992da08ce5f6112d\"\u003e\u003cimg src=\"https://img.shields.io/badge/554573e524-fix-green\" alt=\"fix - 554573e524\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emigrating input with more than 1 usage in a method (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64367\"\u003e#64367\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2c79ca0b579d99346c267e6b61789699e8656dc5\"\u003e\u003cimg src=\"https://img.shields.io/badge/2c79ca0b57-fix-green\" alt=\"fix - 2c79ca0b57\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove error for no matching files in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64253\"\u003e#64253\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64314\"\u003e#64314\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e4bcc7d22d4699a33d6648e628fb65a38d0ad8f\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e4bcc7d22-fix-green\" alt=\"fix - 6e4bcc7d22\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eScroll restoration should use instant scroll behavior for traversals (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64299\"\u003e#64299\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.4\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/853ed169a8a1392ef2da7790181fb8e100f59519\"\u003e\u003cimg src=\"https://img.shields.io/badge/853ed169a8-fix-green\" alt=\"fix - 853ed169a8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eensure missing leave animations don't queue leave animations (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64226\"\u003e#64226\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6fed986b7a8f22dfe81d94b1e55490a278e6d82a\"\u003e\u003cimg src=\"https://img.shields.io/badge/6fed986b7a-fix-green\" alt=\"fix - 6fed986b7a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eFixes animations in conjunction with content projection (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63776\"\u003e#63776\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/76fe5599fe8e034c2a5a432608785a53018e23d2\"\u003e\u003cimg src=\"https://img.shields.io/badge/76fe5599fe-fix-green\" alt=\"fix - 76fe5599fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle undefined CSS time values in parseCssTimeUnitsToMs function (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64181\"\u003e#64181\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3b959105be04d7b11a1eb1035f1938bd0c43fe8b\"\u003e\u003cimg src=\"https://img.shields.io/badge/3b959105be-fix-green\" alt=\"fix - 3b959105be\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent early exit from leave animations when multiple transitions are present (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64225\"\u003e#64225\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65884895fff5bc499974849e9ec5a5792eb9e36c\"\u003e\u003cimg src=\"https://img.shields.io/badge/65884895ff-fix-green\" alt=\"fix - 65884895ff\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003epreserve component imports when pruning NgModules in standalone migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64186\"\u003e#64186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.3\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f51ab32fb3000ae34c077b049ff2f7b8e3e22d14\"\u003e\u003cimg src=\"https://img.shields.io/badge/f51ab32fb3-fix-green\" alt=\"fix - f51ab32fb3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erecover template literals with broken expressions (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64150\"\u003e#64150\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.6 (2025-10-16)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/911d6822cb18dabf4f72312dfc2e2ef9904bf6c2\"\u003e911d6822cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate animation scheduling (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64441\"\u003e#64441\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ece42866d0ee8240e73ebcef79ba47378777368\"\u003e2ece42866d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003eDomEventsPlugin\u003c/code\u003e should always be the last plugin to be called for \u003ccode\u003esupports()\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/angular/angular/pull/50394\"\u003e#50394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.8 (2025-10-15)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/563dbd998c86e850b3c4dde4c7cee00d7c9d7581\"\u003e563dbd998c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds diagnostic for misconfigured \u003ccode\u003e@defer\u003c/code\u003e triggers (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64069\"\u003e#64069\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab98b2425f4c4cb59927aa686818ecee99e634c7\"\u003eab98b2425f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63957\"\u003e#63957\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49377d274afb2ae039d6ac81184104f448e01d8e\"\u003e49377d274a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003efix performance of \u0026quot;interpolated signal not invoked\u0026quot; check (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64410\"\u003e#64410\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2a7a5de53fd6fb5714c06c63dd1dad5718086083\"\u003e2a7a5de53f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAllow passing application providers in \u003ccode\u003ebootstrapModule\u003c/code\u003e options (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64354\"\u003e#64354\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ad2376435b4bcfdb695d841272f8234ab2a7cca5\"\u003ead2376435b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport IntersectionObserver options in viewport triggers (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64130\"\u003e#64130\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab415f3d7f23cef8e00595e9cf6af2c8b764a8ae\"\u003eab415f3d7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003econtrol not recognized when input has directive injecting ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64368\"\u003e#64368\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ed6c9396049adde45ac8707a9dc7f9a7f4b7b01\"\u003e0ed6c93960\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efixes regression in \u003ccode\u003eanimate.leave\u003c/code\u003e function bindings (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64413\"\u003e#64413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e2281023780297f29cfff087aeea913bfc686cd7\"\u003ee228102378\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ePrevents early style pruning with leave animations (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64335\"\u003e#64335\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f4d1017c25813b290697d8e1a829983a7b1bca27\"\u003ef4d1017c25\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that common field states are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/acd7c83597ad376ec9a48421b3b291951ca2d75e\"\u003eacd7c83597\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that min/max properties are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/71e8672837eb6c2da2570eb2341e896fbf7ca5a3\"\u003e71e8672837\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that minLength/maxLength properties are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/32f86d35f7cd177b6e4525a7ae97909888d9fee4\"\u003e32f86d35f7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003eoptimize \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64351\"\u003e#64351\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2739b7975ba40a8cfc3b00f0c444a3a147f7f553\"\u003e2739b7975b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd referrerPolicy option to HttpResource (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64283\"\u003e#64283\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/861cee34e0e9b5562cfe70d245f30b7ddea7d8fd\"\u003e861cee34e0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds migration for deprecated router testing module (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64217\"\u003e#64217\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ffcfb625a0417faba091ae9dbd0156e9f241b43\"\u003e1ffcfb625a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds migration for deprecated router testing module (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64217\"\u003e#64217\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e99bbd3d2a391b5d531be65f534cbabdcf0be516\"\u003ee99bbd3d2a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emigrating input with more than 1 usage in a method (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64367\"\u003e#64367\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e1da41ffdfd984f844c9528ead2d66fd83749aed\"\u003ee1da41ffdf\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eScroll restoration should use instant scroll behavior for traversals (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64299\"\u003e#64299\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/5f4f6244772849b6f7846a6e96240e95eeca1c9c\"\u003e\u003ccode\u003e5f4f624\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(core): add debug name to resource (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64172\"\u003e#64172\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64418\"\u003e#64418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/623c2847bead8b88f17a5c75926bdd1539e5744e\"\u003e\u003ccode\u003e623c284\u003c/code\u003e\u003c/a\u003e refactor(core): add debug name to resource (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64172\"\u003e#64172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ca0d05af9984f11a3b31335b5ed9b2f1ec5c40e\"\u003e\u003ccode\u003e1ca0d05\u003c/code\u003e\u003c/a\u003e docs: Adds documentation for image decoding attribute (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64261\"\u003e#64261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003ccode\u003e9515a70\u003c/code\u003e\u003c/a\u003e fix(core): fix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/423cc17a76ab325ac53d448486e272e91a6590df\"\u003e\u003ccode\u003e423cc17\u003c/code\u003e\u003c/a\u003e refactor(common): trim undefined from locale data. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63520\"\u003e#63520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b05552fc7a97c5645858cc36c24031f5c21993f1\"\u003e\u003ccode\u003eb05552f\u003c/code\u003e\u003c/a\u003e docs: add documentation for NG02802 warning about HttpTransferCache headers (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/1b7f53021f7da3f84fa9d26c463b7dbee925f470\"\u003e\u003ccode\u003e1b7f530\u003c/code\u003e\u003c/a\u003e build: add a noDuplicateEnumValue rule (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63483\"\u003e#63483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a7725ee4c91641ef92b19f0fd35dc0fc000bc84\"\u003e\u003ccode\u003e7a7725e\u003c/code\u003e\u003c/a\u003e refactor(core): Update tests for zoneless by default (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63672\"\u003e#63672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b549cd28ae78bff43d9a1c8e576ed9ca480174c4\"\u003e\u003ccode\u003eb549cd2\u003c/code\u003e\u003c/a\u003e refactor(bazel): reduce build deps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63348\"\u003e#63348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e8d9bc511966a91bd6fbac912d5809f027525c2f\"\u003e\u003ccode\u003ee8d9bc5\u003c/code\u003e\u003c/a\u003e refactor(http): rework the \u003ccode\u003eHttpEvent\u003c/code\u003e union to improve narrowing. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63267\"\u003e#63267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.3.6/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/compiler` from 19.2.14 to 20.3.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.6\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/911d6822cb18dabf4f72312dfc2e2ef9904bf6c2\"\u003e\u003cimg src=\"https://img.shields.io/badge/911d6822cb-fix-green\" alt=\"fix - 911d6822cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate animation scheduling (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64441\"\u003e#64441\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ece42866d0ee8240e73ebcef79ba47378777368\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ece42866d-fix-green\" alt=\"fix - 2ece42866d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003eDomEventsPlugin\u003c/code\u003e should always be the last plugin to be called for \u003ccode\u003esupports()\u003c/code\u003e. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/50394\"\u003e#50394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8dec92ff9f1055c6b4fc4e767d8b1b408ac28e67\"\u003e\u003cimg src=\"https://img.shields.io/badge/8dec92ff9f-fix-green\" alt=\"fix - 8dec92ff9f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63957\"\u003e#63957\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64317\"\u003e#64317\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c2e817b0efb6f617312936b756ace2c85139d1fc\"\u003e\u003cimg src=\"https://img.shields.io/badge/c2e817b0ef-perf-orange\" alt=\"perf - c2e817b0ef\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix performance of \u0026quot;interpolated signal not invoked\u0026quot; check (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64410\"\u003e#64410\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f15cfa4cc414f1d2f4b126bdfc26d74922732672\"\u003e\u003cimg src=\"https://img.shields.io/badge/f15cfa4cc4-fix-green\" alt=\"fix - f15cfa4cc4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efixes regression in \u003ccode\u003eanimate.leave\u003c/code\u003e function bindings (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64413\"\u003e#64413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d54dd674ca9db874c95027161b8080bd37250af6\"\u003e\u003cimg src=\"https://img.shields.io/badge/d54dd674ca-fix-green\" alt=\"fix - d54dd674ca\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePrevents early style pruning with leave animations (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64335\"\u003e#64335\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/554573e5248a72f73df1468e992da08ce5f6112d\"\u003e\u003cimg src=\"https://img.shields.io/badge/554573e524-fix-green\" alt=\"fix - 554573e524\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emigrating input with more than 1 usage in a method (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64367\"\u003e#64367\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2c79ca0b579d99346c267e6b61789699e8656dc5\"\u003e\u003cimg src=\"https://img.shields.io/badge/2c79ca0b57-fix-green\" alt=\"fix - 2c79ca0b57\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove error for no matching files in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64253\"\u003e#64253\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64314\"\u003e#64314\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e4bcc7d22d4699a33d6648e628fb65a38d0ad8f\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e4bcc7d22-fix-green\" alt=\"fix - 6e4bcc7d22\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eScroll restoration should use instant scroll behavior for traversals (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64299\"\u003e#64299\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.4\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/853ed169a8a1392ef2da7790181fb8e100f59519\"\u003e\u003cimg src=\"https://img.shields.io/badge/853ed169a8-fix-green\" alt=\"fix - 853ed169a8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eensure missing leave animations don't queue leave animations (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64226\"\u003e#64226\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6fed986b7a8f22dfe81d94b1e55490a278e6d82a\"\u003e\u003cimg src=\"https://img.shields.io/badge/6fed986b7a-fix-green\" alt=\"fix - 6fed986b7a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eFixes animations in conjunction with content projection (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63776\"\u003e#63776\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/76fe5599fe8e034c2a5a432608785a53018e23d2\"\u003e\u003cimg src=\"https://img.shields.io/badge/76fe5599fe-fix-green\" alt=\"fix - 76fe5599fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle undefined CSS time values in parseCssTimeUnitsToMs function (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64181\"\u003e#64181\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3b959105be04d7b11a1eb1035f1938bd0c43fe8b\"\u003e\u003cimg src=\"https://img.shields.io/badge/3b959105be-fix-green\" alt=\"fix - 3b959105be\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent early exit from leave animations when multiple transitions are present (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64225\"\u003e#64225\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65884895fff5bc499974849e9ec5a5792eb9e36c\"\u003e\u003cimg src=\"https://img.shields.io/badge/65884895ff-fix-green\" alt=\"fix - 65884895ff\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003epreserve component imports when pruning NgModules in standalone migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64186\"\u003e#64186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.3\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f51ab32fb3000ae34c077b049ff2f7b8e3e22d14\"\u003e\u003cimg src=\"https://img.shields.io/badge/f51ab32fb3-fix-green\" alt=\"fix - f51ab32fb3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erecover template literals with broken expressions (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64150\"\u003e#64150\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.6 (2025-10-16)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/911d6822cb18dabf4f72312dfc2e2ef9904bf6c2\"\u003e911d6822cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate animation scheduling (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64441\"\u003e#64441\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ece42866d0ee8240e73ebcef79ba47378777368\"\u003e2ece42866d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003eDomEventsPlugin\u003c/code\u003e should always be the last plugin to be called for \u003ccode\u003esupports()\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/angular/angular/pull/50394\"\u003e#50394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.8 (2025-10-15)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/563dbd998c86e850b3c4dde4c7cee00d7c9d7581\"\u003e563dbd998c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds diagnostic for misconfigured \u003ccode\u003e@defer\u003c/code\u003e triggers (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64069\"\u003e#64069\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab98b2425f4c4cb59927aa686818ecee99e634c7\"\u003eab98b2425f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63957\"\u003e#63957\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49377d274afb2ae039d6ac81184104f448e01d8e\"\u003e49377d274a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003efix performance of \u0026quot;interpolated signal not invoked\u0026quot; check (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64410\"\u003e#64410\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2a7a5de53fd6fb5714c06c63dd1dad5718086083\"\u003e2a7a5de53f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAllow passing application providers in \u003ccode\u003ebootstrapModule\u003c/code\u003e options (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64354\"\u003e#64354\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ad2376435b4bcfdb695d841272f8234ab2a7cca5\"\u003ead2376435b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport IntersectionObserver options in viewport triggers (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64130\"\u003e#64130\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab415f3d7f23cef8e00595e9cf6af2c8b764a8ae\"\u003eab415f3d7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003econtrol not recognized when input has directive injecting ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64368\"\u003e#64368\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ed6c9396049adde45ac8707a9dc7f9a7f4b7b01\"\u003e0ed6c93960\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efixes regression in \u003ccode\u003eanimate.leave\u003c/code\u003e function bindings (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64413\"\u003e#64413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e2281023780297f29cfff087aeea913bfc686cd7\"\u003ee228102378\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ePrevents early style pruning with leave animations (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64335\"\u003e#64335\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f4d1017c25813b290697d8e1a829983a7b1bca27\"\u003ef4d1017c25\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that common field states are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/acd7c83597ad376ec9a48421b3b291951ca2d75e\"\u003eacd7c83597\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that min/max properties are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/71e8672837eb6c2da2570eb2341e896fbf7ca5a3\"\u003e71e8672837\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that minLength/maxLength properties are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/32f86d35f7cd177b6e4525a7ae97909888d9fee4\"\u003e32f86d35f7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003eoptimize \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64351\"\u003e#64351\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2739b7975ba40a8cfc3b00f0c444a3a147f7f553\"\u003e2739b7975b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd referrerPolicy option to HttpResource (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64283\"\u003e#64283\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/861cee34e0e9b5562cfe70d245f30b7ddea7d8fd\"\u003e861cee34e0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds migration for deprecated router testing module (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64217\"\u003e#64217\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ffcfb625a0417faba091ae9dbd0156e9f241b43\"\u003e1ffcfb625a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds migration for deprecated router testing module (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64217\"\u003e#64217\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e99bbd3d2a391b5d531be65f534cbabdcf0be516\"\u003ee99bbd3d2a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emigrating input with more than 1 usage in a method (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64367\"\u003e#64367\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e1da41ffdfd984f844c9528ead2d66fd83749aed\"\u003ee1da41ffdf\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eScroll restoration should use instant scroll behavior for traversals (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64299\"\u003e#64299\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b4b19b60af9053674a75f4da89be208d3f9c3b88\"\u003e\u003ccode\u003eb4b19b6\u003c/code\u003e\u003c/a\u003e refactor(compiler): Improve pipe in track expression error (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64321\"\u003e#64321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/2342de8fac9a19944f9f2e2c0499ec270c9b3476\"\u003e\u003ccode\u003e2342de8\u003c/code\u003e\u003c/a\u003e refactor(compiler): expose member decorator identifiers...\n\n_Description has been truncated_","html_url":"https://github.com/Legal-and-General/canopy/pull/1615","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Legal-and-General%2Fcanopy/issues/1615","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1615/packages"},{"uuid":"3518411851","node_id":"PR_kwDOEX7hus6t58xV","number":1601,"state":"closed","title":"npm(deps): bump the npm group across 1 directory with 35 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2025-10-16T16:50:40.000Z","author_association":null,"state_reason":null,"created_at":"2025-10-15T14:49:13.000Z","updated_at":"2025-10-16T16:50:42.000Z","time_to_close":93687,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"npm(deps): bump","group_name":"npm","update_count":35,"packages":[{"name":"core-js","old_version":"3.42.0","new_version":"3.46.0","repository_url":"https://github.com/zloirock/core-js"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@commitlint/cli","old_version":"19.8.1","new_version":"20.1.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@commitlint/config-angular","old_version":"19.8.1","new_version":"20.0.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@commitlint/config-conventional","old_version":"19.8.1","new_version":"20.0.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@commitlint/prompt","old_version":"19.8.1","new_version":"20.1.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@semantic-release/github","old_version":"11.0.2","new_version":"12.0.0","repository_url":"https://github.com/semantic-release/github"},{"name":"@semantic-release/npm","old_version":"12.0.1","new_version":"13.0.0","repository_url":"https://github.com/semantic-release/npm"},{"name":"@storybook/addon-a11y","old_version":"9.0.18","new_version":"9.1.10","repository_url":"https://github.com/storybookjs/storybook"},{"name":"@storybook/addon-docs","old_version":"9.0.18","new_version":"9.1.10","repository_url":"https://github.com/storybookjs/storybook"},{"name":"@storybook/angular","old_version":"9.0.18","new_version":"9.1.10","repository_url":"https://github.com/storybookjs/storybook"},{"name":"@stylistic/eslint-plugin","old_version":"4.2.0","new_version":"5.4.0","repository_url":"https://github.com/eslint-stylistic/eslint-stylistic"},{"name":"@types/node","old_version":"22.15.19","new_version":"22.18.10","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.32.1","new_version":"8.46.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.32.1","new_version":"8.46.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.26.0","new_version":"9.37.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-import","old_version":"2.31.0","new_version":"2.32.0","repository_url":"https://github.com/import-js/eslint-plugin-import"},{"name":"eslint-plugin-storybook","old_version":"9.0.17","new_version":"9.1.10","repository_url":"https://github.com/storybookjs/storybook"},{"name":"eslint-plugin-unused-imports","old_version":"4.1.4","new_version":"4.2.0","repository_url":"https://github.com/sweepline/eslint-plugin-unused-imports"},{"name":"globals","old_version":"16.1.0","new_version":"16.4.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"jest","old_version":"30.1.3","new_version":"30.2.0","repository_url":"https://github.com/jestjs/jest"},{"name":"lint-staged","old_version":"16.0.0","new_version":"16.2.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"ng-mocks","old_version":"14.13.5","new_version":"14.14.0","repository_url":"https://github.com/help-me-mom/ng-mocks"},{"name":"ng-packagr","old_version":"19.2.2","new_version":"20.3.0","repository_url":"https://github.com/ng-packagr/ng-packagr"},{"name":"prettier","old_version":"3.5.3","new_version":"3.6.2","repository_url":"https://github.com/prettier/prettier"},{"name":"pretty-quick","old_version":"4.1.1","new_version":"4.2.2","repository_url":"https://github.com/prettier/pretty-quick"},{"name":"sass","old_version":"1.89.0","new_version":"1.93.2","repository_url":"https://github.com/sass/dart-sass"},{"name":"storybook","old_version":"9.0.18","new_version":"9.1.10","repository_url":"https://github.com/storybookjs/storybook"},{"name":"stylelint","old_version":"16.19.1","new_version":"16.25.0","repository_url":"https://github.com/stylelint/stylelint"},{"name":"stylelint-config-recommended","old_version":"16.0.0","new_version":"17.0.0","repository_url":"https://github.com/stylelint/stylelint-config-recommended"},{"name":"svgo","old_version":"3.3.2","new_version":"4.0.0","repository_url":"https://github.com/svg/svgo"},{"name":"webpack","old_version":"5.99.8","new_version":"5.102.1","repository_url":"https://github.com/webpack/webpack"},{"name":"webpack-remove-empty-scripts","old_version":"1.0.4","new_version":"1.1.1","repository_url":"https://github.com/webdiscus/webpack-remove-empty-scripts"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm group with 33 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) | `3.42.0` | `3.46.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@commitlint/cli](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli) | `19.8.1` | `20.1.0` |\n| [@commitlint/config-angular](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-angular) | `19.8.1` | `20.0.0` |\n| [@commitlint/config-conventional](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional) | `19.8.1` | `20.0.0` |\n| [@commitlint/prompt](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/prompt) | `19.8.1` | `20.1.0` |\n| [@semantic-release/github](https://github.com/semantic-release/github) | `11.0.2` | `12.0.0` |\n| [@semantic-release/npm](https://github.com/semantic-release/npm) | `12.0.1` | `13.0.0` |\n| [@storybook/addon-a11y](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y) | `9.0.18` | `9.1.10` |\n| [@storybook/addon-docs](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/docs) | `9.0.18` | `9.1.10` |\n| [@storybook/angular](https://github.com/storybookjs/storybook/tree/HEAD/code/frameworks/angular) | `9.0.18` | `9.1.10` |\n| [@stylistic/eslint-plugin](https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin) | `4.2.0` | `5.4.0` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `22.15.19` | `22.18.10` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.32.1` | `8.46.1` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.32.1` | `8.46.1` |\n| [eslint](https://github.com/eslint/eslint) | `9.26.0` | `9.37.0` |\n| [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) | `2.31.0` | `2.32.0` |\n| [eslint-plugin-storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/lib/eslint-plugin) | `9.0.17` | `9.1.10` |\n| [eslint-plugin-unused-imports](https://github.com/sweepline/eslint-plugin-unused-imports) | `4.1.4` | `4.2.0` |\n| [globals](https://github.com/sindresorhus/globals) | `16.1.0` | `16.4.0` |\n| [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) | `30.1.3` | `30.2.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.0.0` | `16.2.4` |\n| [ng-mocks](https://github.com/help-me-mom/ng-mocks) | `14.13.5` | `14.14.0` |\n| [ng-packagr](https://github.com/ng-packagr/ng-packagr) | `19.2.2` | `20.3.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.5.3` | `3.6.2` |\n| [pretty-quick](https://github.com/prettier/pretty-quick) | `4.1.1` | `4.2.2` |\n| [sass](https://github.com/sass/dart-sass) | `1.89.0` | `1.93.2` |\n| [storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/core) | `9.0.18` | `9.1.10` |\n| [stylelint](https://github.com/stylelint/stylelint) | `16.19.1` | `16.25.0` |\n| [stylelint-config-recommended](https://github.com/stylelint/stylelint-config-recommended) | `16.0.0` | `17.0.0` |\n| [svgo](https://github.com/svg/svgo) | `3.3.2` | `4.0.0` |\n| [webpack](https://github.com/webpack/webpack) | `5.99.8` | `5.102.1` |\n| [webpack-remove-empty-scripts](https://github.com/webdiscus/webpack-remove-empty-scripts) | `1.0.4` | `1.1.1` |\n\n\nUpdates `core-js` from 3.42.0 to 3.46.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zloirock/core-js/blob/master/CHANGELOG.md\"\u003ecore-js's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/zloirock/core-js/releases/tag/v3.46.0\"\u003e3.46.0 - 2025.10.09\u003c/a\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChanges \u003ca href=\"https://github.com/zloirock/core-js/compare/v3.45.1...v3.46.0\"\u003ev3.45.1...v3.46.0\u003c/a\u003e (116 commits)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert stage 3 proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://bugzilla.mozilla.org/show_bug.cgi?id=1988369\"\u003ea FF \u003ccode\u003eWeakMap.prototype.getOrInsertComputed\u003c/code\u003e bug with callback calling before validation a key\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-iterator-chunking\"\u003e\u003ccode\u003eIterator\u003c/code\u003e chunking proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eIterator.prototype.chunks\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eIterator.prototype.windows\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stage 2.7, \u003ca href=\"https://github.com/tc39/proposals/commit/08e583103c6c244c05a26d9fee518ef8145ba2f6\"\u003eSeptember 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eIterator.prototype.sliding\u003c/code\u003e method replaced with an extra parameter of \u003ccode\u003eIterator.prototype.windows\u003c/code\u003e method, [tc39/proposal-iterator-chunking/\u003ca href=\"https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/24\"\u003e#24\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/tc39/proposal-iterator-chunking/pull/24\"\u003etc39/proposal-iterator-chunking#24\u003c/a\u003e), [tc39/proposal-iterator-chunking/\u003ca href=\"https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/26\"\u003e#26\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/tc39/proposal-iterator-chunking/pull/26\"\u003etc39/proposal-iterator-chunking#26\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://github.com/tc39/proposal-joint-iteration\"\u003e\u003ccode\u003eIterator.zip\u003c/code\u003e and \u003ccode\u003eIterator.zipKeyed\u003c/code\u003e\u003c/a\u003e behavior with \u003ccode\u003emode: 'longest'\u003c/code\u003e option, \u003ca href=\"https://redirect.github.com/zloirock/core-js/issues/1469\"\u003e#1469\u003c/a\u003e, thanks \u003ca href=\"https://github.com/lionel-rowe\"\u003e\u003cstrong\u003e\u003ccode\u003e@​lionel-rowe\u003c/code\u003e\u003c/strong\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed work of \u003ccode\u003eObject.groupBy\u003c/code\u003e and \u003ca href=\"https://github.com/tc39/proposal-joint-iteration\"\u003e\u003ccode\u003eIterator.zipKeyed\u003c/code\u003e\u003c/a\u003e together with \u003ccode\u003eSymbol\u003c/code\u003e polyfill - some cases of symbol keys on result \u003ccode\u003enull\u003c/code\u003e-prototype object were able to leak out to \u003ccode\u003efor-in\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCompat data improvements:\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert proposal\u003c/a\u003e features marked as shipped from FF144\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://redirect.github.com/nodejs/node/pull/59896\"\u003eNode 25.0\u003c/a\u003e compat data mapping\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://github.com/denoland/deno/releases/tag/v2.5.0\"\u003eDeno 2.5\u003c/a\u003e compat data mapping\u003c/li\u003e\n\u003cli\u003eUpdated Electron 39 compat data mapping\u003c/li\u003e\n\u003cli\u003eUpdated Opera 121+ compat data mapping\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://forums.opera.com/topic/86530/opera-for-android-92\"\u003eOpera Android 92\u003c/a\u003e compat data mapping\u003c/li\u003e\n\u003cli\u003eAdded Oculus Quest Browser 40 compat data mapping\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/zloirock/core-js/releases/tag/v3.45.1\"\u003e3.45.1 - 2025.08.20\u003c/a\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChanges \u003ca href=\"https://github.com/zloirock/core-js/compare/v3.45.0...v3.45.1\"\u003ev3.45.0...v3.45.1\u003c/a\u003e (30 commits)\u003c/li\u003e\n\u003cli\u003eFixed a conflict of native methods from \u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert proposal\u003c/a\u003e with polyfilled methods in the pure version\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ebugs\u003c/code\u003e fields to \u003ccode\u003epackage.json\u003c/code\u003e of all packages\u003c/li\u003e\n\u003cli\u003eCompat data improvements:\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert proposal\u003c/a\u003e features marked as shipped from Bun 1.2.20\u003c/li\u003e\n\u003cli\u003eAdded Samsung Internet 29 compat data mapping\u003c/li\u003e\n\u003cli\u003eAdded Electron 39 compat data mapping\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/zloirock/core-js/releases/tag/v3.45.0\"\u003e3.45.0 - 2025.08.04\u003c/a\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChanges \u003ca href=\"https://github.com/zloirock/core-js/compare/v3.44.0...v3.45.0\"\u003ev3.44.0...v3.45.0\u003c/a\u003e (70 commits)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-arraybuffer-base64\"\u003e\u003ccode\u003eUint8Array\u003c/code\u003e to / from base64 and hex proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.fromBase64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.fromHex\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.setFromBase64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.setFromHex\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.toBase64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.toHex\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stable ES, \u003ca href=\"https://github.com/tc39/proposals/commit/d41fe182cdb90da3076ab711aae3944ed86bcf18\"\u003eJuly 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ees.\u003c/code\u003e namespace modules, \u003ccode\u003e/es/\u003c/code\u003e and \u003ccode\u003e/stable/\u003c/code\u003e namespaces entries\u003c/li\u003e\n\u003cli\u003eAdded detection of a Webkit bug: \u003ccode\u003eUint8Array\u003c/code\u003e fromBase64 / setFromBase64 does not throw an error on incorrect length of base64 string\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-math-sum\"\u003e\u003ccode\u003eMath.sumPrecise\u003c/code\u003e proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMath.sumPrecise\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stable ES, \u003ca href=\"https://github.com/tc39/proposals/commit/2616413ace9074bfd444adee9501fae4c8d66fcb\"\u003eJuly 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ees.\u003c/code\u003e namespace module, \u003ccode\u003e/es/\u003c/code\u003e and \u003ccode\u003e/stable/\u003c/code\u003e namespaces entries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-iterator-sequencing\"\u003e\u003ccode\u003eIterator\u003c/code\u003e sequencing proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/98d9dc499ffa8fe7543b8cb8f613351e5b3ab8de\"\u003e\u003ccode\u003e98d9dc4\u003c/code\u003e\u003c/a\u003e v3.46.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/38420bdad4bda36eea0c697bb5cecd62caa53911\"\u003e\u003ccode\u003e38420bd\u003c/code\u003e\u003c/a\u003e add \u003ccode\u003ehomepage\u003c/code\u003e field to \u003ccode\u003epackage.json\u003c/code\u003es\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/a7aee4c58a7eec4fb5958fcb6ba4f07d14446f1d\"\u003e\u003ccode\u003ea7aee4c\u003c/code\u003e\u003c/a\u003e some fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/12b441d64df944e45bc6d709b6a9e3c2c0ce72ea\"\u003e\u003ccode\u003e12b441d\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eIterator.zip\u003c/code\u003e and \u003ccode\u003eIterator.zipKeyed\u003c/code\u003e behavior with \u003ccode\u003emode: 'longest'\u003c/code\u003e op...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/15d7a7da70c80bfa3e7fbc2a618acc8b07ce8034\"\u003e\u003ccode\u003e15d7a7d\u003c/code\u003e\u003c/a\u003e update copyright\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/9eaa6ad79a76c03703ea01bc16beca42ee44e054\"\u003e\u003ccode\u003e9eaa6ad\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/1451\"\u003e#1451\u003c/a\u003e from zloirock/iterator-chunking-stage-2-7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/686808fb6ade734d86f5dc9443869550b5490759\"\u003e\u003ccode\u003e686808f\u003c/code\u003e\u003c/a\u003e clarify versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/a21ab8d81f8ee58e64e0ec5c9279725483315ed5\"\u003e\u003ccode\u003ea21ab8d\u003c/code\u003e\u003c/a\u003e FF \u003ccode\u003eWeakMap.prototype.getOrInsertComputed\u003c/code\u003e was fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/747e64806ff04a09b5f3d7990dfcd80afcd91656\"\u003e\u003ccode\u003e747e648\u003c/code\u003e\u003c/a\u003e Fix object property creation for potential Symbol keys\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/6bfb3cde052a1ad9ec3666e47ddd97ef6dfcd430\"\u003e\u003ccode\u003e6bfb3cd\u003c/code\u003e\u003c/a\u003e move \u003ccode\u003eIterator\u003c/code\u003e chunking proposal to stage 2.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/zloirock/core-js/commits/v3.46.0/packages/core-js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/cli` from 19.8.1 to 20.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/cli\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.1.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\"\u003e20.1.0\u003c/a\u003e (2025-09-30)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(config-pnpm-scopes): allow global scope by \u003ca href=\"https://github.com/ya2s\"\u003e\u003ccode\u003e@​ya2s\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4553\"\u003econventional-changelog/commitlint#4553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix(resolve-extends): add import attribute for JSON config files by \u003ca href=\"https://github.com/macieklamberski\"\u003e\u003ccode\u003e@​macieklamberski\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4551\"\u003econventional-changelog/commitlint#4551\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ya2s\"\u003e\u003ccode\u003e@​ya2s\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4553\"\u003econventional-changelog/commitlint#4553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/macieklamberski\"\u003e\u003ccode\u003e@​macieklamberski\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4551\"\u003econventional-changelog/commitlint#4551\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/cli/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/cli\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\"\u003e20.1.0\u003c/a\u003e (2025-09-30)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/cli\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/cli\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/a8e86d252ad9e77e0b9bd929fd8409f824727f11\"\u003e\u003ccode\u003ea8e86d2\u003c/code\u003e\u003c/a\u003e v20.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.1.0/@commitlint/cli\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/config-angular` from 19.8.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/config-angular\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-angular/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: add TypeScript support and configuration for pnpm scopes by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4544\"\u003econventional-changelog/commitlint#4544\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.8.1...v19.9.0\"\u003e19.9.0\u003c/a\u003e (2025-08-26)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebug(config-pnpm-scopes): migrate package to TypeScript by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4541\"\u003econventional-changelog/commitlint#4541\u003c/a\u003e\n(type got messed up)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChore, docs, etc.\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add a note about configuration under node24 by \u003ca href=\"https://github.com/sodle\"\u003e\u003ccode\u003e@​sodle\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4406\"\u003econventional-changelog/commitlint#4406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add Ubuntu 24.04 and Windows 2025 to CI by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4435\"\u003econventional-changelog/commitlint#4435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: refactor CI setup example of GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4439\"\u003econventional-changelog/commitlint#4439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: use tags for immutable github actions by \u003ca href=\"https://github.com/Fdawgs\"\u003e\u003ccode\u003e@​Fdawgs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4458\"\u003econventional-changelog/commitlint#4458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: migrate \u003ccode\u003eeslint-plugin-import\u003c/code\u003e to \u003ccode\u003eeslint-plugin-import-x\u003c/code\u003e by \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4473\"\u003econventional-changelog/commitlint#4473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add commitlint GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4440\"\u003econventional-changelog/commitlint#4440\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-angular/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/config-angular\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/config-angular\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.0.0/@commitlint/config-angular\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/config-conventional` from 19.8.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/config-conventional\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: add TypeScript support and configuration for pnpm scopes by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4544\"\u003econventional-changelog/commitlint#4544\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.8.1...v19.9.0\"\u003e19.9.0\u003c/a\u003e (2025-08-26)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebug(config-pnpm-scopes): migrate package to TypeScript by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4541\"\u003econventional-changelog/commitlint#4541\u003c/a\u003e\n(type got messed up)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChore, docs, etc.\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add a note about configuration under node24 by \u003ca href=\"https://github.com/sodle\"\u003e\u003ccode\u003e@​sodle\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4406\"\u003econventional-changelog/commitlint#4406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add Ubuntu 24.04 and Windows 2025 to CI by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4435\"\u003econventional-changelog/commitlint#4435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: refactor CI setup example of GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4439\"\u003econventional-changelog/commitlint#4439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: use tags for immutable github actions by \u003ca href=\"https://github.com/Fdawgs\"\u003e\u003ccode\u003e@​Fdawgs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4458\"\u003econventional-changelog/commitlint#4458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: migrate \u003ccode\u003eeslint-plugin-import\u003c/code\u003e to \u003ccode\u003eeslint-plugin-import-x\u003c/code\u003e by \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4473\"\u003econventional-changelog/commitlint#4473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add commitlint GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4440\"\u003econventional-changelog/commitlint#4440\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-conventional/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/config-conventional\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/config-conventional\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.0.0/@commitlint/config-conventional\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/prompt` from 19.8.1 to 20.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/prompt\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.1.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\"\u003e20.1.0\u003c/a\u003e (2025-09-30)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(config-pnpm-scopes): allow global scope by \u003ca href=\"https://github.com/ya2s\"\u003e\u003ccode\u003e@​ya2s\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4553\"\u003econventional-changelog/commitlint#4553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix(resolve-extends): add import attribute for JSON config files by \u003ca href=\"https://github.com/macieklamberski\"\u003e\u003ccode\u003e@​macieklamberski\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4551\"\u003econventional-changelog/commitlint#4551\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ya2s\"\u003e\u003ccode\u003e@​ya2s\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4553\"\u003econventional-changelog/commitlint#4553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/macieklamberski\"\u003e\u003ccode\u003e@​macieklamberski\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4551\"\u003econventional-changelog/commitlint#4551\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/prompt/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/prompt/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/prompt\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\"\u003e20.1.0\u003c/a\u003e (2025-09-30)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/prompt\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/prompt\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/a8e86d252ad9e77e0b9bd929fd8409f824727f11\"\u003e\u003ccode\u003ea8e86d2\u003c/code\u003e\u003c/a\u003e v20.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.1.0/@commitlint/prompt\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@semantic-release/github` from 11.0.2 to 12.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/semantic-release/github/releases\"\u003e\u003ccode\u003e@​semantic-release/github\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev12.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/github/compare/v11.0.6...v12.0.0\"\u003e12.0.0\u003c/a\u003e (2025-10-15)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e drop support for node versions v20, v21, and v23 (\u003ca href=\"https://github.com/semantic-release/github/commit/6e2ac27ef2e2807a1d3af0962681aaac41218398\"\u003e6e2ac27\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e raise the minimum node version requirement for the v24 range (\u003ca href=\"https://github.com/semantic-release/github/commit/4d6924db6096c15089bb98b5689d729f355f8730\"\u003e4d6924d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove github search api consumption (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1037\"\u003e#1037\u003c/a\u003e) (\u003ca href=\"https://github.com/semantic-release/github/commit/d260bfd631498f6e63f12c958f7eacb40bde1d34\"\u003ed260bfd\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1022\"\u003e#1022\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e the minimum node version for the v24 range is now v24.10.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@semantic-release/github\u003c/code\u003e no longer consumes the GitHub Search API in the plugin\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e a minimum of node v22.14 is now required\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.0-beta.4\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/github/compare/v12.0.0-beta.3...v12.0.0-beta.4\"\u003e12.0.0-beta.4\u003c/a\u003e (2025-10-13)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e raise the minimum node version requirement for the v24 range (\u003ca href=\"https://github.com/semantic-release/github/commit/4d6924db6096c15089bb98b5689d729f355f8730\"\u003e4d6924d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e the minimum node version for the v24 range is now v24.10.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.0-beta.3\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/github/compare/v12.0.0-beta.2...v12.0.0-beta.3\"\u003e12.0.0-beta.3\u003c/a\u003e (2025-10-13)\u003c/h1\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCheck failCommentCondition in \u0026quot;success\u0026quot; step (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1026\"\u003e#1026\u003c/a\u003e) (\u003ca href=\"https://github.com/semantic-release/github/commit/d77b6f4e856ee2303b52a47160404f499ee14a62\"\u003ed77b6f4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e switch to tinyglobby (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1041\"\u003e#1041\u003c/a\u003e) (\u003ca href=\"https://github.com/semantic-release/github/commit/ed9069805ceb823c65d4b674614e5e320138bb1f\"\u003eed90698\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove github search api consumption (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1086\"\u003e#1086\u003c/a\u003e) (\u003ca href=\"https://github.com/semantic-release/github/commit/95ea166f54d7d2e41967a86aeddc211cba5b3321\"\u003e95ea166\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.0-beta.2\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/github/compare/v12.0.0-beta.1...v12.0.0-beta.2\"\u003e12.0.0-beta.2\u003c/a\u003e (2025-07-11)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove github search api consumption (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1037\"\u003e#1037\u003c/a\u003e) (\u003ca href=\"https://github.com/semantic-release/github/commit/d260bfd631498f6e63f12c958f7eacb40bde1d34\"\u003ed260bfd\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1022\"\u003e#1022\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/c98f1c813f019871d3923f93d987575acfd049d9\"\u003e\u003ccode\u003ec98f1c8\u003c/code\u003e\u003c/a\u003e promote to stable (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1100\"\u003e#1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/ebe75ba5c6c804f54fa51b0c874cada41d325563\"\u003e\u003ccode\u003eebe75ba\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into beta\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/30508781dc44585d05be55e71a2791da87e201a0\"\u003e\u003ccode\u003e3050878\u003c/code\u003e\u003c/a\u003e ci(action): update actions/setup-node action to v6 (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1101\"\u003e#1101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/68b530a5e8a80392647b57690c6fc6ec727f040f\"\u003e\u003ccode\u003e68b530a\u003c/code\u003e\u003c/a\u003e ci(node-versions): adjust node version matrix to match updated supported ranges\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/4d6924db6096c15089bb98b5689d729f355f8730\"\u003e\u003ccode\u003e4d6924d\u003c/code\u003e\u003c/a\u003e feat(node-versions): raise the minimum node version requirement for the v24 r...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/518a17a4e1a144f32eaae92e10004cda0d3e5b78\"\u003e\u003ccode\u003e518a17a\u003c/code\u003e\u003c/a\u003e Merge branch 'master' of github.com:semantic-release/github into beta\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/72bc1cd61f7b3b9da5783e8bd01889421e058ad1\"\u003e\u003ccode\u003e72bc1cd\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1099\"\u003e#1099\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/718b2a25610a893b0ecb9a2e0ab525e2f5f0d582\"\u003e\u003ccode\u003e718b2a2\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency publint to v0.3.14 (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1098\"\u003e#1098\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/258610d10e5f29037eda8ec4ac03d383d825ca98\"\u003e\u003ccode\u003e258610d\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1097\"\u003e#1097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/ef4a3c9c4888daa79be2b2a56eea97d32a224232\"\u003e\u003ccode\u003eef4a3c9\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1096\"\u003e#1096\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/semantic-release/github/compare/v11.0.2...v12.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@semantic-release/npm` from 12.0.1 to 13.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/semantic-release/npm/releases\"\u003e\u003ccode\u003e@​semantic-release/npm\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev13.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/npm/compare/v12.0.2...v13.0.0\"\u003e13.0.0\u003c/a\u003e (2025-10-13)\u003c/h1\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update npm to v11 (\u003ca href=\"https://github.com/semantic-release/npm/commit/debc7c58e51d0c991de92d64f412ac3904a60ed3\"\u003edebc7c5\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/semantic-release/npm/issues/966\"\u003e#966\u003c/a\u003e \u003ca href=\"https://redirect.github.com/semantic-release/npm/issues/966\"\u003e#966\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update to the latest version of npm (\u003ca href=\"https://github.com/semantic-release/npm/commit/1b25d6c1d6922a9f0f61498c42bd114395dba7c8\"\u003e1b25d6c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e drop support for node versions v20, v21, and v23\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e raise the minimum node version requirement for the v24 range (\u003ca href=\"https://github.com/semantic-release/npm/commit/935439e1efead57e0db66f7e3ae16733d93542c6\"\u003e935439e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e the minimum node version for the v24 range is now v24.10.0\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e a minimum of node v22.14 is now required\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev13.0.0-beta.4\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/npm/compare/v13.0.0-beta.3...v13.0.0-beta.4\"\u003e13.0.0-beta.4\u003c/a\u003e (2025-10-13)\u003c/h1\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update to the latest version of npm (\u003ca href=\"https://github.com/semantic-release/npm/commit/1b25d6c1d6922a9f0f61498c42bd114395dba7c8\"\u003e1b25d6c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev13.0.0-beta.3\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/npm/compare/v13.0.0-beta.2...v13.0.0-beta.3\"\u003e13.0.0-beta.3\u003c/a\u003e (2025-10-13)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e raise the minimum node version requirement for the v24 range (\u003ca href=\"https://github.com/semantic-release/npm/commit/935439e1efead57e0db66f7e3ae16733d93542c6\"\u003e935439e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e the minimum node version for the v24 range is now\nv24.10.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev13.0.0-beta.2\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/npm/compare/v13.0.0-beta.1...v13.0.0-beta.2\"\u003e13.0.0-beta.2\u003c/a\u003e (2025-10-13)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/a71fe44467ec1a30bff45ef1605f17dcc14039c0\"\u003e\u003ccode\u003ea71fe44\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/semantic-release/npm/issues/976\"\u003e#976\u003c/a\u003e from semantic-release/beta\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/6711ea3cb74ac6e903a3bd0de09f12e8ca9d79a4\"\u003e\u003ccode\u003e6711ea3\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/semantic-release/npm/issues/1013\"\u003e#1013\u003c/a\u003e from semantic-release/verify-auth\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/1b25d6c1d6922a9f0f61498c42bd114395dba7c8\"\u003e\u003ccode\u003e1b25d6c\u003c/code\u003e\u003c/a\u003e fix(deps): update to the latest version of npm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/935439e1efead57e0db66f7e3ae16733d93542c6\"\u003e\u003ccode\u003e935439e\u003c/code\u003e\u003c/a\u003e feat(node-versions): raise the minimum node version requirement for the v24 r...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/8d7149fe16ef70d6eacf9e7a3546692f9664a6c3\"\u003e\u003ccode\u003e8d7149f\u003c/code\u003e\u003c/a\u003e refactor(code-style): resolve prettier issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/5b0502c6a456fbdea79487baf0256b95564ae99b\"\u003e\u003ccode\u003e5b0502c\u003c/code\u003e\u003c/a\u003e test(integration): backfill coverage for scenario when a token is not provided\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/bc3f066513095d95db32ae0a636a0d9e0c7135e4\"\u003e\u003ccode\u003ebc3f066\u003c/code\u003e\u003c/a\u003e test(unit): backfill unit tests for existing verify-auth behaviors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/8f981787486f42ad251a24c52cde608215b03843\"\u003e\u003ccode\u003e8f98178\u003c/code\u003e\u003c/a\u003e Merge branch 'master' of github.com:semantic-release/npm into beta\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/1e5ad5e84a8f591a37b30b6d5cdc18bb7b468838\"\u003e\u003ccode\u003e1e5ad5e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/semantic-release/npm/issues/1012\"\u003e#1012\u003c/a\u003e from semantic-release/verdaccio-upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/f8a6cc5067905636aba8be8b4a1ac4e6bc851661\"\u003e\u003ccode\u003ef8a6cc5\u003c/code\u003e\u003c/a\u003e test(upgrade): update to the current major of verdaccio\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/semantic-release/npm/compare/v12.0.1...v13.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@storybook/addon-a11y` from 9.0.18 to 9.1.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/releases\"\u003e\u003ccode\u003e@​storybook/addon-a11y\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.1.10\u003c/h2\u003e\n\u003ch2\u003e9.1.10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomigrations: Add automigration for viewport and backgrounds - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31614\"\u003e#31614\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Log userAgent in onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32566\"\u003e#32566\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.9\u003c/h2\u003e\n\u003ch2\u003e9.1.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Enable experimental zoneless detection on Angular v21 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32580\"\u003e#32580\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Ignore inherited \u003ccode\u003eHTMLAttributes\u003c/code\u003e docgen when using utility types - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32173\"\u003e#32173\u003c/a\u003e, thanks \u003ca href=\"https://github.com/steciuk\"\u003e\u003ccode\u003e@​steciuk\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.8\u003c/h2\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.7\u003c/h2\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.6\u003c/h2\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.5\u003c/h2\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.4\u003c/h2\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.3\u003c/h2\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md\"\u003e\u003ccode\u003e@​storybook/addon-a11y\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.1.10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomigrations: Add automigration for viewport and backgrounds - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31614\"\u003e#31614\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Log userAgent in onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32566\"\u003e#32566\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Enable experimental zoneless detection on Angular v21 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32580\"\u003e#32580\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Ignore inherited \u003ccode\u003eHTMLAttributes\u003c/code\u003e docgen when using utility types - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32173\"\u003e#32173\u003c/a\u003e, thanks \u003ca href=\"https://github.com/steciuk\"\u003e\u003ccode\u003e@​steciuk\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMock: Catch errors when transforming preview files - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32216\"\u003e#32216\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Fix version mismatch error in Webpack - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32306\"\u003e#32306\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate traffic coming from error/upgrade links - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32287\"\u003e#32287\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate unattributed traffic from Onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32286\"\u003e#32286\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAddon Docs: Fix Symbol conversion issue in docs page and controls panel - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32220\"\u003e#32220\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/642f0cf47ed9463cecd67fdbad978113edc88196\"\u003e\u003ccode\u003e642f0cf\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.9\u0026quot; to \u0026quot;9.1.10\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/01867d0d587fe23765bbd43397d861a6e08223f8\"\u003e\u003ccode\u003e01867d0\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.8\u0026quot; to \u0026quot;9.1.9\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/28833d41b8d0e33bdc11244907fa8d14c8ddd1bf\"\u003e\u003ccode\u003e28833d4\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.7\u0026quot; to \u0026quot;9.1.8\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/006b304feb4cb0d2fd1408505ebeb5aababb0aad\"\u003e\u003ccode\u003e006b304\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.6\u0026quot; to \u0026quot;9.1.7\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/304edc38c499434140d712d8416749e75efe5dd1\"\u003e\u003ccode\u003e304edc3\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.5\u0026quot; to \u0026quot;9.1.6\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/56c04b001ee45f036ec5f1131fc8fbc553fad35d\"\u003e\u003ccode\u003e56c04b0\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.4\u0026quot; to \u0026quot;9.1.5\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/9f02684ad16e985bc5555f2e4ff4b37b1eb0c1ea\"\u003e\u003ccode\u003e9f02684\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.3\u0026quot; to \u0026quot;9.1.4\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/ce3915727c3a42d6107953b6b65f6008d704dd3d\"\u003e\u003ccode\u003ece39157\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.2\u0026quot; to \u0026quot;9.1.3\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/730bbf04edbd06d71c22959cf9c6902f98ba62a2\"\u003e\u003ccode\u003e730bbf0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y/issues/32284\"\u003e#32284\u003c/a\u003e from storybookjs/shilman/package-json-keywords\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/2bae930c307c0dea76060040deb4ca2a597c9e74\"\u003e\u003ccode\u003e2bae930\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y/issues/32283\"\u003e#32283\u003c/a\u003e from storybookjs/shilman/readme-utm-params\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/storybookjs/storybook/commits/v9.1.10/code/addons/a11y\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@storybook/addon-docs` from 9.0.18 to 9.1.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/releases\"\u003e\u003ccode\u003e@​storybook/addon-docs\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.1.10\u003c/h2\u003e\n\u003ch2\u003e9.1.10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomigrations: Add automigration for viewport and backgrounds - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31614\"\u003e#31614\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Log userAgent in onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32566\"\u003e#32566\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.9\u003c/h2\u003e\n\u003ch2\u003e9.1.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Enable experimental zoneless detection on Angular v21 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32580\"\u003e#32580\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Ignore inherited \u003ccode\u003eHTMLAttributes\u003c/code\u003e docgen when using utility types - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32173\"\u003e#32173\u003c/a\u003e, thanks \u003ca href=\"https://github.com/steciuk\"\u003e\u003ccode\u003e@​steciuk\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.8\u003c/h2\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.7\u003c/h2\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.6\u003c/h2\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.5\u003c/h2\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.4\u003c/h2\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.3\u003c/h2\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md\"\u003e\u003ccode\u003e@​storybook/addon-docs\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.1.10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomigrations: Add automigration for viewport and backgrounds - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31614\"\u003e#31614\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Log userAgent in onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32566\"\u003e#32566\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Enable experimental zoneless detection on Angular v21 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32580\"\u003e#32580\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Ignore inherited \u003ccode\u003eHTMLAttributes\u003c/code\u003e docgen when using utility types - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32173\"\u003e#32173\u003c/a\u003e, thanks \u003ca href=\"https://github.com/steciuk\"\u003e\u003ccode\u003e@​steciuk\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: A...\n\n_Description has been truncated_","html_url":"https://github.com/Legal-and-General/canopy/pull/1601","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Legal-and-General%2Fcanopy/issues/1601","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1601/packages"},{"uuid":"2879071634","node_id":"PR_kwDOOhidSs6rmyWS","number":97,"state":"closed","title":"Chore(deps): Bump the frontend-angular-dependencies group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["non-trivial","dependencies","frontend"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-10-08T07:53:13.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-10-01T17:34:24.000Z","updated_at":"2025-10-08T07:53:13.000Z","time_to_close":569929,"merged_at":"2025-10-08T07:53:13.000Z","merged_by":"frankykevin","closed_by":null,"dependency_metadata":{"prefix":"Chore(deps): Bump","group_name":"frontend-angular-dependencies","update_count":27,"packages":[{"name":"@angular/cdk","old_version":"19.2.18","new_version":"20.2.5","repository_url":"https://github.com/angular/components"},{"name":"@angular/common","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/compiler","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/core","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/forms","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/localize","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser-dynamic","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/router","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@ng-bootstrap/ng-bootstrap","old_version":"18.0.0","new_version":"19.0.1","repository_url":"https://github.com/ng-bootstrap/ng-bootstrap"},{"name":"@ng-select/ng-select","old_version":"14.9.0","new_version":"20.2.2","repository_url":"https://github.com/ng-select/ng-select"},{"name":"ngx-color","old_version":"10.0.0","new_version":"10.1.0","repository_url":"https://github.com/scttcper/ngx-color"},{"name":"ngx-cookie-service","old_version":"19.1.2","new_version":"20.1.0","repository_url":"https://github.com/stevermeister/ngx-cookie-service"},{"name":"ngx-device-detector","old_version":"9.0.0","new_version":"10.1.0","repository_url":"https://github.com/AhsanAyaz/ngx-device-detector"},{"name":"ngx-ui-tour-ng-bootstrap","old_version":"16.0.0","new_version":"17.0.1","repository_url":"https://github.com/hakimio/ngx-ui-tour"},{"name":"@angular-builders/custom-webpack","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/build-angular","old_version":"19.2.14","new_version":"20.3.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/core","old_version":"19.2.14","new_version":"20.3.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/schematics","old_version":"19.2.14","new_version":"20.3.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-eslint/builder","old_version":"19.3.0","new_version":"20.3.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin","old_version":"19.3.0","new_version":"20.3.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin-template","old_version":"19.3.0","new_version":"20.3.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/schematics","old_version":"19.3.0","new_version":"20.3.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/template-parser","old_version":"19.3.0","new_version":"20.3.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular/cli","old_version":"19.2.14","new_version":"20.3.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/compiler-cli","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"}],"path":null,"ecosystem":"npm"},"body":"Bumps the frontend-angular-dependencies group with 27 updates in the /src-ui directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/cdk](https://github.com/angular/components) | `19.2.18` | `20.2.5` |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `19.2.14` | `20.3.2` |\n| [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) | `19.2.14` | `20.3.2` |\n| [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) | `19.2.14` | `20.3.2` |\n| [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) | `19.2.14` | `20.3.2` |\n| [@angular/localize](https://github.com/angular/angular) | `19.2.14` | `20.3.2` |\n| [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) | `19.2.14` | `20.3.2` |\n| [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) | `19.2.14` | `20.3.2` |\n| [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) | `19.2.14` | `20.3.2` |\n| [@ng-bootstrap/ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap) | `18.0.0` | `19.0.1` |\n| [@ng-select/ng-select](https://github.com/ng-select/ng-select) | `14.9.0` | `20.2.2` |\n| [ngx-color](https://github.com/scttcper/ngx-color) | `10.0.0` | `10.1.0` |\n| [ngx-cookie-service](https://github.com/stevermeister/ngx-cookie-service) | `19.1.2` | `20.1.0` |\n| [ngx-device-detector](https://github.com/AhsanAyaz/ngx-device-detector) | `9.0.0` | `10.1.0` |\n| [ngx-ui-tour-ng-bootstrap](https://github.com/hakimio/ngx-ui-tour) | `16.0.0` | `17.0.1` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `19.0.1` | `20.0.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `19.2.14` | `20.3.3` |\n| [@angular-devkit/core](https://github.com/angular/angular-cli) | `19.2.14` | `20.3.3` |\n| [@angular-devkit/schematics](https://github.com/angular/angular-cli) | `19.2.14` | `20.3.3` |\n| [@angular-eslint/builder](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/builder) | `19.3.0` | `20.3.0` |\n| [@angular-eslint/eslint-plugin](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin) | `19.3.0` | `20.3.0` |\n| [@angular-eslint/eslint-plugin-template](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin-template) | `19.3.0` | `20.3.0` |\n| [@angular-eslint/schematics](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/schematics) | `19.3.0` | `20.3.0` |\n| [@angular-eslint/template-parser](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/template-parser) | `19.3.0` | `20.3.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `19.2.14` | `20.3.3` |\n| [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) | `19.2.14` | `20.3.2` |\n\n\nUpdates `@angular/cdk` from 19.2.18 to 20.2.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.2.5\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/36be42637df5021ae9afa4d097e84d83d78c197e\"\u003e\u003cimg src=\"https://img.shields.io/badge/36be42637-fix-green\" alt=\"fix - 36be42637\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e move internal tokens (\u003ca href=\"https://redirect.github.com/angular/components/issues/31907\"\u003e#31907\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3ac762be5dc180594c0681e2842e35123195feb6\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ac762be5-fix-green\" alt=\"fix - 3ac762be5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eform-field:\u003c/strong\u003e restore error message animation (\u003ca href=\"https://redirect.github.com/angular/components/issues/31774\"\u003e#31774\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/65f23c003e94d59bbb08ad81eb66d725b1b5e79a\"\u003e\u003cimg src=\"https://img.shields.io/badge/65f23c003-fix-green\" alt=\"fix - 65f23c003\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e style no data row properly (\u003ca href=\"https://redirect.github.com/angular/components/issues/31895\"\u003e#31895\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.4\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e7a0c19d09bbe38852168c1a5ffcfeed66c1da6f\"\u003e\u003cimg src=\"https://img.shields.io/badge/e7a0c19d0-fix-green\" alt=\"fix - e7a0c19d0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etabs:\u003c/strong\u003e attach content inside the zone (\u003ca href=\"https://redirect.github.com/angular/components/issues/31868\"\u003e#31868\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.3\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ec33bf8eba46b1281e6b2a814a1ce3e15475ec20\"\u003e\u003cimg src=\"https://img.shields.io/badge/ec33bf8eba-fix-green\" alt=\"fix - ec33bf8eba\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eprogress-bar:\u003c/strong\u003e avoid CSP issues due to buffer dots (\u003ca href=\"https://redirect.github.com/angular/components/issues/31818\"\u003e#31818\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/9a682653023fd3d181d4b5b318ffc13974a9bf2b\"\u003e\u003cimg src=\"https://img.shields.io/badge/9a68265302-fix-green\" alt=\"fix - 9a68265302\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eslider:\u003c/strong\u003e incorrect indicator transform origin in M3 (\u003ca href=\"https://redirect.github.com/angular/components/issues/31834\"\u003e#31834\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/442d4ca6b752eabcf60003df0f1ad6905dddad5f\"\u003e\u003cimg src=\"https://img.shields.io/badge/442d4ca6b7-fix-green\" alt=\"fix - 442d4ca6b7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edrag-drop:\u003c/strong\u003e allow axis lock to be reset (\u003ca href=\"https://redirect.github.com/angular/components/issues/31829\"\u003e#31829\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.2\u003c/h2\u003e\n\u003cp\u003eNo release notes provided.\u003c/p\u003e\n\u003ch2\u003e20.2.1\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/04c598ad0a1a16a0149b324dc442255c2fdc0c17\"\u003e\u003cimg src=\"https://img.shields.io/badge/04c598ad0-fix-green\" alt=\"fix - 04c598ad0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add visible labels to calendar buttons (\u003ca href=\"https://redirect.github.com/angular/components/issues/31777\"\u003e#31777\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/839f3c1c1354438fdfa554662f5278703937678f\"\u003e\u003cimg src=\"https://img.shields.io/badge/839f3c1c1-fix-green\" alt=\"fix - 839f3c1c1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003esort:\u003c/strong\u003e error if signal is bound to disabled input (\u003ca href=\"https://redirect.github.com/angular/components/issues/31776\"\u003e#31776\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ee808f8f32fc27d59c56b63044355e4c7e0e416c\"\u003e\u003cimg src=\"https://img.shields.io/badge/ee808f8f3-fix-green\" alt=\"fix - ee808f8f3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e resolve memory leak (\u003ca href=\"https://redirect.github.com/angular/components/issues/31754\"\u003e#31754\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.0\u003c/h2\u003e\n\u003ch3\u003ecdk-experimental\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/048de42545676c662ed26d6256cc61fa64a909be\"\u003e\u003cimg src=\"https://img.shields.io/badge/048de4254-feat-blue\" alt=\"feat - 048de4254\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e add toolbar directive and demo (\u003ca href=\"https://redirect.github.com/angular/components/issues/31676\"\u003e#31676\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/2dbb045bc203358172be0b324a05d74e8526ce38\"\u003e\u003cimg src=\"https://img.shields.io/badge/2dbb045bc-feat-blue\" alt=\"feat - 2dbb045bc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e add nav mode (\u003ca href=\"https://redirect.github.com/angular/components/issues/31460\"\u003e#31460\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/6716f50249a638f62ea01358a91e0869d818c070\"\u003e\u003cimg src=\"https://img.shields.io/badge/6716f5024-feat-blue\" alt=\"feat - 6716f5024\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e use shared example classes (\u003ca href=\"https://redirect.github.com/angular/components/issues/31494\"\u003e#31494\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/50a6d6c4c9f73c68b50faf3bffc76692d9b579b3\"\u003e\u003cimg src=\"https://img.shields.io/badge/50a6d6c4c-feat-blue\" alt=\"feat - 50a6d6c4c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e add label control (\u003ca href=\"https://redirect.github.com/angular/components/issues/31459\"\u003e#31459\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4ce794ca70a84bc0ade5758bd81292c46a8e93db\"\u003e\u003cimg src=\"https://img.shields.io/badge/4ce794ca7-feat-blue\" alt=\"feat - 4ce794ca7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e add popup behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/31550\"\u003e#31550\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/228aaf1fa395e805d7b581b9d02102d65f0a1562\"\u003e\u003cimg src=\"https://img.shields.io/badge/228aaf1fa-feat-blue\" alt=\"feat - 228aaf1fa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e create List behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/31601\"\u003e#31601\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/82812760efc0a69a6546f459bb6eb531ed930bd7\"\u003e\u003cimg src=\"https://img.shields.io/badge/82812760e-feat-blue\" alt=\"feat - 82812760e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e toolbar and toolbar widget (\u003ca href=\"https://redirect.github.com/angular/components/issues/31670\"\u003e#31670\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.2.5 \u0026quot;sparkling-penguin\u0026quot; (2025-09-24)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/36be42637df5021ae9afa4d097e84d83d78c197e\"\u003e36be42637\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e move internal tokens (\u003ca href=\"https://redirect.github.com/angular/components/pull/31907\"\u003e#31907\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3ac762be5dc180594c0681e2842e35123195feb6\"\u003e3ac762be5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eform-field:\u003c/strong\u003e restore error message animation (\u003ca href=\"https://redirect.github.com/angular/components/pull/31774\"\u003e#31774\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/65f23c003e94d59bbb08ad81eb66d725b1b5e79a\"\u003e65f23c003\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e style no data row properly (\u003ca href=\"https://redirect.github.com/angular/components/pull/31895\"\u003e#31895\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.4 \u0026quot;v21.0.0-next4 release\u0026quot; (2025-09-17)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/962a60c113ffdcb8920c1b4fee60d850007fda5f\"\u003e962a60c11\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e do not show hover state on devices that don't support hover (\u003ca href=\"https://redirect.github.com/angular/components/pull/31866\"\u003e#31866\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/31562a4b8f2700d43c53f2c170f14d4b28a7ac53\"\u003e31562a4b8\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e separate text/bg colors in utility classes (\u003ca href=\"https://redirect.github.com/angular/components/pull/31879\"\u003e#31879\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a2906ddf36de4897b839df46941e59f3c0e0d727\"\u003ea2906ddf3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etabs:\u003c/strong\u003e attach content inside the zone (\u003ca href=\"https://redirect.github.com/angular/components/pull/31868\"\u003e#31868\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk-experimental\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c21dfa348d49c2312e0f5c523f5d13ea51a7118f\"\u003ec21dfa348\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e enter/space/click in single selection mode should not deselect tree item (\u003ca href=\"https://redirect.github.com/angular/components/pull/31843\"\u003e#31843\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.2.4 \u0026quot;v20.2.4 release\u0026quot; (2025-09-17)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e7a0c19d09bbe38852168c1a5ffcfeed66c1da6f\"\u003ee7a0c19d0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etabs:\u003c/strong\u003e attach content inside the zone (\u003ca href=\"https://redirect.github.com/angular/components/pull/31868\"\u003e#31868\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.3 \u0026quot;red-envelope\u0026quot; (2025-09-11)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMatCommonModule\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eGranularSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMATERIAL_SANITY_CHECKS\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecdk-experimental\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f137183858bf6bb9d47f7d184ea55241f2ee4a61\"\u003ef137183858\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eaccordion:\u003c/strong\u003e removes inert attribute from accordion trigger (\u003ca href=\"https://redirect.github.com/angular/components/pull/31817\"\u003e#31817\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/931ac3c1c7f8468acaae1e9b266bdd5f52cd35fd\"\u003e931ac3c1c7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003echips:\u003c/strong\u003e Adjust trailing icon opacity based on chip state (\u003ca href=\"https://redirect.github.com/angular/components/pull/31828\"\u003e#31828\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/50caec7eeda297050fc49c9cf0dfb6d410941a77\"\u003e\u003ccode\u003e50caec7\u003c/code\u003e\u003c/a\u003e release: cut the v20.2.5 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/41869daddb03e63e178cdf65841e81965fd81c4d\"\u003e\u003ccode\u003e41869da\u003c/code\u003e\u003c/a\u003e docs: external link opening on new tab (\u003ca href=\"https://redirect.github.com/angular/components/issues/31909\"\u003e#31909\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/a1456cd12d8cb91c0fb63d0095454bf7e52b7ce5\"\u003e\u003ccode\u003ea1456cd\u003c/code\u003e\u003c/a\u003e docs: correct pnpm install command (\u003ca href=\"https://redirect.github.com/angular/components/issues/31896\"\u003e#31896\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/bfc700272194fff4fec4b193fe34c17b8875730d\"\u003e\u003ccode\u003ebfc7002\u003c/code\u003e\u003c/a\u003e build: update bazel dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/31770\"\u003e#31770\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/36be42637df5021ae9afa4d097e84d83d78c197e\"\u003e\u003ccode\u003e36be426\u003c/code\u003e\u003c/a\u003e fix(material/core): move internal tokens (\u003ca href=\"https://redirect.github.com/angular/components/issues/31907\"\u003e#31907\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/65f23c003e94d59bbb08ad81eb66d725b1b5e79a\"\u003e\u003ccode\u003e65f23c0\u003c/code\u003e\u003c/a\u003e fix(material/table): style no data row properly (\u003ca href=\"https://redirect.github.com/angular/components/issues/31895\"\u003e#31895\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/3ac762be5dc180594c0681e2842e35123195feb6\"\u003e\u003ccode\u003e3ac762b\u003c/code\u003e\u003c/a\u003e fix(material/form-field): restore error message animation (\u003ca href=\"https://redirect.github.com/angular/components/issues/31774\"\u003e#31774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/80c7e761e4c7c4137232c9798a01c050935e3685\"\u003e\u003ccode\u003e80c7e76\u003c/code\u003e\u003c/a\u003e release: cut the v20.2.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/1fa0315545ea761f0ff0a19f45b5d749ec3c0fc1\"\u003e\u003ccode\u003e1fa0315\u003c/code\u003e\u003c/a\u003e build: update pnpm to v10.17.0 (\u003ca href=\"https://redirect.github.com/angular/components/issues/31884\"\u003e#31884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/741db87d3abefceb72c955310a759fdcfdaea2bb\"\u003e\u003ccode\u003e741db87\u003c/code\u003e\u003c/a\u003e build: lock file maintenance (\u003ca href=\"https://redirect.github.com/angular/components/issues/31886\"\u003e#31886\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/19.2.18...20.2.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/common` from 19.2.14 to 20.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.2\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba40153ac0-fix-green\" alt=\"fix - ba40153ac0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e\u003cimg src=\"https://img.shields.io/badge/1d4f81c8ee-fix-green\" alt=\"fix - 1d4f81c8ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003cimg src=\"https://img.shields.io/badge/9515a70933-fix-green\" alt=\"fix - 9515a70933\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003e\u003cimg src=\"https://img.shields.io/badge/e78451cf8a-fix-green\" alt=\"fix - e78451cf8a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e\u003cimg src=\"https://img.shields.io/badge/1fd8d5d446-fix-green\" alt=\"fix - 1fd8d5d446\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e\u003cimg src=\"https://img.shields.io/badge/16d0d43ad4-fix-green\" alt=\"fix - 16d0d43ad4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ebaeccb46-fix-green\" alt=\"fix - 3ebaeccb46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.1\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7fb5a8087ee8fb0451cedbe6ac4ce972eca4b56e\"\u003e\u003cimg src=\"https://img.shields.io/badge/7fb5a8087e-fix-green\" alt=\"fix - 7fb5a8087e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for \u003ccode\u003earia-invalid\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63748\"\u003e#63748\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/88437079190cef9ee522a3e2defa6e2672c2d030\"\u003e\u003cimg src=\"https://img.shields.io/badge/8843707919-fix-green\" alt=\"fix - 8843707919\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eonly bind inputs that are part of microsyntax to a structural directive (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/52453\"\u003e#52453\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/38c9921ff387d235981a79e26dc8bc7e60a2e10c\"\u003e\u003cimg src=\"https://img.shields.io/badge/38c9921ff3-fix-green\" alt=\"fix - 38c9921ff3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esignal not invoked diagnostic not raised when input has same name in template (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63754\"\u003e#63754\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/802dbcc2a0c5d3784cb04b4c78ea71ed0925327c\"\u003e\u003cimg src=\"https://img.shields.io/badge/802dbcc2a0-fix-green\" alt=\"fix - 802dbcc2a0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animation events from being cleaned up on destroy (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63414\"\u003e#63414\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ec8a5c7536cdd2c1db7db4bfbc2d4995156a833\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ec8a5c753-fix-green\" alt=\"fix - 3ec8a5c753\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePrevent leave animations on a move operation (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63745\"\u003e#63745\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e54bdfdcb01522ee46865fadec911f960fff730\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e54bdfdcb-fix-green\" alt=\"fix - 6e54bdfdcb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix route-lazy-loading migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63818\"\u003e#63818\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.0\u003c/h2\u003e\n\u003ch3\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3f808d7c8cc59a4fd69f2e4b8d21a6510efa046\"\u003e\u003cimg src=\"https://img.shields.io/badge/a3f808d7c8-fix-green\" alt=\"fix - a3f808d7c8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove refresh button from transfer state tab (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63592\"\u003e#63592\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6117ccee2e1507fb00549cd70e064282645db803\"\u003e\u003cimg src=\"https://img.shields.io/badge/6117ccee2e-feat-blue\" alt=\"feat - 6117ccee2e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eintroduce \u003ccode\u003eBootstrapContext\u003c/code\u003e for improved server bootstrapping (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63636\"\u003e#63636\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.2 (2025-09-24)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003eba40153ac0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e1d4f81c8ee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e9515a70933\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003ee78451cf8a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e1fd8d5d446\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e16d0d43ad4\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e3ebaeccb46\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.4 (2025-09-17)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003engComponentOutletContent\u003c/code\u003e is now of type \u003ccode\u003eNode[][] | undefined\u003c/code\u003e instead of \u003ccode\u003eany[][] | undefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUsing a combination of \u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e\nwhile also removing ZoneJS polyfills will no longer result in the\ninternal scheduler being disabled. All Angular applications now\nconsistenly use the same scheduler, and those with the Zone change detection\nprovider include additional automatic scheduling behaviors based on\nNgZone stabilization.\u003c/li\u003e\n\u003cli\u003eAngular no longer provides a change detection scheduler\nfor ZoneJS-based change detection by default. Add\n\u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e to the providers of your\n\u003ccode\u003ebootstrapApplication\u003c/code\u003e function or your \u003ccode\u003eAppModule\u003c/code\u003e (if using\n\u003ccode\u003ebootstrapModule\u003c/code\u003e). This provider addition will be covered by an\nautomated migration.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emoduleId\u003c/code\u003e was removed from \u003ccode\u003eComponent\u003c/code\u003e metadata.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003einterpolation\u003c/code\u003e option on Components has been removed. Only the default \u003ccode\u003e{{ ... }}\u003c/code\u003e is now supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a4b225c57d8e390ec06731f5211d52d14da3a9c\"\u003e7a4b225c57\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erefactor\u003c/td\u003e\n\u003ctd\u003eimprove typing of \u003ccode\u003engComponentOutletContent\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63674\"\u003e#63674\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003ccode\u003e9515a70\u003c/code\u003e\u003c/a\u003e fix(core): fix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/423cc17a76ab325ac53d448486e272e91a6590df\"\u003e\u003ccode\u003e423cc17\u003c/code\u003e\u003c/a\u003e refactor(common): trim undefined from locale data. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63520\"\u003e#63520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b05552fc7a97c5645858cc36c24031f5c21993f1\"\u003e\u003ccode\u003eb05552f\u003c/code\u003e\u003c/a\u003e docs: add documentation for NG02802 warning about HttpTransferCache headers (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/1b7f53021f7da3f84fa9d26c463b7dbee925f470\"\u003e\u003ccode\u003e1b7f530\u003c/code\u003e\u003c/a\u003e build: add a noDuplicateEnumValue rule (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63483\"\u003e#63483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a7725ee4c91641ef92b19f0fd35dc0fc000bc84\"\u003e\u003ccode\u003e7a7725e\u003c/code\u003e\u003c/a\u003e refactor(core): Update tests for zoneless by default (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63672\"\u003e#63672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b549cd28ae78bff43d9a1c8e576ed9ca480174c4\"\u003e\u003ccode\u003eb549cd2\u003c/code\u003e\u003c/a\u003e refactor(bazel): reduce build deps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63348\"\u003e#63348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e8d9bc511966a91bd6fbac912d5809f027525c2f\"\u003e\u003ccode\u003ee8d9bc5\u003c/code\u003e\u003c/a\u003e refactor(http): rework the \u003ccode\u003eHttpEvent\u003c/code\u003e union to improve narrowing. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63267\"\u003e#63267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/705b94bd21f3f3f3dd8f10881a90bfae049c1a07\"\u003e\u003ccode\u003e705b94b\u003c/code\u003e\u003c/a\u003e refactor: remove TODOs which have been corrected (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63421\"\u003e#63421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9a27c5befb676e894c522392e2c06b4f8fdca25a\"\u003e\u003ccode\u003e9a27c5b\u003c/code\u003e\u003c/a\u003e build: rename defaults2.bzl to defaults.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63384\"\u003e#63384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/10b0927e15bb6158a7262b0f2acd310836c96ca7\"\u003e\u003ccode\u003e10b0927\u003c/code\u003e\u003c/a\u003e refactor: various build and import specificer fixes for strict deps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63324\"\u003e#63324\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.3.2/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/compiler` from 19.2.14 to 20.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.2\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba40153ac0-fix-green\" alt=\"fix - ba40153ac0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e\u003cimg src=\"https://img.shields.io/badge/1d4f81c8ee-fix-green\" alt=\"fix - 1d4f81c8ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003cimg src=\"https://img.shields.io/badge/9515a70933-fix-green\" alt=\"fix - 9515a70933\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003e\u003cimg src=\"https://img.shields.io/badge/e78451cf8a-fix-green\" alt=\"fix - e78451cf8a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e\u003cimg src=\"https://img.shields.io/badge/1fd8d5d446-fix-green\" alt=\"fix - 1fd8d5d446\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e\u003cimg src=\"https://img.shields.io/badge/16d0d43ad4-fix-green\" alt=\"fix - 16d0d43ad4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ebaeccb46-fix-green\" alt=\"fix - 3ebaeccb46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.1\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7fb5a8087ee8fb0451cedbe6ac4ce972eca4b56e\"\u003e\u003cimg src=\"https://img.shields.io/badge/7fb5a8087e-fix-green\" alt=\"fix - 7fb5a8087e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for \u003ccode\u003earia-invalid\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63748\"\u003e#63748\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/88437079190cef9ee522a3e2defa6e2672c2d030\"\u003e\u003cimg src=\"https://img.shields.io/badge/8843707919-fix-green\" alt=\"fix - 8843707919\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eonly bind inputs that are part of microsyntax to a structural directive (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/52453\"\u003e#52453\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/38c9921ff387d235981a79e26dc8bc7e60a2e10c\"\u003e\u003cimg src=\"https://img.shields.io/badge/38c9921ff3-fix-green\" alt=\"fix - 38c9921ff3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esignal not invoked diagnostic not raised when input has same name in template (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63754\"\u003e#63754\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/802dbcc2a0c5d3784cb04b4c78ea71ed0925327c\"\u003e\u003cimg src=\"https://img.shields.io/badge/802dbcc2a0-fix-green\" alt=\"fix - 802dbcc2a0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animation events from being cleaned up on destroy (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63414\"\u003e#63414\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ec8a5c7536cdd2c1db7db4bfbc2d4995156a833\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ec8a5c753-fix-green\" alt=\"fix - 3ec8a5c753\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePrevent leave animations on a move operation (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63745\"\u003e#63745\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e54bdfdcb01522ee46865fadec911f960fff730\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e54bdfdcb-fix-green\" alt=\"fix - 6e54bdfdcb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix route-lazy-loading migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63818\"\u003e#63818\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.0\u003c/h2\u003e\n\u003ch3\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3f808d7c8cc59a4fd69f2e4b8d21a6510efa046\"\u003e\u003cimg src=\"https://img.shields.io/badge/a3f808d7c8-fix-green\" alt=\"fix - a3f808d7c8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove refresh button from transfer state tab (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63592\"\u003e#63592\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6117ccee2e1507fb00549cd70e064282645db803\"\u003e\u003cimg src=\"https://img.shields.io/badge/6117ccee2e-feat-blue\" alt=\"feat - 6117ccee2e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eintroduce \u003ccode\u003eBootstrapContext\u003c/code\u003e for improved server bootstrapping (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63636\"\u003e#63636\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.2 (2025-09-24)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003eba40153ac0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e1d4f81c8ee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e9515a70933\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003ee78451cf8a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e1fd8d5d446\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e16d0d43ad4\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e3ebaeccb46\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.4 (2025-09-17)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003engComponentOutletContent\u003c/code\u003e is now of type \u003ccode\u003eNode[][] | undefined\u003c/code\u003e instead of \u003ccode\u003eany[][] | undefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUsing a combination of \u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e\nwhile also removing ZoneJS polyfills will no longer result in the\ninternal scheduler being disabled. All Angular applications now\nconsistenly use the same scheduler, and those with the Zone change detection\nprovider include additional automatic scheduling behaviors based on\nNgZone stabilization.\u003c/li\u003e\n\u003cli\u003eAngular no longer provides a change detection scheduler\nfor ZoneJS-based change detection by default. Add\n\u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e to the providers of your\n\u003ccode\u003ebootstrapApplication\u003c/code\u003e function or your \u003ccode\u003eAppModule\u003c/code\u003e (if using\n\u003ccode\u003ebootstrapModule\u003c/code\u003e). This provider addition will be covered by an\nautomated migration.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emoduleId\u003c/code\u003e was removed from \u003ccode\u003eComponent\u003c/code\u003e metadata.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003einterpolation\u003c/code\u003e option on Components has been removed. Only the default \u003ccode\u003e{{ ... }}\u003c/code\u003e is now supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a4b225c57d8e390ec06731f5211d52d14da3a9c\"\u003e7a4b225c57\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erefactor\u003c/td\u003e\n\u003ctd\u003eimprove typing of \u003ccode\u003engComponentOutletContent\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63674\"\u003e#63674\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/720f0dbd138e4d32a911f190a21964ba3ffd0f0a\"\u003e\u003ccode\u003e720f0db\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(compiler): expose member decorator identifiers (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63904\"\u003e#63904\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/6\"\u003e#6\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3094f2cb5c6692bf45ed131565fa04daf0465a6\"\u003e\u003ccode\u003ea3094f2\u003c/code\u003e\u003c/a\u003e refactor(compiler): expose member decorator identifiers (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63904\"\u003e#63904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7fb5a8087ee8fb0451cedbe6ac4ce972eca4b56e\"\u003e\u003ccode\u003e7fb5a80\u003c/code\u003e\u003c/a\u003e fix(compiler): Add support for \u003ccode\u003earia-invalid\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63748\"\u003e#63748\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/5f5828f60d59aec5d2cb9d59879ad30e0810c9a9\"\u003e\u003ccode\u003e5f5828f\u003c/code\u003e\u003c/a\u003e refactor(core): dispatch enter and leave animations at the right times (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63710\"\u003e#63710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/479a919f42517193653384220adab5b89dd74e3d\"\u003e\u003ccode\u003e479a919\u003c/code\u003e\u003c/a\u003e fix(compiler): fixes regression with event parsing and animate prefix (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63470\"\u003e#63470\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/d7b6045d61582d20a17802e769dc1441984988f0\"\u003e\u003ccode\u003ed7b6045\u003c/code\u003e\u003c/a\u003e fix(compiler): fixes animations on elements with structural directives (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63390\"\u003e#63390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9a27c5befb676e894c522392e2c06b4f8fdca25a\"\u003e\u003ccode\u003e9a27c5b\u003c/code\u003e\u003c/a\u003e build: rename defaults2.bzl to defaults.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63384\"\u003e#63384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a28672fb7017cc62e42829c5910c3b39373d7913\"\u003e\u003ccode\u003ea28672f\u003c/code\u003e\u003c/a\u003e fix(compiler): Keep paraenthesis in Nullish + Boolean expression. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63292\"\u003e#63292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7b517288139aec166e5e5b60e84b1e22e3d6b70f\"\u003e\u003ccode\u003e7b51728\u003c/code\u003e\u003c/a\u003e fix(compiler): fixes animation event host bindings not firing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63217\"\u003e#63217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/19ed12c81e82c8b0b2ac9e0e008c3ebfc9512f24\"\u003e\u003ccode\u003e19ed12c\u003c/code\u003e\u003c/a\u003e fix(compiler): error when ng-content fallback has translated children (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63156\"\u003e#63156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.3.2/packages/compiler\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/core` from 19.2.14 to 20.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.2\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba40153ac0-fix-green\" alt=\"fix - ba40153ac0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e\u003cimg src=\"https://img.shields.io/badge/1d4f81c8ee-fix-green\" alt=\"fix - 1d4f81c8ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003cimg src=\"https://img.shields.io/badge/9515a70933-fix-green\" alt=\"fix - 9515a70933\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003e\u003cimg src=\"https://img.shields.io/badge/e78451cf8a-fix-green\" alt=\"fix - e78451cf8a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e\u003cimg src=\"https://img.shields.io/badge/1fd8d5d446-fix-green\" alt=\"fix - 1fd8d5d446\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e\u003cimg src=\"https://img.shields.io/badge/16d0d43ad4-fix-green\" alt=\"fix - 16d0d43ad4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ebaeccb46-fix-green\" alt=\"fix - 3ebaeccb46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.1\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7fb5a8087ee8fb0451cedbe6ac4ce972eca4b56e\"\u003e\u003cimg src=\"https://img.shields.io/badge/7fb5a8087e-fix-green\" alt=\"fix - 7fb5a8087e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for \u003ccode\u003earia-invalid\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63748\"\u003e#63748\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/88437079190cef9ee522a3e2defa6e2672c2d030\"\u003e\u003cimg src=\"https://img.shields.io/badge/8843707919-fix-green\" alt=\"fix - 8843707919\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eonly bind inputs that are part of microsyntax to a structural directive (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/52453\"\u003e#52453\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/38c9921ff387d235981a79e26dc8bc7e60a2e10c\"\u003e\u003cimg src=\"https://img.shields.io/badge/38c9921ff3-fix-green\" alt=\"fix - 38c9921ff3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esignal not invoked diagnostic not raised when input has same name in template (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63754\"\u003e#63754\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/802dbcc2a0c5d3784cb04b4c78ea71ed0925327c\"\u003e\u003cimg src=\"https://img.shields.io/badge/802dbcc2a0-fix-green\" alt=\"fix - 802dbcc2a0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animation events from being cleaned up on destroy (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63414\"\u003e#63414\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ec8a5c7536cdd2c1db7db4bfbc2d4995156a833\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ec8a5c753-fix-green\" alt=\"fix - 3ec8a5c753\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePrevent leave animations on a move operation (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63745\"\u003e#63745\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e54bdfdcb01522ee46865fadec911f960fff730\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e54bdfdcb-fix-green\" alt=\"fix - 6e54bdfdcb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix route-lazy-loading migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63818\"\u003e#63818\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.0\u003c/h2\u003e\n\u003ch3\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3f808d7c8cc59a4fd69f2e4b8d21a6510efa046\"\u003e\u003cimg src=\"https://img.shields.io/badge/a3f808d7c8-fix-green\" alt=\"fix - a3f808d7c8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove refresh button from transfer state tab (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63592\"\u003e#63592\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6117ccee2e1507fb00549cd70e064282645db803\"\u003e\u003cimg src=\"https://img.shields.io/badge/6117ccee2e-feat-blue\" alt=\"feat - 6117ccee2e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eintroduce \u003ccode\u003eBootstrapContext\u003c/code\u003e for improved server bootstrapping (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63636\"\u003e#63636\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.2 (2025-09-24)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003eba40153ac0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e1d4f81c8ee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e9515a70933\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003ee78451cf8a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e1fd8d5d446\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e16d0d43ad4\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e3ebaeccb46\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.4 (2025-09-17)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003engComponentOutletContent\u003c/code\u003e is now of type \u003ccode\u003eNode[][] | undefined\u003c/code\u003e instead of \u003ccode\u003eany[][] | undefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUsing a combination of \u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e\nwhile also removing ZoneJS polyfills will no longer result in the\ninternal scheduler being disabled. All Angular applications now\nconsistenly use the same scheduler, and those with the Zone change detection\nprovider include additional automatic scheduling behaviors based on\nNgZone stabilization.\u003c/li\u003e\n\u003cli\u003eAngular no longer provides a change detection scheduler\nfor ZoneJS-based change detection by default. Add\n\u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e to the providers of your\n\u003ccode\u003ebootstrapApplication\u003c/code\u003e function or your \u003ccode\u003eAppModule\u003c/code\u003e (if using\n\u003ccode\u003ebootstrapModule\u003c/code\u003e). This provider addition will be covered by an\nautomated migration.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emoduleId\u003c/code\u003e was removed from \u003ccode\u003eComponent\u003c/code\u003e metadata.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003einterpolation\u003c/code\u003e option on Components has been removed. Only the default \u003ccode\u003e{{ ... }}\u003c/code\u003e is now supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a4b225c57d8e390ec06731f5211d52d14da3a9c\"\u003e7a4b225c57\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erefactor\u003c/td\u003e\n\u003ctd\u003eimprove typing of \u003ccode\u003engComponentOutletContent\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63674\"\u003e#63674\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e\u003ccode\u003e3ebaecc\u003c/code\u003e\u003c/a\u003e fix(migrations): handle reused templates in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63996\"\u003e#63996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d1891a5323e5ea071fb3129990e957d5cfff359\"\u003e\u003ccode\u003e8d1891a\u003c/code\u003e\u003c/a\u003e refactor(core): improve linkedSignal type definitions, add debugName to optio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003ccode\u003e9515a70\u003c/code\u003e\u003c/a\u003e fix(core): fix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a67d82254f832afd5feac25996b03ffbe85a9f97\"\u003e\u003ccode\u003ea67d822\u003c/code\u003e\u003c/a\u003e refactor(core): use version\u0026gt;0 instead of hasRun (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62467\"\u003e#62467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/64a36757e5078cff7c84810927377bb575101d29\"\u003e\u003ccode\u003e64a3675\u003c/code\u003e\u003c/a\u003e docs: fix typo in component bindings jsdoc (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63969\"\u003e#63969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003e\u003ccode\u003ee78451c\u003c/code\u003e\u003c/a\u003e fix(core): prevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63921\"\u003e#63921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b04e6b18696b67b4003dc865f857a49647ec7bd5\"\u003e\u003ccode\u003eb04e6b1\u003c/code\u003e\u003c/a\u003e refactor(core): drop the usage of \u003ccode\u003ePromiseSettledResult\\\u0026lt;void\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63955\"\u003e#63955\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/720f0dbd138e4d32a911f190a21964ba3ffd0f0a\"\u003e\u003ccode\u003e720f0db\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(compiler): expose member decorator identifiers (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63904\"\u003e#63904\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/6\"\u003e#6\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/150ed2b5692318723ca2bf49228378539a7bd453\"\u003e\u003ccode\u003e150ed2b\u003c/code\u003e\u003c/a\u003e docs: add documentation for NG0401 error (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63947\"\u003e#63947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/d0c7ea8491b7c12757d8679470cf538c3eb661de\"\u003e\u003ccode\u003ed0c7ea8\u003c/code\u003e\u003c/a\u003e refactor(core): fix MockRenderer in unit tests. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63936\"\u003e#63936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.3.2/packages/core\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/forms` from 19.2.14 to 20.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.2\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba40153ac0-fix-green\" alt=\"fix - ba40153ac0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e\u003cimg src=\"https://img.shields.io/badge/1d4f81c8ee-fix-green\" alt=\"fix - 1d4f81c8ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003cimg src=\"https://img.shields.io/badge/9515a70933-fix-green\" alt=\"fix - 9515a70933\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003e\u003cimg src=\"https://img.shields.io/badge/e78451cf8a-fix-green\" alt=\"fix - e78451cf8a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e\u003cimg src=\"https://img.shields.io/badge/1fd8d5d446-fix-green\" alt=\"fix - 1fd8d5d446\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e\u003cimg src=\"https://img.shields.io/badge/16d0d43ad4-fix-green\" alt=\"fix - 16d0d43ad4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ebaeccb46-fix-green\" alt=\"fix - 3ebaeccb46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.1\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7fb5a8087ee8fb0451cedbe6ac4ce972eca4b56e\"\u003e\u003cimg src=\"https://img.shields.io/badge/7fb5a8087e-fix-green\" alt=\"fix - 7fb5a8087e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for \u003ccode\u003earia-invalid\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63748\"\u003e#63748\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/88437079190cef9ee522a3e2defa6e2672c2d030\"\u003e\u003cimg src=\"https://i...\n\n_Description has been truncated_","html_url":"https://github.com/frankykevin/paperless-ngx/pull/97","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/frankykevin%2Fpaperless-ngx/issues/97","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/97/packages"},{"uuid":"3458433467","node_id":"PR_kwDOEX7hus6qwv6a","number":1585,"state":"open","title":"npm(deps): bump the npm group across 1 directory with 33 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-26T17:12:05.000Z","updated_at":"2025-09-30T10:13:22.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"npm(deps): bump","group_name":"npm","update_count":33,"packages":[{"name":"core-js","old_version":"3.42.0","new_version":"3.45.1","repository_url":"https://github.com/zloirock/core-js"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@commitlint/cli","old_version":"19.8.1","new_version":"20.0.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@commitlint/config-angular","old_version":"19.8.1","new_version":"20.0.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@commitlint/config-conventional","old_version":"19.8.1","new_version":"20.0.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@commitlint/prompt","old_version":"19.8.1","new_version":"20.0.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@percy/storybook","old_version":"7.0.0","new_version":"9.0.1","repository_url":"https://github.com/percy/percy-storybook"},{"name":"@storybook/addon-a11y","old_version":"9.0.18","new_version":"9.1.8","repository_url":"https://github.com/storybookjs/storybook"},{"name":"@storybook/addon-docs","old_version":"9.0.18","new_version":"9.1.8","repository_url":"https://github.com/storybookjs/storybook"},{"name":"@storybook/angular","old_version":"9.0.18","new_version":"9.1.8","repository_url":"https://github.com/storybookjs/storybook"},{"name":"@stylistic/eslint-plugin","old_version":"4.2.0","new_version":"5.4.0","repository_url":"https://github.com/eslint-stylistic/eslint-stylistic"},{"name":"@types/node","old_version":"22.15.19","new_version":"22.18.6","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.32.1","new_version":"8.44.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.32.1","new_version":"8.44.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typestrong/ts-mockito","old_version":"2.6.6","new_version":"2.7.12","repository_url":"https://github.com/TypeStrong/ts-mockito"},{"name":"eslint","old_version":"9.26.0","new_version":"9.36.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-import","old_version":"2.31.0","new_version":"2.32.0","repository_url":"https://github.com/import-js/eslint-plugin-import"},{"name":"eslint-plugin-storybook","old_version":"9.0.17","new_version":"9.1.8","repository_url":"https://github.com/storybookjs/storybook"},{"name":"eslint-plugin-unused-imports","old_version":"4.1.4","new_version":"4.2.0","repository_url":"https://github.com/sweepline/eslint-plugin-unused-imports"},{"name":"globals","old_version":"16.1.0","new_version":"16.4.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"lint-staged","old_version":"16.0.0","new_version":"16.2.1","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"ng-packagr","old_version":"19.2.2","new_version":"20.3.0","repository_url":"https://github.com/ng-packagr/ng-packagr"},{"name":"npm","old_version":"11.3.0","new_version":"11.6.1","repository_url":"https://github.com/npm/cli"},{"name":"prettier","old_version":"3.5.3","new_version":"3.6.2","repository_url":"https://github.com/prettier/prettier"},{"name":"pretty-quick","old_version":"4.1.1","new_version":"4.2.2","repository_url":"https://github.com/prettier/pretty-quick"},{"name":"sass","old_version":"1.89.0","new_version":"1.93.2","repository_url":"https://github.com/sass/dart-sass"},{"name":"storybook","old_version":"9.0.18","new_version":"9.1.8","repository_url":"https://github.com/storybookjs/storybook"},{"name":"stylelint","old_version":"16.19.1","new_version":"16.24.0","repository_url":"https://github.com/stylelint/stylelint"},{"name":"stylelint-config-recommended","old_version":"16.0.0","new_version":"17.0.0","repository_url":"https://github.com/stylelint/stylelint-config-recommended"},{"name":"svgo","old_version":"3.3.2","new_version":"4.0.0","repository_url":"https://github.com/svg/svgo"},{"name":"webpack","old_version":"5.99.8","new_version":"5.101.3","repository_url":"https://github.com/webpack/webpack"},{"name":"webpack-remove-empty-scripts","old_version":"1.0.4","new_version":"1.1.1","repository_url":"https://github.com/webdiscus/webpack-remove-empty-scripts"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm group with 32 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) | `3.42.0` | `3.45.1` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@commitlint/cli](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli) | `19.8.1` | `20.0.0` |\n| [@commitlint/config-angular](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-angular) | `19.8.1` | `20.0.0` |\n| [@commitlint/config-conventional](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional) | `19.8.1` | `20.0.0` |\n| [@commitlint/prompt](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/prompt) | `19.8.1` | `20.0.0` |\n| [@percy/storybook](https://github.com/percy/percy-storybook) | `7.0.0` | `9.0.1` |\n| [@storybook/addon-a11y](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y) | `9.0.18` | `9.1.8` |\n| [@storybook/addon-docs](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/docs) | `9.0.18` | `9.1.8` |\n| [@storybook/angular](https://github.com/storybookjs/storybook/tree/HEAD/code/frameworks/angular) | `9.0.18` | `9.1.8` |\n| [@stylistic/eslint-plugin](https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin) | `4.2.0` | `5.4.0` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `22.15.19` | `22.18.6` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.32.1` | `8.44.1` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.32.1` | `8.44.1` |\n| [@typestrong/ts-mockito](https://github.com/TypeStrong/ts-mockito) | `2.6.6` | `2.7.12` |\n| [eslint](https://github.com/eslint/eslint) | `9.26.0` | `9.36.0` |\n| [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) | `2.31.0` | `2.32.0` |\n| [eslint-plugin-storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/lib/eslint-plugin) | `9.0.17` | `9.1.8` |\n| [eslint-plugin-unused-imports](https://github.com/sweepline/eslint-plugin-unused-imports) | `4.1.4` | `4.2.0` |\n| [globals](https://github.com/sindresorhus/globals) | `16.1.0` | `16.4.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.0.0` | `16.2.1` |\n| [ng-packagr](https://github.com/ng-packagr/ng-packagr) | `19.2.2` | `20.3.0` |\n| [npm](https://github.com/npm/cli) | `11.3.0` | `11.6.1` |\n| [prettier](https://github.com/prettier/prettier) | `3.5.3` | `3.6.2` |\n| [pretty-quick](https://github.com/prettier/pretty-quick) | `4.1.1` | `4.2.2` |\n| [sass](https://github.com/sass/dart-sass) | `1.89.0` | `1.93.2` |\n| [storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/core) | `9.0.18` | `9.1.8` |\n| [stylelint](https://github.com/stylelint/stylelint) | `16.19.1` | `16.24.0` |\n| [stylelint-config-recommended](https://github.com/stylelint/stylelint-config-recommended) | `16.0.0` | `17.0.0` |\n| [svgo](https://github.com/svg/svgo) | `3.3.2` | `4.0.0` |\n| [webpack](https://github.com/webpack/webpack) | `5.99.8` | `5.101.3` |\n| [webpack-remove-empty-scripts](https://github.com/webdiscus/webpack-remove-empty-scripts) | `1.0.4` | `1.1.1` |\n\n\nUpdates `core-js` from 3.42.0 to 3.45.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zloirock/core-js/blob/master/CHANGELOG.md\"\u003ecore-js's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch5\u003e\u003ca href=\"https://github.com/zloirock/core-js/releases/tag/v3.45.1\"\u003e3.45.1 - 2025.08.20\u003c/a\u003e\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eChanges \u003ca href=\"https://github.com/zloirock/core-js/compare/v3.45.0...v3.45.1\"\u003ev3.45.0...v3.45.1\u003c/a\u003e (30 commits)\u003c/li\u003e\n\u003cli\u003eFixed a conflict of native methods from \u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert proposal\u003c/a\u003e with polyfilled methods in the pure version\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ebugs\u003c/code\u003e fields to \u003ccode\u003epackage.json\u003c/code\u003e of all packages\u003c/li\u003e\n\u003cli\u003eCompat data improvements:\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert proposal\u003c/a\u003e features marked as shipped from Bun 1.2.20\u003c/li\u003e\n\u003cli\u003eAdded Samsung Internet 29 compat data mapping\u003c/li\u003e\n\u003cli\u003eAdded Electron 39 compat data mapping\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e\u003ca href=\"https://github.com/zloirock/core-js/releases/tag/v3.45.0\"\u003e3.45.0 - 2025.08.04\u003c/a\u003e\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eChanges \u003ca href=\"https://github.com/zloirock/core-js/compare/v3.44.0...v3.45.0\"\u003ev3.44.0...v3.45.0\u003c/a\u003e (70 commits)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-arraybuffer-base64\"\u003e\u003ccode\u003eUint8Array\u003c/code\u003e to / from base64 and hex proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.fromBase64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.fromHex\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.setFromBase64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.setFromHex\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.toBase64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.toHex\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stable ES, \u003ca href=\"https://github.com/tc39/proposals/commit/d41fe182cdb90da3076ab711aae3944ed86bcf18\"\u003eJuly 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ees.\u003c/code\u003e namespace modules, \u003ccode\u003e/es/\u003c/code\u003e and \u003ccode\u003e/stable/\u003c/code\u003e namespaces entries\u003c/li\u003e\n\u003cli\u003eAdded detection of a Webkit bug: \u003ccode\u003eUint8Array\u003c/code\u003e fromBase64 / setFromBase64 does not throw an error on incorrect length of base64 string\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-math-sum\"\u003e\u003ccode\u003eMath.sumPrecise\u003c/code\u003e proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMath.sumPrecise\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stable ES, \u003ca href=\"https://github.com/tc39/proposals/commit/2616413ace9074bfd444adee9501fae4c8d66fcb\"\u003eJuly 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ees.\u003c/code\u003e namespace module, \u003ccode\u003e/es/\u003c/code\u003e and \u003ccode\u003e/stable/\u003c/code\u003e namespaces entries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-iterator-sequencing\"\u003e\u003ccode\u003eIterator\u003c/code\u003e sequencing proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eIterator.concat\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stage 3, \u003ca href=\"https://github.com/tc39/proposals/commit/3eebab0f8594673dd08bc709d68c011016074c2e\"\u003eJuly 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003e/actual/\u003c/code\u003e namespace entries, unconditional forced replacement changed to feature detection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMap.prototype.getOrInsert\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMap.prototype.getOrInsertComputed\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eWeakMap.prototype.getOrInsert\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eWeakMap.prototype.getOrInsertComputed\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stage 3, \u003ca href=\"https://github.com/tc39/proposals/commit/a9c0dfa4e00ffb69aa4df91d8c0c26b064d67108\"\u003eJuly 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003e/actual/\u003c/code\u003e namespace entries, unconditional forced replacement changed to feature detection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdded missing dependencies to some entries of static \u003ccode\u003eIterator\u003c/code\u003e methods\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://github.com/tc39/proposal-joint-iteration\"\u003eJoint Iteration proposal\u003c/a\u003e in \u003ccode\u003e/stage/\u003c/code\u003e entries\u003c/li\u003e\n\u003cli\u003eCompat data improvements:\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-arraybuffer-base64\"\u003e\u003ccode\u003eUint8Array\u003c/code\u003e to / from base64 and hex proposal\u003c/a\u003e features marked as \u003ca href=\"https://issues.chromium.org/issues/42204568#comment37\"\u003esupported from V8 ~ Chromium 140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-arraybuffer-base64\"\u003e\u003ccode\u003eUint8Array.{ fromBase64, prototype.setFromBase64 }\u003c/code\u003e\u003c/a\u003e marked as unsupported in Safari and supported only from Bun 1.2.20 because of a bug: it does not throw an error on incorrect length of base64 string\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e%TypedArray%.prototype.with\u003c/code\u003e marked as fixed in Safari 26.0\u003c/li\u003e\n\u003cli\u003eUpdated Electron 38 compat data mapping\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://forums.opera.com/topic/86005/opera-for-android-91\"\u003eOpera Android 91\u003c/a\u003e compat data mapping\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e\u003ca href=\"https://github.com/zloirock/core-js/releases/tag/v3.44.0\"\u003e3.44.0 - 2025.07.07\u003c/a\u003e\u003c/h5\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/a16b86ad8c360cb1a597ca1e6b4a6c7a345cbac8\"\u003e\u003ccode\u003ea16b86a\u003c/code\u003e\u003c/a\u003e v3.45.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/4f9ac04993240b63ab5eecd8c855f7985a142032\"\u003e\u003ccode\u003e4f9ac04\u003c/code\u003e\u003c/a\u003e fix a conflict of native methods from \u003ccode\u003eMap\u003c/code\u003e upsert proposal with polyfilled m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/149c2f1136debefd149df17ba284402020ab0ac6\"\u003e\u003ccode\u003e149c2f1\u003c/code\u003e\u003c/a\u003e update some examples\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/836cbecc993014238cf59fd51a717145f89acbcf\"\u003e\u003ccode\u003e836cbec\u003c/code\u003e\u003c/a\u003e bump the year\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/d4fa8f0dfbc12bf386ebff5c1efe390723d709c2\"\u003e\u003ccode\u003ed4fa8f0\u003c/code\u003e\u003c/a\u003e enforce \u003ccode\u003ebugs\u003c/code\u003e field in \u003ccode\u003epackage.json\u003c/code\u003e of public packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/79bf81948fb9aa42f617d9e41e9e9e8c60fef411\"\u003e\u003ccode\u003e79bf819\u003c/code\u003e\u003c/a\u003e v3.45.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/e118594dcdc8bf57ce46af15672bdd1973e4faa6\"\u003e\u003ccode\u003ee118594\u003c/code\u003e\u003c/a\u003e move \u003ccode\u003eMap\u003c/code\u003e upsert to stage 3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/d8e524ca54c0e9f00699a18fe7170b8805807319\"\u003e\u003ccode\u003ed8e524c\u003c/code\u003e\u003c/a\u003e move iterator sequencing proposal to stage 3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/8c0bd93564abeb0c449880e74095ecbd2dd97ce8\"\u003e\u003ccode\u003e8c0bd93\u003c/code\u003e\u003c/a\u003e move \u003ccode\u003eUint8Array\u003c/code\u003e to / from base64 and hex to stable ES\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/0f1a2d531dd0637fb3c0aacbe590d5b3cad37e11\"\u003e\u003ccode\u003e0f1a2d5\u003c/code\u003e\u003c/a\u003e move \u003ccode\u003eMath.sumPrecise\u003c/code\u003e to stable ES\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/zloirock/core-js/commits/v3.45.1/packages/core-js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/cli` from 19.8.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/cli\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: add TypeScript support and configuration for pnpm scopes by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4544\"\u003econventional-changelog/commitlint#4544\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.8.1...v19.9.0\"\u003e19.9.0\u003c/a\u003e (2025-08-26)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebug(config-pnpm-scopes): migrate package to TypeScript by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4541\"\u003econventional-changelog/commitlint#4541\u003c/a\u003e\n(type got messed up)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChore, docs, etc.\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add a note about configuration under node24 by \u003ca href=\"https://github.com/sodle\"\u003e\u003ccode\u003e@​sodle\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4406\"\u003econventional-changelog/commitlint#4406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add Ubuntu 24.04 and Windows 2025 to CI by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4435\"\u003econventional-changelog/commitlint#4435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: refactor CI setup example of GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4439\"\u003econventional-changelog/commitlint#4439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: use tags for immutable github actions by \u003ca href=\"https://github.com/Fdawgs\"\u003e\u003ccode\u003e@​Fdawgs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4458\"\u003econventional-changelog/commitlint#4458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: migrate \u003ccode\u003eeslint-plugin-import\u003c/code\u003e to \u003ccode\u003eeslint-plugin-import-x\u003c/code\u003e by \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4473\"\u003econventional-changelog/commitlint#4473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add commitlint GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4440\"\u003econventional-changelog/commitlint#4440\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/cli/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/cli\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/cli\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.0.0/@commitlint/cli\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/config-angular` from 19.8.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/config-angular\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-angular/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: add TypeScript support and configuration for pnpm scopes by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4544\"\u003econventional-changelog/commitlint#4544\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.8.1...v19.9.0\"\u003e19.9.0\u003c/a\u003e (2025-08-26)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebug(config-pnpm-scopes): migrate package to TypeScript by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4541\"\u003econventional-changelog/commitlint#4541\u003c/a\u003e\n(type got messed up)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChore, docs, etc.\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add a note about configuration under node24 by \u003ca href=\"https://github.com/sodle\"\u003e\u003ccode\u003e@​sodle\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4406\"\u003econventional-changelog/commitlint#4406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add Ubuntu 24.04 and Windows 2025 to CI by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4435\"\u003econventional-changelog/commitlint#4435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: refactor CI setup example of GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4439\"\u003econventional-changelog/commitlint#4439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: use tags for immutable github actions by \u003ca href=\"https://github.com/Fdawgs\"\u003e\u003ccode\u003e@​Fdawgs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4458\"\u003econventional-changelog/commitlint#4458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: migrate \u003ccode\u003eeslint-plugin-import\u003c/code\u003e to \u003ccode\u003eeslint-plugin-import-x\u003c/code\u003e by \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4473\"\u003econventional-changelog/commitlint#4473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add commitlint GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4440\"\u003econventional-changelog/commitlint#4440\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-angular/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/config-angular\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/config-angular\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.0.0/@commitlint/config-angular\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/config-conventional` from 19.8.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/config-conventional\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: add TypeScript support and configuration for pnpm scopes by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4544\"\u003econventional-changelog/commitlint#4544\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.8.1...v19.9.0\"\u003e19.9.0\u003c/a\u003e (2025-08-26)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebug(config-pnpm-scopes): migrate package to TypeScript by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4541\"\u003econventional-changelog/commitlint#4541\u003c/a\u003e\n(type got messed up)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChore, docs, etc.\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add a note about configuration under node24 by \u003ca href=\"https://github.com/sodle\"\u003e\u003ccode\u003e@​sodle\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4406\"\u003econventional-changelog/commitlint#4406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add Ubuntu 24.04 and Windows 2025 to CI by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4435\"\u003econventional-changelog/commitlint#4435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: refactor CI setup example of GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4439\"\u003econventional-changelog/commitlint#4439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: use tags for immutable github actions by \u003ca href=\"https://github.com/Fdawgs\"\u003e\u003ccode\u003e@​Fdawgs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4458\"\u003econventional-changelog/commitlint#4458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: migrate \u003ccode\u003eeslint-plugin-import\u003c/code\u003e to \u003ccode\u003eeslint-plugin-import-x\u003c/code\u003e by \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4473\"\u003econventional-changelog/commitlint#4473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add commitlint GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4440\"\u003econventional-changelog/commitlint#4440\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-conventional/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/config-conventional\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/config-conventional\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.0.0/@commitlint/config-conventional\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/prompt` from 19.8.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/prompt\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/prompt/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: add TypeScript support and configuration for pnpm scopes by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4544\"\u003econventional-changelog/commitlint#4544\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.8.1...v19.9.0\"\u003e19.9.0\u003c/a\u003e (2025-08-26)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebug(config-pnpm-scopes): migrate package to TypeScript by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4541\"\u003econventional-changelog/commitlint#4541\u003c/a\u003e\n(type got messed up)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChore, docs, etc.\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add a note about configuration under node24 by \u003ca href=\"https://github.com/sodle\"\u003e\u003ccode\u003e@​sodle\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4406\"\u003econventional-changelog/commitlint#4406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add Ubuntu 24.04 and Windows 2025 to CI by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4435\"\u003econventional-changelog/commitlint#4435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: refactor CI setup example of GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4439\"\u003econventional-changelog/commitlint#4439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: use tags for immutable github actions by \u003ca href=\"https://github.com/Fdawgs\"\u003e\u003ccode\u003e@​Fdawgs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4458\"\u003econventional-changelog/commitlint#4458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: migrate \u003ccode\u003eeslint-plugin-import\u003c/code\u003e to \u003ccode\u003eeslint-plugin-import-x\u003c/code\u003e by \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4473\"\u003econventional-changelog/commitlint#4473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add commitlint GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4440\"\u003econventional-changelog/commitlint#4440\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/prompt/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/prompt\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/prompt\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.0.0/@commitlint/prompt\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@percy/storybook` from 7.0.0 to 9.0.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/b687687ae84b6ebcfa122bfbc9a50debe0f0d0dc\"\u003e\u003ccode\u003eb687687\u003c/code\u003e\u003c/a\u003e release v9.0.1 (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1202\"\u003e#1202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/ece874ca84adc7148735afc63996510ed5487622\"\u003e\u003ccode\u003eece874c\u003c/code\u003e\u003c/a\u003e release-9.0.1-beta.2 (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1201\"\u003e#1201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/39241270f09757151769ea8bf7244c327f09ecc8\"\u003e\u003ccode\u003e3924127\u003c/code\u003e\u003c/a\u003e Fix: Preserve story state \u0026amp; prevent blank/loader snapshots after reload (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1196\"\u003e#1196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/7c6ec6d04768df4c016373889b75c5ec79c67c9b\"\u003e\u003ccode\u003e7c6ec6d\u003c/code\u003e\u003c/a\u003e release-9.0.1-beta.1 (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1195\"\u003e#1195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/3ebab7684b80b02f9e2f9c241ef2fee10e55d5fb\"\u003e\u003ccode\u003e3ebab76\u003c/code\u003e\u003c/a\u003e Capturing DOM at device height for mobile browsers + Fix for minHeight (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1194\"\u003e#1194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/1b9f8a8a680c825ef02474a3eb4fff1d2a173fde\"\u003e\u003ccode\u003e1b9f8a8\u003c/code\u003e\u003c/a\u003e 🐛  Enhance snapshot processing to manage global state changes and optimize pa...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/8f958fc2f94e09777603ae924746106c4a8db70d\"\u003e\u003ccode\u003e8f958fc\u003c/code\u003e\u003c/a\u003e 📜 Docs update (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1185\"\u003e#1185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/6c468ba6e7f3708f4b6b76e2ad1159f0462f75d6\"\u003e\u003ccode\u003e6c468ba\u003c/code\u003e\u003c/a\u003e Bump version to 9.0.1-beta.0 and update publish tag to beta (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1179\"\u003e#1179\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/246d386e7753f5700b73bc77ddc8f9f51cd81979\"\u003e\u003ccode\u003e246d386\u003c/code\u003e\u003c/a\u003e Refactor snapshot handling to improve error management and processing efficie...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/3ce5fbee177b9d9ca9ab2141ba6ec1d604f2e5af\"\u003e\u003ccode\u003e3ce5fbe\u003c/code\u003e\u003c/a\u003e release v9.0.0 (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1178\"\u003e#1178\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/percy/percy-storybook/compare/v7.0.0...v9.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@storybook/addon-a11y` from 9.0.18 to 9.1.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/releases\"\u003e\u003ccode\u003e@​storybook/addon-a11y\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.1.8\u003c/h2\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.7\u003c/h2\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.6\u003c/h2\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.5\u003c/h2\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.4\u003c/h2\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.3\u003c/h2\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMock: Catch errors when transforming preview files - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32216\"\u003e#32216\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Fix version mismatch error in Webpack - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32306\"\u003e#32306\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate traffic coming from error/upgrade links - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32287\"\u003e#32287\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate unattributed traffic from Onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32286\"\u003e#32286\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.2\u003c/h2\u003e\n\u003ch2\u003e9.1.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAddon Docs: Fix Symbol conversion issue in docs page and controls panel - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32220\"\u003e#32220\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Fix \u003ccode\u003eentry.polyfills\u003c/code\u003e undefined error - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32230\"\u003e#32230\u003c/a\u003e, thanks \u003ca href=\"https://github.com/sk-pub\"\u003e\u003ccode\u003e@​sk-pub\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Inherit options from browserTarget - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32108\"\u003e#32108\u003c/a\u003e, thanks \u003ca href=\"https://github.com/gingeekrishna\"\u003e\u003ccode\u003e@​gingeekrishna\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Improve addon detection in automigrations on windows - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31937\"\u003e#31937\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md\"\u003e\u003ccode\u003e@​storybook/addon-a11y\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMock: Catch errors when transforming preview files - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32216\"\u003e#32216\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Fix version mismatch error in Webpack - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32306\"\u003e#32306\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate traffic coming from error/upgrade links - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32287\"\u003e#32287\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate unattributed traffic from Onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32286\"\u003e#32286\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAddon Docs: Fix Symbol conversion issue in docs page and controls panel - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32220\"\u003e#32220\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Fix \u003ccode\u003eentry.polyfills\u003c/code\u003e undefined error - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32230\"\u003e#32230\u003c/a\u003e, thanks \u003ca href=\"https://github.com/sk-pub\"\u003e\u003ccode\u003e@​sk-pub\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Inherit options from browserTarget - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32108\"\u003e#32108\u003c/a\u003e, thanks \u003ca href=\"https://github.com/gingeekrishna\"\u003e\u003ccode\u003e@​gingeekrishna\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Improve addon detection in automigrations on windows - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31937\"\u003e#31937\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Return mocked router instead of actual router in useRouter - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32131\"\u003e#32131\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JulioJ11\"\u003e\u003ccode\u003e@​JulioJ11\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Improve dev cancellation handling - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32218\"\u003e#32218\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Fix throwing in readonly environments - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31785\"\u003e#31785\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eOnboarding: Tweak referral wording in survey - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32185\"\u003e#32185\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/28833d41b8d0e33bdc11244907fa8d14c8ddd1bf\"\u003e\u003ccode\u003e28833d4\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.7\u0026quot; to \u0026quot;9.1.8\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/006b304feb4cb0d2fd1408505ebeb5aababb0aad\"\u003e\u003ccode\u003e006b304\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.6\u0026quot; to \u0026quot;9.1.7\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/304edc38c499434140d712d8416749e75efe5dd1\"\u003e\u003ccode\u003e304edc3\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.5\u0026quot; to \u0026quot;9.1.6\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/56c04b001ee45f036ec5f1131fc8fbc553fad35d\"\u003e\u003ccode\u003e56c04b0\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.4\u0026quot; to \u0026quot;9.1.5\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/9f02684ad16e985bc5555f2e4ff4b37b1eb0c1ea\"\u003e\u003ccode\u003e9f02684\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.3\u0026quot; to \u0026quot;9.1.4\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/ce3915727c3a42d6107953b6b65f6008d704dd3d\"\u003e\u003ccode\u003ece39157\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.2\u0026quot; to \u0026quot;9.1.3\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/730bbf04edbd06d71c22959cf9c6902f98ba62a2\"\u003e\u003ccode\u003e730bbf0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y/issues/32284\"\u003e#32284\u003c/a\u003e from storybookjs/shilman/package-json-keywords\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/2bae930c307c0dea76060040deb4ca2a597c9e74\"\u003e\u003ccode\u003e2bae930\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y/issues/32283\"\u003e#32283\u003c/a\u003e from storybookjs/shilman/readme-utm-params\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/99c205c4fcccecfed1939c49cb1778f5474a3bdd\"\u003e\u003ccode\u003e99c205c\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.1\u0026quot; to \u0026quot;9.1.2\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/933b62649c9175803030ec9fbf7ada2123ba61dc\"\u003e\u003ccode\u003e933b626\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y/issues/32220\"\u003e#32220\u003c/a\u003e from storybookjs/yann/fix-jsx-issue-2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/storybookjs/storybook/commits/v9.1.8/code/addons/a11y\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@storybook/addon-docs` from 9.0.18 to 9.1.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/releases\"\u003e\u003ccode\u003e@​storybook/addon-docs\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.1.8\u003c/h2\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.7\u003c/h2\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.6\u003c/h2\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.5\u003c/h2\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.4\u003c/h2\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.3\u003c/h2\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMock: Catch errors when transforming preview files - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32216\"\u003e#32216\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Fix version mismatch error in Webpack - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32306\"\u003e#32306\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate traffic coming from error/upgrade links - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32287\"\u003e#32287\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate unattributed traffic from Onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32286\"\u003e#32286\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.2\u003c/h2\u003e\n\u003ch2\u003e9.1.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAddon Docs: Fix Symbol conversion issue in docs page and controls panel - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32220\"\u003e#32220\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Fix \u003ccode\u003eentry.polyfills\u003c/code\u003e undefined error - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32230\"\u003e#32230\u003c/a\u003e, thanks \u003ca href=\"https://github.com/sk-pub\"\u003e\u003ccode\u003e@​sk-pub\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Inherit options from browserTarget - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32108\"\u003e#32108\u003c/a\u003e, thanks \u003ca href=\"https://github.com/gingeekrishna\"\u003e\u003ccode\u003e@​gingeekrishna\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Improve addon detection in automigrations on windows - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31937\"\u003e#31937\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md\"\u003e\u003ccode\u003e@​storybook/addon-docs\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMock: Catch errors when transforming preview files - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32216\"\u003e#32216\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Fix version mismatch error in Webpack - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32306\"\u003e#32306\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate traffic coming from error/upgrade links - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32287\"\u003e#32287\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate unattributed traffic from Onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32286\"\u003e#32286\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAddon Docs: Fix Symbol conversion issue in docs page and controls panel - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32220\"\u003e#32220\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Fix \u003ccode\u003eentry.polyfills\u003c/code\u003e undefined error - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32230\"\u003e#32230\u003c/a\u003e, thanks \u003ca href=\"https://github.com/sk-pub\"\u003e\u003ccode\u003e@​sk-pub\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Inherit options from browserTarget - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32108\"\u003e#32108\u003c/a\u003e, thanks \u003ca href=\"https://github.com/gingeekrishna\"\u003e\u003ccode\u003e@​gingeekrishna\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Improve addon detection in automigrations on windows - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31937\"\u003e#31937\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Return mocked router instead of actual router in useRouter - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32131\"\u003e#32131\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JulioJ11\"\u003e\u003ccode\u003e@​JulioJ11\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Improve dev cancellation handling - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32218\"\u003e#32218\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Fix throwing in readonly environments - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31785\"\u003e#31785\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eOnboarding: Tweak referral wording in survey - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32185\"\u003e#32185\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/28833d41b8d0e33bdc11244907fa8d14c8ddd1bf\"\u003e\u003ccode\u003e28833d4\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.7\u0026quot; to \u0026quot;9.1.8\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/006b304feb4cb0d2fd1408505ebeb5aababb0aad\"\u003e\u003ccode\u003e006b304\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.6\u0026quot; to \u0026quot;9.1.7\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/304edc38c499434140d712d8416749e75efe5dd1\"\u003e\u003ccode\u003e304edc3\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.5\u0026quot; to \u0026quot;9.1.6\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/56c04b001ee45f036ec5f1131fc8fbc553fad35d\"\u003e\u003ccode\u003e56c04b0\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.4\u0026quot; to \u0026quot;9.1.5\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/9f02684ad16e985bc5555f2e4ff4b37b1eb0c1ea\"\u003e\u003ccode\u003e9f02684\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.3\u0026quot; to \u0026quot;9.1.4\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/ce3915727c3a42d6107953b6b65f6008d704dd3d\"\u003e\u003ccode\u003ece39157\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.2\u0026quot; to \u0026quot;9.1.3\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/730bbf04edbd06d71c22959cf9c6902f98ba62a2\"\u003e\u003ccode\u003e730bbf0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/docs/issues/32284\"\u003e#32284\u003c/a\u003e from storybookjs/shilman/package-json-keywords\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/0f86613a927a2eb04602558fce3a8b0f90ee51c3\"\u003e\u003ccode\u003e0f86613\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/docs/issues/32287\"\u003e#32287\u003c/a\u003e from storybookjs/shilman/error-utm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/2bae930c307c0dea76060040deb4ca2a597c9e74\"\u003e\u003ccode\u003e2bae930\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/docs/issues/32283\"\u003e#32283\u003c/a\u003e from storybookjs/shilman/readme-utm-params\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/f8ff03a47d479fbc9807f26682c8dcbb944f59cc\"\u003e\u003ccode\u003ef8ff03a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/docs/issues/32238\"\u003e#32238\u003c/a\u003e from storybookjs/sidnioulz/issue-31436-table\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/storybookjs/storybook/commits/v9.1.8/code/addons/docs\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@storybook/angular` from 9.0.18 to 9.1.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/releases\"\u003e\u003ccode\u003e@​storybook/angular\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.1.8\u003c/h2\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/Legal-and-General/canopy/pull/1585","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Legal-and-General%2Fcanopy/issues/1585","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1585/packages"},{"uuid":"2836110672","node_id":"PR_kwDOPxlS986pC51Q","number":77,"state":"open","title":"Bump the angular group in /generators/angular/resources with 13 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-17T10:39:26.000Z","updated_at":"2025-09-17T10:39:27.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"angular","update_count":13,"packages":[{"name":"@angular/common","old_version":"19.2.9","new_version":"20.3.0","repository_url":"https://github.com/angular/angular"},{"name":"@fortawesome/angular-fontawesome","old_version":"1.0.0","new_version":"3.0.0","repository_url":"https://github.com/FortAwesome/angular-fontawesome"},{"name":"@ng-bootstrap/ng-bootstrap","old_version":"18.0.0","new_version":"19.0.1","repository_url":"https://github.com/ng-bootstrap/ng-bootstrap"},{"name":"ngx-cookie-service","old_version":"19.1.2","new_version":"20.1.0","repository_url":"https://github.com/stevermeister/ngx-cookie-service"},{"name":"ngx-infinite-scroll","old_version":"19.0.0","new_version":"20.0.0","repository_url":"https://github.com/orizens/ngx-infinite-scroll"},{"name":"zone.js","old_version":"0.15.0","new_version":"0.15.1","repository_url":"https://github.com/angular/angular"},{"name":"@angular-architects/module-federation","old_version":"19.0.3","new_version":"20.0.0","repository_url":"https://github.com/angular-architects/module-federation-plugin"},{"name":"@angular-architects/module-federation-runtime","old_version":"19.0.3","new_version":"20.0.0"},{"name":"@angular-builders/custom-esbuild","old_version":"19.1.0","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/custom-webpack","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular/cli","old_version":"19.2.10","new_version":"20.3.1","repository_url":"https://github.com/angular/angular-cli"},{"name":"typescript","old_version":"5.8.3","new_version":"5.9.2","repository_url":"https://github.com/microsoft/TypeScript"}],"path":"/generators/angular/resources","ecosystem":"npm"},"body":"Bumps the angular group in /generators/angular/resources with 13 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `19.2.9` | `20.3.0` |\n| [@fortawesome/angular-fontawesome](https://github.com/FortAwesome/angular-fontawesome) | `1.0.0` | `3.0.0` |\n| [@ng-bootstrap/ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap) | `18.0.0` | `19.0.1` |\n| [ngx-cookie-service](https://github.com/stevermeister/ngx-cookie-service) | `19.1.2` | `20.1.0` |\n| [ngx-infinite-scroll](https://github.com/orizens/ngx-infinite-scroll) | `19.0.0` | `20.0.0` |\n| [zone.js](https://github.com/angular/angular/tree/HEAD/packages/zone.js) | `0.15.0` | `0.15.1` |\n| [@angular-architects/module-federation](https://github.com/angular-architects/module-federation-plugin) | `19.0.3` | `20.0.0` |\n| @angular-architects/module-federation-runtime | `19.0.3` | `20.0.0` |\n| [@angular-builders/custom-esbuild](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-esbuild) | `19.1.0` | `20.0.0` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `19.0.1` | `20.0.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `19.2.10` | `20.3.1` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.8.3` | `5.9.2` |\n\nUpdates `@angular/common` from 19.2.9 to 20.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.0\u003c/h2\u003e\n\u003ch3\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3f808d7c8cc59a4fd69f2e4b8d21a6510efa046\"\u003e\u003cimg src=\"https://img.shields.io/badge/a3f808d7c8-fix-green\" alt=\"fix - a3f808d7c8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove refresh button from transfer state tab (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63592\"\u003e#63592\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6117ccee2e1507fb00549cd70e064282645db803\"\u003e\u003cimg src=\"https://img.shields.io/badge/6117ccee2e-feat-blue\" alt=\"feat - 6117ccee2e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eintroduce \u003ccode\u003eBootstrapContext\u003c/code\u003e for improved server bootstrapping (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63636\"\u003e#63636\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe server-side bootstrapping process has been changed to eliminate the reliance on a global platform injector.\u003c/p\u003e\n\u003cp\u003eBefore:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = () =\u0026gt; bootstrapApplication(AppComponent, config);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eAfter:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = (context: BootstrapContext) =\u0026gt;\n  bootstrapApplication(AppComponent, config, context);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eA schematic is provided to automatically update \u003ccode\u003emain.server.ts\u003c/code\u003e files to pass the \u003ccode\u003eBootstrapContext\u003c/code\u003e to the \u003ccode\u003ebootstrapApplication\u003c/code\u003e call.\u003c/p\u003e\n\u003cp\u003eIn addition, \u003ccode\u003egetPlatform()\u003c/code\u003e and \u003ccode\u003edestroyPlatform()\u003c/code\u003e will now return \u003ccode\u003enull\u003c/code\u003e and be a no-op respectively when running in a server environment.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor more information please see: \u003ca href=\"https://github.com/angular/angular/security/advisories/GHSA-68x2-mx4q-78m7\"\u003ehttps://github.com/angular/angular/security/advisories/GHSA-68x2-mx4q-78m7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e20.3.0-rc.0\u003c/h2\u003e\n\u003ch3\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3f808d7c8cc59a4fd69f2e4b8d21a6510efa046\"\u003e\u003cimg src=\"https://img.shields.io/badge/a3f808d7c8-fix-green\" alt=\"fix - a3f808d7c8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove refresh button from transfer state tab (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63592\"\u003e#63592\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6117ccee2e1507fb00549cd70e064282645db803\"\u003e\u003cimg src=\"https://img.shields.io/badge/6117ccee2e-feat-blue\" alt=\"feat - 6117ccee2e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eintroduce \u003ccode\u003eBootstrapContext\u003c/code\u003e for improved server bootstrapping (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63636\"\u003e#63636\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe server-side bootstrapping process has been changed to eliminate the reliance on a global platform injector.\u003c/p\u003e\n\u003cp\u003eBefore:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = () =\u0026gt; bootstrapApplication(AppComponent, config);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eAfter:\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.0 (2025-09-10)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe server-side bootstrapping process has been changed to eliminate the reliance on a global platform injector.\u003c/p\u003e\n\u003cp\u003eBefore:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = () =\u0026gt; bootstrapApplication(AppComponent, config);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eAfter:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = (context: BootstrapContext) =\u0026gt;\n  bootstrapApplication(AppComponent, config, context);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eA schematic is provided to automatically update \u003ccode\u003emain.server.ts\u003c/code\u003e files to pass the \u003ccode\u003eBootstrapContext\u003c/code\u003e to the \u003ccode\u003ebootstrapApplication\u003c/code\u003e call.\u003c/p\u003e\n\u003cp\u003eIn addition, \u003ccode\u003egetPlatform()\u003c/code\u003e and \u003ccode\u003edestroyPlatform()\u003c/code\u003e will now return \u003ccode\u003enull\u003c/code\u003e and be a no-op respectively when running in a server environment.\u003c/p\u003e\n\u003cp\u003e(cherry picked from commit 8bf80c9d2314b4f2bcf3df83ae01552a6fc49834)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3f808d7c8cc59a4fd69f2e4b8d21a6510efa046\"\u003ea3f808d7c8\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eremove refresh button from transfer state tab (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63592\"\u003e#63592\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6117ccee2e1507fb00549cd70e064282645db803\"\u003e6117ccee2e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce \u003ccode\u003eBootstrapContext\u003c/code\u003e for improved server bootstrapping (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63636\"\u003e#63636\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e(test only) - \u003ccode\u003eTestBed\u003c/code\u003e now provides a fake \u003ccode\u003ePlatformLocation\u003c/code\u003e\nimplementation that supports the Navigation API. This may break some\ntests, though we have not observed any failures internally. You can revert to the\nold default for \u003ccode\u003eTestBed\u003c/code\u003e by providing the \u003ccode\u003eMockPlatformLocation\u003c/code\u003e from\n\u003ccode\u003e@angular/common/testing\u003c/code\u003e in your providers:\n\u003ccode\u003e{provide: PlatformLocation, useClass: MockPlatformLocation}\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e(test only) - Using \u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e in the\nTestBed providers would previously prevent \u003ccode\u003eTestBed\u003c/code\u003e from rethrowing\nerrors as it should. Errors in the test will now be rethrown, regardless\nof the usage of \u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e. Tests should be adjusted to\nprevent or account for these errors. As in previous major versions,\nthis behavior can be disabled with \u003ccode\u003erethrowApplicationErrors: false\u003c/code\u003e in\n\u003ccode\u003econfigureTestingModule\u003c/code\u003e as a last resort.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a7725ee4c91641ef92b19f0fd35dc0fc000bc84\"\u003e\u003ccode\u003e7a7725e\u003c/code\u003e\u003c/a\u003e refactor(core): Update tests for zoneless by default (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63672\"\u003e#63672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b549cd28ae78bff43d9a1c8e576ed9ca480174c4\"\u003e\u003ccode\u003eb549cd2\u003c/code\u003e\u003c/a\u003e refactor(bazel): reduce build deps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63348\"\u003e#63348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e8d9bc511966a91bd6fbac912d5809f027525c2f\"\u003e\u003ccode\u003ee8d9bc5\u003c/code\u003e\u003c/a\u003e refactor(http): rework the \u003ccode\u003eHttpEvent\u003c/code\u003e union to improve narrowing. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63267\"\u003e#63267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/705b94bd21f3f3f3dd8f10881a90bfae049c1a07\"\u003e\u003ccode\u003e705b94b\u003c/code\u003e\u003c/a\u003e refactor: remove TODOs which have been corrected (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63421\"\u003e#63421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9a27c5befb676e894c522392e2c06b4f8fdca25a\"\u003e\u003ccode\u003e9a27c5b\u003c/code\u003e\u003c/a\u003e build: rename defaults2.bzl to defaults.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63384\"\u003e#63384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/10b0927e15bb6158a7262b0f2acd310836c96ca7\"\u003e\u003ccode\u003e10b0927\u003c/code\u003e\u003c/a\u003e refactor: various build and import specificer fixes for strict deps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63324\"\u003e#63324\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/38b9b79c29f7ef52c1b33c5b4997e11a4d2c20bc\"\u003e\u003ccode\u003e38b9b79\u003c/code\u003e\u003c/a\u003e build: move from using WORKSPACE to MODULE.bazel (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63249\"\u003e#63249\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ecc86e298689bb20e292d2fe720a36c7139c4ff4\"\u003e\u003ccode\u003eecc86e2\u003c/code\u003e\u003c/a\u003e build: explicitly include types for locales in \u003ccode\u003e@​angular/common/\u003c/code\u003elocales (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63030\"\u003e#63030\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/fa8d8b8396c9992d25a2e0256ae895ca7c86ad66\"\u003e\u003ccode\u003efa8d8b8\u003c/code\u003e\u003c/a\u003e build: migrate all npm packages to use new rules_js based npm_package rule (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e5d6fb5825d5e1b76d73d5c1c64c9986cfb02874\"\u003e\u003ccode\u003ee5d6fb5\u003c/code\u003e\u003c/a\u003e fix(http): Reset headers, progress, and statusCode when using \u003ccode\u003eset()\u003c/code\u003e in `Htt...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.3.0/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@fortawesome/angular-fontawesome` from 1.0.0 to 3.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.0.0\u003c/h2\u003e\n\u003cp\u003eThe release should be backwards compatible with 2.x, but since we bump the major dependency on \u003ccode\u003e@fortawesome/fontawesome-svg-core\u003c/code\u003e to 7.0.0, it is a major release. Please open an issue if you find any incompatibilities.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Font Awesome 7.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReverted the change from 2.0.0 making the \u003ccode\u003eicon\u003c/code\u003e property in \u003ccode\u003efa-icon\u003c/code\u003e and \u003ccode\u003efa-duotone-icon\u003c/code\u003e components required at compile-time.\u003c/li\u003e\n\u003cli\u003eUpdate documentation to use self-closing tags for \u003ccode\u003efa-icon\u003c/code\u003e and \u003ccode\u003efa-duotone-icon\u003c/code\u003e components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestored possibility to set inputs to \u003ccode\u003eundefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.0\u003c/h2\u003e\n\u003cp\u003eConverted all library internal component implementation to use reactive Signal APIs.\u003c/p\u003e\n\u003cp\u003eMake sure to check \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/UPGRADING.md\"\u003eupgrade instructions\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 20.\u003c/li\u003e\n\u003cli\u003eDocumentation on changes in Programmatic API.\u003c/li\u003e\n\u003cli\u003eDocumentation for upgrading 1.0.0 to 2.0.0\u003c/li\u003e\n\u003cli\u003eUpdated code to use signal APIs like signal, computed, effect, input, model.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003echangeDetection: ChangeDetectionStrategy.OnPush\u003c/code\u003e 🚀 for all components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated the \u003ccode\u003erender\u003c/code\u003e function from the \u003ccode\u003eFaIconComponent\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eProgrammatic API has changed, \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/docs/usage/features.md#programmatic-api\"\u003eplease refer here\u003c/a\u003e and migration guide \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/HEAD/docs/upgrading/1.0.0-2.0.0.md\"\u003e1.0.0 to 2.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/3.0.0\"\u003e3.0.0\u003c/a\u003e (2025-08-03)\u003c/h2\u003e\n\u003cp\u003eThe release should be backwards compatible with 2.x, but since we bump the major dependency on \u003ccode\u003e@fortawesome/fontawesome-svg-core\u003c/code\u003e to 7.0.0, it is a major release. Please open an issue if you find any incompatibilities.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Font Awesome 7.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReverted the change from 2.0.0 making the \u003ccode\u003eicon\u003c/code\u003e property in \u003ccode\u003efa-icon\u003c/code\u003e and \u003ccode\u003efa-duotone-icon\u003c/code\u003e components required at compile-time.\u003c/li\u003e\n\u003cli\u003eUpdate documentation to use self-closing tags for \u003ccode\u003efa-icon\u003c/code\u003e and \u003ccode\u003efa-duotone-icon\u003c/code\u003e components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/2.0.1\"\u003e2.0.1\u003c/a\u003e (2025-06-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestored possibility to set inputs to \u003ccode\u003eundefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/2.0.0\"\u003e2.0.0\u003c/a\u003e (2025-05-31)\u003c/h2\u003e\n\u003cp\u003eConverted all library internal component implementation to use reactive Signal APIs.\u003c/p\u003e\n\u003cp\u003eMake sure to check \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/UPGRADING.md\"\u003eupgrade instructions\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 20.\u003c/li\u003e\n\u003cli\u003eDocumentation on changes in Programmatic API.\u003c/li\u003e\n\u003cli\u003eDocumentation for upgrading 1.0.0 to 2.0.0\u003c/li\u003e\n\u003cli\u003eUpdated code to use signal APIs like signal, computed, effect, input, model.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003echangeDetection: ChangeDetectionStrategy.OnPush\u003c/code\u003e 🚀 for all components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated the \u003ccode\u003erender\u003c/code\u003e function from the \u003ccode\u003eFaIconComponent\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eProgrammatic API has changed, \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/docs/usage/features.md#programmatic-api\"\u003eplease refer here\u003c/a\u003e and migration guide \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/docs/upgrading/1.0.0-2.0.0.md\"\u003e1.0.0 to 2.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/993769e7f6aa3a4b612cf53d7afe68b3d45f5e4f\"\u003e\u003ccode\u003e993769e\u003c/code\u003e\u003c/a\u003e Release 3.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/21513a97999df5b970bada3ebf648299689da450\"\u003e\u003ccode\u003e21513a9\u003c/code\u003e\u003c/a\u003e Convert most FontAwesome elements to self-closing tags (\u003ca href=\"https://redirect.github.com/FortAwesome/angular-fontawesome/issues/477\"\u003e#477\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/11dfd8fa5969b785f1f6d22176b0b5d92fbf6a32\"\u003e\u003ccode\u003e11dfd8f\u003c/code\u003e\u003c/a\u003e chore(icon): remove required constraint on icon input to support dynamic assi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/5e961d9eab2f27cb6626840047dd7f285f1150e9\"\u003e\u003ccode\u003e5e961d9\u003c/code\u003e\u003c/a\u003e remove v7 tests, keep v5 and v6 compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/2cc834f3835c68c8b1b848e220d9ae7aa2ffb4d1\"\u003e\u003ccode\u003e2cc834f\u003c/code\u003e\u003c/a\u003e Improve title accessibility test for FaIconComponent to accommodate FontAweso...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/bd768506faf898bf8d9199670fce27aec4a309c5\"\u003e\u003ccode\u003ebd76850\u003c/code\u003e\u003c/a\u003e Enhance accessibility tests for FaIconComponent by verifying title attribute ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/d1a3c6f0bf7cb9243318b855323c136b26f1a412\"\u003e\u003ccode\u003ed1a3c6f\u003c/code\u003e\u003c/a\u003e Update FontAwesome package versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/03f944aab6a887354540139dfc7a3cfdc2cf377c\"\u003e\u003ccode\u003e03f944a\u003c/code\u003e\u003c/a\u003e Comment out test for \u0026lt;title\u0026gt; element rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/49059c71754b6d225ede5db3317689a19c416042\"\u003e\u003ccode\u003e49059c7\u003c/code\u003e\u003c/a\u003e Fix minor formatting issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/9965588f3d58b723135a81ad8823ec6d281d79f8\"\u003e\u003ccode\u003e9965588\u003c/code\u003e\u003c/a\u003e Update docs and schema for Font Awesome 7 support\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/compare/1.0.0...3.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ng-bootstrap/ng-bootstrap` from 18.0.0 to 19.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/releases\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.0.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.0...19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-07-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etoast:\u003c/strong\u003e missing export of \u003ccode\u003eNgbToastOptions\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e6b26ef3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epositioning:\u003c/strong\u003e missing export of \u003ccode\u003ePlacementArray\u003c/code\u003e type (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e) (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003ea4e94a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e missing export of \u003ccode\u003eDayTemplateContext\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e1b90da5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e20.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e tooltip created after view destroyed (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003ed9c96aa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.0-rc.0\u003c/h2\u003e\n\u003cp\u003eThis release candidate version bumps minimum required versions to Angular 20.0.0\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/blob/master/CHANGELOG.md\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.0...19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-07-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etoast:\u003c/strong\u003e missing export of \u003ccode\u003eNgbToastOptions\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e6b26ef3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epositioning:\u003c/strong\u003e missing export of \u003ccode\u003ePlacementArray\u003c/code\u003e type (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e) (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003ea4e94a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e missing export of \u003ccode\u003eDayTemplateContext\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e1b90da5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e20.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e tooltip created after view destroyed (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003ed9c96aa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/b117049a0f46998703c296150a03e7b14a1ca6d9\"\u003e\u003ccode\u003eb117049\u003c/code\u003e\u003c/a\u003e 19.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003e\u003ccode\u003ea4e94a3\u003c/code\u003e\u003c/a\u003e fix(types): export PlacementArray in main index (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/db98bf0e2be8c77e46b77b6f304f051ec391ef98\"\u003e\u003ccode\u003edb98bf0\u003c/code\u003e\u003c/a\u003e demo: add clipboard button functionality and relevant styling (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e\u003ccode\u003e1b90da5\u003c/code\u003e\u003c/a\u003e feat(datepicker): export DayTemplateContext\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e\u003ccode\u003e6b26ef3\u003c/code\u003e\u003c/a\u003e fix(toast): missing export of NgbToastOptions interface\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/2704265b58621bca48f7ca2926113a18cf15dd5c\"\u003e\u003ccode\u003e2704265\u003c/code\u003e\u003c/a\u003e docs: release 19.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/3dec2a2da5f598968ce532e094305456e4bac6e3\"\u003e\u003ccode\u003e3dec2a2\u003c/code\u003e\u003c/a\u003e docs: add release 18 in demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/622ba01aaf6ad2dfad9e121480c9d731b8e2efa9\"\u003e\u003ccode\u003e622ba01\u003c/code\u003e\u003c/a\u003e docs: update README adding 19.0.0 info\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003e\u003ccode\u003ed9c96aa\u003c/code\u003e\u003c/a\u003e fix(tooltip): tooltip created after view destroyed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a6635ce9f8244ee615e93caf739a0b290aa2895e\"\u003e\u003ccode\u003ea6635ce\u003c/code\u003e\u003c/a\u003e demo: bump bootstrap to 5.3.6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-cookie-service` from 19.1.2 to 20.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/releases\"\u003engx-cookie-service's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(package): add missing newline at end of file in package.json by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/357\"\u003estevermeister/ngx-cookie-service#357\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(ssr-cookie): implement improved cookie retrieval from request by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/362\"\u003estevermeister/ngx-cookie-service#362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v20.0.1...v20.1.0\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v20.0.1...v20.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e20.0.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(package): update version to 20.0.0 for ngx-cookie-service and ng… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/354\"\u003estevermeister/ngx-cookie-service#354\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChange peer dependencies by \u003ca href=\"https://github.com/sokheang-dev\"\u003e\u003ccode\u003e@​sokheang-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/356\"\u003estevermeister/ngx-cookie-service#356\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sokheang-dev\"\u003e\u003ccode\u003e@​sokheang-dev\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/356\"\u003estevermeister/ngx-cookie-service#356\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v20.0.0...v20.0.1\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v20.0.0...v20.0.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(core): adds angular 20 support by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/353\"\u003estevermeister/ngx-cookie-service#353\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.5...v20.0.0\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.5...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: update Node.js version to 20 and upgrade action versions in CI… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/351\"\u003estevermeister/ngx-cookie-service#351\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: migrate tests from Jest to Jasmine and update related configurations by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/352\"\u003estevermeister/ngx-cookie-service#352\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.4...v19.1.5\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.4...v19.1.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(core): revert-replace headers.get('cookie') with headers.cookie by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/348\"\u003estevermeister/ngx-cookie-service#348\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.3...v19.1.4\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.3...v19.1.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(package): bump version to 19.1.2 for ngx-cookie-service and ngx… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/344\"\u003estevermeister/ngx-cookie-service#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(core): replace headers.get('cookie') with headers.cookie by \u003ca href=\"https://github.com/mmart1n\"\u003e\u003ccode\u003e@​mmart1n\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/347\"\u003estevermeister/ngx-cookie-service#347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mmart1n\"\u003e\u003ccode\u003e@​mmart1n\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/347\"\u003estevermeister/ngx-cookie-service#347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v19.1.3\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v19.1.3\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/c7524b46127f7b6bd4ab30cd87514520e352d743\"\u003e\u003ccode\u003ec7524b4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/362\"\u003e#362\u003c/a\u003e from stevermeister/development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/74f2492ab3ab1269cb6f0bf672586bf71d4f4957\"\u003e\u003ccode\u003e74f2492\u003c/code\u003e\u003c/a\u003e chore(package): update version to 20.1.0 for ngx-cookie-service and ngx-cooki...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/1252ce74c9d3c7a20868ecf08ec90a7901b17fe3\"\u003e\u003ccode\u003e1252ce7\u003c/code\u003e\u003c/a\u003e refactor(ssr-cookie): simplify cookie retrieval logic in getRequestCookies me...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/11fa2366d1f302ce20179ed80d69db6ea4e5a051\"\u003e\u003ccode\u003e11fa236\u003c/code\u003e\u003c/a\u003e feat(ssr-cookie): implement getRequestCookies method for improved cookie retr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/fb2802375b61d4d3277c9b2014fbc3c5e07132e7\"\u003e\u003ccode\u003efb28023\u003c/code\u003e\u003c/a\u003e feat(package): update version to 20.0.1 for ngx-cookie-service and ngx-cookie...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/99c84bf3b9139336d7acd6551e47c242c6858519\"\u003e\u003ccode\u003e99c84bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/357\"\u003e#357\u003c/a\u003e from stevermeister/development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/559c0dbe29faa20ee95855ad9e59fc09fa22fecf\"\u003e\u003ccode\u003e559c0db\u003c/code\u003e\u003c/a\u003e fix(package): add missing newline at end of file in package.json\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/0771c9290123eafa0cb35a2802a266ac32bd0914\"\u003e\u003ccode\u003e0771c92\u003c/code\u003e\u003c/a\u003e Change peer dependencies (\u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/356\"\u003e#356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/4060892b99ea59f7c6bca67e6c6e32f5085dddac\"\u003e\u003ccode\u003e4060892\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/354\"\u003e#354\u003c/a\u003e from stevermeister/development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/23eb206dd8634f93e7b0a35bc77c544f9e26572d\"\u003e\u003ccode\u003e23eb206\u003c/code\u003e\u003c/a\u003e feat(package): update version to 20.0.0 for ngx-cookie-service and ngx-cookie...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v20.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-infinite-scroll` from 19.0.0 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/orizens/ngx-infinite-scroll/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zone.js` from 0.15.0 to 0.15.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/packages/zone.js/CHANGELOG.md\"\u003ezone.js's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/angular/angular/compare/zone.js-0.15.0...zone.js-0.15.1\"\u003e0.15.1\u003c/a\u003e (2025-05-22)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ezone.js:\u003c/strong\u003e classes that extend Error should retain cause property (\u003ca href=\"https://redirect.github.com/angular/angular/issues/61599\"\u003e#61599\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/ad8931cb4968b2bd25b05dcd3d856ec32e4d7145\"\u003ead8931c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ezone.js:\u003c/strong\u003e more robust check for promise-like objects (\u003ca href=\"https://redirect.github.com/angular/angular/issues/57388\"\u003e#57388\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/e608e6cfbbc9fba7c74bfef72f102a502e951e6c\"\u003ee608e6c\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/57385\"\u003e#57385\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ezone.js:\u003c/strong\u003e remove \u003ccode\u003eabort\u003c/code\u003e listener once fetch is settled (\u003ca href=\"https://redirect.github.com/angular/angular/issues/57882\"\u003e#57882\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/69763491c3ffb576822b179af3363ec666d43bce\"\u003e6976349\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e33444e2368926c4a7c00b7ab5277691c758b506\"\u003e\u003ccode\u003ee33444e\u003c/code\u003e\u003c/a\u003e release: cut the zone.js-0.15.1 release (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61632\"\u003e#61632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ea39e050ccbb0c78b4976812140eb8d353b1bea\"\u003e\u003ccode\u003e1ea39e0\u003c/code\u003e\u003c/a\u003e refactor(zone.js): Add a \u003ccode\u003ewithProxyZone\u003c/code\u003e helper that might be used for unpatc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ad8931cb4968b2bd25b05dcd3d856ec32e4d7145\"\u003e\u003ccode\u003ead8931c\u003c/code\u003e\u003c/a\u003e fix(zone.js): classes that extend Error should retain cause property (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61599\"\u003e#61599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e57509e0a2cbf5668d7af5d00e11009646014559\"\u003e\u003ccode\u003ee57509e\u003c/code\u003e\u003c/a\u003e build: update dependency google-closure-compiler to v20250519 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61551\"\u003e#61551\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/c7420df4499ab09b8e6c6374989b8dccd1afc558\"\u003e\u003ccode\u003ec7420df\u003c/code\u003e\u003c/a\u003e build: update dependency google-closure-compiler to v20250518 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61490\"\u003e#61490\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/10c2ab2a4a8ca4b7da740af4c35d286beed7480b\"\u003e\u003ccode\u003e10c2ab2\u003c/code\u003e\u003c/a\u003e build: lock file maintenance (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61456\"\u003e#61456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/41be5ee17e122b164158c0808dd9ed29763fd5f2\"\u003e\u003ccode\u003e41be5ee\u003c/code\u003e\u003c/a\u003e build: update dependency google-closure-compiler to v20250514 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61439\"\u003e#61439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d39b4af2e1a8bd267818087eee3580c0023427c\"\u003e\u003ccode\u003e7d39b4a\u003c/code\u003e\u003c/a\u003e build: update dependency google-closure-compiler to v20250407 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61397\"\u003e#61397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b71c35a6b5046175563458127451e8162142477b\"\u003e\u003ccode\u003eb71c35a\u003c/code\u003e\u003c/a\u003e refactor: update \u003ccode\u003epackages/core:{core,src}\u003c/code\u003e to \u003ccode\u003ets_project\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61275\"\u003e#61275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/0fc0d67146f8adfae3e7505505d791237b6b51d5\"\u003e\u003ccode\u003e0fc0d67\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61286\"\u003e#61286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/zone.js-0.15.1/packages/zone.js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-architects/module-federation` from 19.0.3 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/releases\"\u003e\u003ccode\u003e@​angular-architects/module-federation\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular-architects/module-federation-plugin/commit/d4bf6f035b01631fa7f1bf6f98838ae94db2f8ef\"\u003efeat(nf): migrate to angular 20\u003c/a\u003e\n\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/compare/19.0.23...20.0.0\"\u003ehttps://github.com/angular-architects/module-federation-plugin/compare/19.0.23...20.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.23\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(index-file): fixed the double quote issue by \u003ca href=\"https://github.com/asollberger\"\u003e\u003ccode\u003e@​asollberger\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/angular-architects/module-federation-plugin/pull/849\"\u003eangular-architects/module-federation-plugin#849\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/compare/19.0.19...19.0.23\"\u003ehttps://github.com/angular-architects/module-federation-plugin/compare/19.0.19...19.0.23\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.0.19\u003c/h2\u003e\n\u003cp\u003eThis release solves several issues that occurred with Angular 19.2, and it also solves issues with an entire class of npm packages using Singletons. For this, it delegates directly to the underlying bundler for chunk splitting. Hence, we don't need the transient flag anymore. \u003ccode\u003etransient\u003c/code\u003e deps will end up in their own bundles automatically \u003cem\u003ewhen\u003c/em\u003e required (when used from more than one other dependencies). In this regards, Native Federation now behaves like Module Federation.\u003c/p\u003e\n\u003ch2\u003e19.0.16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(nf): add shareAngularLocales helper\u003c/li\u003e\n\u003cli\u003efeat(nf): support angular i18n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/angular-architects/module-federation-plugin/blob/main/libs/native-federation/README.md#angular-i18n\"\u003eDetails in Readme\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.0.10\u003c/h2\u003e\n\u003cp\u003eBig thanks to our contributors!\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003efeat(nf-runtime): added cacheTag option\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003einitFederation\u003c/code\u003e now has a \u003ccode\u003ecacheTag\u003c/code\u003e option. If you set it, e.g., to \u003ccode\u003eDate.now()\u003c/code\u003e, it will be appended to the URLs of the fetched \u003ccode\u003eremoteEntries.json\u003c/code\u003e files to prevent caching.\u003c/p\u003e\n\u003cp\u003eBig thanks to \u003ca href=\"https://github.com/asollberger\"\u003eAlain Sollberger\u003c/a\u003e for this contribution!\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003efeat(nf): allow to version repo-internal libs (mapped paths)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eWe can now assign a version number to monorepo-internal libs (mapped paths). This allows to detect conflicts in cases where different micro frontends of the same monorepo were deployed independently and a shared internal lib was changed in between the two deployments.\u003c/p\u003e\n\u003cp\u003eTo use this feature, just assign a version number in the libs package.json and activate the new feature using the new feature map:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003emodule.exports = withNativeFederation({\n\u003cp\u003e[...]\u003c/p\u003e\n\u003cp\u003efeatures: {\nmappingVersion: true,\n},\u003c/p\u003e\n\u003cp\u003e});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eThe new feature map activates features that might cause breaking changes. Without explicitly activating these features, the usual backwards-compatible behavior is used.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/commits/20.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-architects/module-federation-runtime` from 19.0.3 to 20.0.0\n\nUpdates `@angular-builders/custom-esbuild` from 19.1.0 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-esbuild/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@20.0.0-beta.0...@angular-builders/custom-esbuild@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@19.1.0...@angular-builders/custom-esbuild@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecustom-esbuild:\u003c/strong\u003e expose builder options to plugins (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/2c114d9ccf105d8bbf024de9e67a69d625ce2742\"\u003e2c114d9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/2c114d9ccf105d8bbf024de9e67a69d625ce2742\"\u003e\u003ccode\u003e2c114d9\u003c/code\u003e\u003c/a\u003e feat(custom-esbuild): expose builder options to plugins\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-esbuild@20.0.0/packages/custom-esbuild\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/custom-webpack` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-webpack/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.0-beta.0...@angular-builders/custom-webpack@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.1...@angular-builders/custom-webpack@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-webpack@20.0.0/packages/custom-webpack\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/cli` from 19.2.10 to 20.3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/releases\"\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.1\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/be60be4997ea0f7be3a4fb993f87b1bd29fc1493\"\u003e\u003cimg src=\"https://img.shields.io/badge/be60be499-fix-green\" alt=\"fix - be60be499\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd timestamp to bundle generation log\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d60f4e53d8f511d313e517161dc26eb3cc005f1c\"\u003e\u003cimg src=\"https://img.shields.io/badge/d60f4e53d-fix-green\" alt=\"fix - d60f4e53d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate vite to version \u003ccode\u003e7.1.5\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f6ad41c134c7ae938ccda908967e7cc863b3db16\"\u003e\u003cimg src=\"https://img.shields.io/badge/f6ad41c13-fix-green\" alt=\"fix - f6ad41c13\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove bun lockfile detection and optimize lockfile checks\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ef20a278d1455b9cdffc5102b13d0b2206ef1ecb\"\u003e\u003cimg src=\"https://img.shields.io/badge/ef20a278d-fix-green\" alt=\"fix - ef20a278d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ealign labels in ai-config schema\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1a789087344aa94d061839122e6a63efbfc9c905\"\u003e\u003cimg src=\"https://img.shields.io/badge/1a7890873-fix-green\" alt=\"fix - 1a7890873\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid extra tick in SSR builds\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5d46d6ec114052715a8bd17761a4f258961ad26b\"\u003e\u003cimg src=\"https://img.shields.io/badge/5d46d6ec1-fix-green\" alt=\"fix - 5d46d6ec1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003epreserve names in esbuild for improved debugging in dev mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/ssr\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/7eacb41878f5fdac8d40aedfcca6794b77eda5ff\"\u003e\u003cimg src=\"https://img.shields.io/badge/7eacb4187-feat-blue\" alt=\"feat - 7eacb4187\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eintroduce BootstrapContext for isolated server-side rendering\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/ssr\u003c/code\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe server-side bootstrapping process has been changed to eliminate the reliance on a global platform injector.\u003c/p\u003e\n\u003cp\u003eBefore:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = () =\u0026gt; bootstrapApplication(AppComponent, config);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eAfter:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = (context: BootstrapContext) =\u0026gt;\n  bootstrapApplication(AppComponent, config, context);\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor more information please see: \u003ca href=\"https://github.com/angular/angular/security/advisories/GHSA-68x2-mx4q-78m7\"\u003ehttps://github.com/angular/angular/security/advisories/GHSA-68x2-mx4q-78m7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e20.3.0-rc.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f6ad41c134c7ae938ccda908967e7cc863b3db16\"\u003e\u003cimg src=\"https://img.shields.io/badge/f6ad41c13-fix-green\" alt=\"fix - f6ad41c13\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove bun lockfile detection and optimize lockfile checks\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.1 (2025-09-11)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/be60be4997ea0f7be3a4fb993f87b1bd29fc1493\"\u003ebe60be499\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd timestamp to bundle generation log\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d60f4e53d8f511d313e517161dc26eb3cc005f1c\"\u003ed60f4e53d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate vite to version \u003ccode\u003e7.1.5\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e18.2.21 (2025-09-10)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/ssr\u003c/code\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe server-side bootstrapping process has been changed to eliminate the reliance on a global platform injector.\u003c/p\u003e\n\u003cp\u003eBefore:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = () =\u0026gt; bootstrapApplication(AppComponent, config);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eAfter:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = (context: BootstrapContext) =\u0026gt;\n  bootstrapApplication(AppComponent, config, context);\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/700e6bc0177a3e345a88e31be22496cc3054349b\"\u003e700e6bc01\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid extra tick in SSR builds\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/cccc91b919b4a8365efce9ee691940e351349075\"\u003ecccc91b91\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid extra tick in SSR dev-server builds\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/ssr\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/9930e8aab37772ad46d5b6ad018458bbea12b9ba\"\u003e\u003ccode\u003e9930e8a\u003c/code\u003e\u003c/a\u003e release: cut the v20.3.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/be60be4997ea0f7be3a4fb993f87b1bd29fc1493\"\u003e\u003ccode\u003ebe60be4\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): add timestamp to bundle generation log\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d60f4e53d8f511d313e517161dc26eb3cc005f1c\"\u003e\u003ccode\u003ed60f4e5\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): update vite to version \u003ccode\u003e7.1.5\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/4e51032e3e474d7e7a82a493098162a1dd15bb75\"\u003e\u003ccode\u003e4e51032\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): Add instructions to component zoneless migration to r...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5e3b6faa55911f334079a0ab41cb1512d0f198f6\"\u003e\u003ccode\u003e5e3b6fa\u003c/code\u003e\u003c/a\u003e build: update github/codeql-action action to v3.30.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/db1c0256ce34b6df0dde861ccc2f194e6c532e61\"\u003e\u003ccode\u003edb1c025\u003c/code\u003e\u003c/a\u003e release: cut the v20.3.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d85d5903983853fceba6f841b76c17f5f5c4e000\"\u003e\u003ccode\u003ed85d590\u003c/code\u003e\u003c/a\u003e release: cut the v20.3.0-rc.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/b3c1d72652dfebbf327054cd91e536a0ae061698\"\u003e\u003ccode\u003eb3c1d72\u003c/code\u003e\u003c/a\u003e build: update FW packages to 20.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/7eacb41878f5fdac8d40aedfcca6794b77eda5ff\"\u003e\u003ccode\u003e7eacb41\u003c/code\u003e\u003c/a\u003e feat(\u003ccode\u003e@​angular/ssr\u003c/code\u003e): introduce BootstrapContext for isolated server-side rende...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ef20a278d1455b9cdffc5102b13d0b2206ef1ecb\"\u003e\u003ccode\u003eef20a27\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​schematics/angular\u003c/code\u003e): align labels in ai-config schema\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular-cli/compare/19.2.10...20.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript` from 5.8.3 to 5.9.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/TypeScript/releases\"\u003etypescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTypeScript 5.9\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9/\"\u003erelease announcement\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.1%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.1 (RC)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cem\u003eNo specific changes for TypeScript 5.9.2 (Stable)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTypeScript 5.9 RC\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9-rc/\"\u003erelease announcement\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.1%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.1 (RC)\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTypeScript 5.9 Beta\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9-beta/\"\u003erelease announcement\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/be8678315541e814da14316848a9468e8f90ab11\"\u003e\u003ccode\u003ebe86783\u003c/code\u003e\u003c/a\u003e Give more specific errors for \u003ccode\u003everbatimModuleSyntax\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62113\"\u003e#62113\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/22ef57786f5ca99837c430439bc6003c068fe1d2\"\u003e\u003ccode\u003e22ef577\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250714...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/d5a414cd1dceb209fd2569e89d1096812218e8c5\"\u003e\u003ccode\u003ed5a414c\u003c/code\u003e\u003c/a\u003e Don't use \u003ccode\u003enoErrorTruncation\u003c/code\u003e when printing types with \u003ccode\u003emaximumLength\u003c/code\u003e set (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/f14b5c8a2f0be503ac455054a91573c63f0e5088\"\u003e\u003ccode\u003ef14b5c8\u003c/code\u003e\u003c/a\u003e Remove unused and confusing dom.iterable.d.ts file (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62037\"\u003e#62037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/2778e84ed88894156e2c5a17d74a25c73cc96ffe\"\u003e\u003ccode\u003e2778e84\u003c/code\u003e\u003c/a\u003e Restore AbortSignal.abort (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62086\"\u003e#62086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/65cb4bd2d52cd882f2c3a503681479eb2ed291ca\"\u003e\u003ccode\u003e65cb4bd\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250710...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/9e20e032effad965567d4a1e1c30d5433b0a3332\"\u003e\u003ccode\u003e9e20e03\u003c/code\u003e\u003c/a\u003e Clear out checker-level stacks on pop (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62016\"\u003e#62016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/87740bc7fe3d8d2af47d767db081491f40b8a90d\"\u003e\u003ccode\u003e87740bc\u003c/code\u003e\u003c/a\u003e Fix for Issue 61081 (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/61221\"\u003e#61221\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/833a8d492c728d606454865e8c0fee84842f9f10\"\u003e\u003ccode\u003e833a8d4\u003c/code\u003e\u003c/a\u003e Fix Symbol completion priority and cursor positioning (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/61945\"\u003e#61945\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/0018c9ff12e657b84997dc1843818fea0a2ce850\"\u003e\u003ccode\u003e0018c9f\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250702...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/TypeScript/compare/v5.8.3...v5.9.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n...\n\n_Description has been truncated_","html_url":"https://github.com/vcupelloni/myspot-hipster/pull/77","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/vcupelloni%2Fmyspot-hipster/issues/77","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/77/packages"},{"uuid":"2800572929","node_id":"PR_kwDOPpKhDs6m7VoB","number":2,"state":"open","title":"Bump the npm_and_yarn group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-04T19:21:42.000Z","updated_at":"2025-09-04T19:21:43.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"npm_and_yarn","update_count":27,"packages":[{"name":"@angular-builders/custom-webpack","old_version":"14.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"14.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/build-angular","old_version":"14.2.1","new_version":"20.2.2","repository_url":"https://github.com/angular/angular-cli"},{"name":"cypress","old_version":"10.4.0","new_version":"15.1.0","repository_url":"https://github.com/cypress-io/cypress"},{"name":"webpack","old_version":"5.74.0","new_version":"5.101.3","repository_url":"https://github.com/webpack/webpack"},{"name":"@adobe/css-tools","old_version":"4.0.1","new_version":"4.4.4","repository_url":"https://github.com/adobe/css-tools"},{"name":"ejs","old_version":"3.1.8","new_version":"3.1.10","repository_url":"https://github.com/mde/ejs"},{"name":"ip","old_version":"2.0.0","new_version":"removed","repository_url":"https://github.com/indutny/node-ip"},{"name":"socks","old_version":"2.7.0","new_version":"2.8.7","repository_url":"https://github.com/JoshGlazebrook/socks"},{"name":"json5","old_version":"1.0.1","new_version":"1.0.2","repository_url":"https://github.com/json5/json5"},{"name":"loader-utils","old_version":"2.0.2","new_version":"2.0.4","repository_url":"https://github.com/webpack/loader-utils"},{"name":"semver","old_version":"5.7.1","new_version":"5.7.2","repository_url":"https://github.com/npm/node-semver"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm_and_yarn group with 12 updates in the /front directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `14.0.1` | `20.0.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `14.0.1` | `20.0.0` |\n| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `14.2.1` | `20.2.2` |\n| [cypress](https://github.com/cypress-io/cypress) | `10.4.0` | `15.1.0` |\n| [webpack](https://github.com/webpack/webpack) | `5.74.0` | `5.101.3` |\n| [@adobe/css-tools](https://github.com/adobe/css-tools) | `4.0.1` | `4.4.4` |\n| [ejs](https://github.com/mde/ejs) | `3.1.8` | `3.1.10` |\n| [ip](https://github.com/indutny/node-ip) | `2.0.0` | `removed` |\n| [socks](https://github.com/JoshGlazebrook/socks) | `2.7.0` | `2.8.7` |\n| [json5](https://github.com/json5/json5) | `1.0.1` | `1.0.2` |\n| [loader-utils](https://github.com/webpack/loader-utils) | `2.0.2` | `2.0.4` |\n| [semver](https://github.com/npm/node-semver) | `5.7.1` | `5.7.2` |\n\n\nUpdates `@angular-builders/custom-webpack` from 14.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-webpack/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.0-beta.0...@angular-builders/custom-webpack@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.1...@angular-builders/custom-webpack@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.1-beta.1...@angular-builders/custom-webpack@19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-04-07)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.1-beta.0...@angular-builders/custom-webpack@19.0.1-beta.1\"\u003e19.0.1-beta.1\u003c/a\u003e (2025-04-06)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.0...@angular-builders/custom-webpack@19.0.1-beta.0\"\u003e19.0.1-beta.0\u003c/a\u003e (2025-04-03)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.0-beta.0...@angular-builders/custom-webpack@19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-01-05)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@18.0.1-beta.0...@angular-builders/custom-webpack@19.0.0-beta.0\"\u003e19.0.0-beta.0\u003c/a\u003e (2024-12-05)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update to Angular 19 (\u003ca href=\"https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack/issues/1871\"\u003e#1871\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update to Angular 19 (\u003ca href=\"https://redirect.github.com/just-jeb/angular-builders/issues/1871\"\u003e#1871\u003c/a\u003e) (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/d3b17ed1e520c299f0327b9b5c38a55494b0a19a\"\u003ed3b17ed\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@18.0.0...@angular-builders/custom-webpack@18.0.1-beta.0\"\u003e18.0.1-beta.0\u003c/a\u003e (2024-07-24)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@18.0.0-beta.3...@angular-builders/custom-webpack@18.0.0\"\u003e18.0.0\u003c/a\u003e (2024-06-17)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/dbc033f81402238f7f26768a5beaccb230917d4c\"\u003e\u003ccode\u003edbc033f\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9e0f7779a4e1440831c0791383037ecda66065e3\"\u003e\u003ccode\u003e9e0f777\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/484a8073e1437aaac6a16b0dbd6d6817d26d5aeb\"\u003e\u003ccode\u003e484a807\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency typescript to v5.8.3 (\u003ca href=\"https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack/issues/1814\"\u003e#1814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/fa42409908b9d71461a8ba47f017accee056e29d\"\u003e\u003ccode\u003efa42409\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/f8aec9a62b4de566758d62cf592562727f3c1386\"\u003e\u003ccode\u003ef8aec9a\u003c/code\u003e\u003c/a\u003e deps: change schemes.ts to trigger schema regeneration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/8bb2a953ed34fbb5ef08f6f9b8e86329317465f0\"\u003e\u003ccode\u003e8bb2a95\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-webpack@20.0.0/packages/custom-webpack\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 14.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1-beta.1...@angular-builders/jest@19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-04-07)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1-beta.0...@angular-builders/jest@19.0.1-beta.1\"\u003e19.0.1-beta.1\u003c/a\u003e (2025-04-06)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.0...@angular-builders/jest@19.0.1-beta.0\"\u003e19.0.1-beta.0\u003c/a\u003e (2025-04-06)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.0-beta.1...@angular-builders/jest@19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-01-05)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.0-beta.0...@angular-builders/jest@19.0.0-beta.1\"\u003e19.0.0-beta.1\u003c/a\u003e (2024-12-06)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@18.0.1-beta.2...@angular-builders/jest@19.0.0-beta.0\"\u003e19.0.0-beta.0\u003c/a\u003e (2024-12-05)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update to Angular 19 (\u003ca href=\"https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest/issues/1871\"\u003e#1871\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update to Angular 19 (\u003ca href=\"https://redirect.github.com/just-jeb/angular-builders/issues/1871\"\u003e#1871\u003c/a\u003e) (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/d3b17ed1e520c299f0327b9b5c38a55494b0a19a\"\u003ed3b17ed\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@18.0.1-beta.1...@angular-builders/jest@18.0.1-beta.2\"\u003e18.0.1-beta.2\u003c/a\u003e (2024-10-30)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/dbc033f81402238f7f26768a5beaccb230917d4c\"\u003e\u003ccode\u003edbc033f\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9e0f7779a4e1440831c0791383037ecda66065e3\"\u003e\u003ccode\u003e9e0f777\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/484a8073e1437aaac6a16b0dbd6d6817d26d5aeb\"\u003e\u003ccode\u003e484a807\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency typescript to v5.8.3 (\u003ca href=\"https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest/issues/1814\"\u003e#1814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/7f8c822bf3e4934454fbfcb68db589b504c94632\"\u003e\u003ccode\u003e7f8c822\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/0f578f851f4b239ae3508573335f7df9ec91c4ae\"\u003e\u003ccode\u003e0f578f8\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency jest-preset-angular to v14.5.4 (\u003ca href=\"https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest/issues/1914\"\u003e#1914\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/8bb2a953ed34fbb5ef08f6f9b8e86329317465f0\"\u003e\u003ccode\u003e8bb2a95\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-devkit/build-angular` from 14.2.1 to 20.2.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/releases\"\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.2.2\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/a793bbc473dfaddf3fe6ed15805dc4fc84f52865\"\u003e\u003cimg src=\"https://img.shields.io/badge/a793bbc47-fix-green\" alt=\"fix - a793bbc47\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edon't set a default for array options when length is 0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2736599e2f6c61032810d8e336c1646db4066392\"\u003e\u003cimg src=\"https://img.shields.io/badge/2736599e2-fix-green\" alt=\"fix - 2736599e2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eset process title when running architect commands\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5c2abffea6cf3f672ee256a944dba56dd257665b\"\u003e\u003cimg src=\"https://img.shields.io/badge/5c2abffea-fix-green\" alt=\"fix - 5c2abffea\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid extra tick in SSR dev-server builds\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f3c826853501c9cf6d07a1c8ee3363eb79f53005\"\u003e\u003cimg src=\"https://img.shields.io/badge/f3c826853-fix-green\" alt=\"fix - f3c826853\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emaintain media output hashing with vitest unit-testing\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.1\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/schematics-cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/e93919dea7df55a3aac2fa5c93c4560c50a2d749\"\u003e\u003cimg src=\"https://img.shields.io/badge/e93919dea-fix-green\" alt=\"fix - e93919dea\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly set default array values\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/6937123a393e2ba9221962b0174056c14437a988\"\u003e\u003cimg src=\"https://img.shields.io/badge/6937123a3-fix-green\" alt=\"fix - 6937123a3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edirectly resolve karma config template in migration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5d6dd44259a0d89098c2a0c784e726b43ce32316\"\u003e\u003cimg src=\"https://img.shields.io/badge/5d6dd4425-fix-green\" alt=\"fix - 5d6dd4425\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent AI config schematic from failing when 'none' and other AI tools are selected\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/3b693e09e8148ef22031aab8f6bc70c928aabc03\"\u003e\u003cimg src=\"https://img.shields.io/badge/3b693e09e-fix-green\" alt=\"fix - 3b693e09e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly set default array values\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/06a6ddc102f5dc9018ec982f6e4cf56259cc4b52\"\u003e\u003cimg src=\"https://img.shields.io/badge/06a6ddc10-fix-green\" alt=\"fix - 06a6ddc10\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrect JS/TS file paths when running under Bazel\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/b6816b0cbaf1262d7015b9d7f7fb425f53995947\"\u003e\u003cimg src=\"https://img.shields.io/badge/b6816b0cb-fix-green\" alt=\"fix - b6816b0cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eensure karma polyfills reporter factory returns a value\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2e3cfd598c9366d0036a52cd18024317b33e6fca\"\u003e\u003cimg src=\"https://img.shields.io/badge/2e3cfd598-feat-blue\" alt=\"feat - 2e3cfd598\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd migration to remove default Karma configurations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d80dae276e9554c13e0c37640d0db8acafc9d48b\"\u003e\u003cimg src=\"https://img.shields.io/badge/d80dae276-feat-blue\" alt=\"feat - d80dae276\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd schematics to generate ai context files.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ffe6fb916d496da1c6c20942f6e6b05a679b0f7d\"\u003e\u003cimg src=\"https://img.shields.io/badge/ffe6fb916-fix-green\" alt=\"fix - ffe6fb916\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow AI config prompt to be skipped without selecting a value\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ae2802b7db358c5a3f0590feea212a768a710353\"\u003e\u003cimg src=\"https://img.shields.io/badge/ae2802b7d-fix-green\" alt=\"fix - ae2802b7d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove AI config prompt wording\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/b017f84fdaf36bc0fcad2241846665c73b52b6d8\"\u003e\u003cimg src=\"https://img.shields.io/badge/b017f84fd-fix-green\" alt=\"fix - b017f84fd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove coverage directory handling for Karma configuration comparisons\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/6a79f9a75cdcbb0761c4044066748f4eb788a57f\"\u003e\u003cimg src=\"https://img.shields.io/badge/6a79f9a75-fix-green\" alt=\"fix - 6a79f9a75\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ezoneless is now stable\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/b4de9a1bf50a35404fb79eb3f120faafd0ce825a\"\u003e\u003cimg src=\"https://img.shields.io/badge/b4de9a1bf-feat-blue\" alt=\"feat - b4de9a1bf\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd --experimental-tool option to mcp command\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/755ba70fd7ef38793d15797ba402020c375c3295\"\u003e\u003cimg src=\"https://img.shields.io/badge/755ba70fd-feat-blue\" alt=\"feat - 755ba70fd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd --local-only option to mcp command\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/59d7ef343b6f1feea37a019935578c560d3d5e41\"\u003e\u003cimg src=\"https://img.shields.io/badge/59d7ef343-feat-blue\" alt=\"feat - 59d7ef343\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd --read-only option to mcp command\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/4e92eb6f17cb30259bc8e8d1979bbd9989bc5ad0\"\u003e\u003cimg src=\"https://img.shields.io/badge/4e92eb6f1-feat-blue\" alt=\"feat - 4e92eb6f1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd modernize tool to the MCP server\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/a3b25f675283fdd8cc5689e3ec88f27aa1386390\"\u003e\u003cimg src=\"https://img.shields.io/badge/a3b25f675-fix-green\" alt=\"fix - a3b25f675\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd choices to command line parser when type is array and has an enum\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.2.2 (2025-09-03)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/a793bbc473dfaddf3fe6ed15805dc4fc84f52865\"\u003ea793bbc47\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edon't set a default for array options when length is 0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2736599e2f6c61032810d8e336c1646db4066392\"\u003e2736599e2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eset process title when running architect commands\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5c2abffea6cf3f672ee256a944dba56dd257665b\"\u003e5c2abffea\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid extra tick in SSR dev-server builds\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f3c826853501c9cf6d07a1c8ee3363eb79f53005\"\u003ef3c826853\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emaintain media output hashing with vitest unit-testing\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.1 (2025-08-27)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003eng\u003c/code\u003e commands will no longer automatically detect and use \u003ccode\u003ecnpm\u003c/code\u003e as the package manager. As an alternative use the \u003ccode\u003e.npmrc\u003c/code\u003e file to ensure npm uses the cnpm registry.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/schematics-cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/aed26c38803a465842ff128c3f81bd6984e1fe3d\"\u003eaed26c388\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly set default array values\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/4912f39906b11a3212f11d5a00d577e2a0bacab4\"\u003e4912f3990\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd Tailwind CSS option to application schematic and \u003ccode\u003eng new\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/6c7b798332786d29070460669e093e37902c4438\"\u003e6c7b79833\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edirectly resolve karma config template in migration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0f86cf8782d1c08d11bb9ee54a30fe1954dd8bcc\"\u003e0f86cf878\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent AI config schematic from failing when 'none' and other AI tools are selected\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0d53e82d5ed8986603c2005fc06041dd076b08c6\"\u003e0d53e82d5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eprovide detailed peer dependency conflict errors in ng add\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f513089e276acf5a7c4f6879a95e2d6ed78ae67d\"\u003ef513089e2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eremove direct support for \u003ccode\u003ecnpm\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/47d77a3edea4dabb463d50c2bdba32475257d775\"\u003e47d77a3ed\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly set default array values\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/e5aed6d655ed92ea6eb3ac03716b8a02a5f731d6\"\u003ee5aed6d65\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eshow planned actions in \u003ccode\u003eng add\u003c/code\u003e dry run\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/8ffc449e186637422b1b574bd38de9c479e6c84c\"\u003e\u003ccode\u003e8ffc449\u003c/code\u003e\u003c/a\u003e release: cut the v20.2.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/425bfe478bd693052aa0b541aab00599b7fe2a81\"\u003e\u003ccode\u003e425bfe4\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): update MCP example tool format for if example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2736599e2f6c61032810d8e336c1646db4066392\"\u003e\u003ccode\u003e2736599\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/cli\u003c/code\u003e): set process title when running architect commands\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f3c826853501c9cf6d07a1c8ee3363eb79f53005\"\u003e\u003ccode\u003ef3c8268\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): maintain media output hashing with vitest unit-testing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/99526bd88346d4ffe263ca94692a0ffa2bad1df7\"\u003e\u003ccode\u003e99526bd\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): Improve zoneless migration prompts based on observed ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/b2d5e6e508a18e640b7a252d21d2683615eca761\"\u003e\u003ccode\u003eb2d5e6e\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): add logging and HTML removal to doc search tool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5c2abffea6cf3f672ee256a944dba56dd257665b\"\u003e\u003ccode\u003e5c2abff\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): avoid extra tick in SSR dev-server builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0eaec23d68ab86fbe4f2139e482aa0b0fb408463\"\u003e\u003ccode\u003e0eaec23\u003c/code\u003e\u003c/a\u003e build: update github/codeql-action action to v3.30.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/269fd9999526c3423cc7ebd308faae09b1960ac1\"\u003e\u003ccode\u003e269fd99\u003c/code\u003e\u003c/a\u003e build: lock file maintenance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d8b6f64439ac914a5bb19471fa2f511298ecf09\"\u003e\u003ccode\u003e2d8b6f6\u003c/code\u003e\u003c/a\u003e build: update pnpm to v10.15.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular-cli/compare/14.2.1...20.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cypress` from 10.4.0 to 15.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/cypress-io/cypress/releases\"\u003ecypress's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev15.1.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#15.1.0\"\u003ehttps://docs.cypress.io/app/references/changelog#15.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev15.0.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#15.0.0\"\u003ehttps://docs.cypress.io/app/references/changelog#15.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.4\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-4\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-3\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.2\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-2\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.4.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-4-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-4-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.4.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-4-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-4-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-3\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.2\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-2\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.2.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-2-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-2-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.2.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-2-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-2-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.1.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-1-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-1-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.0.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-0-3\"\u003ehttps://docs.cypress.io/app/references/changelog#14-0-3\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/591de461fd8ca9a56af617845b2c55b5b23ebf29\"\u003e\u003ccode\u003e591de46\u003c/code\u003e\u003c/a\u003e chore: release 15.1.0 (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32401\"\u003e#32401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/8d0aee00b129a87bb285df9665018b9c1589d1ee\"\u003e\u003ccode\u003e8d0aee0\u003c/code\u003e\u003c/a\u003e fix: wrap the \u003ccode\u003etsx\u003c/code\u003e loader path in quotes (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32400\"\u003e#32400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/21be37e72e475be2122ab91f8119e48f1d82c32f\"\u003e\u003ccode\u003e21be37e\u003c/code\u003e\u003c/a\u003e fix: move \u003ccode\u003e@​cypress/schematic\u003c/code\u003e npm registry query to https (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32390\"\u003e#32390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/30f8bc39682013d0715e40bfd84712e32b9f133e\"\u003e\u003ccode\u003e30f8bc3\u003c/code\u003e\u003c/a\u003e chore: fix the package name in docs. (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/61307b09943fb5bcf3271279f3fd2f95dadd27d2\"\u003e\u003ccode\u003e61307b0\u003c/code\u003e\u003c/a\u003e chore(deps): remove sharp dependency resolution (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32378\"\u003e#32378\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/d0570f8fec3b6d661d902e558fefbadf430b0b40\"\u003e\u003ccode\u003ed0570f8\u003c/code\u003e\u003c/a\u003e chore: Update Chrome (beta) to 140.0.7339.41 (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32375\"\u003e#32375\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/695fa95c3ee687293c603bfecc497a71c88ae8c3\"\u003e\u003ccode\u003e695fa95\u003c/code\u003e\u003c/a\u003e chore: updating v8 snapshot cache (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32387\"\u003e#32387\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/505eb1397d509f197ca0f4ce299ee13d13b3112a\"\u003e\u003ccode\u003e505eb13\u003c/code\u003e\u003c/a\u003e chore: updating v8 snapshot cache (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32386\"\u003e#32386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/ef6ad2aeb61b8fd78c05393b645adb11befe5e7f\"\u003e\u003ccode\u003eef6ad2a\u003c/code\u003e\u003c/a\u003e chore: updating v8 snapshot cache (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32385\"\u003e#32385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/58bee2839c9326a305002c233bbf9e9684442363\"\u003e\u003ccode\u003e58bee28\u003c/code\u003e\u003c/a\u003e fix: force gtk version 3 to avoid Electron 36 from crashing (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32372\"\u003e#32372\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/cypress-io/cypress/compare/v10.4.0...v15.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~cypress-npm-publisher\"\u003ecypress-npm-publisher\u003c/a\u003e, a new releaser for cypress since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `webpack` from 5.74.0 to 5.101.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/webpack/webpack/releases\"\u003ewebpack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.101.3\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed resolve execution order issue from extra await in async modules\u003c/li\u003e\n\u003cli\u003eAvoid empty block for unused statement\u003c/li\u003e\n\u003cli\u003eCollect only specific expressions for destructuring assignment\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.101.2\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed syntax error when comment is on the last line\u003c/li\u003e\n\u003cli\u003eHandle var declaration for \u003ccode\u003ecreateRequire\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eDistinguish free variable and tagged variable\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.101.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFilter deleted assets in \u003ccode\u003eprocessAdditionalAssets\u003c/code\u003e hook\u003c/li\u003e\n\u003cli\u003eHMR failure in defer module\u003c/li\u003e\n\u003cli\u003eEmit assets even if invalidation occurs again\u003c/li\u003e\n\u003cli\u003eExport types for serialization and deserialization in plugins and export the \u003ccode\u003eModuleFactory\u003c/code\u003e class\u003c/li\u003e\n\u003cli\u003eFixed the failure export of internal function for ES module chunk format\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eGetChunkFilename\u003c/code\u003e failure caused by \u003ccode\u003edependOn\u003c/code\u003e entry\u003c/li\u003e\n\u003cli\u003eFixed the import of missing dependency chunks\u003c/li\u003e\n\u003cli\u003eFixed when entry chunk depends on the runtime chunk hash\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003emodule.exports\u003c/code\u003e bundle to ESM library\u003c/li\u003e\n\u003cli\u003eAdjusted the time of adding a group depending on the fragment of execution time\u003c/li\u003e\n\u003cli\u003eFixed circle dependencies when require \u003ccode\u003eRawModule\u003c/code\u003e and condition of \u003ccode\u003eisDeferred\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eTree-shakable module library should align preconditions of \u003ccode\u003eallowInlineStartup\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.101.0\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed concatenate optimization for ESM that caused undefined export\u003c/li\u003e\n\u003cli\u003eRespect the \u003ccode\u003eoutput.environment.nodePrefixForCoreModules\u003c/code\u003e option everywhere\u003c/li\u003e\n\u003cli\u003eRespect the \u003ccode\u003eoutput.importMetaName\u003c/code\u003e option everywhere\u003c/li\u003e\n\u003cli\u003eFixed await async dependencies when accepting them during HMR\u003c/li\u003e\n\u003cli\u003eBetter typescript types\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded colors helpers for CLI\u003c/li\u003e\n\u003cli\u003eEnable tree-shaking for ESM external modules with named imports\u003c/li\u003e\n\u003cli\u003eAdded the \u003ccode\u003edeferImport\u003c/code\u003e option to parser options\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a regression in module concatenation after implementing deferred import support\u003c/li\u003e\n\u003cli\u003eFixed a potential performance issue in CleanPlugin\u003c/li\u003e\n\u003cli\u003eAvoid extra \u003ccode\u003erequire\u003c/code\u003e in some places\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/07b1ac0213bcf9591a8dd5633535a43ecd248192\"\u003e\u003ccode\u003e07b1ac0\u003c/code\u003e\u003c/a\u003e chore(release): 5.101.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/8d7efb8b0421a3a132d3aa71c265e2862771c3b8\"\u003e\u003ccode\u003e8d7efb8\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump the dependencies group with 2 updates (\u003ca href=\"https://redirect.github.com/webpack/webpack/issues/19816\"\u003e#19816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/935cbd8552d89b9bcafea66ad08db034c1897ab1\"\u003e\u003ccode\u003e935cbd8\u003c/code\u003e\u003c/a\u003e docs: update examples (\u003ca href=\"https://redirect.github.com/webpack/webpack/issues/19812\"\u003e#19812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/dc79e95022b8b726ac0a7c474be1dca0fef8fafe\"\u003e\u003ccode\u003edc79e95\u003c/code\u003e\u003c/a\u003e fix: collect only specific expressions for destructuring assignment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/90ae8af3d19b964728a9e7f5f9350ead71d3ad61\"\u003e\u003ccode\u003e90ae8af\u003c/code\u003e\u003c/a\u003e fix: avoid empty block for unused statement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/8db97f863fb5cf55dfcf0634d0f127b27bcf43a4\"\u003e\u003ccode\u003e8db97f8\u003c/code\u003e\u003c/a\u003e fix: resolve execution order issue from extra await in async modules\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/c92deaf02c4d0507b11c3e34d766f1d06d584055\"\u003e\u003ccode\u003ec92deaf\u003c/code\u003e\u003c/a\u003e ci: pin Node.js 24.x to 24.5.0 in CI workflow (\u003ca href=\"https://redirect.github.com/webpack/webpack/issues/19813\"\u003e#19813\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/c50930b3be80285b1a53b64a8cfb4c58aa17a409\"\u003e\u003ccode\u003ec50930b\u003c/code\u003e\u003c/a\u003e refactor(test): correct the value retrieval\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/613a5ada7e676573758e4714d2e345df81c1270d\"\u003e\u003ccode\u003e613a5ad\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump \u003ccode\u003e@​babel/core\u003c/code\u003e in the dependencies group (\u003ca href=\"https://redirect.github.com/webpack/webpack/issues/19807\"\u003e#19807\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/1d9cc240a29d17f3986d9e9f96f2589d823e832c\"\u003e\u003ccode\u003e1d9cc24\u003c/code\u003e\u003c/a\u003e chore(release): 5.101.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/webpack/webpack/compare/v5.74.0...v5.101.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~evilebottnawi\"\u003eevilebottnawi\u003c/a\u003e, a new releaser for webpack since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@adobe/css-tools` from 4.0.1 to 4.4.4\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/adobe/css-tools/blob/main/docs/CHANGELOG.md\"\u003e\u003ccode\u003e@​adobe/css-tools\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.4.4] - 2025-07-22\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch from yarn to npm for package management\u003c/li\u003e\n\u003cli\u003eSwitch from eslint to biome for code formatting and linting\u003c/li\u003e\n\u003cli\u003eReformat codebase to comply with biome recommendations\u003c/li\u003e\n\u003cli\u003eSwitch from webpack to rollup for bundling\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix module exports to ensure proper compatibility with bundlers\u003c/li\u003e\n\u003cli\u003eAdd validation check to prevent future export issues\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.4.3] - 2025-05-15\u003c/h2\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix polynomial regular expression vulnerability on uncontrolled data\u003c/li\u003e\n\u003cli\u003eRefactor code to enable GitHub security static analysis\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove parsing performance with minor optimizations\u003c/li\u003e\n\u003cli\u003eReplace regex patterns with string search (indexOf-based) for better performance\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new utility functions with comprehensive unit tests\u003c/li\u003e\n\u003cli\u003eAdd improved formatting for CSS Grid template areas (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/283\"\u003e#283\u003c/a\u003e by \u003ca href=\"https://github.com/jogibear9988\"\u003e\u003ccode\u003e@​jogibear9988\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix TypeScript error with ConstructorParameters in Parcel bundler (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/444\"\u003e#444\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.4.2] - 2025-02-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regular expression for parsing quoted values in parentheses\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.4.0] - 2024-06-05\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for CSS \u003ccode\u003e@starting-style\u003c/code\u003e at-rule (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/319\"\u003e#319\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.3.3] - 2024-01-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate package export configuration (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/271\"\u003e#271\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.3.2] - 2023-11-28\u003c/h2\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix ReDoS vulnerability with crafted CSS strings - CVE-2023-48631\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/adobe/css-tools/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@cypress/request` from 2.88.10 to 3.0.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/cypress-io/request/releases\"\u003e\u003ccode\u003e@​cypress/request\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.0.9\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.8...v3.0.9\"\u003e3.0.9\u003c/a\u003e (2025-07-24)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate patch version of form-data to address new critical Snyk vulnerability (\u003ca href=\"https://github.com/cypress-io/request/commit/a2f3199f70724c9c3db992d1f2017e9b6a3d9539\"\u003ea2f3199\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.7...v3.0.8\"\u003e3.0.8\u003c/a\u003e (2025-03-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency qs to v6.14.0 (\u003ca href=\"https://github.com/cypress-io/request/commit/16066b65e8c4958b49cfaa77de25b84b0f0ca4d3\"\u003e16066b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.7\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.6...v3.0.7\"\u003e3.0.7\u003c/a\u003e (2024-12-09)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency qs to v6.13.1 (\u003ca href=\"https://github.com/cypress-io/request/commit/00d1835ca237bf2aab535be470faa972cc5808c7\"\u003e00d1835\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.5...v3.0.6\"\u003e3.0.6\u003c/a\u003e (2024-10-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency tough-cookie to v5 (\u003ca href=\"https://github.com/cypress-io/request/commit/65ad82c9f16e53653d6ee293cc330e38a305e423\"\u003e65ad82c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.4...v3.0.5\"\u003e3.0.5\u003c/a\u003e (2024-09-09)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency form-data to v4 (\u003ca href=\"https://github.com/cypress-io/request/commit/6b905804c035f51403b57560bbe7ed52602c1d60\"\u003e6b90580\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.3...v3.0.4\"\u003e3.0.4\u003c/a\u003e (2024-09-05)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency form-data to ~2.5.0 (\u003ca href=\"https://github.com/cypress-io/request/commit/87b5e920ca1101fe0c28b5922222375fb7232fb7\"\u003e87b5e92\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.2...v3.0.3\"\u003e3.0.3\u003c/a\u003e (2024-09-05)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/3cffd53a243630c517fb31c3cedc0a65012f4868\"\u003e\u003ccode\u003e3cffd53\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/88\"\u003e#88\u003c/a\u003e from ahayes91/update-form-data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/7c424d5a23c6464774dc96778533bf88ad7d3f0a\"\u003e\u003ccode\u003e7c424d5\u003c/code\u003e\u003c/a\u003e chore: fix lint issue\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/7f6fdec79d0a7cc90510429c1301263f51166b3b\"\u003e\u003ccode\u003e7f6fdec\u003c/code\u003e\u003c/a\u003e chore: remove test now that we are on form-data 4.0.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/a2f3199f70724c9c3db992d1f2017e9b6a3d9539\"\u003e\u003ccode\u003ea2f3199\u003c/code\u003e\u003c/a\u003e fix: update patch version of form-data to address new critical Snyk vulnerabi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/a1252dd285d95c3aa8754b95ce3933f3e059f11d\"\u003e\u003ccode\u003ea1252dd\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/84\"\u003e#84\u003c/a\u003e from cypress-io/renovate/qs-6.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/16066b65e8c4958b49cfaa77de25b84b0f0ca4d3\"\u003e\u003ccode\u003e16066b6\u003c/code\u003e\u003c/a\u003e fix(deps): update dependency qs to v6.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/5fd077003868ae39ca43871ad1604e92404000ae\"\u003e\u003ccode\u003e5fd0770\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/83\"\u003e#83\u003c/a\u003e from cypress-io/renovate/cimg-node-18.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/b42b322d62c4d7c302bc049016143d4aca673220\"\u003e\u003ccode\u003eb42b322\u003c/code\u003e\u003c/a\u003e chore(deps): update node.js to v18.20.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/e79201a5e61b88cefd6437802b4feb2fa4dbf45f\"\u003e\u003ccode\u003ee79201a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/80\"\u003e#80\u003c/a\u003e from cypress-io/renovate/cimg-node-18.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/0e4e875256b126d9e603e3970078975ba6f4f97f\"\u003e\u003ccode\u003e0e4e875\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/81\"\u003e#81\u003c/a\u003e from cypress-io/renovate/qs-6.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/cypress-io/request/compare/v2.88.10...v3.0.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `body-parser` from 1.20.0 to 1.20.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/expressjs/body-parser/releases\"\u003ebody-parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.20.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eImportant\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.13.0\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003edepth\u003c/code\u003e option to customize the depth level in the parser\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eIMPORTANT:\u003c/strong\u003e The default \u003ccode\u003edepth\u003c/code\u003e level for parsing URL-encoded data is now \u003ccode\u003e32\u003c/code\u003e (previously was \u003ccode\u003eInfinity\u003c/code\u003e). \u003ca href=\"https://github.com/expressjs/body-parser/blob/17529513673e39ba79886a7ce3363320cf1c0c50/README.md#depth\"\u003eDocumentation\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003echore: add support for OSSF scorecard reporting by \u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/522\"\u003eexpressjs/body-parser#522\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix errors in ci github action for node 8 and 9 by \u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/523\"\u003eexpressjs/body-parser#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: pin to node@22.4.1 by \u003ca href=\"https://github.com/wesleytodd\"\u003e\u003ccode\u003e@​wesleytodd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/527\"\u003eexpressjs/body-parser#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeps: qs@6.12.3 by \u003ca href=\"https://github.com/melikhov-dev\"\u003e\u003ccode\u003e@​melikhov-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/521\"\u003eexpressjs/body-parser#521\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd OSSF Scorecard badge by \u003ca href=\"https://github.com/bjohansebas\"\u003e\u003ccode\u003e@​bjohansebas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/531\"\u003eexpressjs/body-parser#531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLinter by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/534\"\u003eexpressjs/body-parser#534\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 1.20.3 by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/535\"\u003eexpressjs/body-parser#535\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/522\"\u003eexpressjs/body-parser#522\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/melikhov-dev\"\u003e\u003ccode\u003e@​melikhov-dev\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/521\"\u003eexpressjs/body-parser#521\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bjohansebas\"\u003e\u003ccode\u003e@​bjohansebas\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/531\"\u003eexpressjs/body-parser#531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/534\"\u003eexpressjs/body-parser#534\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/expressjs/body-parser/compare/1.20.2...1.20.3\"\u003ehttps://github.com/expressjs/body-parser/compare/1.20.2...1.20.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.20.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix strict json error message on Node.js 19+\u003c/li\u003e\n\u003cli\u003edeps: content-type@~1.0.5\n\u003cul\u003e\n\u003cli\u003eperf: skip value escaping when unnecessary\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: raw-body@2.5.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.20.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.11.0\u003c/li\u003e\n\u003cli\u003eperf: remove unnecessary object clone\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/expressjs/body-parser/blob/master/HISTORY.md\"\u003ebody-parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.20.3 / 2024-09-10\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.13.0\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003edepth\u003c/code\u003e option to customize the depth level in the parser\u003c/li\u003e\n\u003cli\u003eIMPORTANT: The default \u003ccode\u003edepth\u003c/code\u003e level for parsing URL-encoded data is now \u003ccode\u003e32\u003c/code\u003e (previously was \u003ccode\u003eInfinity\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e1.20.2 / 2023-02-21\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix strict json error message on Node.js 19+\u003c/li\u003e\n\u003cli\u003edeps: content-type@~1.0.5\n\u003cul\u003e\n\u003cli\u003eperf: skip value escaping when unnecessary\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: raw-body@2.5.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e1.20.1 / 2022-10-06\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.11.0\u003c/li\u003e\n\u003cli\u003eperf: remove unnecessary object clone\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/17529513673e39ba79886a7ce3363320cf1c0c50\"\u003e\u003ccode\u003e1752951\u003c/code\u003e\u003c/a\u003e 1.20.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/39744cfe2ac4fb37a19ed7c43e3a74332f428e17\"\u003e\u003ccode\u003e39744cf\u003c/code\u003e\u003c/a\u003e chore: linter (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/534\"\u003e#534\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/b2695c4450f06ba3b0ccf48d872a229bb41c9bce\"\u003e\u003ccode\u003eb2695c4\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/ade0f3f82f91086d6cd2ed2cb4b0aff448fbc2e5\"\u003e\u003ccode\u003eade0f3f\u003c/code\u003e\u003c/a\u003e add scorecard to readme (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/99a1bd62456f932004b84767d6393bc261f75d36\"\u003e\u003ccode\u003e99a1bd6\u003c/code\u003e\u003c/a\u003e deps: qs@6.12.3 (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/521\"\u003e#521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/947859160527c7aaaa20da79e2c3ba542baaaf66\"\u003e\u003ccode\u003e9478591\u003c/code\u003e\u003c/a\u003e fix: pin to node@22.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/83db46a1e5512135ce01ed90b9132ee16a2657a8\"\u003e\u003ccode\u003e83db46a\u003c/code\u003e\u003c/a\u003e ci: fix errors in ci github action for node 8 and 9 (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/523\"\u003e#523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/9d4e2125b580b055b2a3aa140df9b8fce363af46\"\u003e\u003ccode\u003e9d4e212\u003c/code\u003e\u003c/a\u003e chore: add support for OSSF scorecard reporting (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/522\"\u003e#522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/ee91374eae1555af679550b1d2fb5697d9924109\"\u003e\u003ccode\u003eee91374\u003c/code\u003e\u003c/a\u003e 1.20.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/368a93a613a1ac6cbdec9694f4018e707b3c1f50\"\u003e\u003ccode\u003e368a93a\u003c/code\u003e\u003c/a\u003e Fix strict json error message on Node.js 19+\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/expressjs/body-parser/compare/1.20.0...1.20.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~ulisesgascon\"\u003eulisesgascon\u003c/a\u003e, a new releaser for body-parser since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cookie` from 0.5.0 to 0.7.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jshttp/cookie/releases\"\u003ecookie's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.7.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAllow leading dot for domain (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/174\"\u003e#174\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eAlthough not permitted in the spec, some users expect this to work and user agents ignore the leading dot according to spec\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdd fast path for \u003ccode\u003eserialize\u003c/code\u003e without options, use \u003ccode\u003eobj.hasOwnProperty\u003c/code\u003e when parsing (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/172\"\u003e#172\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jshttp/cookie/compare/v0.7.0...v0.7.1\"\u003ehttps://github.com/jshttp/cookie/compare/v0.7.0...v0.7.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.7.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eperf: parse cookies ~10% faster (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/144\"\u003e#144\u003c/a\u003e by \u003ca href=\"https://github.com/kurtextrem\"\u003e\u003ccode\u003e@​kurtextrem\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/170\"\u003e#170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: narrow the validation of cookies to match RFC6265 (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/167\"\u003e#167\u003c/a\u003e by \u003ca href=\"https://github.com/bewinsnw\"\u003e\u003ccode\u003e@​bewinsnw\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: add \u003ccode\u003emain\u003c/code\u003e to \u003ccode\u003epackage.json\u003c/code\u003e for rspack (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/166\"\u003e#166\u003c/a\u003e by \u003ca href=\"https://github.com/proudparrot2\"\u003e\u003ccode\u003e@​proudparrot2\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jshttp/cookie/compare/v0.6.0...v0.7.0\"\u003ehttps://github.com/jshttp/cookie/compare/v0.6.0...v0.7.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.6.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epartitioned\u003c/code\u003e option\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/cf4658f492c5bd96aeaf5693c3500f8495031014\"\u003e\u003ccode\u003ecf4658f\u003c/code\u003e\u003c/a\u003e 0.7.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/6a8b8f5a49af7897b98ebfb29a1c4955afa3d33e\"\u003e\u003ccode\u003e6a8b8f5\u003c/code\u003e\u003c/a\u003e Allow leading dot for domain (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/174\"\u003e#174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/58015c0b93de0b63db245cfdc5a108e511a81ad0\"\u003e\u003ccode\u003e58015c0\u003c/code\u003e\u003c/a\u003e Remove more code and perf wins (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/172\"\u003e#172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/ab057d6c06b94a7b1e3358e69a685ae49c97b627\"\u003e\u003ccode\u003eab057d6\u003c/code\u003e\u003c/a\u003e 0.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/5f02ca87688481dbcf155e49ca8b61732f30e542\"\u003e\u003ccode\u003e5f02ca8\u003c/code\u003e\u003c/a\u003e Migrate history to GitHub releases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/a5d591ce8447dd63821779724f96ad3c774c8579\"\u003e\u003ccode\u003ea5d591c\u003c/code\u003e\u003c/a\u003e Migrate history to GitHub releases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/51968f94b5e820adeceef505539fa193ffe2d105\"\u003e\u003ccode\u003e51968f9\u003c/code\u003e\u003c/a\u003e Skip isNaN\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/9e7ca51ade4b325307eedd6b4dec190983e9e2cc\"\u003e\u003ccode\u003e9e7ca51\u003c/code\u003e\u003c/a\u003e perf(parse): cache length, return early (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/144\"\u003e#144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/d6f39b0aab5521a8b118b466a515fd6eb0b9f65e\"\u003e\u003ccode\u003ed6f39b0\u003c/code\u003e\u003c/a\u003e Fix tests for old node\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/6bb701f14e59c5e768933bfae9b578db4ed26c6e\"\u003e\u003ccode\u003e6bb701f\u003c/code\u003e\u003c/a\u003e Remove failing scorecard\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jshttp/cookie/compare/v0.5.0...v0.7.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~blakeembrey\"\u003eblakeembrey\u003c/a\u003e, a new releaser for cookie since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ejs` from 3.1.8 to 3.1.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mde/ejs/releases\"\u003eejs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1.10\u003c/h2\u003e\n\u003cp\u003eVersion 3.1.10\u003c/p\u003e\n\u003ch2\u003ev3.1.9\u003c/h2\u003e\n\u003cp\u003eVersion 3.1.9\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/d3f807dea9ce904e20a47a661f2310ce9134dc2a\"\u003e\u003ccode\u003ed3f807d\u003c/code\u003e\u003c/a\u003e Version 3.1.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/9ee26dde5d7015d9c0e2ff87314cabeac5247c02\"\u003e\u003ccode\u003e9ee26dd\u003c/code\u003e\u003c/a\u003e Mocha TDD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/e469741dca7df2eb400199e1cdb74621e3f89aa5\"\u003e\u003ccode\u003ee469741\u003c/code\u003e\u003c/a\u003e Basic pollution protection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/715e9507fa3e6122dc6430fe0f25a6e6ded300c1\"\u003e\u003ccode\u003e715e950\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/mde/ejs/issues/756\"\u003e#756\u003c/a\u003e from Jeffrey-mu/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/cabe3146ad964a1e98db7742abf435906ca79406\"\u003e\u003ccode\u003ecabe314\u003c/code\u003e\u003c/a\u003e Include advanced usage examples\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/29b076cdbbf3eb1b4323b33299ab6d79391b2c33\"\u003e\u003ccode\u003e29b076c\u003c/code\u003e\u003c/a\u003e Added header\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/11503c79af882e3635b513d57c7f1813792eb127\"\u003e\u003ccode\u003e11503c7\u003c/code\u003e\u003c/a\u003e Merge branch 'main' of github.com:mde/ejs into main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/7690404e2fc1688756938e4d2fc19e0fac77d736\"\u003e\u003ccode\u003e7690404\u003c/code\u003e\u003c/a\u003e Added security banner to README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/f47d7aedd51a983e4f73045f962b1209096b5800\"\u003e\u003ccode\u003ef47d7ae\u003c/code\u003e\u003c/a\u003e Update SECURITY.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/828cea1687e3db459ab09d2f405d2444c7580b90\"\u003e\u003ccode\u003e828cea1\u003c/code\u003e\u003c/a\u003e Update SECURITY.md\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mde/ejs/compare/v3.1.8...v3.1.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `esbuild` from 0.15.5 to 0.25.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evanw/esbuild/releases\"\u003eesbuild's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.25.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eBetter support building projects that use Yarn on Windows (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3131\"\u003e#3131\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3663\"\u003e#3663\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eWith this release, you can now use esbuild to bundle projects that use Yarn Plug'n'Play on Windows on drives other than the \u003ccode\u003eC:\u003c/code\u003e drive. The problem was as follows:\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003eYarn in Plug'n'Play mode on Windows stores its global module cache on the \u003ccode\u003eC:\u003c/code\u003e drive\u003c/li\u003e\n\u003cli\u003eSome developers put their projects on the \u003ccode\u003eD:\u003c/code\u003e drive\u003c/li\u003e\n\u003cli\u003eYarn generates relative paths that use \u003ccode\u003e../..\u003c/code\u003e to get from the project directory to the cache directory\u003c/li\u003e\n\u003cli\u003eWindows-style paths don't support directory traversal between drives via \u003ccode\u003e..\u003c/code\u003e (so \u003ccode\u003eD:\\..\u003c/code\u003e is just \u003ccode\u003eD:\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003eI didn't have access to a Windows machine for testing this edge case\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eYarn works around this edge case by pretending Windows-style paths beginning with \u003ccode\u003eC:\\\u003c/code\u003e are actually Unix-style paths beginning with \u003ccode\u003e/C:/\u003c/code\u003e, so the \u003ccode\u003e../..\u003c/code\u003e path segments are able to navigate across drives inside Yarn's implementation. This was broken for a long time in esbuild but I finally got access to a Windows machine and was able to debug and fix this edge case. So you should now be able to bundle these projects with esbuild.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePreserve parentheses around function expressions (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4252\"\u003e#4252\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe V8 JavaScript VM uses parentheses around function expressions as an optimization hint to immediately compile the function. Otherwise the function would be lazily-compiled, which has additional overhead if that function is always called immediately as lazy compilation involves parsing the function twice. You can read \u003ca href=\"https://v8.dev/blog/preparser\"\u003eV8's blog post about this\u003c/a\u003e for more details.\u003c/p\u003e\n\u003cp\u003ePreviously esbuild did not represent parentheses around functions in the AST so they were lost during compilation. With this change, esbuild will now preserve parentheses around function expressions when they are present in the original source code. This means these optimization hints will not be lost when bundling with esbuild. In addition, esbuild will now automatically add this optimization hint to immediately-invoked function expressions. Here's an example:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003e// Original code\nconst fn0 = () =\u0026gt; 0\nconst fn1 = (() =\u0026gt; 1)\nconsole.log(fn0, function() { return fn1() }())\n\u003cp\u003e// Old output\nconst fn0 = () =\u0026gt; 0;\nconst fn1 = () =\u0026gt; 1;\nconsole.log(fn0, function() {\nreturn fn1();\n}());\u003c/p\u003e\n\u003cp\u003e// New output\nconst fn0 = () =\u0026gt; 0;\nconst fn1 = (() =\u0026gt; 1);\nconsole.log(fn0, (function() {\nreturn fn1();\n})());\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eNote that you do not want to wrap all function expressions in parentheses. This optimization hint should only be used for functions that are called on initial load. Using this hint for functions that are not called on initial load will unnecessarily delay the initial load. Again, see V8's blog post linked above for details.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdate Go from 1.23.10 to 1.23.12 (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4257\"\u003e#4257\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/evanw/esbuild/pull/4258\"\u003e#4258\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThis should have no effect on existing code as this version change does not change Go's operating system support. It may remove certain false positive reports (specifically CVE-2025-4674 and CVE-2025-47907) from vulnerability scanners that only detect which version of the Go compiler esbuild uses.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.25.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix another TypeScript parsing edge case (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4248\"\u003e#4248\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThis fixes a regression with a change in the previous release that tries to more accurately parse TypeScript arrow functions inside the \u003ccode\u003e?:\u003c/code\u003e operator. The regression specifically involves parsing an arrow function containing a \u003ccode\u003e#private\u003c/code\u003e identifier inside the middle of a \u003ccode\u003e?:\u003c/code\u003e ternary operator inside a class body. This was fixed by propagating private identifier state into the parser clone used to speculatively parse the arrow function body. Here is an example of some affected code:\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evanw/esbuild/blob/main/CHANGELOG-2022.md\"\u003eesbuild's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog: 2022\u003c/h1\u003e\n\u003cp\u003eThis changelog documents all esbuild versions published in the year 2022 (versions 0.14.11 through 0.16.12).\u003c/p\u003e\n\u003ch2\u003e0.16.12\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eLoader defaults to \u003ccode\u003ejs\u003c/code\u003e for extensionless files (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/2776\"\u003e#2776\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eCertain packages contain files without an extension. For example, the \u003ccode\u003eyargs\u003c/code\u003e package contains the file \u003ccode\u003eyargs/yargs\u003c/code\u003e which has no extension. Node, Webpack, and Parcel can all understand code that imports \u003ccode\u003eyargs/yargs\u003c/code\u003e because they assume that the file is JavaScript. However, esbuild was previously unable to understand this code because it relies on the file extension to tell it how to interpret the file. With this release, esbuild will now assume files without an extension are JavaScript files. This can be customized by setting the loader for \u003ccode\u003e\u0026quot;\u0026quot;\u003c/code\u003e (the empty string, representing files without an extension) to another loader. For example, if you want files without an extension to be treated as CSS instead, you can do that like this:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eCLI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eesbuild --bundle --loader:=css\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eJS:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eesbuild.build({\n  bundle: true,\n  loader: { '': 'css' },\n})\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eGo:\u003c/p\u003e\n\u003cpre lang=\"go\"\u003e\u003ccode\u003eapi.Build(api.BuildOptions{\n  Bundle: true,\n  Loader: map[string]api.Loader{\u0026quot;\u0026quot;: api.LoaderCSS},\n})\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn addition, the \u003ccode\u003e\u0026quot;type\u0026quot;\u003c/code\u003e field in \u003ccode\u003epackage.json\u003c/code\u003e files now only applies to files with an explicit \u003ccode\u003e.js\u003c/code\u003e, \u003ccode\u003e.jsx\u003c/code\u003e, \u003ccode\u003e.ts\u003c/code\u003e, or \u003ccode\u003e.tsx\u003c/code\u003e extension. Previously it was incorrectly applied by esbuild to all files that had an extension other than \u003ccode\u003e.mjs\u003c/code\u003e, \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cjs\u003c/code\u003e, or \u003ccode\u003e.cts\u003c/code\u003e including extensionless files. So for example an extensionless file in a \u003ccode\u003e\u0026quot;type\u0026quot;: \u0026quot;module\u0026quot;\u003c/code\u003e package is now treated as CommonJS instead of ESM.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.16.11\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid a syntax error in the presence of direct \u003ccode\u003eeval\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/2761\"\u003e#2761\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe behavior of nested \u003ccode\u003efunction\u003c/code\u003e declarations in JavaScript depends on whether the code is run in strict mode or not. It would be problematic if esbuild preserved nested \u003ccode\u003efunction\u003c/code\u003e declarations in its output because then the behavior would depend on whether the output was run in strict mode or not instead of respecting the strict mode behavior of the original source code. To avoid this, esbuild transforms nested \u003ccode\u003efunction\u003c/code\u003e declarations to preserve the intended behavior of the original source code regardless of whether the output is run in strict mode or not:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003e// Original code\nif (true) {\n  function foo() {}\n  console.log(!!foo)\n  foo = null\n  console.log(!!foo)\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/195e05c16f03a341390feef38b8ebf17d3075e14\"\u003e\u003ccode\u003e195e05c\u003c/code\u003e\u003c/a\u003e publish 0.25.9 to npm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/3dac33f2a2ba60387fb9aaca96b3e80b9e0512e0\"\u003e\u003ccode\u003e3dac33f\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3131\"\u003e#3131\u003c/a\u003e, fix \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3663\"\u003e#3663\u003c/a\u003e: yarnpnp + windows + D drive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/0f2c5c8c11dc3fa2a4e9e82df202d0b607e59de4\"\u003e\u003ccode\u003e0f2c5c8\u003c/code\u003e\u003c/a\u003e mock fs now supports multiple volumes on windows\u003c...\n\n_Description has been truncated_","html_url":"https://github.com/1Yoel26/Projet5_Test_App/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/1Yoel26%2FProjet5_Test_App/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"},{"uuid":"2797817984","node_id":"PR_kwDOPpKhDs6mw1CA","number":1,"state":"open","title":"Bump the npm_and_yarn group across 1 directory with 29 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-04T02:55:48.000Z","updated_at":"2025-09-04T02:55:49.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"npm_and_yarn","update_count":29,"packages":[{"name":"webpack","old_version":"5.74.0","new_version":"5.94.0","repository_url":"https://github.com/webpack/webpack"},{"name":"@adobe/css-tools","old_version":"4.0.1","new_version":"4.4.4","repository_url":"https://github.com/adobe/css-tools"},{"name":"@babel/traverse","old_version":"7.18.13","new_version":"7.28.3","repository_url":"https://github.com/babel/babel"},{"name":"@cypress/request","old_version":"2.88.10","new_version":"3.0.9","repository_url":"https://github.com/cypress-io/request"},{"name":"cypress","old_version":"10.4.0","new_version":"15.1.0","repository_url":"https://github.com/cypress-io/cypress"},{"name":"body-parser","old_version":"1.20.0","new_version":"1.20.3","repository_url":"https://github.com/expressjs/body-parser"},{"name":"express","old_version":"4.18.1","new_version":"4.21.2","repository_url":"https://github.com/expressjs/express"},{"name":"braces","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/micromatch/braces"},{"name":"ejs","old_version":"3.1.8","new_version":"3.1.10","repository_url":"https://github.com/mde/ejs"},{"name":"esbuild","old_version":"0.15.5","new_version":"0.25.9","repository_url":"https://github.com/evanw/esbuild"},{"name":"@angular-builders/jest","old_version":"14.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/custom-webpack","old_version":"14.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/build-angular","old_version":"14.2.1","new_version":"20.2.1","repository_url":"https://github.com/angular/angular-cli"},{"name":"ip","old_version":"2.0.0","new_version":"removed","repository_url":"https://github.com/indutny/node-ip"},{"name":"socks","old_version":"2.7.0","new_version":"2.8.7","repository_url":"https://github.com/JoshGlazebrook/socks"},{"name":"json5","old_version":"1.0.1","new_version":"1.0.2","repository_url":"https://github.com/json5/json5"},{"name":"loader-utils","old_version":"2.0.2","new_version":"2.0.4","repository_url":"https://github.com/webpack/loader-utils"},{"name":"semver","old_version":"5.7.1","new_version":"5.7.2","repository_url":"https://github.com/npm/node-semver"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm_and_yarn group with 18 updates in the /front directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [webpack](https://github.com/webpack/webpack) | `5.74.0` | `5.94.0` |\n| [@adobe/css-tools](https://github.com/adobe/css-tools) | `4.0.1` | `4.4.4` |\n| [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) | `7.18.13` | `7.28.3` |\n| [@cypress/request](https://github.com/cypress-io/request) | `2.88.10` | `3.0.9` |\n| [cypress](https://github.com/cypress-io/cypress) | `10.4.0` | `15.1.0` |\n| [body-parser](https://github.com/expressjs/body-parser) | `1.20.0` | `1.20.3` |\n| [express](https://github.com/expressjs/express) | `4.18.1` | `4.21.2` |\n| [braces](https://github.com/micromatch/braces) | `3.0.2` | `3.0.3` |\n| [ejs](https://github.com/mde/ejs) | `3.1.8` | `3.1.10` |\n| [esbuild](https://github.com/evanw/esbuild) | `0.15.5` | `0.25.9` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `14.0.1` | `20.0.0` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `14.0.1` | `20.0.0` |\n| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `14.2.1` | `20.2.1` |\n| [ip](https://github.com/indutny/node-ip) | `2.0.0` | `removed` |\n| [socks](https://github.com/JoshGlazebrook/socks) | `2.7.0` | `2.8.7` |\n| [json5](https://github.com/json5/json5) | `1.0.1` | `1.0.2` |\n| [loader-utils](https://github.com/webpack/loader-utils) | `2.0.2` | `2.0.4` |\n| [semver](https://github.com/npm/node-semver) | `5.7.1` | `5.7.2` |\n\n\nUpdates `webpack` from 5.74.0 to 5.94.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/webpack/webpack/releases\"\u003ewebpack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.94.0\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded runtime condition for harmony reexport checked\u003c/li\u003e\n\u003cli\u003eHandle properly \u003ccode\u003edata\u003c/code\u003e/\u003ccode\u003ehttp\u003c/code\u003e/\u003ccode\u003ehttps\u003c/code\u003e protocols in source maps\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003ebigint\u003c/code\u003e optimistic when browserslist not found\u003c/li\u003e\n\u003cli\u003eMove \u003ccode\u003e@​types/eslint-scope\u003c/code\u003e to dev deps\u003c/li\u003e\n\u003cli\u003eRelated in asset stats is now always an array when no related found\u003c/li\u003e\n\u003cli\u003eHandle ASI for export declarations\u003c/li\u003e\n\u003cli\u003eMangle destruction incorrect with export named default properly\u003c/li\u003e\n\u003cli\u003eFixed unexpected asi generation with sequence expression\u003c/li\u003e\n\u003cli\u003eFixed a lot of types\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded new external type \u0026quot;module-import\u0026quot;\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003ewebpackIgnore\u003c/code\u003e for \u003ccode\u003enew URL()\u003c/code\u003e construction\u003c/li\u003e\n\u003cli\u003e[CSS] \u003ccode\u003e@import\u003c/code\u003e pathinfo support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSecurity\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed DOM clobbering in auto public path\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.93.0\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eGenerate correct relative path to runtime chunks\u003c/li\u003e\n\u003cli\u003eMakes \u003ccode\u003eDefinePlugin\u003c/code\u003e quieter under default log level\u003c/li\u003e\n\u003cli\u003eFixed mangle destructuring default in namespace import\u003c/li\u003e\n\u003cli\u003eFixed consumption of eager shared modules for module federation\u003c/li\u003e\n\u003cli\u003eStrip slash for pretty regexp\u003c/li\u003e\n\u003cli\u003eCalculate correct contenthash for CSS generator options\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded the \u003ccode\u003ebinary\u003c/code\u003e generator option for asset modules to explicitly keep source maps produced by loaders\u003c/li\u003e\n\u003cli\u003eAdded the \u003ccode\u003emodern-module\u003c/code\u003e library value for tree shakable output\u003c/li\u003e\n\u003cli\u003eAdded the \u003ccode\u003eoverrideStrict\u003c/code\u003e option to override strict or non-strict mode for javascript modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.92.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDoesn't crash with an error when the css experiment is enabled and contenthash is used\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.92.0\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect tidle range's comutation for module federation\u003c/li\u003e\n\u003cli\u003eConsider runtime for pure expression dependency update hash\u003c/li\u003e\n\u003cli\u003eReturn value in the \u003ccode\u003esubtractRuntime\u003c/code\u003e function for runtime logic\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/eabf85d8580dfcb876b56957ba5488222a4f7873\"\u003e\u003ccode\u003eeabf85d\u003c/code\u003e\u003c/a\u003e chore(release): 5.94.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/955e057abc6cc83cbc3fa1e1ef67a49758bf5a61\"\u003e\u003ccode\u003e955e057\u003c/code\u003e\u003c/a\u003e security: fix DOM clobbering in auto public path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/98223873625a029b9903d5ec6c0235b8f9fb5a66\"\u003e\u003ccode\u003e9822387\u003c/code\u003e\u003c/a\u003e test: fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/cbb86ede32ab53d8eade6efee30da2463f0082ec\"\u003e\u003ccode\u003ecbb86ed\u003c/code\u003e\u003c/a\u003e test: fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/5ac3d7f2cdce6da63a8dfb07e9dbbd95756bf7a2\"\u003e\u003ccode\u003e5ac3d7f\u003c/code\u003e\u003c/a\u003e fix: unexpected asi generation with sequence expression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/2411661bd1bedf1b2efc23c76d595c189425d39f\"\u003e\u003ccode\u003e2411661\u003c/code\u003e\u003c/a\u003e security: fix DOM clobbering in auto public path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/b8c03d47726a57e0dc6ba58b4f96f0e81b168268\"\u003e\u003ccode\u003eb8c03d4\u003c/code\u003e\u003c/a\u003e fix: unexpected asi generation with sequence expression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/f46a03ccbc2b96ff3552642fea0d7402f7880865\"\u003e\u003ccode\u003ef46a03c\u003c/code\u003e\u003c/a\u003e revert: do not use heuristic fallback for \u0026quot;module-import\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/60f189871a4cdc5d595663d6babadac74f2f6a7d\"\u003e\u003ccode\u003e60f1898\u003c/code\u003e\u003c/a\u003e fix: do not use heuristic fallback for \u0026quot;module-import\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/66306aa45659ef4e8dac8226798931c228fdb204\"\u003e\u003ccode\u003e66306aa\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: module-import get fallback from externalsPresets\u0026quot;\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/webpack/webpack/compare/v5.74.0...v5.94.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~evilebottnawi\"\u003eevilebottnawi\u003c/a\u003e, a new releaser for webpack since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@adobe/css-tools` from 4.0.1 to 4.4.4\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/adobe/css-tools/blob/main/docs/CHANGELOG.md\"\u003e\u003ccode\u003e@​adobe/css-tools\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.4.4] - 2025-07-22\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch from yarn to npm for package management\u003c/li\u003e\n\u003cli\u003eSwitch from eslint to biome for code formatting and linting\u003c/li\u003e\n\u003cli\u003eReformat codebase to comply with biome recommendations\u003c/li\u003e\n\u003cli\u003eSwitch from webpack to rollup for bundling\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix module exports to ensure proper compatibility with bundlers\u003c/li\u003e\n\u003cli\u003eAdd validation check to prevent future export issues\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.4.3] - 2025-05-15\u003c/h2\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix polynomial regular expression vulnerability on uncontrolled data\u003c/li\u003e\n\u003cli\u003eRefactor code to enable GitHub security static analysis\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove parsing performance with minor optimizations\u003c/li\u003e\n\u003cli\u003eReplace regex patterns with string search (indexOf-based) for better performance\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new utility functions with comprehensive unit tests\u003c/li\u003e\n\u003cli\u003eAdd improved formatting for CSS Grid template areas (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/283\"\u003e#283\u003c/a\u003e by \u003ca href=\"https://github.com/jogibear9988\"\u003e\u003ccode\u003e@​jogibear9988\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix TypeScript error with ConstructorParameters in Parcel bundler (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/444\"\u003e#444\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.4.2] - 2025-02-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regular expression for parsing quoted values in parentheses\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.4.0] - 2024-06-05\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for CSS \u003ccode\u003e@starting-style\u003c/code\u003e at-rule (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/319\"\u003e#319\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.3.3] - 2024-01-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate package export configuration (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/271\"\u003e#271\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.3.2] - 2023-11-28\u003c/h2\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix ReDoS vulnerability with crafted CSS strings - CVE-2023-48631\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/adobe/css-tools/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@babel/traverse` from 7.18.13 to 7.28.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/babel/babel/releases\"\u003e\u003ccode\u003e@​babel/traverse\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.28.3 (2025-08-14)\u003c/h2\u003e\n\u003ch4\u003e:eyeglasses: Spec Compliance\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-helper-create-class-features-plugin\u003c/code\u003e, \u003ccode\u003ebabel-plugin-proposal-decorators\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-class-static-block\u003c/code\u003e, \u003ccode\u003ebabel-preset-env\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17443\"\u003e#17443\u003c/a\u003e [static blocks] Do not inject new static fields after static code (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:bug: Bug Fix\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-parser\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17465\"\u003e#17465\u003c/a\u003e fix(parser/typescript): parse \u003ccode\u003eimport(\u0026quot;./a\u0026quot;, {with:{},})\u003c/code\u003e (\u003ca href=\"https://github.com/easrng\"\u003e\u003ccode\u003e@​easrng\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17478\"\u003e#17478\u003c/a\u003e fix(parser): stop subscript parsing on async arrow (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:nail_care: Polish\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-plugin-transform-regenerator\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-runtime\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17363\"\u003e#17363\u003c/a\u003e Do not save last yield in call in temp var (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:memo: Documentation\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17448\"\u003e#17448\u003c/a\u003e move eslint-{parser,plugin} docs to the website (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:house: Internal\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17454\"\u003e#17454\u003c/a\u003e Enable type checking for \u003ccode\u003escripts\u003c/code\u003e and \u003ccode\u003ebabel-worker.cjs\u003c/code\u003e (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:microscope: Output optimization\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-plugin-proposal-destructuring-private\u003c/code\u003e, \u003ccode\u003ebabel-plugin-proposal-do-expressions\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17444\"\u003e#17444\u003c/a\u003e Optimize do expression output (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 5\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBabel Bot (\u003ca href=\"https://github.com/babel-bot\"\u003e\u003ccode\u003e@​babel-bot\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHuáng Jùnliàng (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eJam Balaya (\u003ca href=\"https://github.com/JamBalaya56562\"\u003e\u003ccode\u003e@​JamBalaya56562\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNicolò Ribaudo (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eeasrng (\u003ca href=\"https://github.com/easrng\"\u003e\u003ccode\u003e@​easrng\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.28.2 (2025-07-24)\u003c/h2\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/souhailaS\"\u003e\u003ccode\u003e@​souhailaS\u003c/code\u003e\u003c/a\u003e for your first PR!\u003c/p\u003e\n\u003ch4\u003e:bug: Bug Fix\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-types\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17445\"\u003e#17445\u003c/a\u003e [babel 7] Make \u003ccode\u003eoperator\u003c/code\u003e param in \u003ccode\u003et.tsTypeOperator\u003c/code\u003e optional (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ebabel-helpers\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-async-generator-functions\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-regenerator\u003c/code\u003e, \u003ccode\u003ebabel-preset-env\u003c/code\u003e, \u003ccode\u003ebabel-runtime-corejs3\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17441\"\u003e#17441\u003c/a\u003e fix: \u003ccode\u003eregeneratorDefine\u003c/code\u003e compatibility with es5 strict mode (\u003ca href=\"https://github.com/liuxingbaoyu\"\u003e\u003ccode\u003e@​liuxingbaoyu\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 4\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBabel Bot (\u003ca href=\"https://github.com/babel-bot\"\u003e\u003ccode\u003e@​babel-bot\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNicolò Ribaudo (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSOUHAILA SERBOUT (\u003ca href=\"https://github.com/souhailaS\"\u003e\u003ccode\u003e@​souhailaS\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/liuxingbaoyu\"\u003e\u003ccode\u003e@​liuxingbaoyu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.28.1 (2025-07-12)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/babel/babel/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​babel/traverse\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.28.3 (2025-08-14)\u003c/h2\u003e\n\u003ch4\u003e:eyeglasses: Spec Compliance\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-helper-create-class-features-plugin\u003c/code\u003e, \u003ccode\u003ebabel-plugin-proposal-decorators\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-class-static-block\u003c/code\u003e, \u003ccode\u003ebabel-preset-env\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17443\"\u003e#17443\u003c/a\u003e [static blocks] Do not inject new static fields after static code (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:bug: Bug Fix\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-parser\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17465\"\u003e#17465\u003c/a\u003e fix(parser/typescript): parse \u003ccode\u003eimport(\u0026quot;./a\u0026quot;, {with:{},})\u003c/code\u003e (\u003ca href=\"https://github.com/easrng\"\u003e\u003ccode\u003e@​easrng\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17478\"\u003e#17478\u003c/a\u003e fix(parser): stop subscript parsing on async arrow (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:nail_care: Polish\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-plugin-transform-regenerator\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-runtime\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17363\"\u003e#17363\u003c/a\u003e Do not save last yield in call in temp var (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:memo: Documentation\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17448\"\u003e#17448\u003c/a\u003e move eslint-{parser,plugin} docs to the website (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:house: Internal\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17454\"\u003e#17454\u003c/a\u003e Enable type checking for \u003ccode\u003escripts\u003c/code\u003e and \u003ccode\u003ebabel-worker.cjs\u003c/code\u003e (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:microscope: Output optimization\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-plugin-proposal-destructuring-private\u003c/code\u003e, \u003ccode\u003ebabel-plugin-proposal-do-expressions\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17444\"\u003e#17444\u003c/a\u003e Optimize do expression output (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.28.2 (2025-07-24)\u003c/h2\u003e\n\u003ch4\u003e:bug: Bug Fix\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-types\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17445\"\u003e#17445\u003c/a\u003e [babel 7] Make \u003ccode\u003eoperator\u003c/code\u003e param in \u003ccode\u003et.tsTypeOperator\u003c/code\u003e optional (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ebabel-helpers\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-async-generator-functions\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-regenerator\u003c/code\u003e, \u003ccode\u003ebabel-preset-env\u003c/code\u003e, \u003ccode\u003ebabel-runtime-corejs3\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17441\"\u003e#17441\u003c/a\u003e fix: \u003ccode\u003eregeneratorDefine\u003c/code\u003e compatibility with es5 strict mode (\u003ca href=\"https://github.com/liuxingbaoyu\"\u003e\u003ccode\u003e@​liuxingbaoyu\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.28.1 (2025-07-12)\u003c/h2\u003e\n\u003ch4\u003e:bug: Bug Fix\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-plugin-transform-async-generator-functions\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-regenerator\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17426\"\u003e#17426\u003c/a\u003e fix: \u003ccode\u003eregenerator\u003c/code\u003e correctly handles \u003ccode\u003ethrow\u003c/code\u003e outside of \u003ccode\u003etry\u003c/code\u003e (\u003ca href=\"https://github.com/liuxingbaoyu\"\u003e\u003ccode\u003e@​liuxingbaoyu\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:memo: Documentation\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-types\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17422\"\u003e#17422\u003c/a\u003e Add missing FunctionParameter docs (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:leftwards_arrow_with_hook: Revert\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-plugin-proposal-destructuring-private\u003c/code\u003e, \u003ccode\u003ebabel-plugin-proposal-do-expressions\u003c/code\u003e, \u003ccode\u003ebabel-types\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17432\"\u003e#17432\u003c/a\u003e Do not mark OptionalMemberExpresion as LVal (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.28.0 (2025-07-02)\u003c/h2\u003e\n\u003ch4\u003e:rocket: New Feature\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-node\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17147\"\u003e#17147\u003c/a\u003e Support top level await in node repl (\u003ca href=\"https://github.com/liuxingbaoyu\"\u003e\u003ccode\u003e@​liuxingbaoyu\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ebabel-types\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/ef155f5ca83c73dbc1ea8d95216830b7dc3b0ac2\"\u003e\u003ccode\u003eef155f5\u003c/code\u003e\u003c/a\u003e v7.28.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/741cbd2381ac0cda3afd42bc04454a87d9d8762a\"\u003e\u003ccode\u003e741cbd2\u003c/code\u003e\u003c/a\u003e chore: fix various typos across codebase (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17476\"\u003e#17476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/5051613c021b6604929278d6811fa671f49dfbdb\"\u003e\u003ccode\u003e5051613\u003c/code\u003e\u003c/a\u003e Type-check \u003ccode\u003e.d.ts\u003c/code\u003e file with \u003ccode\u003estrict: true\u003c/code\u003e (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17461\"\u003e#17461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/ccc5fae96f5281ae1ee49fac74c7c275b9111ead\"\u003e\u003ccode\u003eccc5fae\u003c/code\u003e\u003c/a\u003e v7.28.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/4b4e7e20aaf09e61e56ac11bff71d7dcab227f33\"\u003e\u003ccode\u003e4b4e7e2\u003c/code\u003e\u003c/a\u003e Create babel-helper-globals (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17297\"\u003e#17297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/cf5ae035632e1d60235a8635d3369f4b169f75dc\"\u003e\u003ccode\u003ecf5ae03\u003c/code\u003e\u003c/a\u003e LVal coverage updates (Part 2) (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17391\"\u003e#17391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/6ca9df4da2c7f3fd2abee0902f246d5623b62c2a\"\u003e\u003ccode\u003e6ca9df4\u003c/code\u003e\u003c/a\u003e Accept bigints in \u003ccode\u003et.bigIntLiteral\u003c/code\u003e factory (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17378\"\u003e#17378\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/75f01403f4f1abd5e9a370f3fdc63f2f6e1d580e\"\u003e\u003ccode\u003e75f0140\u003c/code\u003e\u003c/a\u003e Parse discard binding (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17163\"\u003e#17163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/4ce7dfde1d2f6a8146d2b953d3afb8fc3b023def\"\u003e\u003ccode\u003e4ce7dfd\u003c/code\u003e\u003c/a\u003e v7.27.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/6c8faf172180280cd15b2f9aa1f35ad233f8a8c2\"\u003e\u003ccode\u003e6c8faf1\u003c/code\u003e\u003c/a\u003e add generateUidBasedOnNode test cases (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17381\"\u003e#17381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/babel/babel/commits/v7.28.3/packages/babel-traverse\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@cypress/request` from 2.88.10 to 3.0.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/cypress-io/request/releases\"\u003e\u003ccode\u003e@​cypress/request\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.0.9\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.8...v3.0.9\"\u003e3.0.9\u003c/a\u003e (2025-07-24)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate patch version of form-data to address new critical Snyk vulnerability (\u003ca href=\"https://github.com/cypress-io/request/commit/a2f3199f70724c9c3db992d1f2017e9b6a3d9539\"\u003ea2f3199\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.7...v3.0.8\"\u003e3.0.8\u003c/a\u003e (2025-03-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency qs to v6.14.0 (\u003ca href=\"https://github.com/cypress-io/request/commit/16066b65e8c4958b49cfaa77de25b84b0f0ca4d3\"\u003e16066b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.7\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.6...v3.0.7\"\u003e3.0.7\u003c/a\u003e (2024-12-09)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency qs to v6.13.1 (\u003ca href=\"https://github.com/cypress-io/request/commit/00d1835ca237bf2aab535be470faa972cc5808c7\"\u003e00d1835\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.5...v3.0.6\"\u003e3.0.6\u003c/a\u003e (2024-10-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency tough-cookie to v5 (\u003ca href=\"https://github.com/cypress-io/request/commit/65ad82c9f16e53653d6ee293cc330e38a305e423\"\u003e65ad82c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.4...v3.0.5\"\u003e3.0.5\u003c/a\u003e (2024-09-09)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency form-data to v4 (\u003ca href=\"https://github.com/cypress-io/request/commit/6b905804c035f51403b57560bbe7ed52602c1d60\"\u003e6b90580\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.3...v3.0.4\"\u003e3.0.4\u003c/a\u003e (2024-09-05)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency form-data to ~2.5.0 (\u003ca href=\"https://github.com/cypress-io/request/commit/87b5e920ca1101fe0c28b5922222375fb7232fb7\"\u003e87b5e92\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.2...v3.0.3\"\u003e3.0.3\u003c/a\u003e (2024-09-05)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/3cffd53a243630c517fb31c3cedc0a65012f4868\"\u003e\u003ccode\u003e3cffd53\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/88\"\u003e#88\u003c/a\u003e from ahayes91/update-form-data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/7c424d5a23c6464774dc96778533bf88ad7d3f0a\"\u003e\u003ccode\u003e7c424d5\u003c/code\u003e\u003c/a\u003e chore: fix lint issue\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/7f6fdec79d0a7cc90510429c1301263f51166b3b\"\u003e\u003ccode\u003e7f6fdec\u003c/code\u003e\u003c/a\u003e chore: remove test now that we are on form-data 4.0.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/a2f3199f70724c9c3db992d1f2017e9b6a3d9539\"\u003e\u003ccode\u003ea2f3199\u003c/code\u003e\u003c/a\u003e fix: update patch version of form-data to address new critical Snyk vulnerabi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/a1252dd285d95c3aa8754b95ce3933f3e059f11d\"\u003e\u003ccode\u003ea1252dd\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/84\"\u003e#84\u003c/a\u003e from cypress-io/renovate/qs-6.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/16066b65e8c4958b49cfaa77de25b84b0f0ca4d3\"\u003e\u003ccode\u003e16066b6\u003c/code\u003e\u003c/a\u003e fix(deps): update dependency qs to v6.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/5fd077003868ae39ca43871ad1604e92404000ae\"\u003e\u003ccode\u003e5fd0770\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/83\"\u003e#83\u003c/a\u003e from cypress-io/renovate/cimg-node-18.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/b42b322d62c4d7c302bc049016143d4aca673220\"\u003e\u003ccode\u003eb42b322\u003c/code\u003e\u003c/a\u003e chore(deps): update node.js to v18.20.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/e79201a5e61b88cefd6437802b4feb2fa4dbf45f\"\u003e\u003ccode\u003ee79201a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/80\"\u003e#80\u003c/a\u003e from cypress-io/renovate/cimg-node-18.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/0e4e875256b126d9e603e3970078975ba6f4f97f\"\u003e\u003ccode\u003e0e4e875\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/81\"\u003e#81\u003c/a\u003e from cypress-io/renovate/qs-6.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/cypress-io/request/compare/v2.88.10...v3.0.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cypress` from 10.4.0 to 15.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/cypress-io/cypress/releases\"\u003ecypress's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev15.1.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#15.1.0\"\u003ehttps://docs.cypress.io/app/references/changelog#15.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev15.0.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#15.0.0\"\u003ehttps://docs.cypress.io/app/references/changelog#15.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.4\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-4\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-3\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.2\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-2\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.4.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-4-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-4-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.4.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-4-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-4-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-3\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.2\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-2\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.2.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-2-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-2-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.2.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-2-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-2-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.1.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-1-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-1-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.0.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-0-3\"\u003ehttps://docs.cypress.io/app/references/changelog#14-0-3\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/591de461fd8ca9a56af617845b2c55b5b23ebf29\"\u003e\u003ccode\u003e591de46\u003c/code\u003e\u003c/a\u003e chore: release 15.1.0 (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32401\"\u003e#32401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/8d0aee00b129a87bb285df9665018b9c1589d1ee\"\u003e\u003ccode\u003e8d0aee0\u003c/code\u003e\u003c/a\u003e fix: wrap the \u003ccode\u003etsx\u003c/code\u003e loader path in quotes (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32400\"\u003e#32400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/21be37e72e475be2122ab91f8119e48f1d82c32f\"\u003e\u003ccode\u003e21be37e\u003c/code\u003e\u003c/a\u003e fix: move \u003ccode\u003e@​cypress/schematic\u003c/code\u003e npm registry query to https (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32390\"\u003e#32390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/30f8bc39682013d0715e40bfd84712e32b9f133e\"\u003e\u003ccode\u003e30f8bc3\u003c/code\u003e\u003c/a\u003e chore: fix the package name in docs. (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/61307b09943fb5bcf3271279f3fd2f95dadd27d2\"\u003e\u003ccode\u003e61307b0\u003c/code\u003e\u003c/a\u003e chore(deps): remove sharp dependency resolution (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32378\"\u003e#32378\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/d0570f8fec3b6d661d902e558fefbadf430b0b40\"\u003e\u003ccode\u003ed0570f8\u003c/code\u003e\u003c/a\u003e chore: Update Chrome (beta) to 140.0.7339.41 (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32375\"\u003e#32375\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/695fa95c3ee687293c603bfecc497a71c88ae8c3\"\u003e\u003ccode\u003e695fa95\u003c/code\u003e\u003c/a\u003e chore: updating v8 snapshot cache (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32387\"\u003e#32387\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/505eb1397d509f197ca0f4ce299ee13d13b3112a\"\u003e\u003ccode\u003e505eb13\u003c/code\u003e\u003c/a\u003e chore: updating v8 snapshot cache (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32386\"\u003e#32386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/ef6ad2aeb61b8fd78c05393b645adb11befe5e7f\"\u003e\u003ccode\u003eef6ad2a\u003c/code\u003e\u003c/a\u003e chore: updating v8 snapshot cache (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32385\"\u003e#32385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/58bee2839c9326a305002c233bbf9e9684442363\"\u003e\u003ccode\u003e58bee28\u003c/code\u003e\u003c/a\u003e fix: force gtk version 3 to avoid Electron 36 from crashing (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32372\"\u003e#32372\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/cypress-io/cypress/compare/v10.4.0...v15.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~cypress-npm-publisher\"\u003ecypress-npm-publisher\u003c/a\u003e, a new releaser for cypress since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `body-parser` from 1.20.0 to 1.20.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/expressjs/body-parser/releases\"\u003ebody-parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.20.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eImportant\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.13.0\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003edepth\u003c/code\u003e option to customize the depth level in the parser\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eIMPORTANT:\u003c/strong\u003e The default \u003ccode\u003edepth\u003c/code\u003e level for parsing URL-encoded data is now \u003ccode\u003e32\u003c/code\u003e (previously was \u003ccode\u003eInfinity\u003c/code\u003e). \u003ca href=\"https://github.com/expressjs/body-parser/blob/17529513673e39ba79886a7ce3363320cf1c0c50/README.md#depth\"\u003eDocumentation\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003echore: add support for OSSF scorecard reporting by \u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/522\"\u003eexpressjs/body-parser#522\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix errors in ci github action for node 8 and 9 by \u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/523\"\u003eexpressjs/body-parser#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: pin to node@22.4.1 by \u003ca href=\"https://github.com/wesleytodd\"\u003e\u003ccode\u003e@​wesleytodd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/527\"\u003eexpressjs/body-parser#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeps: qs@6.12.3 by \u003ca href=\"https://github.com/melikhov-dev\"\u003e\u003ccode\u003e@​melikhov-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/521\"\u003eexpressjs/body-parser#521\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd OSSF Scorecard badge by \u003ca href=\"https://github.com/bjohansebas\"\u003e\u003ccode\u003e@​bjohansebas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/531\"\u003eexpressjs/body-parser#531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLinter by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/534\"\u003eexpressjs/body-parser#534\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 1.20.3 by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/535\"\u003eexpressjs/body-parser#535\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/522\"\u003eexpressjs/body-parser#522\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/melikhov-dev\"\u003e\u003ccode\u003e@​melikhov-dev\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/521\"\u003eexpressjs/body-parser#521\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bjohansebas\"\u003e\u003ccode\u003e@​bjohansebas\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/531\"\u003eexpressjs/body-parser#531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/534\"\u003eexpressjs/body-parser#534\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/expressjs/body-parser/compare/1.20.2...1.20.3\"\u003ehttps://github.com/expressjs/body-parser/compare/1.20.2...1.20.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.20.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix strict json error message on Node.js 19+\u003c/li\u003e\n\u003cli\u003edeps: content-type@~1.0.5\n\u003cul\u003e\n\u003cli\u003eperf: skip value escaping when unnecessary\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: raw-body@2.5.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.20.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.11.0\u003c/li\u003e\n\u003cli\u003eperf: remove unnecessary object clone\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/expressjs/body-parser/blob/master/HISTORY.md\"\u003ebody-parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.20.3 / 2024-09-10\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.13.0\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003edepth\u003c/code\u003e option to customize the depth level in the parser\u003c/li\u003e\n\u003cli\u003eIMPORTANT: The default \u003ccode\u003edepth\u003c/code\u003e level for parsing URL-encoded data is now \u003ccode\u003e32\u003c/code\u003e (previously was \u003ccode\u003eInfinity\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e1.20.2 / 2023-02-21\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix strict json error message on Node.js 19+\u003c/li\u003e\n\u003cli\u003edeps: content-type@~1.0.5\n\u003cul\u003e\n\u003cli\u003eperf: skip value escaping when unnecessary\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: raw-body@2.5.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e1.20.1 / 2022-10-06\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.11.0\u003c/li\u003e\n\u003cli\u003eperf: remove unnecessary object clone\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/17529513673e39ba79886a7ce3363320cf1c0c50\"\u003e\u003ccode\u003e1752951\u003c/code\u003e\u003c/a\u003e 1.20.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/39744cfe2ac4fb37a19ed7c43e3a74332f428e17\"\u003e\u003ccode\u003e39744cf\u003c/code\u003e\u003c/a\u003e chore: linter (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/534\"\u003e#534\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/b2695c4450f06ba3b0ccf48d872a229bb41c9bce\"\u003e\u003ccode\u003eb2695c4\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/ade0f3f82f91086d6cd2ed2cb4b0aff448fbc2e5\"\u003e\u003ccode\u003eade0f3f\u003c/code\u003e\u003c/a\u003e add scorecard to readme (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/99a1bd62456f932004b84767d6393bc261f75d36\"\u003e\u003ccode\u003e99a1bd6\u003c/code\u003e\u003c/a\u003e deps: qs@6.12.3 (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/521\"\u003e#521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/947859160527c7aaaa20da79e2c3ba542baaaf66\"\u003e\u003ccode\u003e9478591\u003c/code\u003e\u003c/a\u003e fix: pin to node@22.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/83db46a1e5512135ce01ed90b9132ee16a2657a8\"\u003e\u003ccode\u003e83db46a\u003c/code\u003e\u003c/a\u003e ci: fix errors in ci github action for node 8 and 9 (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/523\"\u003e#523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/9d4e2125b580b055b2a3aa140df9b8fce363af46\"\u003e\u003ccode\u003e9d4e212\u003c/code\u003e\u003c/a\u003e chore: add support for OSSF scorecard reporting (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/522\"\u003e#522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/ee91374eae1555af679550b1d2fb5697d9924109\"\u003e\u003ccode\u003eee91374\u003c/code\u003e\u003c/a\u003e 1.20.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/368a93a613a1ac6cbdec9694f4018e707b3c1f50\"\u003e\u003ccode\u003e368a93a\u003c/code\u003e\u003c/a\u003e Fix strict json error message on Node.js 19+\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/expressjs/body-parser/compare/1.20.0...1.20.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~ulisesgascon\"\u003eulisesgascon\u003c/a\u003e, a new releaser for body-parser since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `express` from 4.18.1 to 4.21.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/expressjs/express/releases\"\u003eexpress's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.21.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd funding field (v4) by \u003ca href=\"https://github.com/bjohansebas\"\u003e\u003ccode\u003e@​bjohansebas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/6065\"\u003eexpressjs/express#6065\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeps: path-to-regexp@0.1.11 by \u003ca href=\"https://github.com/blakeembrey\"\u003e\u003ccode\u003e@​blakeembrey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5956\"\u003eexpressjs/express#5956\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeps: bump path-to-regexp@0.1.12 by \u003ca href=\"https://github.com/jonchurch\"\u003e\u003ccode\u003e@​jonchurch\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/6209\"\u003eexpressjs/express#6209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 4.21.2 by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/6094\"\u003eexpressjs/express#6094\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/expressjs/express/compare/4.21.1...4.21.2\"\u003ehttps://github.com/expressjs/express/compare/4.21.1...4.21.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.21.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBackport a fix for CVE-2024-47764 to the 4.x branch by \u003ca href=\"https://github.com/joshbuker\"\u003e\u003ccode\u003e@​joshbuker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/6029\"\u003eexpressjs/express#6029\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 4.21.1 by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/6031\"\u003eexpressjs/express#6031\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/expressjs/express/compare/4.21.0...4.21.1\"\u003ehttps://github.com/expressjs/express/compare/4.21.0...4.21.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.21.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003e\u0026quot;back\u0026quot;\u003c/code\u003e magic string in redirects by \u003ca href=\"https://github.com/blakeembrey\"\u003e\u003ccode\u003e@​blakeembrey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5935\"\u003eexpressjs/express#5935\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efinalhandler@1.3.1 by \u003ca href=\"https://github.com/wesleytodd\"\u003e\u003ccode\u003e@​wesleytodd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5954\"\u003eexpressjs/express#5954\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): serve-static@1.16.2 by \u003ca href=\"https://github.com/wesleytodd\"\u003e\u003ccode\u003e@​wesleytodd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5951\"\u003eexpressjs/express#5951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgraded dependency qs to 6.13.0 to match qs in body-parser by \u003ca href=\"https://github.com/agadzinski93\"\u003e\u003ccode\u003e@​agadzinski93\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5946\"\u003eexpressjs/express#5946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agadzinski93\"\u003e\u003ccode\u003e@​agadzinski93\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5946\"\u003eexpressjs/express#5946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/expressjs/express/compare/4.20.0...4.21.0\"\u003ehttps://github.com/expressjs/express/compare/4.20.0...4.21.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.20.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eImportant\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIMPORTANT: The default \u003ccode\u003edepth\u003c/code\u003e level for parsing URL-encoded data is now \u003ccode\u003e32\u003c/code\u003e (previously was \u003ccode\u003eInfinity\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003eRemove link renderization in html while using \u003ccode\u003eres.redirect\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e4.19.2 Staging by \u003ca href=\"https://github.com/wesleytodd\"\u003e\u003ccode\u003e@​wesleytodd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5561\"\u003eexpressjs/express#5561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eremove duplicate location test for data uri by \u003ca href=\"https://github.com/wesleytodd\"\u003e\u003ccode\u003e@​wesleytodd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5562\"\u003eexpressjs/express#5562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: document beta releases expectations by \u003ca href=\"https://github.com/marco-ippolito\"\u003e\u003ccode\u003e@​marco-ippolito\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5565\"\u003eexpressjs/express#5565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCut down on duplicated CI runs by \u003ca href=\"https://github.com/jonchurch\"\u003e\u003ccode\u003e@​jonchurch\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5564\"\u003eexpressjs/express#5564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a Threat Model by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5526\"\u003eexpressjs/express#5526\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAssign captain of encodeurl by \u003ca href=\"https://github.com/blakeembrey\"\u003e\u003ccode\u003e@​blakeembrey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5579\"\u003eexpressjs/express#5579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNominate jonchurch as repo captain for \u003ccode\u003ehttp-errors\u003c/code\u003e, \u003ccode\u003eexpressjs.com\u003c/code\u003e, \u003ccode\u003emorgan\u003c/code\u003e, \u003ccode\u003ecors\u003c/code\u003e, \u003ccode\u003ebody-parser\u003c/code\u003e by \u003ca href=\"https://github.com/jonchurch\"\u003e\u003ccode\u003e@​jonchurch\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5587\"\u003eexpressjs/express#5587\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update Security.md by \u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5590\"\u003eexpressjs/express#5590\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update triage nomination policy by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5600\"\u003eexpressjs/express#5600\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd CodeQL (SAST) by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5433\"\u003eexpressjs/express#5433\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: add UlisesGascon as triage initiative captain by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5605\"\u003eexpressjs/express#5605\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/expressjs/express/blob/4.21.2/History.md\"\u003eexpress's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.21.2 / 2024-11-06\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003edeps: path-to-regexp@0.1.12\n\u003cul\u003e\n\u003cli\u003eFix backtracking protection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: path-to-regexp@0.1.11\n\u003cul\u003e\n\u003cli\u003eThrows an error on invalid path values\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.21.1 / 2024-10-08\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eBackported a fix for \u003ca href=\"https://nvd.nist.gov/vuln/detail/CVE-2024-47764\"\u003eCVE-2024-47764\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.21.0 / 2024-09-11\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003eres.location(\u0026quot;back\u0026quot;)\u003c/code\u003e and \u003ccode\u003eres.redirect(\u0026quot;back\u0026quot;)\u003c/code\u003e magic string\u003c/li\u003e\n\u003cli\u003edeps: serve-static@1.16.2\n\u003cul\u003e\n\u003cli\u003eincludes send@0.19.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: finalhandler@1.3.1\u003c/li\u003e\n\u003cli\u003edeps: qs@6.13.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.20.0 / 2024-09-10\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003edeps: serve-static@0.16.0\n\u003cul\u003e\n\u003cli\u003eRemove link renderization in html while redirecting\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: send@0.19.0\n\u003cul\u003e\n\u003cli\u003eRemove link renderization in html while redirecting\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: body-parser@0.6.0\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003edepth\u003c/code\u003e option to customize the depth level in the parser\u003c/li\u003e\n\u003cli\u003eIMPORTANT: The default \u003ccode\u003edepth\u003c/code\u003e level for parsing URL-encoded data is now \u003ccode\u003e32\u003c/code\u003e (previously was \u003ccode\u003eInfinity\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eRemove link renderization in html while using \u003ccode\u003eres.redirect\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003edeps: path-to-regexp@0.1.10\n\u003cul\u003e\n\u003cli\u003eAdds support for named matching groups in the routes using a regex\u003c/li\u003e\n\u003cli\u003eAdds backtracking protection to parameters without regexes defined\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: encodeurl@~2.0.0\n\u003cul\u003e\n\u003cli\u003eRemoves encoding of \u003ccode\u003e\\\u003c/code\u003e, \u003ccode\u003e|\u003c/code\u003e, and \u003ccode\u003e^\u003c/code\u003e to align better with URL spec\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eDeprecate passing \u003ccode\u003eoptions.maxAge\u003c/code\u003e and \u003ccode\u003eoptions.expires\u003c/code\u003e to \u003ccode\u003eres.clearCookie\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eWill be ignored in v5, clearCookie will set a cookie with an expires in the past to instruct clients to delete the cookie\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.19.2 / 2024-03-25\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eImproved fix for open redirect allow list bypass\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.19.1 / 2024-03-20\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAllow passing non-strings to res.location with new encoding handling checks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/1faf228935aa0a13111f92c28ee795be64ce3f0f\"\u003e\u003ccode\u003e1faf228\u003c/code\u003e\u003c/a\u003e 4.21.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/2e0fb646d03184dd9a5285813460210c0e7ae654\"\u003e\u003ccode\u003e2e0fb64\u003c/code\u003e\u003c/a\u003e deps: bump path-to-regexp@0.1.12 (\u003ca href=\"https://redirect.github.com/expressjs/express/issues/6209\"\u003e#6209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/59fc27028ec5d212be653d35d7e3f73a2c3ac3c0\"\u003e\u003ccode\u003e59fc270\u003c/code\u003e\u003c/a\u003e deps: path-to-regexp@0.1.11 (\u003ca href=\"https://redirect.github.com/expressjs/express/issues/5956\"\u003e#5956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/51fc39ccf834eec44547b0f4fed8027e7c05a009\"\u003e\u003ccode\u003e51fc39c\u003c/code\u003e\u003c/a\u003e docs: add funding (\u003ca href=\"https://redirect.github.com/expressjs/express/issues/6065\"\u003e#6065\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/8e229f92752ad51462c868b99f6e6c2e559801b0\"\u003e\u003ccode\u003e8e229f9\u003c/code\u003e\u003c/a\u003e 4.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/a024c8a7b658a178cbdb9bde33030b7500172815\"\u003e\u003ccode\u003ea024c8a\u003c/code\u003e\u003c/a\u003e fix(deps): cookie@0.7.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/7e562c6d8daddff4604f8efaaf9db2cf98c6dcff\"\u003e\u003ccode\u003e7e562c6\u003c/code\u003e\u003c/a\u003e 4.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/1bcde96bc87c4704df9a704271d1167064ab56bb\"\u003e\u003ccode\u003e1bcde96\u003c/code\u003e\u003c/a\u003e fix(deps): qs@6.13.0 (\u003ca href=\"https://redirect.github.com/expressjs/express/issues/5946\"\u003e#5946\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/7d364775688be98aaa973302e066d0da9f438997\"\u003e\u003ccode\u003e7d36477\u003c/code\u003e\u003c/a\u003e fix(deps): serve-static@1.16.2 (\u003ca href=\"https://redirect.github.com/expressjs/express/issues/5951\"\u003e#5951\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/40d2d8f2c882712a0f2e4603c38d166c79676b2b\"\u003e\u003ccode\u003e40d2d8f\u003c/code\u003e\u003c/a\u003e fix(deps): finalhandler@1.3.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/expressjs/express/compare/4.18.1...4.21.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~jonchurch\"\u003ejonchurch\u003c/a\u003e, a new releaser for express since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `braces` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/74b2db2938fad48a2ea54a9c8bf27a37a62c350d\"\u003e\u003ccode\u003e74b2db2\u003c/code\u003e\u003c/a\u003e 3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/88f1429a0f47e1dd3813de35211fc97ffda27f9e\"\u003e\u003ccode\u003e88f1429\u003c/code\u003e\u003c/a\u003e update eslint. lint, fix unit tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/415d660c3002d1ab7e63dbf490c9851da80596ff\"\u003e\u003ccode\u003e415d660\u003c/code\u003e\u003c/a\u003e Snyk js braces 6838727 (\u003ca href=\"https://redirect.github.com/micromatch/braces/issues/40\"\u003e#40\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/190510f79db1adf21d92798b0bb6fccc1f72c9d6\"\u003e\u003ccode\u003e190510f\u003c/code\u003e\u003c/a\u003e fix tests, skip 1 test in test/braces.expand\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/716eb9f12d820b145a831ad678618731927e8856\"\u003e\u003ccode\u003e716eb9f\u003c/code\u003e\u003c/a\u003e readme bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/a5851e57f45c3431a94d83fc565754bc10f5bbc3\"\u003e\u003ccode\u003ea5851e5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/micromatch/braces/issues/37\"\u003e#37\u003c/a\u003e from coderaiser/fix/vulnerability\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/2092bd1fb108d2c59bd62e243b70ad98db961538\"\u003e\u003ccode\u003e2092bd1\u003c/code\u003e\u003c/a\u003e feature: braces: add maxSymbols (\u003ca href=\"https://github.com/micromatch/braces/issues/\"\u003ehttps://github.com/micromatch/braces/issues/\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/9f5b4cf47329351bcb64287223ffb6ecc9a5e6d3\"\u003e\u003ccode\u003e9f5b4cf\u003c/code\u003e\u003c/a\u003e fix: vulnerability (\u003ca href=\"https://security.snyk.io/vuln/SNYK-JS-BRACES-6838727\"\u003ehttps://security.snyk.io/vuln/SNYK-JS-BRACES-6838727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/98414f9f1fabe021736e26836d8306d5de747e0d\"\u003e\u003ccode\u003e98414f9\u003c/code\u003e\u003c/a\u003e remove funding file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/665ab5d561c017a38ba7aafd92cc6655b91d8c14\"\u003e\u003ccode\u003e665ab5d\u003c/code\u003e\u003c/a\u003e update keepEscaping doc (\u003ca href=\"https://redirect.github.com/micromatch/braces/issues/27\"\u003e#27\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/micromatch/braces/compare/3.0.2...3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cookie` from 0.5.0 to 0.7.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jshttp/cookie/releases\"\u003ecookie's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.7.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAllow leading dot for domain (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/174\"\u003e#174\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eAlthough not permitted in the spec, some users expect this to work and user agents ignore the leading dot according to spec\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdd fast path for \u003ccode\u003eserialize\u003c/code\u003e without options, use \u003ccode\u003eobj.hasOwnProperty\u003c/code\u003e when parsing (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/172\"\u003e#172\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jshttp/cookie/compare/v0.7.0...v0.7.1\"\u003ehttps://github.com/jshttp/cookie/compare/v0.7.0...v0.7.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.7.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eperf: parse cookies ~10% faster (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/144\"\u003e#144\u003c/a\u003e by \u003ca href=\"https://github.com/kurtextrem\"\u003e\u003ccode\u003e@​kurtextrem\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/170\"\u003e#170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: narrow the validation of cookies to match RFC6265 (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/167\"\u003e#167\u003c/a\u003e by \u003ca href=\"https://github.com/bewinsnw\"\u003e\u003ccode\u003e@​bewinsnw\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: add \u003ccode\u003emain\u003c/code\u003e to \u003ccode\u003epackage.json\u003c/code\u003e for rspack (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/166\"\u003e#166\u003c/a\u003e by \u003ca href=\"https://github.com/proudparrot2\"\u003e\u003ccode\u003e@​proudparrot2\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jshttp/cookie/compare/v0.6.0...v0.7.0\"\u003ehttps://github.com/jshttp/cookie/compare/v0.6.0...v0.7.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.6.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epartitioned\u003c/code\u003e option\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/cf4658f492c5bd96aeaf5693c3500f8495031014\"\u003e\u003ccode\u003ecf4658f\u003c/code\u003e\u003c/a\u003e 0.7.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/6a8b8f5a49af7897b98ebfb29a1c4955afa3d33e\"\u003e\u003ccode\u003e6a8b8f5\u003c/code\u003e\u003c/a\u003e Allow leading dot for domain (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/174\"\u003e#174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/58015c0b93de0b63db245cfdc5a108e511a81ad0\"\u003e\u003ccode\u003e58015c0\u003c/code\u003e\u003c/a\u003e Remove more code and perf wins (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/172\"\u003e#172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/ab057d6c06b94a7b1e3358e69a685ae49c97b627\"\u003e\u003ccode\u003eab057d6\u003c/code\u003e\u003c/a\u003e 0.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/5f02ca87688481dbcf155e49ca8b61732f30e542\"\u003e\u003ccode\u003e5f02ca8\u003c/code\u003e\u003c/a\u003e Migrate history to GitHub releases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/a5d591ce8447dd63821779724f96ad3c774c8579\"\u003e\u003ccode\u003ea5d591c\u003c/code\u003e\u003c/a\u003e Migrate history to GitHub releases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/51968f94b5e820adeceef505539fa193ffe2d105\"\u003e\u003ccode\u003e51968f9\u003c/code\u003e\u003c/a\u003e Skip isNaN\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/9e7ca51ade4b325307eedd6b4dec190983e9e2cc\"\u003e\u003ccode\u003e9e7ca51\u003c/code\u003e\u003c/a\u003e perf(parse): cache length, return early (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/144\"\u003e#144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/d6f39b0aab5521a8b118b466a515fd6eb0b9f65e\"\u003e\u003ccode\u003ed6f39b0\u003c/code\u003e\u003c/a\u003e Fix tests for old node\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/6bb701f14e59c5e768933bfae9b578db4ed26c6e\"\u003e\u003ccode\u003e6bb701f\u003c/code\u003e\u003c/a\u003e Remove failing scorecard\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jshttp/cookie/compare/v0.5.0...v0.7.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~blakeembrey\"\u003eblakeembrey\u003c/a\u003e, a new releaser for cookie since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ejs` from 3.1.8 to 3.1.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mde/ejs/releases\"\u003eejs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1.10\u003c/h2\u003e\n\u003cp\u003eVersion 3.1.10\u003c/p\u003e\n\u003ch2\u003ev3.1.9\u003c/h2\u003e\n\u003cp\u003eVersion 3.1.9\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/d3f807dea9ce904e20a47a661f2310ce9134dc2a\"\u003e\u003ccode\u003ed3f807d\u003c/code\u003e\u003c/a\u003e Version 3.1.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/9ee26dde5d7015d9c0e2ff87314cabeac5247c02\"\u003e\u003ccode\u003e9ee26dd\u003c/code\u003e\u003c/a\u003e Mocha TDD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/e469741dca7df2eb400199e1cdb74621e3f89aa5\"\u003e\u003ccode\u003ee469741\u003c/code\u003e\u003c/a\u003e Basic pollution protection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/715e9507fa3e6122dc6430fe0f25a6e6ded300c1\"\u003e\u003ccode\u003e715e950\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/mde/ejs/issues/756\"\u003e#756\u003c/a\u003e from Jeffrey-mu/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/cabe3146ad964a1e98db7742abf435906ca79406\"\u003e\u003ccode\u003ecabe314\u003c/code\u003e\u003c/a\u003e Include advanced usage examples\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/29b076cdbbf3eb1b4323b33299ab6d79391b2c33\"\u003e\u003ccode\u003e29b076c\u003c/code\u003e\u003c/a\u003e Added header\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/11503c79af882e3635b513d57c7f1813792eb127\"\u003e\u003ccode\u003e11503c7\u003c/code\u003e\u003c/a\u003e Merge branch 'main' of github.com:mde/ejs into main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/7690404e2fc1688756938e4d2fc19e0fac77d736\"\u003e\u003ccode\u003e7690404\u003c/code\u003e\u003c/a\u003e Added security banner to README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/f47d7aedd51a983e4f73045f962b1209096b5800\"\u003e\u003ccode\u003ef47d7ae\u003c/code\u003e\u003c/a\u003e Update SECURITY.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/828cea1687e3db459ab09d2f405d2444c7580b90\"\u003e\u003ccode\u003e828cea1\u003c/code\u003e\u003c/a\u003e Update SECURITY.md\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mde/ejs/compare/v3.1.8...v3.1.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `esbuild` from 0.15.5 to 0.25.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evanw/esbuild/releases\"\u003eesbuild's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.25.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eBetter support building projects that use Yarn on Windows (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3131\"\u003e#3131\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3663\"\u003e#3663\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eWith this release, you can now use esbuild to bundle projects that use Yarn Plug'n'Play on Windows on drives other than the \u003ccode\u003eC:\u003c/code\u003e drive. The problem was as follows:\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003eYarn in Plug'n'Play mode on Windows stores its global module cache on the \u003ccode\u003eC:\u003c/code\u003e drive\u003c/li\u003e\n\u003cli\u003eSome developers put their projects on the \u003ccode\u003eD:\u003c/code\u003e drive\u003c/li\u003e\n\u003cli\u003eYarn generates relative paths that use \u003ccode\u003e../..\u003c/code\u003e to get from the project directory to the cache directory\u003c/li\u003e\n\u003cli\u003eWindows-style paths don't support directory traversal between drives via \u003ccode\u003e..\u003c/code\u003e (so \u003ccode\u003eD:\\..\u003c/code\u003e is just \u003ccode\u003eD:\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003eI didn't have access to a Windows machine for testing this edge case\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eYarn works around this edge case by pretending Windows-style paths beginning with \u003ccode\u003eC:\\\u003c/code\u003e are actually Unix-style paths beginning with \u003ccode\u003e/C:/\u003c/code\u003e, so the \u003ccode\u003e../..\u003c/code\u003e path segments are able to navigate across drives inside Yarn's implementation. This was broken for a long time in esbuild but I finally got access to a Windows machine and was able to debug and fix this edge case. So you should now be able to bundle these projects with esbuild.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePreserve parentheses around function expressions (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4252\"\u003e#4252\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe V8 JavaScript VM uses parentheses around function expressions as an optimization hint to immediately compile the function. Otherwise the function would be lazily-compiled, which has additional overhead if that function is always called immediately as lazy compilation involves parsing the function twice. You can read \u003ca href=\"https://v8.dev/blog/preparser\"\u003eV8's blog post about this\u003c/a\u003e for more details.\u003c/p\u003e\n\u003cp\u003ePreviously esbuild did not represent parentheses around functions in the AST so they were lost during compilation. With this change, esbuild will now preserve parentheses around function expressions when they are present in the original source code. This means these optimization hints will not be lost when bundling with esbuild. In addition, esbuild will now automatically add this optimization hint to immediately-invoked function expressions. Here's an example:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003e// Original code\nconst fn0 = () =\u0026gt; 0\nconst fn1 = (() =\u0026gt; 1)\nconsole.log(fn0, function() { return fn1() }())\n\u003cp\u003e// Old output\nconst fn0 = () =\u0026gt; 0;\nconst fn1 = () =\u0026gt; 1;\nconsole.log(fn0, function() {\nreturn fn1();\n}());\u003c/p\u003e\n\u003cp\u003e// New output\nconst fn0 = () =\u0026gt; 0;\nconst fn1 = (() =\u0026gt; 1);\nconsole.log(fn0, (function() {\nreturn fn1();\n})());\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eNote that you do not want to wrap all function expressions in parentheses. This optimization hint should only be used for functions that are called on initial load. Using this hint for functions that are not called on initial load will unnecessarily delay the initial load. Again, see V8's blog post linked above for details.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdate Go from 1.23.10 to 1.23.12 (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4257\"\u003e#4257\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/evanw/esbuild/pull/4258\"\u003e#4258\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThis should have no effect on existing code as this version change does not change Go's operating system support. It may remove certain false positive reports (specifically CVE-2025-4674 and CVE-2025-47907) from vulnerability scanners that only detect which version of the Go compiler esbuild uses.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.25.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix another TypeScript parsing edge case (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4248\"\u003e#4248\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThis fixes a regression with a change in the previous release that tries to more accurately parse TypeScript arrow functions inside the \u003ccode\u003e?:\u003c/code\u003e operator. The regression specifically involves parsing an arrow function containing a \u003ccode\u003e#private\u003c/code\u003e identifier inside the middle of a \u003ccode\u003e?:\u003c/code\u003e ternary operator inside a class body. This was fixed by propagating private identifier state into the parser clone used to speculatively parse the arrow function body. Here is an example of some affected code:\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evanw/esbuild/blob/main/CHANGELOG-2022.md\"\u003eesbuild's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog: 2022\u003c/h1\u003e\n\u003cp\u003eThis changelog documents all esbuild versions published in the year 2022 (versions 0.14.11 through 0.16.12).\u003c/p\u003e\n\u003ch2\u003e0.16.12\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eLoader defaults to \u003ccode\u003ejs\u003c/code\u003e for extensionless files (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/2776\"\u003e#2776\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eCertain packages contain files without an extension. For example, the \u003ccode\u003eyargs\u003c/code\u003e package contains the file \u003ccode\u003eyargs/yargs\u003c/code\u003e which has no extension. Node, Webpack, and Parcel can all understand code that imports \u003ccode\u003eyargs/yargs\u003c/code\u003e because they assume that the file is JavaScript. However, esbuild was previously unable to understand this code because it relies on the file extension to tell it how to interpret the file. With this release, esbuild will now assume files without an extension are JavaScript files. This can be customized by setting the loader for \u003ccode\u003e\u0026quot;\u0026quot;\u003c/code\u003e (the empty string, representing files without an extension) to another loader. For example, if you want files without an extension to be treated as CSS instead, you can do that like this:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eCLI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eesbuild --bundle --loader:=css\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eJS:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eesbuild.build({\n  bundle: true,\n  loader: { '': 'css' },\n})\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eGo:\u003c/p\u003e\n\u003cpre lang=\"go\"\u003e\u003ccode\u003eapi.Build(api.BuildOptions{\n  Bundle: true,\n  Loader: map[string]api.Loader{\u0026quot;\u0026quot;: api.LoaderCSS},\n})\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn addition, the \u003ccode\u003e\u0026quot;type\u0026quot;\u003c/code\u003e field in \u003ccode\u003epackage.json\u003c/code\u003e files now only applies to files with an explicit \u003ccode\u003e.js\u003c/code\u003e, \u003ccode\u003e.jsx\u003c/code\u003e, \u003ccode\u003e.ts\u003c/code\u003e, or \u003ccode\u003e.tsx\u003c/code\u003e extension. Previously it was incorrectly applied by esbuild to all files that had an extension other than \u003ccode\u003e.mjs\u003c/code\u003e, \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cjs\u003c/code\u003e, or \u003ccode\u003e.cts\u003c/code\u003e including extensionless files. So for example an extensionless file in a \u003ccode\u003e\u0026quot;type\u0026quot;: \u0026quot;module\u0026quot;\u003c/code\u003e package is now treated as CommonJS instead of ESM.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.16.11\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid a syntax error in the presence of direct \u003ccode\u003eeval\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/2761\"\u003e#2761\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe behavior of nested \u003ccode\u003efunction\u003c/code\u003e declarations in JavaScript depends on whether the code is run in strict mode or not. It would be problematic if esbuild preserved nested \u003ccode\u003efunction\u003c/code\u003e declarations in its output because then the behavior would depend on whether the output was run in strict mode or not instead of respecting the strict mode behavior of the original source code. To avoid this, esbuild transforms nested \u003ccode\u003efunction\u003c/code\u003e declarations to preserve the intended behavior of the original source code regardless of whether the output is run in strict mode or not:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003e// Original code\nif (true) {\n  function foo() {}\n  console.log(!!foo)\n  foo = null\n  console.log(!!foo)\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/195e05c16f03a341390feef38b8ebf17d3075e14\"\u003e\u003ccode\u003e195e05c\u003c/code\u003e\u003c/a\u003e publish 0.25.9 to npm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/3dac33f2a2ba60387fb9aaca96b3e80b9e0512e0\"\u003e\u003ccode\u003e3dac33f\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3131\"\u003e#3131\u003c/a\u003e, fix \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3663\"\u003e#3663\u003c/a\u003e: yarnpnp + windows + D drive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/0f2c5c8c11dc3fa2a4e9e82df202d0b607e59de4\"\u003e\u003ccode\u003e0f2c5c8\u003c/code\u003e\u003c/a\u003e mock fs now supports multiple volumes on...\n\n_Description has been truncated_","html_url":"https://github.com/1Yoel26/Projet5_Test_App/pull/1","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/1Yoel26%2FProjet5_Test_App/issues/1","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1/packages"},{"uuid":"2711931586","node_id":"PR_kwDOBX7yTs6hpMrC","number":2147,"state":"open","title":"build(deps): bump the angular group across 1 directory with 12 updates","user":"dependabot[bot]","labels":["theme: dependencies","theme: angular"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-01T04:11:51.000Z","updated_at":"2025-08-01T04:11:52.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"angular","update_count":12,"packages":[{"name":"@angular/common","old_version":"19.2.13","new_version":"20.1.4","repository_url":"https://github.com/angular/angular"},{"name":"@fortawesome/angular-fontawesome","old_version":"1.0.0","new_version":"2.0.1","repository_url":"https://github.com/FortAwesome/angular-fontawesome"},{"name":"@ng-bootstrap/ng-bootstrap","old_version":"18.0.0","new_version":"19.0.1","repository_url":"https://github.com/ng-bootstrap/ng-bootstrap"},{"name":"ngx-cookie-service","old_version":"19.1.2","new_version":"20.0.1","repository_url":"https://github.com/stevermeister/ngx-cookie-service"},{"name":"ngx-infinite-scroll","old_version":"19.0.0","new_version":"20.0.0","repository_url":"https://github.com/orizens/ngx-infinite-scroll"},{"name":"@angular-architects/module-federation","old_version":"19.0.3","new_version":"20.0.0","repository_url":"https://github.com/angular-architects/module-federation-plugin"},{"name":"@angular-architects/module-federation-runtime","old_version":"19.0.3","new_version":"20.0.0"},{"name":"@angular-builders/custom-esbuild","old_version":"19.1.0","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/custom-webpack","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular/cli","old_version":"19.2.13","new_version":"20.1.4","repository_url":"https://github.com/angular/angular-cli"},{"name":"typescript","old_version":"5.8.3","new_version":"5.9.2","repository_url":"https://github.com/microsoft/TypeScript"}],"path":null,"ecosystem":"npm"},"body":"Bumps the angular group with 12 updates in the /generators/angular/resources directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `19.2.13` | `20.1.4` |\n| [@fortawesome/angular-fontawesome](https://github.com/FortAwesome/angular-fontawesome) | `1.0.0` | `2.0.1` |\n| [@ng-bootstrap/ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap) | `18.0.0` | `19.0.1` |\n| [ngx-cookie-service](https://github.com/stevermeister/ngx-cookie-service) | `19.1.2` | `20.0.1` |\n| [ngx-infinite-scroll](https://github.com/orizens/ngx-infinite-scroll) | `19.0.0` | `20.0.0` |\n| [@angular-architects/module-federation](https://github.com/angular-architects/module-federation-plugin) | `19.0.3` | `20.0.0` |\n| @angular-architects/module-federation-runtime | `19.0.3` | `20.0.0` |\n| [@angular-builders/custom-esbuild](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-esbuild) | `19.1.0` | `20.0.0` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `19.0.1` | `20.0.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `19.2.13` | `20.1.4` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.8.3` | `5.9.2` |\n\n\nUpdates `@angular/common` from 19.2.13 to 20.1.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.1.4\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/db3c5826ee0b52e5b7886087b82990340a34c1ab\"\u003e\u003cimg src=\"https://img.shields.io/badge/db3c5826ee-fix-green\" alt=\"fix - db3c5826ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eexclude more safe reads expression from 2way-binding (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62852\"\u003e#62852\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c633b63e561d7142dd9a1f8631813cc47a169058\"\u003e\u003cimg src=\"https://img.shields.io/badge/c633b63e56-fix-green\" alt=\"fix - c633b63e56\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate symbols for new signals api (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62284\"\u003e#62284\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab6033979a3b409738d55d0c01effb378473c05a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ab6033979a-fix-green\" alt=\"fix - ab6033979a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd missing http options allowed in fetch API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62881\"\u003e#62881\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/15670d8417449c5b5f2990209552a1fc61420acb\"\u003e\u003cimg src=\"https://img.shields.io/badge/15670d8417-fix-green\" alt=\"fix - 15670d8417\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003epropagate plain errors when parsing fails (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62765\"\u003e#62765\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.3\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2c522efbe500e7c6c9929ce76df435b3dae49c84\"\u003e\u003cimg src=\"https://img.shields.io/badge/2c522efbe5-fix-green\" alt=\"fix - 2c522efbe5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix change tracking for Resource#hasValue (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62595\"\u003e#62595\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2fd1f7beb5e524aea8dcb24c5b87cb81689363ba\"\u003e\u003cimg src=\"https://img.shields.io/badge/2fd1f7beb5-fix-green\" alt=\"fix - 2fd1f7beb5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve component resources before bootstrapping in JIT mode (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62758\"\u003e#62758\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.2\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8ad10fd63b01a906efbfa50ccccb7914610c61bd\"\u003e\u003cimg src=\"https://img.shields.io/badge/8ad10fd63b-fix-green\" alt=\"fix - 8ad10fd63b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix detection of directive deps in JIT (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62666\"\u003e#62666\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.1\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/75d2a349b4d0ee1ed0489f1804dc1938046eaace\"\u003e\u003cimg src=\"https://img.shields.io/badge/75d2a349b4-fix-green\" alt=\"fix - 75d2a349b4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eincorrect spans for left side of binary operation (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62641\"\u003e#62641\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70c8780c5443929539631a06c5e09c18d108e51b\"\u003e\u003cimg src=\"https://img.shields.io/badge/70c8780c54-fix-green\" alt=\"fix - 70c8780c54\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emore permissive parsing of @ characters (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62644\"\u003e#62644\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9506cdfaad2693a0350a74f4ee4bb7fa27fa3086\"\u003e\u003cimg src=\"https://img.shields.io/badge/9506cdfaad-fix-green\" alt=\"fix - 9506cdfaad\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003einfer type of event target for void elements (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62648\"\u003e#62648\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/26ade4a3370911f6c8e9c0e6504d9335d637cfe1\"\u003e\u003cimg src=\"https://img.shields.io/badge/26ade4a337-fix-green\" alt=\"fix - 26ade4a337\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eEnsure application remains unstable during bootstrap (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62631\"\u003e#62631\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a81f0faa1a72decf9bdd35b243486a510b9352ee\"\u003e\u003cimg src=\"https://img.shields.io/badge/a81f0faa1a-fix-green\" alt=\"fix - a81f0faa1a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eInputBinding marks component a dirty. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62613\"\u003e#62613\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/276836ee7351c5d605fac5dc0abe0ae898dcfa5d\"\u003e\u003cimg src=\"https://img.shields.io/badge/276836ee73-fix-green\" alt=\"fix - 276836ee73\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edo not display warnings \u003ccode\u003eAngular detected that a \u003c/code\u003eHttpClient\u003ccode\u003erequest with the\u003c/code\u003ekeepalive\u003ccode\u003e option was sent using XHR\u003c/code\u003e when option is not true (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62536\"\u003e#62536\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.1.4 (2025-07-31)\u003c/h1\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/db3c5826ee0b52e5b7886087b82990340a34c1ab\"\u003edb3c5826ee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eexclude more safe reads expression from 2way-binding (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62852\"\u003e#62852\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c633b63e561d7142dd9a1f8631813cc47a169058\"\u003ec633b63e56\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate symbols for new signals api (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62284\"\u003e#62284\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab6033979a3b409738d55d0c01effb378473c05a\"\u003eab6033979a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd missing http options allowed in fetch API (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62881\"\u003e#62881\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/15670d8417449c5b5f2990209552a1fc61420acb\"\u003e15670d8417\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epropagate plain errors when parsing fails (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62765\"\u003e#62765\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.2.0-next.2 (2025-07-23)\u003c/h1\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7767aa640c542f5058df9322f2bbe974fa8d3c81\"\u003e7767aa640c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow more characters in square-bracketed attribute names (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62742\"\u003e#62742\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3171d01452444721dbea53d1d1ca758f38d083a5\"\u003e3171d01452\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix detection of directive deps in JIT (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62666\"\u003e#62666\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5abfe4a8999e42ad44e6f1d4414f241094bb8fdb\"\u003e5abfe4a899\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd diagnostic for uninvoked functions in text interpolation (\u003ca href=\"https://redirect.github.com/angular/angular/pull/59191\"\u003e#59191\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b1f4b9e8bb981377e271e6af0d9768ff7f765e9\"\u003e6b1f4b9e8b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd enter and leave animation instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62682\"\u003e#62682\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cec91c00356ee3974c39c9471b243a2a16149f5b\"\u003ecec91c0035\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd option to infer the tag names of components in tests (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62283\"\u003e#62283\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4138aca91fe828f0cfbd779d0c456cdea7703bdc\"\u003e4138aca91f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003erender ARIA property bindings as attributes (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62630\"\u003e#62630\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/593cc8a3684dfb163bfffa265c5efb3bc7efacd1\"\u003e593cc8a368\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003echecks if body exists before continuing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62768\"\u003e#62768\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/b8e415a717fd3747c7bab3f6ea652874082a19bb\"\u003eb8e415a717\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix change tracking for Resource#hasValue (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62595\"\u003e#62595\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/063b5e166f66bce1abd06c258242212009e76cca\"\u003e063b5e166f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eswitch check to documentElement with chaining (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62773\"\u003e#62773\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/74d99ed3796a3ced462e327c9b5857e5de4b7cb9\"\u003e74d99ed379\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve component resources before bootstrapping in JIT mode (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62758\"\u003e#62758\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eservice-worker\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4ac6171b09e449c619e0588c366861f8f3bb59be\"\u003e4ac6171b09\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds support for updateViaCache in provideServiceWorker (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62721\"\u003e#62721\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.3 (2025-07-23)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/82fcc9c136ee2ca23ab970450876a9af8f42b8eb\"\u003e\u003ccode\u003e82fcc9c\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix(http): add missing http options allowed in fetch API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62881\"\u003e#62881\u003c/a\u003e)\u0026quot; (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab6033979a3b409738d55d0c01effb378473c05a\"\u003e\u003ccode\u003eab60339\u003c/code\u003e\u003c/a\u003e fix(http): add missing http options allowed in fetch API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62881\"\u003e#62881\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea1afec1e433ff30837d53c0e47b4bc4c92545ce\"\u003e\u003ccode\u003eea1afec\u003c/code\u003e\u003c/a\u003e build: move http_server and generate_api_docs into defaults2.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62878\"\u003e#62878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/f0fca612ee482eb08cc14dcb242cb1db38d1dde8\"\u003e\u003ccode\u003ef0fca61\u003c/code\u003e\u003c/a\u003e refactor(common): replace aio links to adev (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62839\"\u003e#62839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/622e10881f3585512fc6cc0d61d784821d877979\"\u003e\u003ccode\u003e622e108\u003c/code\u003e\u003c/a\u003e build: standardize usage of js_binary (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62860\"\u003e#62860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/2b0f3fc7cb36f63d0c344f06a1c355eba13c0136\"\u003e\u003ccode\u003e2b0f3fc\u003c/code\u003e\u003c/a\u003e build: remove all usages of \u003ccode\u003e@​bazel/runfiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62805\"\u003e#62805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/15670d8417449c5b5f2990209552a1fc61420acb\"\u003e\u003ccode\u003e15670d8\u003c/code\u003e\u003c/a\u003e fix(http): propagate plain errors when parsing fails (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62765\"\u003e#62765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b388f1e518d3f2b1491eadb2189d258bccb1dfd5\"\u003e\u003ccode\u003eb388f1e\u003c/code\u003e\u003c/a\u003e build: remove all usages of the interop_deps attr for ts_project and ng_proje...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/1e9bfe54b1374a4195b35681b0beba277c522228\"\u003e\u003ccode\u003e1e9bfe5\u003c/code\u003e\u003c/a\u003e build: migrate to new toolchain usage for api goldens (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62688\"\u003e#62688\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/276836ee7351c5d605fac5dc0abe0ae898dcfa5d\"\u003e\u003ccode\u003e276836e\u003c/code\u003e\u003c/a\u003e fix(http): do not display warnings \u003ccode\u003eAngular detected that a \u003c/code\u003eHttpClient` requ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.1.4/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@fortawesome/angular-fontawesome` from 1.0.0 to 2.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestored possibility to set inputs to \u003ccode\u003eundefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.0\u003c/h2\u003e\n\u003cp\u003eConverted all library internal component implementation to use reactive Signal APIs.\u003c/p\u003e\n\u003cp\u003eMake sure to check \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/UPGRADING.md\"\u003eupgrade instructions\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 20.\u003c/li\u003e\n\u003cli\u003eDocumentation on changes in Programmatic API.\u003c/li\u003e\n\u003cli\u003eDocumentation for upgrading 1.0.0 to 2.0.0\u003c/li\u003e\n\u003cli\u003eUpdated code to use signal APIs like signal, computed, effect, input, model.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003echangeDetection: ChangeDetectionStrategy.OnPush\u003c/code\u003e 🚀 for all components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated the \u003ccode\u003erender\u003c/code\u003e function from the \u003ccode\u003eFaIconComponent\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eProgrammatic API has changed, \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/docs/usage/features.md#programmatic-api\"\u003eplease refer here\u003c/a\u003e and migration guide \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/HEAD/docs/upgrading/1.0.0-2.0.0.md\"\u003e1.0.0 to 2.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/2.0.1\"\u003e2.0.1\u003c/a\u003e (2025-06-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestored possibility to set inputs to \u003ccode\u003eundefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/2.0.0\"\u003e2.0.0\u003c/a\u003e (2025-05-31)\u003c/h2\u003e\n\u003cp\u003eConverted all library internal component implementation to use reactive Signal APIs.\u003c/p\u003e\n\u003cp\u003eMake sure to check \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/UPGRADING.md\"\u003eupgrade instructions\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 20.\u003c/li\u003e\n\u003cli\u003eDocumentation on changes in Programmatic API.\u003c/li\u003e\n\u003cli\u003eDocumentation for upgrading 1.0.0 to 2.0.0\u003c/li\u003e\n\u003cli\u003eUpdated code to use signal APIs like signal, computed, effect, input, model.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003echangeDetection: ChangeDetectionStrategy.OnPush\u003c/code\u003e 🚀 for all components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated the \u003ccode\u003erender\u003c/code\u003e function from the \u003ccode\u003eFaIconComponent\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eProgrammatic API has changed, \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/docs/usage/features.md#programmatic-api\"\u003eplease refer here\u003c/a\u003e and migration guide \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/docs/upgrading/1.0.0-2.0.0.md\"\u003e1.0.0 to 2.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/259bd3905b4f16915e27f64ab6ef8af75ceb2dae\"\u003e\u003ccode\u003e259bd39\u003c/code\u003e\u003c/a\u003e Release 2.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/71adc9a27742b97195d0e0feaeee4d2ce58bca22\"\u003e\u003ccode\u003e71adc9a\u003c/code\u003e\u003c/a\u003e Align TypeScript configuration with the new Angular CLI project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/eb9807e70d53512a72eeb976b2c2bf1cf98d4daf\"\u003e\u003ccode\u003eeb9807e\u003c/code\u003e\u003c/a\u003e Update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/3d2e105f09d7c288f2349613144d996956da72b0\"\u003e\u003ccode\u003e3d2e105\u003c/code\u003e\u003c/a\u003e Release 2.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/a30ff67460d8d59cdf9ed37610d545e97c6a6e9a\"\u003e\u003ccode\u003ea30ff67\u003c/code\u003e\u003c/a\u003e Update dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/b1edcac6ed205050e8d97d6b76368a0561e667a1\"\u003e\u003ccode\u003eb1edcac\u003c/code\u003e\u003c/a\u003e Refactor imports in component files to consolidate DOCUMENT import\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/9d8cab15f26cbe141c6b5587f3ee54439e7922b8\"\u003e\u003ccode\u003e9d8cab1\u003c/code\u003e\u003c/a\u003e Add support for Angular 20 in CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/0bcbabcbf4002002da7594ce08b3b3745cf50b68\"\u003e\u003ccode\u003e0bcbabc\u003c/code\u003e\u003c/a\u003e Update README.md to reflect Angular 20 compatibility for version 2.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/dab6d6fa79baebdd829c548813625f8bd491cb14\"\u003e\u003ccode\u003edab6d6f\u003c/code\u003e\u003c/a\u003e Update \u003ca href=\"https://github.com/typescript-eslint\"\u003e\u003ccode\u003e@​typescript-eslint\u003c/code\u003e\u003c/a\u003e dependencies to version 8.33.0 and adjust peer depe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/0a2488582b195e9b4b178ceb77276c62dd7bcdff\"\u003e\u003ccode\u003e0a24885\u003c/code\u003e\u003c/a\u003e Fix typo in app module file name in index.spec.ts\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/compare/1.0.0...2.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ng-bootstrap/ng-bootstrap` from 18.0.0 to 19.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/releases\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.0.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.0...19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-07-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etoast:\u003c/strong\u003e missing export of \u003ccode\u003eNgbToastOptions\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e6b26ef3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epositioning:\u003c/strong\u003e missing export of \u003ccode\u003ePlacementArray\u003c/code\u003e type (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e) (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003ea4e94a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e missing export of \u003ccode\u003eDayTemplateContext\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e1b90da5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e20.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e tooltip created after view destroyed (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003ed9c96aa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.0-rc.0\u003c/h2\u003e\n\u003cp\u003eThis release candidate version bumps minimum required versions to Angular 20.0.0\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/blob/master/CHANGELOG.md\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.0...19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-07-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etoast:\u003c/strong\u003e missing export of \u003ccode\u003eNgbToastOptions\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e6b26ef3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epositioning:\u003c/strong\u003e missing export of \u003ccode\u003ePlacementArray\u003c/code\u003e type (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e) (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003ea4e94a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e missing export of \u003ccode\u003eDayTemplateContext\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e1b90da5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e20.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e tooltip created after view destroyed (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003ed9c96aa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/b117049a0f46998703c296150a03e7b14a1ca6d9\"\u003e\u003ccode\u003eb117049\u003c/code\u003e\u003c/a\u003e 19.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003e\u003ccode\u003ea4e94a3\u003c/code\u003e\u003c/a\u003e fix(types): export PlacementArray in main index (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/db98bf0e2be8c77e46b77b6f304f051ec391ef98\"\u003e\u003ccode\u003edb98bf0\u003c/code\u003e\u003c/a\u003e demo: add clipboard button functionality and relevant styling (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e\u003ccode\u003e1b90da5\u003c/code\u003e\u003c/a\u003e feat(datepicker): export DayTemplateContext\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e\u003ccode\u003e6b26ef3\u003c/code\u003e\u003c/a\u003e fix(toast): missing export of NgbToastOptions interface\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/2704265b58621bca48f7ca2926113a18cf15dd5c\"\u003e\u003ccode\u003e2704265\u003c/code\u003e\u003c/a\u003e docs: release 19.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/3dec2a2da5f598968ce532e094305456e4bac6e3\"\u003e\u003ccode\u003e3dec2a2\u003c/code\u003e\u003c/a\u003e docs: add release 18 in demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/622ba01aaf6ad2dfad9e121480c9d731b8e2efa9\"\u003e\u003ccode\u003e622ba01\u003c/code\u003e\u003c/a\u003e docs: update README adding 19.0.0 info\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003e\u003ccode\u003ed9c96aa\u003c/code\u003e\u003c/a\u003e fix(tooltip): tooltip created after view destroyed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a6635ce9f8244ee615e93caf739a0b290aa2895e\"\u003e\u003ccode\u003ea6635ce\u003c/code\u003e\u003c/a\u003e demo: bump bootstrap to 5.3.6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-cookie-service` from 19.1.2 to 20.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/releases\"\u003engx-cookie-service's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(package): update version to 20.0.0 for ngx-cookie-service and ng… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/354\"\u003estevermeister/ngx-cookie-service#354\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChange peer dependencies by \u003ca href=\"https://github.com/sokheang-dev\"\u003e\u003ccode\u003e@​sokheang-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/356\"\u003estevermeister/ngx-cookie-service#356\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sokheang-dev\"\u003e\u003ccode\u003e@​sokheang-dev\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/356\"\u003estevermeister/ngx-cookie-service#356\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v20.0.0...v20.0.1\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v20.0.0...v20.0.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(core): adds angular 20 support by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/353\"\u003estevermeister/ngx-cookie-service#353\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.5...v20.0.0\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.5...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: update Node.js version to 20 and upgrade action versions in CI… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/351\"\u003estevermeister/ngx-cookie-service#351\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: migrate tests from Jest to Jasmine and update related configurations by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/352\"\u003estevermeister/ngx-cookie-service#352\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.4...v19.1.5\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.4...v19.1.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(core): revert-replace headers.get('cookie') with headers.cookie by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/348\"\u003estevermeister/ngx-cookie-service#348\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.3...v19.1.4\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.3...v19.1.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(package): bump version to 19.1.2 for ngx-cookie-service and ngx… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/344\"\u003estevermeister/ngx-cookie-service#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(core): replace headers.get('cookie') with headers.cookie by \u003ca href=\"https://github.com/mmart1n\"\u003e\u003ccode\u003e@​mmart1n\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/347\"\u003estevermeister/ngx-cookie-service#347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mmart1n\"\u003e\u003ccode\u003e@​mmart1n\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/347\"\u003estevermeister/ngx-cookie-service#347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v19.1.3\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v19.1.3\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/0771c9290123eafa0cb35a2802a266ac32bd0914\"\u003e\u003ccode\u003e0771c92\u003c/code\u003e\u003c/a\u003e Change peer dependencies (\u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/356\"\u003e#356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/4060892b99ea59f7c6bca67e6c6e32f5085dddac\"\u003e\u003ccode\u003e4060892\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/354\"\u003e#354\u003c/a\u003e from stevermeister/development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/23eb206dd8634f93e7b0a35bc77c544f9e26572d\"\u003e\u003ccode\u003e23eb206\u003c/code\u003e\u003c/a\u003e feat(package): update version to 20.0.0 for ngx-cookie-service and ngx-cookie...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/1573f4764b1d7415a13f95f0082ea2c7acac9004\"\u003e\u003ccode\u003e1573f47\u003c/code\u003e\u003c/a\u003e feat(core): adds angular 20 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/411a870150b08b8e902b28a2f67024d7686af304\"\u003e\u003ccode\u003e411a870\u003c/code\u003e\u003c/a\u003e fix(karma): update Angular build plugin and improve configuration formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/8537abaa580bedd757fdbed77df61a23a9e60b64\"\u003e\u003ccode\u003e8537aba\u003c/code\u003e\u003c/a\u003e feat(docs): add Copilot instructions for Angular projects\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/7e610ea7112a33211cb75fe654cb2da57d7a5e38\"\u003e\u003ccode\u003e7e610ea\u003c/code\u003e\u003c/a\u003e feat(docs): add Copilot instructions for Angular projects\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/ce350ca9da67c4a0faa883e1f35036c1d4aea4b8\"\u003e\u003ccode\u003ece350ca\u003c/code\u003e\u003c/a\u003e feat(core): adds angular 20 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/97650bdaabb048485a48f4823f90f11fc630887b\"\u003e\u003ccode\u003e97650bd\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/1b97b0a7589ffb097c955f1edce53dd0375da072\"\u003e\u003ccode\u003e1b97b0a\u003c/code\u003e\u003c/a\u003e feat: migrate tests from Jest to Jasmine and update related configurations (#...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v20.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-infinite-scroll` from 19.0.0 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/orizens/ngx-infinite-scroll/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-architects/module-federation` from 19.0.3 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/releases\"\u003e\u003ccode\u003e@​angular-architects/module-federation\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular-architects/module-federation-plugin/commit/d4bf6f035b01631fa7f1bf6f98838ae94db2f8ef\"\u003efeat(nf): migrate to angular 20\u003c/a\u003e\n\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/compare/19.0.23...20.0.0\"\u003ehttps://github.com/angular-architects/module-federation-plugin/compare/19.0.23...20.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.23\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(index-file): fixed the double quote issue by \u003ca href=\"https://github.com/asollberger\"\u003e\u003ccode\u003e@​asollberger\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/angular-architects/module-federation-plugin/pull/849\"\u003eangular-architects/module-federation-plugin#849\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/compare/19.0.19...19.0.23\"\u003ehttps://github.com/angular-architects/module-federation-plugin/compare/19.0.19...19.0.23\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.0.19\u003c/h2\u003e\n\u003cp\u003eThis release solves several issues that occurred with Angular 19.2, and it also solves issues with an entire class of npm packages using Singletons. For this, it delegates directly to the underlying bundler for chunk splitting. Hence, we don't need the transient flag anymore. \u003ccode\u003etransient\u003c/code\u003e deps will end up in their own bundles automatically \u003cem\u003ewhen\u003c/em\u003e required (when used from more than one other dependencies). In this regards, Native Federation now behaves like Module Federation.\u003c/p\u003e\n\u003ch2\u003e19.0.16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(nf): add shareAngularLocales helper\u003c/li\u003e\n\u003cli\u003efeat(nf): support angular i18n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/angular-architects/module-federation-plugin/blob/main/libs/native-federation/README.md#angular-i18n\"\u003eDetails in Readme\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.0.10\u003c/h2\u003e\n\u003cp\u003eBig thanks to our contributors!\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003efeat(nf-runtime): added cacheTag option\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003einitFederation\u003c/code\u003e now has a \u003ccode\u003ecacheTag\u003c/code\u003e option. If you set it, e.g., to \u003ccode\u003eDate.now()\u003c/code\u003e, it will be appended to the URLs of the fetched \u003ccode\u003eremoteEntries.json\u003c/code\u003e files to prevent caching.\u003c/p\u003e\n\u003cp\u003eBig thanks to \u003ca href=\"https://github.com/asollberger\"\u003eAlain Sollberger\u003c/a\u003e for this contribution!\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003efeat(nf): allow to version repo-internal libs (mapped paths)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eWe can now assign a version number to monorepo-internal libs (mapped paths). This allows to detect conflicts in cases where different micro frontends of the same monorepo were deployed independently and a shared internal lib was changed in between the two deployments.\u003c/p\u003e\n\u003cp\u003eTo use this feature, just assign a version number in the libs package.json and activate the new feature using the new feature map:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003emodule.exports = withNativeFederation({\n\u003cp\u003e[...]\u003c/p\u003e\n\u003cp\u003efeatures: {\nmappingVersion: true,\n},\u003c/p\u003e\n\u003cp\u003e});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eThe new feature map activates features that might cause breaking changes. Without explicitly activating these features, the usual backwards-compatible behavior is used.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/commits/20.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-architects/module-federation-runtime` from 19.0.3 to 20.0.0\n\nUpdates `@angular-builders/custom-esbuild` from 19.1.0 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-esbuild/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@20.0.0-beta.0...@angular-builders/custom-esbuild@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@19.1.0...@angular-builders/custom-esbuild@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecustom-esbuild:\u003c/strong\u003e expose builder options to plugins (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/2c114d9ccf105d8bbf024de9e67a69d625ce2742\"\u003e2c114d9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/2c114d9ccf105d8bbf024de9e67a69d625ce2742\"\u003e\u003ccode\u003e2c114d9\u003c/code\u003e\u003c/a\u003e feat(custom-esbuild): expose builder options to plugins\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-esbuild@20.0.0/packages/custom-esbuild\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/custom-webpack` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-webpack/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.0-beta.0...@angular-builders/custom-webpack@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.1...@angular-builders/custom-webpack@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-webpack@20.0.0/packages/custom-webpack\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/cli` from 19.2.13 to 20.1.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/releases\"\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.1.4\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d753cc62c9a801c40923a43e4af5f74b22700e0\"\u003e\u003cimg src=\"https://img.shields.io/badge/2d753cc62-fix-green\" alt=\"fix - 2d753cc62\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eskip workspace-specific tools when outside a workspace\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d72ef4d99380dbb1c0e03e3e3abfb2223fa539\"\u003e\u003cimg src=\"https://img.shields.io/badge/42d72ef4d-fix-green\" alt=\"fix - 42d72ef4d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eskip vite transformation of CSS-like assets\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.3\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ea5cd0e81196467ea66f50c106cffec1cd8a1a56\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea5cd0e81-fix-green\" alt=\"fix - ea5cd0e81\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate \u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e7.0.6\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.2\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/96785224f55291cd60553aead07ead10d9d2fbda\"\u003e\u003cimg src=\"https://img.shields.io/badge/96785224f-fix-green\" alt=\"fix - 96785224f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003edefine\u003c/code\u003e option is being included multiple times in the JSON help\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/core\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0d0040bdf58a82e18f7669363b6f149313524bfc\"\u003e\u003cimg src=\"https://img.shields.io/badge/0d0040bdf-fix-green\" alt=\"fix - 0d0040bdf\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse crypto.randomUUID instead of Date.now for unique string in tmp file names\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.1\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/541b33f8d977c1fe8f609099a8b8ed1c5f8e827e\"\u003e\u003cimg src=\"https://img.shields.io/badge/541b33f8d-fix-green\" alt=\"fix - 541b33f8d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eemit a warning when \u003ccode\u003eoutputHashing\u003c/code\u003e is set to \u003ccode\u003eall\u003c/code\u003e or \u003ccode\u003ebundles\u003c/code\u003e when HMR is enabled\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/558a0fe9275e68e0b768de3ee2e5bee0d6d84a6e\"\u003e\u003cimg src=\"https://img.shields.io/badge/558a0fe92-fix-green\" alt=\"fix - 558a0fe92\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enormalize code coverage include paths to POSIX\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1c19e0dcd4a87fbf542201e09a402a8fccdfcd88\"\u003e\u003cimg src=\"https://img.shields.io/badge/1c19e0dcd-feat-blue\" alt=\"feat - 1c19e0dcd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse signal in app component\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/dc45c186ec16e345b75ffcd57961a8e0cfd4b649\"\u003e\u003cimg src=\"https://img.shields.io/badge/dc45c186e-feat-blue\" alt=\"feat - dc45c186e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd initial MCP server implementation\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/49a09737d5412c302d09b40de198251bb99789d1\"\u003e\u003cimg src=\"https://img.shields.io/badge/49a09737d-feat-blue\" alt=\"feat - 49a09737d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprovide partial custom postcss configuration support\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1159cf08103081d2b851e59bc1c5fb200f114982\"\u003e\u003cimg src=\"https://img.shields.io/badge/1159cf081-feat-blue\" alt=\"feat - 1159cf081\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd code coverage reporters option for unit-test\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.1.4 (2025-07-30)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d753cc62c9a801c40923a43e4af5f74b22700e0\"\u003e2d753cc62\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eskip workspace-specific tools when outside a workspace\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d72ef4d99380dbb1c0e03e3e3abfb2223fa539\"\u003e42d72ef4d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eskip vite transformation of CSS-like assets\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.3 (2025-07-24)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ea5cd0e81196467ea66f50c106cffec1cd8a1a56\"\u003eea5cd0e81\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate \u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e7.0.6\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.2.0-next.1 (2025-07-23)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/fefa7a46f5733fd77852a61fddc3120b1bb4b202\"\u003efefa7a46f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003edefine\u003c/code\u003e option is being included multiple times in the JSON help\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/core\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/7595e1f8887bafd344ec939e647e3fca8bbd98be\"\u003e7595e1f88\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003euse crypto.randomUUID instead of Date.now for unique string in tmp file names\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/fb06bb5050e92eb4d0f95d7774552d0902163f6a\"\u003efb06bb505\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd headless mode for vitest browser mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ffc4c671753aa7ba4ae4ff6cd13eb4cd9eb08ec2\"\u003e\u003ccode\u003effc4c67\u003c/code\u003e\u003c/a\u003e release: cut the v20.1.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d753cc62c9a801c40923a43e4af5f74b22700e0\"\u003e\u003ccode\u003e2d753cc\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/cli\u003c/code\u003e): skip workspace-specific tools when outside a workspace\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d72ef4d99380dbb1c0e03e3e3abfb2223fa539\"\u003e\u003ccode\u003e42d72ef\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): skip vite transformation of CSS-like assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0489fe7025c60f022ca3959d6f651dc6b1bc9f2a\"\u003e\u003ccode\u003e0489fe7\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/build\u003c/code\u003e): update MCP best practices guide content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f7b61609c4f555fda8bd7e0571ee2308cdecee90\"\u003e\u003ccode\u003ef7b6160\u003c/code\u003e\u003c/a\u003e build: update bazel dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/18b44f64559ce7fc5c63cf9c9354b01c398fdae9\"\u003e\u003ccode\u003e18b44f6\u003c/code\u003e\u003c/a\u003e release: cut the v20.1.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ea5cd0e81196467ea66f50c106cffec1cd8a1a56\"\u003e\u003ccode\u003eea5cd0e\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): update \u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e7.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0568f385ebed0f8572f542985d6be2411ed98730\"\u003e\u003ccode\u003e0568f38\u003c/code\u003e\u003c/a\u003e release: cut the v20.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/14da0424a739b567d7e740fbc8b5992e0f084e01\"\u003e\u003ccode\u003e14da042\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): move MCP list projects tool to separate file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/731d1a637ec82a6e501962603447e2b67b077862\"\u003e\u003ccode\u003e731d1a6\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): include content for top result in MCP documentation s...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular-cli/compare/19.2.13...20.1.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript` from 5.8.3 to 5.9.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/TypeScript/releases\"\u003etypescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTypeScript 5.9\u003c/h2\u003e\n\u003cp\u003eRelease notes pending.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.1%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.1 (RC)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e[[No specific changes for TypeScript 5.9.2 (Stable)]]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTypeScript 5.9 RC\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9-rc/\"\u003erelease announcement\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.1%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.1 (RC)\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTypeScript 5.9 Beta\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9-beta/\"\u003erelease announcement\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/be8678315541e814da14316848a9468e8f90ab11\"\u003e\u003ccode\u003ebe86783\u003c/code\u003e\u003c/a\u003e Give more specific errors for \u003ccode\u003everbatimModuleSyntax\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62113\"\u003e#62113\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/22ef57786f5ca99837c430439bc6003c068fe1d2\"\u003e\u003ccode\u003e22ef577\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250714...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/d5a414cd1dceb209fd2569e89d1096812218e8c5\"\u003e\u003ccode\u003ed5a414c\u003c/code\u003e\u003c/a\u003e Don't use \u003ccode\u003enoErrorTruncation\u003c/code\u003e when printing types with \u003ccode\u003emaximumLength\u003c/code\u003e set (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/f14b5c8a2f0be503ac455054a91573c63f0e5088\"\u003e\u003ccode\u003ef14b5c8\u003c/code\u003e\u003c/a\u003e Remove unused and confusing dom.iterable.d.ts file (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62037\"\u003e#62037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/2778e84ed88894156e2c5a17d74a25c73cc96ffe\"\u003e\u003ccode\u003e2778e84\u003c/code\u003e\u003c/a\u003e Restore AbortSignal.abort (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62086\"\u003e#62086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/65cb4bd2d52cd882f2c3a503681479eb2ed291ca\"\u003e\u003ccode\u003e65cb4bd\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250710...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/9e20e032effad965567d4a1e1c30d5433b0a3332\"\u003e\u003ccode\u003e9e20e03\u003c/code\u003e\u003c/a\u003e Clear out checker-level stacks on pop (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62016\"\u003e#62016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/87740bc7fe3d8d2af47d767db081491f40b8a90d\"\u003e\u003ccode\u003e87740bc\u003c/code\u003e\u003c/a\u003e Fix for Issue 61081 (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/61221\"\u003e#61221\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/833a8d492c728d606454865e8c0fee84842f9f10\"\u003e\u003ccode\u003e833a8d4\u003c/code\u003e\u003c/a\u003e Fix Symbol completion priority and cursor positioning (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/61945\"\u003e#61945\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/0018c9ff12e657b84997dc1843818fea0a2ce850\"\u003e\u003ccode\u003e0018c9f\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250702...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/TypeScript/compare/v5.8.3...v5.9.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will canc...\n\n_Description has been truncated_","html_url":"https://github.com/jdubois/generator-jhipster/pull/2147","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jdubois%2Fgenerator-jhipster/issues/2147","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2147/packages"},{"uuid":"2711856223","node_id":"PR_kwDOFckGqs6ho6Rf","number":1494,"state":"open","title":"build(deps): bump the angular group across 1 directory with 12 updates","user":"dependabot[bot]","labels":["theme: dependencies","theme: angular"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-01T03:22:20.000Z","updated_at":"2025-08-01T03:22:21.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"angular","update_count":12,"packages":[{"name":"@angular/common","old_version":"19.2.13","new_version":"20.1.4","repository_url":"https://github.com/angular/angular"},{"name":"@fortawesome/angular-fontawesome","old_version":"1.0.0","new_version":"2.0.1","repository_url":"https://github.com/FortAwesome/angular-fontawesome"},{"name":"@ng-bootstrap/ng-bootstrap","old_version":"18.0.0","new_version":"19.0.1","repository_url":"https://github.com/ng-bootstrap/ng-bootstrap"},{"name":"ngx-cookie-service","old_version":"19.1.2","new_version":"20.0.1","repository_url":"https://github.com/stevermeister/ngx-cookie-service"},{"name":"ngx-infinite-scroll","old_version":"19.0.0","new_version":"20.0.0","repository_url":"https://github.com/orizens/ngx-infinite-scroll"},{"name":"@angular-architects/module-federation","old_version":"19.0.3","new_version":"20.0.0","repository_url":"https://github.com/angular-architects/module-federation-plugin"},{"name":"@angular-architects/module-federation-runtime","old_version":"19.0.3","new_version":"20.0.0"},{"name":"@angular-builders/custom-esbuild","old_version":"19.1.0","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/custom-webpack","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular/cli","old_version":"19.2.13","new_version":"20.1.4","repository_url":"https://github.com/angular/angular-cli"},{"name":"typescript","old_version":"5.8.3","new_version":"5.9.2","repository_url":"https://github.com/microsoft/TypeScript"}],"path":null,"ecosystem":"npm"},"body":"Bumps the angular group with 12 updates in the /generators/angular/resources directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `19.2.13` | `20.1.4` |\n| [@fortawesome/angular-fontawesome](https://github.com/FortAwesome/angular-fontawesome) | `1.0.0` | `2.0.1` |\n| [@ng-bootstrap/ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap) | `18.0.0` | `19.0.1` |\n| [ngx-cookie-service](https://github.com/stevermeister/ngx-cookie-service) | `19.1.2` | `20.0.1` |\n| [ngx-infinite-scroll](https://github.com/orizens/ngx-infinite-scroll) | `19.0.0` | `20.0.0` |\n| [@angular-architects/module-federation](https://github.com/angular-architects/module-federation-plugin) | `19.0.3` | `20.0.0` |\n| @angular-architects/module-federation-runtime | `19.0.3` | `20.0.0` |\n| [@angular-builders/custom-esbuild](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-esbuild) | `19.1.0` | `20.0.0` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `19.0.1` | `20.0.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `19.2.13` | `20.1.4` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.8.3` | `5.9.2` |\n\n\nUpdates `@angular/common` from 19.2.13 to 20.1.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.1.4\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/db3c5826ee0b52e5b7886087b82990340a34c1ab\"\u003e\u003cimg src=\"https://img.shields.io/badge/db3c5826ee-fix-green\" alt=\"fix - db3c5826ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eexclude more safe reads expression from 2way-binding (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62852\"\u003e#62852\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c633b63e561d7142dd9a1f8631813cc47a169058\"\u003e\u003cimg src=\"https://img.shields.io/badge/c633b63e56-fix-green\" alt=\"fix - c633b63e56\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate symbols for new signals api (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62284\"\u003e#62284\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab6033979a3b409738d55d0c01effb378473c05a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ab6033979a-fix-green\" alt=\"fix - ab6033979a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd missing http options allowed in fetch API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62881\"\u003e#62881\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/15670d8417449c5b5f2990209552a1fc61420acb\"\u003e\u003cimg src=\"https://img.shields.io/badge/15670d8417-fix-green\" alt=\"fix - 15670d8417\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003epropagate plain errors when parsing fails (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62765\"\u003e#62765\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.3\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2c522efbe500e7c6c9929ce76df435b3dae49c84\"\u003e\u003cimg src=\"https://img.shields.io/badge/2c522efbe5-fix-green\" alt=\"fix - 2c522efbe5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix change tracking for Resource#hasValue (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62595\"\u003e#62595\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2fd1f7beb5e524aea8dcb24c5b87cb81689363ba\"\u003e\u003cimg src=\"https://img.shields.io/badge/2fd1f7beb5-fix-green\" alt=\"fix - 2fd1f7beb5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve component resources before bootstrapping in JIT mode (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62758\"\u003e#62758\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.2\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8ad10fd63b01a906efbfa50ccccb7914610c61bd\"\u003e\u003cimg src=\"https://img.shields.io/badge/8ad10fd63b-fix-green\" alt=\"fix - 8ad10fd63b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix detection of directive deps in JIT (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62666\"\u003e#62666\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.1\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/75d2a349b4d0ee1ed0489f1804dc1938046eaace\"\u003e\u003cimg src=\"https://img.shields.io/badge/75d2a349b4-fix-green\" alt=\"fix - 75d2a349b4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eincorrect spans for left side of binary operation (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62641\"\u003e#62641\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70c8780c5443929539631a06c5e09c18d108e51b\"\u003e\u003cimg src=\"https://img.shields.io/badge/70c8780c54-fix-green\" alt=\"fix - 70c8780c54\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emore permissive parsing of @ characters (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62644\"\u003e#62644\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9506cdfaad2693a0350a74f4ee4bb7fa27fa3086\"\u003e\u003cimg src=\"https://img.shields.io/badge/9506cdfaad-fix-green\" alt=\"fix - 9506cdfaad\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003einfer type of event target for void elements (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62648\"\u003e#62648\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/26ade4a3370911f6c8e9c0e6504d9335d637cfe1\"\u003e\u003cimg src=\"https://img.shields.io/badge/26ade4a337-fix-green\" alt=\"fix - 26ade4a337\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eEnsure application remains unstable during bootstrap (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62631\"\u003e#62631\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a81f0faa1a72decf9bdd35b243486a510b9352ee\"\u003e\u003cimg src=\"https://img.shields.io/badge/a81f0faa1a-fix-green\" alt=\"fix - a81f0faa1a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eInputBinding marks component a dirty. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62613\"\u003e#62613\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/276836ee7351c5d605fac5dc0abe0ae898dcfa5d\"\u003e\u003cimg src=\"https://img.shields.io/badge/276836ee73-fix-green\" alt=\"fix - 276836ee73\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edo not display warnings \u003ccode\u003eAngular detected that a \u003c/code\u003eHttpClient\u003ccode\u003erequest with the\u003c/code\u003ekeepalive\u003ccode\u003e option was sent using XHR\u003c/code\u003e when option is not true (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62536\"\u003e#62536\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.1.4 (2025-07-31)\u003c/h1\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/db3c5826ee0b52e5b7886087b82990340a34c1ab\"\u003edb3c5826ee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eexclude more safe reads expression from 2way-binding (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62852\"\u003e#62852\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c633b63e561d7142dd9a1f8631813cc47a169058\"\u003ec633b63e56\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate symbols for new signals api (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62284\"\u003e#62284\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab6033979a3b409738d55d0c01effb378473c05a\"\u003eab6033979a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd missing http options allowed in fetch API (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62881\"\u003e#62881\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/15670d8417449c5b5f2990209552a1fc61420acb\"\u003e15670d8417\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epropagate plain errors when parsing fails (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62765\"\u003e#62765\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.2.0-next.2 (2025-07-23)\u003c/h1\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7767aa640c542f5058df9322f2bbe974fa8d3c81\"\u003e7767aa640c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow more characters in square-bracketed attribute names (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62742\"\u003e#62742\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3171d01452444721dbea53d1d1ca758f38d083a5\"\u003e3171d01452\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix detection of directive deps in JIT (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62666\"\u003e#62666\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5abfe4a8999e42ad44e6f1d4414f241094bb8fdb\"\u003e5abfe4a899\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd diagnostic for uninvoked functions in text interpolation (\u003ca href=\"https://redirect.github.com/angular/angular/pull/59191\"\u003e#59191\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b1f4b9e8bb981377e271e6af0d9768ff7f765e9\"\u003e6b1f4b9e8b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd enter and leave animation instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62682\"\u003e#62682\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cec91c00356ee3974c39c9471b243a2a16149f5b\"\u003ecec91c0035\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd option to infer the tag names of components in tests (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62283\"\u003e#62283\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4138aca91fe828f0cfbd779d0c456cdea7703bdc\"\u003e4138aca91f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003erender ARIA property bindings as attributes (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62630\"\u003e#62630\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/593cc8a3684dfb163bfffa265c5efb3bc7efacd1\"\u003e593cc8a368\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003echecks if body exists before continuing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62768\"\u003e#62768\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/b8e415a717fd3747c7bab3f6ea652874082a19bb\"\u003eb8e415a717\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix change tracking for Resource#hasValue (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62595\"\u003e#62595\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/063b5e166f66bce1abd06c258242212009e76cca\"\u003e063b5e166f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eswitch check to documentElement with chaining (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62773\"\u003e#62773\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/74d99ed3796a3ced462e327c9b5857e5de4b7cb9\"\u003e74d99ed379\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve component resources before bootstrapping in JIT mode (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62758\"\u003e#62758\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eservice-worker\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4ac6171b09e449c619e0588c366861f8f3bb59be\"\u003e4ac6171b09\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds support for updateViaCache in provideServiceWorker (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62721\"\u003e#62721\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.3 (2025-07-23)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/82fcc9c136ee2ca23ab970450876a9af8f42b8eb\"\u003e\u003ccode\u003e82fcc9c\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix(http): add missing http options allowed in fetch API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62881\"\u003e#62881\u003c/a\u003e)\u0026quot; (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab6033979a3b409738d55d0c01effb378473c05a\"\u003e\u003ccode\u003eab60339\u003c/code\u003e\u003c/a\u003e fix(http): add missing http options allowed in fetch API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62881\"\u003e#62881\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea1afec1e433ff30837d53c0e47b4bc4c92545ce\"\u003e\u003ccode\u003eea1afec\u003c/code\u003e\u003c/a\u003e build: move http_server and generate_api_docs into defaults2.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62878\"\u003e#62878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/f0fca612ee482eb08cc14dcb242cb1db38d1dde8\"\u003e\u003ccode\u003ef0fca61\u003c/code\u003e\u003c/a\u003e refactor(common): replace aio links to adev (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62839\"\u003e#62839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/622e10881f3585512fc6cc0d61d784821d877979\"\u003e\u003ccode\u003e622e108\u003c/code\u003e\u003c/a\u003e build: standardize usage of js_binary (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62860\"\u003e#62860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/2b0f3fc7cb36f63d0c344f06a1c355eba13c0136\"\u003e\u003ccode\u003e2b0f3fc\u003c/code\u003e\u003c/a\u003e build: remove all usages of \u003ccode\u003e@​bazel/runfiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62805\"\u003e#62805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/15670d8417449c5b5f2990209552a1fc61420acb\"\u003e\u003ccode\u003e15670d8\u003c/code\u003e\u003c/a\u003e fix(http): propagate plain errors when parsing fails (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62765\"\u003e#62765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b388f1e518d3f2b1491eadb2189d258bccb1dfd5\"\u003e\u003ccode\u003eb388f1e\u003c/code\u003e\u003c/a\u003e build: remove all usages of the interop_deps attr for ts_project and ng_proje...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/1e9bfe54b1374a4195b35681b0beba277c522228\"\u003e\u003ccode\u003e1e9bfe5\u003c/code\u003e\u003c/a\u003e build: migrate to new toolchain usage for api goldens (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62688\"\u003e#62688\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/276836ee7351c5d605fac5dc0abe0ae898dcfa5d\"\u003e\u003ccode\u003e276836e\u003c/code\u003e\u003c/a\u003e fix(http): do not display warnings \u003ccode\u003eAngular detected that a \u003c/code\u003eHttpClient` requ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.1.4/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@fortawesome/angular-fontawesome` from 1.0.0 to 2.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestored possibility to set inputs to \u003ccode\u003eundefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.0\u003c/h2\u003e\n\u003cp\u003eConverted all library internal component implementation to use reactive Signal APIs.\u003c/p\u003e\n\u003cp\u003eMake sure to check \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/UPGRADING.md\"\u003eupgrade instructions\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 20.\u003c/li\u003e\n\u003cli\u003eDocumentation on changes in Programmatic API.\u003c/li\u003e\n\u003cli\u003eDocumentation for upgrading 1.0.0 to 2.0.0\u003c/li\u003e\n\u003cli\u003eUpdated code to use signal APIs like signal, computed, effect, input, model.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003echangeDetection: ChangeDetectionStrategy.OnPush\u003c/code\u003e 🚀 for all components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated the \u003ccode\u003erender\u003c/code\u003e function from the \u003ccode\u003eFaIconComponent\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eProgrammatic API has changed, \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/docs/usage/features.md#programmatic-api\"\u003eplease refer here\u003c/a\u003e and migration guide \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/HEAD/docs/upgrading/1.0.0-2.0.0.md\"\u003e1.0.0 to 2.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/2.0.1\"\u003e2.0.1\u003c/a\u003e (2025-06-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestored possibility to set inputs to \u003ccode\u003eundefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/2.0.0\"\u003e2.0.0\u003c/a\u003e (2025-05-31)\u003c/h2\u003e\n\u003cp\u003eConverted all library internal component implementation to use reactive Signal APIs.\u003c/p\u003e\n\u003cp\u003eMake sure to check \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/UPGRADING.md\"\u003eupgrade instructions\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 20.\u003c/li\u003e\n\u003cli\u003eDocumentation on changes in Programmatic API.\u003c/li\u003e\n\u003cli\u003eDocumentation for upgrading 1.0.0 to 2.0.0\u003c/li\u003e\n\u003cli\u003eUpdated code to use signal APIs like signal, computed, effect, input, model.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003echangeDetection: ChangeDetectionStrategy.OnPush\u003c/code\u003e 🚀 for all components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated the \u003ccode\u003erender\u003c/code\u003e function from the \u003ccode\u003eFaIconComponent\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eProgrammatic API has changed, \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/docs/usage/features.md#programmatic-api\"\u003eplease refer here\u003c/a\u003e and migration guide \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/docs/upgrading/1.0.0-2.0.0.md\"\u003e1.0.0 to 2.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/259bd3905b4f16915e27f64ab6ef8af75ceb2dae\"\u003e\u003ccode\u003e259bd39\u003c/code\u003e\u003c/a\u003e Release 2.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/71adc9a27742b97195d0e0feaeee4d2ce58bca22\"\u003e\u003ccode\u003e71adc9a\u003c/code\u003e\u003c/a\u003e Align TypeScript configuration with the new Angular CLI project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/eb9807e70d53512a72eeb976b2c2bf1cf98d4daf\"\u003e\u003ccode\u003eeb9807e\u003c/code\u003e\u003c/a\u003e Update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/3d2e105f09d7c288f2349613144d996956da72b0\"\u003e\u003ccode\u003e3d2e105\u003c/code\u003e\u003c/a\u003e Release 2.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/a30ff67460d8d59cdf9ed37610d545e97c6a6e9a\"\u003e\u003ccode\u003ea30ff67\u003c/code\u003e\u003c/a\u003e Update dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/b1edcac6ed205050e8d97d6b76368a0561e667a1\"\u003e\u003ccode\u003eb1edcac\u003c/code\u003e\u003c/a\u003e Refactor imports in component files to consolidate DOCUMENT import\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/9d8cab15f26cbe141c6b5587f3ee54439e7922b8\"\u003e\u003ccode\u003e9d8cab1\u003c/code\u003e\u003c/a\u003e Add support for Angular 20 in CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/0bcbabcbf4002002da7594ce08b3b3745cf50b68\"\u003e\u003ccode\u003e0bcbabc\u003c/code\u003e\u003c/a\u003e Update README.md to reflect Angular 20 compatibility for version 2.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/dab6d6fa79baebdd829c548813625f8bd491cb14\"\u003e\u003ccode\u003edab6d6f\u003c/code\u003e\u003c/a\u003e Update \u003ca href=\"https://github.com/typescript-eslint\"\u003e\u003ccode\u003e@​typescript-eslint\u003c/code\u003e\u003c/a\u003e dependencies to version 8.33.0 and adjust peer depe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/0a2488582b195e9b4b178ceb77276c62dd7bcdff\"\u003e\u003ccode\u003e0a24885\u003c/code\u003e\u003c/a\u003e Fix typo in app module file name in index.spec.ts\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/compare/1.0.0...2.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ng-bootstrap/ng-bootstrap` from 18.0.0 to 19.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/releases\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.0.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.0...19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-07-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etoast:\u003c/strong\u003e missing export of \u003ccode\u003eNgbToastOptions\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e6b26ef3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epositioning:\u003c/strong\u003e missing export of \u003ccode\u003ePlacementArray\u003c/code\u003e type (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e) (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003ea4e94a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e missing export of \u003ccode\u003eDayTemplateContext\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e1b90da5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e20.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e tooltip created after view destroyed (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003ed9c96aa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.0-rc.0\u003c/h2\u003e\n\u003cp\u003eThis release candidate version bumps minimum required versions to Angular 20.0.0\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/blob/master/CHANGELOG.md\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.0...19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-07-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etoast:\u003c/strong\u003e missing export of \u003ccode\u003eNgbToastOptions\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e6b26ef3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epositioning:\u003c/strong\u003e missing export of \u003ccode\u003ePlacementArray\u003c/code\u003e type (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e) (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003ea4e94a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e missing export of \u003ccode\u003eDayTemplateContext\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e1b90da5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e20.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e tooltip created after view destroyed (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003ed9c96aa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/b117049a0f46998703c296150a03e7b14a1ca6d9\"\u003e\u003ccode\u003eb117049\u003c/code\u003e\u003c/a\u003e 19.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003e\u003ccode\u003ea4e94a3\u003c/code\u003e\u003c/a\u003e fix(types): export PlacementArray in main index (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/db98bf0e2be8c77e46b77b6f304f051ec391ef98\"\u003e\u003ccode\u003edb98bf0\u003c/code\u003e\u003c/a\u003e demo: add clipboard button functionality and relevant styling (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e\u003ccode\u003e1b90da5\u003c/code\u003e\u003c/a\u003e feat(datepicker): export DayTemplateContext\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e\u003ccode\u003e6b26ef3\u003c/code\u003e\u003c/a\u003e fix(toast): missing export of NgbToastOptions interface\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/2704265b58621bca48f7ca2926113a18cf15dd5c\"\u003e\u003ccode\u003e2704265\u003c/code\u003e\u003c/a\u003e docs: release 19.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/3dec2a2da5f598968ce532e094305456e4bac6e3\"\u003e\u003ccode\u003e3dec2a2\u003c/code\u003e\u003c/a\u003e docs: add release 18 in demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/622ba01aaf6ad2dfad9e121480c9d731b8e2efa9\"\u003e\u003ccode\u003e622ba01\u003c/code\u003e\u003c/a\u003e docs: update README adding 19.0.0 info\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003e\u003ccode\u003ed9c96aa\u003c/code\u003e\u003c/a\u003e fix(tooltip): tooltip created after view destroyed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a6635ce9f8244ee615e93caf739a0b290aa2895e\"\u003e\u003ccode\u003ea6635ce\u003c/code\u003e\u003c/a\u003e demo: bump bootstrap to 5.3.6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-cookie-service` from 19.1.2 to 20.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/releases\"\u003engx-cookie-service's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(package): update version to 20.0.0 for ngx-cookie-service and ng… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/354\"\u003estevermeister/ngx-cookie-service#354\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChange peer dependencies by \u003ca href=\"https://github.com/sokheang-dev\"\u003e\u003ccode\u003e@​sokheang-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/356\"\u003estevermeister/ngx-cookie-service#356\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sokheang-dev\"\u003e\u003ccode\u003e@​sokheang-dev\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/356\"\u003estevermeister/ngx-cookie-service#356\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v20.0.0...v20.0.1\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v20.0.0...v20.0.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(core): adds angular 20 support by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/353\"\u003estevermeister/ngx-cookie-service#353\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.5...v20.0.0\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.5...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: update Node.js version to 20 and upgrade action versions in CI… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/351\"\u003estevermeister/ngx-cookie-service#351\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: migrate tests from Jest to Jasmine and update related configurations by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/352\"\u003estevermeister/ngx-cookie-service#352\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.4...v19.1.5\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.4...v19.1.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(core): revert-replace headers.get('cookie') with headers.cookie by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/348\"\u003estevermeister/ngx-cookie-service#348\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.3...v19.1.4\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.3...v19.1.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(package): bump version to 19.1.2 for ngx-cookie-service and ngx… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/344\"\u003estevermeister/ngx-cookie-service#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(core): replace headers.get('cookie') with headers.cookie by \u003ca href=\"https://github.com/mmart1n\"\u003e\u003ccode\u003e@​mmart1n\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/347\"\u003estevermeister/ngx-cookie-service#347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mmart1n\"\u003e\u003ccode\u003e@​mmart1n\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/347\"\u003estevermeister/ngx-cookie-service#347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v19.1.3\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v19.1.3\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/0771c9290123eafa0cb35a2802a266ac32bd0914\"\u003e\u003ccode\u003e0771c92\u003c/code\u003e\u003c/a\u003e Change peer dependencies (\u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/356\"\u003e#356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/4060892b99ea59f7c6bca67e6c6e32f5085dddac\"\u003e\u003ccode\u003e4060892\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/354\"\u003e#354\u003c/a\u003e from stevermeister/development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/23eb206dd8634f93e7b0a35bc77c544f9e26572d\"\u003e\u003ccode\u003e23eb206\u003c/code\u003e\u003c/a\u003e feat(package): update version to 20.0.0 for ngx-cookie-service and ngx-cookie...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/1573f4764b1d7415a13f95f0082ea2c7acac9004\"\u003e\u003ccode\u003e1573f47\u003c/code\u003e\u003c/a\u003e feat(core): adds angular 20 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/411a870150b08b8e902b28a2f67024d7686af304\"\u003e\u003ccode\u003e411a870\u003c/code\u003e\u003c/a\u003e fix(karma): update Angular build plugin and improve configuration formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/8537abaa580bedd757fdbed77df61a23a9e60b64\"\u003e\u003ccode\u003e8537aba\u003c/code\u003e\u003c/a\u003e feat(docs): add Copilot instructions for Angular projects\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/7e610ea7112a33211cb75fe654cb2da57d7a5e38\"\u003e\u003ccode\u003e7e610ea\u003c/code\u003e\u003c/a\u003e feat(docs): add Copilot instructions for Angular projects\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/ce350ca9da67c4a0faa883e1f35036c1d4aea4b8\"\u003e\u003ccode\u003ece350ca\u003c/code\u003e\u003c/a\u003e feat(core): adds angular 20 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/97650bdaabb048485a48f4823f90f11fc630887b\"\u003e\u003ccode\u003e97650bd\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/1b97b0a7589ffb097c955f1edce53dd0375da072\"\u003e\u003ccode\u003e1b97b0a\u003c/code\u003e\u003c/a\u003e feat: migrate tests from Jest to Jasmine and update related configurations (#...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v20.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-infinite-scroll` from 19.0.0 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/orizens/ngx-infinite-scroll/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-architects/module-federation` from 19.0.3 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/releases\"\u003e\u003ccode\u003e@​angular-architects/module-federation\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular-architects/module-federation-plugin/commit/d4bf6f035b01631fa7f1bf6f98838ae94db2f8ef\"\u003efeat(nf): migrate to angular 20\u003c/a\u003e\n\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/compare/19.0.23...20.0.0\"\u003ehttps://github.com/angular-architects/module-federation-plugin/compare/19.0.23...20.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.23\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(index-file): fixed the double quote issue by \u003ca href=\"https://github.com/asollberger\"\u003e\u003ccode\u003e@​asollberger\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/angular-architects/module-federation-plugin/pull/849\"\u003eangular-architects/module-federation-plugin#849\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/compare/19.0.19...19.0.23\"\u003ehttps://github.com/angular-architects/module-federation-plugin/compare/19.0.19...19.0.23\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.0.19\u003c/h2\u003e\n\u003cp\u003eThis release solves several issues that occurred with Angular 19.2, and it also solves issues with an entire class of npm packages using Singletons. For this, it delegates directly to the underlying bundler for chunk splitting. Hence, we don't need the transient flag anymore. \u003ccode\u003etransient\u003c/code\u003e deps will end up in their own bundles automatically \u003cem\u003ewhen\u003c/em\u003e required (when used from more than one other dependencies). In this regards, Native Federation now behaves like Module Federation.\u003c/p\u003e\n\u003ch2\u003e19.0.16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(nf): add shareAngularLocales helper\u003c/li\u003e\n\u003cli\u003efeat(nf): support angular i18n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/angular-architects/module-federation-plugin/blob/main/libs/native-federation/README.md#angular-i18n\"\u003eDetails in Readme\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.0.10\u003c/h2\u003e\n\u003cp\u003eBig thanks to our contributors!\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003efeat(nf-runtime): added cacheTag option\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003einitFederation\u003c/code\u003e now has a \u003ccode\u003ecacheTag\u003c/code\u003e option. If you set it, e.g., to \u003ccode\u003eDate.now()\u003c/code\u003e, it will be appended to the URLs of the fetched \u003ccode\u003eremoteEntries.json\u003c/code\u003e files to prevent caching.\u003c/p\u003e\n\u003cp\u003eBig thanks to \u003ca href=\"https://github.com/asollberger\"\u003eAlain Sollberger\u003c/a\u003e for this contribution!\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003efeat(nf): allow to version repo-internal libs (mapped paths)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eWe can now assign a version number to monorepo-internal libs (mapped paths). This allows to detect conflicts in cases where different micro frontends of the same monorepo were deployed independently and a shared internal lib was changed in between the two deployments.\u003c/p\u003e\n\u003cp\u003eTo use this feature, just assign a version number in the libs package.json and activate the new feature using the new feature map:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003emodule.exports = withNativeFederation({\n\u003cp\u003e[...]\u003c/p\u003e\n\u003cp\u003efeatures: {\nmappingVersion: true,\n},\u003c/p\u003e\n\u003cp\u003e});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eThe new feature map activates features that might cause breaking changes. Without explicitly activating these features, the usual backwards-compatible behavior is used.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/commits/20.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-architects/module-federation-runtime` from 19.0.3 to 20.0.0\n\nUpdates `@angular-builders/custom-esbuild` from 19.1.0 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-esbuild/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@20.0.0-beta.0...@angular-builders/custom-esbuild@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@19.1.0...@angular-builders/custom-esbuild@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecustom-esbuild:\u003c/strong\u003e expose builder options to plugins (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/2c114d9ccf105d8bbf024de9e67a69d625ce2742\"\u003e2c114d9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/2c114d9ccf105d8bbf024de9e67a69d625ce2742\"\u003e\u003ccode\u003e2c114d9\u003c/code\u003e\u003c/a\u003e feat(custom-esbuild): expose builder options to plugins\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-esbuild@20.0.0/packages/custom-esbuild\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/custom-webpack` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-webpack/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.0-beta.0...@angular-builders/custom-webpack@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.1...@angular-builders/custom-webpack@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-webpack@20.0.0/packages/custom-webpack\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/cli` from 19.2.13 to 20.1.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/releases\"\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.1.4\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d753cc62c9a801c40923a43e4af5f74b22700e0\"\u003e\u003cimg src=\"https://img.shields.io/badge/2d753cc62-fix-green\" alt=\"fix - 2d753cc62\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eskip workspace-specific tools when outside a workspace\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d72ef4d99380dbb1c0e03e3e3abfb2223fa539\"\u003e\u003cimg src=\"https://img.shields.io/badge/42d72ef4d-fix-green\" alt=\"fix - 42d72ef4d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eskip vite transformation of CSS-like assets\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.3\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ea5cd0e81196467ea66f50c106cffec1cd8a1a56\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea5cd0e81-fix-green\" alt=\"fix - ea5cd0e81\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate \u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e7.0.6\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.2\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/96785224f55291cd60553aead07ead10d9d2fbda\"\u003e\u003cimg src=\"https://img.shields.io/badge/96785224f-fix-green\" alt=\"fix - 96785224f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003edefine\u003c/code\u003e option is being included multiple times in the JSON help\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/core\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0d0040bdf58a82e18f7669363b6f149313524bfc\"\u003e\u003cimg src=\"https://img.shields.io/badge/0d0040bdf-fix-green\" alt=\"fix - 0d0040bdf\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse crypto.randomUUID instead of Date.now for unique string in tmp file names\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.1\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/541b33f8d977c1fe8f609099a8b8ed1c5f8e827e\"\u003e\u003cimg src=\"https://img.shields.io/badge/541b33f8d-fix-green\" alt=\"fix - 541b33f8d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eemit a warning when \u003ccode\u003eoutputHashing\u003c/code\u003e is set to \u003ccode\u003eall\u003c/code\u003e or \u003ccode\u003ebundles\u003c/code\u003e when HMR is enabled\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/558a0fe9275e68e0b768de3ee2e5bee0d6d84a6e\"\u003e\u003cimg src=\"https://img.shields.io/badge/558a0fe92-fix-green\" alt=\"fix - 558a0fe92\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enormalize code coverage include paths to POSIX\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1c19e0dcd4a87fbf542201e09a402a8fccdfcd88\"\u003e\u003cimg src=\"https://img.shields.io/badge/1c19e0dcd-feat-blue\" alt=\"feat - 1c19e0dcd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse signal in app component\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/dc45c186ec16e345b75ffcd57961a8e0cfd4b649\"\u003e\u003cimg src=\"https://img.shields.io/badge/dc45c186e-feat-blue\" alt=\"feat - dc45c186e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd initial MCP server implementation\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/49a09737d5412c302d09b40de198251bb99789d1\"\u003e\u003cimg src=\"https://img.shields.io/badge/49a09737d-feat-blue\" alt=\"feat - 49a09737d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprovide partial custom postcss configuration support\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1159cf08103081d2b851e59bc1c5fb200f114982\"\u003e\u003cimg src=\"https://img.shields.io/badge/1159cf081-feat-blue\" alt=\"feat - 1159cf081\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd code coverage reporters option for unit-test\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.1.4 (2025-07-30)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d753cc62c9a801c40923a43e4af5f74b22700e0\"\u003e2d753cc62\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eskip workspace-specific tools when outside a workspace\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d72ef4d99380dbb1c0e03e3e3abfb2223fa539\"\u003e42d72ef4d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eskip vite transformation of CSS-like assets\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.3 (2025-07-24)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ea5cd0e81196467ea66f50c106cffec1cd8a1a56\"\u003eea5cd0e81\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate \u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e7.0.6\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.2.0-next.1 (2025-07-23)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/fefa7a46f5733fd77852a61fddc3120b1bb4b202\"\u003efefa7a46f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003edefine\u003c/code\u003e option is being included multiple times in the JSON help\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/core\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/7595e1f8887bafd344ec939e647e3fca8bbd98be\"\u003e7595e1f88\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003euse crypto.randomUUID instead of Date.now for unique string in tmp file names\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/fb06bb5050e92eb4d0f95d7774552d0902163f6a\"\u003efb06bb505\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd headless mode for vitest browser mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ffc4c671753aa7ba4ae4ff6cd13eb4cd9eb08ec2\"\u003e\u003ccode\u003effc4c67\u003c/code\u003e\u003c/a\u003e release: cut the v20.1.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d753cc62c9a801c40923a43e4af5f74b22700e0\"\u003e\u003ccode\u003e2d753cc\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/cli\u003c/code\u003e): skip workspace-specific tools when outside a workspace\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d72ef4d99380dbb1c0e03e3e3abfb2223fa539\"\u003e\u003ccode\u003e42d72ef\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): skip vite transformation of CSS-like assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0489fe7025c60f022ca3959d6f651dc6b1bc9f2a\"\u003e\u003ccode\u003e0489fe7\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/build\u003c/code\u003e): update MCP best practices guide content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f7b61609c4f555fda8bd7e0571ee2308cdecee90\"\u003e\u003ccode\u003ef7b6160\u003c/code\u003e\u003c/a\u003e build: update bazel dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/18b44f64559ce7fc5c63cf9c9354b01c398fdae9\"\u003e\u003ccode\u003e18b44f6\u003c/code\u003e\u003c/a\u003e release: cut the v20.1.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ea5cd0e81196467ea66f50c106cffec1cd8a1a56\"\u003e\u003ccode\u003eea5cd0e\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): update \u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e7.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0568f385ebed0f8572f542985d6be2411ed98730\"\u003e\u003ccode\u003e0568f38\u003c/code\u003e\u003c/a\u003e release: cut the v20.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/14da0424a739b567d7e740fbc8b5992e0f084e01\"\u003e\u003ccode\u003e14da042\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): move MCP list projects tool to separate file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/731d1a637ec82a6e501962603447e2b67b077862\"\u003e\u003ccode\u003e731d1a6\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): include content for top result in MCP documentation s...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular-cli/compare/19.2.13...20.1.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript` from 5.8.3 to 5.9.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/TypeScript/releases\"\u003etypescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTypeScript 5.9\u003c/h2\u003e\n\u003cp\u003eRelease notes pending.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.1%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.1 (RC)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e[[No specific changes for TypeScript 5.9.2 (Stable)]]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTypeScript 5.9 RC\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9-rc/\"\u003erelease announcement\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.1%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.1 (RC)\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTypeScript 5.9 Beta\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9-beta/\"\u003erelease announcement\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/be8678315541e814da14316848a9468e8f90ab11\"\u003e\u003ccode\u003ebe86783\u003c/code\u003e\u003c/a\u003e Give more specific errors for \u003ccode\u003everbatimModuleSyntax\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62113\"\u003e#62113\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/22ef57786f5ca99837c430439bc6003c068fe1d2\"\u003e\u003ccode\u003e22ef577\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250714...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/d5a414cd1dceb209fd2569e89d1096812218e8c5\"\u003e\u003ccode\u003ed5a414c\u003c/code\u003e\u003c/a\u003e Don't use \u003ccode\u003enoErrorTruncation\u003c/code\u003e when printing types with \u003ccode\u003emaximumLength\u003c/code\u003e set (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/f14b5c8a2f0be503ac455054a91573c63f0e5088\"\u003e\u003ccode\u003ef14b5c8\u003c/code\u003e\u003c/a\u003e Remove unused and confusing dom.iterable.d.ts file (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62037\"\u003e#62037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/2778e84ed88894156e2c5a17d74a25c73cc96ffe\"\u003e\u003ccode\u003e2778e84\u003c/code\u003e\u003c/a\u003e Restore AbortSignal.abort (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62086\"\u003e#62086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/65cb4bd2d52cd882f2c3a503681479eb2ed291ca\"\u003e\u003ccode\u003e65cb4bd\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250710...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/9e20e032effad965567d4a1e1c30d5433b0a3332\"\u003e\u003ccode\u003e9e20e03\u003c/code\u003e\u003c/a\u003e Clear out checker-level stacks on pop (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62016\"\u003e#62016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/87740bc7fe3d8d2af47d767db081491f40b8a90d\"\u003e\u003ccode\u003e87740bc\u003c/code\u003e\u003c/a\u003e Fix for Issue 61081 (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/61221\"\u003e#61221\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/833a8d492c728d606454865e8c0fee84842f9f10\"\u003e\u003ccode\u003e833a8d4\u003c/code\u003e\u003c/a\u003e Fix Symbol completion priority and cursor positioning (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/61945\"\u003e#61945\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/0018c9ff12e657b84997dc1843818fea0a2ce850\"\u003e\u003ccode\u003e0018c9f\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250702...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/TypeScript/compare/v5.8.3...v5.9.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will canc...\n\n_Description has been truncated_","html_url":"https://github.com/qmonmert/generator-jhipster/pull/1494","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/qmonmert%2Fgenerator-jhipster/issues/1494","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1494/packages"},{"uuid":"3227493495","node_id":"PR_kwDOEG4mJ86evCOJ","number":1308,"state":"open","title":"chore: bump @angular-builders/jest from 19.0.1 to 20.0.0","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-14T06:12:34.000Z","updated_at":"2025-07-14T14:56:21.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore","packages":[{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) from 19.0.1 to 20.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@angular-builders/jest\u0026package-manager=npm_and_yarn\u0026previous-version=19.0.1\u0026new-version=20.0.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/hypertrace/hyperdash-angular/pull/1308","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hypertrace%2Fhyperdash-angular/issues/1308","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1308/packages"},{"uuid":"2628828865","node_id":"PR_kwDOKj54E86csL7B","number":505,"state":"closed","title":"Bump @angular-builders/jest from 19.0.1 to 20.0.0","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-07-19T08:11:04.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-30T12:49:19.000Z","updated_at":"2025-07-19T08:11:04.000Z","time_to_close":1624905,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"}],"path":null,"ecosystem":"npm"},"body":"[//]: # (dependabot-start)\n⚠️  **Dependabot is rebasing this PR** ⚠️ \n\nRebasing might not happen immediately, so don't worry if this takes some time.\n\nNote: if you make any changes to this PR yourself, they will take precedence over the rebase.\n\n---\n\n[//]: # (dependabot-end)\n\nBumps [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) from 19.0.1 to 20.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@angular-builders/jest\u0026package-manager=npm_and_yarn\u0026previous-version=19.0.1\u0026new-version=20.0.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/ls1intum/Artemis-Benchmarking/pull/505","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ls1intum%2FArtemis-Benchmarking/issues/505","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/505/packages"},{"uuid":"2619995276","node_id":"PR_kwDOLXKG486cKfSM","number":589,"state":"open","title":"chore(deps): bump the angular group with 13 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-26T04:46:05.000Z","updated_at":"2025-06-26T04:46:06.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"angular","update_count":13,"packages":[{"name":"@angular/animations","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular/common","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular/compiler","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular/core","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular/forms","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular/material","old_version":"20.0.3","new_version":"20.0.4","repository_url":"https://github.com/angular/components"},{"name":"@angular/platform-browser","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser-dynamic","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/build-angular","old_version":"20.0.3","new_version":"20.0.4","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/cdk","old_version":"20.0.3","new_version":"20.0.4","repository_url":"https://github.com/angular/components"},{"name":"@angular/cli","old_version":"20.0.3","new_version":"20.0.4","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/compiler-cli","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"}],"path":null,"ecosystem":"npm"},"body":"Bumps the angular group with 13 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/animations](https://github.com/angular/angular/tree/HEAD/packages/animations) | `20.0.4` | `20.0.5` |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `20.0.4` | `20.0.5` |\n| [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) | `20.0.4` | `20.0.5` |\n| [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) | `20.0.4` | `20.0.5` |\n| [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) | `20.0.4` | `20.0.5` |\n| [@angular/material](https://github.com/angular/components) | `20.0.3` | `20.0.4` |\n| [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) | `20.0.4` | `20.0.5` |\n| [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) | `20.0.4` | `20.0.5` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `20.0.3` | `20.0.4` |\n| [@angular/cdk](https://github.com/angular/components) | `20.0.3` | `20.0.4` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `20.0.3` | `20.0.4` |\n| [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) | `20.0.4` | `20.0.5` |\n\nUpdates `@angular/animations` from 20.0.4 to 20.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/animations\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003e\u003cimg src=\"https://img.shields.io/badge/de0d525ad7-fix-green\" alt=\"fix - de0d525ad7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e\u003cimg src=\"https://img.shields.io/badge/3eb5a79a83-fix-green\" alt=\"fix - 3eb5a79a83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003cimg src=\"https://img.shields.io/badge/a2e6f317a7-fix-green\" alt=\"fix - a2e6f317a7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003cimg src=\"https://img.shields.io/badge/4c00238a69-fix-green\" alt=\"fix - 4c00238a69\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003cimg src=\"https://img.shields.io/badge/369f03ad7f-fix-green\" alt=\"fix - 369f03ad7f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003cimg src=\"https://img.shields.io/badge/65c59dd796-fix-green\" alt=\"fix - 65c59dd796\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e\u003cimg src=\"https://img.shields.io/badge/144c429230-fix-green\" alt=\"fix - 144c429230\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/animations\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.5 (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003ede0d525ad7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e3eb5a79a83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003ea2e6f317a7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e4c00238a69\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e369f03ad7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e65c59dd796\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e144c429230\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.2 (2025-06-18)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2e0c98bd3f2efd1181429b486dd1cebe14385c18\"\u003e2e0c98bd3f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport bindings in TestBed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62040\"\u003e#62040\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8424b3bcd5b9c78f37dc8ba636c87775937bcc03\"\u003e8424b3bcd5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eFixes template outlet hydration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61989\"\u003e#61989\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/31da435854379e2a97b9b746751617e9979f01b0\"\u003e31da435854\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einject \u003ccode\u003eAPP_ID\u003c/code\u003e before injector is destroyed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61885\"\u003e#61885\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/572c32a03876a5dbb6d0400ab0a217541407a0f9\"\u003e572c32a038\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eWrap ErrorEvent with no error property (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62081\"\u003e#62081\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/34adfdea82997c43325e541c016c5c5d6f6f4a31\"\u003e34adfdea82\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emore robust trailing comma removal in unused imports migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62118\"\u003e#62118\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular/angular/commits/20.0.5/packages/animations\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/common` from 20.0.4 to 20.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003e\u003cimg src=\"https://img.shields.io/badge/de0d525ad7-fix-green\" alt=\"fix - de0d525ad7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e\u003cimg src=\"https://img.shields.io/badge/3eb5a79a83-fix-green\" alt=\"fix - 3eb5a79a83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003cimg src=\"https://img.shields.io/badge/a2e6f317a7-fix-green\" alt=\"fix - a2e6f317a7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003cimg src=\"https://img.shields.io/badge/4c00238a69-fix-green\" alt=\"fix - 4c00238a69\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003cimg src=\"https://img.shields.io/badge/369f03ad7f-fix-green\" alt=\"fix - 369f03ad7f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003cimg src=\"https://img.shields.io/badge/65c59dd796-fix-green\" alt=\"fix - 65c59dd796\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e\u003cimg src=\"https://img.shields.io/badge/144c429230-fix-green\" alt=\"fix - 144c429230\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.5 (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003ede0d525ad7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e3eb5a79a83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003ea2e6f317a7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e4c00238a69\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e369f03ad7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e65c59dd796\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e144c429230\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.2 (2025-06-18)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2e0c98bd3f2efd1181429b486dd1cebe14385c18\"\u003e2e0c98bd3f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport bindings in TestBed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62040\"\u003e#62040\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8424b3bcd5b9c78f37dc8ba636c87775937bcc03\"\u003e8424b3bcd5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eFixes template outlet hydration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61989\"\u003e#61989\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/31da435854379e2a97b9b746751617e9979f01b0\"\u003e31da435854\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einject \u003ccode\u003eAPP_ID\u003c/code\u003e before injector is destroyed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61885\"\u003e#61885\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/572c32a03876a5dbb6d0400ab0a217541407a0f9\"\u003e572c32a038\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eWrap ErrorEvent with no error property (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62081\"\u003e#62081\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/34adfdea82997c43325e541c016c5c5d6f6f4a31\"\u003e34adfdea82\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emore robust trailing comma removal in unused imports migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62118\"\u003e#62118\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/c43f632dc08c5cd9fa01170399146125f0ae8c84\"\u003e\u003ccode\u003ec43f632\u003c/code\u003e\u003c/a\u003e docs: fix deprecation message on ngIf/ngSwitch (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62149\"\u003e#62149\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b40c9d0e59993142730137788cc663a16cdbbcb1\"\u003e\u003ccode\u003eb40c9d0\u003c/code\u003e\u003c/a\u003e refactor(common): move \u003ccode\u003engServerMode\u003c/code\u003e check outside \u003ccode\u003etap()\u003c/code\u003e to enable tree-sh...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003ccode\u003e65c59dd\u003c/code\u003e\u003c/a\u003e fix(router): handle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular/angular/commits/20.0.5/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/compiler` from 20.0.4 to 20.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003e\u003cimg src=\"https://img.shields.io/badge/de0d525ad7-fix-green\" alt=\"fix - de0d525ad7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e\u003cimg src=\"https://img.shields.io/badge/3eb5a79a83-fix-green\" alt=\"fix - 3eb5a79a83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003cimg src=\"https://img.shields.io/badge/a2e6f317a7-fix-green\" alt=\"fix - a2e6f317a7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003cimg src=\"https://img.shields.io/badge/4c00238a69-fix-green\" alt=\"fix - 4c00238a69\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003cimg src=\"https://img.shields.io/badge/369f03ad7f-fix-green\" alt=\"fix - 369f03ad7f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003cimg src=\"https://img.shields.io/badge/65c59dd796-fix-green\" alt=\"fix - 65c59dd796\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e\u003cimg src=\"https://img.shields.io/badge/144c429230-fix-green\" alt=\"fix - 144c429230\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.5 (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003ede0d525ad7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e3eb5a79a83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003ea2e6f317a7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e4c00238a69\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e369f03ad7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e65c59dd796\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e144c429230\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.2 (2025-06-18)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2e0c98bd3f2efd1181429b486dd1cebe14385c18\"\u003e2e0c98bd3f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport bindings in TestBed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62040\"\u003e#62040\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8424b3bcd5b9c78f37dc8ba636c87775937bcc03\"\u003e8424b3bcd5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eFixes template outlet hydration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61989\"\u003e#61989\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/31da435854379e2a97b9b746751617e9979f01b0\"\u003e31da435854\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einject \u003ccode\u003eAPP_ID\u003c/code\u003e before injector is destroyed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61885\"\u003e#61885\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/572c32a03876a5dbb6d0400ab0a217541407a0f9\"\u003e572c32a038\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eWrap ErrorEvent with no error property (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62081\"\u003e#62081\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/34adfdea82997c43325e541c016c5c5d6f6f4a31\"\u003e34adfdea82\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emore robust trailing comma removal in unused imports migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62118\"\u003e#62118\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular/angular/commits/20.0.5/packages/compiler\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/core` from 20.0.4 to 20.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003e\u003cimg src=\"https://img.shields.io/badge/de0d525ad7-fix-green\" alt=\"fix - de0d525ad7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e\u003cimg src=\"https://img.shields.io/badge/3eb5a79a83-fix-green\" alt=\"fix - 3eb5a79a83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003cimg src=\"https://img.shields.io/badge/a2e6f317a7-fix-green\" alt=\"fix - a2e6f317a7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003cimg src=\"https://img.shields.io/badge/4c00238a69-fix-green\" alt=\"fix - 4c00238a69\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003cimg src=\"https://img.shields.io/badge/369f03ad7f-fix-green\" alt=\"fix - 369f03ad7f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003cimg src=\"https://img.shields.io/badge/65c59dd796-fix-green\" alt=\"fix - 65c59dd796\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e\u003cimg src=\"https://img.shields.io/badge/144c429230-fix-green\" alt=\"fix - 144c429230\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.5 (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003ede0d525ad7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e3eb5a79a83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003ea2e6f317a7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e4c00238a69\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e369f03ad7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e65c59dd796\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e144c429230\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.2 (2025-06-18)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2e0c98bd3f2efd1181429b486dd1cebe14385c18\"\u003e2e0c98bd3f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport bindings in TestBed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62040\"\u003e#62040\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8424b3bcd5b9c78f37dc8ba636c87775937bcc03\"\u003e8424b3bcd5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eFixes template outlet hydration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61989\"\u003e#61989\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/31da435854379e2a97b9b746751617e9979f01b0\"\u003e31da435854\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einject \u003ccode\u003eAPP_ID\u003c/code\u003e before injector is destroyed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61885\"\u003e#61885\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/572c32a03876a5dbb6d0400ab0a217541407a0f9\"\u003e572c32a038\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eWrap ErrorEvent with no error property (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62081\"\u003e#62081\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/34adfdea82997c43325e541c016c5c5d6f6f4a31\"\u003e34adfdea82\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emore robust trailing comma removal in unused imports migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62118\"\u003e#62118\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003ccode\u003ea2e6f31\u003c/code\u003e\u003c/a\u003e fix(core): allow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b40c9d0e59993142730137788cc663a16cdbbcb1\"\u003e\u003ccode\u003eb40c9d0\u003c/code\u003e\u003c/a\u003e refactor(common): move \u003ccode\u003engServerMode\u003c/code\u003e check outside \u003ccode\u003etap()\u003c/code\u003e to enable tree-sh...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003ccode\u003e4c00238\u003c/code\u003e\u003c/a\u003e fix(core): avoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e7d259b0dc73b2513ca635cd242be894d13f310b\"\u003e\u003ccode\u003ee7d259b\u003c/code\u003e\u003c/a\u003e refactor(core): drop injection context assertion in production (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62038\"\u003e#62038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003ccode\u003e369f03a\u003c/code\u003e\u003c/a\u003e fix(core): unable to retrieve defer blocks in tests when component injects Vi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/dff1417b7305e85530df0e2ab65e9d47009e750d\"\u003e\u003ccode\u003edff1417\u003c/code\u003e\u003c/a\u003e build: revert incompatible build changes in patch branch (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62168\"\u003e#62168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ebaebb849f67d628cf6da966e0d9e9705e431355\"\u003e\u003ccode\u003eebaebb8\u003c/code\u003e\u003c/a\u003e refactor(core): update FakeNavigation to the latest spec (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62017\"\u003e#62017\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/4e26ef996be6c317eea7df5317056799e9ea0827\"\u003e\u003ccode\u003e4e26ef9\u003c/code\u003e\u003c/a\u003e build: migrate to using new jasmine_test (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62132\"\u003e#62132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular/angular/commits/20.0.5/packages/core\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/forms` from 20.0.4 to 20.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003e\u003cimg src=\"https://img.shields.io/badge/de0d525ad7-fix-green\" alt=\"fix - de0d525ad7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e\u003cimg src=\"https://img.shields.io/badge/3eb5a79a83-fix-green\" alt=\"fix - 3eb5a79a83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003cimg src=\"https://img.shields.io/badge/a2e6f317a7-fix-green\" alt=\"fix - a2e6f317a7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003cimg src=\"https://img.shields.io/badge/4c00238a69-fix-green\" alt=\"fix - 4c00238a69\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003cimg src=\"https://img.shields.io/badge/369f03ad7f-fix-green\" alt=\"fix - 369f03ad7f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003cimg src=\"https://img.shields.io/badge/65c59dd796-fix-green\" alt=\"fix - 65c59dd796\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e\u003cimg src=\"https://img.shields.io/badge/144c429230-fix-green\" alt=\"fix - 144c429230\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.5 (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003ede0d525ad7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e3eb5a79a83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003ea2e6f317a7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e4c00238a69\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e369f03ad7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e65c59dd796\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e144c429230\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.2 (2025-06-18)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2e0c98bd3f2efd1181429b486dd1cebe14385c18\"\u003e2e0c98bd3f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport bindings in TestBed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62040\"\u003e#62040\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8424b3bcd5b9c78f37dc8ba636c87775937bcc03\"\u003e8424b3bcd5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eFixes template outlet hydration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61989\"\u003e#61989\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/31da435854379e2a97b9b746751617e9979f01b0\"\u003e31da435854\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einject \u003ccode\u003eAPP_ID\u003c/code\u003e before injector is destroyed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61885\"\u003e#61885\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/572c32a03876a5dbb6d0400ab0a217541407a0f9\"\u003e572c32a038\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eWrap ErrorEvent with no error property (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62081\"\u003e#62081\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/34adfdea82997c43325e541c016c5c5d6f6f4a31\"\u003e34adfdea82\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emore robust trailing comma removal in unused imports migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62118\"\u003e#62118\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/eddc296b94a02026a95ae65dd5bd3481354ced3c\"\u003e\u003ccode\u003eeddc296\u003c/code\u003e\u003c/a\u003e build: migrate final non-zone.js jasmine tests (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62170\"\u003e#62170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular/angular/commits/20.0.5/packages/forms\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/material` from 20.0.3 to 20.0.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/material\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.4\u003c/h2\u003e\n\u003ch3\u003eyoutube-player\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3b31dacc09f5040e5b4dc3e33bec39bad3b339f7\"\u003e\u003cimg src=\"https://img.shields.io/badge/3b31dacc0-fix-green\" alt=\"fix - 3b31dacc0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003einvalid URL when playlist is passed in without videoId (\u003ca href=\"https://redirect.github.com/angular/components/issues/31403\"\u003e#31403\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/88bc13d88639aff36eacd33cd3d958c1993e6f57\"\u003e\u003cimg src=\"https://img.shields.io/badge/88bc13d88-fix-green\" alt=\"fix - 88bc13d88\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e harness not picking up buttons with dynamic appearance (\u003ca href=\"https://redirect.github.com/angular/components/issues/31327\"\u003e#31327\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c1b9682e49699fe02693a68def16e5c26302d547\"\u003e\u003cimg src=\"https://img.shields.io/badge/c1b9682e4-fix-green\" alt=\"fix - c1b9682e4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e update button golden (\u003ca href=\"https://redirect.github.com/angular/components/issues/31346\"\u003e#31346\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c3bb067bf2e135d4086837a55aad476825c21b24\"\u003e\u003cimg src=\"https://img.shields.io/badge/c3bb067bf-fix-green\" alt=\"fix - c3bb067bf\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003einput:\u003c/strong\u003e remove native clear button (\u003ca href=\"https://redirect.github.com/angular/components/issues/31394\"\u003e#31394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/747218ba2fce8bac943915bb06e09c6fb4bbef2d\"\u003e\u003cimg src=\"https://img.shields.io/badge/747218ba2-fix-green\" alt=\"fix - 747218ba2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003einput:\u003c/strong\u003e revert wheel workaround (\u003ca href=\"https://redirect.github.com/angular/components/issues/31391\"\u003e#31391\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/59be54616446b596fa36182cad9ac29f243e564c\"\u003e\u003cimg src=\"https://img.shields.io/badge/59be54616-fix-green\" alt=\"fix - 59be54616\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e close sibling triggers when opening a menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/30894\"\u003e#30894\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/material\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.4 \u0026quot;strontium-shack\u0026quot; (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/59be54616446b596fa36182cad9ac29f243e564c\"\u003e59be54616\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e close sibling triggers when opening a menu (\u003ca href=\"https://redirect.github.com/angular/components/pull/30894\"\u003e#30894\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/88bc13d88639aff36eacd33cd3d958c1993e6f57\"\u003e88bc13d88\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e harness not picking up buttons with dynamic appearance (\u003ca href=\"https://redirect.github.com/angular/components/pull/31327\"\u003e#31327\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c1b9682e49699fe02693a68def16e5c26302d547\"\u003ec1b9682e4\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e update button golden (\u003ca href=\"https://redirect.github.com/angular/components/pull/31346\"\u003e#31346\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c3bb067bf2e135d4086837a55aad476825c21b24\"\u003ec3bb067bf\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003einput:\u003c/strong\u003e remove native clear button (\u003ca href=\"https://redirect.github.com/angular/components/pull/31394\"\u003e#31394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/747218ba2fce8bac943915bb06e09c6fb4bbef2d\"\u003e747218ba2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003einput:\u003c/strong\u003e revert wheel workaround (\u003ca href=\"https://redirect.github.com/angular/components/pull/31391\"\u003e#31391\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eyoutube-player\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3b31dacc09f5040e5b4dc3e33bec39bad3b339f7\"\u003e3b31dacc0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einvalid URL when playlist is passed in without videoId (\u003ca href=\"https://redirect.github.com/angular/components/pull/31403\"\u003e#31403\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e19.2.19 \u0026quot;strontium-shovel\u0026quot; (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/1b9061ad26b949b58e82077b0fa07aacac76b307\"\u003e1b9061ad2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e fix sass deprecation warning (\u003ca href=\"https://redirect.github.com/angular/components/pull/31390\"\u003e#31390\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.1 \u0026quot;plastic-straw\u0026quot; (2025-06-11)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8523397fd29a1cb5c08c88420367d0def020bf12\"\u003e8523397fd2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e prevents mat-icon being cut off by text-spacing (\u003ca href=\"https://redirect.github.com/angular/components/pull/30891\"\u003e#30891\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0d47628d2eb1a5d72198769fbc7cfb978c8074d6\"\u003e0d47628d2e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e use system colors for state layers and text (\u003ca href=\"https://redirect.github.com/angular/components/pull/31278\"\u003e#31278\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/458a17ba4680cc4ed90965f2a71f655699f2bc11\"\u003e458a17ba46\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003echeckbox:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31279\"\u003e#31279\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/be48108bc2b0939af496c8e82482b4b7326ef85d\"\u003ebe48108bc2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003echips:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31280\"\u003e#31280\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/21df04e78743ac961bdb8d8e309417a80842238b\"\u003e21df04e787\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e output tokens from theme under same selector (\u003ca href=\"https://redirect.github.com/angular/components/pull/31295\"\u003e#31295\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/576a008b09ce377da892fbd54720947269deb6c6\"\u003e576a008b09\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e remove unused form field mixins (\u003ca href=\"https://redirect.github.com/angular/components/pull/31283\"\u003e#31283\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4d67427cef1442f2c66feb821a2f2cf20a01001b\"\u003e4d67427cef\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e update ripple tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31282\"\u003e#31282\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/28f2763f96427239514b03a87ad6543c7bf1ce98\"\u003e28f2763f96\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31281\"\u003e#31281\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/009424c73ec97769edbed440336d0e7386c49d13\"\u003e009424c73e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e use system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31300\"\u003e#31300\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/918b6254385ef35c6d95621f6c0c04f294974710\"\u003e918b625438\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003elist:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31284\"\u003e#31284\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/623030b50df52162e4a5c931b6d12226c44a4897\"\u003e623030b50d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31285\"\u003e#31285\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0f26b91425b5b7f34fdabf877e0f84929a6c8032\"\u003e0f26b91425\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003epaginator:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31286\"\u003e#31286\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3f7d2778fb0cae09a49802102ad6c994984ddb93\"\u003e3f7d2778fb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eradio:\u003c/strong\u003e color tokens excluded when passing in variant (\u003ca href=\"https://redirect.github.com/angular/components/pull/31321\"\u003e#31321\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/010122ff2adebb7f7b6aff330044591ff771a966\"\u003e010122ff2a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e use system color for arrow (\u003ca href=\"https://redirect.github.com/angular/components/pull/31302\"\u003e#31302\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/9ce023d9771b07229df59c6aa360ae0462980b60\"\u003e9ce023d977\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eslider:\u003c/strong\u003e ensure disabled slider thumb input has 'auto' c… (\u003ca href=\"https://redirect.github.com/angular/components/pull/31311\"\u003e#31311\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/029e39ccedc01e931f4a2dc762b26bc8c87ec857\"\u003e029e39cced\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eslider:\u003c/strong\u003e use system color (\u003ca href=\"https://redirect.github.com/angular/components/pull/31305\"\u003e#31305\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/951f37e6564c5d0701acdad992b0e0ca23b99882\"\u003e951f37e656\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etabs:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31287\"\u003e#31287\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/7b876772c079b791fe22e5001e683eb8c918a7d2\"\u003e\u003ccode\u003e7b87677\u003c/code\u003e\u003c/a\u003e release: cut the v20.0.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/76451c5f481bc6be55fa0a1cd1b431d1cc1ac505\"\u003e\u003ccode\u003e76451c5\u003c/code\u003e\u003c/a\u003e build: fix failing firefox tests on main (\u003ca href=\"https://redirect.github.com/angular/components/issues/31441\"\u003e#31441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/59be54616446b596fa36182cad9ac29f243e564c\"\u003e\u003ccode\u003e59be546\u003c/code\u003e\u003c/a\u003e fix(cdk/menu): close sibling triggers when opening a menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/30894\"\u003e#30894\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/6f445d1fac5f4d3c61c6e34afd0c54fbb73064da\"\u003e\u003ccode\u003e6f445d1\u003c/code\u003e\u003c/a\u003e build: update dependency zx to v8 (\u003ca href=\"https://redirect.github.com/angular/components/issues/31435\"\u003e#31435\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/3ff0547df3d67f0b567bf4038f5dacafcb7634dd\"\u003e\u003ccode\u003e3ff0547\u003c/code\u003e\u003c/a\u003e build: update dependency node to v22.17.0 (\u003ca href=\"https://redirect.github.com/angular/components/issues/31428\"\u003e#31428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/3b31dacc09f5040e5b4dc3e33bec39bad3b339f7\"\u003e\u003ccode\u003e3b31dac\u003c/code\u003e\u003c/a\u003e fix(youtube-player): invalid URL when playlist is passed in without videoId (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/c3bb067bf2e135d4086837a55aad476825c21b24\"\u003e\u003ccode\u003ec3bb067\u003c/code\u003e\u003c/a\u003e fix(material/input): remove native clear button (\u003ca href=\"https://redirect.github.com/angular/components/issues/31394\"\u003e#31394\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/747218ba2fce8bac943915bb06e09c6fb4bbef2d\"\u003e\u003ccode\u003e747218b\u003c/code\u003e\u003c/a\u003e fix(material/input): revert wheel workaround (\u003ca href=\"https://redirect.github.com/angular/components/issues/31391\"\u003e#31391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/e89c09b8cea88d5fd8ff10622ff9e56d6784a061\"\u003e\u003ccode\u003ee89c09b\u003c/code\u003e\u003c/a\u003e docs: snippet-based examples not showing after clicking away and coming back ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/f48c8ad7d6d4da20c1d8f8adbdcf65649749f81a\"\u003e\u003ccode\u003ef48c8ad\u003c/code\u003e\u003c/a\u003e build: update scorecard action dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/31409\"\u003e#31409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/20.0.3...20.0.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/platform-browser` from 20.0.4 to 20.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/platform-browser\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003e\u003cimg src=\"https://img.shields.io/badge/de0d525ad7-fix-green\" alt=\"fix - de0d525ad7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e\u003cimg src=\"https://img.shields.io/badge/3eb5a79a83-fix-green\" alt=\"fix - 3eb5a79a83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003cimg src=\"https://img.shields.io/badge/a2e6f317a7-fix-green\" alt=\"fix - a2e6f317a7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003cimg src=\"https://img.shields.io/badge/4c00238a69-fix-green\" alt=\"fix - 4c00238a69\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003cimg src=\"https://img.shields.io/badge/369f03ad7f-fix-green\" alt=\"fix - 369f03ad7f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003cimg src=\"https://img.shields.io/badge/65c59dd796-fix-green\" alt=\"fix - 65c59dd796\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e\u003cimg src=\"https://img.shields.io/badge/144c429230-fix-green\" alt=\"fix - 144c429230\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/platform-browser\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.5 (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003ede0d525ad7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e3eb5a79a83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003ea2e6f317a7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e4c00238a69\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e369f03ad7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e65c59dd796\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e144c429230\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.2 (2025-06-18)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2e0c98bd3f2efd1181429b486dd1cebe14385c18\"\u003e2e0c98bd3f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport bindings in TestBed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62040\"\u003e#62040\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8424b3bcd5b9c78f37dc8ba636c87775937bcc03\"\u003e8424b3bcd5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eFixes template outlet hydration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61989\"\u003e#61989\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/31da435854379e2a97b9b746751617e9979f01b0\"\u003e31da435854\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einject \u003ccode\u003eAPP_ID\u003c/code\u003e before injector is destroyed (\u003ca href=\"https://redirect.github.com/angular/angular/pu...\n\n_Description has been truncated_","html_url":"https://github.com/nihilux-org/roon-web-stack/pull/589","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nihilux-org%2Froon-web-stack/issues/589","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/589/packages"}],"issue_packages":[{"old_version":"17.0.3","new_version":"21.0.3","update_type":"major","path":"/frontend","pr_created_at":"2026-05-03T09:02:35.000Z","version_change":"17.0.3 → 21.0.3","issue":{"uuid":"4371342955","node_id":"PR_kwDOSS92m87XwBqP","number":10,"state":"open","title":"chore(deps-dev): bump @angular-builders/jest from 17.0.3 to 21.0.3 in /frontend","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-03T09:02:35.000Z","updated_at":"2026-05-03T09:02:35.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev)","packages":[{"name":"@angular-builders/jest","old_version":"17.0.3","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"}],"path":"/frontend","ecosystem":"npm"},"body":"Bumps [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) from 17.0.3 to 21.0.3.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e@​angular-builders/jest's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.1 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.0 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187\"\u003e9c0d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f7\"\u003e5d8e5f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.2\"\u003e21.0.2\u003c/a\u003e (2026-01-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.1\"\u003e21.0.1\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.1-beta.0\"\u003e21.0.1-beta.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.0\"\u003e21.0.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.1-beta.1...@angular-builders/jest@21.0.0-beta.1\"\u003e21.0.0-beta.1\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e configPath option renamed to config\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe config option now accepts:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFile path (string): \u0026quot;jest.config.js\u0026quot;\u003c/li\u003e\n\u003cli\u003eJSON string: '{\u0026quot;verbose\u0026quot;: true}'\u003c/li\u003e\n\u003cli\u003eInline object in angular.json\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e zoneless is now the default\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eApps using zone.js change detection must set zoneless: false in angular.json.\u003c/p\u003e\n\u003cp\u003eglobalMocks option now only supports matchMedia. The styleTransform,\ngetComputedStyle, and doctype mocks have been removed as Jest 30's\njsdom supports these natively.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e Requires Jest 30\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eUsers must upgrade:\nnpm install --save-dev jest@^30.0.0 jest-environment-jsdom@^30.0.0 jsdom@^26.0.0\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/df93aba91f4bdace2a54e0052e9b4603638f9fd4\"\u003e\u003ccode\u003edf93aba\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4af87374773bedb22c0a050d8ece327a51f432d3\"\u003e\u003ccode\u003e4af8737\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1f20a38d517527be88d140bb36dc00cf6bcb7583\"\u003e\u003ccode\u003e1f20a38\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187e93be6b9ba7773432826fc2f63ca9cff6\"\u003e\u003ccode\u003e9c0d187\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f70dc25f05fa8ea6e67efe07d2271182c9a\"\u003e\u003ccode\u003e5d8e5f7\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9f8d27afa52bfa0a44d3aa97081c0e0bf94d2a5c\"\u003e\u003ccode\u003e9f8d27a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/63f716a171b650bdfed007bec8f286e28f8b6c0c\"\u003e\u003ccode\u003e63f716a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1d1aa1b1eb60aa4379ac38d5913ce0a31dd45160\"\u003e\u003ccode\u003e1d1aa1b\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/c457fdeee426b904bd0c0864e31c42d91864ce32\"\u003e\u003ccode\u003ec457fde\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/7bfe31233d86cd04798055d19a552e7d8ab424a3\"\u003e\u003ccode\u003e7bfe312\u003c/code\u003e\u003c/a\u003e feat(jest)!: rename configPath to config with object support\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@21.0.3/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@angular-builders/jest\u0026package-manager=npm_and_yarn\u0026previous-version=17.0.3\u0026new-version=21.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/FKAV64/web-based-progrmming-end-of-year-project/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/FKAV64%2Fweb-based-progrmming-end-of-year-project/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"}},{"old_version":"20.0.0","new_version":"21.0.3","update_type":"major","path":"/alcs-frontend","pr_created_at":"2026-04-21T16:48:01.000Z","version_change":"20.0.0 → 21.0.3","issue":{"uuid":"4304071751","node_id":"PR_kwDOHn-f-c7UX2_T","number":2923,"state":"closed","title":"Bump @tootallnate/once and @angular-builders/jest in /alcs-frontend","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-01T20:39:47.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-21T16:48:01.000Z","updated_at":"2026-05-01T20:39:48.000Z","time_to_close":877906,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@tootallnate/once","repository_url":"https://github.com/TooTallNate/once","old_version":null,"new_version":null,"is_removal":true},{"name":"@angular-builders/jest","repository_url":"https://github.com/just-jeb/angular-builders","old_version":"20.0.0","new_version":"21.0.3"}],"path":"/alcs-frontend","ecosystem":"npm"},"body":"Removes [@tootallnate/once](https://github.com/TooTallNate/once). It's no longer used after updating ancestor dependency [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest). These dependencies need to be updated together.\n\nRemoves `@tootallnate/once`\n\nUpdates `@angular-builders/jest` from 20.0.0 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.1 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.0 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187\"\u003e9c0d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f7\"\u003e5d8e5f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.2\"\u003e21.0.2\u003c/a\u003e (2026-01-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.1\"\u003e21.0.1\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.1-beta.0\"\u003e21.0.1-beta.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.0\"\u003e21.0.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.1-beta.1...@angular-builders/jest@21.0.0-beta.1\"\u003e21.0.0-beta.1\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e configPath option renamed to config\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe config option now accepts:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFile path (string): \u0026quot;jest.config.js\u0026quot;\u003c/li\u003e\n\u003cli\u003eJSON string: '{\u0026quot;verbose\u0026quot;: true}'\u003c/li\u003e\n\u003cli\u003eInline object in angular.json\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e zoneless is now the default\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eApps using zone.js change detection must set zoneless: false in angular.json.\u003c/p\u003e\n\u003cp\u003eglobalMocks option now only supports matchMedia. The styleTransform,\ngetComputedStyle, and doctype mocks have been removed as Jest 30's\njsdom supports these natively.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e Requires Jest 30\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eUsers must upgrade:\nnpm install --save-dev jest@^30.0.0 jest-environment-jsdom@^30.0.0 jsdom@^26.0.0\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/df93aba91f4bdace2a54e0052e9b4603638f9fd4\"\u003e\u003ccode\u003edf93aba\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4af87374773bedb22c0a050d8ece327a51f432d3\"\u003e\u003ccode\u003e4af8737\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1f20a38d517527be88d140bb36dc00cf6bcb7583\"\u003e\u003ccode\u003e1f20a38\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187e93be6b9ba7773432826fc2f63ca9cff6\"\u003e\u003ccode\u003e9c0d187\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f70dc25f05fa8ea6e67efe07d2271182c9a\"\u003e\u003ccode\u003e5d8e5f7\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9f8d27afa52bfa0a44d3aa97081c0e0bf94d2a5c\"\u003e\u003ccode\u003e9f8d27a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/63f716a171b650bdfed007bec8f286e28f8b6c0c\"\u003e\u003ccode\u003e63f716a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1d1aa1b1eb60aa4379ac38d5913ce0a31dd45160\"\u003e\u003ccode\u003e1d1aa1b\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/c457fdeee426b904bd0c0864e31c42d91864ce32\"\u003e\u003ccode\u003ec457fde\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/7bfe31233d86cd04798055d19a552e7d8ab424a3\"\u003e\u003ccode\u003e7bfe312\u003c/code\u003e\u003c/a\u003e feat(jest)!: rename configPath to config with object support\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@21.0.3/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\nYou can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/bcgov/alcs/network/alerts).\n\n\u003c/details\u003e","html_url":"https://github.com/bcgov/alcs/pull/2923","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/bcgov%2Falcs/issues/2923","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2923/packages"}},{"old_version":"20.0.0","new_version":"21.0.3","update_type":"major","path":null,"pr_created_at":"2026-03-01T18:03:27.000Z","version_change":"20.0.0 → 21.0.3","issue":{"uuid":"4007874687","node_id":"PR_kwDOOhidSs7HKUZl","number":138,"state":"closed","title":"Chore(deps): Bump the frontend-angular-dependencies group across 1 directory with 23 updates","user":"dependabot[bot]","labels":["dependencies","frontend"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-01T22:50:50.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-01T18:03:27.000Z","updated_at":"2026-04-01T22:50:52.000Z","time_to_close":2695643,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Chore(deps): Bump","group_name":"frontend-angular-dependencies","update_count":23,"packages":[{"name":"@angular/cdk","old_version":"21.0.5","new_version":"21.2.0","repository_url":"https://github.com/angular/components"},{"name":"@angular/common","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/compiler","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/core","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/forms","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/localize","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser-dynamic","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/router","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@ng-select/ng-select","old_version":"21.1.3","new_version":"21.4.0","repository_url":"https://github.com/ng-select/ng-select"},{"name":"ngx-ui-tour-ng-bootstrap","old_version":"17.0.1","new_version":"18.0.0","repository_url":"https://github.com/hakimio/ngx-ui-tour"},{"name":"@angular-builders/custom-webpack","old_version":"20.0.0","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"20.0.0","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/build-angular","old_version":"21.0.4","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/core","old_version":"21.0.4","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/schematics","old_version":"21.0.4","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-eslint/builder","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin-template","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/schematics","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/template-parser","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular/cli","old_version":"21.0.4","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/compiler-cli","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"}],"path":null,"ecosystem":"npm"},"body":"Bumps the frontend-angular-dependencies group with 23 updates in the /src-ui directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/cdk](https://github.com/angular/components) | `21.0.5` | `21.2.0` |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `21.0.6` | `21.2.0` |\n| [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) | `21.0.6` | `21.2.0` |\n| [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) | `21.0.6` | `21.2.0` |\n| [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) | `21.0.6` | `21.2.0` |\n| [@angular/localize](https://github.com/angular/angular) | `21.0.6` | `21.2.0` |\n| [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) | `21.0.6` | `21.2.0` |\n| [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) | `21.0.6` | `21.2.0` |\n| [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) | `21.0.6` | `21.2.0` |\n| [@ng-select/ng-select](https://github.com/ng-select/ng-select) | `21.1.3` | `21.4.0` |\n| [ngx-ui-tour-ng-bootstrap](https://github.com/hakimio/ngx-ui-tour) | `17.0.1` | `18.0.0` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `20.0.0` | `21.0.3` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `20.0.0` | `21.0.3` |\n| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `21.0.4` | `21.2.0` |\n| [@angular-devkit/core](https://github.com/angular/angular-cli) | `21.0.4` | `21.2.0` |\n| [@angular-devkit/schematics](https://github.com/angular/angular-cli) | `21.0.4` | `21.2.0` |\n| [@angular-eslint/builder](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/builder) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/eslint-plugin](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/eslint-plugin-template](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin-template) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/schematics](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/schematics) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/template-parser](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/template-parser) | `21.1.0` | `21.2.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `21.0.4` | `21.2.0` |\n| [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) | `21.0.6` | `21.2.0` |\n\n\nUpdates `@angular/cdk` from 21.0.5 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8c4526935ef7e960ed4245a4621d41065ba34e3b\"\u003e\u003cimg src=\"https://img.shields.io/badge/8c4526935e-fix-green\" alt=\"fix - 8c4526935e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e expose strong focus indicator structural styles (\u003ca href=\"https://redirect.github.com/angular/components/issues/32808\"\u003e#32808\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/7fe308114829c4ce454cc247e59e59387ee7fd17\"\u003e\u003cimg src=\"https://img.shields.io/badge/7fe3081148-fix-green\" alt=\"fix - 7fe3081148\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e drop dependency on NgClass (\u003ca href=\"https://redirect.github.com/angular/components/issues/32810\"\u003e#32810\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/cd5209e9f59c8bd31de29d03fd743452d8ae3d03\"\u003e\u003cimg src=\"https://img.shields.io/badge/cd5209e9f5-fix-green\" alt=\"fix - cd5209e9f5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eportal:\u003c/strong\u003e allow bindings to be passed to component portal (\u003ca href=\"https://redirect.github.com/angular/components/issues/32814\"\u003e#32814\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e397ecbcfad4e85fde8d116faf5caa80dcddca45\"\u003e\u003cimg src=\"https://img.shields.io/badge/e397ecbcfa-fix-green\" alt=\"fix - e397ecbcfa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e remove string-based DI tokens (\u003ca href=\"https://redirect.github.com/angular/components/issues/32677\"\u003e#32677\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/31ff7f26b5dd08c1d48dc5ebb8f1a9ba57a2dc9c\"\u003e\u003cimg src=\"https://img.shields.io/badge/31ff7f26b5-fix-green\" alt=\"fix - 31ff7f26b5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d030725f462d93bbca9918f153a48b5631ef0476\"\u003e\u003cimg src=\"https://img.shields.io/badge/d030725f46-fix-green\" alt=\"fix - d030725f46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.2.0-rc.0\u003c/h2\u003e\n\u003cp\u003eNo release notes provided.\u003c/p\u003e\n\u003ch2\u003e21.2.0-next.5\u003c/h2\u003e\n\u003ch3\u003egoogle-maps\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0870786036286c3b0d3485cb31098afdf22c0350\"\u003e\u003cimg src=\"https://img.shields.io/badge/0870786036-fix-green\" alt=\"fix - 0870786036\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix mismatch in clusterer types (\u003ca href=\"https://redirect.github.com/angular/components/issues/32778\"\u003e#32778\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f5c586925eb9a1cc00a9b2e22860be1f69ef9184\"\u003e\u003cimg src=\"https://img.shields.io/badge/f5c586925e-fix-green\" alt=\"fix - f5c586925e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e disable position locking (\u003ca href=\"https://redirect.github.com/angular/components/issues/32772\"\u003e#32772\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/b15b48df980b1f86885d4d25fdc8ba58b2bac62b\"\u003e\u003cimg src=\"https://img.shields.io/badge/b15b48df98-fix-green\" alt=\"fix - b15b48df98\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e no nodes focusable if data is replaced (\u003ca href=\"https://redirect.github.com/angular/components/issues/32781\"\u003e#32781\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c57e6a1545d79d6ad515082fc89f0dfb5cb1ab8f\"\u003e\u003cimg src=\"https://img.shields.io/badge/c57e6a1545-fix-green\" alt=\"fix - c57e6a1545\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e fix autocomplete examples and add comments explaining combobox selection behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32714\"\u003e#32714\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.2.0-next.4\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4ff346bbb56bb8f6b117c9d03b6f80eac32bc2f8\"\u003e\u003cimg src=\"https://img.shields.io/badge/4ff346bbb-fix-green\" alt=\"fix - 4ff346bbb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eradio:\u003c/strong\u003e hide empty labels (\u003ca href=\"https://redirect.github.com/angular/components/issues/32754\"\u003e#32754\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/bee55117c674ac1ab3ec44acc624e92d1f960e14\"\u003e\u003cimg src=\"https://img.shields.io/badge/bee55117c-fix-green\" alt=\"fix - bee55117c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eslide-toggle:\u003c/strong\u003e overly broad selector (\u003ca href=\"https://redirect.github.com/angular/components/issues/32740\"\u003e#32740\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/06750e02e42283f7cdf84772da76ef3d9426b5ab\"\u003e\u003cimg src=\"https://img.shields.io/badge/06750e02e-fix-green\" alt=\"fix - 06750e02e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e do not block events to other overlays\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/70f8b6aac471a20dcc8f51da7aefdc930469b185\"\u003e\u003cimg src=\"https://img.shields.io/badge/70f8b6aac-perf-orange\" alt=\"perf - 70f8b6aac\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e performance when selecting in a large grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32766\"\u003e#32766\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 \u0026quot;plastic-lion\u0026quot; (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/31ff7f26b5dd08c1d48dc5ebb8f1a9ba57a2dc9c\"\u003e31ff7f26b5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d030725f462d93bbca9918f153a48b5631ef0476\"\u003ed030725f46\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/cd5209e9f59c8bd31de29d03fd743452d8ae3d03\"\u003ecd5209e9f5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eportal:\u003c/strong\u003e allow bindings to be passed to component portal (\u003ca href=\"https://redirect.github.com/angular/components/pull/32814\"\u003e#32814\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e397ecbcfad4e85fde8d116faf5caa80dcddca45\"\u003ee397ecbcfa\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e remove string-based DI tokens (\u003ca href=\"https://redirect.github.com/angular/components/pull/32677\"\u003e#32677\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8c4526935ef7e960ed4245a4621d41065ba34e3b\"\u003e8c4526935e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e expose strong focus indicator structural styles (\u003ca href=\"https://redirect.github.com/angular/components/pull/32808\"\u003e#32808\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/7fe308114829c4ce454cc247e59e59387ee7fd17\"\u003e7fe3081148\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e drop dependency on NgClass (\u003ca href=\"https://redirect.github.com/angular/components/pull/32810\"\u003e#32810\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.1.6 \u0026quot;plastic-monkey\u0026quot; (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/50c34e6ef314177cdd725a5b0c3177b65cc2809a\"\u003e50c34e6ef3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e Adjust AutoComplete examples to properly announce no results text (\u003ca href=\"https://redirect.github.com/angular/components/pull/32786\"\u003e#32786\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.1.5 \u0026quot;chlorine-car\u0026quot; (2026-02-18)\u003c/h1\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/017caa3be77563aafa7fe2d964172559bfc7874b\"\u003e017caa3be7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e fix autocomplete examples and add comments explaining combobox selection behavior (\u003ca href=\"https://redirect.github.com/angular/components/pull/32714\"\u003e#32714\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c825fa208d0313429321dc66d680f09378488399\"\u003ec825fa208d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e no nodes focusable if data is replaced (\u003ca href=\"https://redirect.github.com/angular/components/pull/32781\"\u003e#32781\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8f412ec5b72b9fe6e8cb9be8956eb126a5f697c3\"\u003e8f412ec5b7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e disable position locking (\u003ca href=\"https://redirect.github.com/angular/components/pull/32772\"\u003e#32772\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003egoogle-maps\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a73a70d291f0dc8229241cd45ec8775b392cdc86\"\u003ea73a70d291\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix mismatch in clusterer types (\u003ca href=\"https://redirect.github.com/angular/components/pull/32778\"\u003e#32778\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/37cffba9ef92e9aade70984abe037fee58666e0a\"\u003e\u003ccode\u003e37cffba\u003c/code\u003e\u003c/a\u003e release: cut the v21.2.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/eeacb0ecacf7632560486f67ebd1e70aef4ec17a\"\u003e\u003ccode\u003eeeacb0e\u003c/code\u003e\u003c/a\u003e ci: remove mmalerba from code reviewers (\u003ca href=\"https://redirect.github.com/angular/components/issues/32824\"\u003e#32824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/cd5209e9f59c8bd31de29d03fd743452d8ae3d03\"\u003e\u003ccode\u003ecd5209e\u003c/code\u003e\u003c/a\u003e fix(cdk/portal): allow bindings to be passed to component portal (\u003ca href=\"https://redirect.github.com/angular/components/issues/32814\"\u003e#32814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/7fe308114829c4ce454cc247e59e59387ee7fd17\"\u003e\u003ccode\u003e7fe3081\u003c/code\u003e\u003c/a\u003e fix(material/datepicker): drop dependency on NgClass (\u003ca href=\"https://redirect.github.com/angular/components/issues/32810\"\u003e#32810\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ef2f1cb303a04e1d127fbc15819fff843ccd4749\"\u003e\u003ccode\u003eef2f1cb\u003c/code\u003e\u003c/a\u003e build: set up schematics for v22 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32806\"\u003e#32806\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/8c4526935ef7e960ed4245a4621d41065ba34e3b\"\u003e\u003ccode\u003e8c45269\u003c/code\u003e\u003c/a\u003e fix(material/core): expose strong focus indicator structural styles (\u003ca href=\"https://redirect.github.com/angular/components/issues/32808\"\u003e#32808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ddd5114e779bb6686f0450caf350218ab3fb1543\"\u003e\u003ccode\u003eddd5114\u003c/code\u003e\u003c/a\u003e build: update dependencies and resolve breaking change (\u003ca href=\"https://redirect.github.com/angular/components/issues/32799\"\u003e#32799\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/f9e7149dbc42f2dc23f99bed11722645807dfe70\"\u003e\u003ccode\u003ef9e7149\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/32802\"\u003e#32802\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/e94e19c79533768463da3b3fa6925c8c0763813c\"\u003e\u003ccode\u003ee94e19c\u003c/code\u003e\u003c/a\u003e build: update pnpm to v10.30.0 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32804\"\u003e#32804\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/1c14bfbc30383293ca0735245c8b7d628678f69f\"\u003e\u003ccode\u003e1c14bfb\u003c/code\u003e\u003c/a\u003e fix(aria/combobox): Adjust AutoComplete examples to properly announce no resu...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/v21.0.5...v21.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/common` from 21.0.6 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): Highlight function calls with optional chaining (\u003ca href=\"https://github.com/angular/angular/commit/4f8d3995f082929d1ef4163dcb4373d3ef7a67cf\"\u003e4f8d3995f0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add linked editing ranges for HTML tag synchronization (\u003ca href=\"https://github.com/angular/angular/commit/8c21866f49ff74344551395ae0a5df1841d54c0d\"\u003e8c21866f49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(vscode-extension): support highlighting for class bindings with brackets (\u003ca href=\"https://github.com/angular/angular/commit/01ed57f297d6713724dfaedc9520f80471f37c10\"\u003e01ed57f297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add JSON schema for angularCompilerOptions (\u003ca href=\"https://github.com/angular/angular/commit/496967e7b13dfe1ebdde69724cd62880914beb60\"\u003e496967e7b1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(language-service): Detect local project version on creation (\u003ca href=\"https://github.com/angular/angular/commit/8a7cbd46685874f4500c52629d09c5f7fd309080\"\u003e8a7cbd4668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Support client-side file watching via \u003ccode\u003eonDidChangeWatchedFiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/commit/6fb39d9b62cbb634e95ec00fe5ef85d84da3bdbd\"\u003e6fb39d9b62\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add completions and hover info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/ebc90c26f5ff1ba1e0ca9b775a44e301ebfb9473\"\u003eebc90c26f5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add quick info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/573aadef7eb8b6b5e83b82a16f95d2a556f27c01\"\u003e573aadef7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add folding range support for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/26fd0839c32d2ebeaa5e3ecc10ed70ab9ca17749\"\u003e26fd0839c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003cimg src=\"https://img.shields.io/badge/18003a33bb-feat-blue\" alt=\"feat - 18003a33bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e\u003cimg src=\"https://img.shields.io/badge/8bbe6dc46c-feat-blue\" alt=\"feat - 8bbe6dc46c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003cimg src=\"https://img.shields.io/badge/51cc914807-feat-blue\" alt=\"feat - 51cc914807\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e\u003cimg src=\"https://img.shields.io/badge/72534e2a34-feat-blue\" alt=\"feat - 72534e2a34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003cimg src=\"https://img.shields.io/badge/95b3f37d4a-feat-blue\" alt=\"feat - 95b3f37d4a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e\u003cimg src=\"https://img.shields.io/badge/04ba09a8d9-feat-blue\" alt=\"feat - 04ba09a8d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce80136e7b-fix-green\" alt=\"fix - ce80136e7b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e\u003cimg src=\"https://img.shields.io/badge/3242a61bae-fix-green\" alt=\"fix - 3242a61bae\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e\u003cimg src=\"https://img.shields.io/badge/473dd3e1cb-fix-green\" alt=\"fix - 473dd3e1cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003e\u003cimg src=\"https://img.shields.io/badge/a904d9f77b-fix-green\" alt=\"fix - a904d9f77b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ea6dfc6c9-fix-green\" alt=\"fix - 2ea6dfc6c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d5210c9fe-feat-blue\" alt=\"feat - 8d5210c9fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d2498910-feat-blue\" alt=\"feat - 92d2498910\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea2016a6dc-feat-blue\" alt=\"feat - ea2016a6dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e\u003cimg src=\"https://img.shields.io/badge/81cabc1477-feat-blue\" alt=\"feat - 81cabc1477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ba9b7ac50-feat-blue\" alt=\"feat - 1ba9b7ac50\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003e\u003cimg src=\"https://img.shields.io/badge/d9923b72a2-feat-blue\" alt=\"feat - d9923b72a2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003e\u003cimg src=\"https://img.shields.io/badge/a7e8abbb7e-fix-green\" alt=\"fix - a7e8abbb7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e\u003cimg src=\"https://img.shields.io/badge/0806ee3826-fix-green\" alt=\"fix - 0806ee3826\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003e\u003cimg src=\"https://img.shields.io/badge/ed78fa05c7-fix-green\" alt=\"fix - ed78fa05c7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003e\u003cimg src=\"https://img.shields.io/badge/f56bb07d83-feat-blue\" alt=\"feat - f56bb07d83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba009b6031-feat-blue\" alt=\"feat - ba009b6031\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e\u003cimg src=\"https://img.shields.io/badge/22afbb2f36-feat-blue\" alt=\"feat - 22afbb2f36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e18003a33bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e8bbe6dc46c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e51cc914807\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e72534e2a34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e95b3f37d4a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e04ba09a8d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003ece80136e7b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e3242a61bae\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e473dd3e1cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003ea904d9f77b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e2ea6dfc6c9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e8d5210c9fe\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e92d2498910\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003eea2016a6dc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e81cabc1477\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e1ba9b7ac50\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003ed9923b72a2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003ea7e8abbb7e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e0806ee3826\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003eed78fa05c7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003ef56bb07d83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003eba009b6031\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e22afbb2f36\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95c386469c7a2f09dd731601c2061bdb10d25717\"\u003e95c386469c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd passing focus options to form field\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95ecce8334299defe55fb2b74264e5258ffd137c\"\u003e95ecce8334\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eallow setting submit options at form-level\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ebae211add37700858adeb8fc5d87bf503a59721\"\u003eebae211add\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce parse errors in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3937afc3167ce409eebb06d91d5fb122eea4e33d\"\u003e3937afc316\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce SignalFormControl for Reactive Forms compatibility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/30f09147545b67185f93efb9796e37c1db76733a\"\u003e30f0914754\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport binding null to number input (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/dd208ca2595258fcd1e289374f812ce0b56c7011\"\u003edd208ca259\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eupdate submit function to accept options object\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/27397b3f4f3182ce00d6e2f8690285c316e2a274\"\u003e27397b3f4f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eclear parse errors when model updates (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/63d80057039928b3e878b59c1fe6b93ef1c6b701\"\u003e63d8005703\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve custom-control focus context in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/631f60d1f9be72cb68330308a6ff18cc195babb8\"\u003e631f60d1f9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve parse errors when parse returns value\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/adfb83146b0c149734f43961563b389e00cc1d85\"\u003eadfb83146b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esimplify design of parse errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/fb05fc86d0f12ffafd94c7c1420118d8a79f7e59\"\u003efb05fc86d0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esort error summary by DOM order\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/70e4c7fbabb45277cf76ee138c0be275beec7919\"\u003e\u003ccode\u003e70e4c7f\u003c/code\u003e\u003c/a\u003e refactor(common): log a warning when a KeyValuePipe receives a signal\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/2eeeabb7606900ad4fe8e3370d73f6add985f35d\"\u003e\u003ccode\u003e2eeeabb\u003c/code\u003e\u003c/a\u003e fix(common): fix LCP image detection with duplicate URLs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3c4deaa52bb42130f90126f55786331aa8b4f7dc\"\u003e\u003ccode\u003e3c4deaa\u003c/code\u003e\u003c/a\u003e refactor(common): log a warning when a JsonPipe receives a signal\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a8aab6480962f18ff0b28b5e46358ff8d43745c9\"\u003e\u003ccode\u003ea8aab64\u003c/code\u003e\u003c/a\u003e refactor(core): remove outdated TODO comments referencing TypeScript 2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ddfc833df9e40d9c427c0300a41e195e5e398767\"\u003e\u003ccode\u003eddfc833\u003c/code\u003e\u003c/a\u003e refactor(common): improve image directive typings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003ccode\u003e18003a3\u003c/code\u003e\u003c/a\u003e feat(common): add an 'outlet' injector option for ngTemplateOutlet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/0c6eb60c8629c02fc342f849f4bb09567cd3f7dd\"\u003e\u003ccode\u003e0c6eb60\u003c/code\u003e\u003c/a\u003e test(http): remove zone-based testing utilities\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003ccode\u003e51cc914\u003c/code\u003e\u003c/a\u003e feat(common): support height in ImageLoaderConfig and built-in loaders\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/c6d75002030875a3e6b9460e7317ca3a9ae68179\"\u003e\u003ccode\u003ec6d7500\u003c/code\u003e\u003c/a\u003e test(common): remove zone-based testing utilities\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/cb1163e5e5434d5d96897180f6f0eb86d3992964\"\u003e\u003ccode\u003ecb1163e\u003c/code\u003e\u003c/a\u003e fix(http): correctly parse ArrayBuffer and Blob in transfer cache\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/v21.2.0/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/compiler` from 21.0.6 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): Highlight function calls with optional chaining (\u003ca href=\"https://github.com/angular/angular/commit/4f8d3995f082929d1ef4163dcb4373d3ef7a67cf\"\u003e4f8d3995f0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add linked editing ranges for HTML tag synchronization (\u003ca href=\"https://github.com/angular/angular/commit/8c21866f49ff74344551395ae0a5df1841d54c0d\"\u003e8c21866f49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(vscode-extension): support highlighting for class bindings with brackets (\u003ca href=\"https://github.com/angular/angular/commit/01ed57f297d6713724dfaedc9520f80471f37c10\"\u003e01ed57f297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add JSON schema for angularCompilerOptions (\u003ca href=\"https://github.com/angular/angular/commit/496967e7b13dfe1ebdde69724cd62880914beb60\"\u003e496967e7b1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(language-service): Detect local project version on creation (\u003ca href=\"https://github.com/angular/angular/commit/8a7cbd46685874f4500c52629d09c5f7fd309080\"\u003e8a7cbd4668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Support client-side file watching via \u003ccode\u003eonDidChangeWatchedFiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/commit/6fb39d9b62cbb634e95ec00fe5ef85d84da3bdbd\"\u003e6fb39d9b62\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add completions and hover info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/ebc90c26f5ff1ba1e0ca9b775a44e301ebfb9473\"\u003eebc90c26f5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add quick info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/573aadef7eb8b6b5e83b82a16f95d2a556f27c01\"\u003e573aadef7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add folding range support for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/26fd0839c32d2ebeaa5e3ecc10ed70ab9ca17749\"\u003e26fd0839c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003cimg src=\"https://img.shields.io/badge/18003a33bb-feat-blue\" alt=\"feat - 18003a33bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e\u003cimg src=\"https://img.shields.io/badge/8bbe6dc46c-feat-blue\" alt=\"feat - 8bbe6dc46c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003cimg src=\"https://img.shields.io/badge/51cc914807-feat-blue\" alt=\"feat - 51cc914807\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e\u003cimg src=\"https://img.shields.io/badge/72534e2a34-feat-blue\" alt=\"feat - 72534e2a34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003cimg src=\"https://img.shields.io/badge/95b3f37d4a-feat-blue\" alt=\"feat - 95b3f37d4a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e\u003cimg src=\"https://img.shields.io/badge/04ba09a8d9-feat-blue\" alt=\"feat - 04ba09a8d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce80136e7b-fix-green\" alt=\"fix - ce80136e7b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e\u003cimg src=\"https://img.shields.io/badge/3242a61bae-fix-green\" alt=\"fix - 3242a61bae\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e\u003cimg src=\"https://img.shields.io/badge/473dd3e1cb-fix-green\" alt=\"fix - 473dd3e1cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003e\u003cimg src=\"https://img.shields.io/badge/a904d9f77b-fix-green\" alt=\"fix - a904d9f77b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ea6dfc6c9-fix-green\" alt=\"fix - 2ea6dfc6c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d5210c9fe-feat-blue\" alt=\"feat - 8d5210c9fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d2498910-feat-blue\" alt=\"feat - 92d2498910\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea2016a6dc-feat-blue\" alt=\"feat - ea2016a6dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e\u003cimg src=\"https://img.shields.io/badge/81cabc1477-feat-blue\" alt=\"feat - 81cabc1477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ba9b7ac50-feat-blue\" alt=\"feat - 1ba9b7ac50\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003e\u003cimg src=\"https://img.shields.io/badge/d9923b72a2-feat-blue\" alt=\"feat - d9923b72a2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003e\u003cimg src=\"https://img.shields.io/badge/a7e8abbb7e-fix-green\" alt=\"fix - a7e8abbb7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e\u003cimg src=\"https://img.shields.io/badge/0806ee3826-fix-green\" alt=\"fix - 0806ee3826\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003e\u003cimg src=\"https://img.shields.io/badge/ed78fa05c7-fix-green\" alt=\"fix - ed78fa05c7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003e\u003cimg src=\"https://img.shields.io/badge/f56bb07d83-feat-blue\" alt=\"feat - f56bb07d83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba009b6031-feat-blue\" alt=\"feat - ba009b6031\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e\u003cimg src=\"https://img.shields.io/badge/22afbb2f36-feat-blue\" alt=\"feat - 22afbb2f36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e18003a33bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e8bbe6dc46c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e51cc914807\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e72534e2a34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e95b3f37d4a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e04ba09a8d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003ece80136e7b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e3242a61bae\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e473dd3e1cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003ea904d9f77b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e2ea6dfc6c9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e8d5210c9fe\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e92d2498910\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003eea2016a6dc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e81cabc1477\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e1ba9b7ac50\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003ed9923b72a2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003ea7e8abbb7e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e0806ee3826\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003eed78fa05c7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003ef56bb07d83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003eba009b6031\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e22afbb2f36\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95c386469c7a2f09dd731601c2061bdb10d25717\"\u003e95c386469c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd passing focus options to form field\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95ecce8334299defe55fb2b74264e5258ffd137c\"\u003e95ecce8334\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eallow setting submit options at form-level\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ebae211add37700858adeb8fc5d87bf503a59721\"\u003eebae211add\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce parse errors in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3937afc3167ce409eebb06d91d5fb122eea4e33d\"\u003e3937afc316\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce SignalFormControl for Reactive Forms compatibility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/30f09147545b67185f93efb9796e37c1db76733a\"\u003e30f0914754\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport binding null to number input (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/dd208ca2595258fcd1e289374f812ce0b56c7011\"\u003edd208ca259\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eupdate submit function to accept options object\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/27397b3f4f3182ce00d6e2f8690285c316e2a274\"\u003e27397b3f4f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eclear parse errors when model updates (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/63d80057039928b3e878b59c1fe6b93ef1c6b701\"\u003e63d8005703\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve custom-control focus context in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/631f60d1f9be72cb68330308a6ff18cc195babb8\"\u003e631f60d1f9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve parse errors when parse returns value\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/adfb83146b0c149734f43961563b389e00cc1d85\"\u003eadfb83146b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esimplify design of parse errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/fb05fc86d0f12ffafd94c7c1420118d8a79f7e59\"\u003efb05fc86d0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esort error summary by DOM order\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003ccode\u003e95b3f37\u003c/code\u003e\u003c/a\u003e feat(compiler): Exhaustive checks for switch blocks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9c5658adb1146b24ebf31fef534c4bbae1ced548\"\u003e\u003ccode\u003e9c5658a\u003c/code\u003e\u003c/a\u003e refactor(compiler): clean up pipeline compatibility distinction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e0d783e5b5a256c0aa2fb1d3e008677c0603382\"\u003e\u003ccode\u003e6e0d783\u003c/code\u003e\u003c/a\u003e refactor(compiler): Add info about unclosed element.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/06d94ac0caacce20d5afbdb1e940911bdc500d78\"\u003e\u003ccode\u003e06d94ac\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(compiler): Add info about unclosed element.\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/097208454bb0d5ebaad701a991125d2a33d1f79b\"\u003e\u003ccode\u003e0972084\u003c/code\u003e\u003c/a\u003e refactor(compiler): Add info about unclosed element.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b386f95bd05c6e9efdc00050b1e9ac28421e5f44\"\u003e\u003ccode\u003eb386f95\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(compiler): Add info about unclosed element.\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9b69e296032a0c1572356c2b9f7b74fad6290052\"\u003e\u003ccode\u003e9b69e29\u003c/code\u003e\u003c/a\u003e refactor(compiler): Add info about unclosed element.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/11834a42745e62830a83a4c14eea9d203baec680\"\u003e\u003ccode\u003e11834a4\u003c/code\u003e\u003c/a\u003e fix(compiler): add geolocation element to schema\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/11767cabe48606a1f575d50b8af79b8bbb35a852\"\u003e\u003ccode\u003e11767ca\u003c/code\u003e\u003c/a\u003e build: update Jasmine to 6.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a1441a432d508281e7c7fe8e03f92628a77a5685\"\u003e\u003ccode\u003ea1441a4\u003c/code\u003e\u003c/a\u003e refactor(compiler): remove zone-based testing utilities\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/v21.2.0/packages/compiler\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/core` from 21.0.6 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): Highlight function calls with optional chaining (\u003ca href=\"https://github.com/angular/angular/commit/4f8d3995f082929d1ef4163dcb4373d3ef7a67cf\"\u003e4f8d3995f0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add linked editing ranges for HTML tag synchronization (\u003ca href=\"https://github.com/angular/angular/commit/8c21866f49ff74344551395ae0a5df1841d54c0d\"\u003e8c21866f49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(vscode-extension): support highlighting for class bindings with brackets (\u003ca href=\"https://github.com/angular/angular/commit/01ed57f297d6713724dfaedc9520f80471f37c10\"\u003e01ed57f297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add JSON schema for angularCompilerOptions (\u003ca href=\"https://github.com/angular/angular/commit/496967e7b13dfe1ebdde69724cd62880914beb60\"\u003e496967e7b1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(language-service): Detect local project version on creation (\u003ca href=\"https://github.com/angular/angular/commit/8a7cbd46685874f4500c52629d09c5f7fd309080\"\u003e8a7cbd4668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Support client-side file watching via \u003ccode\u003eonDidChangeWatchedFiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/commit/6fb39d9b62cbb634e95ec00fe5ef85d84da3bdbd\"\u003e6fb39d9b62\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add completions and hover info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/ebc90c26f5ff1ba1e0ca9b775a44e301ebfb9473\"\u003eebc90c26f5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add quick info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/573aadef7eb8b6b5e83b82a16f95d2a556f27c01\"\u003e573aadef7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add folding range support for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/26fd0839c32d2ebeaa5e3ecc10ed70ab9ca17749\"\u003e26fd0839c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003cimg src=\"https://img.shields.io/badge/18003a33bb-feat-blue\" alt=\"feat - 18003a33bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e\u003cimg src=\"https://img.shields.io/badge/8bbe6dc46c-feat-blue\" alt=\"feat - 8bbe6dc46c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003cimg src=\"https://img.shields.io/badge/51cc914807-feat-blue\" alt=\"feat - 51cc914807\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e\u003cimg src=\"https://img.shields.io/badge/72534e2a34-feat-blue\" alt=\"feat - 72534e2a34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003cimg src=\"https://img.shields.io/badge/95b3f37d4a-feat-blue\" alt=\"feat - 95b3f37d4a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e\u003cimg src=\"https://img.shields.io/badge/04ba09a8d9-feat-blue\" alt=\"feat - 04ba09a8d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce80136e7b-fix-green\" alt=\"fix - ce80136e7b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e\u003cimg src=\"https://img.shields.io/badge/3242a61bae-fix-green\" alt=\"fix - 3242a61bae\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e\u003cimg src=\"https://img.shields.io/badge/473dd3e1cb-fix-green\" alt=\"fix - 473dd3e1cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003e\u003cimg src=\"https://img.shields.io/badge/a904d9f77b-fix-green\" alt=\"fix - a904d9f77b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ea6dfc6c9-fix-green\" alt=\"fix - 2ea6dfc6c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d5210c9fe-feat-blue\" alt=\"feat - 8d5210c9fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d2498910-feat-blue\" alt=\"feat - 92d2498910\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea2016a6dc-feat-blue\" alt=\"feat - ea2016a6dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e\u003cimg src=\"https://img.shields.io/badge/81cabc1477-feat-blue\" alt=\"feat - 81cabc1477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ba9b7ac50-feat-blue\" alt=\"feat - 1ba9b7ac50\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003e\u003cimg src=\"https://img.shields.io/badge/d9923b72a2-feat-blue\" alt=\"feat - d9923b72a2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003e\u003cimg src=\"https://img.shields.io/badge/a7e8abbb7e-fix-green\" alt=\"fix - a7e8abbb7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e\u003cimg src=\"https://img.shields.io/badge/0806ee3826-fix-green\" alt=\"fix - 0806ee3826\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003e\u003cimg src=\"https://img.shields.io/badge/ed78fa05c7-fix-green\" alt=\"fix - ed78fa05c7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003e\u003cimg src=\"https://img.shields.io/badge/f56bb07d83-feat-blue\" alt=\"feat - f56bb07d83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba009b6031-feat-blue\" alt=\"feat - ba009b6031\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e\u003cimg src=\"https://img.shields.io/badge/22afbb2f36-feat-blue\" alt=\"feat - 22afbb2f36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e18003a33bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e8bbe6dc46c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e51cc914807\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e72534e2a34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e95b3f37d4a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e04ba09a8d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003ece80136e7b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e3242a61bae\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e473dd3e1cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/...\n\n_Description has been truncated_","html_url":"https://github.com/frankykevin/paperless-ngx/pull/138","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/frankykevin%2Fpaperless-ngx/issues/138","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/138/packages"}},{"old_version":"21.0.0-beta.1","new_version":"21.0.3","update_type":"patch","path":"/src-ui","pr_created_at":"2026-02-28T21:33:53.000Z","version_change":"21.0.0-beta.1 → 21.0.3","issue":{"uuid":"4005467652","node_id":"PR_kwDORbXkoM7HCyv8","number":9,"state":"open","title":"Chore(deps): Bump the frontend-angular-dependencies group in /src-ui with 23 updates","user":"dependabot[bot]","labels":["dependencies","non-trivial","frontend"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-02-28T21:33:53.000Z","updated_at":"2026-02-28T21:34:25.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Chore(deps): Bump","group_name":"frontend-angular-dependencies","update_count":23,"packages":[{"name":"@angular/cdk","old_version":"21.0.6","new_version":"21.2.0","repository_url":"https://github.com/angular/components"},{"name":"@angular/common","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/compiler","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/core","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/forms","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/localize","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser-dynamic","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular/router","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"},{"name":"@ng-select/ng-select","old_version":"21.1.4","new_version":"21.4.0","repository_url":"https://github.com/ng-select/ng-select"},{"name":"ngx-ui-tour-ng-bootstrap","old_version":"17.0.1","new_version":"18.0.0","repository_url":"https://github.com/hakimio/ngx-ui-tour"},{"name":"@angular-builders/custom-webpack","old_version":"21.0.0-beta.1","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"21.0.0-beta.1","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/core","old_version":"21.0.5","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/schematics","old_version":"21.0.5","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-eslint/builder","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin-template","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/schematics","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/template-parser","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular/build","old_version":"21.0.5","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/cli","old_version":"21.0.5","new_version":"21.2.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/compiler-cli","old_version":"21.0.8","new_version":"21.2.0","repository_url":"https://github.com/angular/angular"}],"path":"/src-ui","ecosystem":"npm"},"body":"Bumps the frontend-angular-dependencies group in /src-ui with 23 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/cdk](https://github.com/angular/components) | `21.0.6` | `21.2.0` |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `21.0.8` | `21.2.0` |\n| [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) | `21.0.8` | `21.2.0` |\n| [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) | `21.0.8` | `21.2.0` |\n| [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) | `21.0.8` | `21.2.0` |\n| [@angular/localize](https://github.com/angular/angular) | `21.0.8` | `21.2.0` |\n| [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) | `21.0.8` | `21.2.0` |\n| [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) | `21.0.8` | `21.2.0` |\n| [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) | `21.0.8` | `21.2.0` |\n| [@ng-select/ng-select](https://github.com/ng-select/ng-select) | `21.1.4` | `21.4.0` |\n| [ngx-ui-tour-ng-bootstrap](https://github.com/hakimio/ngx-ui-tour) | `17.0.1` | `18.0.0` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `21.0.0-beta.1` | `21.0.3` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `21.0.0-beta.1` | `21.0.3` |\n| [@angular-devkit/core](https://github.com/angular/angular-cli) | `21.0.5` | `21.2.0` |\n| [@angular-devkit/schematics](https://github.com/angular/angular-cli) | `21.0.5` | `21.2.0` |\n| [@angular-eslint/builder](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/builder) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/eslint-plugin](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/eslint-plugin-template](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin-template) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/schematics](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/schematics) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/template-parser](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/template-parser) | `21.1.0` | `21.2.0` |\n| [@angular/build](https://github.com/angular/angular-cli) | `21.0.5` | `21.2.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `21.0.5` | `21.2.0` |\n| [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) | `21.0.8` | `21.2.0` |\n\nUpdates `@angular/cdk` from 21.0.6 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8c4526935ef7e960ed4245a4621d41065ba34e3b\"\u003e\u003cimg src=\"https://img.shields.io/badge/8c4526935e-fix-green\" alt=\"fix - 8c4526935e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e expose strong focus indicator structural styles (\u003ca href=\"https://redirect.github.com/angular/components/issues/32808\"\u003e#32808\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/7fe308114829c4ce454cc247e59e59387ee7fd17\"\u003e\u003cimg src=\"https://img.shields.io/badge/7fe3081148-fix-green\" alt=\"fix - 7fe3081148\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e drop dependency on NgClass (\u003ca href=\"https://redirect.github.com/angular/components/issues/32810\"\u003e#32810\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/cd5209e9f59c8bd31de29d03fd743452d8ae3d03\"\u003e\u003cimg src=\"https://img.shields.io/badge/cd5209e9f5-fix-green\" alt=\"fix - cd5209e9f5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eportal:\u003c/strong\u003e allow bindings to be passed to component portal (\u003ca href=\"https://redirect.github.com/angular/components/issues/32814\"\u003e#32814\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e397ecbcfad4e85fde8d116faf5caa80dcddca45\"\u003e\u003cimg src=\"https://img.shields.io/badge/e397ecbcfa-fix-green\" alt=\"fix - e397ecbcfa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e remove string-based DI tokens (\u003ca href=\"https://redirect.github.com/angular/components/issues/32677\"\u003e#32677\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/31ff7f26b5dd08c1d48dc5ebb8f1a9ba57a2dc9c\"\u003e\u003cimg src=\"https://img.shields.io/badge/31ff7f26b5-fix-green\" alt=\"fix - 31ff7f26b5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d030725f462d93bbca9918f153a48b5631ef0476\"\u003e\u003cimg src=\"https://img.shields.io/badge/d030725f46-fix-green\" alt=\"fix - d030725f46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.2.0-rc.0\u003c/h2\u003e\n\u003cp\u003eNo release notes provided.\u003c/p\u003e\n\u003ch2\u003e21.2.0-next.5\u003c/h2\u003e\n\u003ch3\u003egoogle-maps\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0870786036286c3b0d3485cb31098afdf22c0350\"\u003e\u003cimg src=\"https://img.shields.io/badge/0870786036-fix-green\" alt=\"fix - 0870786036\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix mismatch in clusterer types (\u003ca href=\"https://redirect.github.com/angular/components/issues/32778\"\u003e#32778\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f5c586925eb9a1cc00a9b2e22860be1f69ef9184\"\u003e\u003cimg src=\"https://img.shields.io/badge/f5c586925e-fix-green\" alt=\"fix - f5c586925e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e disable position locking (\u003ca href=\"https://redirect.github.com/angular/components/issues/32772\"\u003e#32772\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/b15b48df980b1f86885d4d25fdc8ba58b2bac62b\"\u003e\u003cimg src=\"https://img.shields.io/badge/b15b48df98-fix-green\" alt=\"fix - b15b48df98\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e no nodes focusable if data is replaced (\u003ca href=\"https://redirect.github.com/angular/components/issues/32781\"\u003e#32781\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c57e6a1545d79d6ad515082fc89f0dfb5cb1ab8f\"\u003e\u003cimg src=\"https://img.shields.io/badge/c57e6a1545-fix-green\" alt=\"fix - c57e6a1545\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e fix autocomplete examples and add comments explaining combobox selection behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32714\"\u003e#32714\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.2.0-next.4\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4ff346bbb56bb8f6b117c9d03b6f80eac32bc2f8\"\u003e\u003cimg src=\"https://img.shields.io/badge/4ff346bbb-fix-green\" alt=\"fix - 4ff346bbb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eradio:\u003c/strong\u003e hide empty labels (\u003ca href=\"https://redirect.github.com/angular/components/issues/32754\"\u003e#32754\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/bee55117c674ac1ab3ec44acc624e92d1f960e14\"\u003e\u003cimg src=\"https://img.shields.io/badge/bee55117c-fix-green\" alt=\"fix - bee55117c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eslide-toggle:\u003c/strong\u003e overly broad selector (\u003ca href=\"https://redirect.github.com/angular/components/issues/32740\"\u003e#32740\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/06750e02e42283f7cdf84772da76ef3d9426b5ab\"\u003e\u003cimg src=\"https://img.shields.io/badge/06750e02e-fix-green\" alt=\"fix - 06750e02e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e do not block events to other overlays\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/70f8b6aac471a20dcc8f51da7aefdc930469b185\"\u003e\u003cimg src=\"https://img.shields.io/badge/70f8b6aac-perf-orange\" alt=\"perf - 70f8b6aac\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e performance when selecting in a large grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32766\"\u003e#32766\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 \u0026quot;plastic-lion\u0026quot; (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/31ff7f26b5dd08c1d48dc5ebb8f1a9ba57a2dc9c\"\u003e31ff7f26b5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d030725f462d93bbca9918f153a48b5631ef0476\"\u003ed030725f46\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e align output naming with styleguide\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/cd5209e9f59c8bd31de29d03fd743452d8ae3d03\"\u003ecd5209e9f5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eportal:\u003c/strong\u003e allow bindings to be passed to component portal (\u003ca href=\"https://redirect.github.com/angular/components/pull/32814\"\u003e#32814\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e397ecbcfad4e85fde8d116faf5caa80dcddca45\"\u003ee397ecbcfa\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e remove string-based DI tokens (\u003ca href=\"https://redirect.github.com/angular/components/pull/32677\"\u003e#32677\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8c4526935ef7e960ed4245a4621d41065ba34e3b\"\u003e8c4526935e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e expose strong focus indicator structural styles (\u003ca href=\"https://redirect.github.com/angular/components/pull/32808\"\u003e#32808\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/7fe308114829c4ce454cc247e59e59387ee7fd17\"\u003e7fe3081148\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e drop dependency on NgClass (\u003ca href=\"https://redirect.github.com/angular/components/pull/32810\"\u003e#32810\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.1.6 \u0026quot;plastic-monkey\u0026quot; (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/50c34e6ef314177cdd725a5b0c3177b65cc2809a\"\u003e50c34e6ef3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e Adjust AutoComplete examples to properly announce no results text (\u003ca href=\"https://redirect.github.com/angular/components/pull/32786\"\u003e#32786\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.1.5 \u0026quot;chlorine-car\u0026quot; (2026-02-18)\u003c/h1\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/017caa3be77563aafa7fe2d964172559bfc7874b\"\u003e017caa3be7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e fix autocomplete examples and add comments explaining combobox selection behavior (\u003ca href=\"https://redirect.github.com/angular/components/pull/32714\"\u003e#32714\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c825fa208d0313429321dc66d680f09378488399\"\u003ec825fa208d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e no nodes focusable if data is replaced (\u003ca href=\"https://redirect.github.com/angular/components/pull/32781\"\u003e#32781\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8f412ec5b72b9fe6e8cb9be8956eb126a5f697c3\"\u003e8f412ec5b7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e disable position locking (\u003ca href=\"https://redirect.github.com/angular/components/pull/32772\"\u003e#32772\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003egoogle-maps\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a73a70d291f0dc8229241cd45ec8775b392cdc86\"\u003ea73a70d291\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix mismatch in clusterer types (\u003ca href=\"https://redirect.github.com/angular/components/pull/32778\"\u003e#32778\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/37cffba9ef92e9aade70984abe037fee58666e0a\"\u003e\u003ccode\u003e37cffba\u003c/code\u003e\u003c/a\u003e release: cut the v21.2.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/eeacb0ecacf7632560486f67ebd1e70aef4ec17a\"\u003e\u003ccode\u003eeeacb0e\u003c/code\u003e\u003c/a\u003e ci: remove mmalerba from code reviewers (\u003ca href=\"https://redirect.github.com/angular/components/issues/32824\"\u003e#32824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/cd5209e9f59c8bd31de29d03fd743452d8ae3d03\"\u003e\u003ccode\u003ecd5209e\u003c/code\u003e\u003c/a\u003e fix(cdk/portal): allow bindings to be passed to component portal (\u003ca href=\"https://redirect.github.com/angular/components/issues/32814\"\u003e#32814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/7fe308114829c4ce454cc247e59e59387ee7fd17\"\u003e\u003ccode\u003e7fe3081\u003c/code\u003e\u003c/a\u003e fix(material/datepicker): drop dependency on NgClass (\u003ca href=\"https://redirect.github.com/angular/components/issues/32810\"\u003e#32810\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ef2f1cb303a04e1d127fbc15819fff843ccd4749\"\u003e\u003ccode\u003eef2f1cb\u003c/code\u003e\u003c/a\u003e build: set up schematics for v22 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32806\"\u003e#32806\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/8c4526935ef7e960ed4245a4621d41065ba34e3b\"\u003e\u003ccode\u003e8c45269\u003c/code\u003e\u003c/a\u003e fix(material/core): expose strong focus indicator structural styles (\u003ca href=\"https://redirect.github.com/angular/components/issues/32808\"\u003e#32808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ddd5114e779bb6686f0450caf350218ab3fb1543\"\u003e\u003ccode\u003eddd5114\u003c/code\u003e\u003c/a\u003e build: update dependencies and resolve breaking change (\u003ca href=\"https://redirect.github.com/angular/components/issues/32799\"\u003e#32799\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/f9e7149dbc42f2dc23f99bed11722645807dfe70\"\u003e\u003ccode\u003ef9e7149\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/32802\"\u003e#32802\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/e94e19c79533768463da3b3fa6925c8c0763813c\"\u003e\u003ccode\u003ee94e19c\u003c/code\u003e\u003c/a\u003e build: update pnpm to v10.30.0 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32804\"\u003e#32804\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/1c14bfbc30383293ca0735245c8b7d628678f69f\"\u003e\u003ccode\u003e1c14bfb\u003c/code\u003e\u003c/a\u003e fix(aria/combobox): Adjust AutoComplete examples to properly announce no resu...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/v21.0.6...v21.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/common` from 21.0.8 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): Highlight function calls with optional chaining (\u003ca href=\"https://github.com/angular/angular/commit/4f8d3995f082929d1ef4163dcb4373d3ef7a67cf\"\u003e4f8d3995f0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add linked editing ranges for HTML tag synchronization (\u003ca href=\"https://github.com/angular/angular/commit/8c21866f49ff74344551395ae0a5df1841d54c0d\"\u003e8c21866f49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(vscode-extension): support highlighting for class bindings with brackets (\u003ca href=\"https://github.com/angular/angular/commit/01ed57f297d6713724dfaedc9520f80471f37c10\"\u003e01ed57f297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add JSON schema for angularCompilerOptions (\u003ca href=\"https://github.com/angular/angular/commit/496967e7b13dfe1ebdde69724cd62880914beb60\"\u003e496967e7b1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(language-service): Detect local project version on creation (\u003ca href=\"https://github.com/angular/angular/commit/8a7cbd46685874f4500c52629d09c5f7fd309080\"\u003e8a7cbd4668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Support client-side file watching via \u003ccode\u003eonDidChangeWatchedFiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/commit/6fb39d9b62cbb634e95ec00fe5ef85d84da3bdbd\"\u003e6fb39d9b62\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add completions and hover info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/ebc90c26f5ff1ba1e0ca9b775a44e301ebfb9473\"\u003eebc90c26f5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add quick info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/573aadef7eb8b6b5e83b82a16f95d2a556f27c01\"\u003e573aadef7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add folding range support for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/26fd0839c32d2ebeaa5e3ecc10ed70ab9ca17749\"\u003e26fd0839c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003cimg src=\"https://img.shields.io/badge/18003a33bb-feat-blue\" alt=\"feat - 18003a33bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e\u003cimg src=\"https://img.shields.io/badge/8bbe6dc46c-feat-blue\" alt=\"feat - 8bbe6dc46c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003cimg src=\"https://img.shields.io/badge/51cc914807-feat-blue\" alt=\"feat - 51cc914807\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e\u003cimg src=\"https://img.shields.io/badge/72534e2a34-feat-blue\" alt=\"feat - 72534e2a34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003cimg src=\"https://img.shields.io/badge/95b3f37d4a-feat-blue\" alt=\"feat - 95b3f37d4a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e\u003cimg src=\"https://img.shields.io/badge/04ba09a8d9-feat-blue\" alt=\"feat - 04ba09a8d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce80136e7b-fix-green\" alt=\"fix - ce80136e7b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e\u003cimg src=\"https://img.shields.io/badge/3242a61bae-fix-green\" alt=\"fix - 3242a61bae\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e\u003cimg src=\"https://img.shields.io/badge/473dd3e1cb-fix-green\" alt=\"fix - 473dd3e1cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003e\u003cimg src=\"https://img.shields.io/badge/a904d9f77b-fix-green\" alt=\"fix - a904d9f77b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ea6dfc6c9-fix-green\" alt=\"fix - 2ea6dfc6c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d5210c9fe-feat-blue\" alt=\"feat - 8d5210c9fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d2498910-feat-blue\" alt=\"feat - 92d2498910\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea2016a6dc-feat-blue\" alt=\"feat - ea2016a6dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e\u003cimg src=\"https://img.shields.io/badge/81cabc1477-feat-blue\" alt=\"feat - 81cabc1477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ba9b7ac50-feat-blue\" alt=\"feat - 1ba9b7ac50\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003e\u003cimg src=\"https://img.shields.io/badge/d9923b72a2-feat-blue\" alt=\"feat - d9923b72a2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003e\u003cimg src=\"https://img.shields.io/badge/a7e8abbb7e-fix-green\" alt=\"fix - a7e8abbb7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e\u003cimg src=\"https://img.shields.io/badge/0806ee3826-fix-green\" alt=\"fix - 0806ee3826\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003e\u003cimg src=\"https://img.shields.io/badge/ed78fa05c7-fix-green\" alt=\"fix - ed78fa05c7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003e\u003cimg src=\"https://img.shields.io/badge/f56bb07d83-feat-blue\" alt=\"feat - f56bb07d83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba009b6031-feat-blue\" alt=\"feat - ba009b6031\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e\u003cimg src=\"https://img.shields.io/badge/22afbb2f36-feat-blue\" alt=\"feat - 22afbb2f36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e18003a33bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e8bbe6dc46c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e51cc914807\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e72534e2a34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e95b3f37d4a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e04ba09a8d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003ece80136e7b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e3242a61bae\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e473dd3e1cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003ea904d9f77b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e2ea6dfc6c9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e8d5210c9fe\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e92d2498910\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003eea2016a6dc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e81cabc1477\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e1ba9b7ac50\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003ed9923b72a2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003ea7e8abbb7e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e0806ee3826\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003eed78fa05c7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003ef56bb07d83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003eba009b6031\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e22afbb2f36\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95c386469c7a2f09dd731601c2061bdb10d25717\"\u003e95c386469c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd passing focus options to form field\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95ecce8334299defe55fb2b74264e5258ffd137c\"\u003e95ecce8334\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eallow setting submit options at form-level\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ebae211add37700858adeb8fc5d87bf503a59721\"\u003eebae211add\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce parse errors in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3937afc3167ce409eebb06d91d5fb122eea4e33d\"\u003e3937afc316\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce SignalFormControl for Reactive Forms compatibility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/30f09147545b67185f93efb9796e37c1db76733a\"\u003e30f0914754\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport binding null to number input (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/dd208ca2595258fcd1e289374f812ce0b56c7011\"\u003edd208ca259\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eupdate submit function to accept options object\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/27397b3f4f3182ce00d6e2f8690285c316e2a274\"\u003e27397b3f4f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eclear parse errors when model updates (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/63d80057039928b3e878b59c1fe6b93ef1c6b701\"\u003e63d8005703\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve custom-control focus context in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/631f60d1f9be72cb68330308a6ff18cc195babb8\"\u003e631f60d1f9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve parse errors when parse returns value\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/adfb83146b0c149734f43961563b389e00cc1d85\"\u003eadfb83146b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esimplify design of parse errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/fb05fc86d0f12ffafd94c7c1420118d8a79f7e59\"\u003efb05fc86d0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esort error summary by DOM order\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/70e4c7fbabb45277cf76ee138c0be275beec7919\"\u003e\u003ccode\u003e70e4c7f\u003c/code\u003e\u003c/a\u003e refactor(common): log a warning when a KeyValuePipe receives a signal\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/2eeeabb7606900ad4fe8e3370d73f6add985f35d\"\u003e\u003ccode\u003e2eeeabb\u003c/code\u003e\u003c/a\u003e fix(common): fix LCP image detection with duplicate URLs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3c4deaa52bb42130f90126f55786331aa8b4f7dc\"\u003e\u003ccode\u003e3c4deaa\u003c/code\u003e\u003c/a\u003e refactor(common): log a warning when a JsonPipe receives a signal\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a8aab6480962f18ff0b28b5e46358ff8d43745c9\"\u003e\u003ccode\u003ea8aab64\u003c/code\u003e\u003c/a\u003e refactor(core): remove outdated TODO comments referencing TypeScript 2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ddfc833df9e40d9c427c0300a41e195e5e398767\"\u003e\u003ccode\u003eddfc833\u003c/code\u003e\u003c/a\u003e refactor(common): improve image directive typings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003ccode\u003e18003a3\u003c/code\u003e\u003c/a\u003e feat(common): add an 'outlet' injector option for ngTemplateOutlet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/0c6eb60c8629c02fc342f849f4bb09567cd3f7dd\"\u003e\u003ccode\u003e0c6eb60\u003c/code\u003e\u003c/a\u003e test(http): remove zone-based testing utilities\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003ccode\u003e51cc914\u003c/code\u003e\u003c/a\u003e feat(common): support height in ImageLoaderConfig and built-in loaders\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/c6d75002030875a3e6b9460e7317ca3a9ae68179\"\u003e\u003ccode\u003ec6d7500\u003c/code\u003e\u003c/a\u003e test(common): remove zone-based testing utilities\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/cb1163e5e5434d5d96897180f6f0eb86d3992964\"\u003e\u003ccode\u003ecb1163e\u003c/code\u003e\u003c/a\u003e fix(http): correctly parse ArrayBuffer and Blob in transfer cache\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/v21.2.0/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/compiler` from 21.0.8 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): Highlight function calls with optional chaining (\u003ca href=\"https://github.com/angular/angular/commit/4f8d3995f082929d1ef4163dcb4373d3ef7a67cf\"\u003e4f8d3995f0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add linked editing ranges for HTML tag synchronization (\u003ca href=\"https://github.com/angular/angular/commit/8c21866f49ff74344551395ae0a5df1841d54c0d\"\u003e8c21866f49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(vscode-extension): support highlighting for class bindings with brackets (\u003ca href=\"https://github.com/angular/angular/commit/01ed57f297d6713724dfaedc9520f80471f37c10\"\u003e01ed57f297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add JSON schema for angularCompilerOptions (\u003ca href=\"https://github.com/angular/angular/commit/496967e7b13dfe1ebdde69724cd62880914beb60\"\u003e496967e7b1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(language-service): Detect local project version on creation (\u003ca href=\"https://github.com/angular/angular/commit/8a7cbd46685874f4500c52629d09c5f7fd309080\"\u003e8a7cbd4668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Support client-side file watching via \u003ccode\u003eonDidChangeWatchedFiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/commit/6fb39d9b62cbb634e95ec00fe5ef85d84da3bdbd\"\u003e6fb39d9b62\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add completions and hover info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/ebc90c26f5ff1ba1e0ca9b775a44e301ebfb9473\"\u003eebc90c26f5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add quick info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/573aadef7eb8b6b5e83b82a16f95d2a556f27c01\"\u003e573aadef7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add folding range support for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/26fd0839c32d2ebeaa5e3ecc10ed70ab9ca17749\"\u003e26fd0839c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003cimg src=\"https://img.shields.io/badge/18003a33bb-feat-blue\" alt=\"feat - 18003a33bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e\u003cimg src=\"https://img.shields.io/badge/8bbe6dc46c-feat-blue\" alt=\"feat - 8bbe6dc46c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003cimg src=\"https://img.shields.io/badge/51cc914807-feat-blue\" alt=\"feat - 51cc914807\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e\u003cimg src=\"https://img.shields.io/badge/72534e2a34-feat-blue\" alt=\"feat - 72534e2a34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003cimg src=\"https://img.shields.io/badge/95b3f37d4a-feat-blue\" alt=\"feat - 95b3f37d4a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e\u003cimg src=\"https://img.shields.io/badge/04ba09a8d9-feat-blue\" alt=\"feat - 04ba09a8d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce80136e7b-fix-green\" alt=\"fix - ce80136e7b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e\u003cimg src=\"https://img.shields.io/badge/3242a61bae-fix-green\" alt=\"fix - 3242a61bae\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e\u003cimg src=\"https://img.shields.io/badge/473dd3e1cb-fix-green\" alt=\"fix - 473dd3e1cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003e\u003cimg src=\"https://img.shields.io/badge/a904d9f77b-fix-green\" alt=\"fix - a904d9f77b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ea6dfc6c9-fix-green\" alt=\"fix - 2ea6dfc6c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d5210c9fe-feat-blue\" alt=\"feat - 8d5210c9fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d2498910-feat-blue\" alt=\"feat - 92d2498910\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea2016a6dc-feat-blue\" alt=\"feat - ea2016a6dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e\u003cimg src=\"https://img.shields.io/badge/81cabc1477-feat-blue\" alt=\"feat - 81cabc1477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ba9b7ac50-feat-blue\" alt=\"feat - 1ba9b7ac50\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003e\u003cimg src=\"https://img.shields.io/badge/d9923b72a2-feat-blue\" alt=\"feat - d9923b72a2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003e\u003cimg src=\"https://img.shields.io/badge/a7e8abbb7e-fix-green\" alt=\"fix - a7e8abbb7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e\u003cimg src=\"https://img.shields.io/badge/0806ee3826-fix-green\" alt=\"fix - 0806ee3826\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003e\u003cimg src=\"https://img.shields.io/badge/ed78fa05c7-fix-green\" alt=\"fix - ed78fa05c7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003e\u003cimg src=\"https://img.shields.io/badge/f56bb07d83-feat-blue\" alt=\"feat - f56bb07d83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba009b6031-feat-blue\" alt=\"feat - ba009b6031\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e\u003cimg src=\"https://img.shields.io/badge/22afbb2f36-feat-blue\" alt=\"feat - 22afbb2f36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e18003a33bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e8bbe6dc46c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e51cc914807\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e72534e2a34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e95b3f37d4a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e04ba09a8d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003ece80136e7b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e3242a61bae\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e473dd3e1cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003ea904d9f77b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e2ea6dfc6c9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e8d5210c9fe\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e92d2498910\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003eea2016a6dc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e81cabc1477\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e1ba9b7ac50\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003ed9923b72a2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003ea7e8abbb7e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e0806ee3826\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003eed78fa05c7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003ef56bb07d83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003eba009b6031\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e22afbb2f36\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95c386469c7a2f09dd731601c2061bdb10d25717\"\u003e95c386469c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd passing focus options to form field\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95ecce8334299defe55fb2b74264e5258ffd137c\"\u003e95ecce8334\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eallow setting submit options at form-level\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ebae211add37700858adeb8fc5d87bf503a59721\"\u003eebae211add\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce parse errors in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3937afc3167ce409eebb06d91d5fb122eea4e33d\"\u003e3937afc316\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce SignalFormControl for Reactive Forms compatibility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/30f09147545b67185f93efb9796e37c1db76733a\"\u003e30f0914754\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport binding null to number input (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/dd208ca2595258fcd1e289374f812ce0b56c7011\"\u003edd208ca259\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eupdate submit function to accept options object\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/27397b3f4f3182ce00d6e2f8690285c316e2a274\"\u003e27397b3f4f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eclear parse errors when model updates (\u003ca href=\"https://redirect.github.com/angular/angular/pull/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/63d80057039928b3e878b59c1fe6b93ef1c6b701\"\u003e63d8005703\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve custom-control focus context in signal forms\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/631f60d1f9be72cb68330308a6ff18cc195babb8\"\u003e631f60d1f9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epreserve parse errors when parse returns value\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/adfb83146b0c149734f43961563b389e00cc1d85\"\u003eadfb83146b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esimplify design of parse errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/fb05fc86d0f12ffafd94c7c1420118d8a79f7e59\"\u003efb05fc86d0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esort error summary by DOM order\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003ccode\u003e95b3f37\u003c/code\u003e\u003c/a\u003e feat(compiler): Exhaustive checks for switch blocks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9c5658adb1146b24ebf31fef534c4bbae1ced548\"\u003e\u003ccode\u003e9c5658a\u003c/code\u003e\u003c/a\u003e refactor(compiler): clean up pipeline compatibility distinction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e0d783e5b5a256c0aa2fb1d3e008677c0603382\"\u003e\u003ccode\u003e6e0d783\u003c/code\u003e\u003c/a\u003e refactor(compiler): Add info about unclosed element.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/06d94ac0caacce20d5afbdb1e940911bdc500d78\"\u003e\u003ccode\u003e06d94ac\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(compiler): Add info about unclosed element.\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/097208454bb0d5ebaad701a991125d2a33d1f79b\"\u003e\u003ccode\u003e0972084\u003c/code\u003e\u003c/a\u003e refactor(compiler): Add info about unclosed element.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b386f95bd05c6e9efdc00050b1e9ac28421e5f44\"\u003e\u003ccode\u003eb386f95\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(compiler): Add info about unclosed element.\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9b69e296032a0c1572356c2b9f7b74fad6290052\"\u003e\u003ccode\u003e9b69e29\u003c/code\u003e\u003c/a\u003e refactor(compiler): Add info about unclosed element.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/11834a42745e62830a83a4c14eea9d203baec680\"\u003e\u003ccode\u003e11834a4\u003c/code\u003e\u003c/a\u003e fix(compiler): add geolocation element to schema\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/11767cabe48606a1f575d50b8af79b8bbb35a852\"\u003e\u003ccode\u003e11767ca\u003c/code\u003e\u003c/a\u003e build: update Jasmine to 6.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a1441a432d508281e7c7fe8e03f92628a77a5685\"\u003e\u003ccode\u003ea1441a4\u003c/code\u003e\u003c/a\u003e refactor(compiler): remove zone-based testing utilities\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/v21.2.0/packages/compiler\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/core` from 21.0.8 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.2.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): Highlight function calls with optional chaining (\u003ca href=\"https://github.com/angular/angular/commit/4f8d3995f082929d1ef4163dcb4373d3ef7a67cf\"\u003e4f8d3995f0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add linked editing ranges for HTML tag synchronization (\u003ca href=\"https://github.com/angular/angular/commit/8c21866f49ff74344551395ae0a5df1841d54c0d\"\u003e8c21866f49\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(vscode-extension): support highlighting for class bindings with brackets (\u003ca href=\"https://github.com/angular/angular/commit/01ed57f297d6713724dfaedc9520f80471f37c10\"\u003e01ed57f297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-service): add JSON schema for angularCompilerOptions (\u003ca href=\"https://github.com/angular/angular/commit/496967e7b13dfe1ebdde69724cd62880914beb60\"\u003e496967e7b1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(language-service): Detect local project version on creation (\u003ca href=\"https://github.com/angular/angular/commit/8a7cbd46685874f4500c52629d09c5f7fd309080\"\u003e8a7cbd4668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Support client-side file watching via \u003ccode\u003eonDidChangeWatchedFiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/commit/6fb39d9b62cbb634e95ec00fe5ef85d84da3bdbd\"\u003e6fb39d9b62\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add completions and hover info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/ebc90c26f5ff1ba1e0ca9b775a44e301ebfb9473\"\u003eebc90c26f5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add quick info for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/573aadef7eb8b6b5e83b82a16f95d2a556f27c01\"\u003e573aadef7e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(language-server): Add folding range support for inline styles (\u003ca href=\"https://github.com/angular/angular/commit/26fd0839c32d2ebeaa5e3ecc10ed70ab9ca17749\"\u003e26fd0839c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e\u003cimg src=\"https://img.shields.io/badge/18003a33bb-feat-blue\" alt=\"feat - 18003a33bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e\u003cimg src=\"https://img.shields.io/badge/8bbe6dc46c-feat-blue\" alt=\"feat - 8bbe6dc46c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e\u003cimg src=\"https://img.shields.io/badge/51cc914807-feat-blue\" alt=\"feat - 51cc914807\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e\u003cimg src=\"https://img.shields.io/badge/72534e2a34-feat-blue\" alt=\"feat - 72534e2a34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e\u003cimg src=\"https://img.shields.io/badge/95b3f37d4a-feat-blue\" alt=\"feat - 95b3f37d4a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e\u003cimg src=\"https://img.shields.io/badge/04ba09a8d9-feat-blue\" alt=\"feat - 04ba09a8d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce80136e7b-fix-green\" alt=\"fix - ce80136e7b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e\u003cimg src=\"https://img.shields.io/badge/3242a61bae-fix-green\" alt=\"fix - 3242a61bae\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e\u003cimg src=\"https://img.shields.io/badge/473dd3e1cb-fix-green\" alt=\"fix - 473dd3e1cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a904d9f77b56feab407f75f8d0527fa512d5dafb\"\u003e\u003cimg src=\"https://img.shields.io/badge/a904d9f77b-fix-green\" alt=\"fix - a904d9f77b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport nested component declaration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ea6dfc6c9ca11e96a2654510c980419899f8d04\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ea6dfc6c9-fix-green\" alt=\"fix - 2ea6dfc6c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate diagnostic to flag no-op arrow functions in listeners\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d5210c9fedd8abdd810d7a89ec7ee9a1234f5c1\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d5210c9fe-feat-blue\" alt=\"feat - 8d5210c9fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd ChangeDetectionStrategy.Eager alias for Default\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/92d2498910caed06c182b67e39726e1441418698\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d2498910-feat-blue\" alt=\"feat - 92d2498910\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd host node to DeferBlockData (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/66546\"\u003e#66546\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea2016a6dce58f95ecab7c773d5dcde274354e1a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea2016a6dc-feat-blue\" alt=\"feat - ea2016a6dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for nested animations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/81cabc14777a3b4966c29d60e1505aca8c29b71c\"\u003e\u003cimg src=\"https://img.shields.io/badge/81cabc1477-feat-blue\" alt=\"feat - 81cabc1477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd support for TypeScript 6\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ba9b7ac5001b315cc9df78c518964dbf479d647\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ba9b7ac50-feat-blue\" alt=\"feat - 1ba9b7ac50\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresource composition via snapshots\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d9923b72a20972ba6bf728d78f1afac6936ade18\"\u003e\u003cimg src=\"https://img.shields.io/badge/d9923b72a2-feat-blue\" alt=\"feat - d9923b72a2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport arrow functions in expressions\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a7e8abbb7e738ba338c3f50c76934c99925954e5\"\u003e\u003cimg src=\"https://img.shields.io/badge/a7e8abbb7e-fix-green\" alt=\"fix - a7e8abbb7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle SkipSelf when resolving from embedded view injector\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0806ee38269b664f535e10d4d501b88370d3b44c\"\u003e\u003cimg src=\"https://img.shields.io/badge/0806ee3826-fix-green\" alt=\"fix - 0806ee3826\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animated element duplication with dynamic components in zoneless mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed78fa05c710ebafb355ae00a85b190a118b6cc4\"\u003e\u003cimg src=\"https://img.shields.io/badge/ed78fa05c7-fix-green\" alt=\"fix - ed78fa05c7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eRemove note to skip arrow functions in best practices\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f56bb07d83a015b0ac12e74fdb0cf1550ff36b97\"\u003e\u003cimg src=\"https://img.shields.io/badge/f56bb07d83-feat-blue\" alt=\"feat - f56bb07d83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd field param to submit action and onInvalid\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba009b603119299a03f9d844f93882d42d47d150\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba009b6031-feat-blue\" alt=\"feat - ba009b6031\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd form directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/22afbb2f36be89c2ae575df343571a918dec5985\"\u003e\u003cimg src=\"https://img.shields.io/badge/22afbb2f36-feat-blue\" alt=\"feat - 22afbb2f36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd parsing support to native inputs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/66917\"\u003e#66917\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.2.0 (2026-02-25)\u003c/h1\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/18003a33bb0d6bb09def8a0e5939fa24069696eb\"\u003e18003a33bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd an 'outlet' injector option for ngTemplateOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bbe6dc46c9dc13bafa81a60c7613b84b5ca3761\"\u003e8bbe6dc46c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd Location strategies to manage trailing slash on write\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/51cc91480761b7275c15b5600381207f8ca00ee5\"\u003e51cc914807\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport height in ImageLoaderConfig and built-in loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/72534e2a3458df4e1bb097973872f00bbb92be42\"\u003e72534e2a34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for the \u003ccode\u003einstanceof\u003c/code\u003e binary operator\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/95b3f37d4a7d9a38f616d56df746dfcda3c2139b\"\u003e95b3f37d4a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExhaustive checks for switch blocks\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/04ba09a8d9454013bebdd643eacb737642161952\"\u003e04ba09a8d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport \u003ccode\u003eAstVisitor.visitEmptyExpr()\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ce80136e7b9f0024d49fce835cffa024c4505855\"\u003ece80136e7b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eoptimize away unnecessary restore/reset view calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3242a61bae02253d13abb510b666376c665e61ac\"\u003e3242a61bae\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003evariable counter visiting some expressions twice\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/473dd3e1cbd4fe3fa88ae4d5358eee35c11acb1b\"\u003e473dd3e1cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eattach source spans to object literal keys in TCB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca ...\n\n_Description has been truncated_","html_url":"https://github.com/wittmannaaron/paperless-ngx/pull/9","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/wittmannaaron%2Fpaperless-ngx/issues/9","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/9/packages"}},{"old_version":"21.0.0-beta.1","new_version":"21.0.3","update_type":"patch","path":null,"pr_created_at":"2026-02-09T01:56:19.000Z","version_change":"21.0.0-beta.1 → 21.0.3","issue":{"uuid":"3914073653","node_id":"PR_kwDOGe8x_M7CXOvs","number":1142,"state":"closed","title":"build(deps-dev): bump the development-dependencies group across 1 directory with 25 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-02-16T06:48:00.000Z","author_association":null,"state_reason":null,"created_at":"2026-02-09T01:56:19.000Z","updated_at":"2026-02-16T06:48:02.000Z","time_to_close":622301,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps-dev): bump","group_name":"development-dependencies","update_count":25,"packages":[{"name":"@eslint/compat","old_version":"2.0.1","new_version":"2.0.2","repository_url":"https://github.com/eslint/rewrite"},{"name":"@golevelup/ts-jest","old_version":"1.2.0","new_version":"1.2.1","repository_url":"https://github.com/golevelup/nestjs"},{"name":"@nestjs/testing","old_version":"11.1.11","new_version":"11.1.13","repository_url":"https://github.com/nestjs/nest"},{"name":"@stylistic/eslint-plugin","old_version":"5.7.0","new_version":"5.7.1","repository_url":"https://github.com/eslint-stylistic/eslint-stylistic"},{"name":"@types/node","old_version":"25.0.6","new_version":"25.2.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.52.0","new_version":"8.54.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.52.0","new_version":"8.54.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint-plugin-jest","old_version":"29.12.1","new_version":"29.13.0","repository_url":"https://github.com/jest-community/eslint-plugin-jest"},{"name":"eslint-plugin-prettier","old_version":"5.5.4","new_version":"5.5.5","repository_url":"https://github.com/prettier/eslint-plugin-prettier"},{"name":"prettier","old_version":"3.7.4","new_version":"3.8.1","repository_url":"https://github.com/prettier/prettier"},{"name":"typescript-eslint","old_version":"8.52.0","new_version":"8.54.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@angular-builders/jest","old_version":"21.0.0-beta.1","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/architect","old_version":"0.2100.5","new_version":"0.2101.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/core","old_version":"21.0.5","new_version":"21.1.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/schematics","old_version":"21.0.5","new_version":"21.1.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-eslint/builder","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin-template","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/schematics","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/template-parser","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular/language-service","old_version":"21.0.8","new_version":"21.1.3","repository_url":"https://github.com/angular/angular"},{"name":"@compodoc/compodoc","old_version":"1.1.32","new_version":"1.2.1","repository_url":"https://github.com/compodoc/compodoc"},{"name":"@playwright/test","old_version":"1.57.0","new_version":"1.58.2","repository_url":"https://github.com/microsoft/playwright"},{"name":"@schematics/angular","old_version":"21.0.5","new_version":"21.1.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"angular-eslint","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/angular-eslint/angular-eslint"}],"path":null,"ecosystem":"npm"},"body":"Bumps the development-dependencies group with 25 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint/compat](https://github.com/eslint/rewrite/tree/HEAD/packages/compat) | `2.0.1` | `2.0.2` |\n| [@golevelup/ts-jest](https://github.com/golevelup/nestjs) | `1.2.0` | `1.2.1` |\n| [@nestjs/testing](https://github.com/nestjs/nest/tree/HEAD/packages/testing) | `11.1.11` | `11.1.13` |\n| [@stylistic/eslint-plugin](https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin) | `5.7.0` | `5.7.1` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.0.6` | `25.2.2` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.52.0` | `8.54.0` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.52.0` | `8.54.0` |\n| [eslint-plugin-jest](https://github.com/jest-community/eslint-plugin-jest) | `29.12.1` | `29.13.0` |\n| [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) | `5.5.4` | `5.5.5` |\n| [prettier](https://github.com/prettier/prettier) | `3.7.4` | `3.8.1` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.52.0` | `8.54.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `21.0.0-beta.1` | `21.0.3` |\n| [@angular-devkit/architect](https://github.com/angular/angular-cli) | `0.2100.5` | `0.2101.3` |\n| [@angular-devkit/core](https://github.com/angular/angular-cli) | `21.0.5` | `21.1.3` |\n| [@angular-devkit/schematics](https://github.com/angular/angular-cli) | `21.0.5` | `21.1.3` |\n| [@angular-eslint/builder](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/builder) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/eslint-plugin](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/eslint-plugin-template](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin-template) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/schematics](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/schematics) | `21.1.0` | `21.2.0` |\n| [@angular-eslint/template-parser](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/template-parser) | `21.1.0` | `21.2.0` |\n| [@angular/language-service](https://github.com/angular/angular/tree/HEAD/packages/language-service) | `21.0.8` | `21.1.3` |\n| [@compodoc/compodoc](https://github.com/compodoc/compodoc) | `1.1.32` | `1.2.1` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.57.0` | `1.58.2` |\n| [@schematics/angular](https://github.com/angular/angular-cli) | `21.0.5` | `21.1.3` |\n| [angular-eslint](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/angular-eslint) | `21.1.0` | `21.2.0` |\n\n\nUpdates `@eslint/compat` from 2.0.1 to 2.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/rewrite/releases\"\u003e\u003ccode\u003e@​eslint/compat\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecompat: v2.0.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/compat-v2.0.1...compat-v2.0.2\"\u003e2.0.2\u003c/a\u003e (2026-01-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd eslint 10 as peer dependency (\u003ca href=\"https://redirect.github.com/eslint/rewrite/issues/361\"\u003e#361\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint/rewrite/commit/ecb37dcafc6513649c03f245f0f2505e7eb10dd1\"\u003eecb37dc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe following workspace dependencies were updated\n\u003cul\u003e\n\u003cli\u003edependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/core\u003c/code\u003e bumped from ^1.0.1 to ^1.1.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emigrate-config: v2.0.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/migrate-config-v2.0.1...migrate-config-v2.0.2\"\u003e2.0.2\u003c/a\u003e (2026-01-29)\u003c/h2\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe following workspace dependencies were updated\n\u003cul\u003e\n\u003cli\u003edependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/compat\u003c/code\u003e bumped from ^2.0.1 to ^2.0.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edevDependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/core\u003c/code\u003e bumped from ^1.0.1 to ^1.1.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/rewrite/blob/main/packages/compat/CHANGELOG.md\"\u003e\u003ccode\u003e@​eslint/compat\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/compat-v2.0.1...compat-v2.0.2\"\u003e2.0.2\u003c/a\u003e (2026-01-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd eslint 10 as peer dependency (\u003ca href=\"https://redirect.github.com/eslint/rewrite/issues/361\"\u003e#361\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint/rewrite/commit/ecb37dcafc6513649c03f245f0f2505e7eb10dd1\"\u003eecb37dc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe following workspace dependencies were updated\n\u003cul\u003e\n\u003cli\u003edependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/core\u003c/code\u003e bumped from ^1.0.1 to ^1.1.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/7960653fe678b563051e2fbb99caf9fd3c07528c\"\u003e\u003ccode\u003e7960653\u003c/code\u003e\u003c/a\u003e chore: release main (\u003ca href=\"https://github.com/eslint/rewrite/tree/HEAD/packages/compat/issues/356\"\u003e#356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/ecb37dcafc6513649c03f245f0f2505e7eb10dd1\"\u003e\u003ccode\u003eecb37dc\u003c/code\u003e\u003c/a\u003e fix: add eslint 10 as peer dependency (\u003ca href=\"https://github.com/eslint/rewrite/tree/HEAD/packages/compat/issues/361\"\u003e#361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/074cac2268ef11f9433282b6f043a15cec8c609d\"\u003e\u003ccode\u003e074cac2\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/a3b0fd51027ce7b3102591ebda42326af87b8e3e\"\u003e\u003ccode\u003ea3b0fd5\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/rewrite/commits/compat-v2.0.2/packages/compat\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@golevelup/ts-jest` from 1.2.0 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/golevelup/nestjs/releases\"\u003e\u003ccode\u003e@​golevelup/ts-jest\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​golevelup/ts-jest\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.2.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIncludes dev dependencies upgrades such as Vite, Vitest and nestjs CLI and a new Stripe upgrade\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/36e2f4758c7278842c5127b76b88bbe2bf61f0cc\"\u003e\u003ccode\u003e36e2f47\u003c/code\u003e\u003c/a\u003e chore(release): version packages (\u003ca href=\"https://redirect.github.com/golevelup/nestjs/issues/1130\"\u003e#1130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/e44298ad81ebf9de305820861c577b688b0c077d\"\u003e\u003ccode\u003ee44298a\u003c/code\u003e\u003c/a\u003e chore: devDependencies upgrade such as Vite and Stripe upgrade (\u003ca href=\"https://redirect.github.com/golevelup/nestjs/issues/1129\"\u003e#1129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/99b849ecda273cb4a77b36c03cef401d629ebaf9\"\u003e\u003ccode\u003e99b849e\u003c/code\u003e\u003c/a\u003e docs(stripe): fix for wrong import in example (\u003ca href=\"https://redirect.github.com/golevelup/nestjs/issues/1123\"\u003e#1123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/cf48defe825669bb2c4bbcd99cae32881040d212\"\u003e\u003ccode\u003ecf48def\u003c/code\u003e\u003c/a\u003e chore(release): version packages (\u003ca href=\"https://redirect.github.com/golevelup/nestjs/issues/1122\"\u003e#1122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/45be4036cc1e1006e4e2dff229f09a9ae34fd45e\"\u003e\u003ccode\u003e45be403\u003c/code\u003e\u003c/a\u003e chore: bump version deployment for several packages with deps updated\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/afcc69ef14f44e122daba0b2d29983b295bfb00f\"\u003e\u003ccode\u003eafcc69e\u003c/code\u003e\u003c/a\u003e chore: update deps (\u003ca href=\"https://redirect.github.com/golevelup/nestjs/issues/1121\"\u003e#1121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/3cbf0b90773aba602fd485a2c3bf96dd0e69bace\"\u003e\u003ccode\u003e3cbf0b9\u003c/code\u003e\u003c/a\u003e chore(release): version packages (\u003ca href=\"https://redirect.github.com/golevelup/nestjs/issues/1119\"\u003e#1119\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/08c1deb49691244ff3e53dad9277d9ffce500fdd\"\u003e\u003ccode\u003e08c1deb\u003c/code\u003e\u003c/a\u003e chore: bump google cloud pubsub package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golevelup/nestjs/commit/8c15f80093cd8d74685f2cbe18e4828feec891ca\"\u003e\u003ccode\u003e8c15f80\u003c/code\u003e\u003c/a\u003e feat(\u003ccode\u003e@​golevelup/nestjs-google-cloud-pubsub\u003c/code\u003e): batching, async initialization, ...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golevelup/nestjs/compare/@golevelup/ts-jest@1.2.0...@golevelup/ts-jest@1.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@nestjs/testing` from 11.1.11 to 11.1.13\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/nestjs/nest/releases\"\u003e\u003ccode\u003e@​nestjs/testing\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev11.1.13 (2026-02-03)\u003c/h1\u003e\n\u003ch4\u003eBug fixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ecommon\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16230\"\u003e#16230\u003c/a\u003e fix(common): Fix skipping maxArrayLength and maxStringLength option (\u003ca href=\"https://github.com/chojs23\"\u003e\u003ccode\u003e@​chojs23\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eEnhancements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003emicroservices\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16286\"\u003e#16286\u003c/a\u003e feat(microservices): support per-handler qos in mqtt (\u003ca href=\"https://github.com/suuuuuuminnnnnn\"\u003e\u003ccode\u003e@​suuuuuuminnnnnn\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16262\"\u003e#16262\u003c/a\u003e Feat/microservices configurable max buffer size (\u003ca href=\"https://github.com/jobnow\"\u003e\u003ccode\u003e@​jobnow\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ecommon\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16202\"\u003e#16202\u003c/a\u003e fix(common): exclude built-in primitives from strip proto keys (\u003ca href=\"https://github.com/som14062005\"\u003e\u003ccode\u003e@​som14062005\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eDependencies\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eplatform-fastify\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16282\"\u003e#16282\u003c/a\u003e fix(deps): update dependency fastify to v5.7.4 (\u003ca href=\"https://github.com/apps/renovate\"\u003e\u003ccode\u003e@​renovate[bot]\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eplatform-express\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16241\"\u003e#16241\u003c/a\u003e fix(deps): update dependency cors to v2.8.6 (\u003ca href=\"https://github.com/apps/renovate\"\u003e\u003ccode\u003e@​renovate[bot]\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 6\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eLee Donghyun (\u003ca href=\"https://github.com/devizi0\"\u003e\u003ccode\u003e@​devizi0\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMykhailo Skrypsky (\u003ca href=\"https://github.com/mixator\"\u003e\u003ccode\u003e@​mixator\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNeo (\u003ca href=\"https://github.com/chojs23\"\u003e\u003ccode\u003e@​chojs23\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePraveen Somasundaram (\u003ca href=\"https://github.com/som14062005\"\u003e\u003ccode\u003e@​som14062005\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRicardo Gomes (\u003ca href=\"https://github.com/jobnow\"\u003e\u003ccode\u003e@​jobnow\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e조수민 (\u003ca href=\"https://github.com/suuuuuuminnnnnn\"\u003e\u003ccode\u003e@​suuuuuuminnnnnn\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev11.1.12 (2026-01-15)\u003c/h2\u003e\n\u003ch4\u003eBug fixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ecommon\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16187\"\u003e#16187\u003c/a\u003e fix(common): regression in loading file-type under Windows OS (\u003ca href=\"https://github.com/iamkanguk97\"\u003e\u003ccode\u003e@​iamkanguk97\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eDependencies\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eplatform-ws\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16161\"\u003e#16161\u003c/a\u003e chore(deps): bump ws from 8.18.3 to 8.19.0 (\u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ecommon\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16155\"\u003e#16155\u003c/a\u003e fix(deps): update dependency file-type to v21.3.0 (\u003ca href=\"https://github.com/apps/renovate\"\u003e\u003ccode\u003e@​renovate[bot]\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eplatform-fastify\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/nestjs/nest/pull/16154\"\u003e#16154\u003c/a\u003e fix(deps): update dependency find-my-way to v9.4.0 (\u003ca href=\"https://github.com/apps/renovate\"\u003e\u003ccode\u003e@​renovate[bot]\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 3\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAntonio Tripodi (\u003ca href=\"https://github.com/Tony133\"\u003e\u003ccode\u003e@​Tony133\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eKANGUK LEE (\u003ca href=\"https://github.com/iamkanguk97\"\u003e\u003ccode\u003e@​iamkanguk97\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/miso-kyoungminkim\"\u003e\u003ccode\u003e@​miso-kyoungminkim\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nestjs/nest/commit/e3a958ac3efebe7995e6d487e00bbc6fd6267fd5\"\u003e\u003ccode\u003ee3a958a\u003c/code\u003e\u003c/a\u003e chore(release): publish v11.1.13 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nestjs/nest/commit/96932ad073cc417e26f0bdea8f58d58145b1ca19\"\u003e\u003ccode\u003e96932ad\u003c/code\u003e\u003c/a\u003e chore(release): publish v11.1.12 release\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/nestjs/nest/commits/v11.1.13/packages/testing\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@stylistic/eslint-plugin` from 5.7.0 to 5.7.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/releases\"\u003e\u003ccode\u003e@​stylistic/eslint-plugin\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/compare/v5.7.0...v5.7.1\"\u003e5.7.1\u003c/a\u003e (2026-01-23)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003emeta\u003c/code\u003e to plugin (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1102\"\u003e#1102\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/f9d8a2143ae854924b58c8bac7c5f5c22a06b5c4\"\u003ef9d8a21\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e revert \u003ccode\u003eeslint-visitor-keys\u003c/code\u003e and \u003ccode\u003eespree\u003c/code\u003e to compatible versions (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1111\"\u003e#1111\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/572f1abf6382248e276f0ad2e3107f08a035436f\"\u003e572f1ab\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edisable-legacy:\u003c/strong\u003e disable \u003ccode\u003emultiline-comment-style\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1103\"\u003e#1103\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/03fc476d716e4aa41390b867f2f0fa0155a9bfec\"\u003e03fc476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eno-whitespace-before-property:\u003c/strong\u003e detect whitespace in \u003ccode\u003eTSIndexedAccessType\u003c/code\u003e with parens (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1099\"\u003e#1099\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/60aafcbf47c086031522c4700ada4b2a313614ce\"\u003e60aafcb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupgrade deps (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1112\"\u003e#1112\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/29a1d0a5aa0d0f248b515474a1c6583abcd5fe1b\"\u003e29a1d0a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eindent:\u003c/strong\u003e update deprecation tips (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1109\"\u003e#1109\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/6a6d30b125e3bfd031c62ed058358cfcc0356fa5\"\u003e6a6d30b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eextract \u003ccode\u003esafeReplaceTextBetween\u003c/code\u003e to reuse common fix logic (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1104\"\u003e#1104\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/a49451f8246d5efe670116beec741d993c53a682\"\u003ea49451f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ejsx-rules:\u003c/strong\u003e cleanup \u003ccode\u003emeta\u003c/code\u003e, use \u003ccode\u003edefaultOptions\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1108\"\u003e#1108\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/55bbd1d52f5d5b300bfd6032a17c4ada66629453\"\u003e55bbd1d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eline-comment-position:\u003c/strong\u003e simplify options initialization (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1106\"\u003e#1106\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/4d6b10ad6a29ec4443b66db3634f88e314df4f74\"\u003e4d6b10a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003edefaultOptions\u003c/code\u003e in rules (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1105\"\u003e#1105\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/666e8eea27f98ffeb836ede36ce81491a8c580e7\"\u003e666e8ee\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​stylistic/eslint-plugin\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/compare/v5.7.0...v5.7.1\"\u003e5.7.1\u003c/a\u003e (2026-01-23)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003emeta\u003c/code\u003e to plugin (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1102\"\u003e#1102\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/f9d8a2143ae854924b58c8bac7c5f5c22a06b5c4\"\u003ef9d8a21\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e revert \u003ccode\u003eeslint-visitor-keys\u003c/code\u003e and \u003ccode\u003eespree\u003c/code\u003e to compatible versions (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1111\"\u003e#1111\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/572f1abf6382248e276f0ad2e3107f08a035436f\"\u003e572f1ab\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edisable-legacy:\u003c/strong\u003e disable \u003ccode\u003emultiline-comment-style\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1103\"\u003e#1103\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/03fc476d716e4aa41390b867f2f0fa0155a9bfec\"\u003e03fc476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eno-whitespace-before-property:\u003c/strong\u003e detect whitespace in \u003ccode\u003eTSIndexedAccessType\u003c/code\u003e with parens (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1099\"\u003e#1099\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/60aafcbf47c086031522c4700ada4b2a313614ce\"\u003e60aafcb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupgrade deps (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1112\"\u003e#1112\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/29a1d0a5aa0d0f248b515474a1c6583abcd5fe1b\"\u003e29a1d0a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eindent:\u003c/strong\u003e update deprecation tips (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1109\"\u003e#1109\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/6a6d30b125e3bfd031c62ed058358cfcc0356fa5\"\u003e6a6d30b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eextract \u003ccode\u003esafeReplaceTextBetween\u003c/code\u003e to reuse common fix logic (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1104\"\u003e#1104\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/a49451f8246d5efe670116beec741d993c53a682\"\u003ea49451f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ejsx-rules:\u003c/strong\u003e cleanup \u003ccode\u003emeta\u003c/code\u003e, use \u003ccode\u003edefaultOptions\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1108\"\u003e#1108\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/55bbd1d52f5d5b300bfd6032a17c4ada66629453\"\u003e55bbd1d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eline-comment-position:\u003c/strong\u003e simplify options initialization (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1106\"\u003e#1106\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/4d6b10ad6a29ec4443b66db3634f88e314df4f74\"\u003e4d6b10a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003edefaultOptions\u003c/code\u003e in rules (\u003ca href=\"https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/1105\"\u003e#1105\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/666e8eea27f98ffeb836ede36ce81491a8c580e7\"\u003e666e8ee\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/5c4b512a225a314fa5f41eead9fdc4d51fc243d7\"\u003e\u003ccode\u003e5c4b512\u003c/code\u003e\u003c/a\u003e chore: release v5.7.1 (main) (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1101\"\u003e#1101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/29a1d0a5aa0d0f248b515474a1c6583abcd5fe1b\"\u003e\u003ccode\u003e29a1d0a\u003c/code\u003e\u003c/a\u003e fix: upgrade deps (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1112\"\u003e#1112\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/6a6d30b125e3bfd031c62ed058358cfcc0356fa5\"\u003e\u003ccode\u003e6a6d30b\u003c/code\u003e\u003c/a\u003e docs(indent): update deprecation tips (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1109\"\u003e#1109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/62b7247ef9414e6a361ab3c638526b24f3880419\"\u003e\u003ccode\u003e62b7247\u003c/code\u003e\u003c/a\u003e chore(lint): enable \u003ccode\u003eeslint-plugin/no-meta-schema-default\u003c/code\u003e internally (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1110\"\u003e#1110\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/666e8eea27f98ffeb836ede36ce81491a8c580e7\"\u003e\u003ccode\u003e666e8ee\u003c/code\u003e\u003c/a\u003e refactor: use \u003ccode\u003edefaultOptions\u003c/code\u003e in rules (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1105\"\u003e#1105\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/55bbd1d52f5d5b300bfd6032a17c4ada66629453\"\u003e\u003ccode\u003e55bbd1d\u003c/code\u003e\u003c/a\u003e refactor(jsx-rules): cleanup \u003ccode\u003emeta\u003c/code\u003e, use \u003ccode\u003edefaultOptions\u003c/code\u003e (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1108\"\u003e#1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/4d6b10ad6a29ec4443b66db3634f88e314df4f74\"\u003e\u003ccode\u003e4d6b10a\u003c/code\u003e\u003c/a\u003e refactor(line-comment-position): simplify options initialization (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1106\"\u003e#1106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/a49451f8246d5efe670116beec741d993c53a682\"\u003e\u003ccode\u003ea49451f\u003c/code\u003e\u003c/a\u003e refactor: extract \u003ccode\u003esafeReplaceTextBetween\u003c/code\u003e to reuse common fix logic (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1104\"\u003e#1104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/b250f8422429434ecf539ea819e4312460e5c60c\"\u003e\u003ccode\u003eb250f84\u003c/code\u003e\u003c/a\u003e chore: setup \u003ccode\u003eeslint-plugin-eslint-plugin\u003c/code\u003e, sort \u003ccode\u003emeta\u003c/code\u003e \u0026amp; \u003ccode\u003ecreateRule\u003c/code\u003e (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1107\"\u003e#1107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commit/f9d8a2143ae854924b58c8bac7c5f5c22a06b5c4\"\u003e\u003ccode\u003ef9d8a21\u003c/code\u003e\u003c/a\u003e fix: add \u003ccode\u003emeta\u003c/code\u003e to plugin (\u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin/issues/1102\"\u003e#1102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint-stylistic/eslint-stylistic/commits/v5.7.1/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@types/node` from 25.0.6 to 25.2.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.52.0 to 8.54.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e\u003ccode\u003e@​typescript-eslint/eslint-plugin\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.54.0\u003c/h2\u003e\n\u003ch2\u003e8.54.0 (2026-01-26)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin-internal:\u003c/strong\u003e add prefer-tsutils-methods rule (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11974\"\u003e#11974\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11625\"\u003e#11625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e support ScopeManager#addGlobals (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11914\"\u003e#11914\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-estree:\u003c/strong\u003e add shortcut methods to ParserServicesWithTypeInformation (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11965\"\u003e#11965\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11955\"\u003e#11955\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unused-private-class-members] private destructured class member is defined but used (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11785\"\u003e#11785\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] check both base constraint and actual type for non-null assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11967\"\u003e#11967\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11559\"\u003e#11559\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e fix catch clause scopes \u003ccode\u003edef.name\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11982\"\u003e#11982\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e prevent misidentification of \u003ccode\u003e\u0026quot;use strict\u0026quot;\u003c/code\u003e directives (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11995\"\u003e#11995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e handle missing \u003ccode\u003eFlatESLint\u003c/code\u003e and \u003ccode\u003eLegacyESLint\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11958\"\u003e#11958\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBrad Zacher \u003ca href=\"https://github.com/bradzacher\"\u003e\u003ccode\u003e@​bradzacher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efnx \u003ca href=\"https://github.com/DMartens\"\u003e\u003ccode\u003e@​DMartens\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFrancesco Trotta\u003c/li\u003e\n\u003cli\u003eJosh Goldberg\u003c/li\u003e\n\u003cli\u003eMinJae \u003ca href=\"https://github.com/Ju-MINJAE\"\u003e\u003ccode\u003e@​Ju-MINJAE\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMinyeong Kim \u003ca href=\"https://github.com/minyeong981\"\u003e\u003ccode\u003e@​minyeong981\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eoverlookmotel\u003c/li\u003e\n\u003cli\u003eYuya Yoshioka \u003ca href=\"https://github.com/YuyaYoshioka\"\u003e\u003ccode\u003e@​YuyaYoshioka\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e김현수 \u003ca href=\"https://github.com/Kimsoo0119\"\u003e\u003ccode\u003e@​Kimsoo0119\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.53.1\u003c/h2\u003e\n\u003ch2\u003e8.53.1 (2026-01-19)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [consistent-indexed-object-style] skip fixer if interface is a default export (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11951\"\u003e#11951\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e make RuleCreator root defaultOptions optional (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11956\"\u003e#11956\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCameron\u003c/li\u003e\n\u003cli\u003eYukihiro Hasegawa \u003ca href=\"https://github.com/y-hsgw\"\u003e\u003ccode\u003e@​y-hsgw\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.53.0\u003c/h2\u003e\n\u003ch2\u003e8.53.0 (2026-01-12)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e\u003ccode\u003e@​typescript-eslint/eslint-plugin\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.54.0 (2026-01-26)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin-internal:\u003c/strong\u003e add prefer-tsutils-methods rule (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11974\"\u003e#11974\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11625\"\u003e#11625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-estree:\u003c/strong\u003e add shortcut methods to ParserServicesWithTypeInformation (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11965\"\u003e#11965\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11955\"\u003e#11955\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] check both base constraint and actual type for non-null assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11967\"\u003e#11967\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11559\"\u003e#11559\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency prettier to v3.8.0 (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11991\"\u003e#11991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e fix catch clause scopes \u003ccode\u003edef.name\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11982\"\u003e#11982\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unused-private-class-members] private destructured class member is defined but used (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11785\"\u003e#11785\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBrad Zacher \u003ca href=\"https://github.com/bradzacher\"\u003e\u003ccode\u003e@​bradzacher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eJosh Goldberg\u003c/li\u003e\n\u003cli\u003eMinJae \u003ca href=\"https://github.com/Ju-MINJAE\"\u003e\u003ccode\u003e@​Ju-MINJAE\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMinyeong Kim \u003ca href=\"https://github.com/minyeong981\"\u003e\u003ccode\u003e@​minyeong981\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eoverlookmotel\u003c/li\u003e\n\u003cli\u003eYuya Yoshioka \u003ca href=\"https://github.com/YuyaYoshioka\"\u003e\u003ccode\u003e@​YuyaYoshioka\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e김현수 \u003ca href=\"https://github.com/Kimsoo0119\"\u003e\u003ccode\u003e@​Kimsoo0119\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.53.1 (2026-01-19)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e make RuleCreator root defaultOptions optional (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11956\"\u003e#11956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [consistent-indexed-object-style] skip fixer if interface is a default export (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11951\"\u003e#11951\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCameron\u003c/li\u003e\n\u003cli\u003eYukihiro Hasegawa \u003ca href=\"https://github.com/y-hsgw\"\u003e\u003ccode\u003e@​y-hsgw\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.53.0 (2026-01-12)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e add rule [strict-void-return] (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/9707\"\u003e#9707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unused-vars] add a fixer to remove unused imports (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11922\"\u003e#11922\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-useless-default-assignment] fix false positive for parameters corresponding to a rest parameter (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11916\"\u003e#11916\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/d423e57622e1c8e789a1b84109d1ab2c15497507\"\u003e\u003ccode\u003ed423e57\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.54.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80e33ff2fd81f88100cda942db5232851adab90e\"\u003e\u003ccode\u003e80e33ff\u003c/code\u003e\u003c/a\u003e feat(eslint-plugin-internal): add prefer-tsutils-methods rule (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11974\"\u003e#11974\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec4f73aaae8ad3344d55e98f710e6acdd482ff19\"\u003e\u003ccode\u003eec4f73a\u003c/code\u003e\u003c/a\u003e feat(typescript-estree): add shortcut methods to ParserServicesWithTypeInform...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/d32f90955962cd9c0968ed6f675d52fc80059496\"\u003e\u003ccode\u003ed32f909\u003c/code\u003e\u003c/a\u003e test(eslint-plugin): skip rules tests in windows ci (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11988\"\u003e#11988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/17fa993c2de60b9837658360af786a42e51de4ab\"\u003e\u003ccode\u003e17fa993\u003c/code\u003e\u003c/a\u003e test(eslint-plugin): improve vitest performance with isolate: false (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11754\"\u003e#11754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1c66ab44c407cf05462d2344b37c09b507ea8052\"\u003e\u003ccode\u003e1c66ab4\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unnecessary-type-assertion] check both base constrain...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/aaa7ca2d6afd8def8cf9d01d0d9deedd38ae1495\"\u003e\u003ccode\u003eaaa7ca2\u003c/code\u003e\u003c/a\u003e fix(deps): update dependency prettier to v3.8.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11991\"\u003e#11991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/d50aa1899ff83254056320c5313a5c041f465afb\"\u003e\u003ccode\u003ed50aa18\u003c/code\u003e\u003c/a\u003e fix(scope-manager): fix catch clause scopes \u003ccode\u003edef.name\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11982\"\u003e#11982\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4c0b37964eac642cf54a3a76723531c2f468183c\"\u003e\u003ccode\u003e4c0b379\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unused-private-class-members] private destructured cl...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/9940e53a156ec75b2e2910a63310650b4d19a6c6\"\u003e\u003ccode\u003e9940e53\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.53.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.54.0/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.52.0 to 8.54.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e\u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.54.0\u003c/h2\u003e\n\u003ch2\u003e8.54.0 (2026-01-26)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin-internal:\u003c/strong\u003e add prefer-tsutils-methods rule (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11974\"\u003e#11974\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11625\"\u003e#11625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e support ScopeManager#addGlobals (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11914\"\u003e#11914\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-estree:\u003c/strong\u003e add shortcut methods to ParserServicesWithTypeInformation (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11965\"\u003e#11965\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11955\"\u003e#11955\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unused-private-class-members] private destructured class member is defined but used (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11785\"\u003e#11785\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] check both base constraint and actual type for non-null assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11967\"\u003e#11967\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11559\"\u003e#11559\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e fix catch clause scopes \u003ccode\u003edef.name\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11982\"\u003e#11982\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e prevent misidentification of \u003ccode\u003e\u0026quot;use strict\u0026quot;\u003c/code\u003e directives (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11995\"\u003e#11995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e handle missing \u003ccode\u003eFlatESLint\u003c/code\u003e and \u003ccode\u003eLegacyESLint\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11958\"\u003e#11958\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBrad Zacher \u003ca href=\"https://github.com/bradzacher\"\u003e\u003ccode\u003e@​bradzacher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efnx \u003ca href=\"https://github.com/DMartens\"\u003e\u003ccode\u003e@​DMartens\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFrancesco Trotta\u003c/li\u003e\n\u003cli\u003eJosh Goldberg\u003c/li\u003e\n\u003cli\u003eMinJae \u003ca href=\"https://github.com/Ju-MINJAE\"\u003e\u003ccode\u003e@​Ju-MINJAE\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMinyeong Kim \u003ca href=\"https://github.com/minyeong981\"\u003e\u003ccode\u003e@​minyeong981\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eoverlookmotel\u003c/li\u003e\n\u003cli\u003eYuya Yoshioka \u003ca href=\"https://github.com/YuyaYoshioka\"\u003e\u003ccode\u003e@​YuyaYoshioka\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e김현수 \u003ca href=\"https://github.com/Kimsoo0119\"\u003e\u003ccode\u003e@​Kimsoo0119\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.53.1\u003c/h2\u003e\n\u003ch2\u003e8.53.1 (2026-01-19)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [consistent-indexed-object-style] skip fixer if interface is a default export (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11951\"\u003e#11951\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e make RuleCreator root defaultOptions optional (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11956\"\u003e#11956\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCameron\u003c/li\u003e\n\u003cli\u003eYukihiro Hasegawa \u003ca href=\"https://github.com/y-hsgw\"\u003e\u003ccode\u003e@​y-hsgw\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.53.0\u003c/h2\u003e\n\u003ch2\u003e8.53.0 (2026-01-12)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e\u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.54.0 (2026-01-26)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.53.1 (2026-01-19)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.53.0 (2026-01-12)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/d423e57622e1c8e789a1b84109d1ab2c15497507\"\u003e\u003ccode\u003ed423e57\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.54.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/9940e53a156ec75b2e2910a63310650b4d19a6c6\"\u003e\u003ccode\u003e9940e53\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3021ede961732e66b1daca804759aa0cf4143b97\"\u003e\u003ccode\u003e3021ede\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.53.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.54.0/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-jest` from 29.12.1 to 29.13.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/releases\"\u003eeslint-plugin-jest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev29.13.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/compare/v29.12.2...v29.13.0\"\u003e29.13.0\u003c/a\u003e (2026-02-08)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esupport ESLint v10 (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/7735c44b285b3969066e206c71d5f77e20590446\"\u003e7735c44\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev29.12.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/compare/v29.12.1...v29.12.2\"\u003e29.12.2\u003c/a\u003e (2026-02-03)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd optional peer dependency on TypeScript (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1926\"\u003e#1926\u003c/a\u003e) (\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/82e3b043d15d3b9fbffc263fb57631ebe56f9ea7\"\u003e82e3b04\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/blob/main/CHANGELOG.md\"\u003eeslint-plugin-jest's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/compare/v29.12.2...v29.13.0\"\u003e29.13.0\u003c/a\u003e (2026-02-08)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esupport ESLint v10 (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/7735c44b285b3969066e206c71d5f77e20590446\"\u003e7735c44\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/compare/v29.12.1...v29.12.2\"\u003e29.12.2\u003c/a\u003e (2026-02-03)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd optional peer dependency on TypeScript (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1926\"\u003e#1926\u003c/a\u003e) (\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/82e3b043d15d3b9fbffc263fb57631ebe56f9ea7\"\u003e82e3b04\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/cb36f1ff5702a3493e4848941122424cb82cfa30\"\u003e\u003ccode\u003ecb36f1f\u003c/code\u003e\u003c/a\u003e chore(release): 29.13.0 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/7735c44b285b3969066e206c71d5f77e20590446\"\u003e\u003ccode\u003e7735c44\u003c/code\u003e\u003c/a\u003e feat: support ESLint v10 (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1929\"\u003e#1929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/53efb753a83d4ad217f3e47f7fea0996750140a6\"\u003e\u003ccode\u003e53efb75\u003c/code\u003e\u003c/a\u003e test: update titles (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1930\"\u003e#1930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/4acda625d6fe7c3aaec1a44d3cbeae4972e452b6\"\u003e\u003ccode\u003e4acda62\u003c/code\u003e\u003c/a\u003e chore(release): 29.12.2 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/82e3b043d15d3b9fbffc263fb57631ebe56f9ea7\"\u003e\u003ccode\u003e82e3b04\u003c/code\u003e\u003c/a\u003e fix: add optional peer dependency on TypeScript (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1926\"\u003e#1926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/10501cfeeecc5decf63db8bb9690dcecd1019fd0\"\u003e\u003ccode\u003e10501cf\u003c/code\u003e\u003c/a\u003e chore(deps): update workflows (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1922\"\u003e#1922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/d3958b0d03583c97036db2f739bddee95b49f413\"\u003e\u003ccode\u003ed3958b0\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1925\"\u003e#1925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/410f511d30a5a5b1f9683d39bee5dfd2a2257afe\"\u003e\u003ccode\u003e410f511\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1924\"\u003e#1924\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/b2e6d5e3a6606a8fa6847de9824461df7924d988\"\u003e\u003ccode\u003eb2e6d5e\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1923\"\u003e#1923\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/commit/5e2cffbb3089fd3a161e4e25ee5585b0d13393d9\"\u003e\u003ccode\u003e5e2cffb\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jest-community/eslint-plugin-jest/issues/1921\"\u003e#1921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jest-community/eslint-plugin-jest/compare/v29.12.1...v29.13.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-prettier` from 5.5.4 to 5.5.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/releases\"\u003eeslint-plugin-prettier's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.5.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/pull/772\"\u003e#772\u003c/a\u003e \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/7264ed0a6cf47fc36befed32f459e7d875f5992c\"\u003e\u003ccode\u003e7264ed0\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/BPScott\"\u003e\u003ccode\u003e@​BPScott\u003c/code\u003e\u003c/a\u003e! - Bump prettier-linter-helpers dependency to v1.0.1\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/pull/776\"\u003e#776\u003c/a\u003e \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/77651a33cd16fd4c50b7346971990b900a42408b\"\u003e\u003ccode\u003e77651a3\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/aswils\"\u003e\u003ccode\u003e@​aswils\u003c/code\u003e\u003c/a\u003e! - fix: bump synckit for yarn PnP ESM issue\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/blob/main/CHANGELOG.md\"\u003eeslint-plugin-prettier's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.5.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/pull/772\"\u003e#772\u003c/a\u003e \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/7264ed0a6cf47fc36befed32f459e7d875f5992c\"\u003e\u003ccode\u003e7264ed0\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/BPScott\"\u003e\u003ccode\u003e@​BPScott\u003c/code\u003e\u003c/a\u003e! - Bump prettier-linter-helpers dependency to v1.0.1\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/pull/776\"\u003e#776\u003c/a\u003e \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/77651a33cd16fd4c50b7346971990b900a42408b\"\u003e\u003ccode\u003e77651a3\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/aswils\"\u003e\u003ccode\u003e@​aswils\u003c/code\u003e\u003c/a\u003e! - fix: bump synckit for yarn PnP ESM issue\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/e2c154a7214d4548dad225a56ee1e333d6389b66\"\u003e\u003ccode\u003ee2c154a\u003c/code\u003e\u003c/a\u003e chore: release eslint-plugin-prettier (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/773\"\u003e#773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/6795c1abf6dc9949da8681b05ec31d323794d00c\"\u003e\u003ccode\u003e6795c1a\u003c/code\u003e\u003c/a\u003e build(deps): Bump the actions group across 1 directory with 2 updates (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/774\"\u003e#774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/77651a33cd16fd4c50b7346971990b900a42408b\"\u003e\u003ccode\u003e77651a3\u003c/code\u003e\u003c/a\u003e fix: bump synckit for yarn PnP ESM issue (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/776\"\u003e#776\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/7264ed0a6cf47fc36befed32f459e7d875f5992c\"\u003e\u003ccode\u003e7264ed0\u003c/code\u003e\u003c/a\u003e chore: bump prettier-linter-helpers to v1.0.1 (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/772\"\u003e#772\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/e11a5b7e71f41b3238da944ba1ee84f7f518a4f4\"\u003e\u003ccode\u003ee11a5b7\u003c/code\u003e\u003c/a\u003e build(deps): Bump the actions group across 1 directory with 3 updates (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/769\"\u003e#769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/befda88381335cd5491d2aaa16b67350ba3cc602\"\u003e\u003ccode\u003ebefda88\u003c/code\u003e\u003c/a\u003e ci: enable trusted publishing (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/757\"\u003e#757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/compare/v5.5.4...v5.5.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by [GitHub Actions](\u003ca href=\"https://www.npmjs.com/~GitHub\"\u003ehttps://www.npmjs.com/~GitHub\u003c/a\u003e Actions), a new releaser for eslint-plugin-prettier since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prettier` from 3.7.4 to 3.8.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/prettier/releases\"\u003eprettier's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.8.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eInclude available \u003ccode\u003eprinters\u003c/code\u003e in plugin type declarations (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18706\"\u003e#18706\u003c/a\u003e by \u003ca href=\"https://github.com/porada\"\u003e\u003ccode\u003e@​porada\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://github.com/prettier/prettier/blob/main/CHANGELOG.md#381\"\u003eChangelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.8.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Angular v21.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.7.4...3.8.0\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://prettier.io/blog/2026/01/14/3.8.0\"\u003eRelease note \u0026quot;Prettier 3.8: Support for Angular v21.1\u0026quot;\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/prettier/blob/main/CHANGELOG.md\"\u003eprettier's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.8.1\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.8.0...3.8.1\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eInclude available \u003ccode\u003eprinters\u003c/code\u003e in plugin type declarations (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18706\"\u003e#18706\u003c/a\u003e by \u003ca href=\"https://github.com/porada\"\u003e\u003ccode\u003e@​porada\u003c/code\u003e\u003c/a\u003e)\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// Input\nimport * as prettierPluginEstree from \u0026quot;prettier/plugins/estree\u0026quot;;\n\u003cp\u003e// Prettier 3.8.0\n// Property 'printers' does not exist on type 'typeof import(\u0026quot;prettier/plugins/estree\u0026quot;)'. ts(2339)\nprettierPluginEstree.printers.estree; //=\u0026gt; any\u003c/p\u003e\n\u003cp\u003e// Prettier 3.8.1\nprettierPluginEstree.printers.estree; //=\u0026gt; Printer\nprettierPluginEstree.printers[\u0026quot;estree-json\u0026quot;]; //=\u0026gt; Printer\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch1\u003e3.8.0\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.7.4...3.8.0\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://prettier.io/blog/2026/01/14/3.8.0\"\u003eRelease Notes\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/90983f40dce5e20beea4e5618b5e0426a6a7f4f0\"\u003e\u003ccode\u003e90983f4\u003c/code\u003e\u003c/a\u003e Release 3.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/57f702f7656e6fc03873f8121480c321b2f44c8c\"\u003e\u003ccode\u003e57f702f\u003c/code\u003e\u003c/a\u003e Include available \u003ccode\u003eprinters\u003c/code\u003e in plugin type declarations (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18706\"\u003e#18706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/bece82785141274c12956b0af3bae77a44ae3a9e\"\u003e\u003ccode\u003ebece827\u003c/code\u003e\u003c/a\u003e Revert change in release script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/82a4ab26f1e7fccd0041272de12a3c6b942e622b\"\u003e\u003ccode\u003e82a4ab2\u003c/code\u003e\u003c/a\u003e Bump Prettier dependency to 3.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/5213ee463c653f47e1821de414a4f30573f83337\"\u003e\u003ccode\u003e5213ee4\u003c/code\u003e\u003c/a\u003e Clean changelog_unreleased\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/f95ad0f8e1dd9fb5507e7088f42f91fa6b5f3cb0\"\u003e\u003ccode\u003ef95ad0f\u003c/code\u003e\u003c/a\u003e Comment out finished steps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/b2034e819aef944fe1fe3bbf532118885a854f64\"\u003e\u003ccode\u003eb2034e8\u003c/code\u003e\u003c/a\u003e Fix release script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/5824b15189303d52892ffbc0812751533666c674\"\u003e\u003ccode\u003e5824b15\u003c/code\u003e\u003c/a\u003e Release 3.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/04336012b351529f624eaeb3ac9af52a5b7b7c01\"\u003e\u003ccode\u003e0433601\u003c/code\u003e\u003c/a\u003e Add blog post for v3.8.0 (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18639\"\u003e#18639\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/b04d05b831f1476ac6e24e1211972bfdd475c9b8\"\u003e\u003ccode\u003eb04d05b\u003c/code\u003e\u003c/a\u003e Remove lint step from release script (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18415\"\u003e#18415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prettier/prettier/compare/3.7.4...3.8.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript-eslint` from 8.52.0 to 8.54.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003etypescript-eslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.54.0\u003c/h2\u003e\n\u003ch2\u003e8.54.0 (2026-01-26)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin-internal:\u003c/strong\u003e add prefer-tsutils-methods rule (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11974\"\u003e#11974\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11625\"\u003e#11625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e support ScopeManager#addGlobals (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11914\"\u003e#11914\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-estree:\u003c/strong\u003e add shortcut methods to ParserServicesWithTypeInformation (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11965\"\u003e#11965\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11955\"\u003e#11955\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unused-private-class-members] private destructured class member is defined but used (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11785\"\u003e#11785\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] check both base constraint and actual type for non-null assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11967\"\u003e#11967\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11559\"\u003e#11559\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e fix catch clause scopes \u003ccode\u003edef.name\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11982\"\u003e#11982\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003escope-manager:\u003c/strong\u003e prevent misidentification of \u003ccode\u003e\u0026quot;use strict\u0026quot;\u003c/code\u003e directives (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11995\"\u003e#11995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e handle missing \u003ccode\u003eFlatESLint\u003c/code\u003e and \u003ccode\u003eLegacyESLint\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11958\"\u003e#11958\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBrad Zacher \u003ca href=\"https://github.com/bradzacher\"\u003e\u003ccode\u003e@​bradzacher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efnx \u003ca href=\"https://github.com/DMartens\"\u003e\u003ccode\u003e@​DMartens\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFrancesco Trotta\u003c/li\u003e\n\u003cli\u003eJosh Goldberg\u003c/li\u003e\n\u003cli\u003eMinJae \u003ca href=\"https://github.com/Ju-MINJAE\"\u003e\u003ccode\u003e@​Ju-MINJAE\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMinyeong Kim \u003ca href=\"https://github.com/minyeong981\"\u003e\u003ccode\u003e@​minyeong981\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eoverlookmotel\u003c/li\u003e\n\u003cli\u003eYuya Yoshioka \u003ca href=\"https://github.com/YuyaYoshioka\"\u003e\u003ccode\u003e@​YuyaYoshioka\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e김현수 \u003ca href=\"https://github.com/Kimsoo0119\"\u003e\u003ccode\u003e@​Kimsoo0119\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.53.1\u003c/h2\u003e\n\u003ch2\u003e8.53.1 (2026-01-19)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [consistent-indexed-object-style] skip fixer if interface is a default export (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11951\"\u003e#11951\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eutils:\u003c/strong\u003e make RuleCreator root defaultOptions optional (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11956\"\u003e#11956\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCameron\u003c/li\u003e\n\u003cli\u003eYukihiro Hasegawa \u003ca href=\"https://github.com/y-hsgw\"\u003e\u003ccode\u003e@​y-hsgw\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.53.0\u003c/h2\u003e\n\u003ch2\u003e8.53.0 (2026-01-12)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md\"\u003etypescript-eslint's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.54.0 (2026-01-26)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.53.1 (2026-01-19)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.53.0 (2026-01-12)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/d423e57622e1c8e789a1b84109d1ab2c15497507\"\u003e\u003ccode\u003ed423e57\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.54.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/9940e53a156ec75b2e2910a63310650b4d19a6c6\"\u003e\u003ccode\u003e9940e53\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3021ede961732e66b1daca804759aa0cf4143b97\"\u003e\u003ccode\u003e3021ede\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.53.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.54.0/packages/typescript-eslint\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 21.0.0-beta.1 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.1 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.0 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187\"\u003e9c0d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f7\"\u003e5d8e5f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.2\"\u003e21.0.2\u003c/a\u003e (2026-01-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.1\"\u003e21.0.1\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.1-beta.0\"\u003e21.0.1-beta.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.0\"\u003e21.0.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/df93aba91f4bdace2a54e0052e9b4603638f9fd4\"\u003e\u003ccode\u003edf93aba\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4af87374773bedb22c0a050d8ece327a51f432d3\"\u003e\u003ccode\u003e4af8737\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1f20a38d517527be88d140bb36dc00cf6bcb7583\"\u003e\u003ccode\u003e1f20a38\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187e93be6b9ba7773432826fc2f63ca9cff6\"\u003e\u003ccode\u003e9c0d187\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f70dc25f05fa8ea6e67efe07d2271182c9a\"\u003e\u003ccode\u003e5d8e5f7\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9f8d27afa52bfa0a44d3aa97081c0e0bf94d2a5c\"\u003e\u003ccode\u003e9f8d27a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/63f716a171b650bdfed007bec8f286e28f8b6c0c\"\u003e\u003ccode\u003e63f716a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@21.0.3/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by [GitHub Actions](\u003ca href=\"https://www.npmjs.com/~GitHub\"\u003ehttps://www.npmjs.com/~GitHub\u003c/a\u003e Actions), a new releaser for \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-devkit/architect` from 0.2100.5 to 0.2101.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular/angular-cli/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-devkit/core` from 21.0.5 to 21.1.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/releases\"\u003e\u003ccode\u003e@​angular-devkit/core\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.1.3\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/a18196a1096e5eb69cf64102943781d34c4389bf\"\u003e\u003cimg src=\"https://img.shields.io/badge/a18196a10-fix-green\" alt=\"fix - a18196a10\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ewarn when production configuration is missing for service worker\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/6d05d27ca097b16efb139bcee1c45b1b51dfe746\"\u003e\u003cimg src=\"https://img.shields.io/badge/6d05d27ca-fix-green\" alt=\"fix - 6d05d27ca\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eaddress Node.js deprecation DEP0190\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.1.2\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/schematics-cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescripti...\n\n_Description has been truncated_","html_url":"https://github.com/b310-digital/teammapper/pull/1142","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/b310-digital%2Fteammapper/issues/1142","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1142/packages"}},{"old_version":"20.0.0","new_version":"21.0.3","update_type":"major","path":null,"pr_created_at":"2026-01-15T03:05:36.000Z","version_change":"20.0.0 → 21.0.3","issue":{"uuid":"3815783638","node_id":"PR_kwDOAYyT6c69StPw","number":6049,"state":"open","title":"build(deps): bump the angular group across 1 directory with 11 updates","user":"dependabot[bot]","labels":["theme: dependencies","theme: angular"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-01-15T03:05:36.000Z","updated_at":"2026-02-04T20:01:25.824Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"angular","update_count":11,"packages":[{"name":"@angular/common","old_version":"20.3.14","new_version":"21.1.0","repository_url":"https://github.com/angular/angular"},{"name":"@fortawesome/angular-fontawesome","old_version":"3.0.0","new_version":"4.0.0","repository_url":"https://github.com/FortAwesome/angular-fontawesome"},{"name":"@ng-bootstrap/ng-bootstrap","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/ng-bootstrap/ng-bootstrap"},{"name":"ngx-cookie-service","old_version":"20.1.1","new_version":"21.1.0","repository_url":"https://github.com/stevermeister/ngx-cookie-service"},{"name":"ngx-infinite-scroll","old_version":"20.0.0","new_version":"21.0.0","repository_url":"https://github.com/orizens/ngx-infinite-scroll"},{"name":"zone.js","old_version":"0.15.1","new_version":"0.16.0","repository_url":"https://github.com/angular/angular"},{"name":"@angular-builders/custom-esbuild","old_version":"20.0.0","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/custom-webpack","old_version":"20.0.0","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"20.0.0","new_version":"21.0.3","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular/build","old_version":"20.3.10","new_version":"21.1.0","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/cli","old_version":"20.3.10","new_version":"21.1.0","repository_url":"https://github.com/angular/angular-cli"}],"path":null,"ecosystem":"npm"},"body":"Bumps the angular group with 11 updates in the /generators/angular/resources directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `20.3.14` | `21.1.0` |\n| [@fortawesome/angular-fontawesome](https://github.com/FortAwesome/angular-fontawesome) | `3.0.0` | `4.0.0` |\n| [@ng-bootstrap/ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap) | `19.0.1` | `20.0.0` |\n| [ngx-cookie-service](https://github.com/stevermeister/ngx-cookie-service) | `20.1.1` | `21.1.0` |\n| [ngx-infinite-scroll](https://github.com/orizens/ngx-infinite-scroll) | `20.0.0` | `21.0.0` |\n| [zone.js](https://github.com/angular/angular/tree/HEAD/packages/zone.js) | `0.15.1` | `0.16.0` |\n| [@angular-builders/custom-esbuild](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-esbuild) | `20.0.0` | `21.0.3` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `20.0.0` | `21.0.3` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `20.0.0` | `21.0.3` |\n| [@angular/build](https://github.com/angular/angular-cli) | `20.3.10` | `21.1.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `20.3.10` | `21.1.0` |\n\n\nUpdates `@angular/common` from 20.3.14 to 21.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVSCode Extension: 21.1.0\u003c/h2\u003e\n\u003ch2\u003e21.1.0 (2026-01-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(vscode-extension): convert enum member kind in completions correctly (\u003ca href=\"https://github.com/angular/angular/commit/50674f8c28c970e6a9cfe222f9f55bace4e16321\"\u003e50674f8c28\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.1.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d8790972bea4c59a208219dd36d158b5d7e4fdde\"\u003e\u003cimg src=\"https://img.shields.io/badge/d8790972be-feat-blue\" alt=\"feat - d8790972be\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd custom transformations for Cloudflare and Cloudinary image loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a6b8cb68afaded6999ee68f495512be1a9932ae4\"\u003e\u003cimg src=\"https://img.shields.io/badge/a6b8cb68af-feat-blue\" alt=\"feat - a6b8cb68af\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport custom transformations in ImageKit and Imgix loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/640693da8e667c015662246152236585d9b24e7f\"\u003e\u003cimg src=\"https://img.shields.io/badge/640693da8e-feat-blue\" alt=\"feat - 640693da8e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for multiple swich cases matching\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ad3adc7c6d4094f1e3432a3f2e3bdc9862cb4fa\"\u003e\u003cimg src=\"https://img.shields.io/badge/0ad3adc7c6-fix-green\" alt=\"fix - 0ad3adc7c6\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eSupport empty cases\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/99ad18a4ee82ecc5524106d1d403ccfa9bae2304\"\u003e\u003cimg src=\"https://img.shields.io/badge/99ad18a4ee-feat-blue\" alt=\"feat - 99ad18a4ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd stability debugging utility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a0dfa5fa86f40520b0e368a021b3c72009a45e8e\"\u003e\u003cimg src=\"https://img.shields.io/badge/a0dfa5fa86-feat-blue\" alt=\"feat - a0dfa5fa86\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport rest arguments in function calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e18fa8bc9d7e6801e2e89e635c2f759dc422317\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e18fa8bc9-feat-blue\" alt=\"feat - 6e18fa8bc9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport spread elements in array literals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e407280ab53cde5f93c3a643457c848845c6ec8b\"\u003e\u003cimg src=\"https://img.shields.io/badge/e407280ab5-feat-blue\" alt=\"feat - e407280ab5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport spread expressions in object literals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/06be8034bb9b9adfc07ab0d40cd87c6ae5de02de\"\u003e\u003cimg src=\"https://img.shields.io/badge/06be8034bb-fix-green\" alt=\"fix - 06be8034bb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMicrotask scheduling should be used after any application synchronization\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/b4f584cf42235c94bb8389fa55bc634e23d7b010\"\u003e\u003cimg src=\"https://img.shields.io/badge/b4f584cf42-fix-green\" alt=\"fix - b4f584cf42\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ereturn \u003ccode\u003eStaticProvider\u003c/code\u003e for \u003ccode\u003eprovidePlatformInitializer\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ea5c97703ad3c6d8e4cb1b4297eec57629ce117\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ea5c97703-feat-blue\" alt=\"feat - 1ea5c97703\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow focusing bound control from field state\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ec9dc94ceeb3c026c64e01c6889b7f5c6fd25a66\"\u003e\u003cimg src=\"https://img.shields.io/badge/ec9dc94cee-feat-blue\" alt=\"feat - ec9dc94cee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd \u003ccode\u003econtext\u003c/code\u003e to \u003ccode\u003ecreateApplication\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab67988d2e5242eff0034483f984428d684acd02\"\u003e\u003cimg src=\"https://img.shields.io/badge/ab67988d2e-feat-blue\" alt=\"feat - ab67988d2e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve JIT resources in \u003ccode\u003ecreateApplication\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5edceffd0431f5a25e111a731db521e966b91f86\"\u003e\u003cimg src=\"https://img.shields.io/badge/5edceffd04-feat-blue\" alt=\"feat - 5edceffd04\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd controls for route cleanup\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a03c82564da6824e199ff48d5249ea8708040951\"\u003e\u003cimg src=\"https://img.shields.io/badge/a03c82564d-feat-blue\" alt=\"feat - a03c82564d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd scroll behavior controls on router navigation\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e44839b01640505e554fff16f24e08f282a557c0\"\u003e\u003cimg src=\"https://img.shields.io/badge/e44839b016-feat-blue\" alt=\"feat - e44839b016\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd standalone function to create a comptued for isActive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c25d749d85374fff7745980cd9bb2673c661105a\"\u003e\u003cimg src=\"https://img.shields.io/badge/c25d749d85-feat-blue\" alt=\"feat - c25d749d85\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eExecute RunGuardsAndResolvers function in injection context\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1c00ab42f8714f2775ed75bbf3cdf0fd44ee32c3\"\u003e\u003cimg src=\"https://img.shields.io/badge/1c00ab42f8-feat-blue\" alt=\"feat - 1c00ab42f8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eextend paramters of RedirectFunction to include paramMap and queryParamMap\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7003e8d2417660f71b3a2a017aff3e650c8d9646\"\u003e\u003cimg src=\"https://img.shields.io/badge/7003e8d241-feat-blue\" alt=\"feat - 7003e8d241\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePublish Router's integration with platform Navigation API as experimental\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c84d37277874cf7cbd7582a295d796ff113b9cc1\"\u003e\u003cimg src=\"https://img.shields.io/badge/c84d372778-feat-blue\" alt=\"feat - c84d372778\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eSupport wildcard params with segments trailing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64737\"\u003e#64737\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/75fe8f8af9488bae6f7068b64d44500643c5d63f\"\u003e\u003cimg src=\"https://img.shields.io/badge/75fe8f8af9-refactor-yellow\" alt=\"refactor - 75fe8f8af9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edeprecate \u003ccode\u003eVERSION\u003c/code\u003e export\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eDeprecations\u003c/h2\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.1.0 (2026-01-14)\u003c/h1\u003e\n\u003ch2\u003eDeprecations\u003c/h2\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eVERSION\u003c/code\u003e from \u003ccode\u003e@angular/upgrade\u003c/code\u003e is deprecated. Please use the entry from \u003ccode\u003e@angular/upgrade/static\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d8790972bea4c59a208219dd36d158b5d7e4fdde\"\u003ed8790972be\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd custom transformations for Cloudflare and Cloudinary image loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a6b8cb68afaded6999ee68f495512be1a9932ae4\"\u003ea6b8cb68af\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport custom transformations in ImageKit and Imgix loaders\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/640693da8e667c015662246152236585d9b24e7f\"\u003e640693da8e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd support for multiple swich cases matching\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ad3adc7c6d4094f1e3432a3f2e3bdc9862cb4fa\"\u003e0ad3adc7c6\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eSupport empty cases\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/99ad18a4ee82ecc5524106d1d403ccfa9bae2304\"\u003e99ad18a4ee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd stability debugging utility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a0dfa5fa86f40520b0e368a021b3c72009a45e8e\"\u003ea0dfa5fa86\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport rest arguments in function calls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e18fa8bc9d7e6801e2e89e635c2f759dc422317\"\u003e6e18fa8bc9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport spread elements in array literals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e407280ab53cde5f93c3a643457c848845c6ec8b\"\u003ee407280ab5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport spread expressions in object literals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/06be8034bb9b9adfc07ab0d40cd87c6ae5de02de\"\u003e06be8034bb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMicrotask scheduling should be used after any application synchronization\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/b4f584cf42235c94bb8389fa55bc634e23d7b010\"\u003eb4f584cf42\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ereturn \u003ccode\u003eStaticProvider\u003c/code\u003e for \u003ccode\u003eprovidePlatformInitializer\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ea5c97703ad3c6d8e4cb1b4297eec57629ce117\"\u003e1ea5c97703\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eallow focusing bound control from field state\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ec9dc94ceeb3c026c64e01c6889b7f5c6fd25a66\"\u003eec9dc94cee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd \u003ccode\u003econtext\u003c/code\u003e to \u003ccode\u003ecreateApplication\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab67988d2e5242eff0034483f984428d684acd02\"\u003eab67988d2e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eresolve JIT resources in \u003ccode\u003ecreateApplication\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5edceffd0431f5a25e111a731db521e966b91f86\"\u003e5edceffd04\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd controls for route cleanup\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a03c82564da6824e199ff48d5249ea8708040951\"\u003ea03c82564d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd scroll behavior controls on router navigation\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e44839b01640505e554fff16f24e08f282a557c0\"\u003ee44839b016\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd standalone function to create a comptued for isActive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c25d749d85374fff7745980cd9bb2673c661105a\"\u003ec25d749d85\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eExecute RunGuardsAndResolvers function in injection context\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1c00ab42f8714f2775ed75bbf3cdf0fd44ee32c3\"\u003e1c00ab42f8\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eextend paramters of RedirectFunction to include paramMap and queryParamMap\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7003e8d2417660f71b3a2a017aff3e650c8d9646\"\u003e7003e8d241\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003ePublish Router's integration with platform Navigation API as experimental\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c84d37277874cf7cbd7582a295d796ff113b9cc1\"\u003ec84d372778\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eSupport wildcard params with segments trailing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64737\"\u003e#64737\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/75fe8f8af9488bae6f7068b64d44500643c5d63f\"\u003e75fe8f8af9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erefactor\u003c/td\u003e\n\u003ctd\u003edeprecate \u003ccode\u003eVERSION\u003c/code\u003e export\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3954dc278b7a61ea2b82021041b030d8fc068c74\"\u003e\u003ccode\u003e3954dc2\u003c/code\u003e\u003c/a\u003e refactor(http): remove redundant providedIn: 'root' in XSRF_HEADER_NAME\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/03e2b3682693e47f7bf84fa12df45659ebb09599\"\u003e\u003ccode\u003e03e2b36\u003c/code\u003e\u003c/a\u003e refactor(core): update error message links to versioned docs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/66374\"\u003e#66374\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/74af7d85e5c6fbda8e2c7a2a61c26fcae437d14c\"\u003e\u003ccode\u003e74af7d8\u003c/code\u003e\u003c/a\u003e refactor(core): Use the provided Document value rather than global in FakeNav...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2b94299922b3cb09c63cb8eb517bcf3b94be8bb\"\u003e\u003ccode\u003ea2b9429\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;feat(router): add trailingSlash config option\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/12fccc5e99c9f6b1babf77fde52d84001e68f11a\"\u003e\u003ccode\u003e12fccc5\u003c/code\u003e\u003c/a\u003e feat(router): add trailingSlash config option\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3dfdb71d65ed15e7d3e69ffe3b89b7b4cef9504a\"\u003e\u003ccode\u003e3dfdb71\u003c/code\u003e\u003c/a\u003e docs: add docs for transform property in built-in loaders\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/dd58c4b667b74e978f5e5eae56af1204f84e2688\"\u003e\u003ccode\u003edd58c4b\u003c/code\u003e\u003c/a\u003e refactor(common): Add token to indicate whether precommit handler is supported\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a6b8cb68afaded6999ee68f495512be1a9932ae4\"\u003e\u003ccode\u003ea6b8cb6\u003c/code\u003e\u003c/a\u003e feat(common): support custom transformations in ImageKit and Imgix loaders\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/d8790972bea4c59a208219dd36d158b5d7e4fdde\"\u003e\u003ccode\u003ed879097\u003c/code\u003e\u003c/a\u003e feat(common): Add custom transformations for Cloudflare and Cloudinary image ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6270bba056cfaadb3fe0b2bf3b17036bdc28b90e\"\u003e\u003ccode\u003e6270bba\u003c/code\u003e\u003c/a\u003e ci: reformat files\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/v21.1.0/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@fortawesome/angular-fontawesome` from 3.0.0 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 21.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAngular 20.x is no longer supported. If you are using this version, please, stick with version 3.0.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/3.1.0\"\u003e4.0.0\u003c/a\u003e (2025-11-24)\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 21.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAngular 20.x is no longer supported. If you are using this version, please, stick with version 3.0.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/5e71eb5027ede783e649ffd0e1b9a64fc8a82602\"\u003e\u003ccode\u003e5e71eb5\u003c/code\u003e\u003c/a\u003e Release 4.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/5343c8473a811ecea04bb6d658f6fe32b70173ff\"\u003e\u003ccode\u003e5343c84\u003c/code\u003e\u003c/a\u003e Add support for Angular 21 (\u003ca href=\"https://redirect.github.com/FortAwesome/angular-fontawesome/issues/481\"\u003e#481\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/204c473ac5f3c10235642d1364055f955bf210fd\"\u003e\u003ccode\u003e204c473\u003c/code\u003e\u003c/a\u003e Reduce boilerplate in tests using direct component creation with bindings (\u003ca href=\"https://redirect.github.com/FortAwesome/angular-fontawesome/issues/478\"\u003e#478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/compare/3.0.0...4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ng-bootstrap/ng-bootstrap` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/releases\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e21.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cp\u003eThis release includes \u003cstrong\u003ecomponent entry points\u003c/strong\u003e. This allows applications importing ng-bootstrap to speed up their build and have a slightly smaller bundle.\u003c/p\u003e\n\u003cp\u003eFor example, you can use the ng-bootstrap pagination component like this:\u003c/p\u003e\n\u003cpre lang=\"typescript\"\u003e\u003ccode\u003eimport { NgbPagination } from '@ng-bootstrap/ng-bootstrap/pagination';\n\u003cp\u003e\u003ca href=\"https://github.com/Component\"\u003e\u003ccode\u003e@​Component\u003c/code\u003e\u003c/a\u003e({\ntemplate: \u003ccode\u003e\u0026amp;lt;ngb-pagination [collectionSize]=\u0026amp;quot;50\u0026amp;quot; /\u0026amp;gt;\u003c/code\u003e,\nimports: [NgbPagination]\n})\nexport class MyComponent {}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003ePlease note that this is not a breaking change, you will still be able to import everything from the main entrypoint.\u003c/p\u003e\n\u003ch2\u003eRegarding Zoneless support\u003c/h2\u003e\n\u003cp\u003eng-bootstrap demo has been using \u003ca href=\"https://angular.dev/guide/zoneless\"\u003eZoneless Change Detection\u003c/a\u003e since version 17.0.1\u003cbr /\u003e\nIf you have any issue using ng-bootstrap in a zoneless app, please open a bug and we will patch ng-bootstrap 20\u003c/p\u003e\n\u003ch2\u003eMiscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated all links of the demo website from angular.io to their corresponding one on angular.dev\u003c/li\u003e\n\u003cli\u003eUpdated all demo codes to use the standalone components instead of modules\u003c/li\u003e\n\u003cli\u003eMoved unit tests to vitest\u003c/li\u003e\n\u003cli\u003eStackblitzes now run on zoneless\u003c/li\u003e\n\u003cli\u003eFixed stackblitz links for popover / tooltip custom target examples\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e20.0.0-rc.0\u003c/h2\u003e\n\u003cp\u003eThis release candidate version bumps minimum required versions to Angular 21.0.0\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cp\u003eThis release includes \u003cstrong\u003ecomponent entry points\u003c/strong\u003e. This allows applications importing ng-bootstrap to speed up their build and have a slightly smaller bundle.\u003c/p\u003e\n\u003cp\u003eFor example, you can use the ng-bootstrap pagination component like this:\u003c/p\u003e\n\u003cpre lang=\"typescript\"\u003e\u003ccode\u003eimport { NgbPagination } from '@ng-bootstrap/ng-bootstrap/pagination';\n\u003cp\u003e\u003ca href=\"https://github.com/Component\"\u003e\u003ccode\u003e@​Component\u003c/code\u003e\u003c/a\u003e({\ntemplate: \u003ccode\u003e\u0026amp;lt;ngb-pagination [collectionSize]=\u0026amp;quot;50\u0026amp;quot; /\u0026amp;gt;\u003c/code\u003e,\nimports: [NgbPagination]\n}\nexport class MyComponent {}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/blob/master/CHANGELOG.md\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.1...20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-12-12)\u003c/h1\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e21.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cp\u003eThis release includes \u003cstrong\u003ecomponent entry points\u003c/strong\u003e. This allows applications importing ng-bootstrap to speed up their build and have a slightly smaller bundle.\u003c/p\u003e\n\u003cp\u003eFor example, you can use the ng-bootstrap pagination component like this:\u003c/p\u003e\n\u003cpre lang=\"typescript\"\u003e\u003ccode\u003eimport { NgbPagination } from '@ng-bootstrap/ng-bootstrap/pagination';\n\u003cp\u003e\u003ca href=\"https://github.com/Component\"\u003e\u003ccode\u003e@​Component\u003c/code\u003e\u003c/a\u003e({\ntemplate: \u003ccode\u003e\u0026amp;lt;ngb-pagination [collectionSize]=\u0026amp;quot;50\u0026amp;quot; /\u0026amp;gt;\u003c/code\u003e,\nimports: [NgbPagination]\n})\nexport class MyComponent {}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003ePlease note that this is not a breaking change, you will still be able to import everything from the main entrypoint.\u003c/p\u003e\n\u003ch2\u003eRegarding Zoneless support\u003c/h2\u003e\n\u003cp\u003eng-bootstrap demo has been using \u003ca href=\"https://angular.dev/guide/zoneless\"\u003eZoneless Change Detection\u003c/a\u003e since version 17.0.1\u003cbr /\u003e\nIf you have any issue using ng-bootstrap in a zoneless app, please open a bug and we will patch ng-bootstrap 20\u003c/p\u003e\n\u003ch2\u003eMiscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated all links of the demo website from angular.io to their corresponding one on angular.dev\u003c/li\u003e\n\u003cli\u003eUpdated all demo codes to use the standalone components instead of modules\u003c/li\u003e\n\u003cli\u003eMoved unit tests to vitest\u003c/li\u003e\n\u003cli\u003eStackblitzes now run on zoneless\u003c/li\u003e\n\u003cli\u003eFixed stackblitz links for popover / tooltip custom target examples\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/0cba2e312e572a8554a9006069e241027de3b05a\"\u003e\u003ccode\u003e0cba2e3\u003c/code\u003e\u003c/a\u003e docs: release 20.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d71730a78168b405664e5fe1ed6e8482fcfb865e\"\u003e\u003ccode\u003ed71730a\u003c/code\u003e\u003c/a\u003e docs: add scrollspy tag to package.json\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/e099c06a610e1eaef12539d6503b1b434b08200a\"\u003e\u003ccode\u003ee099c06\u003c/code\u003e\u003c/a\u003e refactor: upgrade deps for ejs, primsjs and gh-pages (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4878\"\u003e#4878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/e26242de2e36aa5fec6e87f2120196f19b665d01\"\u003e\u003ccode\u003ee26242d\u003c/code\u003e\u003c/a\u003e fix: demo stackblitzes after switch to multiple entrypoints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/5aa50dce3b3d39e19a20c2dea90bfa0b0c937dad\"\u003e\u003ccode\u003e5aa50dc\u003c/code\u003e\u003c/a\u003e demo: include 19 in historical versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/3a8fee8fc28b2921e5d421b4befce5349f8ab99b\"\u003e\u003ccode\u003e3a8fee8\u003c/code\u003e\u003c/a\u003e ci: unexpose utils (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4877\"\u003e#4877\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1eeca8a56ce5ec801acf4f62386a15ab4fad08c7\"\u003e\u003ccode\u003e1eeca8a\u003c/code\u003e\u003c/a\u003e test: drop saucelabs and add webkit and firefox to units\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/91e05bf0f1f794c174010140ecefe7e2a5d4cce4\"\u003e\u003ccode\u003e91e05bf\u003c/code\u003e\u003c/a\u003e test: fix sauce browser configs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/403121b5564f1e647899410ae8a3c10304762b08\"\u003e\u003ccode\u003e403121b\u003c/code\u003e\u003c/a\u003e test: set saucelabs region to us\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/27516a00881c4b5305792b80ffa31759b420d20b\"\u003e\u003ccode\u003e27516a0\u003c/code\u003e\u003c/a\u003e test: move units to vitest (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4875\"\u003e#4875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.1...20.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-cookie-service` from 20.1.1 to 21.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/releases\"\u003engx-cookie-service's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(tests): migrate from Karma/Jasmine to Vitest for testing framework and update configurations by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/372\"\u003estevermeister/ngx-cookie-service#372\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v21.0.0...v21.1.0\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v21.0.0...v21.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(core): upgrade Angular and related dependencies to version 21.0.0 by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/371\"\u003estevermeister/ngx-cookie-service#371\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v20.1.1...v21.0.0\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v20.1.1...v21.0.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/268d9a6728741f605334cd3e3331253385c0ced5\"\u003e\u003ccode\u003e268d9a6\u003c/code\u003e\u003c/a\u003e feat(tests): migrate from Karma/Jasmine to Vitest for testing framework and u...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/8c1895d4edbd1ef4a667996eb25aabbcb063f51a\"\u003e\u003ccode\u003e8c1895d\u003c/code\u003e\u003c/a\u003e chore(package): bump version to 21.1.0 for ngx-cookie-service and ngx-cookie-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/195f56c90108d1ad120e38d3d4a203817f160bd9\"\u003e\u003ccode\u003e195f56c\u003c/code\u003e\u003c/a\u003e feat(tests): migrate from Karma/Jasmine to Vitest for testing framework and u...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/3726ea778cf4dfb83908b808dc45db90bf56b005\"\u003e\u003ccode\u003e3726ea7\u003c/code\u003e\u003c/a\u003e chore(package): upgrade Angular and related dependencies to version 21.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/f6ca6fd5c8291a2e08a6b74f68bb0cb4b17ab914\"\u003e\u003ccode\u003ef6ca6fd\u003c/code\u003e\u003c/a\u003e feat(core): upgrade Angular and related dependencies to version 21.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/5a3ecc06a98ad6d204747b915a7b5008411e2942\"\u003e\u003ccode\u003e5a3ecc0\u003c/code\u003e\u003c/a\u003e chore(package): upgrade Angular and related dependencies to version 21.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/f892c7e9e41aad189114fe60a34122bb6e941855\"\u003e\u003ccode\u003ef892c7e\u003c/code\u003e\u003c/a\u003e chore(package): upgrade Angular and related dependencies to version 21.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/283369387f71727bca5617c2a81a64614c309436\"\u003e\u003ccode\u003e2833693\u003c/code\u003e\u003c/a\u003e chore(package): upgrade Angular and related dependencies to version 21.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/c30836d983cb92ee29460fb10b6996b15ba2d3ee\"\u003e\u003ccode\u003ec30836d\u003c/code\u003e\u003c/a\u003e chore(package): upgrade Angular and related dependencies to version 21.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/39cbf0ed1477388c7ef2d8cec38f006008762708\"\u003e\u003ccode\u003e39cbf0e\u003c/code\u003e\u003c/a\u003e Add SSR Cookie Service Demo link for CommonEngine\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v20.1.1...v21.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-infinite-scroll` from 20.0.0 to 21.0.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/orizens/ngx-infinite-scroll/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zone.js` from 0.15.1 to 0.16.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/packages/zone.js/CHANGELOG.md\"\u003ezone.js's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e0.16.0 (2025-11-19)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(zone.js): Support jasmine v6 (\u003ca href=\"https://github.com/angular/angular/commit/48abe00\"\u003e48abe00\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(zone.js): waitForAsync should pass args to the test function (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61755\"\u003e#61755\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/3c216c1\"\u003e3c216c1\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/61755\"\u003e#61755\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/61717\"\u003e#61717\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/61755\"\u003e#61755\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(zone.js): Add internal implementation for auto ticking fakeAsync (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/62135\"\u003e#62135\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/0a827f9\"\u003e0a827f9\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/62135\"\u003e#62135\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/62135\"\u003e#62135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(zone.js): Improve missing proxy zone error for jest imported (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/64497\"\u003e#64497\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/ced2fa5\"\u003eced2fa5\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/64497\"\u003e#64497\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/47603\"\u003e#47603\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/64497\"\u003e#64497\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(zone.js): remove legacy browser support (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/63511\"\u003e#63511\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/2e46596\"\u003e2e46596\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/63511\"\u003e#63511\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/63511\"\u003e#63511\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(zone.js): remove unused jasmine globalerror monkey patching. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/63077\"\u003e#63077\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/9aef481\"\u003e9aef481\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/63077\"\u003e#63077\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/63072\"\u003e#63072\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/63077\"\u003e#63077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(zone.js): refactor tests to remove usage of shelljs (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/64042\"\u003e#64042\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/422a3b9\"\u003e422a3b9\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/64042\"\u003e#64042\u003c/a\u003e \u003ca href=\"https://redirect.github.com/angular/angular/issues/64042\"\u003e#64042\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGE\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIE/Non-Chromium Edge are not supported anymore.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/58014cb01a2ec4e7c5338806b5f1e3fdd7deefb9\"\u003e\u003ccode\u003e58014cb\u003c/code\u003e\u003c/a\u003e release: cut the zone.js-0.16.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/d99b7437d13486cb9e63c263936d4b867fedea6a\"\u003e\u003ccode\u003ed99b743\u003c/code\u003e\u003c/a\u003e build: update all non-major dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3cde920ecff18b36134c531a97006396f18bce22\"\u003e\u003ccode\u003e3cde920\u003c/code\u003e\u003c/a\u003e build: update all non-major dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/26fed34e0e340166b70702d6177ad639bbfa94aa\"\u003e\u003ccode\u003e26fed34\u003c/code\u003e\u003c/a\u003e build: format md files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/2b711812887dd8a273c91a3cf0c5421113c84eaf\"\u003e\u003ccode\u003e2b71181\u003c/code\u003e\u003c/a\u003e build: update all non-major dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/48abe007d914626c6bb5f8fe17b3b07881221794\"\u003e\u003ccode\u003e48abe00\u003c/code\u003e\u003c/a\u003e fix(zone.js): Support jasmine v6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/77ead34cc7d03500d8ceafecc7086a069becfcee\"\u003e\u003ccode\u003e77ead34\u003c/code\u003e\u003c/a\u003e build: update dependency vitest to v4 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/64635\"\u003e#64635\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ced2fa52539eb4ef64197413224e60c1ee231e5c\"\u003e\u003ccode\u003eced2fa5\u003c/code\u003e\u003c/a\u003e refactor(zone.js): Improve missing proxy zone error for jest imported (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/64497\"\u003e#64497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/fad6e1351e79548cdb232970e0ba45de06758604\"\u003e\u003ccode\u003efad6e13\u003c/code\u003e\u003c/a\u003e build: update all non-major dependencies (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/64514\"\u003e#64514\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/10aa4f9cf3a4400d9a2f442b4275fbd98cf4516f\"\u003e\u003ccode\u003e10aa4f9\u003c/code\u003e\u003c/a\u003e build: update all non-major dependencies (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/64488\"\u003e#64488\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/zone.js-0.16.0/packages/zone.js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/custom-esbuild` from 20.0.0 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-esbuild/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.1 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.0 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187\"\u003e9c0d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f7\"\u003e5d8e5f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@21.0.1-beta.0...@angular-builders/custom-esbuild@21.0.2\"\u003e21.0.2\u003c/a\u003e (2026-01-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@21.0.1-beta.0...@angular-builders/custom-esbuild@21.0.1\"\u003e21.0.1\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@21.0.0-beta.1...@angular-builders/custom-esbuild@21.0.1-beta.0\"\u003e21.0.1-beta.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@21.0.0-beta.1...@angular-builders/custom-esbuild@21.0.0\"\u003e21.0.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@20.1.0-beta.1...@angular-builders/custom-esbuild@21.0.0-beta.1\"\u003e21.0.0-beta.1\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAll packages now require Angular 21\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to Angular 21 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/98059dcfc2c2654f4672cb6f4597835522ee50ba\"\u003e98059dc\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/just-jeb/angular-builders/issues/1957\"\u003e#1957\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@20.1.0-beta.1...@angular-builders/custom-esbuild@21.0.0-beta.0\"\u003e21.0.0-beta.0\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAll packages now require Angular 21\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to Angular 21 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/98059dcfc2c2654f4672cb6f4597835522ee50ba\"\u003e98059dc\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/just-jeb/angular-builders/issues/1957\"\u003e#1957\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@20.1.0-beta.0...@angular-builders/custom-esbuild@20.1.0-beta.1\"\u003e20.1.0-beta.1\u003c/a\u003e (2025-11-13)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/df93aba91f4bdace2a54e0052e9b4603638f9fd4\"\u003e\u003ccode\u003edf93aba\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4af87374773bedb22c0a050d8ece327a51f432d3\"\u003e\u003ccode\u003e4af8737\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1f20a38d517527be88d140bb36dc00cf6bcb7583\"\u003e\u003ccode\u003e1f20a38\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187e93be6b9ba7773432826fc2f63ca9cff6\"\u003e\u003ccode\u003e9c0d187\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f70dc25f05fa8ea6e67efe07d2271182c9a\"\u003e\u003ccode\u003e5d8e5f7\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9f8d27afa52bfa0a44d3aa97081c0e0bf94d2a5c\"\u003e\u003ccode\u003e9f8d27a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/63f716a171b650bdfed007bec8f286e28f8b6c0c\"\u003e\u003ccode\u003e63f716a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1d1aa1b1eb60aa4379ac38d5913ce0a31dd45160\"\u003e\u003ccode\u003e1d1aa1b\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/c457fdeee426b904bd0c0864e31c42d91864ce32\"\u003e\u003ccode\u003ec457fde\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/98059dcfc2c2654f4672cb6f4597835522ee50ba\"\u003e\u003ccode\u003e98059dc\u003c/code\u003e\u003c/a\u003e chore!: upgrade to Angular 21\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-esbuild@21.0.3/packages/custom-esbuild\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by [GitHub Actions](\u003ca href=\"https://www.npmjs.com/~GitHub\"\u003ehttps://www.npmjs.com/~GitHub\u003c/a\u003e Actions), a new releaser for \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/custom-webpack` from 20.0.0 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-webpack/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.1 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.0 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187\"\u003e9c0d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f7\"\u003e5d8e5f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@21.0.1-beta.0...@angular-builders/custom-webpack@21.0.2\"\u003e21.0.2\u003c/a\u003e (2026-01-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@21.0.1-beta.0...@angular-builders/custom-webpack@21.0.1\"\u003e21.0.1\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@21.0.0-beta.1...@angular-builders/custom-webpack@21.0.1-beta.0\"\u003e21.0.1-beta.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@21.0.0-beta.1...@angular-builders/custom-webpack@21.0.0\"\u003e21.0.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.1-beta.1...@angular-builders/custom-webpack@21.0.0-beta.1\"\u003e21.0.0-beta.1\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAll packages now require Angular 21\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to Angular 21 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/98059dcfc2c2654f4672cb6f4597835522ee50ba\"\u003e98059dc\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/just-jeb/angular-builders/issues/1957\"\u003e#1957\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.1-beta.1...@angular-builders/custom-webpack@21.0.0-beta.0\"\u003e21.0.0-beta.0\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAll packages now require Angular 21\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to Angular 21 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/98059dcfc2c2654f4672cb6f4597835522ee50ba\"\u003e98059dc\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/just-jeb/angular-builders/issues/1957\"\u003e#1957\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.1-beta.0...@angular-builders/custom-webpack@20.0.1-beta.1\"\u003e20.0.1-beta.1\u003c/a\u003e (2025-11-13)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/df93aba91f4bdace2a54e0052e9b4603638f9fd4\"\u003e\u003ccode\u003edf93aba\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4af87374773bedb22c0a050d8ece327a51f432d3\"\u003e\u003ccode\u003e4af8737\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1f20a38d517527be88d140bb36dc00cf6bcb7583\"\u003e\u003ccode\u003e1f20a38\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187e93be6b9ba7773432826fc2f63ca9cff6\"\u003e\u003ccode\u003e9c0d187\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f70dc25f05fa8ea6e67efe07d2271182c9a\"\u003e\u003ccode\u003e5d8e5f7\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9f8d27afa52bfa0a44d3aa97081c0e0bf94d2a5c\"\u003e\u003ccode\u003e9f8d27a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/63f716a171b650bdfed007bec8f286e28f8b6c0c\"\u003e\u003ccode\u003e63f716a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1d1aa1b1eb60aa4379ac38d5913ce0a31dd45160\"\u003e\u003ccode\u003e1d1aa1b\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/c457fdeee426b904bd0c0864e31c42d91864ce32\"\u003e\u003ccode\u003ec457fde\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/98059dcfc2c2654f4672cb6f4597835522ee50ba\"\u003e\u003ccode\u003e98059dc\u003c/code\u003e\u003c/a\u003e chore!: upgrade to Angular 21\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-webpack@21.0.3/packages/custom-webpack\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by [GitHub Actions](\u003ca href=\"https://www.npmjs.com/~GitHub\"\u003ehttps://www.npmjs.com/~GitHub\u003c/a\u003e Actions), a new releaser for \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 20.0.0 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.1 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e21.0.3-beta.0 (2026-01-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187\"\u003e9c0d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eci(release): publish (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f7\"\u003e5d8e5f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.2\"\u003e21.0.2\u003c/a\u003e (2026-01-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.1-beta.0...@angular-builders/jest@21.0.1\"\u003e21.0.1\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.1-beta.0\"\u003e21.0.1-beta.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@21.0.0-beta.1...@angular-builders/jest@21.0.0\"\u003e21.0.0\u003c/a\u003e (2026-01-12)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.1-beta.1...@angular-builders/jest@21.0.0-beta.1\"\u003e21.0.0-beta.1\u003c/a\u003e (2025-12-17)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e configPath option renamed to config\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe config option now accepts:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFile path (string): \u0026quot;jest.config.js\u0026quot;\u003c/li\u003e\n\u003cli\u003eJSON string: '{\u0026quot;verbose\u0026quot;: true}'\u003c/li\u003e\n\u003cli\u003eInline object in angular.json\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e zoneless is now the default\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eApps using zone.js change detection must set zoneless: false in angular.json.\u003c/p\u003e\n\u003cp\u003eglobalMocks option now only supports matchMedia. The styleTransform,\ngetComputedStyle, and doctype mocks have been removed as Jest 30's\njsdom supports these natively.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ejest:\u003c/strong\u003e Requires Jest 30\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eUsers must upgrade:\nnpm install --save-dev jest@^30.0.0 jest-environment-jsdom@^30.0.0 jsdom@^26.0.0\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/df93aba91f4bdace2a54e0052e9b4603638f9fd4\"\u003e\u003ccode\u003edf93aba\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4af87374773bedb22c0a050d8ece327a51f432d3\"\u003e\u003ccode\u003e4af8737\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1f20a38d517527be88d140bb36dc00cf6bcb7583\"\u003e\u003ccode\u003e1f20a38\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9c0d187e93be6b9ba7773432826fc2f63ca9cff6\"\u003e\u003ccode\u003e9c0d187\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/5d8e5f70dc25f05fa8ea6e67efe07d2271182c9a\"\u003e\u003ccode\u003e5d8e5f7\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9f8d27afa52bfa0a44d3aa97081c0e0bf94d2a5c\"\u003e\u003ccode\u003e9f8d27a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/63f716a171b650bdfed007bec8f286e28f8b6c0c\"\u003e\u003ccode\u003e63f716a\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/1d1aa1b1eb60aa4379ac38d5913ce0a31dd45160\"\u003e\u003ccode\u003e1d1aa1b\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/c457fdeee426b904bd0c0864e31c42d91864ce32\"\u003e\u003ccode\u003ec457fde\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/7bfe31233d86cd04798055d19a552e7d8ab424a3\"\u003e\u003ccode\u003e7bfe312\u003c/code\u003e\u003c/a\u003e feat(jest)!: rename configPath to config with object support\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@21.0.3/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by [GitHub Actions](\u003ca href=\"https://www.npmjs.com/~GitHub\"\u003ehttps://www.npmjs.com/~GitHub\u003c/a\u003e Actions), a new releaser for \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/build` from 20.3.10 to 21.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/releases\"\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.1.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/36cf3afb485a01f86c4c90f136b38a3cf338e313\"\u003e\u003cimg src=\"https://img.shields.io/badge/36cf3afb4-feat-blue\" alt=\"feat - 36cf3afb4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd browserMode option to jasmine-vitest schematic\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/e71a72ffdc426e26bfb4f0bb92e8f5795a621c18\"\u003e\u003cimg src=\"https://img.shields.io/badge/e71a72ffd-feat-blue\" alt=\"feat - e71a72ffd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003egenerate detailed migration report for \u003ccode\u003erefactor-jasmine-vitest\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/18cf6c51b72ce5c7f23012585ed992cf91cef5ed\"\u003e\u003cimg src=\"https://img.shields.io/badge/18cf6c51b-fix-green\" alt=\"fix - 18cf6c51b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd MCP configuration file to new workspaces\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/772e6efe7acb2d2318a57ba77092a85fc286c51b\"\u003e\u003cimg src=\"https://img.shields.io/badge/772e6efe7-feat-blue\" alt=\"feat - 772e6efe7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd 'test' and 'e2e' MCP tools\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/8efb8631842401e219e20dd7955512d4a90a28a3\"\u003e\u003cimg src=\"https://img.shields.io/badge/8efb86318-feat-blue\" alt=\"feat - 8efb86318\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd \u0026quot;all\u0026quot; as an experimental tool group\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/c3c9ac5067275461e2d8caefba81ac9701949776\"\u003e\u003cimg src=\"https://img.shields.io/badge/c3c9ac506-feat-blue\" alt=\"feat - c3c9ac506\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd MCP tools for building and running devservers\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d635a6c6335d0838fc0977f6742f6aa9f769c527\"\u003e\u003cimg src=\"https://img.shields.io/badge/d635a6c63-feat-blue\" alt=\"feat - d635a6c63\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd signal forms lessons\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d8b76e93d3e9e4e7bd7ad6e12fdf59cd663cbb8e\"\u003e\u003cimg src=\"https://img.shields.io/badge/d8b76e93d-fix-green\" alt=\"fix - d8b76e93d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly handle yarn classic tag manifest fetching\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/7ab5c0b0a1c637f3e0adb71486e5e7e8716561e4\"\u003e\u003cimg src=\"https://img.shields.io/badge/7ab5c0b0a-fix-green\" alt=\"fix - 7ab5c0b0a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly spawn package managers on Windows in new abstraction\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/348096623326857a5d8cf77d56712776e1190180\"\u003e\u003cimg src=\"https://img.shields.io/badge/348096623-fix-green\" alt=\"fix - 348096623\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eenhance list_projects MCP tool file system traversal and symlink handling\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/316fca8626d51b28ea8cd840f3815b7c6dfcfffa\"\u003e\u003cimg src=\"https://img.shields.io/badge/316fca862-fix-green\" alt=\"fix - 316fca862\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle array output from npm view in manifest parser\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/032257a6d00360d2c4e6d5406409dcfa5b27d1d5\"\u003e\u003cimg src=\"https://img.shields.io/badge/032257a6d-fix-green\" alt=\"fix - 032257a6d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove signal forms lesson examples in AI tutor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/18d74dde8938dbe566df80753d5c148c19040179\"\u003e\u003cimg src=\"https://img.shields.io/badge/18d74dde8-fix-green\" alt=\"fix - 18d74dde8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erename mcp devserver tools to comply with naming spec\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1ad773671afa2849a966f9974cb30e7c8e8ed7d4\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ad773671-fix-green\" alt=\"fix - 1ad773671\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate dependency \u003ccode\u003e@​modelcontextprotocol/sdk\u003c/code\u003e to v1.25.2\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/45d4f5668018362f90fcc4cdc487470286f03c02\"\u003e\u003cimg src=\"https://img.shields.io/badge/45d4f5668-fix-green\" alt=\"fix - 45d4f5668\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate yarn berry package manager configuration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/122ed27c906613b7966cbda8fe2f36dbe6f60198\"\u003e\u003cimg src=\"https://img.shields.io/badge/122ed27c9-fix-green\" alt=\"fix - 122ed27c9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse project-local temporary directory in ng add\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/a15db28b29f6f43bef1ed1ca7c6a963d9943f801\"\u003e\u003cimg src=\"https://img.shields.io/badge/a15db28b2-perf-orange\" alt=\"perf - a15db28b2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecache resolved specific version in package manager abstraction\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/240588b7e3c8698c83110793ab98d20caee4e1a4\"\u003e\u003cimg src=\"https://img.shields.io/badge/240588b7e-perf-orange\" alt=\"perf - 240588b7e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eoptimize \u003ccode\u003eng add\u003c/code\u003e version discovery\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1eda0a99f89f625f8db1ecfe4873a7672e625401\"\u003e\u003cimg src=\"https://img.shields.io/badge/1eda0a99f-feat-blue\" alt=\"feat - 1eda0a99f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edirectly support ng-packagr in unit-test builder\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/87175f9dcdb7349dc8701fa1d5cf61c1b8542d42\"\u003e\u003cimg src=\"https://img.shields.io/badge/87175f9dc-feat-blue\" alt=\"feat - 87175f9dc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edisable TestBed teardown during debugging in Vitest\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1e39c77a4fe272ccab1a1d8bd58eef1ce608a6c7\"\u003e\u003cimg src=\"https://img.shields.io/badge/1e39c77a4-fix-green\" alt=\"fix - 1e39c77a4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003einject source-map-support for Vitest browser tests\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/3fd7dcd764be0d0afb9cd792d53268d6f314df83\"\u003e\u003cimg src=\"https://img.shields.io/badge/3fd7dcd76-fix-green\" alt=\"fix - 3fd7dcd76\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enormalize roots to POSIX in test discovery for Windows compatibility\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/164e7dbbc2b06bbd5aab84937c903e0590591c60\"\u003e\u003cimg src=\"https://img.shields.io/badge/164e7dbbc-fix-green\" alt=\"fix - 164e7dbbc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve test files correctly on Windows when using non-C drives\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ad99e00ad7edd17e369777c8d38b4137ea736121\"\u003e\u003cimg src=\"https://img.shields.io/badge/ad99e00ad-fix-green\" alt=\"fix - ad99e00ad\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esimplify SSL handling for \u003ccode\u003eng serve\u003c/code\u003e with SSR (\u003ca href=\"https://redirect.github.com/angular/angular-cli/issues/31722\"\u003e#31722\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.1.0-rc.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/9006ec057ced126f1c7822ffd36adee7748819ed\"\u003e\u003cimg src=\"https://img.shields.io/badge/9006ec057-fix-green\" alt=\"fix - 9006ec057\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emove 'provideZoneChangeDetection' to the root module\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d4febf4698ac33f9aa5a2d2d6183adca34f7b5\"\u003e\u003cimg src=\"https://img.shields.io/badge/42d4febf4-fix-green\" alt=\"fix - 42d4febf4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate application schematics for module-based apps to use 'provideZoneChangeDetection'\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5dfc0eea03c1faecd636fac775b0f5bc5f0ed430\"\u003e\u003cimg src=\"https://img.shields.io/badge/5dfc0eea0-fix-green\" alt=\"fix - 5dfc0eea0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate default app component message\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/424a465df7fa131803de4184f787ad9573a65090\"\u003e\u003cimg src=\"https://img.shields.io/badge/424a465df-fix-green\" alt=\"fix - 424a465df\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate default app component welcome message\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/772e6efe7acb2d2318a57ba77092a85fc286c51b\"\u003e\u003cimg src=\"https://img.shields.io/badge/772e6efe7-feat-blue\" alt=\"feat - 772e6efe7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd 'test' and 'e2e' MCP tools\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/8efb8631842401e219e20dd7955512d4a90a28a3\"\u003e\u003cimg src=\"https://img.shields.io/badge/8efb86318-feat-blue\" alt=\"feat - 8efb86318\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd \u0026quot;all\u0026quot; as an experimental tool group\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/316fca8626d51b28ea8cd840f3815b7c6dfcfffa\"\u003e\u003cimg src=\"https://img.shields.io/badge/316fca862-fix-green\" alt=\"fix - 316fca862\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle array output from npm view in manifest parser\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1ad773671afa2849a966f9974cb30e7c8e8ed7d4\"\u003e\u003cimg src=\"https://img.shields.io/badge/1ad773671-fix-green\" alt=\"fix - 1ad773671\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate dependency \u003ccode\u003e@​modelcontextprotocol/sdk\u003c/code\u003e to v1.25.2\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.1.0 (2026-01-14)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/772e6efe7acb2d2318a57ba77092a85fc286c51b\"\u003e772e6efe7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd 'test' and 'e2e' MCP tools\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/8efb8631842401e219e20dd7955512d4a90a28a3\"\u003e8efb86318\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd \u0026quot;all\u0026quot; as an experimental tool group\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/c3c9ac5067275461e2d8caefba81ac9701949776\"\u003ec3c9ac506\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdd MCP tools for building and running devservers\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d635a6c6335d0838fc0977f6742f6aa9f769c527\"\u003ed635a6c63\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd signal forms lessons\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d8b76e93d3e9e4e7bd7ad6e12fdf59cd663cbb8e\"\u003ed8b76e93d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly handle yarn classic tag manifest fetching\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/7ab5c0b0a1c637f3e0adb71486e5e7e8716561e4\"\u003e7ab5c0b0a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly spawn package managers on Windows in new abstraction\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/348096623326857a5d8cf77d56712776e1190180\"\u003e348096623\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eenhance list_projects MCP tool file system traversal and symlink handling\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/316fca8626d51b28ea8cd840f3815b7c6dfcfffa\"\u003e316fca862\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle array output from npm view in manifest parser\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/032257a6d00360d2c4e6d5406409dcfa5b27d1d5\"\u003e032257a6d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eimprove signal forms lesson examples in AI tutor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/18d74dde8938dbe566df80753d5c148c19040179\"\u003e18d74dde8\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003erename mcp devserver tools to comply with naming spec\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1ad773671afa2849a966f9974cb30e7c8e8ed7d4\"\u003e1ad773671\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate dependency \u003ccode\u003e@​modelcontextprotocol/sdk\u003c/code\u003e to v1.25.2\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/45d4f5668018362f90fcc4cdc487470286f03c02\"\u003e45d4f5668\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate yarn berry package manager configuration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/122ed27c906613b7966cbda8fe2f36dbe6f60198\"\u003e122ed27c9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003euse project-local temporary directory in ng add\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/a15db28b29f6f43bef1ed1ca7c6a963d9943f801\"\u003ea15db28b2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003ecache resolved specific version in package manager abstraction\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/240588b7e3c8698c83110793ab98d20caee4e1a4\"\u003e240588b7e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003eoptimize \u003ccode\u003eng add\u003c/code\u003e version discovery\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/36cf3afb485a01f86c4c90f136b38a3cf338e313\"\u003e36cf3afb4\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd browserMode option to jasmine-vitest schematic\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/e71a72ffdc426e26bfb4f0bb92e8f5795a621c18\"\u003ee71a72ffd\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003egenerate detailed migration report for \u003ccode\u003erefactor-jasmine-vitest\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/18cf6c51b72ce5c7f23012585ed992cf91cef5ed\"\u003e18cf6c51b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd MCP configuration file to new workspaces\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead...\n\n_Description has been truncated_","html_url":"https://github.com/atomfrede/generator-jhipster/pull/6049","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/atomfrede%2Fgenerator-jhipster/issues/6049","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6049/packages"}},{"old_version":null,"new_version":null,"update_type":null,"path":"/alcs-frontend","pr_created_at":"2025-12-03T17:44:23.000Z","version_change":null,"issue":{"uuid":"3691252583","node_id":"PR_kwDOHn-f-c6240CF","number":2682,"state":"closed","title":"Bump @angular/common, @angular/cdk, @angular/forms, @angular/material, @angular/material-experimental, @angular/material-moment-adapter, @angular/platform-browser, @angular/platform-browser-dynamic, @angular/router, @ng-matero/extensions, @ng-select/ng-option-highlight and @angular-builders/jest in /alcs-frontend","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-30T00:15:13.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-03T17:44:23.000Z","updated_at":"2026-01-30T00:15:21.000Z","time_to_close":4948250,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@angular/common, @angular/cdk, @angular/forms, @angular/material, @angular/material-experimental, @angular/material-moment-adapter, @angular/platform-browser, @angular/platform-browser-dynamic, @angular/router, @ng-matero/extensions, @ng-select/ng-option-highlight"},{"name":"@angular-builders/jest","repository_url":"https://github.com/just-jeb/angular-builders"}],"path":"/alcs-frontend","ecosystem":"npm"},"body":"Bumps [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common), [@angular/cdk](https://github.com/angular/components), [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms), [@angular/material](https://github.com/angular/components), [@angular/material-experimental](https://github.com/angular/components), [@angular/material-moment-adapter](https://github.com/angular/components), [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser), [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic), [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router), [@ng-matero/extensions](https://github.com/ng-matero/extensions), [@ng-select/ng-option-highlight](https://github.com/ng-select/ng-select) and [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest). These dependencies needed to be updated together.\nUpdates `@angular/common` from 17.3.12 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.3\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5a80a48e962f72825050202198b32abbfee66714\"\u003e\u003cimg src=\"https://img.shields.io/badge/5a80a48e96-fix-green\" alt=\"fix - 5a80a48e96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid allocating an object for signals in production mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1f1856e897e0a10e2ca6d934c80fd69d1ac06210\"\u003e\u003cimg src=\"https://img.shields.io/badge/1f1856e897-fix-green\" alt=\"fix - 1f1856e897\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003echeck that field radio button values are strings\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8c3304c766131b031b736ee3fe2ec9c9a42fbe07\"\u003e\u003cimg src=\"https://img.shields.io/badge/8c3304c766-fix-green\" alt=\"fix - 8c3304c766\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erun animation queue in environment injector context\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4bb085311e24966ef2dd673f23746988c449c7ff\"\u003e\u003cimg src=\"https://img.shields.io/badge/4bb085311e-fix-green\" alt=\"fix - 4bb085311e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to inject viewProviders when host directive with providers is present\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/609699ae1781a9160b0f474b7ebe0998221c0722\"\u003e\u003cimg src=\"https://img.shields.io/badge/609699ae17-perf-orange\" alt=\"perf - 609699ae17\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003etree shake unused dynamic \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b4ab876e811b4e3a6f9617a2b379f62cf187403\"\u003e\u003cimg src=\"https://img.shields.io/badge/6b4ab876e8-feat-blue\" alt=\"feat - 6b4ab876e8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAllows transforms on \u003ccode\u003eFormUiControl\u003c/code\u003e signals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a5dbd4b382417fc111d6a622862a015c47027a41\"\u003e\u003cimg src=\"https://img.shields.io/badge/a5dbd4b382-fix-green\" alt=\"fix - a5dbd4b382\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport dynamic \u003ccode\u003e[field]\u003c/code\u003e bindings (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/20474d3f0fd7c64071add6e84acf720627e5c19b\"\u003e\u003cimg src=\"https://img.shields.io/badge/20474d3f0f-fix-green\" alt=\"fix - 20474d3f0f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eenable XSRF protection for same-origin absolute URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/48b89f9fbe16acff8b2f3f37853e745ed43d3a32\"\u003e\u003cimg src=\"https://img.shields.io/badge/48b89f9fbe-fix-green\" alt=\"fix - 48b89f9fbe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle errors from view transition finished promise\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.2\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/78fd159b78d32cb8b94891e3fc6013076d7838af\"\u003e\u003cimg src=\"https://img.shields.io/badge/78fd159b78-fix-green\" alt=\"fix - 78fd159b78\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent XSS via SVG animation \u003ccode\u003eattributeName\u003c/code\u003e and MathML/SVG URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e\u003cimg src=\"https://img.shields.io/badge/39c577bc36-fix-green\" alt=\"fix - 39c577bc36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edo not type check native controls with ControlValueAccessor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d3a89a477e273b9b2223b6db775955e35105963\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d3a89a477-fix-green\" alt=\"fix - 8d3a89a477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eescape angular control flow in jsdoc\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/bc34083d349a7d30efb43df97de0509fd85a1996\"\u003e\u003cimg src=\"https://img.shields.io/badge/bc34083d34-fix-green\" alt=\"fix - bc34083d34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eignore non-existent files\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ea1e071742a031d9afb7a39f8e23082cd88ca2e\"\u003e\u003cimg src=\"https://img.shields.io/badge/0ea1e07174-fix-green\" alt=\"fix - 0ea1e07174\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eapply bootstrap-options migration to \u003ccode\u003eplatformBrowserDynamic\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70507b8c1ce733b8232a12fa45037ee219b5b102\"\u003e\u003cimg src=\"https://img.shields.io/badge/70507b8c1c-fix-green\" alt=\"fix - 70507b8c1c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edebug data causing memory leak for root effects\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a55482fca3b7e4f39d95f8ff236b6619e59b8190\"\u003e\u003cimg src=\"https://img.shields.io/badge/a55482fca3-fix-green\" alt=\"fix - a55482fca3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enotify profiler events in case of errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49ad7c650818ee7db321a24c89282dbf9bb250f3\"\u003e\u003cimg src=\"https://img.shields.io/badge/49ad7c6508-fix-green\" alt=\"fix - 49ad7c6508\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse injected \u003ccode\u003eDOCUMENT\u003c/code\u003e for \u003ccode\u003eCSP_NONCE\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cc1ec099315b0f429d0b0f07c9b1bf686668db6b\"\u003e\u003cimg src=\"https://img.shields.io/badge/cc1ec09931-perf-orange\" alt=\"perf - cc1ec09931\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid repeat searches for field directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.3 (2025-12-03)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5a80a48e962f72825050202198b32abbfee66714\"\u003e5a80a48e96\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid allocating an object for signals in production mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1f1856e897e0a10e2ca6d934c80fd69d1ac06210\"\u003e1f1856e897\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003echeck that field radio button values are strings\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8c3304c766131b031b736ee3fe2ec9c9a42fbe07\"\u003e8c3304c766\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003erun animation queue in environment injector context\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4bb085311e24966ef2dd673f23746988c449c7ff\"\u003e4bb085311e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to inject viewProviders when host directive with providers is present\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/609699ae1781a9160b0f474b7ebe0998221c0722\"\u003e609699ae17\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003etree shake unused dynamic \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b4ab876e811b4e3a6f9617a2b379f62cf187403\"\u003e6b4ab876e8\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAllows transforms on \u003ccode\u003eFormUiControl\u003c/code\u003e signals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a5dbd4b382417fc111d6a622862a015c47027a41\"\u003ea5dbd4b382\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esupport dynamic \u003ccode\u003e[field]\u003c/code\u003e bindings (\u003ca href=\"https://redirect.github.com/angular/angular/pull/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/20474d3f0fd7c64071add6e84acf720627e5c19b\"\u003e20474d3f0f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eenable XSRF protection for same-origin absolute URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/48b89f9fbe16acff8b2f3f37853e745ed43d3a32\"\u003e48b89f9fbe\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle errors from view transition finished promise\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.2 (2025-12-01)\u003c/h1\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/78fd159b78d32cb8b94891e3fc6013076d7838af\"\u003e78fd159b78\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent XSS via SVG animation \u003ccode\u003eattributeName\u003c/code\u003e and MathML/SVG URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/20474d3f0fd7c64071add6e84acf720627e5c19b\"\u003e\u003ccode\u003e20474d3\u003c/code\u003e\u003c/a\u003e fix(http): enable XSRF protection for same-origin absolute URLs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3240d856d942727372a705252f7c8c115394a41e\"\u003e\u003ccode\u003e3240d85\u003c/code\u003e\u003c/a\u003e fix(http): prevent XSRF token leakage to protocol-relative URLs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6de892659473f8748fd87dbdb6100d48a1009bf3\"\u003e\u003ccode\u003e6de8926\u003c/code\u003e\u003c/a\u003e refactor(core): add debug name to resource (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64172\"\u003e#64172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/00ffe91c898e182c36f9ce032dd2efc925109b71\"\u003e\u003ccode\u003e00ffe91\u003c/code\u003e\u003c/a\u003e refactor(common): removes unused NgModuleFactory config in NgComponentOutlet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8765b66f5ad33e5ad99eb56507ddf9b98f7f0eb2\"\u003e\u003ccode\u003e8765b66\u003c/code\u003e\u003c/a\u003e docs: add reference to Built-in Pipes in multiple pipe files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab98e71c413928dbc75703e3de3131cf93100837\"\u003e\u003ccode\u003eab98e71\u003c/code\u003e\u003c/a\u003e fix(common): remove placeholder image listeners once view is removed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8ab084754b32762fb2e0552f2242cb2bf7039524\"\u003e\u003ccode\u003e8ab0847\u003c/code\u003e\u003c/a\u003e refactor(core): mark \u003ccode\u003eVERSION\u003c/code\u003e as \u003ccode\u003e@__PURE__\u003c/code\u003e for better tree-shaking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/650af71026752525f5b0978782c906c5348a6bbb\"\u003e\u003ccode\u003e650af71\u003c/code\u003e\u003c/a\u003e refactor(http): migrate XSRF classes to use inject() function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3bed9f0f166f6698e862cdbd360e3ba9bcceb935\"\u003e\u003ccode\u003e3bed9f0\u003c/code\u003e\u003c/a\u003e build: format md files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3c2fe819ab1e39b3f9a9a26e6aae7b90c207979\"\u003e\u003ccode\u003ea3c2fe8\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(common): Removes unused imports to clean up dependencies\u0026quot;\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/21.0.3/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/cdk` from 17.3.10 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003cimg src=\"https://img.shields.io/badge/043d9cacc-fix-green\" alt=\"fix - 043d9cacc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003cimg src=\"https://img.shields.io/badge/ccc12c387-fix-green\" alt=\"fix - ccc12c387\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003cimg src=\"https://img.shields.io/badge/02965bb0e-fix-green\" alt=\"fix - 02965bb0e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a821a3ef07d99d5ce8631469cd818929b9c0559b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a821a3ef0-feat-blue\" alt=\"feat - a821a3ef0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e create the aria grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32092\"\u003e#32092\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f9d3cde14984c6da006e09e8e79809247e017a65\"\u003e\u003cimg src=\"https://img.shields.io/badge/f9d3cde14-feat-blue\" alt=\"feat - f9d3cde14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e create the aria menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/32080\"\u003e#32080\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a0b5800277c206127999e21eda77ef003c066aee\"\u003e\u003cimg src=\"https://img.shields.io/badge/a0b580027-feat-blue\" alt=\"feat - a0b580027\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds skip disabled toolbar example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32127\"\u003e#32127\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/5396c43474fe272ad5e21366c027cd1ae0c6d593\"\u003e\u003cimg src=\"https://img.shields.io/badge/5396c4347-feat-blue\" alt=\"feat - 5396c4347\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar basic vertical example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32126\"\u003e#32126\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ba9f79be528c6228e50a73809ec62efcbfc7afc6\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba9f79be5-feat-blue\" alt=\"feat - ba9f79be5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar-basic-horizontal-example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32106\"\u003e#32106\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ec6045b270211131b6987e316fb3252745c89e11\"\u003e\u003cimg src=\"https://img.shields.io/badge/ec6045b27-fix-green\" alt=\"fix - ec6045b27\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eaccordion:\u003c/strong\u003e rename value to panelId for trigger and panel (\u003ca href=\"https://redirect.github.com/angular/components/issues/32295\"\u003e#32295\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0b03c6e96485f83447ed3451070be138bf21d4e6\"\u003e\u003cimg src=\"https://img.shields.io/badge/0b03c6e96-fix-green\" alt=\"fix - 0b03c6e96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e add missing apis (\u003ca href=\"https://redirect.github.com/angular/components/issues/32124\"\u003e#32124\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/25223a2f8be7b13699b94b99a1335e4ac7185772\"\u003e\u003cimg src=\"https://img.shields.io/badge/25223a2f8-fix-green\" alt=\"fix - 25223a2f8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e dialog popup support (\u003ca href=\"https://redirect.github.com/angular/components/issues/32279\"\u003e#32279\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a47ebeb964e794e3868659d68e46b3b782d1550b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a47ebeb96-fix-green\" alt=\"fix - a47ebeb96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32308\"\u003e#32308\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/127d3dba5754a4ceaa60f56ced7b4795c29372cc\"\u003e\u003cimg src=\"https://img.shields.io/badge/127d3dba5-fix-green\" alt=\"fix - 127d3dba5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e escape key behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32364\"\u003e#32364\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c3279ca4b47f91cd61e0ba0be24bdd10869fa059\"\u003e\u003cimg src=\"https://img.shields.io/badge/c3279ca4b-fix-green\" alt=\"fix - c3279ca4b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e highlighting edge cases (\u003ca href=\"https://redirect.github.com/angular/components/issues/32136\"\u003e#32136\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/1232805db6f0a0a07154b3601eaa8b9cc0d94f31\"\u003e\u003cimg src=\"https://img.shields.io/badge/1232805db-fix-green\" alt=\"fix - 1232805db\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e readonly behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32169\"\u003e#32169\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/6c46f950d451862692c2c74f41a704a3ef0fd472\"\u003e\u003cimg src=\"https://img.shields.io/badge/6c46f950d-fix-green\" alt=\"fix - 6c46f950d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e several small fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32202\"\u003e#32202\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8beb22f8c8d0d9f415225826188c38964c65ceee\"\u003e\u003cimg src=\"https://img.shields.io/badge/8beb22f8c-fix-green\" alt=\"fix - 8beb22f8c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e use click instead of pointerup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32324\"\u003e#32324\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/92d933421953a2f5123d0f823dc7880bb4e69098\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d933421-fix-green\" alt=\"fix - 92d933421\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e fix navigation bugs and add grid behavior unit tests (\u003ca href=\"https://redirect.github.com/angular/components/issues/32140\"\u003e#32140\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e3babf3fc3229879e38751eff2c5941ed2152ae7\"\u003e\u003cimg src=\"https://img.shields.io/badge/e3babf3fc-fix-green\" alt=\"fix - e3babf3fc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e rtl navigation (\u003ca href=\"https://redirect.github.com/angular/components/issues/32170\"\u003e#32170\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/fe79e982cb7b3f0b42c2be056face255ccfe5783\"\u003e\u003cimg src=\"https://img.shields.io/badge/fe79e982c-fix-green\" alt=\"fix - fe79e982c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add expansion delay (\u003ca href=\"https://redirect.github.com/angular/components/issues/32293\"\u003e#32293\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3d1cafbdd3839c12d5298f216abaef59f717f04c\"\u003e\u003cimg src=\"https://img.shields.io/badge/3d1cafbdd-fix-green\" alt=\"fix - 3d1cafbdd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add selectable to inputs (\u003ca href=\"https://redirect.github.com/angular/components/issues/32131\"\u003e#32131\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/56631cb858fda514cfd81e23064e7859aa338843\"\u003e\u003cimg src=\"https://img.shields.io/badge/56631cb85-fix-green\" alt=\"fix - 56631cb85\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e deferred content import\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/95e648ad8a4fb3591fd20229db3a0649ac95ebb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/95e648ad8-fix-green\" alt=\"fix - 95e648ad8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32301\"\u003e#32301\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ce20dbe1a3e4be0e1002533f7f1910b1f9efd0c3\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce20dbe1a-fix-green\" alt=\"fix - ce20dbe1a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e lazy render trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32203\"\u003e#32203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/19095030a0a6f102aa1ba7276afbc12fd79a27c7\"\u003e\u003cimg src=\"https://img.shields.io/badge/19095030a-fix-green\" alt=\"fix - 19095030a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e public api cleanup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32189\"\u003e#32189\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4b5db13286b263cb28918938dce515376b4a5f5b\"\u003e\u003cimg src=\"https://img.shields.io/badge/4b5db1328-fix-green\" alt=\"fix - 4b5db1328\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e rtl text direction (\u003ca href=\"https://redirect.github.com/angular/components/issues/32254\"\u003e#32254\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/bac171d8bc82fd7bfd716cc5214c49f1bfbc76bb\"\u003e\u003cimg src=\"https://img.shields.io/badge/bac171d8b-fix-green\" alt=\"fix - bac171d8b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e allow developers to wrap widgets (\u003ca href=\"https://redirect.github.com/angular/components/issues/32341\"\u003e#32341\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d8acd69f5d26c85ffc08224e67be5f594c85e38a\"\u003e\u003cimg src=\"https://img.shields.io/badge/d8acd69f5-fix-green\" alt=\"fix - d8acd69f5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e adds rtl keyboard functionality for tree (\u003ca href=\"https://redirect.github.com/angular/components/issues/32305\"\u003e#32305\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/86558d2aa6437556bac805a6acdf8c31f5b2cfb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/86558d2aa-fix-green\" alt=\"fix - 86558d2aa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e internal conformance check (\u003ca href=\"https://redirect.github.com/angular/components/issues/32337\"\u003e#32337\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/09e31e71673a73d80033e7aaf8ad8f6ae9db8f89\"\u003e\u003cimg src=\"https://img.shields.io/badge/09e31e716-fix-green\" alt=\"fix - 09e31e716\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e only reset selected values if used in combobox (\u003ca href=\"https://redirect.github.com/angular/components/issues/32329\"\u003e#32329\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/05f936ae14d8943ced0ad981cde8f3c2ac95afd1\"\u003e\u003cimg src=\"https://img.shields.io/badge/05f936ae1-fix-green\" alt=\"fix - 05f936ae1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e tree item visibility issue (\u003ca href=\"https://redirect.github.com/angular/components/issues/32156\"\u003e#32156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/afe4d063dd8f3dc5932519761693e7a79de77dc1\"\u003e\u003cimg src=\"https://img.shields.io/badge/afe4d063d-fix-green\" alt=\"fix - afe4d063d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e internal conformance fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32102\"\u003e#32102\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.1 \u0026quot;sulfur-snack\u0026quot; (2025-11-26)\u003c/h1\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003eccc12c387\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/pull/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e043d9cacc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/pull/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e02965bb0e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/pull/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0 \u0026quot;damask-dachshund\u0026quot; (2025-11-19)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eLIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-container\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-container-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$dark-backdrop-background\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-color\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-backdrop\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTemplatePortalDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortal\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePortalHostDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortalOutlet\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTestElement\u003c/code\u003e implementations need to provide a \u003ccode\u003esetContenteditableValue\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematBottomSheet\u003c/code\u003e animations symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_FAB_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_CHECKBOX_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAnimationCurves\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnimationDurations\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eNativeDateAdapter.useUtcForDisplay\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATE_LOCAL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMatCommonModule\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eGranularSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMATERIAL_SANITY_CHECKS\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematDatepickerAnimations\u003c/code\u003e symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_RANGE_DATE_SELECTION_MODEL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/39696e36ce3b64652cca2e7d92085dc46b318801\"\u003e\u003ccode\u003e39696e3\u003c/code\u003e\u003c/a\u003e release: cut the v21.0.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003ccode\u003e02965bb\u003c/code\u003e\u003c/a\u003e fix(multiple): resolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0cc3abd3f1de3ab7f1ad156bf19c7ba38ca2769a\"\u003e\u003ccode\u003e0cc3abd\u003c/code\u003e\u003c/a\u003e build: unblock Bazel updates (\u003ca href=\"https://redirect.github.com/angular/components/issues/32414\"\u003e#32414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0b9e78ed7fed478319cd5c02d1380682ab47ce2c\"\u003e\u003ccode\u003e0b9e78e\u003c/code\u003e\u003c/a\u003e refactor: set up function for setting innerHTML (\u003ca href=\"https://redirect.github.com/angular/components/issues/32404\"\u003e#32404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003ccode\u003e043d9ca\u003c/code\u003e\u003c/a\u003e fix(material/select): render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003ccode\u003eccc12c3\u003c/code\u003e\u003c/a\u003e fix(cdk/testing): errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/a68964a002630b1027881dc84aa0752050be4e4f\"\u003e\u003ccode\u003ea68964a\u003c/code\u003e\u003c/a\u003e build: update dependency bazel to v7.7.1 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32361\"\u003e#32361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/5cfdd477540e43b3a93eb7141bbc4637357b0cf7\"\u003e\u003ccode\u003e5cfdd47\u003c/code\u003e\u003c/a\u003e test: remove unnecessary test calls (\u003ca href=\"https://redirect.github.com/angular/components/issues/32396\"\u003e#32396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/9ae3b5aabd0301c1b6012d88747d5a848cee3e73\"\u003e\u003ccode\u003e9ae3b5a\u003c/code\u003e\u003c/a\u003e build: fix stackblitz test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/b1726541b0c9c239b838c01cf6838d44806ababf\"\u003e\u003ccode\u003eb172654\u003c/code\u003e\u003c/a\u003e build: fix test-based Stackblitz examples\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/17.3.10...21.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/forms` from 17.3.12 to 21.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.3\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5a80a48e962f72825050202198b32abbfee66714\"\u003e\u003cimg src=\"https://img.shields.io/badge/5a80a48e96-fix-green\" alt=\"fix - 5a80a48e96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid allocating an object for signals in production mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1f1856e897e0a10e2ca6d934c80fd69d1ac06210\"\u003e\u003cimg src=\"https://img.shields.io/badge/1f1856e897-fix-green\" alt=\"fix - 1f1856e897\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003echeck that field radio button values are strings\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8c3304c766131b031b736ee3fe2ec9c9a42fbe07\"\u003e\u003cimg src=\"https://img.shields.io/badge/8c3304c766-fix-green\" alt=\"fix - 8c3304c766\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erun animation queue in environment injector context\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4bb085311e24966ef2dd673f23746988c449c7ff\"\u003e\u003cimg src=\"https://img.shields.io/badge/4bb085311e-fix-green\" alt=\"fix - 4bb085311e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to inject viewProviders when host directive with providers is present\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/609699ae1781a9160b0f474b7ebe0998221c0722\"\u003e\u003cimg src=\"https://img.shields.io/badge/609699ae17-perf-orange\" alt=\"perf - 609699ae17\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003etree shake unused dynamic \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b4ab876e811b4e3a6f9617a2b379f62cf187403\"\u003e\u003cimg src=\"https://img.shields.io/badge/6b4ab876e8-feat-blue\" alt=\"feat - 6b4ab876e8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAllows transforms on \u003ccode\u003eFormUiControl\u003c/code\u003e signals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a5dbd4b382417fc111d6a622862a015c47027a41\"\u003e\u003cimg src=\"https://img.shields.io/badge/a5dbd4b382-fix-green\" alt=\"fix - a5dbd4b382\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esupport dynamic \u003ccode\u003e[field]\u003c/code\u003e bindings (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/20474d3f0fd7c64071add6e84acf720627e5c19b\"\u003e\u003cimg src=\"https://img.shields.io/badge/20474d3f0f-fix-green\" alt=\"fix - 20474d3f0f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eenable XSRF protection for same-origin absolute URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/48b89f9fbe16acff8b2f3f37853e745ed43d3a32\"\u003e\u003cimg src=\"https://img.shields.io/badge/48b89f9fbe-fix-green\" alt=\"fix - 48b89f9fbe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle errors from view transition finished promise\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.2\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/78fd159b78d32cb8b94891e3fc6013076d7838af\"\u003e\u003cimg src=\"https://img.shields.io/badge/78fd159b78-fix-green\" alt=\"fix - 78fd159b78\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent XSS via SVG animation \u003ccode\u003eattributeName\u003c/code\u003e and MathML/SVG URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e\u003cimg src=\"https://img.shields.io/badge/39c577bc36-fix-green\" alt=\"fix - 39c577bc36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edo not type check native controls with ControlValueAccessor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d3a89a477e273b9b2223b6db775955e35105963\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d3a89a477-fix-green\" alt=\"fix - 8d3a89a477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eescape angular control flow in jsdoc\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/bc34083d349a7d30efb43df97de0509fd85a1996\"\u003e\u003cimg src=\"https://img.shields.io/badge/bc34083d34-fix-green\" alt=\"fix - bc34083d34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eignore non-existent files\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ea1e071742a031d9afb7a39f8e23082cd88ca2e\"\u003e\u003cimg src=\"https://img.shields.io/badge/0ea1e07174-fix-green\" alt=\"fix - 0ea1e07174\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eapply bootstrap-options migration to \u003ccode\u003eplatformBrowserDynamic\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70507b8c1ce733b8232a12fa45037ee219b5b102\"\u003e\u003cimg src=\"https://img.shields.io/badge/70507b8c1c-fix-green\" alt=\"fix - 70507b8c1c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edebug data causing memory leak for root effects\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a55482fca3b7e4f39d95f8ff236b6619e59b8190\"\u003e\u003cimg src=\"https://img.shields.io/badge/a55482fca3-fix-green\" alt=\"fix - a55482fca3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enotify profiler events in case of errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49ad7c650818ee7db321a24c89282dbf9bb250f3\"\u003e\u003cimg src=\"https://img.shields.io/badge/49ad7c6508-fix-green\" alt=\"fix - 49ad7c6508\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse injected \u003ccode\u003eDOCUMENT\u003c/code\u003e for \u003ccode\u003eCSP_NONCE\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cc1ec099315b0f429d0b0f07c9b1bf686668db6b\"\u003e\u003cimg src=\"https://img.shields.io/badge/cc1ec09931-perf-orange\" alt=\"perf - cc1ec09931\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid repeat searches for field directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.3 (2025-12-03)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5a80a48e962f72825050202198b32abbfee66714\"\u003e5a80a48e96\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid allocating an object for signals in production mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1f1856e897e0a10e2ca6d934c80fd69d1ac06210\"\u003e1f1856e897\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003echeck that field radio button values are strings\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8c3304c766131b031b736ee3fe2ec9c9a42fbe07\"\u003e8c3304c766\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003erun animation queue in environment injector context\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4bb085311e24966ef2dd673f23746988c449c7ff\"\u003e4bb085311e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to inject viewProviders when host directive with providers is present\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/609699ae1781a9160b0f474b7ebe0998221c0722\"\u003e609699ae17\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003etree shake unused dynamic \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b4ab876e811b4e3a6f9617a2b379f62cf187403\"\u003e6b4ab876e8\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAllows transforms on \u003ccode\u003eFormUiControl\u003c/code\u003e signals\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a5dbd4b382417fc111d6a622862a015c47027a41\"\u003ea5dbd4b382\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003esupport dynamic \u003ccode\u003e[field]\u003c/code\u003e bindings (\u003ca href=\"https://redirect.github.com/angular/angular/pull/65599\"\u003e#65599\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/20474d3f0fd7c64071add6e84acf720627e5c19b\"\u003e20474d3f0f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eenable XSRF protection for same-origin absolute URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/48b89f9fbe16acff8b2f3f37853e745ed43d3a32\"\u003e48b89f9fbe\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle errors from view transition finished promise\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.2 (2025-12-01)\u003c/h1\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/78fd159b78d32cb8b94891e3fc6013076d7838af\"\u003e78fd159b78\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent XSS via SVG animation \u003ccode\u003eattributeName\u003c/code\u003e and MathML/SVG URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b4ab876e811b4e3a6f9617a2b379f62cf187403\"\u003e\u003ccode\u003e6b4ab87\u003c/code\u003e\u003c/a\u003e feat(forms): Allows transforms on \u003ccode\u003eFormUiControl\u003c/code\u003e signals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/609699ae1781a9160b0f474b7ebe0998221c0722\"\u003e\u003ccode\u003e609699a\u003c/code\u003e\u003c/a\u003e perf(core): tree shake unused dynamic \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/65599\"\u003e#65599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a5dbd4b382417fc111d6a622862a015c47027a41\"\u003e\u003ccode\u003ea5dbd4b\u003c/code\u003e\u003c/a\u003e fix(forms): support dynamic \u003ccode\u003e[field]\u003c/code\u003e bindings (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/65599\"\u003e#65599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/017672f742935e660510f728cd9e67e3ad1ba90b\"\u003e\u003ccode\u003e017672f\u003c/code\u003e\u003c/a\u003e refactor(compiler): Generate the \u003ccode\u003econtrolCreate\u003c/code\u003e instruction after the native...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8e0df4083d5294a841d751ac1d1f8b2e97ef7bba\"\u003e\u003ccode\u003e8e0df40\u003c/code\u003e\u003c/a\u003e docs(docs-infra): Show examples on function overloads\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e3f5f34732c90989517f0f0b1c511d0f5ced39c3\"\u003e\u003ccode\u003ee3f5f34\u003c/code\u003e\u003c/a\u003e refactor(forms): Make reset take value\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d5c7cf99aa5c6490f8bea950b04bd56073582a1\"\u003e\u003ccode\u003e7d5c7cf\u003c/code\u003e\u003c/a\u003e feat(forms): add DI option for classes on \u003ccode\u003eField\u003c/code\u003e directive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8acf5d27563ec51cc76971732d50e1f4142a3fe3\"\u003e\u003ccode\u003e8acf5d2\u003c/code\u003e\u003c/a\u003e fix(forms): allow dynamic \u003ccode\u003etype\u003c/code\u003e bindings on signal form controls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/4845a33018cf2c48e37c667892c24d6c6ec81f6b\"\u003e\u003ccode\u003e4845a33\u003c/code\u003e\u003c/a\u003e refactor(forms): support custom control directives\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/de5fca94c5cfafa9098d9ee270f448b90d4ac06f\"\u003e\u003ccode\u003ede5fca9\u003c/code\u003e\u003c/a\u003e fix(forms): run reset as untracked\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/21.0.3/packages/forms\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/material` from 17.3.10 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/material\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003cimg src=\"https://img.shields.io/badge/043d9cacc-fix-green\" alt=\"fix - 043d9cacc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003cimg src=\"https://img.shields.io/badge/ccc12c387-fix-green\" alt=\"fix - ccc12c387\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003cimg src=\"https://img.shields.io/badge/02965bb0e-fix-green\" alt=\"fix - 02965bb0e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a821a3ef07d99d5ce8631469cd818929b9c0559b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a821a3ef0-feat-blue\" alt=\"feat - a821a3ef0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e create the aria grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32092\"\u003e#32092\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f9d3cde14984c6da006e09e8e79809247e017a65\"\u003e\u003cimg src=\"https://img.shields.io/badge/f9d3cde14-feat-blue\" alt=\"feat - f9d3cde14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e create the aria menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/32080\"\u003e#32080\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a0b5800277c206127999e21eda77ef003c066aee\"\u003e\u003cimg src=\"https://img.shields.io/badge/a0b580027-feat-blue\" alt=\"feat - a0b580027\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds skip disabled toolbar example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32127\"\u003e#32127\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/5396c43474fe272ad5e21366c027cd1ae0c6d593\"\u003e\u003cimg src=\"https://img.shields.io/badge/5396c4347-feat-blue\" alt=\"feat - 5396c4347\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar basic vertical example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32126\"\u003e#32126\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ba9f79be528c6228e50a73809ec62efcbfc7afc6\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba9f79be5-feat-blue\" alt=\"feat - ba9f79be5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar-basic-horizontal-example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32106\"\u003e#32106\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ec6045b270211131b6987e316fb3252745c89e11\"\u003e\u003cimg src=\"https://img.shields.io/badge/ec6045b27-fix-green\" alt=\"fix - ec6045b27\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eaccordion:\u003c/strong\u003e rename value to panelId for trigger and panel (\u003ca href=\"https://redirect.github.com/angular/components/issues/32295\"\u003e#32295\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0b03c6e96485f83447ed3451070be138bf21d4e6\"\u003e\u003cimg src=\"https://img.shields.io/badge/0b03c6e96-fix-green\" alt=\"fix - 0b03c6e96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e add missing apis (\u003ca href=\"https://redirect.github.com/angular/components/issues/32124\"\u003e#32124\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/25223a2f8be7b13699b94b99a1335e4ac7185772\"\u003e\u003cimg src=\"https://img.shields.io/badge/25223a2f8-fix-green\" alt=\"fix - 25223a2f8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e dialog popup support (\u003ca href=\"https://redirect.github.com/angular/components/issues/32279\"\u003e#32279\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a47ebeb964e794e3868659d68e46b3b782d1550b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a47ebeb96-fix-green\" alt=\"fix - a47ebeb96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32308\"\u003e#32308\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/127d3dba5754a4ceaa60f56ced7b4795c29372cc\"\u003e\u003cimg src=\"https://img.shields.io/badge/127d3dba5-fix-green\" alt=\"fix - 127d3dba5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e escape key behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32364\"\u003e#32364\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c3279ca4b47f91cd61e0ba0be24bdd10869fa059\"\u003e\u003cimg src=\"https://img.shields.io/badge/c3279ca4b-fix-green\" alt=\"fix - c3279ca4b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e highlighting edge cases (\u003ca href=\"https://redirect.github.com/angular/components/issues/32136\"\u003e#32136\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/1232805db6f0a0a07154b3601eaa8b9cc0d94f31\"\u003e\u003cimg src=\"https://img.shields.io/badge/1232805db-fix-green\" alt=\"fix - 1232805db\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e readonly behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32169\"\u003e#32169\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/6c46f950d451862692c2c74f41a704a3ef0fd472\"\u003e\u003cimg src=\"https://img.shields.io/badge/6c46f950d-fix-green\" alt=\"fix - 6c46f950d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e several small fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32202\"\u003e#32202\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8beb22f8c8d0d9f415225826188c38964c65ceee\"\u003e\u003cimg src=\"https://img.shields.io/badge/8beb22f8c-fix-green\" alt=\"fix - 8beb22f8c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e use click instead of pointerup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32324\"\u003e#32324\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/92d933421953a2f5123d0f823dc7880bb4e69098\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d933421-fix-green\" alt=\"fix - 92d933421\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e fix navigation bugs and add grid behavior unit tests (\u003ca href=\"https://redirect.github.com/angular/components/issues/32140\"\u003e#32140\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e3babf3fc3229879e38751eff2c5941ed2152ae7\"\u003e\u003cimg src=\"https://img.shields.io/badge/e3babf3fc-fix-green\" alt=\"fix - e3babf3fc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e rtl navigation (\u003ca href=\"https://redirect.github.com/angular/components/issues/32170\"\u003e#32170\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/fe79e982cb7b3f0b42c2be056face255ccfe5783\"\u003e\u003cimg src=\"https://img.shields.io/badge/fe79e982c-fix-green\" alt=\"fix - fe79e982c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add expansion delay (\u003ca href=\"https://redirect.github.com/angular/components/issues/32293\"\u003e#32293\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3d1cafbdd3839c12d5298f216abaef59f717f04c\"\u003e\u003cimg src=\"https://img.shields.io/badge/3d1cafbdd-fix-green\" alt=\"fix - 3d1cafbdd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add selectable to inputs (\u003ca href=\"https://redirect.github.com/angular/components/issues/32131\"\u003e#32131\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/56631cb858fda514cfd81e23064e7859aa338843\"\u003e\u003cimg src=\"https://img.shields.io/badge/56631cb85-fix-green\" alt=\"fix - 56631cb85\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e deferred content import\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/95e648ad8a4fb3591fd20229db3a0649ac95ebb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/95e648ad8-fix-green\" alt=\"fix - 95e648ad8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32301\"\u003e#32301\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ce20dbe1a3e4be0e1002533f7f1910b1f9efd0c3\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce20dbe1a-fix-green\" alt=\"fix - ce20dbe1a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e lazy render trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32203\"\u003e#32203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/19095030a0a6f102aa1ba7276afbc12fd79a27c7\"\u003e\u003cimg src=\"https://img.shields.io/badge/19095030a-fix-green\" alt=\"fix - 19095030a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e public api cleanup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32189\"\u003e#32189\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4b5db13286b263cb28918938dce515376b4a5f5b\"\u003e\u003cimg src=\"https://img.shields.io/badge/4b5db1328-fix-green\" alt=\"fix - 4b5db1328\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e rtl text direction (\u003ca href=\"https://redirect.github.com/angular/components/issues/32254\"\u003e#32254\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/bac171d8bc82fd7bfd716cc5214c49f1bfbc76bb\"\u003e\u003cimg src=\"https://img.shields.io/badge/bac171d8b-fix-green\" alt=\"fix - bac171d8b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e allow developers to wrap widgets (\u003ca href=\"https://redirect.github.com/angular/components/issues/32341\"\u003e#32341\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d8acd69f5d26c85ffc08224e67be5f594c85e38a\"\u003e\u003cimg src=\"https://img.shields.io/badge/d8acd69f5-fix-green\" alt=\"fix - d8acd69f5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e adds rtl keyboard functionality for tree (\u003ca href=\"https://redirect.github.com/angular/components/issues/32305\"\u003e#32305\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/86558d2aa6437556bac805a6acdf8c31f5b2cfb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/86558d2aa-fix-green\" alt=\"fix - 86558d2aa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e internal conformance check (\u003ca href=\"https://redirect.github.com/angular/components/issues/32337\"\u003e#32337\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/09e31e71673a73d80033e7aaf8ad8f6ae9db8f89\"\u003e\u003cimg src=\"https://img.shields.io/badge/09e31e716-fix-green\" alt=\"fix - 09e31e716\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e only reset selected values if used in combobox (\u003ca href=\"https://redirect.github.com/angular/components/issues/32329\"\u003e#32329\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/05f936ae14d8943ced0ad981cde8f3c2ac95afd1\"\u003e\u003cimg src=\"https://img.shields.io/badge/05f936ae1-fix-green\" alt=\"fix - 05f936ae1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e tree item visibility issue (\u003ca href=\"https://redirect.github.com/angular/components/issues/32156\"\u003e#32156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/afe4d063dd8f3dc5932519761693e7a79de77dc1\"\u003e\u003cimg src=\"https://img.shields.io/badge/afe4d063d-fix-green\" alt=\"fix - afe4d063d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e internal conformance fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32102\"\u003e#32102\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/material\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.1 \u0026quot;sulfur-snack\u0026quot; (2025-11-26)\u003c/h1\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003eccc12c387\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/pull/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e043d9cacc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/pull/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e02965bb0e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/pull/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0 \u0026quot;damask-dachshund\u0026quot; (2025-11-19)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eLIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-container\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-container-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$dark-backdrop-background\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-color\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-backdrop\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTemplatePortalDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortal\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePortalHostDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortalOutlet\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTestElement\u003c/code\u003e implementations need to provide a \u003ccode\u003esetContenteditableValue\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematBottomSheet\u003c/code\u003e animations symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_FAB_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_CHECKBOX_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAnimationCurves\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnimationDurations\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eNativeDateAdapter.useUtcForDisplay\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATE_LOCAL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMatCommonModule\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eGranularSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMATERIAL_SANITY_CHECKS\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematDatepickerAnimations\u003c/code\u003e symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_RANGE_DATE_SELECTION_MODEL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/39696e36ce3b64652cca2e7d92085dc46b318801\"\u003e\u003ccode\u003e39696e3\u003c/code\u003e\u003c/a\u003e release: cut the v21.0.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003ccode\u003e02965bb\u003c/code\u003e\u003c/a\u003e fix(multiple): resolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0cc3abd3f1de3ab7f1ad156bf19c7ba38ca2769a\"\u003e\u003ccode\u003e0cc3abd\u003c/code\u003e\u003c/a\u003e build: unblock Bazel updates (\u003ca href=\"https://redirect.github.com/angular/components/issues/32414\"\u003e#32414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0b9e78ed7fed478319cd5c02d1380682ab47ce2c\"\u003e\u003ccode\u003e0b9e78e\u003c/code\u003e\u003c/a\u003e refactor: set up function for setting innerHTML (\u003ca href=\"https://redirect.github.com/angular/components/issues/32404\"\u003e#32404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003ccode\u003e043d9ca\u003c/code\u003e\u003c/a\u003e fix(material/select): render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003ccode\u003eccc12c3\u003c/code\u003e\u003c/a\u003e fix(cdk/testing): errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/a68964a002630b1027881dc84aa0752050be4e4f\"\u003e\u003ccode\u003ea68964a\u003c/code\u003e\u003c/a\u003e build: update dependency bazel to v7.7.1 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32361\"\u003e#32361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/5cfdd477540e43b3a93eb7141bbc4637357b0cf7\"\u003e\u003ccode\u003e5cfdd47\u003c/code\u003e\u003c/a\u003e test: remove unnecessary test calls (\u003ca href=\"https://redirect.github.com/angular/components/issues/32396\"\u003e#32396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/9ae3b5aabd0301c1b6012d88747d5a848cee3e73\"\u003e\u003ccode\u003e9ae3b5a\u003c/code\u003e\u003c/a\u003e build: fix stackblitz test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/b1726541b0c9c239b838c01cf6838d44806ababf\"\u003e\u003ccode\u003eb172654\u003c/code\u003e\u003c/a\u003e build: fix test-based Stackblitz examples\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/17.3.10...21.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/material-experimental` from 17.3.10 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/material-experimental\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003cimg src=\"https://img.shields.io/badge/043d9cacc-fix-green\" alt=\"fix - 043d9cacc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003cimg src=\"https://img.shields.io/badge/ccc12c387-fix-green\" alt=\"fix - ccc12c387\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003cimg src=\"https://img.shields.io/badge/02965bb0e-fix-green\" alt=\"fix - 02965bb0e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a821a3ef07d99d5ce8631469cd818929b9c0559b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a821a3ef0-feat-blue\" alt=\"feat - a821a3ef0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e create the aria grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32092\"\u003e#32092\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f9d3cde14984c6da006e09e8e79809247e017a65\"\u003e\u003cimg src=\"https://img.shields.io/badge/f9d3cde14-feat-blue\" alt=\"feat - f9d3cde14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e create the aria menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/32080\"\u003e#32080\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr...\n\n_Description has been truncated_\n\n\u003e **Note**\n\u003e Automatic rebases have been disabled on this pull request as it has been open for over 30 days.\n","html_url":"https://github.com/bcgov/alcs/pull/2682","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/bcgov%2Falcs/issues/2682","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2682/packages"}},{"old_version":null,"new_version":null,"update_type":null,"path":null,"pr_created_at":"2025-11-26T23:54:15.000Z","version_change":null,"issue":{"uuid":"3669385200","node_id":"PR_kwDOEeu1mM61v4b3","number":337,"state":"open","title":"chore(deps): bump @angular/common, @angular/cdk, @angular/forms, @angular/material, @angular/platform-browser, @angular/platform-browser-dynamic, @angular/router and @angular-builders/jest","user":"dependabot[bot]","labels":["dependencies","stale","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-11-26T23:54:15.000Z","updated_at":"2026-01-26T03:25:26.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"@angular/common, @angular/cdk, @angular/forms, @angular/material, @angular/platform-browser, @angular/platform-browser-dynamic, @angular/router"},{"name":"@angular-builders/jest","repository_url":"https://github.com/just-jeb/angular-builders"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common), [@angular/cdk](https://github.com/angular/components), [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms), [@angular/material](https://github.com/angular/components), [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser), [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic), [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) and [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest). These dependencies needed to be updated together.\nUpdates `@angular/common` from 16.2.12 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e\u003cimg src=\"https://img.shields.io/badge/39c577bc36-fix-green\" alt=\"fix - 39c577bc36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edo not type check native controls with ControlValueAccessor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d3a89a477e273b9b2223b6db775955e35105963\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d3a89a477-fix-green\" alt=\"fix - 8d3a89a477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eescape angular control flow in jsdoc\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/bc34083d349a7d30efb43df97de0509fd85a1996\"\u003e\u003cimg src=\"https://img.shields.io/badge/bc34083d34-fix-green\" alt=\"fix - bc34083d34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eignore non-existent files\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ea1e071742a031d9afb7a39f8e23082cd88ca2e\"\u003e\u003cimg src=\"https://img.shields.io/badge/0ea1e07174-fix-green\" alt=\"fix - 0ea1e07174\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eapply bootstrap-options migration to \u003ccode\u003eplatformBrowserDynamic\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70507b8c1ce733b8232a12fa45037ee219b5b102\"\u003e\u003cimg src=\"https://img.shields.io/badge/70507b8c1c-fix-green\" alt=\"fix - 70507b8c1c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edebug data causing memory leak for root effects\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a55482fca3b7e4f39d95f8ff236b6619e59b8190\"\u003e\u003cimg src=\"https://img.shields.io/badge/a55482fca3-fix-green\" alt=\"fix - a55482fca3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enotify profiler events in case of errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49ad7c650818ee7db321a24c89282dbf9bb250f3\"\u003e\u003cimg src=\"https://img.shields.io/badge/49ad7c6508-fix-green\" alt=\"fix - 49ad7c6508\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse injected \u003ccode\u003eDOCUMENT\u003c/code\u003e for \u003ccode\u003eCSP_NONCE\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cc1ec099315b0f429d0b0f07c9b1bf686668db6b\"\u003e\u003cimg src=\"https://img.shields.io/badge/cc1ec09931-perf-orange\" alt=\"perf - cc1ec09931\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid repeat searches for field directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d5c7cf99aa5c6490f8bea950b04bd56073582a1\"\u003e\u003cimg src=\"https://img.shields.io/badge/7d5c7cf99a-feat-blue\" alt=\"feat - 7d5c7cf99a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd DI option for classes on \u003ccode\u003eField\u003c/code\u003e directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8acf5d27563ec51cc76971732d50e1f4142a3fe3\"\u003e\u003cimg src=\"https://img.shields.io/badge/8acf5d2756-fix-green\" alt=\"fix - 8acf5d2756\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow dynamic \u003ccode\u003etype\u003c/code\u003e bindings on signal form controls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de5fca94c5cfafa9098d9ee270f448b90d4ac06f\"\u003e\u003cimg src=\"https://img.shields.io/badge/de5fca94c5-fix-green\" alt=\"fix - de5fca94c5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erun reset as untracked\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3240d856d942727372a705252f7c8c115394a41e\"\u003e\u003cimg src=\"https://img.shields.io/badge/3240d856d9-fix-green\" alt=\"fix - 3240d856d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent XSRF token leakage to protocol-relative URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f394215b14d59c49e1433472ecdd2fd5547cc769\"\u003e\u003cimg src=\"https://img.shields.io/badge/f394215b14-fix-green\" alt=\"fix - f394215b14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edetect structural ngTemplateOutlet and ngComponentOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eVSCode Extension: 21.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(language-service): address potential memory leak during project creation (89095946cf)\u003c/li\u003e\n\u003cli\u003efix(language-server): fix directory renaming on Windows (3f7111a9c3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c795960ada1a7e21b8bee411e20a08c700b6e385\"\u003e\u003cimg src=\"https://img.shields.io/badge/c795960ada-feat-blue\" alt=\"feat - c795960ada\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd experimental support for the Navigation API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63406\"\u003e#63406\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9eac43cf46993442e9de5764e2ccca98e3837939\"\u003e\u003cimg src=\"https://img.shields.io/badge/9eac43cf46-feat-blue\" alt=\"feat - 9eac43cf46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eSupport of optional keys for the KeyValue pipe (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/48814\"\u003e#48814\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a1868c9d13991d24f893499406b29a5f2e0a388b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a1868c9d13-feat-blue\" alt=\"feat - a1868c9d13\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate to cldr 47 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64032\"\u003e#64032\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/196fa500a3c282af5158fa2873df8e2a73243493\"\u003e\u003cimg src=\"https://img.shields.io/badge/196fa500a3-fix-green\" alt=\"fix - 196fa500a3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eproperly type ngComponentOutlet (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64561\"\u003e#64561\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a4b225c57d8e390ec06731f5211d52d14da3a9c\"\u003e\u003cimg src=\"https://img.shields.io/badge/7a4b225c57-refactor-yellow\" alt=\"refactor - 7a4b225c57\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove typing of \u003ccode\u003engComponentOutletContent\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63674\"\u003e#63674\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/25f593ce2a623add0cbd4ab3bb0d4987793e4f34\"\u003e\u003cimg src=\"https://img.shields.io/badge/25f593ce2a-refactor-yellow\" alt=\"refactor - 25f593ce2a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove\u003ccode\u003engModuleFactory\u003c/code\u003e input of \u003ccode\u003eNgComponentOutlet\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62838\"\u003e#62838\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ecea909bccc3d6a3c33e77e1feb4ad0926e72f9e\"\u003e\u003cimg src=\"https://img.shields.io/badge/ecea909bcc-fix-green\" alt=\"fix - ecea909bcc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edon't choke on unbalanced parens in declaration block\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.1 (2025-11-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e39c577bc36\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edo not type check native controls with ControlValueAccessor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d3a89a477e273b9b2223b6db775955e35105963\"\u003e8d3a89a477\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eescape angular control flow in jsdoc\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/bc34083d349a7d30efb43df97de0509fd85a1996\"\u003ebc34083d34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eignore non-existent files\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ea1e071742a031d9afb7a39f8e23082cd88ca2e\"\u003e0ea1e07174\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eapply bootstrap-options migration to \u003ccode\u003eplatformBrowserDynamic\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70507b8c1ce733b8232a12fa45037ee219b5b102\"\u003e70507b8c1c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edebug data causing memory leak for root effects\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a55482fca3b7e4f39d95f8ff236b6619e59b8190\"\u003ea55482fca3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003enotify profiler events in case of errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49ad7c650818ee7db321a24c89282dbf9bb250f3\"\u003e49ad7c6508\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003euse injected \u003ccode\u003eDOCUMENT\u003c/code\u003e for \u003ccode\u003eCSP_NONCE\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cc1ec099315b0f429d0b0f07c9b1bf686668db6b\"\u003ecc1ec09931\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003eavoid repeat searches for field directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d5c7cf99aa5c6490f8bea950b04bd56073582a1\"\u003e7d5c7cf99a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd DI option for classes on \u003ccode\u003eField\u003c/code\u003e directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8acf5d27563ec51cc76971732d50e1f4142a3fe3\"\u003e8acf5d2756\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow dynamic \u003ccode\u003etype\u003c/code\u003e bindings on signal form controls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de5fca94c5cfafa9098d9ee270f448b90d4ac06f\"\u003ede5fca94c5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003erun reset as untracked\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3240d856d942727372a705252f7c8c115394a41e\"\u003e3240d856d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent XSRF token leakage to protocol-relative URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f394215b14d59c49e1433472ecdd2fd5547cc769\"\u003ef394215b14\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edetect structural ngTemplateOutlet and ngComponentOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0 (2025-11-19)\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"http://goo.gle/angular-v21-blog\"\u003eBlog post \u0026quot;Announcing Angular v21\u0026quot;\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3240d856d942727372a705252f7c8c115394a41e\"\u003e\u003ccode\u003e3240d85\u003c/code\u003e\u003c/a\u003e fix(http): prevent XSRF token leakage to protocol-relative URLs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6de892659473f8748fd87dbdb6100d48a1009bf3\"\u003e\u003ccode\u003e6de8926\u003c/code\u003e\u003c/a\u003e refactor(core): add debug name to resource (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64172\"\u003e#64172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/00ffe91c898e182c36f9ce032dd2efc925109b71\"\u003e\u003ccode\u003e00ffe91\u003c/code\u003e\u003c/a\u003e refactor(common): removes unused NgModuleFactory config in NgComponentOutlet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8765b66f5ad33e5ad99eb56507ddf9b98f7f0eb2\"\u003e\u003ccode\u003e8765b66\u003c/code\u003e\u003c/a\u003e docs: add reference to Built-in Pipes in multiple pipe files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab98e71c413928dbc75703e3de3131cf93100837\"\u003e\u003ccode\u003eab98e71\u003c/code\u003e\u003c/a\u003e fix(common): remove placeholder image listeners once view is removed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8ab084754b32762fb2e0552f2242cb2bf7039524\"\u003e\u003ccode\u003e8ab0847\u003c/code\u003e\u003c/a\u003e refactor(core): mark \u003ccode\u003eVERSION\u003c/code\u003e as \u003ccode\u003e@__PURE__\u003c/code\u003e for better tree-shaking\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/650af71026752525f5b0978782c906c5348a6bbb\"\u003e\u003ccode\u003e650af71\u003c/code\u003e\u003c/a\u003e refactor(http): migrate XSRF classes to use inject() function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3bed9f0f166f6698e862cdbd360e3ba9bcceb935\"\u003e\u003ccode\u003e3bed9f0\u003c/code\u003e\u003c/a\u003e build: format md files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3c2fe819ab1e39b3f9a9a26e6aae7b90c207979\"\u003e\u003ccode\u003ea3c2fe8\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(common): Removes unused imports to clean up dependencies\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/6d3e0f1a51f60991c7aad8c2518c10b33c89b87c\"\u003e\u003ccode\u003e6d3e0f1\u003c/code\u003e\u003c/a\u003e refactor(common): Removes unused imports to clean up dependencies\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/21.0.1/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/cdk` from 16.2.14 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003cimg src=\"https://img.shields.io/badge/043d9cacc-fix-green\" alt=\"fix - 043d9cacc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003cimg src=\"https://img.shields.io/badge/ccc12c387-fix-green\" alt=\"fix - ccc12c387\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003cimg src=\"https://img.shields.io/badge/02965bb0e-fix-green\" alt=\"fix - 02965bb0e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a821a3ef07d99d5ce8631469cd818929b9c0559b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a821a3ef0-feat-blue\" alt=\"feat - a821a3ef0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e create the aria grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32092\"\u003e#32092\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f9d3cde14984c6da006e09e8e79809247e017a65\"\u003e\u003cimg src=\"https://img.shields.io/badge/f9d3cde14-feat-blue\" alt=\"feat - f9d3cde14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e create the aria menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/32080\"\u003e#32080\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a0b5800277c206127999e21eda77ef003c066aee\"\u003e\u003cimg src=\"https://img.shields.io/badge/a0b580027-feat-blue\" alt=\"feat - a0b580027\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds skip disabled toolbar example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32127\"\u003e#32127\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/5396c43474fe272ad5e21366c027cd1ae0c6d593\"\u003e\u003cimg src=\"https://img.shields.io/badge/5396c4347-feat-blue\" alt=\"feat - 5396c4347\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar basic vertical example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32126\"\u003e#32126\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ba9f79be528c6228e50a73809ec62efcbfc7afc6\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba9f79be5-feat-blue\" alt=\"feat - ba9f79be5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar-basic-horizontal-example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32106\"\u003e#32106\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ec6045b270211131b6987e316fb3252745c89e11\"\u003e\u003cimg src=\"https://img.shields.io/badge/ec6045b27-fix-green\" alt=\"fix - ec6045b27\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eaccordion:\u003c/strong\u003e rename value to panelId for trigger and panel (\u003ca href=\"https://redirect.github.com/angular/components/issues/32295\"\u003e#32295\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0b03c6e96485f83447ed3451070be138bf21d4e6\"\u003e\u003cimg src=\"https://img.shields.io/badge/0b03c6e96-fix-green\" alt=\"fix - 0b03c6e96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e add missing apis (\u003ca href=\"https://redirect.github.com/angular/components/issues/32124\"\u003e#32124\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/25223a2f8be7b13699b94b99a1335e4ac7185772\"\u003e\u003cimg src=\"https://img.shields.io/badge/25223a2f8-fix-green\" alt=\"fix - 25223a2f8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e dialog popup support (\u003ca href=\"https://redirect.github.com/angular/components/issues/32279\"\u003e#32279\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a47ebeb964e794e3868659d68e46b3b782d1550b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a47ebeb96-fix-green\" alt=\"fix - a47ebeb96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32308\"\u003e#32308\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/127d3dba5754a4ceaa60f56ced7b4795c29372cc\"\u003e\u003cimg src=\"https://img.shields.io/badge/127d3dba5-fix-green\" alt=\"fix - 127d3dba5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e escape key behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32364\"\u003e#32364\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c3279ca4b47f91cd61e0ba0be24bdd10869fa059\"\u003e\u003cimg src=\"https://img.shields.io/badge/c3279ca4b-fix-green\" alt=\"fix - c3279ca4b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e highlighting edge cases (\u003ca href=\"https://redirect.github.com/angular/components/issues/32136\"\u003e#32136\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/1232805db6f0a0a07154b3601eaa8b9cc0d94f31\"\u003e\u003cimg src=\"https://img.shields.io/badge/1232805db-fix-green\" alt=\"fix - 1232805db\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e readonly behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32169\"\u003e#32169\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/6c46f950d451862692c2c74f41a704a3ef0fd472\"\u003e\u003cimg src=\"https://img.shields.io/badge/6c46f950d-fix-green\" alt=\"fix - 6c46f950d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e several small fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32202\"\u003e#32202\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8beb22f8c8d0d9f415225826188c38964c65ceee\"\u003e\u003cimg src=\"https://img.shields.io/badge/8beb22f8c-fix-green\" alt=\"fix - 8beb22f8c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e use click instead of pointerup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32324\"\u003e#32324\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/92d933421953a2f5123d0f823dc7880bb4e69098\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d933421-fix-green\" alt=\"fix - 92d933421\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e fix navigation bugs and add grid behavior unit tests (\u003ca href=\"https://redirect.github.com/angular/components/issues/32140\"\u003e#32140\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e3babf3fc3229879e38751eff2c5941ed2152ae7\"\u003e\u003cimg src=\"https://img.shields.io/badge/e3babf3fc-fix-green\" alt=\"fix - e3babf3fc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e rtl navigation (\u003ca href=\"https://redirect.github.com/angular/components/issues/32170\"\u003e#32170\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/fe79e982cb7b3f0b42c2be056face255ccfe5783\"\u003e\u003cimg src=\"https://img.shields.io/badge/fe79e982c-fix-green\" alt=\"fix - fe79e982c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add expansion delay (\u003ca href=\"https://redirect.github.com/angular/components/issues/32293\"\u003e#32293\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3d1cafbdd3839c12d5298f216abaef59f717f04c\"\u003e\u003cimg src=\"https://img.shields.io/badge/3d1cafbdd-fix-green\" alt=\"fix - 3d1cafbdd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add selectable to inputs (\u003ca href=\"https://redirect.github.com/angular/components/issues/32131\"\u003e#32131\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/56631cb858fda514cfd81e23064e7859aa338843\"\u003e\u003cimg src=\"https://img.shields.io/badge/56631cb85-fix-green\" alt=\"fix - 56631cb85\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e deferred content import\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/95e648ad8a4fb3591fd20229db3a0649ac95ebb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/95e648ad8-fix-green\" alt=\"fix - 95e648ad8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32301\"\u003e#32301\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ce20dbe1a3e4be0e1002533f7f1910b1f9efd0c3\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce20dbe1a-fix-green\" alt=\"fix - ce20dbe1a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e lazy render trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32203\"\u003e#32203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/19095030a0a6f102aa1ba7276afbc12fd79a27c7\"\u003e\u003cimg src=\"https://img.shields.io/badge/19095030a-fix-green\" alt=\"fix - 19095030a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e public api cleanup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32189\"\u003e#32189\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4b5db13286b263cb28918938dce515376b4a5f5b\"\u003e\u003cimg src=\"https://img.shields.io/badge/4b5db1328-fix-green\" alt=\"fix - 4b5db1328\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e rtl text direction (\u003ca href=\"https://redirect.github.com/angular/components/issues/32254\"\u003e#32254\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/bac171d8bc82fd7bfd716cc5214c49f1bfbc76bb\"\u003e\u003cimg src=\"https://img.shields.io/badge/bac171d8b-fix-green\" alt=\"fix - bac171d8b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e allow developers to wrap widgets (\u003ca href=\"https://redirect.github.com/angular/components/issues/32341\"\u003e#32341\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d8acd69f5d26c85ffc08224e67be5f594c85e38a\"\u003e\u003cimg src=\"https://img.shields.io/badge/d8acd69f5-fix-green\" alt=\"fix - d8acd69f5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e adds rtl keyboard functionality for tree (\u003ca href=\"https://redirect.github.com/angular/components/issues/32305\"\u003e#32305\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/86558d2aa6437556bac805a6acdf8c31f5b2cfb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/86558d2aa-fix-green\" alt=\"fix - 86558d2aa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e internal conformance check (\u003ca href=\"https://redirect.github.com/angular/components/issues/32337\"\u003e#32337\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/09e31e71673a73d80033e7aaf8ad8f6ae9db8f89\"\u003e\u003cimg src=\"https://img.shields.io/badge/09e31e716-fix-green\" alt=\"fix - 09e31e716\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e only reset selected values if used in combobox (\u003ca href=\"https://redirect.github.com/angular/components/issues/32329\"\u003e#32329\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/05f936ae14d8943ced0ad981cde8f3c2ac95afd1\"\u003e\u003cimg src=\"https://img.shields.io/badge/05f936ae1-fix-green\" alt=\"fix - 05f936ae1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e tree item visibility issue (\u003ca href=\"https://redirect.github.com/angular/components/issues/32156\"\u003e#32156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/afe4d063dd8f3dc5932519761693e7a79de77dc1\"\u003e\u003cimg src=\"https://img.shields.io/badge/afe4d063d-fix-green\" alt=\"fix - afe4d063d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e internal conformance fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32102\"\u003e#32102\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.1 \u0026quot;sulfur-snack\u0026quot; (2025-11-26)\u003c/h1\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003eccc12c387\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/pull/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e043d9cacc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/pull/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e02965bb0e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/pull/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0 \u0026quot;damask-dachshund\u0026quot; (2025-11-19)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eLIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-container\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-container-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$dark-backdrop-background\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-color\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-backdrop\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTemplatePortalDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortal\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePortalHostDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortalOutlet\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTestElement\u003c/code\u003e implementations need to provide a \u003ccode\u003esetContenteditableValue\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematBottomSheet\u003c/code\u003e animations symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_FAB_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_CHECKBOX_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAnimationCurves\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnimationDurations\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eNativeDateAdapter.useUtcForDisplay\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATE_LOCAL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMatCommonModule\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eGranularSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMATERIAL_SANITY_CHECKS\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematDatepickerAnimations\u003c/code\u003e symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_RANGE_DATE_SELECTION_MODEL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/39696e36ce3b64652cca2e7d92085dc46b318801\"\u003e\u003ccode\u003e39696e3\u003c/code\u003e\u003c/a\u003e release: cut the v21.0.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003ccode\u003e02965bb\u003c/code\u003e\u003c/a\u003e fix(multiple): resolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0cc3abd3f1de3ab7f1ad156bf19c7ba38ca2769a\"\u003e\u003ccode\u003e0cc3abd\u003c/code\u003e\u003c/a\u003e build: unblock Bazel updates (\u003ca href=\"https://redirect.github.com/angular/components/issues/32414\"\u003e#32414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0b9e78ed7fed478319cd5c02d1380682ab47ce2c\"\u003e\u003ccode\u003e0b9e78e\u003c/code\u003e\u003c/a\u003e refactor: set up function for setting innerHTML (\u003ca href=\"https://redirect.github.com/angular/components/issues/32404\"\u003e#32404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003ccode\u003e043d9ca\u003c/code\u003e\u003c/a\u003e fix(material/select): render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003ccode\u003eccc12c3\u003c/code\u003e\u003c/a\u003e fix(cdk/testing): errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/a68964a002630b1027881dc84aa0752050be4e4f\"\u003e\u003ccode\u003ea68964a\u003c/code\u003e\u003c/a\u003e build: update dependency bazel to v7.7.1 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32361\"\u003e#32361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/5cfdd477540e43b3a93eb7141bbc4637357b0cf7\"\u003e\u003ccode\u003e5cfdd47\u003c/code\u003e\u003c/a\u003e test: remove unnecessary test calls (\u003ca href=\"https://redirect.github.com/angular/components/issues/32396\"\u003e#32396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/9ae3b5aabd0301c1b6012d88747d5a848cee3e73\"\u003e\u003ccode\u003e9ae3b5a\u003c/code\u003e\u003c/a\u003e build: fix stackblitz test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/b1726541b0c9c239b838c01cf6838d44806ababf\"\u003e\u003ccode\u003eb172654\u003c/code\u003e\u003c/a\u003e build: fix test-based Stackblitz examples\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/16.2.14...21.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/forms` from 16.2.12 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e\u003cimg src=\"https://img.shields.io/badge/39c577bc36-fix-green\" alt=\"fix - 39c577bc36\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edo not type check native controls with ControlValueAccessor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d3a89a477e273b9b2223b6db775955e35105963\"\u003e\u003cimg src=\"https://img.shields.io/badge/8d3a89a477-fix-green\" alt=\"fix - 8d3a89a477\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eescape angular control flow in jsdoc\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/bc34083d349a7d30efb43df97de0509fd85a1996\"\u003e\u003cimg src=\"https://img.shields.io/badge/bc34083d34-fix-green\" alt=\"fix - bc34083d34\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eignore non-existent files\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ea1e071742a031d9afb7a39f8e23082cd88ca2e\"\u003e\u003cimg src=\"https://img.shields.io/badge/0ea1e07174-fix-green\" alt=\"fix - 0ea1e07174\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eapply bootstrap-options migration to \u003ccode\u003eplatformBrowserDynamic\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70507b8c1ce733b8232a12fa45037ee219b5b102\"\u003e\u003cimg src=\"https://img.shields.io/badge/70507b8c1c-fix-green\" alt=\"fix - 70507b8c1c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edebug data causing memory leak for root effects\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a55482fca3b7e4f39d95f8ff236b6619e59b8190\"\u003e\u003cimg src=\"https://img.shields.io/badge/a55482fca3-fix-green\" alt=\"fix - a55482fca3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enotify profiler events in case of errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49ad7c650818ee7db321a24c89282dbf9bb250f3\"\u003e\u003cimg src=\"https://img.shields.io/badge/49ad7c6508-fix-green\" alt=\"fix - 49ad7c6508\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse injected \u003ccode\u003eDOCUMENT\u003c/code\u003e for \u003ccode\u003eCSP_NONCE\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cc1ec099315b0f429d0b0f07c9b1bf686668db6b\"\u003e\u003cimg src=\"https://img.shields.io/badge/cc1ec09931-perf-orange\" alt=\"perf - cc1ec09931\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid repeat searches for field directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d5c7cf99aa5c6490f8bea950b04bd56073582a1\"\u003e\u003cimg src=\"https://img.shields.io/badge/7d5c7cf99a-feat-blue\" alt=\"feat - 7d5c7cf99a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd DI option for classes on \u003ccode\u003eField\u003c/code\u003e directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8acf5d27563ec51cc76971732d50e1f4142a3fe3\"\u003e\u003cimg src=\"https://img.shields.io/badge/8acf5d2756-fix-green\" alt=\"fix - 8acf5d2756\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow dynamic \u003ccode\u003etype\u003c/code\u003e bindings on signal form controls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de5fca94c5cfafa9098d9ee270f448b90d4ac06f\"\u003e\u003cimg src=\"https://img.shields.io/badge/de5fca94c5-fix-green\" alt=\"fix - de5fca94c5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erun reset as untracked\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3240d856d942727372a705252f7c8c115394a41e\"\u003e\u003cimg src=\"https://img.shields.io/badge/3240d856d9-fix-green\" alt=\"fix - 3240d856d9\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent XSRF token leakage to protocol-relative URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f394215b14d59c49e1433472ecdd2fd5547cc769\"\u003e\u003cimg src=\"https://img.shields.io/badge/f394215b14-fix-green\" alt=\"fix - f394215b14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edetect structural ngTemplateOutlet and ngComponentOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eVSCode Extension: 21.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(language-service): address potential memory leak during project creation (89095946cf)\u003c/li\u003e\n\u003cli\u003efix(language-server): fix directory renaming on Windows (3f7111a9c3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c795960ada1a7e21b8bee411e20a08c700b6e385\"\u003e\u003cimg src=\"https://img.shields.io/badge/c795960ada-feat-blue\" alt=\"feat - c795960ada\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd experimental support for the Navigation API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63406\"\u003e#63406\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9eac43cf46993442e9de5764e2ccca98e3837939\"\u003e\u003cimg src=\"https://img.shields.io/badge/9eac43cf46-feat-blue\" alt=\"feat - 9eac43cf46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eSupport of optional keys for the KeyValue pipe (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/48814\"\u003e#48814\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a1868c9d13991d24f893499406b29a5f2e0a388b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a1868c9d13-feat-blue\" alt=\"feat - a1868c9d13\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate to cldr 47 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/64032\"\u003e#64032\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/196fa500a3c282af5158fa2873df8e2a73243493\"\u003e\u003cimg src=\"https://img.shields.io/badge/196fa500a3-fix-green\" alt=\"fix - 196fa500a3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eproperly type ngComponentOutlet (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/64561\"\u003e#64561\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a4b225c57d8e390ec06731f5211d52d14da3a9c\"\u003e\u003cimg src=\"https://img.shields.io/badge/7a4b225c57-refactor-yellow\" alt=\"refactor - 7a4b225c57\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove typing of \u003ccode\u003engComponentOutletContent\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63674\"\u003e#63674\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/25f593ce2a623add0cbd4ab3bb0d4987793e4f34\"\u003e\u003cimg src=\"https://img.shields.io/badge/25f593ce2a-refactor-yellow\" alt=\"refactor - 25f593ce2a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove\u003ccode\u003engModuleFactory\u003c/code\u003e input of \u003ccode\u003eNgComponentOutlet\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62838\"\u003e#62838\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ecea909bccc3d6a3c33e77e1feb4ad0926e72f9e\"\u003e\u003cimg src=\"https://img.shields.io/badge/ecea909bcc-fix-green\" alt=\"fix - ecea909bcc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edon't choke on unbalanced parens in declaration block\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.1 (2025-11-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e39c577bc36\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edo not type check native controls with ControlValueAccessor\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d3a89a477e273b9b2223b6db775955e35105963\"\u003e8d3a89a477\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eescape angular control flow in jsdoc\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/bc34083d349a7d30efb43df97de0509fd85a1996\"\u003ebc34083d34\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eignore non-existent files\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ea1e071742a031d9afb7a39f8e23082cd88ca2e\"\u003e0ea1e07174\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eapply bootstrap-options migration to \u003ccode\u003eplatformBrowserDynamic\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70507b8c1ce733b8232a12fa45037ee219b5b102\"\u003e70507b8c1c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edebug data causing memory leak for root effects\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a55482fca3b7e4f39d95f8ff236b6619e59b8190\"\u003ea55482fca3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003enotify profiler events in case of errors\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49ad7c650818ee7db321a24c89282dbf9bb250f3\"\u003e49ad7c6508\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003euse injected \u003ccode\u003eDOCUMENT\u003c/code\u003e for \u003ccode\u003eCSP_NONCE\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cc1ec099315b0f429d0b0f07c9b1bf686668db6b\"\u003ecc1ec09931\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003eavoid repeat searches for field directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d5c7cf99aa5c6490f8bea950b04bd56073582a1\"\u003e7d5c7cf99a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd DI option for classes on \u003ccode\u003eField\u003c/code\u003e directive\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8acf5d27563ec51cc76971732d50e1f4142a3fe3\"\u003e8acf5d2756\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow dynamic \u003ccode\u003etype\u003c/code\u003e bindings on signal form controls\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de5fca94c5cfafa9098d9ee270f448b90d4ac06f\"\u003ede5fca94c5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003erun reset as untracked\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3240d856d942727372a705252f7c8c115394a41e\"\u003e3240d856d9\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent XSRF token leakage to protocol-relative URLs\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f394215b14d59c49e1433472ecdd2fd5547cc769\"\u003ef394215b14\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edetect structural ngTemplateOutlet and ngComponentOutlet\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0 (2025-11-19)\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"http://goo.gle/angular-v21-blog\"\u003eBlog post \u0026quot;Announcing Angular v21\u0026quot;\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e3f5f34732c90989517f0f0b1c511d0f5ced39c3\"\u003e\u003ccode\u003ee3f5f34\u003c/code\u003e\u003c/a\u003e refactor(forms): Make reset take value\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d5c7cf99aa5c6490f8bea950b04bd56073582a1\"\u003e\u003ccode\u003e7d5c7cf\u003c/code\u003e\u003c/a\u003e feat(forms): add DI option for classes on \u003ccode\u003eField\u003c/code\u003e directive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8acf5d27563ec51cc76971732d50e1f4142a3fe3\"\u003e\u003ccode\u003e8acf5d2\u003c/code\u003e\u003c/a\u003e fix(forms): allow dynamic \u003ccode\u003etype\u003c/code\u003e bindings on signal form controls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/4845a33018cf2c48e37c667892c24d6c6ec81f6b\"\u003e\u003ccode\u003e4845a33\u003c/code\u003e\u003c/a\u003e refactor(forms): support custom control directives\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/de5fca94c5cfafa9098d9ee270f448b90d4ac06f\"\u003e\u003ccode\u003ede5fca9\u003c/code\u003e\u003c/a\u003e fix(forms): run reset as untracked\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/91d8d55a80a1d1894827ef06e38e56de6e661575\"\u003e\u003ccode\u003e91d8d55\u003c/code\u003e\u003c/a\u003e fix(forms): Set error message of a schema error.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e682f00e29093bda29ac59c1cf685637d06e61b2\"\u003e\u003ccode\u003ee682f00\u003c/code\u003e\u003c/a\u003e refactor(forms): reduce boilerplate needed to define custom controls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/d89e522a1f07c4b2ac7fd2b926ae44658f9394d4\"\u003e\u003ccode\u003ed89e522\u003c/code\u003e\u003c/a\u003e fix(forms): debounce updates from interop controls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e1a7c35370a628cbd594fca346d4d4bd52c627e0\"\u003e\u003ccode\u003ee1a7c35\u003c/code\u003e\u003c/a\u003e refactor(forms): improve typing on min \u0026amp; max (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/65212\"\u003e#65212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ff4633dab863409beeb10d87d078e044be9be0cd\"\u003e\u003ccode\u003eff4633d\u003c/code\u003e\u003c/a\u003e refactor(forms): allow passing number|string|null paths to min \u0026amp; max (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/65212\"\u003e#65212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/21.0.1/packages/forms\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/material` from 16.2.14 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/material\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003cimg src=\"https://img.shields.io/badge/043d9cacc-fix-green\" alt=\"fix - 043d9cacc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003cimg src=\"https://img.shields.io/badge/ccc12c387-fix-green\" alt=\"fix - ccc12c387\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003cimg src=\"https://img.shields.io/badge/02965bb0e-fix-green\" alt=\"fix - 02965bb0e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e21.0.0\u003c/h2\u003e\n\u003ch3\u003earia\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a821a3ef07d99d5ce8631469cd818929b9c0559b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a821a3ef0-feat-blue\" alt=\"feat - a821a3ef0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e create the aria grid (\u003ca href=\"https://redirect.github.com/angular/components/issues/32092\"\u003e#32092\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f9d3cde14984c6da006e09e8e79809247e017a65\"\u003e\u003cimg src=\"https://img.shields.io/badge/f9d3cde14-feat-blue\" alt=\"feat - f9d3cde14\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e create the aria menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/32080\"\u003e#32080\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a0b5800277c206127999e21eda77ef003c066aee\"\u003e\u003cimg src=\"https://img.shields.io/badge/a0b580027-feat-blue\" alt=\"feat - a0b580027\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds skip disabled toolbar example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32127\"\u003e#32127\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/5396c43474fe272ad5e21366c027cd1ae0c6d593\"\u003e\u003cimg src=\"https://img.shields.io/badge/5396c4347-feat-blue\" alt=\"feat - 5396c4347\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar basic vertical example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32126\"\u003e#32126\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ba9f79be528c6228e50a73809ec62efcbfc7afc6\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba9f79be5-feat-blue\" alt=\"feat - ba9f79be5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e adds toolbar-basic-horizontal-example to dev-app (\u003ca href=\"https://redirect.github.com/angular/components/issues/32106\"\u003e#32106\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ec6045b270211131b6987e316fb3252745c89e11\"\u003e\u003cimg src=\"https://img.shields.io/badge/ec6045b27-fix-green\" alt=\"fix - ec6045b27\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eaccordion:\u003c/strong\u003e rename value to panelId for trigger and panel (\u003ca href=\"https://redirect.github.com/angular/components/issues/32295\"\u003e#32295\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0b03c6e96485f83447ed3451070be138bf21d4e6\"\u003e\u003cimg src=\"https://img.shields.io/badge/0b03c6e96-fix-green\" alt=\"fix - 0b03c6e96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e add missing apis (\u003ca href=\"https://redirect.github.com/angular/components/issues/32124\"\u003e#32124\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/25223a2f8be7b13699b94b99a1335e4ac7185772\"\u003e\u003cimg src=\"https://img.shields.io/badge/25223a2f8-fix-green\" alt=\"fix - 25223a2f8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e dialog popup support (\u003ca href=\"https://redirect.github.com/angular/components/issues/32279\"\u003e#32279\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a47ebeb964e794e3868659d68e46b3b782d1550b\"\u003e\u003cimg src=\"https://img.shields.io/badge/a47ebeb96-fix-green\" alt=\"fix - a47ebeb96\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32308\"\u003e#32308\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/127d3dba5754a4ceaa60f56ced7b4795c29372cc\"\u003e\u003cimg src=\"https://img.shields.io/badge/127d3dba5-fix-green\" alt=\"fix - 127d3dba5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e escape key behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32364\"\u003e#32364\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c3279ca4b47f91cd61e0ba0be24bdd10869fa059\"\u003e\u003cimg src=\"https://img.shields.io/badge/c3279ca4b-fix-green\" alt=\"fix - c3279ca4b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e highlighting edge cases (\u003ca href=\"https://redirect.github.com/angular/components/issues/32136\"\u003e#32136\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/1232805db6f0a0a07154b3601eaa8b9cc0d94f31\"\u003e\u003cimg src=\"https://img.shields.io/badge/1232805db-fix-green\" alt=\"fix - 1232805db\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e readonly behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/32169\"\u003e#32169\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/6c46f950d451862692c2c74f41a704a3ef0fd472\"\u003e\u003cimg src=\"https://img.shields.io/badge/6c46f950d-fix-green\" alt=\"fix - 6c46f950d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e several small fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32202\"\u003e#32202\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8beb22f8c8d0d9f415225826188c38964c65ceee\"\u003e\u003cimg src=\"https://img.shields.io/badge/8beb22f8c-fix-green\" alt=\"fix - 8beb22f8c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecombobox:\u003c/strong\u003e use click instead of pointerup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32324\"\u003e#32324\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/92d933421953a2f5123d0f823dc7880bb4e69098\"\u003e\u003cimg src=\"https://img.shields.io/badge/92d933421-fix-green\" alt=\"fix - 92d933421\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e fix navigation bugs and add grid behavior unit tests (\u003ca href=\"https://redirect.github.com/angular/components/issues/32140\"\u003e#32140\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e3babf3fc3229879e38751eff2c5941ed2152ae7\"\u003e\u003cimg src=\"https://img.shields.io/badge/e3babf3fc-fix-green\" alt=\"fix - e3babf3fc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003egrid:\u003c/strong\u003e rtl navigation (\u003ca href=\"https://redirect.github.com/angular/components/issues/32170\"\u003e#32170\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/fe79e982cb7b3f0b42c2be056face255ccfe5783\"\u003e\u003cimg src=\"https://img.shields.io/badge/fe79e982c-fix-green\" alt=\"fix - fe79e982c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add expansion delay (\u003ca href=\"https://redirect.github.com/angular/components/issues/32293\"\u003e#32293\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3d1cafbdd3839c12d5298f216abaef59f717f04c\"\u003e\u003cimg src=\"https://img.shields.io/badge/3d1cafbdd-fix-green\" alt=\"fix - 3d1cafbdd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e add selectable to inputs (\u003ca href=\"https://redirect.github.com/angular/components/issues/32131\"\u003e#32131\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/56631cb858fda514cfd81e23064e7859aa338843\"\u003e\u003cimg src=\"https://img.shields.io/badge/56631cb85-fix-green\" alt=\"fix - 56631cb85\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e deferred content import\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/95e648ad8a4fb3591fd20229db3a0649ac95ebb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/95e648ad8-fix-green\" alt=\"fix - 95e648ad8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e disabled state (\u003ca href=\"https://redirect.github.com/angular/components/issues/32301\"\u003e#32301\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ce20dbe1a3e4be0e1002533f7f1910b1f9efd0c3\"\u003e\u003cimg src=\"https://img.shields.io/badge/ce20dbe1a-fix-green\" alt=\"fix - ce20dbe1a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e lazy render trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32203\"\u003e#32203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/19095030a0a6f102aa1ba7276afbc12fd79a27c7\"\u003e\u003cimg src=\"https://img.shields.io/badge/19095030a-fix-green\" alt=\"fix - 19095030a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e public api cleanup (\u003ca href=\"https://redirect.github.com/angular/components/issues/32189\"\u003e#32189\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4b5db13286b263cb28918938dce515376b4a5f5b\"\u003e\u003cimg src=\"https://img.shields.io/badge/4b5db1328-fix-green\" alt=\"fix - 4b5db1328\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e rtl text direction (\u003ca href=\"https://redirect.github.com/angular/components/issues/32254\"\u003e#32254\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/bac171d8bc82fd7bfd716cc5214c49f1bfbc76bb\"\u003e\u003cimg src=\"https://img.shields.io/badge/bac171d8b-fix-green\" alt=\"fix - bac171d8b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e allow developers to wrap widgets (\u003ca href=\"https://redirect.github.com/angular/components/issues/32341\"\u003e#32341\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/d8acd69f5d26c85ffc08224e67be5f594c85e38a\"\u003e\u003cimg src=\"https://img.shields.io/badge/d8acd69f5-fix-green\" alt=\"fix - d8acd69f5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e adds rtl keyboard functionality for tree (\u003ca href=\"https://redirect.github.com/angular/components/issues/32305\"\u003e#32305\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/86558d2aa6437556bac805a6acdf8c31f5b2cfb8\"\u003e\u003cimg src=\"https://img.shields.io/badge/86558d2aa-fix-green\" alt=\"fix - 86558d2aa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e internal conformance check (\u003ca href=\"https://redirect.github.com/angular/components/issues/32337\"\u003e#32337\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/09e31e71673a73d80033e7aaf8ad8f6ae9db8f89\"\u003e\u003cimg src=\"https://img.shields.io/badge/09e31e716-fix-green\" alt=\"fix - 09e31e716\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e only reset selected values if used in combobox (\u003ca href=\"https://redirect.github.com/angular/components/issues/32329\"\u003e#32329\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/05f936ae14d8943ced0ad981cde8f3c2ac95afd1\"\u003e\u003cimg src=\"https://img.shields.io/badge/05f936ae1-fix-green\" alt=\"fix - 05f936ae1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e tree item visibility issue (\u003ca href=\"https://redirect.github.com/angular/components/issues/32156\"\u003e#32156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/afe4d063dd8f3dc5932519761693e7a79de77dc1\"\u003e\u003cimg src=\"https://img.shields.io/badge/afe4d063d-fix-green\" alt=\"fix - afe4d063d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e internal conformance fixes (\u003ca href=\"https://redirect.github.com/angular/components/issues/32102\"\u003e#32102\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/material\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e21.0.1 \u0026quot;sulfur-snack\u0026quot; (2025-11-26)\u003c/h1\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003eccc12c387\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/pull/32399\"\u003e#32399\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e043d9cacc\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/pull/32363\"\u003e#32363\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emultiple\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e02965bb0e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/pull/32413\"\u003e#32413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0 \u0026quot;damask-dachshund\u0026quot; (2025-11-19)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eLIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eTREE_KEY_MANAGER_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-container\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-container-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$dark-backdrop-background\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-color\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e$z-index-overlay-backdrop\u003c/code\u003e has been removed. Use \u003ccode\u003e$overlay-backdrop-z-index\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTemplatePortalDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortal\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePortalHostDirective\u003c/code\u003e has been removed. Use \u003ccode\u003eCdkPortalOutlet\u003c/code\u003e instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTestElement\u003c/code\u003e implementations need to provide a \u003ccode\u003esetContenteditableValue\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematBottomSheet\u003c/code\u003e animations symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_FAB_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_CHECKBOX_DEFAULT_OPTIONS_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eAnimationCurves\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAnimationDurations\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eNativeDateAdapter.useUtcForDisplay\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATE_LOCAL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMatCommonModule\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eGranularSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMATERIAL_SANITY_CHECKS\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ematDatepickerAnimations\u003c/code\u003e symbol has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMAT_RANGE_DATE_SELECTION_MODEL_FACTORY\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/39696e36ce3b64652cca2e7d92085dc46b318801\"\u003e\u003ccode\u003e39696e3\u003c/code\u003e\u003c/a\u003e release: cut the v21.0.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/02965bb0eee969549518a49a796497ae1fe89569\"\u003e\u003ccode\u003e02965bb\u003c/code\u003e\u003c/a\u003e fix(multiple): resolve forward ref errors (\u003ca href=\"https://redirect.github.com/angular/components/issues/32413\"\u003e#32413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0cc3abd3f1de3ab7f1ad156bf19c7ba38ca2769a\"\u003e\u003ccode\u003e0cc3abd\u003c/code\u003e\u003c/a\u003e build: unblock Bazel updates (\u003ca href=\"https://redirect.github.com/angular/components/issues/32414\"\u003e#32414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/0b9e78ed7fed478319cd5c02d1380682ab47ce2c\"\u003e\u003ccode\u003e0b9e78e\u003c/code\u003e\u003c/a\u003e refactor: set up function for setting innerHTML (\u003ca href=\"https://redirect.github.com/angular/components/issues/32404\"\u003e#32404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/043d9cacc7d76828d02f921447b48688ab3d4129\"\u003e\u003ccode\u003e043d9ca\u003c/code\u003e\u003c/a\u003e fix(material/select): render panel next to trigger (\u003ca href=\"https://redirect.github.com/angular/components/issues/32363\"\u003e#32363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/ccc12c3879b3b58d6821e80ba1ef79db25a49572\"\u003e\u003ccode\u003eccc12c3\u003c/code\u003e\u003c/a\u003e fix(cdk/testing): errors in harnesses when using Vitest (\u003ca href=\"https://redirect.github.com/angular/components/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/a68964a002630b1027881dc84aa0752050be4e4f\"\u003e\u003ccode\u003ea68964a\u003c/code\u003e\u003c/a\u003e build: update dependency bazel to v7.7.1 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32361\"\u003e#32361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/5cfdd477540e43b3a93eb7141bbc4637357b0cf7\"\u003e\u003ccode\u003e5cfdd47\u003c/code\u003e\u003c/a\u003e test: remove unnecessary test calls (\u003ca href=\"https://redirect.github.com/angular/components/issues/32396\"\u003e#32396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/9ae3b5aabd0301c1b6012d88747d5a848cee3e73\"\u003e\u003ccode\u003e9ae3b5a\u003c/code\u003e\u003c/a\u003e build: fix stackblitz test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/b1726541b0c9c239b838c01cf6838d44806ababf\"\u003e\u003ccode\u003eb172654\u003c/code\u003e\u003c/a\u003e build: fix test-based Stackblitz examples\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/16.2.14...21.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/platform-browser` from 16.2.12 to 21.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/platform-browser\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.0.1\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/39c577bc362b263896b38c9486131d4342b8f1a8\"\u003e\u003cimg src=\"https://img.shields.io/badge...\n\n_Description has been truncated_","html_url":"https://github.com/sitmun/sitmun-admin-app/pull/337","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sitmun%2Fsitmun-admin-app/issues/337","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/337/packages"}},{"old_version":"19.0.1","new_version":"20.0.0","update_type":"major","path":null,"pr_created_at":"2025-10-22T17:34:38.000Z","version_change":"19.0.1 → 20.0.0","issue":{"uuid":"3541731993","node_id":"PR_kwDOEX7hus6vHV5j","number":1615,"state":"open","title":"chore(deps): bump the angular-major group with 20 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-10-22T17:34:38.000Z","updated_at":"2025-10-22T22:00:40.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"angular-major","update_count":20,"packages":[{"name":"@angular/animations","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/cdk","old_version":"19.2.19","new_version":"20.2.10","repository_url":"https://github.com/angular/components"},{"name":"@angular/common","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/compiler","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/core","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/forms","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser-dynamic","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/router","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/build-angular","old_version":"19.2.15","new_version":"20.3.6","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-eslint/builder","old_version":"19.8.1","new_version":"20.4.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin","old_version":"19.8.1","new_version":"20.4.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin-template","old_version":"19.8.1","new_version":"20.4.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/schematics","old_version":"19.8.1","new_version":"20.4.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/template-parser","old_version":"19.8.1","new_version":"20.4.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular/cli","old_version":"19.2.15","new_version":"20.3.6","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/compiler-cli","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"@angular/language-service","old_version":"19.2.14","new_version":"20.3.6","repository_url":"https://github.com/angular/angular"},{"name":"ng-packagr","old_version":"19.2.2","new_version":"20.3.0","repository_url":"https://github.com/ng-packagr/ng-packagr"}],"path":null,"ecosystem":"npm"},"body":"Bumps the angular-major group with 20 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/animations](https://github.com/angular/angular/tree/HEAD/packages/animations) | `19.2.14` | `20.3.6` |\n| [@angular/cdk](https://github.com/angular/components) | `19.2.19` | `20.2.10` |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `19.2.14` | `20.3.6` |\n| [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) | `19.2.14` | `20.3.6` |\n| [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) | `19.2.14` | `20.3.6` |\n| [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) | `19.2.14` | `20.3.6` |\n| [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) | `19.2.14` | `20.3.6` |\n| [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) | `19.2.14` | `20.3.6` |\n| [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) | `19.2.14` | `20.3.6` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `19.2.15` | `20.3.6` |\n| [@angular-eslint/builder](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/builder) | `19.8.1` | `20.4.0` |\n| [@angular-eslint/eslint-plugin](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin) | `19.8.1` | `20.4.0` |\n| [@angular-eslint/eslint-plugin-template](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin-template) | `19.8.1` | `20.4.0` |\n| [@angular-eslint/schematics](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/schematics) | `19.8.1` | `20.4.0` |\n| [@angular-eslint/template-parser](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/template-parser) | `19.8.1` | `20.4.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `19.2.15` | `20.3.6` |\n| [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) | `19.2.14` | `20.3.6` |\n| [@angular/language-service](https://github.com/angular/angular/tree/HEAD/packages/language-service) | `19.2.14` | `20.3.6` |\n| [ng-packagr](https://github.com/ng-packagr/ng-packagr) | `19.2.2` | `20.3.0` |\n\nUpdates `@angular/animations` from 19.2.14 to 20.3.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/animations\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.6\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/911d6822cb18dabf4f72312dfc2e2ef9904bf6c2\"\u003e\u003cimg src=\"https://img.shields.io/badge/911d6822cb-fix-green\" alt=\"fix - 911d6822cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate animation scheduling (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64441\"\u003e#64441\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ece42866d0ee8240e73ebcef79ba47378777368\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ece42866d-fix-green\" alt=\"fix - 2ece42866d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003eDomEventsPlugin\u003c/code\u003e should always be the last plugin to be called for \u003ccode\u003esupports()\u003c/code\u003e. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/50394\"\u003e#50394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8dec92ff9f1055c6b4fc4e767d8b1b408ac28e67\"\u003e\u003cimg src=\"https://img.shields.io/badge/8dec92ff9f-fix-green\" alt=\"fix - 8dec92ff9f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/63957\"\u003e#63957\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64317\"\u003e#64317\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c2e817b0efb6f617312936b756ace2c85139d1fc\"\u003e\u003cimg src=\"https://img.shields.io/badge/c2e817b0ef-perf-orange\" alt=\"perf - c2e817b0ef\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix performance of \u0026quot;interpolated signal not invoked\u0026quot; check (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64410\"\u003e#64410\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f15cfa4cc414f1d2f4b126bdfc26d74922732672\"\u003e\u003cimg src=\"https://img.shields.io/badge/f15cfa4cc4-fix-green\" alt=\"fix - f15cfa4cc4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efixes regression in \u003ccode\u003eanimate.leave\u003c/code\u003e function bindings (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64413\"\u003e#64413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d54dd674ca9db874c95027161b8080bd37250af6\"\u003e\u003cimg src=\"https://img.shields.io/badge/d54dd674ca-fix-green\" alt=\"fix - d54dd674ca\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePrevents early style pruning with leave animations (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64335\"\u003e#64335\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/554573e5248a72f73df1468e992da08ce5f6112d\"\u003e\u003cimg src=\"https://img.shields.io/badge/554573e524-fix-green\" alt=\"fix - 554573e524\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emigrating input with more than 1 usage in a method (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64367\"\u003e#64367\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2c79ca0b579d99346c267e6b61789699e8656dc5\"\u003e\u003cimg src=\"https://img.shields.io/badge/2c79ca0b57-fix-green\" alt=\"fix - 2c79ca0b57\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove error for no matching files in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64253\"\u003e#64253\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64314\"\u003e#64314\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e4bcc7d22d4699a33d6648e628fb65a38d0ad8f\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e4bcc7d22-fix-green\" alt=\"fix - 6e4bcc7d22\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eScroll restoration should use instant scroll behavior for traversals (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64299\"\u003e#64299\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.4\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/853ed169a8a1392ef2da7790181fb8e100f59519\"\u003e\u003cimg src=\"https://img.shields.io/badge/853ed169a8-fix-green\" alt=\"fix - 853ed169a8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eensure missing leave animations don't queue leave animations (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64226\"\u003e#64226\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6fed986b7a8f22dfe81d94b1e55490a278e6d82a\"\u003e\u003cimg src=\"https://img.shields.io/badge/6fed986b7a-fix-green\" alt=\"fix - 6fed986b7a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eFixes animations in conjunction with content projection (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/63776\"\u003e#63776\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/76fe5599fe8e034c2a5a432608785a53018e23d2\"\u003e\u003cimg src=\"https://img.shields.io/badge/76fe5599fe-fix-green\" alt=\"fix - 76fe5599fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle undefined CSS time values in parseCssTimeUnitsToMs function (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64181\"\u003e#64181\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3b959105be04d7b11a1eb1035f1938bd0c43fe8b\"\u003e\u003cimg src=\"https://img.shields.io/badge/3b959105be-fix-green\" alt=\"fix - 3b959105be\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent early exit from leave animations when multiple transitions are present (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64225\"\u003e#64225\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65884895fff5bc499974849e9ec5a5792eb9e36c\"\u003e\u003cimg src=\"https://img.shields.io/badge/65884895ff-fix-green\" alt=\"fix - 65884895ff\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003epreserve component imports when pruning NgModules in standalone migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64186\"\u003e#64186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.3\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f51ab32fb3000ae34c077b049ff2f7b8e3e22d14\"\u003e\u003cimg src=\"https://img.shields.io/badge/f51ab32fb3-fix-green\" alt=\"fix - f51ab32fb3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erecover template literals with broken expressions (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/64150\"\u003e#64150\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/animations\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.6 (2025-10-16)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/911d6822cb18dabf4f72312dfc2e2ef9904bf6c2\"\u003e911d6822cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate animation scheduling (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64441\"\u003e#64441\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ece42866d0ee8240e73ebcef79ba47378777368\"\u003e2ece42866d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003eDomEventsPlugin\u003c/code\u003e should always be the last plugin to be called for \u003ccode\u003esupports()\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/angular/angular/pull/50394\"\u003e#50394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.8 (2025-10-15)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/563dbd998c86e850b3c4dde4c7cee00d7c9d7581\"\u003e563dbd998c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds diagnostic for misconfigured \u003ccode\u003e@defer\u003c/code\u003e triggers (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64069\"\u003e#64069\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab98b2425f4c4cb59927aa686818ecee99e634c7\"\u003eab98b2425f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63957\"\u003e#63957\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49377d274afb2ae039d6ac81184104f448e01d8e\"\u003e49377d274a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003efix performance of \u0026quot;interpolated signal not invoked\u0026quot; check (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64410\"\u003e#64410\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2a7a5de53fd6fb5714c06c63dd1dad5718086083\"\u003e2a7a5de53f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAllow passing application providers in \u003ccode\u003ebootstrapModule\u003c/code\u003e options (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64354\"\u003e#64354\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ad2376435b4bcfdb695d841272f8234ab2a7cca5\"\u003ead2376435b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport IntersectionObserver options in viewport triggers (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64130\"\u003e#64130\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab415f3d7f23cef8e00595e9cf6af2c8b764a8ae\"\u003eab415f3d7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003econtrol not recognized when input has directive injecting ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64368\"\u003e#64368\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ed6c9396049adde45ac8707a9dc7f9a7f4b7b01\"\u003e0ed6c93960\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efixes regression in \u003ccode\u003eanimate.leave\u003c/code\u003e function bindings (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64413\"\u003e#64413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e2281023780297f29cfff087aeea913bfc686cd7\"\u003ee228102378\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ePrevents early style pruning with leave animations (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64335\"\u003e#64335\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f4d1017c25813b290697d8e1a829983a7b1bca27\"\u003ef4d1017c25\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that common field states are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/acd7c83597ad376ec9a48421b3b291951ca2d75e\"\u003eacd7c83597\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that min/max properties are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/71e8672837eb6c2da2570eb2341e896fbf7ca5a3\"\u003e71e8672837\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that minLength/maxLength properties are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/32f86d35f7cd177b6e4525a7ae97909888d9fee4\"\u003e32f86d35f7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003eoptimize \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64351\"\u003e#64351\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2739b7975ba40a8cfc3b00f0c444a3a147f7f553\"\u003e2739b7975b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd referrerPolicy option to HttpResource (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64283\"\u003e#64283\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/861cee34e0e9b5562cfe70d245f30b7ddea7d8fd\"\u003e861cee34e0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds migration for deprecated router testing module (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64217\"\u003e#64217\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ffcfb625a0417faba091ae9dbd0156e9f241b43\"\u003e1ffcfb625a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds migration for deprecated router testing module (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64217\"\u003e#64217\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e99bbd3d2a391b5d531be65f534cbabdcf0be516\"\u003ee99bbd3d2a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emigrating input with more than 1 usage in a method (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64367\"\u003e#64367\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e1da41ffdfd984f844c9528ead2d66fd83749aed\"\u003ee1da41ffdf\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eScroll restoration should use instant scroll behavior for traversals (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64299\"\u003e#64299\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003e\u003ccode\u003ee78451c\u003c/code\u003e\u003c/a\u003e fix(core): prevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/63921\"\u003e#63921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a7725ee4c91641ef92b19f0fd35dc0fc000bc84\"\u003e\u003ccode\u003e7a7725e\u003c/code\u003e\u003c/a\u003e refactor(core): Update tests for zoneless by default (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/63672\"\u003e#63672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ed50120d4c1a98958663e58633472f6cd857cd10\"\u003e\u003ccode\u003eed50120\u003c/code\u003e\u003c/a\u003e refactor(animations): remove dependency on \u003ccode\u003e@angular/common\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/63248\"\u003e#63248\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9a27c5befb676e894c522392e2c06b4f8fdca25a\"\u003e\u003ccode\u003e9a27c5b\u003c/code\u003e\u003c/a\u003e build: rename defaults2.bzl to defaults.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/63384\"\u003e#63384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ec8cd3e1897e005cf2916ba537f91e0c24735d12\"\u003e\u003ccode\u003eec8cd3e\u003c/code\u003e\u003c/a\u003e refactor(animations): optimize resolveTimeExpression (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62927\"\u003e#62927\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/fa8d8b8396c9992d25a2e0256ae895ca7c86ad66\"\u003e\u003ccode\u003efa8d8b8\u003c/code\u003e\u003c/a\u003e build: migrate all npm packages to use new rules_js based npm_package rule (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/cbc258eec8f70785c728dda615ed685742c1dc82\"\u003e\u003ccode\u003ecbc258e\u003c/code\u003e\u003c/a\u003e build: remove ts_project_interop infrastructure (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62908\"\u003e#62908\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/793ff35602946748b88ae3da2542ccb7076c9290\"\u003e\u003ccode\u003e793ff35\u003c/code\u003e\u003c/a\u003e build: move http_server and generate_api_docs into defaults2.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62878\"\u003e#62878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9766116cea69607d80144251a599f1cc1b12e02c\"\u003e\u003ccode\u003e9766116\u003c/code\u003e\u003c/a\u003e refactor(animations): deprecate the animations package (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62795\"\u003e#62795\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8bf97d13707b8cfee3c782d1501a1e622593a697\"\u003e\u003ccode\u003e8bf97d1\u003c/code\u003e\u003c/a\u003e build: remove all usages of the interop_deps attr for ts_project and ng_proje...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.3.6/packages/animations\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/cdk` from 19.2.19 to 20.2.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.2.10\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/b2cd596d315585c1f8b895c64230b49aecd3e6f8\"\u003e\u003cimg src=\"https://img.shields.io/badge/b2cd596d3-fix-green\" alt=\"fix - b2cd596d3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e differentiate container colors in m2 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32076\"\u003e#32076\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.9\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/af3b9612145ed20a3290f773e4fbf51206804145\"\u003e\u003cimg src=\"https://img.shields.io/badge/af3b961214-fix-green\" alt=\"fix - af3b961214\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003echeckbox:\u003c/strong\u003e use GrayText for disabled colors in high contrast mode (\u003ca href=\"https://redirect.github.com/angular/components/issues/32066\"\u003e#32066\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a90abb0a77b77b0ec5188582a1ea4d587508da5e\"\u003e\u003cimg src=\"https://img.shields.io/badge/a90abb0a77-fix-green\" alt=\"fix - a90abb0a77\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003esnack-bar:\u003c/strong\u003e add max height for snack bar (\u003ca href=\"https://redirect.github.com/angular/components/issues/32000\"\u003e#32000\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.8\u003c/h2\u003e\n\u003ch3\u003ematerial-date-fns-adapter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/2d1f8d068e18fa1e0044e0dd4c968c3fa6761e10\"\u003e\u003cimg src=\"https://img.shields.io/badge/2d1f8d068-fix-green\" alt=\"fix - 2d1f8d068\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eparse time string containing only hours (\u003ca href=\"https://redirect.github.com/angular/components/issues/31978\"\u003e#31978\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/6d61babe77a6a6f0c464b498ee773561b795663f\"\u003e\u003cimg src=\"https://img.shields.io/badge/6d61babe7-fix-green\" alt=\"fix - 6d61babe7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e error due to synchronous change detection\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e43dcabd005239a380ffef50cfea374b24a67735\"\u003e\u003cimg src=\"https://img.shields.io/badge/e43dcabd0-fix-green\" alt=\"fix - e43dcabd0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e make date filter nullable (\u003ca href=\"https://redirect.github.com/angular/components/issues/31980\"\u003e#31980\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f30c1c6c3f6490ddf21ba668d4065c4d5f89f26f\"\u003e\u003cimg src=\"https://img.shields.io/badge/f30c1c6c3-fix-green\" alt=\"fix - f30c1c6c3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eradio:\u003c/strong\u003e Hovering over label of a radio will show the pointer cursor (\u003ca href=\"https://redirect.github.com/angular/components/issues/32015\"\u003e#32015\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/de3f9e5662edae3c19f44a89ee1ee34555eba147\"\u003e\u003cimg src=\"https://img.shields.io/badge/de3f9e566-fix-green\" alt=\"fix - de3f9e566\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e assign form control value before emitting events (\u003ca href=\"https://redirect.github.com/angular/components/issues/31981\"\u003e#31981\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.7\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/85ed6550c2a3f8199350dcb1fb7d6f775dc2ba61\"\u003e\u003cimg src=\"https://img.shields.io/badge/85ed6550c2-fix-green\" alt=\"fix - 85ed6550c2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e prevent child menu reopening while parent is animating away (\u003ca href=\"https://redirect.github.com/angular/components/issues/31958\"\u003e#31958\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.6\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a6f0bd8e72d64d897611ec02cb2d9eb54d922318\"\u003e\u003cimg src=\"https://img.shields.io/badge/a6f0bd8e7-fix-green\" alt=\"fix - a6f0bd8e7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e switch internal state to signals (\u003ca href=\"https://redirect.github.com/angular/components/issues/31934\"\u003e#31934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/94716a8055ace7b4332a3b5bc37404434ccaf475\"\u003e\u003cimg src=\"https://img.shields.io/badge/94716a805-fix-green\" alt=\"fix - 94716a805\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e rotate arrow while open (\u003ca href=\"https://redirect.github.com/angular/components/issues/31936\"\u003e#31936\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e8e8662ab68e493d3ae7c364297c569032a7af7f\"\u003e\u003cimg src=\"https://img.shields.io/badge/e8e8662ab-fix-green\" alt=\"fix - e8e8662ab\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003escrolling:\u003c/strong\u003e Fix undefined error when documentElement.style is undefined (\u003ca href=\"https://redirect.github.com/angular/components/issues/31904\"\u003e#31904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a9b1afdb6ba4e6720ec0358f0b85888f506905fc\"\u003e\u003cimg src=\"https://img.shields.io/badge/a9b1afdb6-fix-green\" alt=\"fix - a9b1afdb6\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003escrolling:\u003c/strong\u003e prevent subpixel gaps in virtual scroll viewport (\u003ca href=\"https://redirect.github.com/angular/components/issues/31940\"\u003e#31940\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.5\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/36be42637df5021ae9afa4d097e84d83d78c197e\"\u003e\u003cimg src=\"https://img.shields.io/badge/36be42637-fix-green\" alt=\"fix - 36be42637\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e move internal tokens (\u003ca href=\"https://redirect.github.com/angular/components/issues/31907\"\u003e#31907\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3ac762be5dc180594c0681e2842e35123195feb6\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ac762be5-fix-green\" alt=\"fix - 3ac762be5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eform-field:\u003c/strong\u003e restore error message animation (\u003ca href=\"https://redirect.github.com/angular/components/issues/31774\"\u003e#31774\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.2.10 \u0026quot;aleutite-anchovy\u0026quot; (2025-10-22)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/b2cd596d315585c1f8b895c64230b49aecd3e6f8\"\u003eb2cd596d3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e differentiate container colors in m2 (\u003ca href=\"https://redirect.github.com/angular/components/pull/32076\"\u003e#32076\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.9 \u0026quot;plastic-fork\u0026quot; (2025-10-15)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eTestElement\u003c/code\u003e implementations need to provide a \u003ccode\u003esetContenteditableValue\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/71d590796c8c29a198fefa31864c06ddfd334738\"\u003e71d590796c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003esort:\u003c/strong\u003e add content projection slot for custom icon (\u003ca href=\"https://redirect.github.com/angular/components/pull/32016\"\u003e#32016\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/85f596b3c32d22541c3825da3479b67832a2f4da\"\u003e85f596b3c3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e add harness for \u0026quot;no data\u0026quot; row (\u003ca href=\"https://redirect.github.com/angular/components/pull/32075\"\u003e#32075\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ff9059d8d14b82a465481e51f01582caf6d83b6c\"\u003eff9059d8d1\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003echeckbox:\u003c/strong\u003e use GrayText for disabled colors in high contrast mode (\u003ca href=\"https://redirect.github.com/angular/components/pull/32066\"\u003e#32066\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/5f12b26ab3abad9acb2a3d008100d06e0fb63ab5\"\u003e5f12b26ab3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003esnack-bar:\u003c/strong\u003e add max height for snack bar (\u003ca href=\"https://redirect.github.com/angular/components/pull/32000\"\u003e#32000\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/7dfabca03d14729926b708e4c86d913bc5b8f735\"\u003e7dfabca03d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e add interface for timepicker input (\u003ca href=\"https://redirect.github.com/angular/components/pull/32050\"\u003e#32050\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/544438c865532b30005ef7d03606fc4be4818a39\"\u003e544438c865\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etesting:\u003c/strong\u003e make setContenteditableValue required (\u003ca href=\"https://redirect.github.com/angular/components/pull/32058\"\u003e#32058\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.2.9 \u0026quot;plastic-spoon\u0026quot; (2025-10-15)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/af3b9612145ed20a3290f773e4fbf51206804145\"\u003eaf3b961214\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003echeckbox:\u003c/strong\u003e use GrayText for disabled colors in high contrast mode (\u003ca href=\"https://redirect.github.com/angular/components/pull/32066\"\u003e#32066\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a90abb0a77b77b0ec5188582a1ea4d587508da5e\"\u003ea90abb0a77\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003esnack-bar:\u003c/strong\u003e add max height for snack bar (\u003ca href=\"https://redirect.github.com/angular/components/pull/32000\"\u003e#32000\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.8 \u0026quot;osmium-summit\u0026quot; (2025-10-08)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.7 \u0026quot;selenium-summit\u0026quot; (2025-10-08)\u003c/h1\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/82cd076bfb3084e258f8e20af6cac570349822ce\"\u003e82cd076bf\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eoverlay:\u003c/strong\u003e Allow passing separate X and Y values for the viewportMargin (\u003ca href=\"https://redirect.github.com/angular/components/pull/29563\"\u003e#29563\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/3553ed438c786233409d3c1a66112c1b2befcef4\"\u003e\u003ccode\u003e3553ed4\u003c/code\u003e\u003c/a\u003e release: cut the v20.2.10 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/3977d117960289ceecc0f0931f3340dab21329f0\"\u003e\u003ccode\u003e3977d11\u003c/code\u003e\u003c/a\u003e build: update rules_browsers digest to 6a699bf (\u003ca href=\"https://redirect.github.com/angular/components/issues/32119\"\u003e#32119\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/67fd815617c96e9506f74fc1369298337bd6e3d3\"\u003e\u003ccode\u003e67fd815\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/32122\"\u003e#32122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/c6f531ca3c0df991245d9d77f86b7b111ad34f8e\"\u003e\u003ccode\u003ec6f531c\u003c/code\u003e\u003c/a\u003e build: update github/codeql-action action to v3.30.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/d310c471d9dd801c1c05e1e2925bc5436414da88\"\u003e\u003ccode\u003ed310c47\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/32100\"\u003e#32100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/8aa25705d5dab35adebfaae79d486b492ca1bea6\"\u003e\u003ccode\u003e8aa2570\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies to v20.3.6 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32088\"\u003e#32088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/488e664e889b4c6f2852956df71f3807cab523e3\"\u003e\u003ccode\u003e488e664\u003c/code\u003e\u003c/a\u003e build: update bazel dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/31972\"\u003e#31972\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/be5e4a44cdfef984fe117b82d1e5eea6a870d8c1\"\u003e\u003ccode\u003ebe5e4a4\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/32078\"\u003e#32078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/a1f645209aa64f3e6063ba37c2ed6a0e6ece12fc\"\u003e\u003ccode\u003ea1f6452\u003c/code\u003e\u003c/a\u003e build: update pnpm to v10.18.3 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32082\"\u003e#32082\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/b2cd596d315585c1f8b895c64230b49aecd3e6f8\"\u003e\u003ccode\u003eb2cd596\u003c/code\u003e\u003c/a\u003e fix(material/core): differentiate container colors in m2 (\u003ca href=\"https://redirect.github.com/angular/components/issues/32076\"\u003e#32076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/19.2.19...20.2.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/common` from 19.2.14 to 20.3.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.6\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/911d6822cb18dabf4f72312dfc2e2ef9904bf6c2\"\u003e\u003cimg src=\"https://img.shields.io/badge/911d6822cb-fix-green\" alt=\"fix - 911d6822cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate animation scheduling (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64441\"\u003e#64441\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ece42866d0ee8240e73ebcef79ba47378777368\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ece42866d-fix-green\" alt=\"fix - 2ece42866d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003eDomEventsPlugin\u003c/code\u003e should always be the last plugin to be called for \u003ccode\u003esupports()\u003c/code\u003e. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/50394\"\u003e#50394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8dec92ff9f1055c6b4fc4e767d8b1b408ac28e67\"\u003e\u003cimg src=\"https://img.shields.io/badge/8dec92ff9f-fix-green\" alt=\"fix - 8dec92ff9f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63957\"\u003e#63957\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64317\"\u003e#64317\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c2e817b0efb6f617312936b756ace2c85139d1fc\"\u003e\u003cimg src=\"https://img.shields.io/badge/c2e817b0ef-perf-orange\" alt=\"perf - c2e817b0ef\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix performance of \u0026quot;interpolated signal not invoked\u0026quot; check (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64410\"\u003e#64410\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f15cfa4cc414f1d2f4b126bdfc26d74922732672\"\u003e\u003cimg src=\"https://img.shields.io/badge/f15cfa4cc4-fix-green\" alt=\"fix - f15cfa4cc4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efixes regression in \u003ccode\u003eanimate.leave\u003c/code\u003e function bindings (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64413\"\u003e#64413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d54dd674ca9db874c95027161b8080bd37250af6\"\u003e\u003cimg src=\"https://img.shields.io/badge/d54dd674ca-fix-green\" alt=\"fix - d54dd674ca\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePrevents early style pruning with leave animations (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64335\"\u003e#64335\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/554573e5248a72f73df1468e992da08ce5f6112d\"\u003e\u003cimg src=\"https://img.shields.io/badge/554573e524-fix-green\" alt=\"fix - 554573e524\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emigrating input with more than 1 usage in a method (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64367\"\u003e#64367\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2c79ca0b579d99346c267e6b61789699e8656dc5\"\u003e\u003cimg src=\"https://img.shields.io/badge/2c79ca0b57-fix-green\" alt=\"fix - 2c79ca0b57\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove error for no matching files in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64253\"\u003e#64253\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64314\"\u003e#64314\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e4bcc7d22d4699a33d6648e628fb65a38d0ad8f\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e4bcc7d22-fix-green\" alt=\"fix - 6e4bcc7d22\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eScroll restoration should use instant scroll behavior for traversals (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64299\"\u003e#64299\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.4\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/853ed169a8a1392ef2da7790181fb8e100f59519\"\u003e\u003cimg src=\"https://img.shields.io/badge/853ed169a8-fix-green\" alt=\"fix - 853ed169a8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eensure missing leave animations don't queue leave animations (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64226\"\u003e#64226\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6fed986b7a8f22dfe81d94b1e55490a278e6d82a\"\u003e\u003cimg src=\"https://img.shields.io/badge/6fed986b7a-fix-green\" alt=\"fix - 6fed986b7a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eFixes animations in conjunction with content projection (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63776\"\u003e#63776\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/76fe5599fe8e034c2a5a432608785a53018e23d2\"\u003e\u003cimg src=\"https://img.shields.io/badge/76fe5599fe-fix-green\" alt=\"fix - 76fe5599fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle undefined CSS time values in parseCssTimeUnitsToMs function (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64181\"\u003e#64181\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3b959105be04d7b11a1eb1035f1938bd0c43fe8b\"\u003e\u003cimg src=\"https://img.shields.io/badge/3b959105be-fix-green\" alt=\"fix - 3b959105be\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent early exit from leave animations when multiple transitions are present (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64225\"\u003e#64225\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65884895fff5bc499974849e9ec5a5792eb9e36c\"\u003e\u003cimg src=\"https://img.shields.io/badge/65884895ff-fix-green\" alt=\"fix - 65884895ff\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003epreserve component imports when pruning NgModules in standalone migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64186\"\u003e#64186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.3\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f51ab32fb3000ae34c077b049ff2f7b8e3e22d14\"\u003e\u003cimg src=\"https://img.shields.io/badge/f51ab32fb3-fix-green\" alt=\"fix - f51ab32fb3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erecover template literals with broken expressions (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64150\"\u003e#64150\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.6 (2025-10-16)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/911d6822cb18dabf4f72312dfc2e2ef9904bf6c2\"\u003e911d6822cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate animation scheduling (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64441\"\u003e#64441\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ece42866d0ee8240e73ebcef79ba47378777368\"\u003e2ece42866d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003eDomEventsPlugin\u003c/code\u003e should always be the last plugin to be called for \u003ccode\u003esupports()\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/angular/angular/pull/50394\"\u003e#50394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.8 (2025-10-15)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/563dbd998c86e850b3c4dde4c7cee00d7c9d7581\"\u003e563dbd998c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds diagnostic for misconfigured \u003ccode\u003e@defer\u003c/code\u003e triggers (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64069\"\u003e#64069\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab98b2425f4c4cb59927aa686818ecee99e634c7\"\u003eab98b2425f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63957\"\u003e#63957\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49377d274afb2ae039d6ac81184104f448e01d8e\"\u003e49377d274a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003efix performance of \u0026quot;interpolated signal not invoked\u0026quot; check (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64410\"\u003e#64410\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2a7a5de53fd6fb5714c06c63dd1dad5718086083\"\u003e2a7a5de53f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAllow passing application providers in \u003ccode\u003ebootstrapModule\u003c/code\u003e options (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64354\"\u003e#64354\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ad2376435b4bcfdb695d841272f8234ab2a7cca5\"\u003ead2376435b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport IntersectionObserver options in viewport triggers (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64130\"\u003e#64130\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab415f3d7f23cef8e00595e9cf6af2c8b764a8ae\"\u003eab415f3d7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003econtrol not recognized when input has directive injecting ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64368\"\u003e#64368\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ed6c9396049adde45ac8707a9dc7f9a7f4b7b01\"\u003e0ed6c93960\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efixes regression in \u003ccode\u003eanimate.leave\u003c/code\u003e function bindings (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64413\"\u003e#64413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e2281023780297f29cfff087aeea913bfc686cd7\"\u003ee228102378\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ePrevents early style pruning with leave animations (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64335\"\u003e#64335\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f4d1017c25813b290697d8e1a829983a7b1bca27\"\u003ef4d1017c25\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that common field states are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/acd7c83597ad376ec9a48421b3b291951ca2d75e\"\u003eacd7c83597\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that min/max properties are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/71e8672837eb6c2da2570eb2341e896fbf7ca5a3\"\u003e71e8672837\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that minLength/maxLength properties are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/32f86d35f7cd177b6e4525a7ae97909888d9fee4\"\u003e32f86d35f7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003eoptimize \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64351\"\u003e#64351\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2739b7975ba40a8cfc3b00f0c444a3a147f7f553\"\u003e2739b7975b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd referrerPolicy option to HttpResource (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64283\"\u003e#64283\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/861cee34e0e9b5562cfe70d245f30b7ddea7d8fd\"\u003e861cee34e0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds migration for deprecated router testing module (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64217\"\u003e#64217\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ffcfb625a0417faba091ae9dbd0156e9f241b43\"\u003e1ffcfb625a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds migration for deprecated router testing module (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64217\"\u003e#64217\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e99bbd3d2a391b5d531be65f534cbabdcf0be516\"\u003ee99bbd3d2a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emigrating input with more than 1 usage in a method (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64367\"\u003e#64367\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e1da41ffdfd984f844c9528ead2d66fd83749aed\"\u003ee1da41ffdf\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eScroll restoration should use instant scroll behavior for traversals (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64299\"\u003e#64299\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/5f4f6244772849b6f7846a6e96240e95eeca1c9c\"\u003e\u003ccode\u003e5f4f624\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(core): add debug name to resource (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64172\"\u003e#64172\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64418\"\u003e#64418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/623c2847bead8b88f17a5c75926bdd1539e5744e\"\u003e\u003ccode\u003e623c284\u003c/code\u003e\u003c/a\u003e refactor(core): add debug name to resource (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64172\"\u003e#64172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ca0d05af9984f11a3b31335b5ed9b2f1ec5c40e\"\u003e\u003ccode\u003e1ca0d05\u003c/code\u003e\u003c/a\u003e docs: Adds documentation for image decoding attribute (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64261\"\u003e#64261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003ccode\u003e9515a70\u003c/code\u003e\u003c/a\u003e fix(core): fix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/423cc17a76ab325ac53d448486e272e91a6590df\"\u003e\u003ccode\u003e423cc17\u003c/code\u003e\u003c/a\u003e refactor(common): trim undefined from locale data. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63520\"\u003e#63520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b05552fc7a97c5645858cc36c24031f5c21993f1\"\u003e\u003ccode\u003eb05552f\u003c/code\u003e\u003c/a\u003e docs: add documentation for NG02802 warning about HttpTransferCache headers (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/1b7f53021f7da3f84fa9d26c463b7dbee925f470\"\u003e\u003ccode\u003e1b7f530\u003c/code\u003e\u003c/a\u003e build: add a noDuplicateEnumValue rule (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63483\"\u003e#63483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a7725ee4c91641ef92b19f0fd35dc0fc000bc84\"\u003e\u003ccode\u003e7a7725e\u003c/code\u003e\u003c/a\u003e refactor(core): Update tests for zoneless by default (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63672\"\u003e#63672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b549cd28ae78bff43d9a1c8e576ed9ca480174c4\"\u003e\u003ccode\u003eb549cd2\u003c/code\u003e\u003c/a\u003e refactor(bazel): reduce build deps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63348\"\u003e#63348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e8d9bc511966a91bd6fbac912d5809f027525c2f\"\u003e\u003ccode\u003ee8d9bc5\u003c/code\u003e\u003c/a\u003e refactor(http): rework the \u003ccode\u003eHttpEvent\u003c/code\u003e union to improve narrowing. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63267\"\u003e#63267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.3.6/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/compiler` from 19.2.14 to 20.3.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.6\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/911d6822cb18dabf4f72312dfc2e2ef9904bf6c2\"\u003e\u003cimg src=\"https://img.shields.io/badge/911d6822cb-fix-green\" alt=\"fix - 911d6822cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate animation scheduling (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64441\"\u003e#64441\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ece42866d0ee8240e73ebcef79ba47378777368\"\u003e\u003cimg src=\"https://img.shields.io/badge/2ece42866d-fix-green\" alt=\"fix - 2ece42866d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003eDomEventsPlugin\u003c/code\u003e should always be the last plugin to be called for \u003ccode\u003esupports()\u003c/code\u003e. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/50394\"\u003e#50394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8dec92ff9f1055c6b4fc4e767d8b1b408ac28e67\"\u003e\u003cimg src=\"https://img.shields.io/badge/8dec92ff9f-fix-green\" alt=\"fix - 8dec92ff9f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63957\"\u003e#63957\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64317\"\u003e#64317\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c2e817b0efb6f617312936b756ace2c85139d1fc\"\u003e\u003cimg src=\"https://img.shields.io/badge/c2e817b0ef-perf-orange\" alt=\"perf - c2e817b0ef\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix performance of \u0026quot;interpolated signal not invoked\u0026quot; check (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64410\"\u003e#64410\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f15cfa4cc414f1d2f4b126bdfc26d74922732672\"\u003e\u003cimg src=\"https://img.shields.io/badge/f15cfa4cc4-fix-green\" alt=\"fix - f15cfa4cc4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efixes regression in \u003ccode\u003eanimate.leave\u003c/code\u003e function bindings (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64413\"\u003e#64413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/d54dd674ca9db874c95027161b8080bd37250af6\"\u003e\u003cimg src=\"https://img.shields.io/badge/d54dd674ca-fix-green\" alt=\"fix - d54dd674ca\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePrevents early style pruning with leave animations (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64335\"\u003e#64335\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/554573e5248a72f73df1468e992da08ce5f6112d\"\u003e\u003cimg src=\"https://img.shields.io/badge/554573e524-fix-green\" alt=\"fix - 554573e524\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emigrating input with more than 1 usage in a method (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64367\"\u003e#64367\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2c79ca0b579d99346c267e6b61789699e8656dc5\"\u003e\u003cimg src=\"https://img.shields.io/badge/2c79ca0b57-fix-green\" alt=\"fix - 2c79ca0b57\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove error for no matching files in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64253\"\u003e#64253\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64314\"\u003e#64314\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e4bcc7d22d4699a33d6648e628fb65a38d0ad8f\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e4bcc7d22-fix-green\" alt=\"fix - 6e4bcc7d22\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eScroll restoration should use instant scroll behavior for traversals (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64299\"\u003e#64299\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.4\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/853ed169a8a1392ef2da7790181fb8e100f59519\"\u003e\u003cimg src=\"https://img.shields.io/badge/853ed169a8-fix-green\" alt=\"fix - 853ed169a8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eensure missing leave animations don't queue leave animations (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64226\"\u003e#64226\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6fed986b7a8f22dfe81d94b1e55490a278e6d82a\"\u003e\u003cimg src=\"https://img.shields.io/badge/6fed986b7a-fix-green\" alt=\"fix - 6fed986b7a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eFixes animations in conjunction with content projection (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63776\"\u003e#63776\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/76fe5599fe8e034c2a5a432608785a53018e23d2\"\u003e\u003cimg src=\"https://img.shields.io/badge/76fe5599fe-fix-green\" alt=\"fix - 76fe5599fe\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle undefined CSS time values in parseCssTimeUnitsToMs function (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64181\"\u003e#64181\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3b959105be04d7b11a1eb1035f1938bd0c43fe8b\"\u003e\u003cimg src=\"https://img.shields.io/badge/3b959105be-fix-green\" alt=\"fix - 3b959105be\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent early exit from leave animations when multiple transitions are present (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64225\"\u003e#64225\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65884895fff5bc499974849e9ec5a5792eb9e36c\"\u003e\u003cimg src=\"https://img.shields.io/badge/65884895ff-fix-green\" alt=\"fix - 65884895ff\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003epreserve component imports when pruning NgModules in standalone migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64186\"\u003e#64186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.3\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f51ab32fb3000ae34c077b049ff2f7b8e3e22d14\"\u003e\u003cimg src=\"https://img.shields.io/badge/f51ab32fb3-fix-green\" alt=\"fix - f51ab32fb3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erecover template literals with broken expressions (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64150\"\u003e#64150\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.6 (2025-10-16)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/911d6822cb18dabf4f72312dfc2e2ef9904bf6c2\"\u003e911d6822cb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate animation scheduling (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64441\"\u003e#64441\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2ece42866d0ee8240e73ebcef79ba47378777368\"\u003e2ece42866d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003eDomEventsPlugin\u003c/code\u003e should always be the last plugin to be called for \u003ccode\u003esupports()\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/angular/angular/pull/50394\"\u003e#50394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.8 (2025-10-15)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/563dbd998c86e850b3c4dde4c7cee00d7c9d7581\"\u003e563dbd998c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds diagnostic for misconfigured \u003ccode\u003e@defer\u003c/code\u003e triggers (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64069\"\u003e#64069\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab98b2425f4c4cb59927aa686818ecee99e634c7\"\u003eab98b2425f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63957\"\u003e#63957\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/49377d274afb2ae039d6ac81184104f448e01d8e\"\u003e49377d274a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003efix performance of \u0026quot;interpolated signal not invoked\u0026quot; check (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64410\"\u003e#64410\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2a7a5de53fd6fb5714c06c63dd1dad5718086083\"\u003e2a7a5de53f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAllow passing application providers in \u003ccode\u003ebootstrapModule\u003c/code\u003e options (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64354\"\u003e#64354\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ad2376435b4bcfdb695d841272f8234ab2a7cca5\"\u003ead2376435b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport IntersectionObserver options in viewport triggers (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64130\"\u003e#64130\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab415f3d7f23cef8e00595e9cf6af2c8b764a8ae\"\u003eab415f3d7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003econtrol not recognized when input has directive injecting ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64368\"\u003e#64368\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/0ed6c9396049adde45ac8707a9dc7f9a7f4b7b01\"\u003e0ed6c93960\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efixes regression in \u003ccode\u003eanimate.leave\u003c/code\u003e function bindings (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64413\"\u003e#64413\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e2281023780297f29cfff087aeea913bfc686cd7\"\u003ee228102378\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ePrevents early style pruning with leave animations (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64335\"\u003e#64335\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/f4d1017c25813b290697d8e1a829983a7b1bca27\"\u003ef4d1017c25\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that common field states are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/acd7c83597ad376ec9a48421b3b291951ca2d75e\"\u003eacd7c83597\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that min/max properties are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/71e8672837eb6c2da2570eb2341e896fbf7ca5a3\"\u003e71e8672837\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003etest that minLength/maxLength properties are propagated to controls (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63884\"\u003e#63884\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/32f86d35f7cd177b6e4525a7ae97909888d9fee4\"\u003e32f86d35f7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eperf\u003c/td\u003e\n\u003ctd\u003eoptimize \u003ccode\u003e[field]\u003c/code\u003e binding instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64351\"\u003e#64351\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2739b7975ba40a8cfc3b00f0c444a3a147f7f553\"\u003e2739b7975b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd referrerPolicy option to HttpResource (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64283\"\u003e#64283\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/861cee34e0e9b5562cfe70d245f30b7ddea7d8fd\"\u003e861cee34e0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds migration for deprecated router testing module (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64217\"\u003e#64217\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ffcfb625a0417faba091ae9dbd0156e9f241b43\"\u003e1ffcfb625a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds migration for deprecated router testing module (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64217\"\u003e#64217\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e99bbd3d2a391b5d531be65f534cbabdcf0be516\"\u003ee99bbd3d2a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emigrating input with more than 1 usage in a method (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64367\"\u003e#64367\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e1da41ffdfd984f844c9528ead2d66fd83749aed\"\u003ee1da41ffdf\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eScroll restoration should use instant scroll behavior for traversals (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64299\"\u003e#64299\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b4b19b60af9053674a75f4da89be208d3f9c3b88\"\u003e\u003ccode\u003eb4b19b6\u003c/code\u003e\u003c/a\u003e refactor(compiler): Improve pipe in track expression error (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64321\"\u003e#64321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/2342de8fac9a19944f9f2e2c0499ec270c9b3476\"\u003e\u003ccode\u003e2342de8\u003c/code\u003e\u003c/a\u003e refactor(compiler): expose member decorator identifiers...\n\n_Description has been truncated_","html_url":"https://github.com/Legal-and-General/canopy/pull/1615","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Legal-and-General%2Fcanopy/issues/1615","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1615/packages"}},{"old_version":"19.0.1","new_version":"20.0.0","update_type":"major","path":null,"pr_created_at":"2025-10-15T14:49:13.000Z","version_change":"19.0.1 → 20.0.0","issue":{"uuid":"3518411851","node_id":"PR_kwDOEX7hus6t58xV","number":1601,"state":"closed","title":"npm(deps): bump the npm group across 1 directory with 35 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2025-10-16T16:50:40.000Z","author_association":null,"state_reason":null,"created_at":"2025-10-15T14:49:13.000Z","updated_at":"2025-10-16T16:50:42.000Z","time_to_close":93687,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"npm(deps): bump","group_name":"npm","update_count":35,"packages":[{"name":"core-js","old_version":"3.42.0","new_version":"3.46.0","repository_url":"https://github.com/zloirock/core-js"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@commitlint/cli","old_version":"19.8.1","new_version":"20.1.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@commitlint/config-angular","old_version":"19.8.1","new_version":"20.0.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@commitlint/config-conventional","old_version":"19.8.1","new_version":"20.0.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@commitlint/prompt","old_version":"19.8.1","new_version":"20.1.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@semantic-release/github","old_version":"11.0.2","new_version":"12.0.0","repository_url":"https://github.com/semantic-release/github"},{"name":"@semantic-release/npm","old_version":"12.0.1","new_version":"13.0.0","repository_url":"https://github.com/semantic-release/npm"},{"name":"@storybook/addon-a11y","old_version":"9.0.18","new_version":"9.1.10","repository_url":"https://github.com/storybookjs/storybook"},{"name":"@storybook/addon-docs","old_version":"9.0.18","new_version":"9.1.10","repository_url":"https://github.com/storybookjs/storybook"},{"name":"@storybook/angular","old_version":"9.0.18","new_version":"9.1.10","repository_url":"https://github.com/storybookjs/storybook"},{"name":"@stylistic/eslint-plugin","old_version":"4.2.0","new_version":"5.4.0","repository_url":"https://github.com/eslint-stylistic/eslint-stylistic"},{"name":"@types/node","old_version":"22.15.19","new_version":"22.18.10","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.32.1","new_version":"8.46.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.32.1","new_version":"8.46.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.26.0","new_version":"9.37.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-import","old_version":"2.31.0","new_version":"2.32.0","repository_url":"https://github.com/import-js/eslint-plugin-import"},{"name":"eslint-plugin-storybook","old_version":"9.0.17","new_version":"9.1.10","repository_url":"https://github.com/storybookjs/storybook"},{"name":"eslint-plugin-unused-imports","old_version":"4.1.4","new_version":"4.2.0","repository_url":"https://github.com/sweepline/eslint-plugin-unused-imports"},{"name":"globals","old_version":"16.1.0","new_version":"16.4.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"jest","old_version":"30.1.3","new_version":"30.2.0","repository_url":"https://github.com/jestjs/jest"},{"name":"lint-staged","old_version":"16.0.0","new_version":"16.2.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"ng-mocks","old_version":"14.13.5","new_version":"14.14.0","repository_url":"https://github.com/help-me-mom/ng-mocks"},{"name":"ng-packagr","old_version":"19.2.2","new_version":"20.3.0","repository_url":"https://github.com/ng-packagr/ng-packagr"},{"name":"prettier","old_version":"3.5.3","new_version":"3.6.2","repository_url":"https://github.com/prettier/prettier"},{"name":"pretty-quick","old_version":"4.1.1","new_version":"4.2.2","repository_url":"https://github.com/prettier/pretty-quick"},{"name":"sass","old_version":"1.89.0","new_version":"1.93.2","repository_url":"https://github.com/sass/dart-sass"},{"name":"storybook","old_version":"9.0.18","new_version":"9.1.10","repository_url":"https://github.com/storybookjs/storybook"},{"name":"stylelint","old_version":"16.19.1","new_version":"16.25.0","repository_url":"https://github.com/stylelint/stylelint"},{"name":"stylelint-config-recommended","old_version":"16.0.0","new_version":"17.0.0","repository_url":"https://github.com/stylelint/stylelint-config-recommended"},{"name":"svgo","old_version":"3.3.2","new_version":"4.0.0","repository_url":"https://github.com/svg/svgo"},{"name":"webpack","old_version":"5.99.8","new_version":"5.102.1","repository_url":"https://github.com/webpack/webpack"},{"name":"webpack-remove-empty-scripts","old_version":"1.0.4","new_version":"1.1.1","repository_url":"https://github.com/webdiscus/webpack-remove-empty-scripts"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm group with 33 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) | `3.42.0` | `3.46.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@commitlint/cli](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli) | `19.8.1` | `20.1.0` |\n| [@commitlint/config-angular](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-angular) | `19.8.1` | `20.0.0` |\n| [@commitlint/config-conventional](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional) | `19.8.1` | `20.0.0` |\n| [@commitlint/prompt](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/prompt) | `19.8.1` | `20.1.0` |\n| [@semantic-release/github](https://github.com/semantic-release/github) | `11.0.2` | `12.0.0` |\n| [@semantic-release/npm](https://github.com/semantic-release/npm) | `12.0.1` | `13.0.0` |\n| [@storybook/addon-a11y](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y) | `9.0.18` | `9.1.10` |\n| [@storybook/addon-docs](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/docs) | `9.0.18` | `9.1.10` |\n| [@storybook/angular](https://github.com/storybookjs/storybook/tree/HEAD/code/frameworks/angular) | `9.0.18` | `9.1.10` |\n| [@stylistic/eslint-plugin](https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin) | `4.2.0` | `5.4.0` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `22.15.19` | `22.18.10` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.32.1` | `8.46.1` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.32.1` | `8.46.1` |\n| [eslint](https://github.com/eslint/eslint) | `9.26.0` | `9.37.0` |\n| [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) | `2.31.0` | `2.32.0` |\n| [eslint-plugin-storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/lib/eslint-plugin) | `9.0.17` | `9.1.10` |\n| [eslint-plugin-unused-imports](https://github.com/sweepline/eslint-plugin-unused-imports) | `4.1.4` | `4.2.0` |\n| [globals](https://github.com/sindresorhus/globals) | `16.1.0` | `16.4.0` |\n| [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) | `30.1.3` | `30.2.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.0.0` | `16.2.4` |\n| [ng-mocks](https://github.com/help-me-mom/ng-mocks) | `14.13.5` | `14.14.0` |\n| [ng-packagr](https://github.com/ng-packagr/ng-packagr) | `19.2.2` | `20.3.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.5.3` | `3.6.2` |\n| [pretty-quick](https://github.com/prettier/pretty-quick) | `4.1.1` | `4.2.2` |\n| [sass](https://github.com/sass/dart-sass) | `1.89.0` | `1.93.2` |\n| [storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/core) | `9.0.18` | `9.1.10` |\n| [stylelint](https://github.com/stylelint/stylelint) | `16.19.1` | `16.25.0` |\n| [stylelint-config-recommended](https://github.com/stylelint/stylelint-config-recommended) | `16.0.0` | `17.0.0` |\n| [svgo](https://github.com/svg/svgo) | `3.3.2` | `4.0.0` |\n| [webpack](https://github.com/webpack/webpack) | `5.99.8` | `5.102.1` |\n| [webpack-remove-empty-scripts](https://github.com/webdiscus/webpack-remove-empty-scripts) | `1.0.4` | `1.1.1` |\n\n\nUpdates `core-js` from 3.42.0 to 3.46.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zloirock/core-js/blob/master/CHANGELOG.md\"\u003ecore-js's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/zloirock/core-js/releases/tag/v3.46.0\"\u003e3.46.0 - 2025.10.09\u003c/a\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChanges \u003ca href=\"https://github.com/zloirock/core-js/compare/v3.45.1...v3.46.0\"\u003ev3.45.1...v3.46.0\u003c/a\u003e (116 commits)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert stage 3 proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://bugzilla.mozilla.org/show_bug.cgi?id=1988369\"\u003ea FF \u003ccode\u003eWeakMap.prototype.getOrInsertComputed\u003c/code\u003e bug with callback calling before validation a key\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-iterator-chunking\"\u003e\u003ccode\u003eIterator\u003c/code\u003e chunking proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eIterator.prototype.chunks\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eIterator.prototype.windows\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stage 2.7, \u003ca href=\"https://github.com/tc39/proposals/commit/08e583103c6c244c05a26d9fee518ef8145ba2f6\"\u003eSeptember 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eIterator.prototype.sliding\u003c/code\u003e method replaced with an extra parameter of \u003ccode\u003eIterator.prototype.windows\u003c/code\u003e method, [tc39/proposal-iterator-chunking/\u003ca href=\"https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/24\"\u003e#24\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/tc39/proposal-iterator-chunking/pull/24\"\u003etc39/proposal-iterator-chunking#24\u003c/a\u003e), [tc39/proposal-iterator-chunking/\u003ca href=\"https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/26\"\u003e#26\u003c/a\u003e](\u003ca href=\"https://redirect.github.com/tc39/proposal-iterator-chunking/pull/26\"\u003etc39/proposal-iterator-chunking#26\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://github.com/tc39/proposal-joint-iteration\"\u003e\u003ccode\u003eIterator.zip\u003c/code\u003e and \u003ccode\u003eIterator.zipKeyed\u003c/code\u003e\u003c/a\u003e behavior with \u003ccode\u003emode: 'longest'\u003c/code\u003e option, \u003ca href=\"https://redirect.github.com/zloirock/core-js/issues/1469\"\u003e#1469\u003c/a\u003e, thanks \u003ca href=\"https://github.com/lionel-rowe\"\u003e\u003cstrong\u003e\u003ccode\u003e@​lionel-rowe\u003c/code\u003e\u003c/strong\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed work of \u003ccode\u003eObject.groupBy\u003c/code\u003e and \u003ca href=\"https://github.com/tc39/proposal-joint-iteration\"\u003e\u003ccode\u003eIterator.zipKeyed\u003c/code\u003e\u003c/a\u003e together with \u003ccode\u003eSymbol\u003c/code\u003e polyfill - some cases of symbol keys on result \u003ccode\u003enull\u003c/code\u003e-prototype object were able to leak out to \u003ccode\u003efor-in\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCompat data improvements:\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert proposal\u003c/a\u003e features marked as shipped from FF144\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://redirect.github.com/nodejs/node/pull/59896\"\u003eNode 25.0\u003c/a\u003e compat data mapping\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://github.com/denoland/deno/releases/tag/v2.5.0\"\u003eDeno 2.5\u003c/a\u003e compat data mapping\u003c/li\u003e\n\u003cli\u003eUpdated Electron 39 compat data mapping\u003c/li\u003e\n\u003cli\u003eUpdated Opera 121+ compat data mapping\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://forums.opera.com/topic/86530/opera-for-android-92\"\u003eOpera Android 92\u003c/a\u003e compat data mapping\u003c/li\u003e\n\u003cli\u003eAdded Oculus Quest Browser 40 compat data mapping\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/zloirock/core-js/releases/tag/v3.45.1\"\u003e3.45.1 - 2025.08.20\u003c/a\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChanges \u003ca href=\"https://github.com/zloirock/core-js/compare/v3.45.0...v3.45.1\"\u003ev3.45.0...v3.45.1\u003c/a\u003e (30 commits)\u003c/li\u003e\n\u003cli\u003eFixed a conflict of native methods from \u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert proposal\u003c/a\u003e with polyfilled methods in the pure version\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ebugs\u003c/code\u003e fields to \u003ccode\u003epackage.json\u003c/code\u003e of all packages\u003c/li\u003e\n\u003cli\u003eCompat data improvements:\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert proposal\u003c/a\u003e features marked as shipped from Bun 1.2.20\u003c/li\u003e\n\u003cli\u003eAdded Samsung Internet 29 compat data mapping\u003c/li\u003e\n\u003cli\u003eAdded Electron 39 compat data mapping\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/zloirock/core-js/releases/tag/v3.45.0\"\u003e3.45.0 - 2025.08.04\u003c/a\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChanges \u003ca href=\"https://github.com/zloirock/core-js/compare/v3.44.0...v3.45.0\"\u003ev3.44.0...v3.45.0\u003c/a\u003e (70 commits)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-arraybuffer-base64\"\u003e\u003ccode\u003eUint8Array\u003c/code\u003e to / from base64 and hex proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.fromBase64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.fromHex\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.setFromBase64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.setFromHex\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.toBase64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.toHex\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stable ES, \u003ca href=\"https://github.com/tc39/proposals/commit/d41fe182cdb90da3076ab711aae3944ed86bcf18\"\u003eJuly 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ees.\u003c/code\u003e namespace modules, \u003ccode\u003e/es/\u003c/code\u003e and \u003ccode\u003e/stable/\u003c/code\u003e namespaces entries\u003c/li\u003e\n\u003cli\u003eAdded detection of a Webkit bug: \u003ccode\u003eUint8Array\u003c/code\u003e fromBase64 / setFromBase64 does not throw an error on incorrect length of base64 string\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-math-sum\"\u003e\u003ccode\u003eMath.sumPrecise\u003c/code\u003e proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMath.sumPrecise\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stable ES, \u003ca href=\"https://github.com/tc39/proposals/commit/2616413ace9074bfd444adee9501fae4c8d66fcb\"\u003eJuly 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ees.\u003c/code\u003e namespace module, \u003ccode\u003e/es/\u003c/code\u003e and \u003ccode\u003e/stable/\u003c/code\u003e namespaces entries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-iterator-sequencing\"\u003e\u003ccode\u003eIterator\u003c/code\u003e sequencing proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/98d9dc499ffa8fe7543b8cb8f613351e5b3ab8de\"\u003e\u003ccode\u003e98d9dc4\u003c/code\u003e\u003c/a\u003e v3.46.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/38420bdad4bda36eea0c697bb5cecd62caa53911\"\u003e\u003ccode\u003e38420bd\u003c/code\u003e\u003c/a\u003e add \u003ccode\u003ehomepage\u003c/code\u003e field to \u003ccode\u003epackage.json\u003c/code\u003es\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/a7aee4c58a7eec4fb5958fcb6ba4f07d14446f1d\"\u003e\u003ccode\u003ea7aee4c\u003c/code\u003e\u003c/a\u003e some fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/12b441d64df944e45bc6d709b6a9e3c2c0ce72ea\"\u003e\u003ccode\u003e12b441d\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eIterator.zip\u003c/code\u003e and \u003ccode\u003eIterator.zipKeyed\u003c/code\u003e behavior with \u003ccode\u003emode: 'longest'\u003c/code\u003e op...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/15d7a7da70c80bfa3e7fbc2a618acc8b07ce8034\"\u003e\u003ccode\u003e15d7a7d\u003c/code\u003e\u003c/a\u003e update copyright\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/9eaa6ad79a76c03703ea01bc16beca42ee44e054\"\u003e\u003ccode\u003e9eaa6ad\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/zloirock/core-js/tree/HEAD/packages/core-js/issues/1451\"\u003e#1451\u003c/a\u003e from zloirock/iterator-chunking-stage-2-7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/686808fb6ade734d86f5dc9443869550b5490759\"\u003e\u003ccode\u003e686808f\u003c/code\u003e\u003c/a\u003e clarify versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/a21ab8d81f8ee58e64e0ec5c9279725483315ed5\"\u003e\u003ccode\u003ea21ab8d\u003c/code\u003e\u003c/a\u003e FF \u003ccode\u003eWeakMap.prototype.getOrInsertComputed\u003c/code\u003e was fixed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/747e64806ff04a09b5f3d7990dfcd80afcd91656\"\u003e\u003ccode\u003e747e648\u003c/code\u003e\u003c/a\u003e Fix object property creation for potential Symbol keys\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/6bfb3cde052a1ad9ec3666e47ddd97ef6dfcd430\"\u003e\u003ccode\u003e6bfb3cd\u003c/code\u003e\u003c/a\u003e move \u003ccode\u003eIterator\u003c/code\u003e chunking proposal to stage 2.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/zloirock/core-js/commits/v3.46.0/packages/core-js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/cli` from 19.8.1 to 20.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/cli\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.1.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\"\u003e20.1.0\u003c/a\u003e (2025-09-30)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(config-pnpm-scopes): allow global scope by \u003ca href=\"https://github.com/ya2s\"\u003e\u003ccode\u003e@​ya2s\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4553\"\u003econventional-changelog/commitlint#4553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix(resolve-extends): add import attribute for JSON config files by \u003ca href=\"https://github.com/macieklamberski\"\u003e\u003ccode\u003e@​macieklamberski\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4551\"\u003econventional-changelog/commitlint#4551\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ya2s\"\u003e\u003ccode\u003e@​ya2s\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4553\"\u003econventional-changelog/commitlint#4553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/macieklamberski\"\u003e\u003ccode\u003e@​macieklamberski\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4551\"\u003econventional-changelog/commitlint#4551\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/cli/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/cli\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\"\u003e20.1.0\u003c/a\u003e (2025-09-30)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/cli\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/cli\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/a8e86d252ad9e77e0b9bd929fd8409f824727f11\"\u003e\u003ccode\u003ea8e86d2\u003c/code\u003e\u003c/a\u003e v20.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.1.0/@commitlint/cli\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/config-angular` from 19.8.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/config-angular\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-angular/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: add TypeScript support and configuration for pnpm scopes by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4544\"\u003econventional-changelog/commitlint#4544\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.8.1...v19.9.0\"\u003e19.9.0\u003c/a\u003e (2025-08-26)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebug(config-pnpm-scopes): migrate package to TypeScript by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4541\"\u003econventional-changelog/commitlint#4541\u003c/a\u003e\n(type got messed up)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChore, docs, etc.\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add a note about configuration under node24 by \u003ca href=\"https://github.com/sodle\"\u003e\u003ccode\u003e@​sodle\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4406\"\u003econventional-changelog/commitlint#4406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add Ubuntu 24.04 and Windows 2025 to CI by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4435\"\u003econventional-changelog/commitlint#4435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: refactor CI setup example of GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4439\"\u003econventional-changelog/commitlint#4439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: use tags for immutable github actions by \u003ca href=\"https://github.com/Fdawgs\"\u003e\u003ccode\u003e@​Fdawgs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4458\"\u003econventional-changelog/commitlint#4458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: migrate \u003ccode\u003eeslint-plugin-import\u003c/code\u003e to \u003ccode\u003eeslint-plugin-import-x\u003c/code\u003e by \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4473\"\u003econventional-changelog/commitlint#4473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add commitlint GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4440\"\u003econventional-changelog/commitlint#4440\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-angular/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/config-angular\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/config-angular\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.0.0/@commitlint/config-angular\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/config-conventional` from 19.8.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/config-conventional\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: add TypeScript support and configuration for pnpm scopes by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4544\"\u003econventional-changelog/commitlint#4544\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.8.1...v19.9.0\"\u003e19.9.0\u003c/a\u003e (2025-08-26)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebug(config-pnpm-scopes): migrate package to TypeScript by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4541\"\u003econventional-changelog/commitlint#4541\u003c/a\u003e\n(type got messed up)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChore, docs, etc.\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add a note about configuration under node24 by \u003ca href=\"https://github.com/sodle\"\u003e\u003ccode\u003e@​sodle\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4406\"\u003econventional-changelog/commitlint#4406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add Ubuntu 24.04 and Windows 2025 to CI by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4435\"\u003econventional-changelog/commitlint#4435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: refactor CI setup example of GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4439\"\u003econventional-changelog/commitlint#4439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: use tags for immutable github actions by \u003ca href=\"https://github.com/Fdawgs\"\u003e\u003ccode\u003e@​Fdawgs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4458\"\u003econventional-changelog/commitlint#4458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: migrate \u003ccode\u003eeslint-plugin-import\u003c/code\u003e to \u003ccode\u003eeslint-plugin-import-x\u003c/code\u003e by \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4473\"\u003econventional-changelog/commitlint#4473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add commitlint GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4440\"\u003econventional-changelog/commitlint#4440\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-conventional/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/config-conventional\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/config-conventional\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.0.0/@commitlint/config-conventional\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/prompt` from 19.8.1 to 20.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/prompt\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.1.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\"\u003e20.1.0\u003c/a\u003e (2025-09-30)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(config-pnpm-scopes): allow global scope by \u003ca href=\"https://github.com/ya2s\"\u003e\u003ccode\u003e@​ya2s\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4553\"\u003econventional-changelog/commitlint#4553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix(resolve-extends): add import attribute for JSON config files by \u003ca href=\"https://github.com/macieklamberski\"\u003e\u003ccode\u003e@​macieklamberski\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4551\"\u003econventional-changelog/commitlint#4551\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ya2s\"\u003e\u003ccode\u003e@​ya2s\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4553\"\u003econventional-changelog/commitlint#4553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/macieklamberski\"\u003e\u003ccode\u003e@​macieklamberski\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4551\"\u003econventional-changelog/commitlint#4551\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/prompt/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/prompt/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/prompt\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.0.0...v20.1.0\"\u003e20.1.0\u003c/a\u003e (2025-09-30)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/prompt\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/prompt\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/a8e86d252ad9e77e0b9bd929fd8409f824727f11\"\u003e\u003ccode\u003ea8e86d2\u003c/code\u003e\u003c/a\u003e v20.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.1.0/@commitlint/prompt\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@semantic-release/github` from 11.0.2 to 12.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/semantic-release/github/releases\"\u003e\u003ccode\u003e@​semantic-release/github\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev12.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/github/compare/v11.0.6...v12.0.0\"\u003e12.0.0\u003c/a\u003e (2025-10-15)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e drop support for node versions v20, v21, and v23 (\u003ca href=\"https://github.com/semantic-release/github/commit/6e2ac27ef2e2807a1d3af0962681aaac41218398\"\u003e6e2ac27\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e raise the minimum node version requirement for the v24 range (\u003ca href=\"https://github.com/semantic-release/github/commit/4d6924db6096c15089bb98b5689d729f355f8730\"\u003e4d6924d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove github search api consumption (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1037\"\u003e#1037\u003c/a\u003e) (\u003ca href=\"https://github.com/semantic-release/github/commit/d260bfd631498f6e63f12c958f7eacb40bde1d34\"\u003ed260bfd\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1022\"\u003e#1022\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e the minimum node version for the v24 range is now v24.10.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@semantic-release/github\u003c/code\u003e no longer consumes the GitHub Search API in the plugin\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e a minimum of node v22.14 is now required\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.0-beta.4\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/github/compare/v12.0.0-beta.3...v12.0.0-beta.4\"\u003e12.0.0-beta.4\u003c/a\u003e (2025-10-13)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e raise the minimum node version requirement for the v24 range (\u003ca href=\"https://github.com/semantic-release/github/commit/4d6924db6096c15089bb98b5689d729f355f8730\"\u003e4d6924d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e the minimum node version for the v24 range is now v24.10.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.0-beta.3\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/github/compare/v12.0.0-beta.2...v12.0.0-beta.3\"\u003e12.0.0-beta.3\u003c/a\u003e (2025-10-13)\u003c/h1\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCheck failCommentCondition in \u0026quot;success\u0026quot; step (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1026\"\u003e#1026\u003c/a\u003e) (\u003ca href=\"https://github.com/semantic-release/github/commit/d77b6f4e856ee2303b52a47160404f499ee14a62\"\u003ed77b6f4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e switch to tinyglobby (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1041\"\u003e#1041\u003c/a\u003e) (\u003ca href=\"https://github.com/semantic-release/github/commit/ed9069805ceb823c65d4b674614e5e320138bb1f\"\u003eed90698\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove github search api consumption (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1086\"\u003e#1086\u003c/a\u003e) (\u003ca href=\"https://github.com/semantic-release/github/commit/95ea166f54d7d2e41967a86aeddc211cba5b3321\"\u003e95ea166\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.0-beta.2\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/github/compare/v12.0.0-beta.1...v12.0.0-beta.2\"\u003e12.0.0-beta.2\u003c/a\u003e (2025-07-11)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove github search api consumption (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1037\"\u003e#1037\u003c/a\u003e) (\u003ca href=\"https://github.com/semantic-release/github/commit/d260bfd631498f6e63f12c958f7eacb40bde1d34\"\u003ed260bfd\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1022\"\u003e#1022\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/c98f1c813f019871d3923f93d987575acfd049d9\"\u003e\u003ccode\u003ec98f1c8\u003c/code\u003e\u003c/a\u003e promote to stable (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1100\"\u003e#1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/ebe75ba5c6c804f54fa51b0c874cada41d325563\"\u003e\u003ccode\u003eebe75ba\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into beta\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/30508781dc44585d05be55e71a2791da87e201a0\"\u003e\u003ccode\u003e3050878\u003c/code\u003e\u003c/a\u003e ci(action): update actions/setup-node action to v6 (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1101\"\u003e#1101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/68b530a5e8a80392647b57690c6fc6ec727f040f\"\u003e\u003ccode\u003e68b530a\u003c/code\u003e\u003c/a\u003e ci(node-versions): adjust node version matrix to match updated supported ranges\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/4d6924db6096c15089bb98b5689d729f355f8730\"\u003e\u003ccode\u003e4d6924d\u003c/code\u003e\u003c/a\u003e feat(node-versions): raise the minimum node version requirement for the v24 r...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/518a17a4e1a144f32eaae92e10004cda0d3e5b78\"\u003e\u003ccode\u003e518a17a\u003c/code\u003e\u003c/a\u003e Merge branch 'master' of github.com:semantic-release/github into beta\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/72bc1cd61f7b3b9da5783e8bd01889421e058ad1\"\u003e\u003ccode\u003e72bc1cd\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1099\"\u003e#1099\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/718b2a25610a893b0ecb9a2e0ab525e2f5f0d582\"\u003e\u003ccode\u003e718b2a2\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency publint to v0.3.14 (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1098\"\u003e#1098\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/258610d10e5f29037eda8ec4ac03d383d825ca98\"\u003e\u003ccode\u003e258610d\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1097\"\u003e#1097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/github/commit/ef4a3c9c4888daa79be2b2a56eea97d32a224232\"\u003e\u003ccode\u003eef4a3c9\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/semantic-release/github/issues/1096\"\u003e#1096\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/semantic-release/github/compare/v11.0.2...v12.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@semantic-release/npm` from 12.0.1 to 13.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/semantic-release/npm/releases\"\u003e\u003ccode\u003e@​semantic-release/npm\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev13.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/npm/compare/v12.0.2...v13.0.0\"\u003e13.0.0\u003c/a\u003e (2025-10-13)\u003c/h1\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update npm to v11 (\u003ca href=\"https://github.com/semantic-release/npm/commit/debc7c58e51d0c991de92d64f412ac3904a60ed3\"\u003edebc7c5\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/semantic-release/npm/issues/966\"\u003e#966\u003c/a\u003e \u003ca href=\"https://redirect.github.com/semantic-release/npm/issues/966\"\u003e#966\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update to the latest version of npm (\u003ca href=\"https://github.com/semantic-release/npm/commit/1b25d6c1d6922a9f0f61498c42bd114395dba7c8\"\u003e1b25d6c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e drop support for node versions v20, v21, and v23\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e raise the minimum node version requirement for the v24 range (\u003ca href=\"https://github.com/semantic-release/npm/commit/935439e1efead57e0db66f7e3ae16733d93542c6\"\u003e935439e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e the minimum node version for the v24 range is now v24.10.0\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e a minimum of node v22.14 is now required\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev13.0.0-beta.4\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/npm/compare/v13.0.0-beta.3...v13.0.0-beta.4\"\u003e13.0.0-beta.4\u003c/a\u003e (2025-10-13)\u003c/h1\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update to the latest version of npm (\u003ca href=\"https://github.com/semantic-release/npm/commit/1b25d6c1d6922a9f0f61498c42bd114395dba7c8\"\u003e1b25d6c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev13.0.0-beta.3\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/npm/compare/v13.0.0-beta.2...v13.0.0-beta.3\"\u003e13.0.0-beta.3\u003c/a\u003e (2025-10-13)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e raise the minimum node version requirement for the v24 range (\u003ca href=\"https://github.com/semantic-release/npm/commit/935439e1efead57e0db66f7e3ae16733d93542c6\"\u003e935439e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003enode-versions:\u003c/strong\u003e the minimum node version for the v24 range is now\nv24.10.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev13.0.0-beta.2\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/semantic-release/npm/compare/v13.0.0-beta.1...v13.0.0-beta.2\"\u003e13.0.0-beta.2\u003c/a\u003e (2025-10-13)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/a71fe44467ec1a30bff45ef1605f17dcc14039c0\"\u003e\u003ccode\u003ea71fe44\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/semantic-release/npm/issues/976\"\u003e#976\u003c/a\u003e from semantic-release/beta\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/6711ea3cb74ac6e903a3bd0de09f12e8ca9d79a4\"\u003e\u003ccode\u003e6711ea3\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/semantic-release/npm/issues/1013\"\u003e#1013\u003c/a\u003e from semantic-release/verify-auth\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/1b25d6c1d6922a9f0f61498c42bd114395dba7c8\"\u003e\u003ccode\u003e1b25d6c\u003c/code\u003e\u003c/a\u003e fix(deps): update to the latest version of npm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/935439e1efead57e0db66f7e3ae16733d93542c6\"\u003e\u003ccode\u003e935439e\u003c/code\u003e\u003c/a\u003e feat(node-versions): raise the minimum node version requirement for the v24 r...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/8d7149fe16ef70d6eacf9e7a3546692f9664a6c3\"\u003e\u003ccode\u003e8d7149f\u003c/code\u003e\u003c/a\u003e refactor(code-style): resolve prettier issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/5b0502c6a456fbdea79487baf0256b95564ae99b\"\u003e\u003ccode\u003e5b0502c\u003c/code\u003e\u003c/a\u003e test(integration): backfill coverage for scenario when a token is not provided\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/bc3f066513095d95db32ae0a636a0d9e0c7135e4\"\u003e\u003ccode\u003ebc3f066\u003c/code\u003e\u003c/a\u003e test(unit): backfill unit tests for existing verify-auth behaviors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/8f981787486f42ad251a24c52cde608215b03843\"\u003e\u003ccode\u003e8f98178\u003c/code\u003e\u003c/a\u003e Merge branch 'master' of github.com:semantic-release/npm into beta\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/1e5ad5e84a8f591a37b30b6d5cdc18bb7b468838\"\u003e\u003ccode\u003e1e5ad5e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/semantic-release/npm/issues/1012\"\u003e#1012\u003c/a\u003e from semantic-release/verdaccio-upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/semantic-release/npm/commit/f8a6cc5067905636aba8be8b4a1ac4e6bc851661\"\u003e\u003ccode\u003ef8a6cc5\u003c/code\u003e\u003c/a\u003e test(upgrade): update to the current major of verdaccio\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/semantic-release/npm/compare/v12.0.1...v13.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@storybook/addon-a11y` from 9.0.18 to 9.1.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/releases\"\u003e\u003ccode\u003e@​storybook/addon-a11y\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.1.10\u003c/h2\u003e\n\u003ch2\u003e9.1.10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomigrations: Add automigration for viewport and backgrounds - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31614\"\u003e#31614\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Log userAgent in onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32566\"\u003e#32566\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.9\u003c/h2\u003e\n\u003ch2\u003e9.1.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Enable experimental zoneless detection on Angular v21 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32580\"\u003e#32580\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Ignore inherited \u003ccode\u003eHTMLAttributes\u003c/code\u003e docgen when using utility types - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32173\"\u003e#32173\u003c/a\u003e, thanks \u003ca href=\"https://github.com/steciuk\"\u003e\u003ccode\u003e@​steciuk\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.8\u003c/h2\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.7\u003c/h2\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.6\u003c/h2\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.5\u003c/h2\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.4\u003c/h2\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.3\u003c/h2\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md\"\u003e\u003ccode\u003e@​storybook/addon-a11y\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.1.10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomigrations: Add automigration for viewport and backgrounds - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31614\"\u003e#31614\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Log userAgent in onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32566\"\u003e#32566\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Enable experimental zoneless detection on Angular v21 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32580\"\u003e#32580\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Ignore inherited \u003ccode\u003eHTMLAttributes\u003c/code\u003e docgen when using utility types - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32173\"\u003e#32173\u003c/a\u003e, thanks \u003ca href=\"https://github.com/steciuk\"\u003e\u003ccode\u003e@​steciuk\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMock: Catch errors when transforming preview files - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32216\"\u003e#32216\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Fix version mismatch error in Webpack - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32306\"\u003e#32306\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate traffic coming from error/upgrade links - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32287\"\u003e#32287\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate unattributed traffic from Onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32286\"\u003e#32286\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAddon Docs: Fix Symbol conversion issue in docs page and controls panel - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32220\"\u003e#32220\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/642f0cf47ed9463cecd67fdbad978113edc88196\"\u003e\u003ccode\u003e642f0cf\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.9\u0026quot; to \u0026quot;9.1.10\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/01867d0d587fe23765bbd43397d861a6e08223f8\"\u003e\u003ccode\u003e01867d0\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.8\u0026quot; to \u0026quot;9.1.9\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/28833d41b8d0e33bdc11244907fa8d14c8ddd1bf\"\u003e\u003ccode\u003e28833d4\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.7\u0026quot; to \u0026quot;9.1.8\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/006b304feb4cb0d2fd1408505ebeb5aababb0aad\"\u003e\u003ccode\u003e006b304\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.6\u0026quot; to \u0026quot;9.1.7\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/304edc38c499434140d712d8416749e75efe5dd1\"\u003e\u003ccode\u003e304edc3\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.5\u0026quot; to \u0026quot;9.1.6\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/56c04b001ee45f036ec5f1131fc8fbc553fad35d\"\u003e\u003ccode\u003e56c04b0\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.4\u0026quot; to \u0026quot;9.1.5\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/9f02684ad16e985bc5555f2e4ff4b37b1eb0c1ea\"\u003e\u003ccode\u003e9f02684\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.3\u0026quot; to \u0026quot;9.1.4\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/ce3915727c3a42d6107953b6b65f6008d704dd3d\"\u003e\u003ccode\u003ece39157\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.2\u0026quot; to \u0026quot;9.1.3\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/730bbf04edbd06d71c22959cf9c6902f98ba62a2\"\u003e\u003ccode\u003e730bbf0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y/issues/32284\"\u003e#32284\u003c/a\u003e from storybookjs/shilman/package-json-keywords\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/2bae930c307c0dea76060040deb4ca2a597c9e74\"\u003e\u003ccode\u003e2bae930\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y/issues/32283\"\u003e#32283\u003c/a\u003e from storybookjs/shilman/readme-utm-params\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/storybookjs/storybook/commits/v9.1.10/code/addons/a11y\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@storybook/addon-docs` from 9.0.18 to 9.1.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/releases\"\u003e\u003ccode\u003e@​storybook/addon-docs\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.1.10\u003c/h2\u003e\n\u003ch2\u003e9.1.10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomigrations: Add automigration for viewport and backgrounds - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31614\"\u003e#31614\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Log userAgent in onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32566\"\u003e#32566\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.9\u003c/h2\u003e\n\u003ch2\u003e9.1.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Enable experimental zoneless detection on Angular v21 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32580\"\u003e#32580\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Ignore inherited \u003ccode\u003eHTMLAttributes\u003c/code\u003e docgen when using utility types - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32173\"\u003e#32173\u003c/a\u003e, thanks \u003ca href=\"https://github.com/steciuk\"\u003e\u003ccode\u003e@​steciuk\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.8\u003c/h2\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.7\u003c/h2\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.6\u003c/h2\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.5\u003c/h2\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.4\u003c/h2\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.3\u003c/h2\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md\"\u003e\u003ccode\u003e@​storybook/addon-docs\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.1.10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomigrations: Add automigration for viewport and backgrounds - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31614\"\u003e#31614\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Log userAgent in onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32566\"\u003e#32566\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Enable experimental zoneless detection on Angular v21 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32580\"\u003e#32580\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Ignore inherited \u003ccode\u003eHTMLAttributes\u003c/code\u003e docgen when using utility types - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32173\"\u003e#32173\u003c/a\u003e, thanks \u003ca href=\"https://github.com/steciuk\"\u003e\u003ccode\u003e@​steciuk\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: A...\n\n_Description has been truncated_","html_url":"https://github.com/Legal-and-General/canopy/pull/1601","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Legal-and-General%2Fcanopy/issues/1601","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1601/packages"}},{"old_version":"19.0.1","new_version":"20.0.0","update_type":"major","path":null,"pr_created_at":"2025-10-01T17:34:24.000Z","version_change":"19.0.1 → 20.0.0","issue":{"uuid":"2879071634","node_id":"PR_kwDOOhidSs6rmyWS","number":97,"state":"closed","title":"Chore(deps): Bump the frontend-angular-dependencies group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["non-trivial","dependencies","frontend"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-10-08T07:53:13.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-10-01T17:34:24.000Z","updated_at":"2025-10-08T07:53:13.000Z","time_to_close":569929,"merged_at":"2025-10-08T07:53:13.000Z","merged_by":"frankykevin","closed_by":null,"dependency_metadata":{"prefix":"Chore(deps): Bump","group_name":"frontend-angular-dependencies","update_count":27,"packages":[{"name":"@angular/cdk","old_version":"19.2.18","new_version":"20.2.5","repository_url":"https://github.com/angular/components"},{"name":"@angular/common","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/compiler","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/core","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/forms","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/localize","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser-dynamic","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@angular/router","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"},{"name":"@ng-bootstrap/ng-bootstrap","old_version":"18.0.0","new_version":"19.0.1","repository_url":"https://github.com/ng-bootstrap/ng-bootstrap"},{"name":"@ng-select/ng-select","old_version":"14.9.0","new_version":"20.2.2","repository_url":"https://github.com/ng-select/ng-select"},{"name":"ngx-color","old_version":"10.0.0","new_version":"10.1.0","repository_url":"https://github.com/scttcper/ngx-color"},{"name":"ngx-cookie-service","old_version":"19.1.2","new_version":"20.1.0","repository_url":"https://github.com/stevermeister/ngx-cookie-service"},{"name":"ngx-device-detector","old_version":"9.0.0","new_version":"10.1.0","repository_url":"https://github.com/AhsanAyaz/ngx-device-detector"},{"name":"ngx-ui-tour-ng-bootstrap","old_version":"16.0.0","new_version":"17.0.1","repository_url":"https://github.com/hakimio/ngx-ui-tour"},{"name":"@angular-builders/custom-webpack","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/build-angular","old_version":"19.2.14","new_version":"20.3.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/core","old_version":"19.2.14","new_version":"20.3.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-devkit/schematics","old_version":"19.2.14","new_version":"20.3.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular-eslint/builder","old_version":"19.3.0","new_version":"20.3.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin","old_version":"19.3.0","new_version":"20.3.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/eslint-plugin-template","old_version":"19.3.0","new_version":"20.3.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/schematics","old_version":"19.3.0","new_version":"20.3.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular-eslint/template-parser","old_version":"19.3.0","new_version":"20.3.0","repository_url":"https://github.com/angular-eslint/angular-eslint"},{"name":"@angular/cli","old_version":"19.2.14","new_version":"20.3.3","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/compiler-cli","old_version":"19.2.14","new_version":"20.3.2","repository_url":"https://github.com/angular/angular"}],"path":null,"ecosystem":"npm"},"body":"Bumps the frontend-angular-dependencies group with 27 updates in the /src-ui directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/cdk](https://github.com/angular/components) | `19.2.18` | `20.2.5` |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `19.2.14` | `20.3.2` |\n| [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) | `19.2.14` | `20.3.2` |\n| [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) | `19.2.14` | `20.3.2` |\n| [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) | `19.2.14` | `20.3.2` |\n| [@angular/localize](https://github.com/angular/angular) | `19.2.14` | `20.3.2` |\n| [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) | `19.2.14` | `20.3.2` |\n| [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) | `19.2.14` | `20.3.2` |\n| [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) | `19.2.14` | `20.3.2` |\n| [@ng-bootstrap/ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap) | `18.0.0` | `19.0.1` |\n| [@ng-select/ng-select](https://github.com/ng-select/ng-select) | `14.9.0` | `20.2.2` |\n| [ngx-color](https://github.com/scttcper/ngx-color) | `10.0.0` | `10.1.0` |\n| [ngx-cookie-service](https://github.com/stevermeister/ngx-cookie-service) | `19.1.2` | `20.1.0` |\n| [ngx-device-detector](https://github.com/AhsanAyaz/ngx-device-detector) | `9.0.0` | `10.1.0` |\n| [ngx-ui-tour-ng-bootstrap](https://github.com/hakimio/ngx-ui-tour) | `16.0.0` | `17.0.1` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `19.0.1` | `20.0.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `19.2.14` | `20.3.3` |\n| [@angular-devkit/core](https://github.com/angular/angular-cli) | `19.2.14` | `20.3.3` |\n| [@angular-devkit/schematics](https://github.com/angular/angular-cli) | `19.2.14` | `20.3.3` |\n| [@angular-eslint/builder](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/builder) | `19.3.0` | `20.3.0` |\n| [@angular-eslint/eslint-plugin](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin) | `19.3.0` | `20.3.0` |\n| [@angular-eslint/eslint-plugin-template](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/eslint-plugin-template) | `19.3.0` | `20.3.0` |\n| [@angular-eslint/schematics](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/schematics) | `19.3.0` | `20.3.0` |\n| [@angular-eslint/template-parser](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/template-parser) | `19.3.0` | `20.3.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `19.2.14` | `20.3.3` |\n| [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) | `19.2.14` | `20.3.2` |\n\n\nUpdates `@angular/cdk` from 19.2.18 to 20.2.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.2.5\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/36be42637df5021ae9afa4d097e84d83d78c197e\"\u003e\u003cimg src=\"https://img.shields.io/badge/36be42637-fix-green\" alt=\"fix - 36be42637\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e move internal tokens (\u003ca href=\"https://redirect.github.com/angular/components/issues/31907\"\u003e#31907\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3ac762be5dc180594c0681e2842e35123195feb6\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ac762be5-fix-green\" alt=\"fix - 3ac762be5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eform-field:\u003c/strong\u003e restore error message animation (\u003ca href=\"https://redirect.github.com/angular/components/issues/31774\"\u003e#31774\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/65f23c003e94d59bbb08ad81eb66d725b1b5e79a\"\u003e\u003cimg src=\"https://img.shields.io/badge/65f23c003-fix-green\" alt=\"fix - 65f23c003\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e style no data row properly (\u003ca href=\"https://redirect.github.com/angular/components/issues/31895\"\u003e#31895\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.4\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e7a0c19d09bbe38852168c1a5ffcfeed66c1da6f\"\u003e\u003cimg src=\"https://img.shields.io/badge/e7a0c19d0-fix-green\" alt=\"fix - e7a0c19d0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etabs:\u003c/strong\u003e attach content inside the zone (\u003ca href=\"https://redirect.github.com/angular/components/issues/31868\"\u003e#31868\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.3\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ec33bf8eba46b1281e6b2a814a1ce3e15475ec20\"\u003e\u003cimg src=\"https://img.shields.io/badge/ec33bf8eba-fix-green\" alt=\"fix - ec33bf8eba\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eprogress-bar:\u003c/strong\u003e avoid CSP issues due to buffer dots (\u003ca href=\"https://redirect.github.com/angular/components/issues/31818\"\u003e#31818\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/9a682653023fd3d181d4b5b318ffc13974a9bf2b\"\u003e\u003cimg src=\"https://img.shields.io/badge/9a68265302-fix-green\" alt=\"fix - 9a68265302\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eslider:\u003c/strong\u003e incorrect indicator transform origin in M3 (\u003ca href=\"https://redirect.github.com/angular/components/issues/31834\"\u003e#31834\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/442d4ca6b752eabcf60003df0f1ad6905dddad5f\"\u003e\u003cimg src=\"https://img.shields.io/badge/442d4ca6b7-fix-green\" alt=\"fix - 442d4ca6b7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edrag-drop:\u003c/strong\u003e allow axis lock to be reset (\u003ca href=\"https://redirect.github.com/angular/components/issues/31829\"\u003e#31829\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.2\u003c/h2\u003e\n\u003cp\u003eNo release notes provided.\u003c/p\u003e\n\u003ch2\u003e20.2.1\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/04c598ad0a1a16a0149b324dc442255c2fdc0c17\"\u003e\u003cimg src=\"https://img.shields.io/badge/04c598ad0-fix-green\" alt=\"fix - 04c598ad0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add visible labels to calendar buttons (\u003ca href=\"https://redirect.github.com/angular/components/issues/31777\"\u003e#31777\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/839f3c1c1354438fdfa554662f5278703937678f\"\u003e\u003cimg src=\"https://img.shields.io/badge/839f3c1c1-fix-green\" alt=\"fix - 839f3c1c1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003esort:\u003c/strong\u003e error if signal is bound to disabled input (\u003ca href=\"https://redirect.github.com/angular/components/issues/31776\"\u003e#31776\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/ee808f8f32fc27d59c56b63044355e4c7e0e416c\"\u003e\u003cimg src=\"https://img.shields.io/badge/ee808f8f3-fix-green\" alt=\"fix - ee808f8f3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e resolve memory leak (\u003ca href=\"https://redirect.github.com/angular/components/issues/31754\"\u003e#31754\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.0\u003c/h2\u003e\n\u003ch3\u003ecdk-experimental\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/048de42545676c662ed26d6256cc61fa64a909be\"\u003e\u003cimg src=\"https://img.shields.io/badge/048de4254-feat-blue\" alt=\"feat - 048de4254\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etoolbar:\u003c/strong\u003e add toolbar directive and demo (\u003ca href=\"https://redirect.github.com/angular/components/issues/31676\"\u003e#31676\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/2dbb045bc203358172be0b324a05d74e8526ce38\"\u003e\u003cimg src=\"https://img.shields.io/badge/2dbb045bc-feat-blue\" alt=\"feat - 2dbb045bc\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e add nav mode (\u003ca href=\"https://redirect.github.com/angular/components/issues/31460\"\u003e#31460\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/6716f50249a638f62ea01358a91e0869d818c070\"\u003e\u003cimg src=\"https://img.shields.io/badge/6716f5024-feat-blue\" alt=\"feat - 6716f5024\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etree:\u003c/strong\u003e use shared example classes (\u003ca href=\"https://redirect.github.com/angular/components/issues/31494\"\u003e#31494\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/50a6d6c4c9f73c68b50faf3bffc76692d9b579b3\"\u003e\u003cimg src=\"https://img.shields.io/badge/50a6d6c4c-feat-blue\" alt=\"feat - 50a6d6c4c\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e add label control (\u003ca href=\"https://redirect.github.com/angular/components/issues/31459\"\u003e#31459\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4ce794ca70a84bc0ade5758bd81292c46a8e93db\"\u003e\u003cimg src=\"https://img.shields.io/badge/4ce794ca7-feat-blue\" alt=\"feat - 4ce794ca7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e add popup behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/31550\"\u003e#31550\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/228aaf1fa395e805d7b581b9d02102d65f0a1562\"\u003e\u003cimg src=\"https://img.shields.io/badge/228aaf1fa-feat-blue\" alt=\"feat - 228aaf1fa\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e create List behavior (\u003ca href=\"https://redirect.github.com/angular/components/issues/31601\"\u003e#31601\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/82812760efc0a69a6546f459bb6eb531ed930bd7\"\u003e\u003cimg src=\"https://img.shields.io/badge/82812760e-feat-blue\" alt=\"feat - 82812760e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e toolbar and toolbar widget (\u003ca href=\"https://redirect.github.com/angular/components/issues/31670\"\u003e#31670\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cdk\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.2.5 \u0026quot;sparkling-penguin\u0026quot; (2025-09-24)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/36be42637df5021ae9afa4d097e84d83d78c197e\"\u003e36be42637\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e move internal tokens (\u003ca href=\"https://redirect.github.com/angular/components/pull/31907\"\u003e#31907\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3ac762be5dc180594c0681e2842e35123195feb6\"\u003e3ac762be5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eform-field:\u003c/strong\u003e restore error message animation (\u003ca href=\"https://redirect.github.com/angular/components/pull/31774\"\u003e#31774\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/65f23c003e94d59bbb08ad81eb66d725b1b5e79a\"\u003e65f23c003\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etable:\u003c/strong\u003e style no data row properly (\u003ca href=\"https://redirect.github.com/angular/components/pull/31895\"\u003e#31895\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.4 \u0026quot;v21.0.0-next4 release\u0026quot; (2025-09-17)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/962a60c113ffdcb8920c1b4fee60d850007fda5f\"\u003e962a60c11\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e do not show hover state on devices that don't support hover (\u003ca href=\"https://redirect.github.com/angular/components/pull/31866\"\u003e#31866\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/31562a4b8f2700d43c53f2c170f14d4b28a7ac53\"\u003e31562a4b8\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e separate text/bg colors in utility classes (\u003ca href=\"https://redirect.github.com/angular/components/pull/31879\"\u003e#31879\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/a2906ddf36de4897b839df46941e59f3c0e0d727\"\u003ea2906ddf3\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etabs:\u003c/strong\u003e attach content inside the zone (\u003ca href=\"https://redirect.github.com/angular/components/pull/31868\"\u003e#31868\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk-experimental\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c21dfa348d49c2312e0f5c523f5d13ea51a7118f\"\u003ec21dfa348\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eui-patterns:\u003c/strong\u003e enter/space/click in single selection mode should not deselect tree item (\u003ca href=\"https://redirect.github.com/angular/components/pull/31843\"\u003e#31843\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.2.4 \u0026quot;v20.2.4 release\u0026quot; (2025-09-17)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/e7a0c19d09bbe38852168c1a5ffcfeed66c1da6f\"\u003ee7a0c19d0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etabs:\u003c/strong\u003e attach content inside the zone (\u003ca href=\"https://redirect.github.com/angular/components/pull/31868\"\u003e#31868\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.3 \u0026quot;red-envelope\u0026quot; (2025-09-11)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMatCommonModule\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eGranularSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMATERIAL_SANITY_CHECKS\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eSanityChecks\u003c/code\u003e has been removed.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecdk-experimental\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/f137183858bf6bb9d47f7d184ea55241f2ee4a61\"\u003ef137183858\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eaccordion:\u003c/strong\u003e removes inert attribute from accordion trigger (\u003ca href=\"https://redirect.github.com/angular/components/pull/31817\"\u003e#31817\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/931ac3c1c7f8468acaae1e9b266bdd5f52cd35fd\"\u003e931ac3c1c7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003echips:\u003c/strong\u003e Adjust trailing icon opacity based on chip state (\u003ca href=\"https://redirect.github.com/angular/components/pull/31828\"\u003e#31828\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/50caec7eeda297050fc49c9cf0dfb6d410941a77\"\u003e\u003ccode\u003e50caec7\u003c/code\u003e\u003c/a\u003e release: cut the v20.2.5 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/41869daddb03e63e178cdf65841e81965fd81c4d\"\u003e\u003ccode\u003e41869da\u003c/code\u003e\u003c/a\u003e docs: external link opening on new tab (\u003ca href=\"https://redirect.github.com/angular/components/issues/31909\"\u003e#31909\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/a1456cd12d8cb91c0fb63d0095454bf7e52b7ce5\"\u003e\u003ccode\u003ea1456cd\u003c/code\u003e\u003c/a\u003e docs: correct pnpm install command (\u003ca href=\"https://redirect.github.com/angular/components/issues/31896\"\u003e#31896\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/bfc700272194fff4fec4b193fe34c17b8875730d\"\u003e\u003ccode\u003ebfc7002\u003c/code\u003e\u003c/a\u003e build: update bazel dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/31770\"\u003e#31770\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/36be42637df5021ae9afa4d097e84d83d78c197e\"\u003e\u003ccode\u003e36be426\u003c/code\u003e\u003c/a\u003e fix(material/core): move internal tokens (\u003ca href=\"https://redirect.github.com/angular/components/issues/31907\"\u003e#31907\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/65f23c003e94d59bbb08ad81eb66d725b1b5e79a\"\u003e\u003ccode\u003e65f23c0\u003c/code\u003e\u003c/a\u003e fix(material/table): style no data row properly (\u003ca href=\"https://redirect.github.com/angular/components/issues/31895\"\u003e#31895\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/3ac762be5dc180594c0681e2842e35123195feb6\"\u003e\u003ccode\u003e3ac762b\u003c/code\u003e\u003c/a\u003e fix(material/form-field): restore error message animation (\u003ca href=\"https://redirect.github.com/angular/components/issues/31774\"\u003e#31774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/80c7e761e4c7c4137232c9798a01c050935e3685\"\u003e\u003ccode\u003e80c7e76\u003c/code\u003e\u003c/a\u003e release: cut the v20.2.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/1fa0315545ea761f0ff0a19f45b5d749ec3c0fc1\"\u003e\u003ccode\u003e1fa0315\u003c/code\u003e\u003c/a\u003e build: update pnpm to v10.17.0 (\u003ca href=\"https://redirect.github.com/angular/components/issues/31884\"\u003e#31884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/741db87d3abefceb72c955310a759fdcfdaea2bb\"\u003e\u003ccode\u003e741db87\u003c/code\u003e\u003c/a\u003e build: lock file maintenance (\u003ca href=\"https://redirect.github.com/angular/components/issues/31886\"\u003e#31886\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/19.2.18...20.2.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/common` from 19.2.14 to 20.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.2\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba40153ac0-fix-green\" alt=\"fix - ba40153ac0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e\u003cimg src=\"https://img.shields.io/badge/1d4f81c8ee-fix-green\" alt=\"fix - 1d4f81c8ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003cimg src=\"https://img.shields.io/badge/9515a70933-fix-green\" alt=\"fix - 9515a70933\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003e\u003cimg src=\"https://img.shields.io/badge/e78451cf8a-fix-green\" alt=\"fix - e78451cf8a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e\u003cimg src=\"https://img.shields.io/badge/1fd8d5d446-fix-green\" alt=\"fix - 1fd8d5d446\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e\u003cimg src=\"https://img.shields.io/badge/16d0d43ad4-fix-green\" alt=\"fix - 16d0d43ad4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ebaeccb46-fix-green\" alt=\"fix - 3ebaeccb46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.1\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7fb5a8087ee8fb0451cedbe6ac4ce972eca4b56e\"\u003e\u003cimg src=\"https://img.shields.io/badge/7fb5a8087e-fix-green\" alt=\"fix - 7fb5a8087e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for \u003ccode\u003earia-invalid\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63748\"\u003e#63748\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/88437079190cef9ee522a3e2defa6e2672c2d030\"\u003e\u003cimg src=\"https://img.shields.io/badge/8843707919-fix-green\" alt=\"fix - 8843707919\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eonly bind inputs that are part of microsyntax to a structural directive (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/52453\"\u003e#52453\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/38c9921ff387d235981a79e26dc8bc7e60a2e10c\"\u003e\u003cimg src=\"https://img.shields.io/badge/38c9921ff3-fix-green\" alt=\"fix - 38c9921ff3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esignal not invoked diagnostic not raised when input has same name in template (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63754\"\u003e#63754\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/802dbcc2a0c5d3784cb04b4c78ea71ed0925327c\"\u003e\u003cimg src=\"https://img.shields.io/badge/802dbcc2a0-fix-green\" alt=\"fix - 802dbcc2a0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animation events from being cleaned up on destroy (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63414\"\u003e#63414\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ec8a5c7536cdd2c1db7db4bfbc2d4995156a833\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ec8a5c753-fix-green\" alt=\"fix - 3ec8a5c753\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePrevent leave animations on a move operation (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63745\"\u003e#63745\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e54bdfdcb01522ee46865fadec911f960fff730\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e54bdfdcb-fix-green\" alt=\"fix - 6e54bdfdcb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix route-lazy-loading migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63818\"\u003e#63818\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.0\u003c/h2\u003e\n\u003ch3\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3f808d7c8cc59a4fd69f2e4b8d21a6510efa046\"\u003e\u003cimg src=\"https://img.shields.io/badge/a3f808d7c8-fix-green\" alt=\"fix - a3f808d7c8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove refresh button from transfer state tab (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63592\"\u003e#63592\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6117ccee2e1507fb00549cd70e064282645db803\"\u003e\u003cimg src=\"https://img.shields.io/badge/6117ccee2e-feat-blue\" alt=\"feat - 6117ccee2e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eintroduce \u003ccode\u003eBootstrapContext\u003c/code\u003e for improved server bootstrapping (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63636\"\u003e#63636\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.2 (2025-09-24)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003eba40153ac0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e1d4f81c8ee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e9515a70933\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003ee78451cf8a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e1fd8d5d446\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e16d0d43ad4\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e3ebaeccb46\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.4 (2025-09-17)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003engComponentOutletContent\u003c/code\u003e is now of type \u003ccode\u003eNode[][] | undefined\u003c/code\u003e instead of \u003ccode\u003eany[][] | undefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUsing a combination of \u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e\nwhile also removing ZoneJS polyfills will no longer result in the\ninternal scheduler being disabled. All Angular applications now\nconsistenly use the same scheduler, and those with the Zone change detection\nprovider include additional automatic scheduling behaviors based on\nNgZone stabilization.\u003c/li\u003e\n\u003cli\u003eAngular no longer provides a change detection scheduler\nfor ZoneJS-based change detection by default. Add\n\u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e to the providers of your\n\u003ccode\u003ebootstrapApplication\u003c/code\u003e function or your \u003ccode\u003eAppModule\u003c/code\u003e (if using\n\u003ccode\u003ebootstrapModule\u003c/code\u003e). This provider addition will be covered by an\nautomated migration.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emoduleId\u003c/code\u003e was removed from \u003ccode\u003eComponent\u003c/code\u003e metadata.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003einterpolation\u003c/code\u003e option on Components has been removed. Only the default \u003ccode\u003e{{ ... }}\u003c/code\u003e is now supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a4b225c57d8e390ec06731f5211d52d14da3a9c\"\u003e7a4b225c57\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erefactor\u003c/td\u003e\n\u003ctd\u003eimprove typing of \u003ccode\u003engComponentOutletContent\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63674\"\u003e#63674\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003ccode\u003e9515a70\u003c/code\u003e\u003c/a\u003e fix(core): fix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/423cc17a76ab325ac53d448486e272e91a6590df\"\u003e\u003ccode\u003e423cc17\u003c/code\u003e\u003c/a\u003e refactor(common): trim undefined from locale data. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63520\"\u003e#63520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b05552fc7a97c5645858cc36c24031f5c21993f1\"\u003e\u003ccode\u003eb05552f\u003c/code\u003e\u003c/a\u003e docs: add documentation for NG02802 warning about HttpTransferCache headers (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/1b7f53021f7da3f84fa9d26c463b7dbee925f470\"\u003e\u003ccode\u003e1b7f530\u003c/code\u003e\u003c/a\u003e build: add a noDuplicateEnumValue rule (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63483\"\u003e#63483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a7725ee4c91641ef92b19f0fd35dc0fc000bc84\"\u003e\u003ccode\u003e7a7725e\u003c/code\u003e\u003c/a\u003e refactor(core): Update tests for zoneless by default (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63672\"\u003e#63672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b549cd28ae78bff43d9a1c8e576ed9ca480174c4\"\u003e\u003ccode\u003eb549cd2\u003c/code\u003e\u003c/a\u003e refactor(bazel): reduce build deps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63348\"\u003e#63348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e8d9bc511966a91bd6fbac912d5809f027525c2f\"\u003e\u003ccode\u003ee8d9bc5\u003c/code\u003e\u003c/a\u003e refactor(http): rework the \u003ccode\u003eHttpEvent\u003c/code\u003e union to improve narrowing. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63267\"\u003e#63267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/705b94bd21f3f3f3dd8f10881a90bfae049c1a07\"\u003e\u003ccode\u003e705b94b\u003c/code\u003e\u003c/a\u003e refactor: remove TODOs which have been corrected (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63421\"\u003e#63421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9a27c5befb676e894c522392e2c06b4f8fdca25a\"\u003e\u003ccode\u003e9a27c5b\u003c/code\u003e\u003c/a\u003e build: rename defaults2.bzl to defaults.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63384\"\u003e#63384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/10b0927e15bb6158a7262b0f2acd310836c96ca7\"\u003e\u003ccode\u003e10b0927\u003c/code\u003e\u003c/a\u003e refactor: various build and import specificer fixes for strict deps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63324\"\u003e#63324\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.3.2/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/compiler` from 19.2.14 to 20.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.2\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba40153ac0-fix-green\" alt=\"fix - ba40153ac0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e\u003cimg src=\"https://img.shields.io/badge/1d4f81c8ee-fix-green\" alt=\"fix - 1d4f81c8ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003cimg src=\"https://img.shields.io/badge/9515a70933-fix-green\" alt=\"fix - 9515a70933\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003e\u003cimg src=\"https://img.shields.io/badge/e78451cf8a-fix-green\" alt=\"fix - e78451cf8a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e\u003cimg src=\"https://img.shields.io/badge/1fd8d5d446-fix-green\" alt=\"fix - 1fd8d5d446\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e\u003cimg src=\"https://img.shields.io/badge/16d0d43ad4-fix-green\" alt=\"fix - 16d0d43ad4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ebaeccb46-fix-green\" alt=\"fix - 3ebaeccb46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.1\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7fb5a8087ee8fb0451cedbe6ac4ce972eca4b56e\"\u003e\u003cimg src=\"https://img.shields.io/badge/7fb5a8087e-fix-green\" alt=\"fix - 7fb5a8087e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for \u003ccode\u003earia-invalid\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63748\"\u003e#63748\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/88437079190cef9ee522a3e2defa6e2672c2d030\"\u003e\u003cimg src=\"https://img.shields.io/badge/8843707919-fix-green\" alt=\"fix - 8843707919\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eonly bind inputs that are part of microsyntax to a structural directive (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/52453\"\u003e#52453\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/38c9921ff387d235981a79e26dc8bc7e60a2e10c\"\u003e\u003cimg src=\"https://img.shields.io/badge/38c9921ff3-fix-green\" alt=\"fix - 38c9921ff3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esignal not invoked diagnostic not raised when input has same name in template (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63754\"\u003e#63754\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/802dbcc2a0c5d3784cb04b4c78ea71ed0925327c\"\u003e\u003cimg src=\"https://img.shields.io/badge/802dbcc2a0-fix-green\" alt=\"fix - 802dbcc2a0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animation events from being cleaned up on destroy (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63414\"\u003e#63414\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ec8a5c7536cdd2c1db7db4bfbc2d4995156a833\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ec8a5c753-fix-green\" alt=\"fix - 3ec8a5c753\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePrevent leave animations on a move operation (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63745\"\u003e#63745\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e54bdfdcb01522ee46865fadec911f960fff730\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e54bdfdcb-fix-green\" alt=\"fix - 6e54bdfdcb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix route-lazy-loading migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63818\"\u003e#63818\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.0\u003c/h2\u003e\n\u003ch3\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3f808d7c8cc59a4fd69f2e4b8d21a6510efa046\"\u003e\u003cimg src=\"https://img.shields.io/badge/a3f808d7c8-fix-green\" alt=\"fix - a3f808d7c8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove refresh button from transfer state tab (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63592\"\u003e#63592\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6117ccee2e1507fb00549cd70e064282645db803\"\u003e\u003cimg src=\"https://img.shields.io/badge/6117ccee2e-feat-blue\" alt=\"feat - 6117ccee2e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eintroduce \u003ccode\u003eBootstrapContext\u003c/code\u003e for improved server bootstrapping (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63636\"\u003e#63636\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.2 (2025-09-24)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003eba40153ac0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e1d4f81c8ee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e9515a70933\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003ee78451cf8a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e1fd8d5d446\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e16d0d43ad4\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e3ebaeccb46\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.4 (2025-09-17)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003engComponentOutletContent\u003c/code\u003e is now of type \u003ccode\u003eNode[][] | undefined\u003c/code\u003e instead of \u003ccode\u003eany[][] | undefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUsing a combination of \u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e\nwhile also removing ZoneJS polyfills will no longer result in the\ninternal scheduler being disabled. All Angular applications now\nconsistenly use the same scheduler, and those with the Zone change detection\nprovider include additional automatic scheduling behaviors based on\nNgZone stabilization.\u003c/li\u003e\n\u003cli\u003eAngular no longer provides a change detection scheduler\nfor ZoneJS-based change detection by default. Add\n\u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e to the providers of your\n\u003ccode\u003ebootstrapApplication\u003c/code\u003e function or your \u003ccode\u003eAppModule\u003c/code\u003e (if using\n\u003ccode\u003ebootstrapModule\u003c/code\u003e). This provider addition will be covered by an\nautomated migration.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emoduleId\u003c/code\u003e was removed from \u003ccode\u003eComponent\u003c/code\u003e metadata.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003einterpolation\u003c/code\u003e option on Components has been removed. Only the default \u003ccode\u003e{{ ... }}\u003c/code\u003e is now supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a4b225c57d8e390ec06731f5211d52d14da3a9c\"\u003e7a4b225c57\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erefactor\u003c/td\u003e\n\u003ctd\u003eimprove typing of \u003ccode\u003engComponentOutletContent\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63674\"\u003e#63674\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/720f0dbd138e4d32a911f190a21964ba3ffd0f0a\"\u003e\u003ccode\u003e720f0db\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(compiler): expose member decorator identifiers (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63904\"\u003e#63904\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/6\"\u003e#6\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3094f2cb5c6692bf45ed131565fa04daf0465a6\"\u003e\u003ccode\u003ea3094f2\u003c/code\u003e\u003c/a\u003e refactor(compiler): expose member decorator identifiers (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63904\"\u003e#63904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7fb5a8087ee8fb0451cedbe6ac4ce972eca4b56e\"\u003e\u003ccode\u003e7fb5a80\u003c/code\u003e\u003c/a\u003e fix(compiler): Add support for \u003ccode\u003earia-invalid\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63748\"\u003e#63748\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/5f5828f60d59aec5d2cb9d59879ad30e0810c9a9\"\u003e\u003ccode\u003e5f5828f\u003c/code\u003e\u003c/a\u003e refactor(core): dispatch enter and leave animations at the right times (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63710\"\u003e#63710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/479a919f42517193653384220adab5b89dd74e3d\"\u003e\u003ccode\u003e479a919\u003c/code\u003e\u003c/a\u003e fix(compiler): fixes regression with event parsing and animate prefix (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63470\"\u003e#63470\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/d7b6045d61582d20a17802e769dc1441984988f0\"\u003e\u003ccode\u003ed7b6045\u003c/code\u003e\u003c/a\u003e fix(compiler): fixes animations on elements with structural directives (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63390\"\u003e#63390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9a27c5befb676e894c522392e2c06b4f8fdca25a\"\u003e\u003ccode\u003e9a27c5b\u003c/code\u003e\u003c/a\u003e build: rename defaults2.bzl to defaults.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63384\"\u003e#63384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a28672fb7017cc62e42829c5910c3b39373d7913\"\u003e\u003ccode\u003ea28672f\u003c/code\u003e\u003c/a\u003e fix(compiler): Keep paraenthesis in Nullish + Boolean expression. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63292\"\u003e#63292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7b517288139aec166e5e5b60e84b1e22e3d6b70f\"\u003e\u003ccode\u003e7b51728\u003c/code\u003e\u003c/a\u003e fix(compiler): fixes animation event host bindings not firing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63217\"\u003e#63217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/19ed12c81e82c8b0b2ac9e0e008c3ebfc9512f24\"\u003e\u003ccode\u003e19ed12c\u003c/code\u003e\u003c/a\u003e fix(compiler): error when ng-content fallback has translated children (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/63156\"\u003e#63156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.3.2/packages/compiler\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/core` from 19.2.14 to 20.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.2\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba40153ac0-fix-green\" alt=\"fix - ba40153ac0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e\u003cimg src=\"https://img.shields.io/badge/1d4f81c8ee-fix-green\" alt=\"fix - 1d4f81c8ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003cimg src=\"https://img.shields.io/badge/9515a70933-fix-green\" alt=\"fix - 9515a70933\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003e\u003cimg src=\"https://img.shields.io/badge/e78451cf8a-fix-green\" alt=\"fix - e78451cf8a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e\u003cimg src=\"https://img.shields.io/badge/1fd8d5d446-fix-green\" alt=\"fix - 1fd8d5d446\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e\u003cimg src=\"https://img.shields.io/badge/16d0d43ad4-fix-green\" alt=\"fix - 16d0d43ad4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ebaeccb46-fix-green\" alt=\"fix - 3ebaeccb46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.1\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7fb5a8087ee8fb0451cedbe6ac4ce972eca4b56e\"\u003e\u003cimg src=\"https://img.shields.io/badge/7fb5a8087e-fix-green\" alt=\"fix - 7fb5a8087e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for \u003ccode\u003earia-invalid\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63748\"\u003e#63748\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/88437079190cef9ee522a3e2defa6e2672c2d030\"\u003e\u003cimg src=\"https://img.shields.io/badge/8843707919-fix-green\" alt=\"fix - 8843707919\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eonly bind inputs that are part of microsyntax to a structural directive (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/52453\"\u003e#52453\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/38c9921ff387d235981a79e26dc8bc7e60a2e10c\"\u003e\u003cimg src=\"https://img.shields.io/badge/38c9921ff3-fix-green\" alt=\"fix - 38c9921ff3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003esignal not invoked diagnostic not raised when input has same name in template (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63754\"\u003e#63754\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/802dbcc2a0c5d3784cb04b4c78ea71ed0925327c\"\u003e\u003cimg src=\"https://img.shields.io/badge/802dbcc2a0-fix-green\" alt=\"fix - 802dbcc2a0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animation events from being cleaned up on destroy (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63414\"\u003e#63414\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ec8a5c7536cdd2c1db7db4bfbc2d4995156a833\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ec8a5c753-fix-green\" alt=\"fix - 3ec8a5c753\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ePrevent leave animations on a move operation (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63745\"\u003e#63745\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6e54bdfdcb01522ee46865fadec911f960fff730\"\u003e\u003cimg src=\"https://img.shields.io/badge/6e54bdfdcb-fix-green\" alt=\"fix - 6e54bdfdcb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix route-lazy-loading migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63818\"\u003e#63818\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.0\u003c/h2\u003e\n\u003ch3\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3f808d7c8cc59a4fd69f2e4b8d21a6510efa046\"\u003e\u003cimg src=\"https://img.shields.io/badge/a3f808d7c8-fix-green\" alt=\"fix - a3f808d7c8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove refresh button from transfer state tab (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63592\"\u003e#63592\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6117ccee2e1507fb00549cd70e064282645db803\"\u003e\u003cimg src=\"https://img.shields.io/badge/6117ccee2e-feat-blue\" alt=\"feat - 6117ccee2e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eintroduce \u003ccode\u003eBootstrapContext\u003c/code\u003e for improved server bootstrapping (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63636\"\u003e#63636\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.2 (2025-09-24)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003eba40153ac0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e1d4f81c8ee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e9515a70933\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003ee78451cf8a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e1fd8d5d446\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://redirect.github.com/angular/angular/pull/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e16d0d43ad4\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e3ebaeccb46\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.4 (2025-09-17)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003engComponentOutletContent\u003c/code\u003e is now of type \u003ccode\u003eNode[][] | undefined\u003c/code\u003e instead of \u003ccode\u003eany[][] | undefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUsing a combination of \u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e\nwhile also removing ZoneJS polyfills will no longer result in the\ninternal scheduler being disabled. All Angular applications now\nconsistenly use the same scheduler, and those with the Zone change detection\nprovider include additional automatic scheduling behaviors based on\nNgZone stabilization.\u003c/li\u003e\n\u003cli\u003eAngular no longer provides a change detection scheduler\nfor ZoneJS-based change detection by default. Add\n\u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e to the providers of your\n\u003ccode\u003ebootstrapApplication\u003c/code\u003e function or your \u003ccode\u003eAppModule\u003c/code\u003e (if using\n\u003ccode\u003ebootstrapModule\u003c/code\u003e). This provider addition will be covered by an\nautomated migration.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emoduleId\u003c/code\u003e was removed from \u003ccode\u003eComponent\u003c/code\u003e metadata.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003einterpolation\u003c/code\u003e option on Components has been removed. Only the default \u003ccode\u003e{{ ... }}\u003c/code\u003e is now supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a4b225c57d8e390ec06731f5211d52d14da3a9c\"\u003e7a4b225c57\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003erefactor\u003c/td\u003e\n\u003ctd\u003eimprove typing of \u003ccode\u003engComponentOutletContent\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63674\"\u003e#63674\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e\u003ccode\u003e3ebaecc\u003c/code\u003e\u003c/a\u003e fix(migrations): handle reused templates in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63996\"\u003e#63996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/8d1891a5323e5ea071fb3129990e957d5cfff359\"\u003e\u003ccode\u003e8d1891a\u003c/code\u003e\u003c/a\u003e refactor(core): improve linkedSignal type definitions, add debugName to optio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003ccode\u003e9515a70\u003c/code\u003e\u003c/a\u003e fix(core): fix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a67d82254f832afd5feac25996b03ffbe85a9f97\"\u003e\u003ccode\u003ea67d822\u003c/code\u003e\u003c/a\u003e refactor(core): use version\u0026gt;0 instead of hasRun (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62467\"\u003e#62467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/64a36757e5078cff7c84810927377bb575101d29\"\u003e\u003ccode\u003e64a3675\u003c/code\u003e\u003c/a\u003e docs: fix typo in component bindings jsdoc (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63969\"\u003e#63969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003e\u003ccode\u003ee78451c\u003c/code\u003e\u003c/a\u003e fix(core): prevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63921\"\u003e#63921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b04e6b18696b67b4003dc865f857a49647ec7bd5\"\u003e\u003ccode\u003eb04e6b1\u003c/code\u003e\u003c/a\u003e refactor(core): drop the usage of \u003ccode\u003ePromiseSettledResult\\\u0026lt;void\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63955\"\u003e#63955\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/720f0dbd138e4d32a911f190a21964ba3ffd0f0a\"\u003e\u003ccode\u003e720f0db\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;refactor(compiler): expose member decorator identifiers (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63904\"\u003e#63904\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/6\"\u003e#6\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/150ed2b5692318723ca2bf49228378539a7bd453\"\u003e\u003ccode\u003e150ed2b\u003c/code\u003e\u003c/a\u003e docs: add documentation for NG0401 error (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63947\"\u003e#63947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/d0c7ea8491b7c12757d8679470cf538c3eb661de\"\u003e\u003ccode\u003ed0c7ea8\u003c/code\u003e\u003c/a\u003e refactor(core): fix MockRenderer in unit tests. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/63936\"\u003e#63936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.3.2/packages/core\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/forms` from 19.2.14 to 20.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.2\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ba40153ac07fc721585a1224fda09a654672cb74\"\u003e\u003cimg src=\"https://img.shields.io/badge/ba40153ac0-fix-green\" alt=\"fix - ba40153ac0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecapture metadata for undecorated fields (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63904\"\u003e#63904\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1d4f81c8eedf5ea69c51c720f8dc5c5d12a62ba2\"\u003e\u003cimg src=\"https://img.shields.io/badge/1d4f81c8ee-fix-green\" alt=\"fix - 1d4f81c8ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve import alias in defer blocks (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63966\"\u003e#63966\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9515a709331883f0ca9857ed46a5262b01979a26\"\u003e\u003cimg src=\"https://img.shields.io/badge/9515a70933-fix-green\" alt=\"fix - 9515a70933\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix narrowing of \u003ccode\u003eResource.hasValue()\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63994\"\u003e#63994\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/e78451cf8a48322879e83b33fecc0b5854947afb\"\u003e\u003cimg src=\"https://img.shields.io/badge/e78451cf8a-fix-green\" alt=\"fix - e78451cf8a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent animations renderer from impacting \u003ccode\u003eanimate.leave\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63921\"\u003e#63921\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eforms\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/1fd8d5d446f909a16a127ba117a0f423c7a5db0c\"\u003e\u003cimg src=\"https://img.shields.io/badge/1fd8d5d446-fix-green\" alt=\"fix - 1fd8d5d446\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eEmit \u003ccode\u003eFormResetEvent\u003c/code\u003e when resetting control (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/64034\"\u003e#64034\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/16d0d43ad4903b69b8dcd9b76c48b5089e7f82ee\"\u003e\u003cimg src=\"https://img.shields.io/badge/16d0d43ad4-fix-green\" alt=\"fix - 16d0d43ad4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle import aliases to the same module name (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63934\"\u003e#63934\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3ebaeccb466119ee43eeaa486f5e132c85e9caa2\"\u003e\u003cimg src=\"https://img.shields.io/badge/3ebaeccb46-fix-green\" alt=\"fix - 3ebaeccb46\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle reused templates in control flow migration (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63996\"\u003e#63996\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.1\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7fb5a8087ee8fb0451cedbe6ac4ce972eca4b56e\"\u003e\u003cimg src=\"https://img.shields.io/badge/7fb5a8087e-fix-green\" alt=\"fix - 7fb5a8087e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eAdd support for \u003ccode\u003earia-invalid\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/63748\"\u003e#63748\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/88437079190cef9ee522a3e2defa6e2672c2d030\"\u003e\u003cimg src=\"https://i...\n\n_Description has been truncated_","html_url":"https://github.com/frankykevin/paperless-ngx/pull/97","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/frankykevin%2Fpaperless-ngx/issues/97","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/97/packages"}},{"old_version":"19.0.1","new_version":"20.0.0","update_type":"major","path":null,"pr_created_at":"2025-09-26T17:12:05.000Z","version_change":"19.0.1 → 20.0.0","issue":{"uuid":"3458433467","node_id":"PR_kwDOEX7hus6qwv6a","number":1585,"state":"open","title":"npm(deps): bump the npm group across 1 directory with 33 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-26T17:12:05.000Z","updated_at":"2025-09-30T10:13:22.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"npm(deps): bump","group_name":"npm","update_count":33,"packages":[{"name":"core-js","old_version":"3.42.0","new_version":"3.45.1","repository_url":"https://github.com/zloirock/core-js"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@commitlint/cli","old_version":"19.8.1","new_version":"20.0.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@commitlint/config-angular","old_version":"19.8.1","new_version":"20.0.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@commitlint/config-conventional","old_version":"19.8.1","new_version":"20.0.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@commitlint/prompt","old_version":"19.8.1","new_version":"20.0.0","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@percy/storybook","old_version":"7.0.0","new_version":"9.0.1","repository_url":"https://github.com/percy/percy-storybook"},{"name":"@storybook/addon-a11y","old_version":"9.0.18","new_version":"9.1.8","repository_url":"https://github.com/storybookjs/storybook"},{"name":"@storybook/addon-docs","old_version":"9.0.18","new_version":"9.1.8","repository_url":"https://github.com/storybookjs/storybook"},{"name":"@storybook/angular","old_version":"9.0.18","new_version":"9.1.8","repository_url":"https://github.com/storybookjs/storybook"},{"name":"@stylistic/eslint-plugin","old_version":"4.2.0","new_version":"5.4.0","repository_url":"https://github.com/eslint-stylistic/eslint-stylistic"},{"name":"@types/node","old_version":"22.15.19","new_version":"22.18.6","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.32.1","new_version":"8.44.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.32.1","new_version":"8.44.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typestrong/ts-mockito","old_version":"2.6.6","new_version":"2.7.12","repository_url":"https://github.com/TypeStrong/ts-mockito"},{"name":"eslint","old_version":"9.26.0","new_version":"9.36.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-import","old_version":"2.31.0","new_version":"2.32.0","repository_url":"https://github.com/import-js/eslint-plugin-import"},{"name":"eslint-plugin-storybook","old_version":"9.0.17","new_version":"9.1.8","repository_url":"https://github.com/storybookjs/storybook"},{"name":"eslint-plugin-unused-imports","old_version":"4.1.4","new_version":"4.2.0","repository_url":"https://github.com/sweepline/eslint-plugin-unused-imports"},{"name":"globals","old_version":"16.1.0","new_version":"16.4.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"lint-staged","old_version":"16.0.0","new_version":"16.2.1","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"ng-packagr","old_version":"19.2.2","new_version":"20.3.0","repository_url":"https://github.com/ng-packagr/ng-packagr"},{"name":"npm","old_version":"11.3.0","new_version":"11.6.1","repository_url":"https://github.com/npm/cli"},{"name":"prettier","old_version":"3.5.3","new_version":"3.6.2","repository_url":"https://github.com/prettier/prettier"},{"name":"pretty-quick","old_version":"4.1.1","new_version":"4.2.2","repository_url":"https://github.com/prettier/pretty-quick"},{"name":"sass","old_version":"1.89.0","new_version":"1.93.2","repository_url":"https://github.com/sass/dart-sass"},{"name":"storybook","old_version":"9.0.18","new_version":"9.1.8","repository_url":"https://github.com/storybookjs/storybook"},{"name":"stylelint","old_version":"16.19.1","new_version":"16.24.0","repository_url":"https://github.com/stylelint/stylelint"},{"name":"stylelint-config-recommended","old_version":"16.0.0","new_version":"17.0.0","repository_url":"https://github.com/stylelint/stylelint-config-recommended"},{"name":"svgo","old_version":"3.3.2","new_version":"4.0.0","repository_url":"https://github.com/svg/svgo"},{"name":"webpack","old_version":"5.99.8","new_version":"5.101.3","repository_url":"https://github.com/webpack/webpack"},{"name":"webpack-remove-empty-scripts","old_version":"1.0.4","new_version":"1.1.1","repository_url":"https://github.com/webdiscus/webpack-remove-empty-scripts"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm group with 32 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) | `3.42.0` | `3.45.1` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@commitlint/cli](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli) | `19.8.1` | `20.0.0` |\n| [@commitlint/config-angular](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-angular) | `19.8.1` | `20.0.0` |\n| [@commitlint/config-conventional](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional) | `19.8.1` | `20.0.0` |\n| [@commitlint/prompt](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/prompt) | `19.8.1` | `20.0.0` |\n| [@percy/storybook](https://github.com/percy/percy-storybook) | `7.0.0` | `9.0.1` |\n| [@storybook/addon-a11y](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y) | `9.0.18` | `9.1.8` |\n| [@storybook/addon-docs](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/docs) | `9.0.18` | `9.1.8` |\n| [@storybook/angular](https://github.com/storybookjs/storybook/tree/HEAD/code/frameworks/angular) | `9.0.18` | `9.1.8` |\n| [@stylistic/eslint-plugin](https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin) | `4.2.0` | `5.4.0` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `22.15.19` | `22.18.6` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.32.1` | `8.44.1` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.32.1` | `8.44.1` |\n| [@typestrong/ts-mockito](https://github.com/TypeStrong/ts-mockito) | `2.6.6` | `2.7.12` |\n| [eslint](https://github.com/eslint/eslint) | `9.26.0` | `9.36.0` |\n| [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) | `2.31.0` | `2.32.0` |\n| [eslint-plugin-storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/lib/eslint-plugin) | `9.0.17` | `9.1.8` |\n| [eslint-plugin-unused-imports](https://github.com/sweepline/eslint-plugin-unused-imports) | `4.1.4` | `4.2.0` |\n| [globals](https://github.com/sindresorhus/globals) | `16.1.0` | `16.4.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.0.0` | `16.2.1` |\n| [ng-packagr](https://github.com/ng-packagr/ng-packagr) | `19.2.2` | `20.3.0` |\n| [npm](https://github.com/npm/cli) | `11.3.0` | `11.6.1` |\n| [prettier](https://github.com/prettier/prettier) | `3.5.3` | `3.6.2` |\n| [pretty-quick](https://github.com/prettier/pretty-quick) | `4.1.1` | `4.2.2` |\n| [sass](https://github.com/sass/dart-sass) | `1.89.0` | `1.93.2` |\n| [storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/core) | `9.0.18` | `9.1.8` |\n| [stylelint](https://github.com/stylelint/stylelint) | `16.19.1` | `16.24.0` |\n| [stylelint-config-recommended](https://github.com/stylelint/stylelint-config-recommended) | `16.0.0` | `17.0.0` |\n| [svgo](https://github.com/svg/svgo) | `3.3.2` | `4.0.0` |\n| [webpack](https://github.com/webpack/webpack) | `5.99.8` | `5.101.3` |\n| [webpack-remove-empty-scripts](https://github.com/webdiscus/webpack-remove-empty-scripts) | `1.0.4` | `1.1.1` |\n\n\nUpdates `core-js` from 3.42.0 to 3.45.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zloirock/core-js/blob/master/CHANGELOG.md\"\u003ecore-js's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch5\u003e\u003ca href=\"https://github.com/zloirock/core-js/releases/tag/v3.45.1\"\u003e3.45.1 - 2025.08.20\u003c/a\u003e\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eChanges \u003ca href=\"https://github.com/zloirock/core-js/compare/v3.45.0...v3.45.1\"\u003ev3.45.0...v3.45.1\u003c/a\u003e (30 commits)\u003c/li\u003e\n\u003cli\u003eFixed a conflict of native methods from \u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert proposal\u003c/a\u003e with polyfilled methods in the pure version\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ebugs\u003c/code\u003e fields to \u003ccode\u003epackage.json\u003c/code\u003e of all packages\u003c/li\u003e\n\u003cli\u003eCompat data improvements:\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert proposal\u003c/a\u003e features marked as shipped from Bun 1.2.20\u003c/li\u003e\n\u003cli\u003eAdded Samsung Internet 29 compat data mapping\u003c/li\u003e\n\u003cli\u003eAdded Electron 39 compat data mapping\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e\u003ca href=\"https://github.com/zloirock/core-js/releases/tag/v3.45.0\"\u003e3.45.0 - 2025.08.04\u003c/a\u003e\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003eChanges \u003ca href=\"https://github.com/zloirock/core-js/compare/v3.44.0...v3.45.0\"\u003ev3.44.0...v3.45.0\u003c/a\u003e (70 commits)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-arraybuffer-base64\"\u003e\u003ccode\u003eUint8Array\u003c/code\u003e to / from base64 and hex proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.fromBase64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.fromHex\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.setFromBase64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.setFromHex\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.toBase64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUint8Array.prototype.toHex\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stable ES, \u003ca href=\"https://github.com/tc39/proposals/commit/d41fe182cdb90da3076ab711aae3944ed86bcf18\"\u003eJuly 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ees.\u003c/code\u003e namespace modules, \u003ccode\u003e/es/\u003c/code\u003e and \u003ccode\u003e/stable/\u003c/code\u003e namespaces entries\u003c/li\u003e\n\u003cli\u003eAdded detection of a Webkit bug: \u003ccode\u003eUint8Array\u003c/code\u003e fromBase64 / setFromBase64 does not throw an error on incorrect length of base64 string\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-math-sum\"\u003e\u003ccode\u003eMath.sumPrecise\u003c/code\u003e proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMath.sumPrecise\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stable ES, \u003ca href=\"https://github.com/tc39/proposals/commit/2616413ace9074bfd444adee9501fae4c8d66fcb\"\u003eJuly 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ees.\u003c/code\u003e namespace module, \u003ccode\u003e/es/\u003c/code\u003e and \u003ccode\u003e/stable/\u003c/code\u003e namespaces entries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-iterator-sequencing\"\u003e\u003ccode\u003eIterator\u003c/code\u003e sequencing proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eIterator.concat\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stage 3, \u003ca href=\"https://github.com/tc39/proposals/commit/3eebab0f8594673dd08bc709d68c011016074c2e\"\u003eJuly 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003e/actual/\u003c/code\u003e namespace entries, unconditional forced replacement changed to feature detection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-upsert\"\u003e\u003ccode\u003eMap\u003c/code\u003e upsert proposal\u003c/a\u003e:\n\u003cul\u003e\n\u003cli\u003eBuilt-ins:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMap.prototype.getOrInsert\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMap.prototype.getOrInsertComputed\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eWeakMap.prototype.getOrInsert\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eWeakMap.prototype.getOrInsertComputed\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eMoved to stage 3, \u003ca href=\"https://github.com/tc39/proposals/commit/a9c0dfa4e00ffb69aa4df91d8c0c26b064d67108\"\u003eJuly 2025 TC39 meeting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003e/actual/\u003c/code\u003e namespace entries, unconditional forced replacement changed to feature detection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdded missing dependencies to some entries of static \u003ccode\u003eIterator\u003c/code\u003e methods\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://github.com/tc39/proposal-joint-iteration\"\u003eJoint Iteration proposal\u003c/a\u003e in \u003ccode\u003e/stage/\u003c/code\u003e entries\u003c/li\u003e\n\u003cli\u003eCompat data improvements:\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-arraybuffer-base64\"\u003e\u003ccode\u003eUint8Array\u003c/code\u003e to / from base64 and hex proposal\u003c/a\u003e features marked as \u003ca href=\"https://issues.chromium.org/issues/42204568#comment37\"\u003esupported from V8 ~ Chromium 140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tc39/proposal-arraybuffer-base64\"\u003e\u003ccode\u003eUint8Array.{ fromBase64, prototype.setFromBase64 }\u003c/code\u003e\u003c/a\u003e marked as unsupported in Safari and supported only from Bun 1.2.20 because of a bug: it does not throw an error on incorrect length of base64 string\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e%TypedArray%.prototype.with\u003c/code\u003e marked as fixed in Safari 26.0\u003c/li\u003e\n\u003cli\u003eUpdated Electron 38 compat data mapping\u003c/li\u003e\n\u003cli\u003eAdded \u003ca href=\"https://forums.opera.com/topic/86005/opera-for-android-91\"\u003eOpera Android 91\u003c/a\u003e compat data mapping\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e\u003ca href=\"https://github.com/zloirock/core-js/releases/tag/v3.44.0\"\u003e3.44.0 - 2025.07.07\u003c/a\u003e\u003c/h5\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/a16b86ad8c360cb1a597ca1e6b4a6c7a345cbac8\"\u003e\u003ccode\u003ea16b86a\u003c/code\u003e\u003c/a\u003e v3.45.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/4f9ac04993240b63ab5eecd8c855f7985a142032\"\u003e\u003ccode\u003e4f9ac04\u003c/code\u003e\u003c/a\u003e fix a conflict of native methods from \u003ccode\u003eMap\u003c/code\u003e upsert proposal with polyfilled m...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/149c2f1136debefd149df17ba284402020ab0ac6\"\u003e\u003ccode\u003e149c2f1\u003c/code\u003e\u003c/a\u003e update some examples\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/836cbecc993014238cf59fd51a717145f89acbcf\"\u003e\u003ccode\u003e836cbec\u003c/code\u003e\u003c/a\u003e bump the year\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/d4fa8f0dfbc12bf386ebff5c1efe390723d709c2\"\u003e\u003ccode\u003ed4fa8f0\u003c/code\u003e\u003c/a\u003e enforce \u003ccode\u003ebugs\u003c/code\u003e field in \u003ccode\u003epackage.json\u003c/code\u003e of public packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/79bf81948fb9aa42f617d9e41e9e9e8c60fef411\"\u003e\u003ccode\u003e79bf819\u003c/code\u003e\u003c/a\u003e v3.45.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/e118594dcdc8bf57ce46af15672bdd1973e4faa6\"\u003e\u003ccode\u003ee118594\u003c/code\u003e\u003c/a\u003e move \u003ccode\u003eMap\u003c/code\u003e upsert to stage 3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/d8e524ca54c0e9f00699a18fe7170b8805807319\"\u003e\u003ccode\u003ed8e524c\u003c/code\u003e\u003c/a\u003e move iterator sequencing proposal to stage 3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/8c0bd93564abeb0c449880e74095ecbd2dd97ce8\"\u003e\u003ccode\u003e8c0bd93\u003c/code\u003e\u003c/a\u003e move \u003ccode\u003eUint8Array\u003c/code\u003e to / from base64 and hex to stable ES\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zloirock/core-js/commit/0f1a2d531dd0637fb3c0aacbe590d5b3cad37e11\"\u003e\u003ccode\u003e0f1a2d5\u003c/code\u003e\u003c/a\u003e move \u003ccode\u003eMath.sumPrecise\u003c/code\u003e to stable ES\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/zloirock/core-js/commits/v3.45.1/packages/core-js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/cli` from 19.8.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/cli\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: add TypeScript support and configuration for pnpm scopes by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4544\"\u003econventional-changelog/commitlint#4544\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.8.1...v19.9.0\"\u003e19.9.0\u003c/a\u003e (2025-08-26)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebug(config-pnpm-scopes): migrate package to TypeScript by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4541\"\u003econventional-changelog/commitlint#4541\u003c/a\u003e\n(type got messed up)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChore, docs, etc.\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add a note about configuration under node24 by \u003ca href=\"https://github.com/sodle\"\u003e\u003ccode\u003e@​sodle\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4406\"\u003econventional-changelog/commitlint#4406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add Ubuntu 24.04 and Windows 2025 to CI by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4435\"\u003econventional-changelog/commitlint#4435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: refactor CI setup example of GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4439\"\u003econventional-changelog/commitlint#4439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: use tags for immutable github actions by \u003ca href=\"https://github.com/Fdawgs\"\u003e\u003ccode\u003e@​Fdawgs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4458\"\u003econventional-changelog/commitlint#4458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: migrate \u003ccode\u003eeslint-plugin-import\u003c/code\u003e to \u003ccode\u003eeslint-plugin-import-x\u003c/code\u003e by \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4473\"\u003econventional-changelog/commitlint#4473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add commitlint GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4440\"\u003econventional-changelog/commitlint#4440\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/cli/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/cli\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/cli\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.0.0/@commitlint/cli\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/config-angular` from 19.8.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/config-angular\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-angular/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: add TypeScript support and configuration for pnpm scopes by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4544\"\u003econventional-changelog/commitlint#4544\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.8.1...v19.9.0\"\u003e19.9.0\u003c/a\u003e (2025-08-26)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebug(config-pnpm-scopes): migrate package to TypeScript by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4541\"\u003econventional-changelog/commitlint#4541\u003c/a\u003e\n(type got messed up)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChore, docs, etc.\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add a note about configuration under node24 by \u003ca href=\"https://github.com/sodle\"\u003e\u003ccode\u003e@​sodle\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4406\"\u003econventional-changelog/commitlint#4406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add Ubuntu 24.04 and Windows 2025 to CI by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4435\"\u003econventional-changelog/commitlint#4435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: refactor CI setup example of GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4439\"\u003econventional-changelog/commitlint#4439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: use tags for immutable github actions by \u003ca href=\"https://github.com/Fdawgs\"\u003e\u003ccode\u003e@​Fdawgs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4458\"\u003econventional-changelog/commitlint#4458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: migrate \u003ccode\u003eeslint-plugin-import\u003c/code\u003e to \u003ccode\u003eeslint-plugin-import-x\u003c/code\u003e by \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4473\"\u003econventional-changelog/commitlint#4473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add commitlint GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4440\"\u003econventional-changelog/commitlint#4440\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-angular/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/config-angular\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/config-angular\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.0.0/@commitlint/config-angular\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/config-conventional` from 19.8.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/config-conventional\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: add TypeScript support and configuration for pnpm scopes by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4544\"\u003econventional-changelog/commitlint#4544\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.8.1...v19.9.0\"\u003e19.9.0\u003c/a\u003e (2025-08-26)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebug(config-pnpm-scopes): migrate package to TypeScript by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4541\"\u003econventional-changelog/commitlint#4541\u003c/a\u003e\n(type got messed up)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChore, docs, etc.\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add a note about configuration under node24 by \u003ca href=\"https://github.com/sodle\"\u003e\u003ccode\u003e@​sodle\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4406\"\u003econventional-changelog/commitlint#4406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add Ubuntu 24.04 and Windows 2025 to CI by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4435\"\u003econventional-changelog/commitlint#4435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: refactor CI setup example of GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4439\"\u003econventional-changelog/commitlint#4439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: use tags for immutable github actions by \u003ca href=\"https://github.com/Fdawgs\"\u003e\u003ccode\u003e@​Fdawgs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4458\"\u003econventional-changelog/commitlint#4458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: migrate \u003ccode\u003eeslint-plugin-import\u003c/code\u003e to \u003ccode\u003eeslint-plugin-import-x\u003c/code\u003e by \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4473\"\u003econventional-changelog/commitlint#4473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add commitlint GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4440\"\u003econventional-changelog/commitlint#4440\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-conventional/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/config-conventional\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/config-conventional\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.0.0/@commitlint/config-conventional\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@commitlint/prompt` from 19.8.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/prompt\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(rules)!: make body-max-line-length ignore lines with URLs (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/prompt/issues/4486\"\u003e#4486\u003c/a\u003e) (\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/2f37a886be4b07bcd8e1126cc6a13256e7b6cc37\"\u003e2f37a88\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/issues/4486\"\u003e#4486\u003c/a\u003e by \u003ca href=\"https://github.com/aspiers\"\u003e\u003ccode\u003e@​aspiers\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ewhen lines contain URLs exceeding the maximum\nline length \u003ccode\u003ebody-max-line-length\u003c/code\u003e will be ignored\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003e19.9.1\u003c/a\u003e (2025-08-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: add TypeScript support and configuration for pnpm scopes by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4544\"\u003econventional-changelog/commitlint#4544\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v19.9.0...v19.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev19.9.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.8.1...v19.9.0\"\u003e19.9.0\u003c/a\u003e (2025-08-26)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebug(config-pnpm-scopes): migrate package to TypeScript by \u003ca href=\"https://github.com/alsmadi99\"\u003e\u003ccode\u003e@​alsmadi99\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4541\"\u003econventional-changelog/commitlint#4541\u003c/a\u003e\n(type got messed up)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChore, docs, etc.\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add a note about configuration under node24 by \u003ca href=\"https://github.com/sodle\"\u003e\u003ccode\u003e@​sodle\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4406\"\u003econventional-changelog/commitlint#4406\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add Ubuntu 24.04 and Windows 2025 to CI by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4435\"\u003econventional-changelog/commitlint#4435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: refactor CI setup example of GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4439\"\u003econventional-changelog/commitlint#4439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: use tags for immutable github actions by \u003ca href=\"https://github.com/Fdawgs\"\u003e\u003ccode\u003e@​Fdawgs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4458\"\u003econventional-changelog/commitlint#4458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: migrate \u003ccode\u003eeslint-plugin-import\u003c/code\u003e to \u003ccode\u003eeslint-plugin-import-x\u003c/code\u003e by \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4473\"\u003econventional-changelog/commitlint#4473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add commitlint GitHub Actions by \u003ca href=\"https://github.com/Marukome0743\"\u003e\u003ccode\u003e@​Marukome0743\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4440\"\u003econventional-changelog/commitlint#4440\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/prompt/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/prompt\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-09-25)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/prompt\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/commit/407be6c96b1a108ee012ed5330b0d80a165952d5\"\u003e\u003ccode\u003e407be6c\u003c/code\u003e\u003c/a\u003e v20.0.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.0.0/@commitlint/prompt\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@percy/storybook` from 7.0.0 to 9.0.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/b687687ae84b6ebcfa122bfbc9a50debe0f0d0dc\"\u003e\u003ccode\u003eb687687\u003c/code\u003e\u003c/a\u003e release v9.0.1 (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1202\"\u003e#1202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/ece874ca84adc7148735afc63996510ed5487622\"\u003e\u003ccode\u003eece874c\u003c/code\u003e\u003c/a\u003e release-9.0.1-beta.2 (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1201\"\u003e#1201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/39241270f09757151769ea8bf7244c327f09ecc8\"\u003e\u003ccode\u003e3924127\u003c/code\u003e\u003c/a\u003e Fix: Preserve story state \u0026amp; prevent blank/loader snapshots after reload (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1196\"\u003e#1196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/7c6ec6d04768df4c016373889b75c5ec79c67c9b\"\u003e\u003ccode\u003e7c6ec6d\u003c/code\u003e\u003c/a\u003e release-9.0.1-beta.1 (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1195\"\u003e#1195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/3ebab7684b80b02f9e2f9c241ef2fee10e55d5fb\"\u003e\u003ccode\u003e3ebab76\u003c/code\u003e\u003c/a\u003e Capturing DOM at device height for mobile browsers + Fix for minHeight (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1194\"\u003e#1194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/1b9f8a8a680c825ef02474a3eb4fff1d2a173fde\"\u003e\u003ccode\u003e1b9f8a8\u003c/code\u003e\u003c/a\u003e 🐛  Enhance snapshot processing to manage global state changes and optimize pa...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/8f958fc2f94e09777603ae924746106c4a8db70d\"\u003e\u003ccode\u003e8f958fc\u003c/code\u003e\u003c/a\u003e 📜 Docs update (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1185\"\u003e#1185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/6c468ba6e7f3708f4b6b76e2ad1159f0462f75d6\"\u003e\u003ccode\u003e6c468ba\u003c/code\u003e\u003c/a\u003e Bump version to 9.0.1-beta.0 and update publish tag to beta (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1179\"\u003e#1179\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/246d386e7753f5700b73bc77ddc8f9f51cd81979\"\u003e\u003ccode\u003e246d386\u003c/code\u003e\u003c/a\u003e Refactor snapshot handling to improve error management and processing efficie...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/percy/percy-storybook/commit/3ce5fbee177b9d9ca9ab2141ba6ec1d604f2e5af\"\u003e\u003ccode\u003e3ce5fbe\u003c/code\u003e\u003c/a\u003e release v9.0.0 (\u003ca href=\"https://redirect.github.com/percy/percy-storybook/issues/1178\"\u003e#1178\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/percy/percy-storybook/compare/v7.0.0...v9.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@storybook/addon-a11y` from 9.0.18 to 9.1.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/releases\"\u003e\u003ccode\u003e@​storybook/addon-a11y\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.1.8\u003c/h2\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.7\u003c/h2\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.6\u003c/h2\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.5\u003c/h2\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.4\u003c/h2\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.3\u003c/h2\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMock: Catch errors when transforming preview files - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32216\"\u003e#32216\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Fix version mismatch error in Webpack - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32306\"\u003e#32306\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate traffic coming from error/upgrade links - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32287\"\u003e#32287\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate unattributed traffic from Onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32286\"\u003e#32286\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.2\u003c/h2\u003e\n\u003ch2\u003e9.1.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAddon Docs: Fix Symbol conversion issue in docs page and controls panel - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32220\"\u003e#32220\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Fix \u003ccode\u003eentry.polyfills\u003c/code\u003e undefined error - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32230\"\u003e#32230\u003c/a\u003e, thanks \u003ca href=\"https://github.com/sk-pub\"\u003e\u003ccode\u003e@​sk-pub\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Inherit options from browserTarget - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32108\"\u003e#32108\u003c/a\u003e, thanks \u003ca href=\"https://github.com/gingeekrishna\"\u003e\u003ccode\u003e@​gingeekrishna\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Improve addon detection in automigrations on windows - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31937\"\u003e#31937\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md\"\u003e\u003ccode\u003e@​storybook/addon-a11y\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMock: Catch errors when transforming preview files - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32216\"\u003e#32216\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Fix version mismatch error in Webpack - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32306\"\u003e#32306\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate traffic coming from error/upgrade links - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32287\"\u003e#32287\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate unattributed traffic from Onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32286\"\u003e#32286\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAddon Docs: Fix Symbol conversion issue in docs page and controls panel - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32220\"\u003e#32220\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Fix \u003ccode\u003eentry.polyfills\u003c/code\u003e undefined error - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32230\"\u003e#32230\u003c/a\u003e, thanks \u003ca href=\"https://github.com/sk-pub\"\u003e\u003ccode\u003e@​sk-pub\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Inherit options from browserTarget - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32108\"\u003e#32108\u003c/a\u003e, thanks \u003ca href=\"https://github.com/gingeekrishna\"\u003e\u003ccode\u003e@​gingeekrishna\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Improve addon detection in automigrations on windows - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31937\"\u003e#31937\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Return mocked router instead of actual router in useRouter - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32131\"\u003e#32131\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JulioJ11\"\u003e\u003ccode\u003e@​JulioJ11\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Improve dev cancellation handling - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32218\"\u003e#32218\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Fix throwing in readonly environments - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31785\"\u003e#31785\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eOnboarding: Tweak referral wording in survey - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32185\"\u003e#32185\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/28833d41b8d0e33bdc11244907fa8d14c8ddd1bf\"\u003e\u003ccode\u003e28833d4\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.7\u0026quot; to \u0026quot;9.1.8\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/006b304feb4cb0d2fd1408505ebeb5aababb0aad\"\u003e\u003ccode\u003e006b304\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.6\u0026quot; to \u0026quot;9.1.7\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/304edc38c499434140d712d8416749e75efe5dd1\"\u003e\u003ccode\u003e304edc3\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.5\u0026quot; to \u0026quot;9.1.6\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/56c04b001ee45f036ec5f1131fc8fbc553fad35d\"\u003e\u003ccode\u003e56c04b0\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.4\u0026quot; to \u0026quot;9.1.5\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/9f02684ad16e985bc5555f2e4ff4b37b1eb0c1ea\"\u003e\u003ccode\u003e9f02684\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.3\u0026quot; to \u0026quot;9.1.4\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/ce3915727c3a42d6107953b6b65f6008d704dd3d\"\u003e\u003ccode\u003ece39157\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.2\u0026quot; to \u0026quot;9.1.3\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/730bbf04edbd06d71c22959cf9c6902f98ba62a2\"\u003e\u003ccode\u003e730bbf0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y/issues/32284\"\u003e#32284\u003c/a\u003e from storybookjs/shilman/package-json-keywords\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/2bae930c307c0dea76060040deb4ca2a597c9e74\"\u003e\u003ccode\u003e2bae930\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y/issues/32283\"\u003e#32283\u003c/a\u003e from storybookjs/shilman/readme-utm-params\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/99c205c4fcccecfed1939c49cb1778f5474a3bdd\"\u003e\u003ccode\u003e99c205c\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.1\u0026quot; to \u0026quot;9.1.2\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/933b62649c9175803030ec9fbf7ada2123ba61dc\"\u003e\u003ccode\u003e933b626\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/a11y/issues/32220\"\u003e#32220\u003c/a\u003e from storybookjs/yann/fix-jsx-issue-2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/storybookjs/storybook/commits/v9.1.8/code/addons/a11y\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@storybook/addon-docs` from 9.0.18 to 9.1.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/releases\"\u003e\u003ccode\u003e@​storybook/addon-docs\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.1.8\u003c/h2\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.7\u003c/h2\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.6\u003c/h2\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.5\u003c/h2\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.4\u003c/h2\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.3\u003c/h2\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMock: Catch errors when transforming preview files - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32216\"\u003e#32216\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Fix version mismatch error in Webpack - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32306\"\u003e#32306\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate traffic coming from error/upgrade links - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32287\"\u003e#32287\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate unattributed traffic from Onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32286\"\u003e#32286\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.2\u003c/h2\u003e\n\u003ch2\u003e9.1.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAddon Docs: Fix Symbol conversion issue in docs page and controls panel - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32220\"\u003e#32220\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Fix \u003ccode\u003eentry.polyfills\u003c/code\u003e undefined error - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32230\"\u003e#32230\u003c/a\u003e, thanks \u003ca href=\"https://github.com/sk-pub\"\u003e\u003ccode\u003e@​sk-pub\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Inherit options from browserTarget - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32108\"\u003e#32108\u003c/a\u003e, thanks \u003ca href=\"https://github.com/gingeekrishna\"\u003e\u003ccode\u003e@​gingeekrishna\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Improve addon detection in automigrations on windows - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31937\"\u003e#31937\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md\"\u003e\u003ccode\u003e@​storybook/addon-docs\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e#32534\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies: Update \u003ccode\u003evite-plugin-storybook-nextjs\u003c/code\u003e to 2.0.7 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32331\"\u003e#32331\u003c/a\u003e, thanks \u003ca href=\"https://github.com/k35o\"\u003e\u003ccode\u003e@​k35o\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact: Preserve \u003ccode\u003e@ts-expect-error\u003c/code\u003e in preview - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32442\"\u003e#32442\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Queue error reporting \u0026amp; filter browser-extention - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32499\"\u003e#32499\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Capture the version specifier used in \u003ccode\u003ecreate-storybook\u003c/code\u003e - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32344\"\u003e#32344\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eInstrumenter: Fix userEvent.type performance regression - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32439\"\u003e#32439\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eReact Native Web: Fix RNW peer dependency version - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32438\"\u003e#32438\u003c/a\u003e, thanks \u003ca href=\"https://github.com/dannyhw\"\u003e\u003ccode\u003e@​dannyhw\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Record known CLI integrations - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32448\"\u003e#32448\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCSF: Support \u003ccode\u003esatisfies x as y\u003c/code\u003e syntax - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32169\"\u003e#32169\u003c/a\u003e, thanks \u003ca href=\"https://github.com/diagramatics\"\u003e\u003ccode\u003e@​diagramatics\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVitest addon: Handle Playwright installation errors gracefully - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32329\"\u003e#32329\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAngular: Properly merge builder options and browserTarget options - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32272\"\u003e#32272\u003c/a\u003e, thanks \u003ca href=\"https://github.com/kroeder\"\u003e\u003ccode\u003e@​kroeder\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Optimize bundlesize, by reusing internal/babel in mocking-utils - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32350\"\u003e#32350\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ndelangen\"\u003e\u003ccode\u003e@​ndelangen\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte \u0026amp; Vue: Add framework-specific \u003ccode\u003edocgen\u003c/code\u003e option to disable docgen processing - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32319\"\u003e#32319\u003c/a\u003e, thanks \u003ca href=\"https://github.com/copilot-swe-agent\"\u003e\u003ccode\u003e@​copilot-swe-agent\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSvelte: Support \u003ccode\u003e@sveltejs/vite-plugin-svelte\u003c/code\u003e v6 - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32320\"\u003e#32320\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocs: Move button in ArgsTable heading to fix screenreader announcements - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32238\"\u003e#32238\u003c/a\u003e, thanks \u003ca href=\"https://github.com/Sidnioulz\"\u003e\u003ccode\u003e@​Sidnioulz\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMock: Catch errors when transforming preview files - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32216\"\u003e#32216\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Fix version mismatch error in Webpack - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32306\"\u003e#32306\u003c/a\u003e, thanks \u003ca href=\"https://github.com/valentinpalkovic\"\u003e\u003ccode\u003e@​valentinpalkovic\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate traffic coming from error/upgrade links - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32287\"\u003e#32287\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Disambiguate unattributed traffic from Onboarding - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32286\"\u003e#32286\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAddon Docs: Fix Symbol conversion issue in docs page and controls panel - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32220\"\u003e#32220\u003c/a\u003e, thanks \u003ca href=\"https://github.com/yannbf\"\u003e\u003ccode\u003e@​yannbf\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Fix \u003ccode\u003eentry.polyfills\u003c/code\u003e undefined error - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32230\"\u003e#32230\u003c/a\u003e, thanks \u003ca href=\"https://github.com/sk-pub\"\u003e\u003ccode\u003e@​sk-pub\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAngular: Inherit options from browserTarget - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32108\"\u003e#32108\u003c/a\u003e, thanks \u003ca href=\"https://github.com/gingeekrishna\"\u003e\u003ccode\u003e@​gingeekrishna\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eCore: Improve addon detection in automigrations on windows - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31937\"\u003e#31937\u003c/a\u003e, thanks \u003ca href=\"https://github.com/mrginglymus\"\u003e\u003ccode\u003e@​mrginglymus\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eNext.js: Return mocked router instead of actual router in useRouter - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32131\"\u003e#32131\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JulioJ11\"\u003e\u003ccode\u003e@​JulioJ11\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eTelemetry: Improve dev cancellation handling - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32218\"\u003e#32218\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e9.1.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Fix throwing in readonly environments - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/31785\"\u003e#31785\u003c/a\u003e, thanks \u003ca href=\"https://github.com/JReinhold\"\u003e\u003ccode\u003e@​JReinhold\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eOnboarding: Tweak referral wording in survey - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32185\"\u003e#32185\u003c/a\u003e, thanks \u003ca href=\"https://github.com/shilman\"\u003e\u003ccode\u003e@​shilman\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/28833d41b8d0e33bdc11244907fa8d14c8ddd1bf\"\u003e\u003ccode\u003e28833d4\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.7\u0026quot; to \u0026quot;9.1.8\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/006b304feb4cb0d2fd1408505ebeb5aababb0aad\"\u003e\u003ccode\u003e006b304\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.6\u0026quot; to \u0026quot;9.1.7\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/304edc38c499434140d712d8416749e75efe5dd1\"\u003e\u003ccode\u003e304edc3\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.5\u0026quot; to \u0026quot;9.1.6\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/56c04b001ee45f036ec5f1131fc8fbc553fad35d\"\u003e\u003ccode\u003e56c04b0\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.4\u0026quot; to \u0026quot;9.1.5\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/9f02684ad16e985bc5555f2e4ff4b37b1eb0c1ea\"\u003e\u003ccode\u003e9f02684\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.3\u0026quot; to \u0026quot;9.1.4\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/ce3915727c3a42d6107953b6b65f6008d704dd3d\"\u003e\u003ccode\u003ece39157\u003c/code\u003e\u003c/a\u003e Bump version from \u0026quot;9.1.2\u0026quot; to \u0026quot;9.1.3\u0026quot; [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/730bbf04edbd06d71c22959cf9c6902f98ba62a2\"\u003e\u003ccode\u003e730bbf0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/docs/issues/32284\"\u003e#32284\u003c/a\u003e from storybookjs/shilman/package-json-keywords\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/0f86613a927a2eb04602558fce3a8b0f90ee51c3\"\u003e\u003ccode\u003e0f86613\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/docs/issues/32287\"\u003e#32287\u003c/a\u003e from storybookjs/shilman/error-utm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/2bae930c307c0dea76060040deb4ca2a597c9e74\"\u003e\u003ccode\u003e2bae930\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/docs/issues/32283\"\u003e#32283\u003c/a\u003e from storybookjs/shilman/readme-utm-params\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/storybookjs/storybook/commit/f8ff03a47d479fbc9807f26682c8dcbb944f59cc\"\u003e\u003ccode\u003ef8ff03a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://github.com/storybookjs/storybook/tree/HEAD/code/addons/docs/issues/32238\"\u003e#32238\u003c/a\u003e from storybookjs/sidnioulz/issue-31436-table\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/storybookjs/storybook/commits/v9.1.8/code/addons/docs\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@storybook/angular` from 9.0.18 to 9.1.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/storybookjs/storybook/releases\"\u003e\u003ccode\u003e@​storybook/angular\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.1.8\u003c/h2\u003e\n\u003ch2\u003e9.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreactVite: Add \u003ccode\u003enode\u003c/code\u003e entry point - \u003ca href=\"https://redirect.github.com/storybookjs/storybook/pull/32534\"\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/Legal-and-General/canopy/pull/1585","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Legal-and-General%2Fcanopy/issues/1585","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1585/packages"}},{"old_version":"19.0.1","new_version":"20.0.0","update_type":"major","path":"/generators/angular/resources","pr_created_at":"2025-09-17T10:39:26.000Z","version_change":"19.0.1 → 20.0.0","issue":{"uuid":"2836110672","node_id":"PR_kwDOPxlS986pC51Q","number":77,"state":"open","title":"Bump the angular group in /generators/angular/resources with 13 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-17T10:39:26.000Z","updated_at":"2025-09-17T10:39:27.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"angular","update_count":13,"packages":[{"name":"@angular/common","old_version":"19.2.9","new_version":"20.3.0","repository_url":"https://github.com/angular/angular"},{"name":"@fortawesome/angular-fontawesome","old_version":"1.0.0","new_version":"3.0.0","repository_url":"https://github.com/FortAwesome/angular-fontawesome"},{"name":"@ng-bootstrap/ng-bootstrap","old_version":"18.0.0","new_version":"19.0.1","repository_url":"https://github.com/ng-bootstrap/ng-bootstrap"},{"name":"ngx-cookie-service","old_version":"19.1.2","new_version":"20.1.0","repository_url":"https://github.com/stevermeister/ngx-cookie-service"},{"name":"ngx-infinite-scroll","old_version":"19.0.0","new_version":"20.0.0","repository_url":"https://github.com/orizens/ngx-infinite-scroll"},{"name":"zone.js","old_version":"0.15.0","new_version":"0.15.1","repository_url":"https://github.com/angular/angular"},{"name":"@angular-architects/module-federation","old_version":"19.0.3","new_version":"20.0.0","repository_url":"https://github.com/angular-architects/module-federation-plugin"},{"name":"@angular-architects/module-federation-runtime","old_version":"19.0.3","new_version":"20.0.0"},{"name":"@angular-builders/custom-esbuild","old_version":"19.1.0","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/custom-webpack","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular/cli","old_version":"19.2.10","new_version":"20.3.1","repository_url":"https://github.com/angular/angular-cli"},{"name":"typescript","old_version":"5.8.3","new_version":"5.9.2","repository_url":"https://github.com/microsoft/TypeScript"}],"path":"/generators/angular/resources","ecosystem":"npm"},"body":"Bumps the angular group in /generators/angular/resources with 13 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `19.2.9` | `20.3.0` |\n| [@fortawesome/angular-fontawesome](https://github.com/FortAwesome/angular-fontawesome) | `1.0.0` | `3.0.0` |\n| [@ng-bootstrap/ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap) | `18.0.0` | `19.0.1` |\n| [ngx-cookie-service](https://github.com/stevermeister/ngx-cookie-service) | `19.1.2` | `20.1.0` |\n| [ngx-infinite-scroll](https://github.com/orizens/ngx-infinite-scroll) | `19.0.0` | `20.0.0` |\n| [zone.js](https://github.com/angular/angular/tree/HEAD/packages/zone.js) | `0.15.0` | `0.15.1` |\n| [@angular-architects/module-federation](https://github.com/angular-architects/module-federation-plugin) | `19.0.3` | `20.0.0` |\n| @angular-architects/module-federation-runtime | `19.0.3` | `20.0.0` |\n| [@angular-builders/custom-esbuild](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-esbuild) | `19.1.0` | `20.0.0` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `19.0.1` | `20.0.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `19.2.10` | `20.3.1` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.8.3` | `5.9.2` |\n\nUpdates `@angular/common` from 19.2.9 to 20.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.0\u003c/h2\u003e\n\u003ch3\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3f808d7c8cc59a4fd69f2e4b8d21a6510efa046\"\u003e\u003cimg src=\"https://img.shields.io/badge/a3f808d7c8-fix-green\" alt=\"fix - a3f808d7c8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove refresh button from transfer state tab (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63592\"\u003e#63592\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6117ccee2e1507fb00549cd70e064282645db803\"\u003e\u003cimg src=\"https://img.shields.io/badge/6117ccee2e-feat-blue\" alt=\"feat - 6117ccee2e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eintroduce \u003ccode\u003eBootstrapContext\u003c/code\u003e for improved server bootstrapping (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63636\"\u003e#63636\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe server-side bootstrapping process has been changed to eliminate the reliance on a global platform injector.\u003c/p\u003e\n\u003cp\u003eBefore:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = () =\u0026gt; bootstrapApplication(AppComponent, config);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eAfter:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = (context: BootstrapContext) =\u0026gt;\n  bootstrapApplication(AppComponent, config, context);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eA schematic is provided to automatically update \u003ccode\u003emain.server.ts\u003c/code\u003e files to pass the \u003ccode\u003eBootstrapContext\u003c/code\u003e to the \u003ccode\u003ebootstrapApplication\u003c/code\u003e call.\u003c/p\u003e\n\u003cp\u003eIn addition, \u003ccode\u003egetPlatform()\u003c/code\u003e and \u003ccode\u003edestroyPlatform()\u003c/code\u003e will now return \u003ccode\u003enull\u003c/code\u003e and be a no-op respectively when running in a server environment.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor more information please see: \u003ca href=\"https://github.com/angular/angular/security/advisories/GHSA-68x2-mx4q-78m7\"\u003ehttps://github.com/angular/angular/security/advisories/GHSA-68x2-mx4q-78m7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e20.3.0-rc.0\u003c/h2\u003e\n\u003ch3\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3f808d7c8cc59a4fd69f2e4b8d21a6510efa046\"\u003e\u003cimg src=\"https://img.shields.io/badge/a3f808d7c8-fix-green\" alt=\"fix - a3f808d7c8\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eremove refresh button from transfer state tab (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63592\"\u003e#63592\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6117ccee2e1507fb00549cd70e064282645db803\"\u003e\u003cimg src=\"https://img.shields.io/badge/6117ccee2e-feat-blue\" alt=\"feat - 6117ccee2e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eintroduce \u003ccode\u003eBootstrapContext\u003c/code\u003e for improved server bootstrapping (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63636\"\u003e#63636\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe server-side bootstrapping process has been changed to eliminate the reliance on a global platform injector.\u003c/p\u003e\n\u003cp\u003eBefore:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = () =\u0026gt; bootstrapApplication(AppComponent, config);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eAfter:\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.0 (2025-09-10)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe server-side bootstrapping process has been changed to eliminate the reliance on a global platform injector.\u003c/p\u003e\n\u003cp\u003eBefore:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = () =\u0026gt; bootstrapApplication(AppComponent, config);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eAfter:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = (context: BootstrapContext) =\u0026gt;\n  bootstrapApplication(AppComponent, config, context);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eA schematic is provided to automatically update \u003ccode\u003emain.server.ts\u003c/code\u003e files to pass the \u003ccode\u003eBootstrapContext\u003c/code\u003e to the \u003ccode\u003ebootstrapApplication\u003c/code\u003e call.\u003c/p\u003e\n\u003cp\u003eIn addition, \u003ccode\u003egetPlatform()\u003c/code\u003e and \u003ccode\u003edestroyPlatform()\u003c/code\u003e will now return \u003ccode\u003enull\u003c/code\u003e and be a no-op respectively when running in a server environment.\u003c/p\u003e\n\u003cp\u003e(cherry picked from commit 8bf80c9d2314b4f2bcf3df83ae01552a6fc49834)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a3f808d7c8cc59a4fd69f2e4b8d21a6510efa046\"\u003ea3f808d7c8\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eremove refresh button from transfer state tab (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63592\"\u003e#63592\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6117ccee2e1507fb00549cd70e064282645db803\"\u003e6117ccee2e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eintroduce \u003ccode\u003eBootstrapContext\u003c/code\u003e for improved server bootstrapping (\u003ca href=\"https://redirect.github.com/angular/angular/pull/63636\"\u003e#63636\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003ecommon\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e(test only) - \u003ccode\u003eTestBed\u003c/code\u003e now provides a fake \u003ccode\u003ePlatformLocation\u003c/code\u003e\nimplementation that supports the Navigation API. This may break some\ntests, though we have not observed any failures internally. You can revert to the\nold default for \u003ccode\u003eTestBed\u003c/code\u003e by providing the \u003ccode\u003eMockPlatformLocation\u003c/code\u003e from\n\u003ccode\u003e@angular/common/testing\u003c/code\u003e in your providers:\n\u003ccode\u003e{provide: PlatformLocation, useClass: MockPlatformLocation}\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e(test only) - Using \u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e in the\nTestBed providers would previously prevent \u003ccode\u003eTestBed\u003c/code\u003e from rethrowing\nerrors as it should. Errors in the test will now be rethrown, regardless\nof the usage of \u003ccode\u003eprovideZoneChangeDetection\u003c/code\u003e. Tests should be adjusted to\nprevent or account for these errors. As in previous major versions,\nthis behavior can be disabled with \u003ccode\u003erethrowApplicationErrors: false\u003c/code\u003e in\n\u003ccode\u003econfigureTestingModule\u003c/code\u003e as a last resort.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7a7725ee4c91641ef92b19f0fd35dc0fc000bc84\"\u003e\u003ccode\u003e7a7725e\u003c/code\u003e\u003c/a\u003e refactor(core): Update tests for zoneless by default (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63672\"\u003e#63672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b549cd28ae78bff43d9a1c8e576ed9ca480174c4\"\u003e\u003ccode\u003eb549cd2\u003c/code\u003e\u003c/a\u003e refactor(bazel): reduce build deps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63348\"\u003e#63348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e8d9bc511966a91bd6fbac912d5809f027525c2f\"\u003e\u003ccode\u003ee8d9bc5\u003c/code\u003e\u003c/a\u003e refactor(http): rework the \u003ccode\u003eHttpEvent\u003c/code\u003e union to improve narrowing. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63267\"\u003e#63267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/705b94bd21f3f3f3dd8f10881a90bfae049c1a07\"\u003e\u003ccode\u003e705b94b\u003c/code\u003e\u003c/a\u003e refactor: remove TODOs which have been corrected (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63421\"\u003e#63421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/9a27c5befb676e894c522392e2c06b4f8fdca25a\"\u003e\u003ccode\u003e9a27c5b\u003c/code\u003e\u003c/a\u003e build: rename defaults2.bzl to defaults.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63384\"\u003e#63384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/10b0927e15bb6158a7262b0f2acd310836c96ca7\"\u003e\u003ccode\u003e10b0927\u003c/code\u003e\u003c/a\u003e refactor: various build and import specificer fixes for strict deps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63324\"\u003e#63324\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/38b9b79c29f7ef52c1b33c5b4997e11a4d2c20bc\"\u003e\u003ccode\u003e38b9b79\u003c/code\u003e\u003c/a\u003e build: move from using WORKSPACE to MODULE.bazel (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63249\"\u003e#63249\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ecc86e298689bb20e292d2fe720a36c7139c4ff4\"\u003e\u003ccode\u003eecc86e2\u003c/code\u003e\u003c/a\u003e build: explicitly include types for locales in \u003ccode\u003e@​angular/common/\u003c/code\u003elocales (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/63030\"\u003e#63030\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/fa8d8b8396c9992d25a2e0256ae895ca7c86ad66\"\u003e\u003ccode\u003efa8d8b8\u003c/code\u003e\u003c/a\u003e build: migrate all npm packages to use new rules_js based npm_package rule (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e5d6fb5825d5e1b76d73d5c1c64c9986cfb02874\"\u003e\u003ccode\u003ee5d6fb5\u003c/code\u003e\u003c/a\u003e fix(http): Reset headers, progress, and statusCode when using \u003ccode\u003eset()\u003c/code\u003e in `Htt...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.3.0/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@fortawesome/angular-fontawesome` from 1.0.0 to 3.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.0.0\u003c/h2\u003e\n\u003cp\u003eThe release should be backwards compatible with 2.x, but since we bump the major dependency on \u003ccode\u003e@fortawesome/fontawesome-svg-core\u003c/code\u003e to 7.0.0, it is a major release. Please open an issue if you find any incompatibilities.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Font Awesome 7.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReverted the change from 2.0.0 making the \u003ccode\u003eicon\u003c/code\u003e property in \u003ccode\u003efa-icon\u003c/code\u003e and \u003ccode\u003efa-duotone-icon\u003c/code\u003e components required at compile-time.\u003c/li\u003e\n\u003cli\u003eUpdate documentation to use self-closing tags for \u003ccode\u003efa-icon\u003c/code\u003e and \u003ccode\u003efa-duotone-icon\u003c/code\u003e components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestored possibility to set inputs to \u003ccode\u003eundefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.0\u003c/h2\u003e\n\u003cp\u003eConverted all library internal component implementation to use reactive Signal APIs.\u003c/p\u003e\n\u003cp\u003eMake sure to check \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/UPGRADING.md\"\u003eupgrade instructions\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 20.\u003c/li\u003e\n\u003cli\u003eDocumentation on changes in Programmatic API.\u003c/li\u003e\n\u003cli\u003eDocumentation for upgrading 1.0.0 to 2.0.0\u003c/li\u003e\n\u003cli\u003eUpdated code to use signal APIs like signal, computed, effect, input, model.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003echangeDetection: ChangeDetectionStrategy.OnPush\u003c/code\u003e 🚀 for all components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated the \u003ccode\u003erender\u003c/code\u003e function from the \u003ccode\u003eFaIconComponent\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eProgrammatic API has changed, \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/docs/usage/features.md#programmatic-api\"\u003eplease refer here\u003c/a\u003e and migration guide \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/HEAD/docs/upgrading/1.0.0-2.0.0.md\"\u003e1.0.0 to 2.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/3.0.0\"\u003e3.0.0\u003c/a\u003e (2025-08-03)\u003c/h2\u003e\n\u003cp\u003eThe release should be backwards compatible with 2.x, but since we bump the major dependency on \u003ccode\u003e@fortawesome/fontawesome-svg-core\u003c/code\u003e to 7.0.0, it is a major release. Please open an issue if you find any incompatibilities.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Font Awesome 7.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReverted the change from 2.0.0 making the \u003ccode\u003eicon\u003c/code\u003e property in \u003ccode\u003efa-icon\u003c/code\u003e and \u003ccode\u003efa-duotone-icon\u003c/code\u003e components required at compile-time.\u003c/li\u003e\n\u003cli\u003eUpdate documentation to use self-closing tags for \u003ccode\u003efa-icon\u003c/code\u003e and \u003ccode\u003efa-duotone-icon\u003c/code\u003e components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/2.0.1\"\u003e2.0.1\u003c/a\u003e (2025-06-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestored possibility to set inputs to \u003ccode\u003eundefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/2.0.0\"\u003e2.0.0\u003c/a\u003e (2025-05-31)\u003c/h2\u003e\n\u003cp\u003eConverted all library internal component implementation to use reactive Signal APIs.\u003c/p\u003e\n\u003cp\u003eMake sure to check \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/UPGRADING.md\"\u003eupgrade instructions\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 20.\u003c/li\u003e\n\u003cli\u003eDocumentation on changes in Programmatic API.\u003c/li\u003e\n\u003cli\u003eDocumentation for upgrading 1.0.0 to 2.0.0\u003c/li\u003e\n\u003cli\u003eUpdated code to use signal APIs like signal, computed, effect, input, model.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003echangeDetection: ChangeDetectionStrategy.OnPush\u003c/code\u003e 🚀 for all components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated the \u003ccode\u003erender\u003c/code\u003e function from the \u003ccode\u003eFaIconComponent\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eProgrammatic API has changed, \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/docs/usage/features.md#programmatic-api\"\u003eplease refer here\u003c/a\u003e and migration guide \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/docs/upgrading/1.0.0-2.0.0.md\"\u003e1.0.0 to 2.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/993769e7f6aa3a4b612cf53d7afe68b3d45f5e4f\"\u003e\u003ccode\u003e993769e\u003c/code\u003e\u003c/a\u003e Release 3.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/21513a97999df5b970bada3ebf648299689da450\"\u003e\u003ccode\u003e21513a9\u003c/code\u003e\u003c/a\u003e Convert most FontAwesome elements to self-closing tags (\u003ca href=\"https://redirect.github.com/FortAwesome/angular-fontawesome/issues/477\"\u003e#477\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/11dfd8fa5969b785f1f6d22176b0b5d92fbf6a32\"\u003e\u003ccode\u003e11dfd8f\u003c/code\u003e\u003c/a\u003e chore(icon): remove required constraint on icon input to support dynamic assi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/5e961d9eab2f27cb6626840047dd7f285f1150e9\"\u003e\u003ccode\u003e5e961d9\u003c/code\u003e\u003c/a\u003e remove v7 tests, keep v5 and v6 compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/2cc834f3835c68c8b1b848e220d9ae7aa2ffb4d1\"\u003e\u003ccode\u003e2cc834f\u003c/code\u003e\u003c/a\u003e Improve title accessibility test for FaIconComponent to accommodate FontAweso...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/bd768506faf898bf8d9199670fce27aec4a309c5\"\u003e\u003ccode\u003ebd76850\u003c/code\u003e\u003c/a\u003e Enhance accessibility tests for FaIconComponent by verifying title attribute ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/d1a3c6f0bf7cb9243318b855323c136b26f1a412\"\u003e\u003ccode\u003ed1a3c6f\u003c/code\u003e\u003c/a\u003e Update FontAwesome package versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/03f944aab6a887354540139dfc7a3cfdc2cf377c\"\u003e\u003ccode\u003e03f944a\u003c/code\u003e\u003c/a\u003e Comment out test for \u0026lt;title\u0026gt; element rendering\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/49059c71754b6d225ede5db3317689a19c416042\"\u003e\u003ccode\u003e49059c7\u003c/code\u003e\u003c/a\u003e Fix minor formatting issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/9965588f3d58b723135a81ad8823ec6d281d79f8\"\u003e\u003ccode\u003e9965588\u003c/code\u003e\u003c/a\u003e Update docs and schema for Font Awesome 7 support\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/compare/1.0.0...3.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ng-bootstrap/ng-bootstrap` from 18.0.0 to 19.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/releases\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.0.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.0...19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-07-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etoast:\u003c/strong\u003e missing export of \u003ccode\u003eNgbToastOptions\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e6b26ef3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epositioning:\u003c/strong\u003e missing export of \u003ccode\u003ePlacementArray\u003c/code\u003e type (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e) (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003ea4e94a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e missing export of \u003ccode\u003eDayTemplateContext\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e1b90da5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e20.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e tooltip created after view destroyed (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003ed9c96aa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.0-rc.0\u003c/h2\u003e\n\u003cp\u003eThis release candidate version bumps minimum required versions to Angular 20.0.0\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/blob/master/CHANGELOG.md\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.0...19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-07-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etoast:\u003c/strong\u003e missing export of \u003ccode\u003eNgbToastOptions\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e6b26ef3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epositioning:\u003c/strong\u003e missing export of \u003ccode\u003ePlacementArray\u003c/code\u003e type (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e) (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003ea4e94a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e missing export of \u003ccode\u003eDayTemplateContext\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e1b90da5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e20.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e tooltip created after view destroyed (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003ed9c96aa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/b117049a0f46998703c296150a03e7b14a1ca6d9\"\u003e\u003ccode\u003eb117049\u003c/code\u003e\u003c/a\u003e 19.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003e\u003ccode\u003ea4e94a3\u003c/code\u003e\u003c/a\u003e fix(types): export PlacementArray in main index (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/db98bf0e2be8c77e46b77b6f304f051ec391ef98\"\u003e\u003ccode\u003edb98bf0\u003c/code\u003e\u003c/a\u003e demo: add clipboard button functionality and relevant styling (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e\u003ccode\u003e1b90da5\u003c/code\u003e\u003c/a\u003e feat(datepicker): export DayTemplateContext\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e\u003ccode\u003e6b26ef3\u003c/code\u003e\u003c/a\u003e fix(toast): missing export of NgbToastOptions interface\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/2704265b58621bca48f7ca2926113a18cf15dd5c\"\u003e\u003ccode\u003e2704265\u003c/code\u003e\u003c/a\u003e docs: release 19.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/3dec2a2da5f598968ce532e094305456e4bac6e3\"\u003e\u003ccode\u003e3dec2a2\u003c/code\u003e\u003c/a\u003e docs: add release 18 in demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/622ba01aaf6ad2dfad9e121480c9d731b8e2efa9\"\u003e\u003ccode\u003e622ba01\u003c/code\u003e\u003c/a\u003e docs: update README adding 19.0.0 info\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003e\u003ccode\u003ed9c96aa\u003c/code\u003e\u003c/a\u003e fix(tooltip): tooltip created after view destroyed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a6635ce9f8244ee615e93caf739a0b290aa2895e\"\u003e\u003ccode\u003ea6635ce\u003c/code\u003e\u003c/a\u003e demo: bump bootstrap to 5.3.6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-cookie-service` from 19.1.2 to 20.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/releases\"\u003engx-cookie-service's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(package): add missing newline at end of file in package.json by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/357\"\u003estevermeister/ngx-cookie-service#357\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(ssr-cookie): implement improved cookie retrieval from request by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/362\"\u003estevermeister/ngx-cookie-service#362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v20.0.1...v20.1.0\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v20.0.1...v20.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e20.0.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(package): update version to 20.0.0 for ngx-cookie-service and ng… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/354\"\u003estevermeister/ngx-cookie-service#354\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChange peer dependencies by \u003ca href=\"https://github.com/sokheang-dev\"\u003e\u003ccode\u003e@​sokheang-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/356\"\u003estevermeister/ngx-cookie-service#356\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sokheang-dev\"\u003e\u003ccode\u003e@​sokheang-dev\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/356\"\u003estevermeister/ngx-cookie-service#356\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v20.0.0...v20.0.1\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v20.0.0...v20.0.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(core): adds angular 20 support by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/353\"\u003estevermeister/ngx-cookie-service#353\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.5...v20.0.0\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.5...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: update Node.js version to 20 and upgrade action versions in CI… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/351\"\u003estevermeister/ngx-cookie-service#351\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: migrate tests from Jest to Jasmine and update related configurations by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/352\"\u003estevermeister/ngx-cookie-service#352\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.4...v19.1.5\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.4...v19.1.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(core): revert-replace headers.get('cookie') with headers.cookie by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/348\"\u003estevermeister/ngx-cookie-service#348\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.3...v19.1.4\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.3...v19.1.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(package): bump version to 19.1.2 for ngx-cookie-service and ngx… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/344\"\u003estevermeister/ngx-cookie-service#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(core): replace headers.get('cookie') with headers.cookie by \u003ca href=\"https://github.com/mmart1n\"\u003e\u003ccode\u003e@​mmart1n\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/347\"\u003estevermeister/ngx-cookie-service#347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mmart1n\"\u003e\u003ccode\u003e@​mmart1n\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/347\"\u003estevermeister/ngx-cookie-service#347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v19.1.3\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v19.1.3\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/c7524b46127f7b6bd4ab30cd87514520e352d743\"\u003e\u003ccode\u003ec7524b4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/362\"\u003e#362\u003c/a\u003e from stevermeister/development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/74f2492ab3ab1269cb6f0bf672586bf71d4f4957\"\u003e\u003ccode\u003e74f2492\u003c/code\u003e\u003c/a\u003e chore(package): update version to 20.1.0 for ngx-cookie-service and ngx-cooki...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/1252ce74c9d3c7a20868ecf08ec90a7901b17fe3\"\u003e\u003ccode\u003e1252ce7\u003c/code\u003e\u003c/a\u003e refactor(ssr-cookie): simplify cookie retrieval logic in getRequestCookies me...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/11fa2366d1f302ce20179ed80d69db6ea4e5a051\"\u003e\u003ccode\u003e11fa236\u003c/code\u003e\u003c/a\u003e feat(ssr-cookie): implement getRequestCookies method for improved cookie retr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/fb2802375b61d4d3277c9b2014fbc3c5e07132e7\"\u003e\u003ccode\u003efb28023\u003c/code\u003e\u003c/a\u003e feat(package): update version to 20.0.1 for ngx-cookie-service and ngx-cookie...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/99c84bf3b9139336d7acd6551e47c242c6858519\"\u003e\u003ccode\u003e99c84bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/357\"\u003e#357\u003c/a\u003e from stevermeister/development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/559c0dbe29faa20ee95855ad9e59fc09fa22fecf\"\u003e\u003ccode\u003e559c0db\u003c/code\u003e\u003c/a\u003e fix(package): add missing newline at end of file in package.json\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/0771c9290123eafa0cb35a2802a266ac32bd0914\"\u003e\u003ccode\u003e0771c92\u003c/code\u003e\u003c/a\u003e Change peer dependencies (\u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/356\"\u003e#356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/4060892b99ea59f7c6bca67e6c6e32f5085dddac\"\u003e\u003ccode\u003e4060892\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/354\"\u003e#354\u003c/a\u003e from stevermeister/development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/23eb206dd8634f93e7b0a35bc77c544f9e26572d\"\u003e\u003ccode\u003e23eb206\u003c/code\u003e\u003c/a\u003e feat(package): update version to 20.0.0 for ngx-cookie-service and ngx-cookie...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v20.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-infinite-scroll` from 19.0.0 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/orizens/ngx-infinite-scroll/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zone.js` from 0.15.0 to 0.15.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/packages/zone.js/CHANGELOG.md\"\u003ezone.js's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/angular/angular/compare/zone.js-0.15.0...zone.js-0.15.1\"\u003e0.15.1\u003c/a\u003e (2025-05-22)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ezone.js:\u003c/strong\u003e classes that extend Error should retain cause property (\u003ca href=\"https://redirect.github.com/angular/angular/issues/61599\"\u003e#61599\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/ad8931cb4968b2bd25b05dcd3d856ec32e4d7145\"\u003ead8931c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ezone.js:\u003c/strong\u003e more robust check for promise-like objects (\u003ca href=\"https://redirect.github.com/angular/angular/issues/57388\"\u003e#57388\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/e608e6cfbbc9fba7c74bfef72f102a502e951e6c\"\u003ee608e6c\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/angular/angular/issues/57385\"\u003e#57385\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ezone.js:\u003c/strong\u003e remove \u003ccode\u003eabort\u003c/code\u003e listener once fetch is settled (\u003ca href=\"https://redirect.github.com/angular/angular/issues/57882\"\u003e#57882\u003c/a\u003e) (\u003ca href=\"https://github.com/angular/angular/commit/69763491c3ffb576822b179af3363ec666d43bce\"\u003e6976349\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e33444e2368926c4a7c00b7ab5277691c758b506\"\u003e\u003ccode\u003ee33444e\u003c/code\u003e\u003c/a\u003e release: cut the zone.js-0.15.1 release (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61632\"\u003e#61632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/1ea39e050ccbb0c78b4976812140eb8d353b1bea\"\u003e\u003ccode\u003e1ea39e0\u003c/code\u003e\u003c/a\u003e refactor(zone.js): Add a \u003ccode\u003ewithProxyZone\u003c/code\u003e helper that might be used for unpatc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ad8931cb4968b2bd25b05dcd3d856ec32e4d7145\"\u003e\u003ccode\u003ead8931c\u003c/code\u003e\u003c/a\u003e fix(zone.js): classes that extend Error should retain cause property (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61599\"\u003e#61599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e57509e0a2cbf5668d7af5d00e11009646014559\"\u003e\u003ccode\u003ee57509e\u003c/code\u003e\u003c/a\u003e build: update dependency google-closure-compiler to v20250519 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61551\"\u003e#61551\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/c7420df4499ab09b8e6c6374989b8dccd1afc558\"\u003e\u003ccode\u003ec7420df\u003c/code\u003e\u003c/a\u003e build: update dependency google-closure-compiler to v20250518 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61490\"\u003e#61490\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/10c2ab2a4a8ca4b7da740af4c35d286beed7480b\"\u003e\u003ccode\u003e10c2ab2\u003c/code\u003e\u003c/a\u003e build: lock file maintenance (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61456\"\u003e#61456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/41be5ee17e122b164158c0808dd9ed29763fd5f2\"\u003e\u003ccode\u003e41be5ee\u003c/code\u003e\u003c/a\u003e build: update dependency google-closure-compiler to v20250514 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61439\"\u003e#61439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/7d39b4af2e1a8bd267818087eee3580c0023427c\"\u003e\u003ccode\u003e7d39b4a\u003c/code\u003e\u003c/a\u003e build: update dependency google-closure-compiler to v20250407 (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61397\"\u003e#61397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b71c35a6b5046175563458127451e8162142477b\"\u003e\u003ccode\u003eb71c35a\u003c/code\u003e\u003c/a\u003e refactor: update \u003ccode\u003epackages/core:{core,src}\u003c/code\u003e to \u003ccode\u003ets_project\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61275\"\u003e#61275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/0fc0d67146f8adfae3e7505505d791237b6b51d5\"\u003e\u003ccode\u003e0fc0d67\u003c/code\u003e\u003c/a\u003e build: update cross-repo angular dependencies (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/zone.js/issues/61286\"\u003e#61286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/zone.js-0.15.1/packages/zone.js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-architects/module-federation` from 19.0.3 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/releases\"\u003e\u003ccode\u003e@​angular-architects/module-federation\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular-architects/module-federation-plugin/commit/d4bf6f035b01631fa7f1bf6f98838ae94db2f8ef\"\u003efeat(nf): migrate to angular 20\u003c/a\u003e\n\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/compare/19.0.23...20.0.0\"\u003ehttps://github.com/angular-architects/module-federation-plugin/compare/19.0.23...20.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.23\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(index-file): fixed the double quote issue by \u003ca href=\"https://github.com/asollberger\"\u003e\u003ccode\u003e@​asollberger\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/angular-architects/module-federation-plugin/pull/849\"\u003eangular-architects/module-federation-plugin#849\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/compare/19.0.19...19.0.23\"\u003ehttps://github.com/angular-architects/module-federation-plugin/compare/19.0.19...19.0.23\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.0.19\u003c/h2\u003e\n\u003cp\u003eThis release solves several issues that occurred with Angular 19.2, and it also solves issues with an entire class of npm packages using Singletons. For this, it delegates directly to the underlying bundler for chunk splitting. Hence, we don't need the transient flag anymore. \u003ccode\u003etransient\u003c/code\u003e deps will end up in their own bundles automatically \u003cem\u003ewhen\u003c/em\u003e required (when used from more than one other dependencies). In this regards, Native Federation now behaves like Module Federation.\u003c/p\u003e\n\u003ch2\u003e19.0.16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(nf): add shareAngularLocales helper\u003c/li\u003e\n\u003cli\u003efeat(nf): support angular i18n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/angular-architects/module-federation-plugin/blob/main/libs/native-federation/README.md#angular-i18n\"\u003eDetails in Readme\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.0.10\u003c/h2\u003e\n\u003cp\u003eBig thanks to our contributors!\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003efeat(nf-runtime): added cacheTag option\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003einitFederation\u003c/code\u003e now has a \u003ccode\u003ecacheTag\u003c/code\u003e option. If you set it, e.g., to \u003ccode\u003eDate.now()\u003c/code\u003e, it will be appended to the URLs of the fetched \u003ccode\u003eremoteEntries.json\u003c/code\u003e files to prevent caching.\u003c/p\u003e\n\u003cp\u003eBig thanks to \u003ca href=\"https://github.com/asollberger\"\u003eAlain Sollberger\u003c/a\u003e for this contribution!\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003efeat(nf): allow to version repo-internal libs (mapped paths)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eWe can now assign a version number to monorepo-internal libs (mapped paths). This allows to detect conflicts in cases where different micro frontends of the same monorepo were deployed independently and a shared internal lib was changed in between the two deployments.\u003c/p\u003e\n\u003cp\u003eTo use this feature, just assign a version number in the libs package.json and activate the new feature using the new feature map:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003emodule.exports = withNativeFederation({\n\u003cp\u003e[...]\u003c/p\u003e\n\u003cp\u003efeatures: {\nmappingVersion: true,\n},\u003c/p\u003e\n\u003cp\u003e});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eThe new feature map activates features that might cause breaking changes. Without explicitly activating these features, the usual backwards-compatible behavior is used.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/commits/20.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-architects/module-federation-runtime` from 19.0.3 to 20.0.0\n\nUpdates `@angular-builders/custom-esbuild` from 19.1.0 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-esbuild/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@20.0.0-beta.0...@angular-builders/custom-esbuild@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@19.1.0...@angular-builders/custom-esbuild@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecustom-esbuild:\u003c/strong\u003e expose builder options to plugins (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/2c114d9ccf105d8bbf024de9e67a69d625ce2742\"\u003e2c114d9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/2c114d9ccf105d8bbf024de9e67a69d625ce2742\"\u003e\u003ccode\u003e2c114d9\u003c/code\u003e\u003c/a\u003e feat(custom-esbuild): expose builder options to plugins\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-esbuild@20.0.0/packages/custom-esbuild\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/custom-webpack` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-webpack/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.0-beta.0...@angular-builders/custom-webpack@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.1...@angular-builders/custom-webpack@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-webpack@20.0.0/packages/custom-webpack\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/cli` from 19.2.10 to 20.3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/releases\"\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.3.1\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/be60be4997ea0f7be3a4fb993f87b1bd29fc1493\"\u003e\u003cimg src=\"https://img.shields.io/badge/be60be499-fix-green\" alt=\"fix - be60be499\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd timestamp to bundle generation log\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d60f4e53d8f511d313e517161dc26eb3cc005f1c\"\u003e\u003cimg src=\"https://img.shields.io/badge/d60f4e53d-fix-green\" alt=\"fix - d60f4e53d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate vite to version \u003ccode\u003e7.1.5\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.3.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f6ad41c134c7ae938ccda908967e7cc863b3db16\"\u003e\u003cimg src=\"https://img.shields.io/badge/f6ad41c13-fix-green\" alt=\"fix - f6ad41c13\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove bun lockfile detection and optimize lockfile checks\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ef20a278d1455b9cdffc5102b13d0b2206ef1ecb\"\u003e\u003cimg src=\"https://img.shields.io/badge/ef20a278d-fix-green\" alt=\"fix - ef20a278d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ealign labels in ai-config schema\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1a789087344aa94d061839122e6a63efbfc9c905\"\u003e\u003cimg src=\"https://img.shields.io/badge/1a7890873-fix-green\" alt=\"fix - 1a7890873\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid extra tick in SSR builds\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5d46d6ec114052715a8bd17761a4f258961ad26b\"\u003e\u003cimg src=\"https://img.shields.io/badge/5d46d6ec1-fix-green\" alt=\"fix - 5d46d6ec1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003epreserve names in esbuild for improved debugging in dev mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/ssr\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/7eacb41878f5fdac8d40aedfcca6794b77eda5ff\"\u003e\u003cimg src=\"https://img.shields.io/badge/7eacb4187-feat-blue\" alt=\"feat - 7eacb4187\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eintroduce BootstrapContext for isolated server-side rendering\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/ssr\u003c/code\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe server-side bootstrapping process has been changed to eliminate the reliance on a global platform injector.\u003c/p\u003e\n\u003cp\u003eBefore:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = () =\u0026gt; bootstrapApplication(AppComponent, config);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eAfter:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = (context: BootstrapContext) =\u0026gt;\n  bootstrapApplication(AppComponent, config, context);\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor more information please see: \u003ca href=\"https://github.com/angular/angular/security/advisories/GHSA-68x2-mx4q-78m7\"\u003ehttps://github.com/angular/angular/security/advisories/GHSA-68x2-mx4q-78m7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e20.3.0-rc.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f6ad41c134c7ae938ccda908967e7cc863b3db16\"\u003e\u003cimg src=\"https://img.shields.io/badge/f6ad41c13-fix-green\" alt=\"fix - f6ad41c13\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove bun lockfile detection and optimize lockfile checks\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.3.1 (2025-09-11)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/be60be4997ea0f7be3a4fb993f87b1bd29fc1493\"\u003ebe60be499\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd timestamp to bundle generation log\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d60f4e53d8f511d313e517161dc26eb3cc005f1c\"\u003ed60f4e53d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate vite to version \u003ccode\u003e7.1.5\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e18.2.21 (2025-09-10)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/ssr\u003c/code\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe server-side bootstrapping process has been changed to eliminate the reliance on a global platform injector.\u003c/p\u003e\n\u003cp\u003eBefore:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = () =\u0026gt; bootstrapApplication(AppComponent, config);\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eAfter:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003econst bootstrap = (context: BootstrapContext) =\u0026gt;\n  bootstrapApplication(AppComponent, config, context);\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/700e6bc0177a3e345a88e31be22496cc3054349b\"\u003e700e6bc01\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid extra tick in SSR builds\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/cccc91b919b4a8365efce9ee691940e351349075\"\u003ecccc91b91\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid extra tick in SSR dev-server builds\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/ssr\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/9930e8aab37772ad46d5b6ad018458bbea12b9ba\"\u003e\u003ccode\u003e9930e8a\u003c/code\u003e\u003c/a\u003e release: cut the v20.3.1 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/be60be4997ea0f7be3a4fb993f87b1bd29fc1493\"\u003e\u003ccode\u003ebe60be4\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): add timestamp to bundle generation log\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d60f4e53d8f511d313e517161dc26eb3cc005f1c\"\u003e\u003ccode\u003ed60f4e5\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): update vite to version \u003ccode\u003e7.1.5\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/4e51032e3e474d7e7a82a493098162a1dd15bb75\"\u003e\u003ccode\u003e4e51032\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): Add instructions to component zoneless migration to r...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5e3b6faa55911f334079a0ab41cb1512d0f198f6\"\u003e\u003ccode\u003e5e3b6fa\u003c/code\u003e\u003c/a\u003e build: update github/codeql-action action to v3.30.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/db1c0256ce34b6df0dde861ccc2f194e6c532e61\"\u003e\u003ccode\u003edb1c025\u003c/code\u003e\u003c/a\u003e release: cut the v20.3.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d85d5903983853fceba6f841b76c17f5f5c4e000\"\u003e\u003ccode\u003ed85d590\u003c/code\u003e\u003c/a\u003e release: cut the v20.3.0-rc.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/b3c1d72652dfebbf327054cd91e536a0ae061698\"\u003e\u003ccode\u003eb3c1d72\u003c/code\u003e\u003c/a\u003e build: update FW packages to 20.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/7eacb41878f5fdac8d40aedfcca6794b77eda5ff\"\u003e\u003ccode\u003e7eacb41\u003c/code\u003e\u003c/a\u003e feat(\u003ccode\u003e@​angular/ssr\u003c/code\u003e): introduce BootstrapContext for isolated server-side rende...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ef20a278d1455b9cdffc5102b13d0b2206ef1ecb\"\u003e\u003ccode\u003eef20a27\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​schematics/angular\u003c/code\u003e): align labels in ai-config schema\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular-cli/compare/19.2.10...20.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript` from 5.8.3 to 5.9.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/TypeScript/releases\"\u003etypescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTypeScript 5.9\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9/\"\u003erelease announcement\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.1%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.1 (RC)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cem\u003eNo specific changes for TypeScript 5.9.2 (Stable)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTypeScript 5.9 RC\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9-rc/\"\u003erelease announcement\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.1%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.1 (RC)\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTypeScript 5.9 Beta\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9-beta/\"\u003erelease announcement\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/be8678315541e814da14316848a9468e8f90ab11\"\u003e\u003ccode\u003ebe86783\u003c/code\u003e\u003c/a\u003e Give more specific errors for \u003ccode\u003everbatimModuleSyntax\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62113\"\u003e#62113\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/22ef57786f5ca99837c430439bc6003c068fe1d2\"\u003e\u003ccode\u003e22ef577\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250714...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/d5a414cd1dceb209fd2569e89d1096812218e8c5\"\u003e\u003ccode\u003ed5a414c\u003c/code\u003e\u003c/a\u003e Don't use \u003ccode\u003enoErrorTruncation\u003c/code\u003e when printing types with \u003ccode\u003emaximumLength\u003c/code\u003e set (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/f14b5c8a2f0be503ac455054a91573c63f0e5088\"\u003e\u003ccode\u003ef14b5c8\u003c/code\u003e\u003c/a\u003e Remove unused and confusing dom.iterable.d.ts file (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62037\"\u003e#62037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/2778e84ed88894156e2c5a17d74a25c73cc96ffe\"\u003e\u003ccode\u003e2778e84\u003c/code\u003e\u003c/a\u003e Restore AbortSignal.abort (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62086\"\u003e#62086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/65cb4bd2d52cd882f2c3a503681479eb2ed291ca\"\u003e\u003ccode\u003e65cb4bd\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250710...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/9e20e032effad965567d4a1e1c30d5433b0a3332\"\u003e\u003ccode\u003e9e20e03\u003c/code\u003e\u003c/a\u003e Clear out checker-level stacks on pop (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62016\"\u003e#62016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/87740bc7fe3d8d2af47d767db081491f40b8a90d\"\u003e\u003ccode\u003e87740bc\u003c/code\u003e\u003c/a\u003e Fix for Issue 61081 (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/61221\"\u003e#61221\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/833a8d492c728d606454865e8c0fee84842f9f10\"\u003e\u003ccode\u003e833a8d4\u003c/code\u003e\u003c/a\u003e Fix Symbol completion priority and cursor positioning (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/61945\"\u003e#61945\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/0018c9ff12e657b84997dc1843818fea0a2ce850\"\u003e\u003ccode\u003e0018c9f\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250702...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/TypeScript/compare/v5.8.3...v5.9.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n...\n\n_Description has been truncated_","html_url":"https://github.com/vcupelloni/myspot-hipster/pull/77","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/vcupelloni%2Fmyspot-hipster/issues/77","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/77/packages"}},{"old_version":"14.0.1","new_version":"20.0.0","update_type":"major","path":null,"pr_created_at":"2025-09-04T19:21:42.000Z","version_change":"14.0.1 → 20.0.0","issue":{"uuid":"2800572929","node_id":"PR_kwDOPpKhDs6m7VoB","number":2,"state":"open","title":"Bump the npm_and_yarn group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-04T19:21:42.000Z","updated_at":"2025-09-04T19:21:43.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"npm_and_yarn","update_count":27,"packages":[{"name":"@angular-builders/custom-webpack","old_version":"14.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"14.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/build-angular","old_version":"14.2.1","new_version":"20.2.2","repository_url":"https://github.com/angular/angular-cli"},{"name":"cypress","old_version":"10.4.0","new_version":"15.1.0","repository_url":"https://github.com/cypress-io/cypress"},{"name":"webpack","old_version":"5.74.0","new_version":"5.101.3","repository_url":"https://github.com/webpack/webpack"},{"name":"@adobe/css-tools","old_version":"4.0.1","new_version":"4.4.4","repository_url":"https://github.com/adobe/css-tools"},{"name":"ejs","old_version":"3.1.8","new_version":"3.1.10","repository_url":"https://github.com/mde/ejs"},{"name":"ip","old_version":"2.0.0","new_version":"removed","repository_url":"https://github.com/indutny/node-ip"},{"name":"socks","old_version":"2.7.0","new_version":"2.8.7","repository_url":"https://github.com/JoshGlazebrook/socks"},{"name":"json5","old_version":"1.0.1","new_version":"1.0.2","repository_url":"https://github.com/json5/json5"},{"name":"loader-utils","old_version":"2.0.2","new_version":"2.0.4","repository_url":"https://github.com/webpack/loader-utils"},{"name":"semver","old_version":"5.7.1","new_version":"5.7.2","repository_url":"https://github.com/npm/node-semver"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm_and_yarn group with 12 updates in the /front directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `14.0.1` | `20.0.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `14.0.1` | `20.0.0` |\n| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `14.2.1` | `20.2.2` |\n| [cypress](https://github.com/cypress-io/cypress) | `10.4.0` | `15.1.0` |\n| [webpack](https://github.com/webpack/webpack) | `5.74.0` | `5.101.3` |\n| [@adobe/css-tools](https://github.com/adobe/css-tools) | `4.0.1` | `4.4.4` |\n| [ejs](https://github.com/mde/ejs) | `3.1.8` | `3.1.10` |\n| [ip](https://github.com/indutny/node-ip) | `2.0.0` | `removed` |\n| [socks](https://github.com/JoshGlazebrook/socks) | `2.7.0` | `2.8.7` |\n| [json5](https://github.com/json5/json5) | `1.0.1` | `1.0.2` |\n| [loader-utils](https://github.com/webpack/loader-utils) | `2.0.2` | `2.0.4` |\n| [semver](https://github.com/npm/node-semver) | `5.7.1` | `5.7.2` |\n\n\nUpdates `@angular-builders/custom-webpack` from 14.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-webpack/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.0-beta.0...@angular-builders/custom-webpack@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.1...@angular-builders/custom-webpack@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.1-beta.1...@angular-builders/custom-webpack@19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-04-07)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.1-beta.0...@angular-builders/custom-webpack@19.0.1-beta.1\"\u003e19.0.1-beta.1\u003c/a\u003e (2025-04-06)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.0...@angular-builders/custom-webpack@19.0.1-beta.0\"\u003e19.0.1-beta.0\u003c/a\u003e (2025-04-03)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.0-beta.0...@angular-builders/custom-webpack@19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-01-05)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@18.0.1-beta.0...@angular-builders/custom-webpack@19.0.0-beta.0\"\u003e19.0.0-beta.0\u003c/a\u003e (2024-12-05)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update to Angular 19 (\u003ca href=\"https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack/issues/1871\"\u003e#1871\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update to Angular 19 (\u003ca href=\"https://redirect.github.com/just-jeb/angular-builders/issues/1871\"\u003e#1871\u003c/a\u003e) (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/d3b17ed1e520c299f0327b9b5c38a55494b0a19a\"\u003ed3b17ed\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@18.0.0...@angular-builders/custom-webpack@18.0.1-beta.0\"\u003e18.0.1-beta.0\u003c/a\u003e (2024-07-24)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@18.0.0-beta.3...@angular-builders/custom-webpack@18.0.0\"\u003e18.0.0\u003c/a\u003e (2024-06-17)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/dbc033f81402238f7f26768a5beaccb230917d4c\"\u003e\u003ccode\u003edbc033f\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9e0f7779a4e1440831c0791383037ecda66065e3\"\u003e\u003ccode\u003e9e0f777\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/484a8073e1437aaac6a16b0dbd6d6817d26d5aeb\"\u003e\u003ccode\u003e484a807\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency typescript to v5.8.3 (\u003ca href=\"https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack/issues/1814\"\u003e#1814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/fa42409908b9d71461a8ba47f017accee056e29d\"\u003e\u003ccode\u003efa42409\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/f8aec9a62b4de566758d62cf592562727f3c1386\"\u003e\u003ccode\u003ef8aec9a\u003c/code\u003e\u003c/a\u003e deps: change schemes.ts to trigger schema regeneration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/8bb2a953ed34fbb5ef08f6f9b8e86329317465f0\"\u003e\u003ccode\u003e8bb2a95\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-webpack@20.0.0/packages/custom-webpack\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 14.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1-beta.1...@angular-builders/jest@19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-04-07)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1-beta.0...@angular-builders/jest@19.0.1-beta.1\"\u003e19.0.1-beta.1\u003c/a\u003e (2025-04-06)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.0...@angular-builders/jest@19.0.1-beta.0\"\u003e19.0.1-beta.0\u003c/a\u003e (2025-04-06)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.0-beta.1...@angular-builders/jest@19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-01-05)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.0-beta.0...@angular-builders/jest@19.0.0-beta.1\"\u003e19.0.0-beta.1\u003c/a\u003e (2024-12-06)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@18.0.1-beta.2...@angular-builders/jest@19.0.0-beta.0\"\u003e19.0.0-beta.0\u003c/a\u003e (2024-12-05)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update to Angular 19 (\u003ca href=\"https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest/issues/1871\"\u003e#1871\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update to Angular 19 (\u003ca href=\"https://redirect.github.com/just-jeb/angular-builders/issues/1871\"\u003e#1871\u003c/a\u003e) (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/d3b17ed1e520c299f0327b9b5c38a55494b0a19a\"\u003ed3b17ed\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@18.0.1-beta.1...@angular-builders/jest@18.0.1-beta.2\"\u003e18.0.1-beta.2\u003c/a\u003e (2024-10-30)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/dbc033f81402238f7f26768a5beaccb230917d4c\"\u003e\u003ccode\u003edbc033f\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/9e0f7779a4e1440831c0791383037ecda66065e3\"\u003e\u003ccode\u003e9e0f777\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/484a8073e1437aaac6a16b0dbd6d6817d26d5aeb\"\u003e\u003ccode\u003e484a807\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency typescript to v5.8.3 (\u003ca href=\"https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest/issues/1814\"\u003e#1814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/7f8c822bf3e4934454fbfcb68db589b504c94632\"\u003e\u003ccode\u003e7f8c822\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/0f578f851f4b239ae3508573335f7df9ec91c4ae\"\u003e\u003ccode\u003e0f578f8\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency jest-preset-angular to v14.5.4 (\u003ca href=\"https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest/issues/1914\"\u003e#1914\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/8bb2a953ed34fbb5ef08f6f9b8e86329317465f0\"\u003e\u003ccode\u003e8bb2a95\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-devkit/build-angular` from 14.2.1 to 20.2.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/releases\"\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.2.2\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/a793bbc473dfaddf3fe6ed15805dc4fc84f52865\"\u003e\u003cimg src=\"https://img.shields.io/badge/a793bbc47-fix-green\" alt=\"fix - a793bbc47\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edon't set a default for array options when length is 0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2736599e2f6c61032810d8e336c1646db4066392\"\u003e\u003cimg src=\"https://img.shields.io/badge/2736599e2-fix-green\" alt=\"fix - 2736599e2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eset process title when running architect commands\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5c2abffea6cf3f672ee256a944dba56dd257665b\"\u003e\u003cimg src=\"https://img.shields.io/badge/5c2abffea-fix-green\" alt=\"fix - 5c2abffea\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid extra tick in SSR dev-server builds\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f3c826853501c9cf6d07a1c8ee3363eb79f53005\"\u003e\u003cimg src=\"https://img.shields.io/badge/f3c826853-fix-green\" alt=\"fix - f3c826853\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emaintain media output hashing with vitest unit-testing\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.1\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/schematics-cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/e93919dea7df55a3aac2fa5c93c4560c50a2d749\"\u003e\u003cimg src=\"https://img.shields.io/badge/e93919dea-fix-green\" alt=\"fix - e93919dea\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly set default array values\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/6937123a393e2ba9221962b0174056c14437a988\"\u003e\u003cimg src=\"https://img.shields.io/badge/6937123a3-fix-green\" alt=\"fix - 6937123a3\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edirectly resolve karma config template in migration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5d6dd44259a0d89098c2a0c784e726b43ce32316\"\u003e\u003cimg src=\"https://img.shields.io/badge/5d6dd4425-fix-green\" alt=\"fix - 5d6dd4425\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprevent AI config schematic from failing when 'none' and other AI tools are selected\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/3b693e09e8148ef22031aab8f6bc70c928aabc03\"\u003e\u003cimg src=\"https://img.shields.io/badge/3b693e09e-fix-green\" alt=\"fix - 3b693e09e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrectly set default array values\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/06a6ddc102f5dc9018ec982f6e4cf56259cc4b52\"\u003e\u003cimg src=\"https://img.shields.io/badge/06a6ddc10-fix-green\" alt=\"fix - 06a6ddc10\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ecorrect JS/TS file paths when running under Bazel\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/b6816b0cbaf1262d7015b9d7f7fb425f53995947\"\u003e\u003cimg src=\"https://img.shields.io/badge/b6816b0cb-fix-green\" alt=\"fix - b6816b0cb\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eensure karma polyfills reporter factory returns a value\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.2.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2e3cfd598c9366d0036a52cd18024317b33e6fca\"\u003e\u003cimg src=\"https://img.shields.io/badge/2e3cfd598-feat-blue\" alt=\"feat - 2e3cfd598\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd migration to remove default Karma configurations\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/d80dae276e9554c13e0c37640d0db8acafc9d48b\"\u003e\u003cimg src=\"https://img.shields.io/badge/d80dae276-feat-blue\" alt=\"feat - d80dae276\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd schematics to generate ai context files.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ffe6fb916d496da1c6c20942f6e6b05a679b0f7d\"\u003e\u003cimg src=\"https://img.shields.io/badge/ffe6fb916-fix-green\" alt=\"fix - ffe6fb916\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow AI config prompt to be skipped without selecting a value\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ae2802b7db358c5a3f0590feea212a768a710353\"\u003e\u003cimg src=\"https://img.shields.io/badge/ae2802b7d-fix-green\" alt=\"fix - ae2802b7d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove AI config prompt wording\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/b017f84fdaf36bc0fcad2241846665c73b52b6d8\"\u003e\u003cimg src=\"https://img.shields.io/badge/b017f84fd-fix-green\" alt=\"fix - b017f84fd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eimprove coverage directory handling for Karma configuration comparisons\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/6a79f9a75cdcbb0761c4044066748f4eb788a57f\"\u003e\u003cimg src=\"https://img.shields.io/badge/6a79f9a75-fix-green\" alt=\"fix - 6a79f9a75\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ezoneless is now stable\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/b4de9a1bf50a35404fb79eb3f120faafd0ce825a\"\u003e\u003cimg src=\"https://img.shields.io/badge/b4de9a1bf-feat-blue\" alt=\"feat - b4de9a1bf\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd --experimental-tool option to mcp command\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/755ba70fd7ef38793d15797ba402020c375c3295\"\u003e\u003cimg src=\"https://img.shields.io/badge/755ba70fd-feat-blue\" alt=\"feat - 755ba70fd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd --local-only option to mcp command\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/59d7ef343b6f1feea37a019935578c560d3d5e41\"\u003e\u003cimg src=\"https://img.shields.io/badge/59d7ef343-feat-blue\" alt=\"feat - 59d7ef343\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd --read-only option to mcp command\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/4e92eb6f17cb30259bc8e8d1979bbd9989bc5ad0\"\u003e\u003cimg src=\"https://img.shields.io/badge/4e92eb6f1-feat-blue\" alt=\"feat - 4e92eb6f1\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd modernize tool to the MCP server\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/a3b25f675283fdd8cc5689e3ec88f27aa1386390\"\u003e\u003cimg src=\"https://img.shields.io/badge/a3b25f675-fix-green\" alt=\"fix - a3b25f675\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd choices to command line parser when type is array and has an enum\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.2.2 (2025-09-03)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/a793bbc473dfaddf3fe6ed15805dc4fc84f52865\"\u003ea793bbc47\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edon't set a default for array options when length is 0\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2736599e2f6c61032810d8e336c1646db4066392\"\u003e2736599e2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eset process title when running architect commands\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5c2abffea6cf3f672ee256a944dba56dd257665b\"\u003e5c2abffea\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid extra tick in SSR dev-server builds\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f3c826853501c9cf6d07a1c8ee3363eb79f53005\"\u003ef3c826853\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emaintain media output hashing with vitest unit-testing\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e21.0.0-next.1 (2025-08-27)\u003c/h1\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003eng\u003c/code\u003e commands will no longer automatically detect and use \u003ccode\u003ecnpm\u003c/code\u003e as the package manager. As an alternative use the \u003ccode\u003e.npmrc\u003c/code\u003e file to ensure npm uses the cnpm registry.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/schematics-cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/aed26c38803a465842ff128c3f81bd6984e1fe3d\"\u003eaed26c388\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly set default array values\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/4912f39906b11a3212f11d5a00d577e2a0bacab4\"\u003e4912f3990\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd Tailwind CSS option to application schematic and \u003ccode\u003eng new\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/6c7b798332786d29070460669e093e37902c4438\"\u003e6c7b79833\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003edirectly resolve karma config template in migration\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0f86cf8782d1c08d11bb9ee54a30fe1954dd8bcc\"\u003e0f86cf878\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eprevent AI config schematic from failing when 'none' and other AI tools are selected\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0d53e82d5ed8986603c2005fc06041dd076b08c6\"\u003e0d53e82d5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eprovide detailed peer dependency conflict errors in ng add\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f513089e276acf5a7c4f6879a95e2d6ed78ae67d\"\u003ef513089e2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eremove direct support for \u003ccode\u003ecnpm\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/47d77a3edea4dabb463d50c2bdba32475257d775\"\u003e47d77a3ed\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ecorrectly set default array values\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/e5aed6d655ed92ea6eb3ac03716b8a02a5f731d6\"\u003ee5aed6d65\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eshow planned actions in \u003ccode\u003eng add\u003c/code\u003e dry run\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/8ffc449e186637422b1b574bd38de9c479e6c84c\"\u003e\u003ccode\u003e8ffc449\u003c/code\u003e\u003c/a\u003e release: cut the v20.2.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/425bfe478bd693052aa0b541aab00599b7fe2a81\"\u003e\u003ccode\u003e425bfe4\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): update MCP example tool format for if example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2736599e2f6c61032810d8e336c1646db4066392\"\u003e\u003ccode\u003e2736599\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/cli\u003c/code\u003e): set process title when running architect commands\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f3c826853501c9cf6d07a1c8ee3363eb79f53005\"\u003e\u003ccode\u003ef3c8268\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): maintain media output hashing with vitest unit-testing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/99526bd88346d4ffe263ca94692a0ffa2bad1df7\"\u003e\u003ccode\u003e99526bd\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): Improve zoneless migration prompts based on observed ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/b2d5e6e508a18e640b7a252d21d2683615eca761\"\u003e\u003ccode\u003eb2d5e6e\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): add logging and HTML removal to doc search tool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/5c2abffea6cf3f672ee256a944dba56dd257665b\"\u003e\u003ccode\u003e5c2abff\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): avoid extra tick in SSR dev-server builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0eaec23d68ab86fbe4f2139e482aa0b0fb408463\"\u003e\u003ccode\u003e0eaec23\u003c/code\u003e\u003c/a\u003e build: update github/codeql-action action to v3.30.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/269fd9999526c3423cc7ebd308faae09b1960ac1\"\u003e\u003ccode\u003e269fd99\u003c/code\u003e\u003c/a\u003e build: lock file maintenance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d8b6f64439ac914a5bb19471fa2f511298ecf09\"\u003e\u003ccode\u003e2d8b6f6\u003c/code\u003e\u003c/a\u003e build: update pnpm to v10.15.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular-cli/compare/14.2.1...20.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cypress` from 10.4.0 to 15.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/cypress-io/cypress/releases\"\u003ecypress's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev15.1.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#15.1.0\"\u003ehttps://docs.cypress.io/app/references/changelog#15.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev15.0.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#15.0.0\"\u003ehttps://docs.cypress.io/app/references/changelog#15.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.4\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-4\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-3\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.2\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-2\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.4.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-4-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-4-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.4.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-4-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-4-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-3\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.2\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-2\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.2.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-2-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-2-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.2.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-2-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-2-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.1.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-1-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-1-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.0.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-0-3\"\u003ehttps://docs.cypress.io/app/references/changelog#14-0-3\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/591de461fd8ca9a56af617845b2c55b5b23ebf29\"\u003e\u003ccode\u003e591de46\u003c/code\u003e\u003c/a\u003e chore: release 15.1.0 (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32401\"\u003e#32401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/8d0aee00b129a87bb285df9665018b9c1589d1ee\"\u003e\u003ccode\u003e8d0aee0\u003c/code\u003e\u003c/a\u003e fix: wrap the \u003ccode\u003etsx\u003c/code\u003e loader path in quotes (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32400\"\u003e#32400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/21be37e72e475be2122ab91f8119e48f1d82c32f\"\u003e\u003ccode\u003e21be37e\u003c/code\u003e\u003c/a\u003e fix: move \u003ccode\u003e@​cypress/schematic\u003c/code\u003e npm registry query to https (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32390\"\u003e#32390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/30f8bc39682013d0715e40bfd84712e32b9f133e\"\u003e\u003ccode\u003e30f8bc3\u003c/code\u003e\u003c/a\u003e chore: fix the package name in docs. (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/61307b09943fb5bcf3271279f3fd2f95dadd27d2\"\u003e\u003ccode\u003e61307b0\u003c/code\u003e\u003c/a\u003e chore(deps): remove sharp dependency resolution (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32378\"\u003e#32378\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/d0570f8fec3b6d661d902e558fefbadf430b0b40\"\u003e\u003ccode\u003ed0570f8\u003c/code\u003e\u003c/a\u003e chore: Update Chrome (beta) to 140.0.7339.41 (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32375\"\u003e#32375\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/695fa95c3ee687293c603bfecc497a71c88ae8c3\"\u003e\u003ccode\u003e695fa95\u003c/code\u003e\u003c/a\u003e chore: updating v8 snapshot cache (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32387\"\u003e#32387\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/505eb1397d509f197ca0f4ce299ee13d13b3112a\"\u003e\u003ccode\u003e505eb13\u003c/code\u003e\u003c/a\u003e chore: updating v8 snapshot cache (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32386\"\u003e#32386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/ef6ad2aeb61b8fd78c05393b645adb11befe5e7f\"\u003e\u003ccode\u003eef6ad2a\u003c/code\u003e\u003c/a\u003e chore: updating v8 snapshot cache (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32385\"\u003e#32385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/58bee2839c9326a305002c233bbf9e9684442363\"\u003e\u003ccode\u003e58bee28\u003c/code\u003e\u003c/a\u003e fix: force gtk version 3 to avoid Electron 36 from crashing (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32372\"\u003e#32372\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/cypress-io/cypress/compare/v10.4.0...v15.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~cypress-npm-publisher\"\u003ecypress-npm-publisher\u003c/a\u003e, a new releaser for cypress since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `webpack` from 5.74.0 to 5.101.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/webpack/webpack/releases\"\u003ewebpack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.101.3\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed resolve execution order issue from extra await in async modules\u003c/li\u003e\n\u003cli\u003eAvoid empty block for unused statement\u003c/li\u003e\n\u003cli\u003eCollect only specific expressions for destructuring assignment\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.101.2\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed syntax error when comment is on the last line\u003c/li\u003e\n\u003cli\u003eHandle var declaration for \u003ccode\u003ecreateRequire\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eDistinguish free variable and tagged variable\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.101.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFilter deleted assets in \u003ccode\u003eprocessAdditionalAssets\u003c/code\u003e hook\u003c/li\u003e\n\u003cli\u003eHMR failure in defer module\u003c/li\u003e\n\u003cli\u003eEmit assets even if invalidation occurs again\u003c/li\u003e\n\u003cli\u003eExport types for serialization and deserialization in plugins and export the \u003ccode\u003eModuleFactory\u003c/code\u003e class\u003c/li\u003e\n\u003cli\u003eFixed the failure export of internal function for ES module chunk format\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eGetChunkFilename\u003c/code\u003e failure caused by \u003ccode\u003edependOn\u003c/code\u003e entry\u003c/li\u003e\n\u003cli\u003eFixed the import of missing dependency chunks\u003c/li\u003e\n\u003cli\u003eFixed when entry chunk depends on the runtime chunk hash\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003emodule.exports\u003c/code\u003e bundle to ESM library\u003c/li\u003e\n\u003cli\u003eAdjusted the time of adding a group depending on the fragment of execution time\u003c/li\u003e\n\u003cli\u003eFixed circle dependencies when require \u003ccode\u003eRawModule\u003c/code\u003e and condition of \u003ccode\u003eisDeferred\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eTree-shakable module library should align preconditions of \u003ccode\u003eallowInlineStartup\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.101.0\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed concatenate optimization for ESM that caused undefined export\u003c/li\u003e\n\u003cli\u003eRespect the \u003ccode\u003eoutput.environment.nodePrefixForCoreModules\u003c/code\u003e option everywhere\u003c/li\u003e\n\u003cli\u003eRespect the \u003ccode\u003eoutput.importMetaName\u003c/code\u003e option everywhere\u003c/li\u003e\n\u003cli\u003eFixed await async dependencies when accepting them during HMR\u003c/li\u003e\n\u003cli\u003eBetter typescript types\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded colors helpers for CLI\u003c/li\u003e\n\u003cli\u003eEnable tree-shaking for ESM external modules with named imports\u003c/li\u003e\n\u003cli\u003eAdded the \u003ccode\u003edeferImport\u003c/code\u003e option to parser options\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a regression in module concatenation after implementing deferred import support\u003c/li\u003e\n\u003cli\u003eFixed a potential performance issue in CleanPlugin\u003c/li\u003e\n\u003cli\u003eAvoid extra \u003ccode\u003erequire\u003c/code\u003e in some places\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/07b1ac0213bcf9591a8dd5633535a43ecd248192\"\u003e\u003ccode\u003e07b1ac0\u003c/code\u003e\u003c/a\u003e chore(release): 5.101.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/8d7efb8b0421a3a132d3aa71c265e2862771c3b8\"\u003e\u003ccode\u003e8d7efb8\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump the dependencies group with 2 updates (\u003ca href=\"https://redirect.github.com/webpack/webpack/issues/19816\"\u003e#19816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/935cbd8552d89b9bcafea66ad08db034c1897ab1\"\u003e\u003ccode\u003e935cbd8\u003c/code\u003e\u003c/a\u003e docs: update examples (\u003ca href=\"https://redirect.github.com/webpack/webpack/issues/19812\"\u003e#19812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/dc79e95022b8b726ac0a7c474be1dca0fef8fafe\"\u003e\u003ccode\u003edc79e95\u003c/code\u003e\u003c/a\u003e fix: collect only specific expressions for destructuring assignment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/90ae8af3d19b964728a9e7f5f9350ead71d3ad61\"\u003e\u003ccode\u003e90ae8af\u003c/code\u003e\u003c/a\u003e fix: avoid empty block for unused statement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/8db97f863fb5cf55dfcf0634d0f127b27bcf43a4\"\u003e\u003ccode\u003e8db97f8\u003c/code\u003e\u003c/a\u003e fix: resolve execution order issue from extra await in async modules\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/c92deaf02c4d0507b11c3e34d766f1d06d584055\"\u003e\u003ccode\u003ec92deaf\u003c/code\u003e\u003c/a\u003e ci: pin Node.js 24.x to 24.5.0 in CI workflow (\u003ca href=\"https://redirect.github.com/webpack/webpack/issues/19813\"\u003e#19813\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/c50930b3be80285b1a53b64a8cfb4c58aa17a409\"\u003e\u003ccode\u003ec50930b\u003c/code\u003e\u003c/a\u003e refactor(test): correct the value retrieval\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/613a5ada7e676573758e4714d2e345df81c1270d\"\u003e\u003ccode\u003e613a5ad\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump \u003ccode\u003e@​babel/core\u003c/code\u003e in the dependencies group (\u003ca href=\"https://redirect.github.com/webpack/webpack/issues/19807\"\u003e#19807\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/1d9cc240a29d17f3986d9e9f96f2589d823e832c\"\u003e\u003ccode\u003e1d9cc24\u003c/code\u003e\u003c/a\u003e chore(release): 5.101.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/webpack/webpack/compare/v5.74.0...v5.101.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~evilebottnawi\"\u003eevilebottnawi\u003c/a\u003e, a new releaser for webpack since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@adobe/css-tools` from 4.0.1 to 4.4.4\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/adobe/css-tools/blob/main/docs/CHANGELOG.md\"\u003e\u003ccode\u003e@​adobe/css-tools\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.4.4] - 2025-07-22\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch from yarn to npm for package management\u003c/li\u003e\n\u003cli\u003eSwitch from eslint to biome for code formatting and linting\u003c/li\u003e\n\u003cli\u003eReformat codebase to comply with biome recommendations\u003c/li\u003e\n\u003cli\u003eSwitch from webpack to rollup for bundling\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix module exports to ensure proper compatibility with bundlers\u003c/li\u003e\n\u003cli\u003eAdd validation check to prevent future export issues\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.4.3] - 2025-05-15\u003c/h2\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix polynomial regular expression vulnerability on uncontrolled data\u003c/li\u003e\n\u003cli\u003eRefactor code to enable GitHub security static analysis\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove parsing performance with minor optimizations\u003c/li\u003e\n\u003cli\u003eReplace regex patterns with string search (indexOf-based) for better performance\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new utility functions with comprehensive unit tests\u003c/li\u003e\n\u003cli\u003eAdd improved formatting for CSS Grid template areas (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/283\"\u003e#283\u003c/a\u003e by \u003ca href=\"https://github.com/jogibear9988\"\u003e\u003ccode\u003e@​jogibear9988\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix TypeScript error with ConstructorParameters in Parcel bundler (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/444\"\u003e#444\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.4.2] - 2025-02-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regular expression for parsing quoted values in parentheses\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.4.0] - 2024-06-05\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for CSS \u003ccode\u003e@starting-style\u003c/code\u003e at-rule (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/319\"\u003e#319\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.3.3] - 2024-01-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate package export configuration (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/271\"\u003e#271\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.3.2] - 2023-11-28\u003c/h2\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix ReDoS vulnerability with crafted CSS strings - CVE-2023-48631\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/adobe/css-tools/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@cypress/request` from 2.88.10 to 3.0.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/cypress-io/request/releases\"\u003e\u003ccode\u003e@​cypress/request\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.0.9\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.8...v3.0.9\"\u003e3.0.9\u003c/a\u003e (2025-07-24)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate patch version of form-data to address new critical Snyk vulnerability (\u003ca href=\"https://github.com/cypress-io/request/commit/a2f3199f70724c9c3db992d1f2017e9b6a3d9539\"\u003ea2f3199\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.7...v3.0.8\"\u003e3.0.8\u003c/a\u003e (2025-03-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency qs to v6.14.0 (\u003ca href=\"https://github.com/cypress-io/request/commit/16066b65e8c4958b49cfaa77de25b84b0f0ca4d3\"\u003e16066b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.7\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.6...v3.0.7\"\u003e3.0.7\u003c/a\u003e (2024-12-09)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency qs to v6.13.1 (\u003ca href=\"https://github.com/cypress-io/request/commit/00d1835ca237bf2aab535be470faa972cc5808c7\"\u003e00d1835\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.5...v3.0.6\"\u003e3.0.6\u003c/a\u003e (2024-10-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency tough-cookie to v5 (\u003ca href=\"https://github.com/cypress-io/request/commit/65ad82c9f16e53653d6ee293cc330e38a305e423\"\u003e65ad82c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.4...v3.0.5\"\u003e3.0.5\u003c/a\u003e (2024-09-09)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency form-data to v4 (\u003ca href=\"https://github.com/cypress-io/request/commit/6b905804c035f51403b57560bbe7ed52602c1d60\"\u003e6b90580\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.3...v3.0.4\"\u003e3.0.4\u003c/a\u003e (2024-09-05)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency form-data to ~2.5.0 (\u003ca href=\"https://github.com/cypress-io/request/commit/87b5e920ca1101fe0c28b5922222375fb7232fb7\"\u003e87b5e92\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.2...v3.0.3\"\u003e3.0.3\u003c/a\u003e (2024-09-05)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/3cffd53a243630c517fb31c3cedc0a65012f4868\"\u003e\u003ccode\u003e3cffd53\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/88\"\u003e#88\u003c/a\u003e from ahayes91/update-form-data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/7c424d5a23c6464774dc96778533bf88ad7d3f0a\"\u003e\u003ccode\u003e7c424d5\u003c/code\u003e\u003c/a\u003e chore: fix lint issue\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/7f6fdec79d0a7cc90510429c1301263f51166b3b\"\u003e\u003ccode\u003e7f6fdec\u003c/code\u003e\u003c/a\u003e chore: remove test now that we are on form-data 4.0.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/a2f3199f70724c9c3db992d1f2017e9b6a3d9539\"\u003e\u003ccode\u003ea2f3199\u003c/code\u003e\u003c/a\u003e fix: update patch version of form-data to address new critical Snyk vulnerabi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/a1252dd285d95c3aa8754b95ce3933f3e059f11d\"\u003e\u003ccode\u003ea1252dd\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/84\"\u003e#84\u003c/a\u003e from cypress-io/renovate/qs-6.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/16066b65e8c4958b49cfaa77de25b84b0f0ca4d3\"\u003e\u003ccode\u003e16066b6\u003c/code\u003e\u003c/a\u003e fix(deps): update dependency qs to v6.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/5fd077003868ae39ca43871ad1604e92404000ae\"\u003e\u003ccode\u003e5fd0770\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/83\"\u003e#83\u003c/a\u003e from cypress-io/renovate/cimg-node-18.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/b42b322d62c4d7c302bc049016143d4aca673220\"\u003e\u003ccode\u003eb42b322\u003c/code\u003e\u003c/a\u003e chore(deps): update node.js to v18.20.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/e79201a5e61b88cefd6437802b4feb2fa4dbf45f\"\u003e\u003ccode\u003ee79201a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/80\"\u003e#80\u003c/a\u003e from cypress-io/renovate/cimg-node-18.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/0e4e875256b126d9e603e3970078975ba6f4f97f\"\u003e\u003ccode\u003e0e4e875\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/81\"\u003e#81\u003c/a\u003e from cypress-io/renovate/qs-6.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/cypress-io/request/compare/v2.88.10...v3.0.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `body-parser` from 1.20.0 to 1.20.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/expressjs/body-parser/releases\"\u003ebody-parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.20.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eImportant\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.13.0\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003edepth\u003c/code\u003e option to customize the depth level in the parser\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eIMPORTANT:\u003c/strong\u003e The default \u003ccode\u003edepth\u003c/code\u003e level for parsing URL-encoded data is now \u003ccode\u003e32\u003c/code\u003e (previously was \u003ccode\u003eInfinity\u003c/code\u003e). \u003ca href=\"https://github.com/expressjs/body-parser/blob/17529513673e39ba79886a7ce3363320cf1c0c50/README.md#depth\"\u003eDocumentation\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003echore: add support for OSSF scorecard reporting by \u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/522\"\u003eexpressjs/body-parser#522\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix errors in ci github action for node 8 and 9 by \u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/523\"\u003eexpressjs/body-parser#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: pin to node@22.4.1 by \u003ca href=\"https://github.com/wesleytodd\"\u003e\u003ccode\u003e@​wesleytodd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/527\"\u003eexpressjs/body-parser#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeps: qs@6.12.3 by \u003ca href=\"https://github.com/melikhov-dev\"\u003e\u003ccode\u003e@​melikhov-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/521\"\u003eexpressjs/body-parser#521\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd OSSF Scorecard badge by \u003ca href=\"https://github.com/bjohansebas\"\u003e\u003ccode\u003e@​bjohansebas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/531\"\u003eexpressjs/body-parser#531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLinter by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/534\"\u003eexpressjs/body-parser#534\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 1.20.3 by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/535\"\u003eexpressjs/body-parser#535\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/522\"\u003eexpressjs/body-parser#522\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/melikhov-dev\"\u003e\u003ccode\u003e@​melikhov-dev\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/521\"\u003eexpressjs/body-parser#521\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bjohansebas\"\u003e\u003ccode\u003e@​bjohansebas\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/531\"\u003eexpressjs/body-parser#531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/534\"\u003eexpressjs/body-parser#534\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/expressjs/body-parser/compare/1.20.2...1.20.3\"\u003ehttps://github.com/expressjs/body-parser/compare/1.20.2...1.20.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.20.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix strict json error message on Node.js 19+\u003c/li\u003e\n\u003cli\u003edeps: content-type@~1.0.5\n\u003cul\u003e\n\u003cli\u003eperf: skip value escaping when unnecessary\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: raw-body@2.5.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.20.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.11.0\u003c/li\u003e\n\u003cli\u003eperf: remove unnecessary object clone\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/expressjs/body-parser/blob/master/HISTORY.md\"\u003ebody-parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.20.3 / 2024-09-10\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.13.0\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003edepth\u003c/code\u003e option to customize the depth level in the parser\u003c/li\u003e\n\u003cli\u003eIMPORTANT: The default \u003ccode\u003edepth\u003c/code\u003e level for parsing URL-encoded data is now \u003ccode\u003e32\u003c/code\u003e (previously was \u003ccode\u003eInfinity\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e1.20.2 / 2023-02-21\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix strict json error message on Node.js 19+\u003c/li\u003e\n\u003cli\u003edeps: content-type@~1.0.5\n\u003cul\u003e\n\u003cli\u003eperf: skip value escaping when unnecessary\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: raw-body@2.5.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e1.20.1 / 2022-10-06\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.11.0\u003c/li\u003e\n\u003cli\u003eperf: remove unnecessary object clone\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/17529513673e39ba79886a7ce3363320cf1c0c50\"\u003e\u003ccode\u003e1752951\u003c/code\u003e\u003c/a\u003e 1.20.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/39744cfe2ac4fb37a19ed7c43e3a74332f428e17\"\u003e\u003ccode\u003e39744cf\u003c/code\u003e\u003c/a\u003e chore: linter (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/534\"\u003e#534\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/b2695c4450f06ba3b0ccf48d872a229bb41c9bce\"\u003e\u003ccode\u003eb2695c4\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/ade0f3f82f91086d6cd2ed2cb4b0aff448fbc2e5\"\u003e\u003ccode\u003eade0f3f\u003c/code\u003e\u003c/a\u003e add scorecard to readme (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/99a1bd62456f932004b84767d6393bc261f75d36\"\u003e\u003ccode\u003e99a1bd6\u003c/code\u003e\u003c/a\u003e deps: qs@6.12.3 (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/521\"\u003e#521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/947859160527c7aaaa20da79e2c3ba542baaaf66\"\u003e\u003ccode\u003e9478591\u003c/code\u003e\u003c/a\u003e fix: pin to node@22.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/83db46a1e5512135ce01ed90b9132ee16a2657a8\"\u003e\u003ccode\u003e83db46a\u003c/code\u003e\u003c/a\u003e ci: fix errors in ci github action for node 8 and 9 (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/523\"\u003e#523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/9d4e2125b580b055b2a3aa140df9b8fce363af46\"\u003e\u003ccode\u003e9d4e212\u003c/code\u003e\u003c/a\u003e chore: add support for OSSF scorecard reporting (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/522\"\u003e#522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/ee91374eae1555af679550b1d2fb5697d9924109\"\u003e\u003ccode\u003eee91374\u003c/code\u003e\u003c/a\u003e 1.20.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/368a93a613a1ac6cbdec9694f4018e707b3c1f50\"\u003e\u003ccode\u003e368a93a\u003c/code\u003e\u003c/a\u003e Fix strict json error message on Node.js 19+\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/expressjs/body-parser/compare/1.20.0...1.20.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~ulisesgascon\"\u003eulisesgascon\u003c/a\u003e, a new releaser for body-parser since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cookie` from 0.5.0 to 0.7.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jshttp/cookie/releases\"\u003ecookie's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.7.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAllow leading dot for domain (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/174\"\u003e#174\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eAlthough not permitted in the spec, some users expect this to work and user agents ignore the leading dot according to spec\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdd fast path for \u003ccode\u003eserialize\u003c/code\u003e without options, use \u003ccode\u003eobj.hasOwnProperty\u003c/code\u003e when parsing (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/172\"\u003e#172\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jshttp/cookie/compare/v0.7.0...v0.7.1\"\u003ehttps://github.com/jshttp/cookie/compare/v0.7.0...v0.7.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.7.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eperf: parse cookies ~10% faster (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/144\"\u003e#144\u003c/a\u003e by \u003ca href=\"https://github.com/kurtextrem\"\u003e\u003ccode\u003e@​kurtextrem\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/170\"\u003e#170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: narrow the validation of cookies to match RFC6265 (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/167\"\u003e#167\u003c/a\u003e by \u003ca href=\"https://github.com/bewinsnw\"\u003e\u003ccode\u003e@​bewinsnw\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: add \u003ccode\u003emain\u003c/code\u003e to \u003ccode\u003epackage.json\u003c/code\u003e for rspack (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/166\"\u003e#166\u003c/a\u003e by \u003ca href=\"https://github.com/proudparrot2\"\u003e\u003ccode\u003e@​proudparrot2\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jshttp/cookie/compare/v0.6.0...v0.7.0\"\u003ehttps://github.com/jshttp/cookie/compare/v0.6.0...v0.7.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.6.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epartitioned\u003c/code\u003e option\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/cf4658f492c5bd96aeaf5693c3500f8495031014\"\u003e\u003ccode\u003ecf4658f\u003c/code\u003e\u003c/a\u003e 0.7.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/6a8b8f5a49af7897b98ebfb29a1c4955afa3d33e\"\u003e\u003ccode\u003e6a8b8f5\u003c/code\u003e\u003c/a\u003e Allow leading dot for domain (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/174\"\u003e#174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/58015c0b93de0b63db245cfdc5a108e511a81ad0\"\u003e\u003ccode\u003e58015c0\u003c/code\u003e\u003c/a\u003e Remove more code and perf wins (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/172\"\u003e#172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/ab057d6c06b94a7b1e3358e69a685ae49c97b627\"\u003e\u003ccode\u003eab057d6\u003c/code\u003e\u003c/a\u003e 0.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/5f02ca87688481dbcf155e49ca8b61732f30e542\"\u003e\u003ccode\u003e5f02ca8\u003c/code\u003e\u003c/a\u003e Migrate history to GitHub releases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/a5d591ce8447dd63821779724f96ad3c774c8579\"\u003e\u003ccode\u003ea5d591c\u003c/code\u003e\u003c/a\u003e Migrate history to GitHub releases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/51968f94b5e820adeceef505539fa193ffe2d105\"\u003e\u003ccode\u003e51968f9\u003c/code\u003e\u003c/a\u003e Skip isNaN\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/9e7ca51ade4b325307eedd6b4dec190983e9e2cc\"\u003e\u003ccode\u003e9e7ca51\u003c/code\u003e\u003c/a\u003e perf(parse): cache length, return early (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/144\"\u003e#144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/d6f39b0aab5521a8b118b466a515fd6eb0b9f65e\"\u003e\u003ccode\u003ed6f39b0\u003c/code\u003e\u003c/a\u003e Fix tests for old node\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/6bb701f14e59c5e768933bfae9b578db4ed26c6e\"\u003e\u003ccode\u003e6bb701f\u003c/code\u003e\u003c/a\u003e Remove failing scorecard\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jshttp/cookie/compare/v0.5.0...v0.7.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~blakeembrey\"\u003eblakeembrey\u003c/a\u003e, a new releaser for cookie since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ejs` from 3.1.8 to 3.1.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mde/ejs/releases\"\u003eejs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1.10\u003c/h2\u003e\n\u003cp\u003eVersion 3.1.10\u003c/p\u003e\n\u003ch2\u003ev3.1.9\u003c/h2\u003e\n\u003cp\u003eVersion 3.1.9\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/d3f807dea9ce904e20a47a661f2310ce9134dc2a\"\u003e\u003ccode\u003ed3f807d\u003c/code\u003e\u003c/a\u003e Version 3.1.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/9ee26dde5d7015d9c0e2ff87314cabeac5247c02\"\u003e\u003ccode\u003e9ee26dd\u003c/code\u003e\u003c/a\u003e Mocha TDD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/e469741dca7df2eb400199e1cdb74621e3f89aa5\"\u003e\u003ccode\u003ee469741\u003c/code\u003e\u003c/a\u003e Basic pollution protection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/715e9507fa3e6122dc6430fe0f25a6e6ded300c1\"\u003e\u003ccode\u003e715e950\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/mde/ejs/issues/756\"\u003e#756\u003c/a\u003e from Jeffrey-mu/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/cabe3146ad964a1e98db7742abf435906ca79406\"\u003e\u003ccode\u003ecabe314\u003c/code\u003e\u003c/a\u003e Include advanced usage examples\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/29b076cdbbf3eb1b4323b33299ab6d79391b2c33\"\u003e\u003ccode\u003e29b076c\u003c/code\u003e\u003c/a\u003e Added header\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/11503c79af882e3635b513d57c7f1813792eb127\"\u003e\u003ccode\u003e11503c7\u003c/code\u003e\u003c/a\u003e Merge branch 'main' of github.com:mde/ejs into main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/7690404e2fc1688756938e4d2fc19e0fac77d736\"\u003e\u003ccode\u003e7690404\u003c/code\u003e\u003c/a\u003e Added security banner to README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/f47d7aedd51a983e4f73045f962b1209096b5800\"\u003e\u003ccode\u003ef47d7ae\u003c/code\u003e\u003c/a\u003e Update SECURITY.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/828cea1687e3db459ab09d2f405d2444c7580b90\"\u003e\u003ccode\u003e828cea1\u003c/code\u003e\u003c/a\u003e Update SECURITY.md\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mde/ejs/compare/v3.1.8...v3.1.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `esbuild` from 0.15.5 to 0.25.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evanw/esbuild/releases\"\u003eesbuild's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.25.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eBetter support building projects that use Yarn on Windows (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3131\"\u003e#3131\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3663\"\u003e#3663\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eWith this release, you can now use esbuild to bundle projects that use Yarn Plug'n'Play on Windows on drives other than the \u003ccode\u003eC:\u003c/code\u003e drive. The problem was as follows:\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003eYarn in Plug'n'Play mode on Windows stores its global module cache on the \u003ccode\u003eC:\u003c/code\u003e drive\u003c/li\u003e\n\u003cli\u003eSome developers put their projects on the \u003ccode\u003eD:\u003c/code\u003e drive\u003c/li\u003e\n\u003cli\u003eYarn generates relative paths that use \u003ccode\u003e../..\u003c/code\u003e to get from the project directory to the cache directory\u003c/li\u003e\n\u003cli\u003eWindows-style paths don't support directory traversal between drives via \u003ccode\u003e..\u003c/code\u003e (so \u003ccode\u003eD:\\..\u003c/code\u003e is just \u003ccode\u003eD:\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003eI didn't have access to a Windows machine for testing this edge case\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eYarn works around this edge case by pretending Windows-style paths beginning with \u003ccode\u003eC:\\\u003c/code\u003e are actually Unix-style paths beginning with \u003ccode\u003e/C:/\u003c/code\u003e, so the \u003ccode\u003e../..\u003c/code\u003e path segments are able to navigate across drives inside Yarn's implementation. This was broken for a long time in esbuild but I finally got access to a Windows machine and was able to debug and fix this edge case. So you should now be able to bundle these projects with esbuild.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePreserve parentheses around function expressions (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4252\"\u003e#4252\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe V8 JavaScript VM uses parentheses around function expressions as an optimization hint to immediately compile the function. Otherwise the function would be lazily-compiled, which has additional overhead if that function is always called immediately as lazy compilation involves parsing the function twice. You can read \u003ca href=\"https://v8.dev/blog/preparser\"\u003eV8's blog post about this\u003c/a\u003e for more details.\u003c/p\u003e\n\u003cp\u003ePreviously esbuild did not represent parentheses around functions in the AST so they were lost during compilation. With this change, esbuild will now preserve parentheses around function expressions when they are present in the original source code. This means these optimization hints will not be lost when bundling with esbuild. In addition, esbuild will now automatically add this optimization hint to immediately-invoked function expressions. Here's an example:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003e// Original code\nconst fn0 = () =\u0026gt; 0\nconst fn1 = (() =\u0026gt; 1)\nconsole.log(fn0, function() { return fn1() }())\n\u003cp\u003e// Old output\nconst fn0 = () =\u0026gt; 0;\nconst fn1 = () =\u0026gt; 1;\nconsole.log(fn0, function() {\nreturn fn1();\n}());\u003c/p\u003e\n\u003cp\u003e// New output\nconst fn0 = () =\u0026gt; 0;\nconst fn1 = (() =\u0026gt; 1);\nconsole.log(fn0, (function() {\nreturn fn1();\n})());\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eNote that you do not want to wrap all function expressions in parentheses. This optimization hint should only be used for functions that are called on initial load. Using this hint for functions that are not called on initial load will unnecessarily delay the initial load. Again, see V8's blog post linked above for details.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdate Go from 1.23.10 to 1.23.12 (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4257\"\u003e#4257\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/evanw/esbuild/pull/4258\"\u003e#4258\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThis should have no effect on existing code as this version change does not change Go's operating system support. It may remove certain false positive reports (specifically CVE-2025-4674 and CVE-2025-47907) from vulnerability scanners that only detect which version of the Go compiler esbuild uses.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.25.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix another TypeScript parsing edge case (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4248\"\u003e#4248\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThis fixes a regression with a change in the previous release that tries to more accurately parse TypeScript arrow functions inside the \u003ccode\u003e?:\u003c/code\u003e operator. The regression specifically involves parsing an arrow function containing a \u003ccode\u003e#private\u003c/code\u003e identifier inside the middle of a \u003ccode\u003e?:\u003c/code\u003e ternary operator inside a class body. This was fixed by propagating private identifier state into the parser clone used to speculatively parse the arrow function body. Here is an example of some affected code:\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evanw/esbuild/blob/main/CHANGELOG-2022.md\"\u003eesbuild's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog: 2022\u003c/h1\u003e\n\u003cp\u003eThis changelog documents all esbuild versions published in the year 2022 (versions 0.14.11 through 0.16.12).\u003c/p\u003e\n\u003ch2\u003e0.16.12\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eLoader defaults to \u003ccode\u003ejs\u003c/code\u003e for extensionless files (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/2776\"\u003e#2776\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eCertain packages contain files without an extension. For example, the \u003ccode\u003eyargs\u003c/code\u003e package contains the file \u003ccode\u003eyargs/yargs\u003c/code\u003e which has no extension. Node, Webpack, and Parcel can all understand code that imports \u003ccode\u003eyargs/yargs\u003c/code\u003e because they assume that the file is JavaScript. However, esbuild was previously unable to understand this code because it relies on the file extension to tell it how to interpret the file. With this release, esbuild will now assume files without an extension are JavaScript files. This can be customized by setting the loader for \u003ccode\u003e\u0026quot;\u0026quot;\u003c/code\u003e (the empty string, representing files without an extension) to another loader. For example, if you want files without an extension to be treated as CSS instead, you can do that like this:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eCLI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eesbuild --bundle --loader:=css\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eJS:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eesbuild.build({\n  bundle: true,\n  loader: { '': 'css' },\n})\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eGo:\u003c/p\u003e\n\u003cpre lang=\"go\"\u003e\u003ccode\u003eapi.Build(api.BuildOptions{\n  Bundle: true,\n  Loader: map[string]api.Loader{\u0026quot;\u0026quot;: api.LoaderCSS},\n})\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn addition, the \u003ccode\u003e\u0026quot;type\u0026quot;\u003c/code\u003e field in \u003ccode\u003epackage.json\u003c/code\u003e files now only applies to files with an explicit \u003ccode\u003e.js\u003c/code\u003e, \u003ccode\u003e.jsx\u003c/code\u003e, \u003ccode\u003e.ts\u003c/code\u003e, or \u003ccode\u003e.tsx\u003c/code\u003e extension. Previously it was incorrectly applied by esbuild to all files that had an extension other than \u003ccode\u003e.mjs\u003c/code\u003e, \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cjs\u003c/code\u003e, or \u003ccode\u003e.cts\u003c/code\u003e including extensionless files. So for example an extensionless file in a \u003ccode\u003e\u0026quot;type\u0026quot;: \u0026quot;module\u0026quot;\u003c/code\u003e package is now treated as CommonJS instead of ESM.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.16.11\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid a syntax error in the presence of direct \u003ccode\u003eeval\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/2761\"\u003e#2761\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe behavior of nested \u003ccode\u003efunction\u003c/code\u003e declarations in JavaScript depends on whether the code is run in strict mode or not. It would be problematic if esbuild preserved nested \u003ccode\u003efunction\u003c/code\u003e declarations in its output because then the behavior would depend on whether the output was run in strict mode or not instead of respecting the strict mode behavior of the original source code. To avoid this, esbuild transforms nested \u003ccode\u003efunction\u003c/code\u003e declarations to preserve the intended behavior of the original source code regardless of whether the output is run in strict mode or not:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003e// Original code\nif (true) {\n  function foo() {}\n  console.log(!!foo)\n  foo = null\n  console.log(!!foo)\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/195e05c16f03a341390feef38b8ebf17d3075e14\"\u003e\u003ccode\u003e195e05c\u003c/code\u003e\u003c/a\u003e publish 0.25.9 to npm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/3dac33f2a2ba60387fb9aaca96b3e80b9e0512e0\"\u003e\u003ccode\u003e3dac33f\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3131\"\u003e#3131\u003c/a\u003e, fix \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3663\"\u003e#3663\u003c/a\u003e: yarnpnp + windows + D drive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/0f2c5c8c11dc3fa2a4e9e82df202d0b607e59de4\"\u003e\u003ccode\u003e0f2c5c8\u003c/code\u003e\u003c/a\u003e mock fs now supports multiple volumes on windows\u003c...\n\n_Description has been truncated_","html_url":"https://github.com/1Yoel26/Projet5_Test_App/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/1Yoel26%2FProjet5_Test_App/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"}},{"old_version":"14.0.1","new_version":"20.0.0","update_type":"major","path":null,"pr_created_at":"2025-09-04T02:55:48.000Z","version_change":"14.0.1 → 20.0.0","issue":{"uuid":"2797817984","node_id":"PR_kwDOPpKhDs6mw1CA","number":1,"state":"open","title":"Bump the npm_and_yarn group across 1 directory with 29 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-04T02:55:48.000Z","updated_at":"2025-09-04T02:55:49.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"npm_and_yarn","update_count":29,"packages":[{"name":"webpack","old_version":"5.74.0","new_version":"5.94.0","repository_url":"https://github.com/webpack/webpack"},{"name":"@adobe/css-tools","old_version":"4.0.1","new_version":"4.4.4","repository_url":"https://github.com/adobe/css-tools"},{"name":"@babel/traverse","old_version":"7.18.13","new_version":"7.28.3","repository_url":"https://github.com/babel/babel"},{"name":"@cypress/request","old_version":"2.88.10","new_version":"3.0.9","repository_url":"https://github.com/cypress-io/request"},{"name":"cypress","old_version":"10.4.0","new_version":"15.1.0","repository_url":"https://github.com/cypress-io/cypress"},{"name":"body-parser","old_version":"1.20.0","new_version":"1.20.3","repository_url":"https://github.com/expressjs/body-parser"},{"name":"express","old_version":"4.18.1","new_version":"4.21.2","repository_url":"https://github.com/expressjs/express"},{"name":"braces","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/micromatch/braces"},{"name":"ejs","old_version":"3.1.8","new_version":"3.1.10","repository_url":"https://github.com/mde/ejs"},{"name":"esbuild","old_version":"0.15.5","new_version":"0.25.9","repository_url":"https://github.com/evanw/esbuild"},{"name":"@angular-builders/jest","old_version":"14.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/custom-webpack","old_version":"14.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/build-angular","old_version":"14.2.1","new_version":"20.2.1","repository_url":"https://github.com/angular/angular-cli"},{"name":"ip","old_version":"2.0.0","new_version":"removed","repository_url":"https://github.com/indutny/node-ip"},{"name":"socks","old_version":"2.7.0","new_version":"2.8.7","repository_url":"https://github.com/JoshGlazebrook/socks"},{"name":"json5","old_version":"1.0.1","new_version":"1.0.2","repository_url":"https://github.com/json5/json5"},{"name":"loader-utils","old_version":"2.0.2","new_version":"2.0.4","repository_url":"https://github.com/webpack/loader-utils"},{"name":"semver","old_version":"5.7.1","new_version":"5.7.2","repository_url":"https://github.com/npm/node-semver"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm_and_yarn group with 18 updates in the /front directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [webpack](https://github.com/webpack/webpack) | `5.74.0` | `5.94.0` |\n| [@adobe/css-tools](https://github.com/adobe/css-tools) | `4.0.1` | `4.4.4` |\n| [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) | `7.18.13` | `7.28.3` |\n| [@cypress/request](https://github.com/cypress-io/request) | `2.88.10` | `3.0.9` |\n| [cypress](https://github.com/cypress-io/cypress) | `10.4.0` | `15.1.0` |\n| [body-parser](https://github.com/expressjs/body-parser) | `1.20.0` | `1.20.3` |\n| [express](https://github.com/expressjs/express) | `4.18.1` | `4.21.2` |\n| [braces](https://github.com/micromatch/braces) | `3.0.2` | `3.0.3` |\n| [ejs](https://github.com/mde/ejs) | `3.1.8` | `3.1.10` |\n| [esbuild](https://github.com/evanw/esbuild) | `0.15.5` | `0.25.9` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `14.0.1` | `20.0.0` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `14.0.1` | `20.0.0` |\n| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `14.2.1` | `20.2.1` |\n| [ip](https://github.com/indutny/node-ip) | `2.0.0` | `removed` |\n| [socks](https://github.com/JoshGlazebrook/socks) | `2.7.0` | `2.8.7` |\n| [json5](https://github.com/json5/json5) | `1.0.1` | `1.0.2` |\n| [loader-utils](https://github.com/webpack/loader-utils) | `2.0.2` | `2.0.4` |\n| [semver](https://github.com/npm/node-semver) | `5.7.1` | `5.7.2` |\n\n\nUpdates `webpack` from 5.74.0 to 5.94.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/webpack/webpack/releases\"\u003ewebpack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.94.0\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded runtime condition for harmony reexport checked\u003c/li\u003e\n\u003cli\u003eHandle properly \u003ccode\u003edata\u003c/code\u003e/\u003ccode\u003ehttp\u003c/code\u003e/\u003ccode\u003ehttps\u003c/code\u003e protocols in source maps\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003ebigint\u003c/code\u003e optimistic when browserslist not found\u003c/li\u003e\n\u003cli\u003eMove \u003ccode\u003e@​types/eslint-scope\u003c/code\u003e to dev deps\u003c/li\u003e\n\u003cli\u003eRelated in asset stats is now always an array when no related found\u003c/li\u003e\n\u003cli\u003eHandle ASI for export declarations\u003c/li\u003e\n\u003cli\u003eMangle destruction incorrect with export named default properly\u003c/li\u003e\n\u003cli\u003eFixed unexpected asi generation with sequence expression\u003c/li\u003e\n\u003cli\u003eFixed a lot of types\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded new external type \u0026quot;module-import\u0026quot;\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003ewebpackIgnore\u003c/code\u003e for \u003ccode\u003enew URL()\u003c/code\u003e construction\u003c/li\u003e\n\u003cli\u003e[CSS] \u003ccode\u003e@import\u003c/code\u003e pathinfo support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSecurity\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed DOM clobbering in auto public path\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.93.0\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eGenerate correct relative path to runtime chunks\u003c/li\u003e\n\u003cli\u003eMakes \u003ccode\u003eDefinePlugin\u003c/code\u003e quieter under default log level\u003c/li\u003e\n\u003cli\u003eFixed mangle destructuring default in namespace import\u003c/li\u003e\n\u003cli\u003eFixed consumption of eager shared modules for module federation\u003c/li\u003e\n\u003cli\u003eStrip slash for pretty regexp\u003c/li\u003e\n\u003cli\u003eCalculate correct contenthash for CSS generator options\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded the \u003ccode\u003ebinary\u003c/code\u003e generator option for asset modules to explicitly keep source maps produced by loaders\u003c/li\u003e\n\u003cli\u003eAdded the \u003ccode\u003emodern-module\u003c/code\u003e library value for tree shakable output\u003c/li\u003e\n\u003cli\u003eAdded the \u003ccode\u003eoverrideStrict\u003c/code\u003e option to override strict or non-strict mode for javascript modules\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.92.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDoesn't crash with an error when the css experiment is enabled and contenthash is used\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.92.0\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect tidle range's comutation for module federation\u003c/li\u003e\n\u003cli\u003eConsider runtime for pure expression dependency update hash\u003c/li\u003e\n\u003cli\u003eReturn value in the \u003ccode\u003esubtractRuntime\u003c/code\u003e function for runtime logic\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/eabf85d8580dfcb876b56957ba5488222a4f7873\"\u003e\u003ccode\u003eeabf85d\u003c/code\u003e\u003c/a\u003e chore(release): 5.94.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/955e057abc6cc83cbc3fa1e1ef67a49758bf5a61\"\u003e\u003ccode\u003e955e057\u003c/code\u003e\u003c/a\u003e security: fix DOM clobbering in auto public path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/98223873625a029b9903d5ec6c0235b8f9fb5a66\"\u003e\u003ccode\u003e9822387\u003c/code\u003e\u003c/a\u003e test: fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/cbb86ede32ab53d8eade6efee30da2463f0082ec\"\u003e\u003ccode\u003ecbb86ed\u003c/code\u003e\u003c/a\u003e test: fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/5ac3d7f2cdce6da63a8dfb07e9dbbd95756bf7a2\"\u003e\u003ccode\u003e5ac3d7f\u003c/code\u003e\u003c/a\u003e fix: unexpected asi generation with sequence expression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/2411661bd1bedf1b2efc23c76d595c189425d39f\"\u003e\u003ccode\u003e2411661\u003c/code\u003e\u003c/a\u003e security: fix DOM clobbering in auto public path\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/b8c03d47726a57e0dc6ba58b4f96f0e81b168268\"\u003e\u003ccode\u003eb8c03d4\u003c/code\u003e\u003c/a\u003e fix: unexpected asi generation with sequence expression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/f46a03ccbc2b96ff3552642fea0d7402f7880865\"\u003e\u003ccode\u003ef46a03c\u003c/code\u003e\u003c/a\u003e revert: do not use heuristic fallback for \u0026quot;module-import\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/60f189871a4cdc5d595663d6babadac74f2f6a7d\"\u003e\u003ccode\u003e60f1898\u003c/code\u003e\u003c/a\u003e fix: do not use heuristic fallback for \u0026quot;module-import\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpack/webpack/commit/66306aa45659ef4e8dac8226798931c228fdb204\"\u003e\u003ccode\u003e66306aa\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: module-import get fallback from externalsPresets\u0026quot;\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/webpack/webpack/compare/v5.74.0...v5.94.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~evilebottnawi\"\u003eevilebottnawi\u003c/a\u003e, a new releaser for webpack since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@adobe/css-tools` from 4.0.1 to 4.4.4\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/adobe/css-tools/blob/main/docs/CHANGELOG.md\"\u003e\u003ccode\u003e@​adobe/css-tools\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.4.4] - 2025-07-22\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch from yarn to npm for package management\u003c/li\u003e\n\u003cli\u003eSwitch from eslint to biome for code formatting and linting\u003c/li\u003e\n\u003cli\u003eReformat codebase to comply with biome recommendations\u003c/li\u003e\n\u003cli\u003eSwitch from webpack to rollup for bundling\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix module exports to ensure proper compatibility with bundlers\u003c/li\u003e\n\u003cli\u003eAdd validation check to prevent future export issues\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.4.3] - 2025-05-15\u003c/h2\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix polynomial regular expression vulnerability on uncontrolled data\u003c/li\u003e\n\u003cli\u003eRefactor code to enable GitHub security static analysis\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove parsing performance with minor optimizations\u003c/li\u003e\n\u003cli\u003eReplace regex patterns with string search (indexOf-based) for better performance\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new utility functions with comprehensive unit tests\u003c/li\u003e\n\u003cli\u003eAdd improved formatting for CSS Grid template areas (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/283\"\u003e#283\u003c/a\u003e by \u003ca href=\"https://github.com/jogibear9988\"\u003e\u003ccode\u003e@​jogibear9988\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix TypeScript error with ConstructorParameters in Parcel bundler (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/444\"\u003e#444\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.4.2] - 2025-02-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regular expression for parsing quoted values in parentheses\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.4.0] - 2024-06-05\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for CSS \u003ccode\u003e@starting-style\u003c/code\u003e at-rule (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/319\"\u003e#319\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.3.3] - 2024-01-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate package export configuration (\u003ca href=\"https://redirect.github.com/adobe/css-tools/issues/271\"\u003e#271\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.3.2] - 2023-11-28\u003c/h2\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix ReDoS vulnerability with crafted CSS strings - CVE-2023-48631\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/adobe/css-tools/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@babel/traverse` from 7.18.13 to 7.28.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/babel/babel/releases\"\u003e\u003ccode\u003e@​babel/traverse\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.28.3 (2025-08-14)\u003c/h2\u003e\n\u003ch4\u003e:eyeglasses: Spec Compliance\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-helper-create-class-features-plugin\u003c/code\u003e, \u003ccode\u003ebabel-plugin-proposal-decorators\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-class-static-block\u003c/code\u003e, \u003ccode\u003ebabel-preset-env\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17443\"\u003e#17443\u003c/a\u003e [static blocks] Do not inject new static fields after static code (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:bug: Bug Fix\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-parser\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17465\"\u003e#17465\u003c/a\u003e fix(parser/typescript): parse \u003ccode\u003eimport(\u0026quot;./a\u0026quot;, {with:{},})\u003c/code\u003e (\u003ca href=\"https://github.com/easrng\"\u003e\u003ccode\u003e@​easrng\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17478\"\u003e#17478\u003c/a\u003e fix(parser): stop subscript parsing on async arrow (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:nail_care: Polish\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-plugin-transform-regenerator\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-runtime\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17363\"\u003e#17363\u003c/a\u003e Do not save last yield in call in temp var (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:memo: Documentation\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17448\"\u003e#17448\u003c/a\u003e move eslint-{parser,plugin} docs to the website (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:house: Internal\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17454\"\u003e#17454\u003c/a\u003e Enable type checking for \u003ccode\u003escripts\u003c/code\u003e and \u003ccode\u003ebabel-worker.cjs\u003c/code\u003e (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:microscope: Output optimization\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-plugin-proposal-destructuring-private\u003c/code\u003e, \u003ccode\u003ebabel-plugin-proposal-do-expressions\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17444\"\u003e#17444\u003c/a\u003e Optimize do expression output (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 5\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBabel Bot (\u003ca href=\"https://github.com/babel-bot\"\u003e\u003ccode\u003e@​babel-bot\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHuáng Jùnliàng (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eJam Balaya (\u003ca href=\"https://github.com/JamBalaya56562\"\u003e\u003ccode\u003e@​JamBalaya56562\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNicolò Ribaudo (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eeasrng (\u003ca href=\"https://github.com/easrng\"\u003e\u003ccode\u003e@​easrng\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.28.2 (2025-07-24)\u003c/h2\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/souhailaS\"\u003e\u003ccode\u003e@​souhailaS\u003c/code\u003e\u003c/a\u003e for your first PR!\u003c/p\u003e\n\u003ch4\u003e:bug: Bug Fix\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-types\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17445\"\u003e#17445\u003c/a\u003e [babel 7] Make \u003ccode\u003eoperator\u003c/code\u003e param in \u003ccode\u003et.tsTypeOperator\u003c/code\u003e optional (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ebabel-helpers\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-async-generator-functions\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-regenerator\u003c/code\u003e, \u003ccode\u003ebabel-preset-env\u003c/code\u003e, \u003ccode\u003ebabel-runtime-corejs3\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17441\"\u003e#17441\u003c/a\u003e fix: \u003ccode\u003eregeneratorDefine\u003c/code\u003e compatibility with es5 strict mode (\u003ca href=\"https://github.com/liuxingbaoyu\"\u003e\u003ccode\u003e@​liuxingbaoyu\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 4\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBabel Bot (\u003ca href=\"https://github.com/babel-bot\"\u003e\u003ccode\u003e@​babel-bot\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNicolò Ribaudo (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSOUHAILA SERBOUT (\u003ca href=\"https://github.com/souhailaS\"\u003e\u003ccode\u003e@​souhailaS\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/liuxingbaoyu\"\u003e\u003ccode\u003e@​liuxingbaoyu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.28.1 (2025-07-12)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/babel/babel/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​babel/traverse\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.28.3 (2025-08-14)\u003c/h2\u003e\n\u003ch4\u003e:eyeglasses: Spec Compliance\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-helper-create-class-features-plugin\u003c/code\u003e, \u003ccode\u003ebabel-plugin-proposal-decorators\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-class-static-block\u003c/code\u003e, \u003ccode\u003ebabel-preset-env\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17443\"\u003e#17443\u003c/a\u003e [static blocks] Do not inject new static fields after static code (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:bug: Bug Fix\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-parser\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17465\"\u003e#17465\u003c/a\u003e fix(parser/typescript): parse \u003ccode\u003eimport(\u0026quot;./a\u0026quot;, {with:{},})\u003c/code\u003e (\u003ca href=\"https://github.com/easrng\"\u003e\u003ccode\u003e@​easrng\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17478\"\u003e#17478\u003c/a\u003e fix(parser): stop subscript parsing on async arrow (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:nail_care: Polish\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-plugin-transform-regenerator\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-runtime\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17363\"\u003e#17363\u003c/a\u003e Do not save last yield in call in temp var (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:memo: Documentation\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17448\"\u003e#17448\u003c/a\u003e move eslint-{parser,plugin} docs to the website (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:house: Internal\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17454\"\u003e#17454\u003c/a\u003e Enable type checking for \u003ccode\u003escripts\u003c/code\u003e and \u003ccode\u003ebabel-worker.cjs\u003c/code\u003e (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:microscope: Output optimization\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-plugin-proposal-destructuring-private\u003c/code\u003e, \u003ccode\u003ebabel-plugin-proposal-do-expressions\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17444\"\u003e#17444\u003c/a\u003e Optimize do expression output (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.28.2 (2025-07-24)\u003c/h2\u003e\n\u003ch4\u003e:bug: Bug Fix\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-types\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17445\"\u003e#17445\u003c/a\u003e [babel 7] Make \u003ccode\u003eoperator\u003c/code\u003e param in \u003ccode\u003et.tsTypeOperator\u003c/code\u003e optional (\u003ca href=\"https://github.com/nicolo-ribaudo\"\u003e\u003ccode\u003e@​nicolo-ribaudo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ebabel-helpers\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-async-generator-functions\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-regenerator\u003c/code\u003e, \u003ccode\u003ebabel-preset-env\u003c/code\u003e, \u003ccode\u003ebabel-runtime-corejs3\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17441\"\u003e#17441\u003c/a\u003e fix: \u003ccode\u003eregeneratorDefine\u003c/code\u003e compatibility with es5 strict mode (\u003ca href=\"https://github.com/liuxingbaoyu\"\u003e\u003ccode\u003e@​liuxingbaoyu\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.28.1 (2025-07-12)\u003c/h2\u003e\n\u003ch4\u003e:bug: Bug Fix\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-plugin-transform-async-generator-functions\u003c/code\u003e, \u003ccode\u003ebabel-plugin-transform-regenerator\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17426\"\u003e#17426\u003c/a\u003e fix: \u003ccode\u003eregenerator\u003c/code\u003e correctly handles \u003ccode\u003ethrow\u003c/code\u003e outside of \u003ccode\u003etry\u003c/code\u003e (\u003ca href=\"https://github.com/liuxingbaoyu\"\u003e\u003ccode\u003e@​liuxingbaoyu\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:memo: Documentation\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-types\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17422\"\u003e#17422\u003c/a\u003e Add missing FunctionParameter docs (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e:leftwards_arrow_with_hook: Revert\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-plugin-proposal-destructuring-private\u003c/code\u003e, \u003ccode\u003ebabel-plugin-proposal-do-expressions\u003c/code\u003e, \u003ccode\u003ebabel-types\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17432\"\u003e#17432\u003c/a\u003e Do not mark OptionalMemberExpresion as LVal (\u003ca href=\"https://github.com/JLHwung\"\u003e\u003ccode\u003e@​JLHwung\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.28.0 (2025-07-02)\u003c/h2\u003e\n\u003ch4\u003e:rocket: New Feature\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ebabel-node\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/babel/babel/pull/17147\"\u003e#17147\u003c/a\u003e Support top level await in node repl (\u003ca href=\"https://github.com/liuxingbaoyu\"\u003e\u003ccode\u003e@​liuxingbaoyu\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ebabel-types\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/ef155f5ca83c73dbc1ea8d95216830b7dc3b0ac2\"\u003e\u003ccode\u003eef155f5\u003c/code\u003e\u003c/a\u003e v7.28.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/741cbd2381ac0cda3afd42bc04454a87d9d8762a\"\u003e\u003ccode\u003e741cbd2\u003c/code\u003e\u003c/a\u003e chore: fix various typos across codebase (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17476\"\u003e#17476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/5051613c021b6604929278d6811fa671f49dfbdb\"\u003e\u003ccode\u003e5051613\u003c/code\u003e\u003c/a\u003e Type-check \u003ccode\u003e.d.ts\u003c/code\u003e file with \u003ccode\u003estrict: true\u003c/code\u003e (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17461\"\u003e#17461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/ccc5fae96f5281ae1ee49fac74c7c275b9111ead\"\u003e\u003ccode\u003eccc5fae\u003c/code\u003e\u003c/a\u003e v7.28.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/4b4e7e20aaf09e61e56ac11bff71d7dcab227f33\"\u003e\u003ccode\u003e4b4e7e2\u003c/code\u003e\u003c/a\u003e Create babel-helper-globals (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17297\"\u003e#17297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/cf5ae035632e1d60235a8635d3369f4b169f75dc\"\u003e\u003ccode\u003ecf5ae03\u003c/code\u003e\u003c/a\u003e LVal coverage updates (Part 2) (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17391\"\u003e#17391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/6ca9df4da2c7f3fd2abee0902f246d5623b62c2a\"\u003e\u003ccode\u003e6ca9df4\u003c/code\u003e\u003c/a\u003e Accept bigints in \u003ccode\u003et.bigIntLiteral\u003c/code\u003e factory (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17378\"\u003e#17378\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/75f01403f4f1abd5e9a370f3fdc63f2f6e1d580e\"\u003e\u003ccode\u003e75f0140\u003c/code\u003e\u003c/a\u003e Parse discard binding (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17163\"\u003e#17163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/4ce7dfde1d2f6a8146d2b953d3afb8fc3b023def\"\u003e\u003ccode\u003e4ce7dfd\u003c/code\u003e\u003c/a\u003e v7.27.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/babel/babel/commit/6c8faf172180280cd15b2f9aa1f35ad233f8a8c2\"\u003e\u003ccode\u003e6c8faf1\u003c/code\u003e\u003c/a\u003e add generateUidBasedOnNode test cases (\u003ca href=\"https://github.com/babel/babel/tree/HEAD/packages/babel-traverse/issues/17381\"\u003e#17381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/babel/babel/commits/v7.28.3/packages/babel-traverse\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@cypress/request` from 2.88.10 to 3.0.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/cypress-io/request/releases\"\u003e\u003ccode\u003e@​cypress/request\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.0.9\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.8...v3.0.9\"\u003e3.0.9\u003c/a\u003e (2025-07-24)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate patch version of form-data to address new critical Snyk vulnerability (\u003ca href=\"https://github.com/cypress-io/request/commit/a2f3199f70724c9c3db992d1f2017e9b6a3d9539\"\u003ea2f3199\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.8\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.7...v3.0.8\"\u003e3.0.8\u003c/a\u003e (2025-03-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency qs to v6.14.0 (\u003ca href=\"https://github.com/cypress-io/request/commit/16066b65e8c4958b49cfaa77de25b84b0f0ca4d3\"\u003e16066b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.7\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.6...v3.0.7\"\u003e3.0.7\u003c/a\u003e (2024-12-09)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency qs to v6.13.1 (\u003ca href=\"https://github.com/cypress-io/request/commit/00d1835ca237bf2aab535be470faa972cc5808c7\"\u003e00d1835\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.5...v3.0.6\"\u003e3.0.6\u003c/a\u003e (2024-10-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency tough-cookie to v5 (\u003ca href=\"https://github.com/cypress-io/request/commit/65ad82c9f16e53653d6ee293cc330e38a305e423\"\u003e65ad82c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.4...v3.0.5\"\u003e3.0.5\u003c/a\u003e (2024-09-09)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency form-data to v4 (\u003ca href=\"https://github.com/cypress-io/request/commit/6b905804c035f51403b57560bbe7ed52602c1d60\"\u003e6b90580\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.3...v3.0.4\"\u003e3.0.4\u003c/a\u003e (2024-09-05)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update dependency form-data to ~2.5.0 (\u003ca href=\"https://github.com/cypress-io/request/commit/87b5e920ca1101fe0c28b5922222375fb7232fb7\"\u003e87b5e92\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.0.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/cypress-io/request/compare/v3.0.2...v3.0.3\"\u003e3.0.3\u003c/a\u003e (2024-09-05)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/3cffd53a243630c517fb31c3cedc0a65012f4868\"\u003e\u003ccode\u003e3cffd53\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/88\"\u003e#88\u003c/a\u003e from ahayes91/update-form-data\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/7c424d5a23c6464774dc96778533bf88ad7d3f0a\"\u003e\u003ccode\u003e7c424d5\u003c/code\u003e\u003c/a\u003e chore: fix lint issue\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/7f6fdec79d0a7cc90510429c1301263f51166b3b\"\u003e\u003ccode\u003e7f6fdec\u003c/code\u003e\u003c/a\u003e chore: remove test now that we are on form-data 4.0.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/a2f3199f70724c9c3db992d1f2017e9b6a3d9539\"\u003e\u003ccode\u003ea2f3199\u003c/code\u003e\u003c/a\u003e fix: update patch version of form-data to address new critical Snyk vulnerabi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/a1252dd285d95c3aa8754b95ce3933f3e059f11d\"\u003e\u003ccode\u003ea1252dd\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/84\"\u003e#84\u003c/a\u003e from cypress-io/renovate/qs-6.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/16066b65e8c4958b49cfaa77de25b84b0f0ca4d3\"\u003e\u003ccode\u003e16066b6\u003c/code\u003e\u003c/a\u003e fix(deps): update dependency qs to v6.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/5fd077003868ae39ca43871ad1604e92404000ae\"\u003e\u003ccode\u003e5fd0770\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/83\"\u003e#83\u003c/a\u003e from cypress-io/renovate/cimg-node-18.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/b42b322d62c4d7c302bc049016143d4aca673220\"\u003e\u003ccode\u003eb42b322\u003c/code\u003e\u003c/a\u003e chore(deps): update node.js to v18.20.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/e79201a5e61b88cefd6437802b4feb2fa4dbf45f\"\u003e\u003ccode\u003ee79201a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/80\"\u003e#80\u003c/a\u003e from cypress-io/renovate/cimg-node-18.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/request/commit/0e4e875256b126d9e603e3970078975ba6f4f97f\"\u003e\u003ccode\u003e0e4e875\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/cypress-io/request/issues/81\"\u003e#81\u003c/a\u003e from cypress-io/renovate/qs-6.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/cypress-io/request/compare/v2.88.10...v3.0.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cypress` from 10.4.0 to 15.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/cypress-io/cypress/releases\"\u003ecypress's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev15.1.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#15.1.0\"\u003ehttps://docs.cypress.io/app/references/changelog#15.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev15.0.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#15.0.0\"\u003ehttps://docs.cypress.io/app/references/changelog#15.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.4\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-4\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-3\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.2\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-2\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.5.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-5-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-5-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.4.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-4-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-4-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.4.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-4-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-4-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-3\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.2\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-2\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.3.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-3-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-3-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.2.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-2-1\"\u003ehttps://docs.cypress.io/app/references/changelog#14-2-1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.2.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-2-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-2-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.1.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-1-0\"\u003ehttps://docs.cypress.io/app/references/changelog#14-1-0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev14.0.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://docs.cypress.io/app/references/changelog#14-0-3\"\u003ehttps://docs.cypress.io/app/references/changelog#14-0-3\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/591de461fd8ca9a56af617845b2c55b5b23ebf29\"\u003e\u003ccode\u003e591de46\u003c/code\u003e\u003c/a\u003e chore: release 15.1.0 (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32401\"\u003e#32401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/8d0aee00b129a87bb285df9665018b9c1589d1ee\"\u003e\u003ccode\u003e8d0aee0\u003c/code\u003e\u003c/a\u003e fix: wrap the \u003ccode\u003etsx\u003c/code\u003e loader path in quotes (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32400\"\u003e#32400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/21be37e72e475be2122ab91f8119e48f1d82c32f\"\u003e\u003ccode\u003e21be37e\u003c/code\u003e\u003c/a\u003e fix: move \u003ccode\u003e@​cypress/schematic\u003c/code\u003e npm registry query to https (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32390\"\u003e#32390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/30f8bc39682013d0715e40bfd84712e32b9f133e\"\u003e\u003ccode\u003e30f8bc3\u003c/code\u003e\u003c/a\u003e chore: fix the package name in docs. (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32399\"\u003e#32399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/61307b09943fb5bcf3271279f3fd2f95dadd27d2\"\u003e\u003ccode\u003e61307b0\u003c/code\u003e\u003c/a\u003e chore(deps): remove sharp dependency resolution (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32378\"\u003e#32378\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/d0570f8fec3b6d661d902e558fefbadf430b0b40\"\u003e\u003ccode\u003ed0570f8\u003c/code\u003e\u003c/a\u003e chore: Update Chrome (beta) to 140.0.7339.41 (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32375\"\u003e#32375\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/695fa95c3ee687293c603bfecc497a71c88ae8c3\"\u003e\u003ccode\u003e695fa95\u003c/code\u003e\u003c/a\u003e chore: updating v8 snapshot cache (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32387\"\u003e#32387\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/505eb1397d509f197ca0f4ce299ee13d13b3112a\"\u003e\u003ccode\u003e505eb13\u003c/code\u003e\u003c/a\u003e chore: updating v8 snapshot cache (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32386\"\u003e#32386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/ef6ad2aeb61b8fd78c05393b645adb11befe5e7f\"\u003e\u003ccode\u003eef6ad2a\u003c/code\u003e\u003c/a\u003e chore: updating v8 snapshot cache (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32385\"\u003e#32385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cypress-io/cypress/commit/58bee2839c9326a305002c233bbf9e9684442363\"\u003e\u003ccode\u003e58bee28\u003c/code\u003e\u003c/a\u003e fix: force gtk version 3 to avoid Electron 36 from crashing (\u003ca href=\"https://redirect.github.com/cypress-io/cypress/issues/32372\"\u003e#32372\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/cypress-io/cypress/compare/v10.4.0...v15.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~cypress-npm-publisher\"\u003ecypress-npm-publisher\u003c/a\u003e, a new releaser for cypress since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `body-parser` from 1.20.0 to 1.20.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/expressjs/body-parser/releases\"\u003ebody-parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.20.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eImportant\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.13.0\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003edepth\u003c/code\u003e option to customize the depth level in the parser\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eIMPORTANT:\u003c/strong\u003e The default \u003ccode\u003edepth\u003c/code\u003e level for parsing URL-encoded data is now \u003ccode\u003e32\u003c/code\u003e (previously was \u003ccode\u003eInfinity\u003c/code\u003e). \u003ca href=\"https://github.com/expressjs/body-parser/blob/17529513673e39ba79886a7ce3363320cf1c0c50/README.md#depth\"\u003eDocumentation\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003echore: add support for OSSF scorecard reporting by \u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/522\"\u003eexpressjs/body-parser#522\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix errors in ci github action for node 8 and 9 by \u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/523\"\u003eexpressjs/body-parser#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: pin to node@22.4.1 by \u003ca href=\"https://github.com/wesleytodd\"\u003e\u003ccode\u003e@​wesleytodd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/527\"\u003eexpressjs/body-parser#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeps: qs@6.12.3 by \u003ca href=\"https://github.com/melikhov-dev\"\u003e\u003ccode\u003e@​melikhov-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/521\"\u003eexpressjs/body-parser#521\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd OSSF Scorecard badge by \u003ca href=\"https://github.com/bjohansebas\"\u003e\u003ccode\u003e@​bjohansebas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/531\"\u003eexpressjs/body-parser#531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLinter by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/534\"\u003eexpressjs/body-parser#534\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 1.20.3 by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/535\"\u003eexpressjs/body-parser#535\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/522\"\u003eexpressjs/body-parser#522\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/melikhov-dev\"\u003e\u003ccode\u003e@​melikhov-dev\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/521\"\u003eexpressjs/body-parser#521\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bjohansebas\"\u003e\u003ccode\u003e@​bjohansebas\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/531\"\u003eexpressjs/body-parser#531\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/body-parser/pull/534\"\u003eexpressjs/body-parser#534\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/expressjs/body-parser/compare/1.20.2...1.20.3\"\u003ehttps://github.com/expressjs/body-parser/compare/1.20.2...1.20.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.20.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix strict json error message on Node.js 19+\u003c/li\u003e\n\u003cli\u003edeps: content-type@~1.0.5\n\u003cul\u003e\n\u003cli\u003eperf: skip value escaping when unnecessary\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: raw-body@2.5.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.20.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.11.0\u003c/li\u003e\n\u003cli\u003eperf: remove unnecessary object clone\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/expressjs/body-parser/blob/master/HISTORY.md\"\u003ebody-parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.20.3 / 2024-09-10\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.13.0\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003edepth\u003c/code\u003e option to customize the depth level in the parser\u003c/li\u003e\n\u003cli\u003eIMPORTANT: The default \u003ccode\u003edepth\u003c/code\u003e level for parsing URL-encoded data is now \u003ccode\u003e32\u003c/code\u003e (previously was \u003ccode\u003eInfinity\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e1.20.2 / 2023-02-21\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix strict json error message on Node.js 19+\u003c/li\u003e\n\u003cli\u003edeps: content-type@~1.0.5\n\u003cul\u003e\n\u003cli\u003eperf: skip value escaping when unnecessary\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: raw-body@2.5.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e1.20.1 / 2022-10-06\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003edeps: qs@6.11.0\u003c/li\u003e\n\u003cli\u003eperf: remove unnecessary object clone\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/17529513673e39ba79886a7ce3363320cf1c0c50\"\u003e\u003ccode\u003e1752951\u003c/code\u003e\u003c/a\u003e 1.20.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/39744cfe2ac4fb37a19ed7c43e3a74332f428e17\"\u003e\u003ccode\u003e39744cf\u003c/code\u003e\u003c/a\u003e chore: linter (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/534\"\u003e#534\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/b2695c4450f06ba3b0ccf48d872a229bb41c9bce\"\u003e\u003ccode\u003eb2695c4\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/ade0f3f82f91086d6cd2ed2cb4b0aff448fbc2e5\"\u003e\u003ccode\u003eade0f3f\u003c/code\u003e\u003c/a\u003e add scorecard to readme (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/99a1bd62456f932004b84767d6393bc261f75d36\"\u003e\u003ccode\u003e99a1bd6\u003c/code\u003e\u003c/a\u003e deps: qs@6.12.3 (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/521\"\u003e#521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/947859160527c7aaaa20da79e2c3ba542baaaf66\"\u003e\u003ccode\u003e9478591\u003c/code\u003e\u003c/a\u003e fix: pin to node@22.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/83db46a1e5512135ce01ed90b9132ee16a2657a8\"\u003e\u003ccode\u003e83db46a\u003c/code\u003e\u003c/a\u003e ci: fix errors in ci github action for node 8 and 9 (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/523\"\u003e#523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/9d4e2125b580b055b2a3aa140df9b8fce363af46\"\u003e\u003ccode\u003e9d4e212\u003c/code\u003e\u003c/a\u003e chore: add support for OSSF scorecard reporting (\u003ca href=\"https://redirect.github.com/expressjs/body-parser/issues/522\"\u003e#522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/ee91374eae1555af679550b1d2fb5697d9924109\"\u003e\u003ccode\u003eee91374\u003c/code\u003e\u003c/a\u003e 1.20.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/body-parser/commit/368a93a613a1ac6cbdec9694f4018e707b3c1f50\"\u003e\u003ccode\u003e368a93a\u003c/code\u003e\u003c/a\u003e Fix strict json error message on Node.js 19+\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/expressjs/body-parser/compare/1.20.0...1.20.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~ulisesgascon\"\u003eulisesgascon\u003c/a\u003e, a new releaser for body-parser since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `express` from 4.18.1 to 4.21.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/expressjs/express/releases\"\u003eexpress's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.21.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd funding field (v4) by \u003ca href=\"https://github.com/bjohansebas\"\u003e\u003ccode\u003e@​bjohansebas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/6065\"\u003eexpressjs/express#6065\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeps: path-to-regexp@0.1.11 by \u003ca href=\"https://github.com/blakeembrey\"\u003e\u003ccode\u003e@​blakeembrey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5956\"\u003eexpressjs/express#5956\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeps: bump path-to-regexp@0.1.12 by \u003ca href=\"https://github.com/jonchurch\"\u003e\u003ccode\u003e@​jonchurch\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/6209\"\u003eexpressjs/express#6209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 4.21.2 by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/6094\"\u003eexpressjs/express#6094\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/expressjs/express/compare/4.21.1...4.21.2\"\u003ehttps://github.com/expressjs/express/compare/4.21.1...4.21.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.21.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBackport a fix for CVE-2024-47764 to the 4.x branch by \u003ca href=\"https://github.com/joshbuker\"\u003e\u003ccode\u003e@​joshbuker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/6029\"\u003eexpressjs/express#6029\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 4.21.1 by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/6031\"\u003eexpressjs/express#6031\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/expressjs/express/compare/4.21.0...4.21.1\"\u003ehttps://github.com/expressjs/express/compare/4.21.0...4.21.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.21.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003e\u0026quot;back\u0026quot;\u003c/code\u003e magic string in redirects by \u003ca href=\"https://github.com/blakeembrey\"\u003e\u003ccode\u003e@​blakeembrey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5935\"\u003eexpressjs/express#5935\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efinalhandler@1.3.1 by \u003ca href=\"https://github.com/wesleytodd\"\u003e\u003ccode\u003e@​wesleytodd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5954\"\u003eexpressjs/express#5954\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): serve-static@1.16.2 by \u003ca href=\"https://github.com/wesleytodd\"\u003e\u003ccode\u003e@​wesleytodd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5951\"\u003eexpressjs/express#5951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgraded dependency qs to 6.13.0 to match qs in body-parser by \u003ca href=\"https://github.com/agadzinski93\"\u003e\u003ccode\u003e@​agadzinski93\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5946\"\u003eexpressjs/express#5946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agadzinski93\"\u003e\u003ccode\u003e@​agadzinski93\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5946\"\u003eexpressjs/express#5946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/expressjs/express/compare/4.20.0...4.21.0\"\u003ehttps://github.com/expressjs/express/compare/4.20.0...4.21.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.20.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eImportant\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIMPORTANT: The default \u003ccode\u003edepth\u003c/code\u003e level for parsing URL-encoded data is now \u003ccode\u003e32\u003c/code\u003e (previously was \u003ccode\u003eInfinity\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003eRemove link renderization in html while using \u003ccode\u003eres.redirect\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e4.19.2 Staging by \u003ca href=\"https://github.com/wesleytodd\"\u003e\u003ccode\u003e@​wesleytodd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5561\"\u003eexpressjs/express#5561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eremove duplicate location test for data uri by \u003ca href=\"https://github.com/wesleytodd\"\u003e\u003ccode\u003e@​wesleytodd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5562\"\u003eexpressjs/express#5562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: document beta releases expectations by \u003ca href=\"https://github.com/marco-ippolito\"\u003e\u003ccode\u003e@​marco-ippolito\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5565\"\u003eexpressjs/express#5565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCut down on duplicated CI runs by \u003ca href=\"https://github.com/jonchurch\"\u003e\u003ccode\u003e@​jonchurch\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5564\"\u003eexpressjs/express#5564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a Threat Model by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5526\"\u003eexpressjs/express#5526\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAssign captain of encodeurl by \u003ca href=\"https://github.com/blakeembrey\"\u003e\u003ccode\u003e@​blakeembrey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5579\"\u003eexpressjs/express#5579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNominate jonchurch as repo captain for \u003ccode\u003ehttp-errors\u003c/code\u003e, \u003ccode\u003eexpressjs.com\u003c/code\u003e, \u003ccode\u003emorgan\u003c/code\u003e, \u003ccode\u003ecors\u003c/code\u003e, \u003ccode\u003ebody-parser\u003c/code\u003e by \u003ca href=\"https://github.com/jonchurch\"\u003e\u003ccode\u003e@​jonchurch\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5587\"\u003eexpressjs/express#5587\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update Security.md by \u003ca href=\"https://github.com/inigomarquinez\"\u003e\u003ccode\u003e@​inigomarquinez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5590\"\u003eexpressjs/express#5590\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update triage nomination policy by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5600\"\u003eexpressjs/express#5600\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd CodeQL (SAST) by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5433\"\u003eexpressjs/express#5433\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: add UlisesGascon as triage initiative captain by \u003ca href=\"https://github.com/UlisesGascon\"\u003e\u003ccode\u003e@​UlisesGascon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/expressjs/express/pull/5605\"\u003eexpressjs/express#5605\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/expressjs/express/blob/4.21.2/History.md\"\u003eexpress's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.21.2 / 2024-11-06\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003edeps: path-to-regexp@0.1.12\n\u003cul\u003e\n\u003cli\u003eFix backtracking protection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: path-to-regexp@0.1.11\n\u003cul\u003e\n\u003cli\u003eThrows an error on invalid path values\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.21.1 / 2024-10-08\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eBackported a fix for \u003ca href=\"https://nvd.nist.gov/vuln/detail/CVE-2024-47764\"\u003eCVE-2024-47764\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.21.0 / 2024-09-11\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003eres.location(\u0026quot;back\u0026quot;)\u003c/code\u003e and \u003ccode\u003eres.redirect(\u0026quot;back\u0026quot;)\u003c/code\u003e magic string\u003c/li\u003e\n\u003cli\u003edeps: serve-static@1.16.2\n\u003cul\u003e\n\u003cli\u003eincludes send@0.19.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: finalhandler@1.3.1\u003c/li\u003e\n\u003cli\u003edeps: qs@6.13.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.20.0 / 2024-09-10\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003edeps: serve-static@0.16.0\n\u003cul\u003e\n\u003cli\u003eRemove link renderization in html while redirecting\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: send@0.19.0\n\u003cul\u003e\n\u003cli\u003eRemove link renderization in html while redirecting\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: body-parser@0.6.0\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003edepth\u003c/code\u003e option to customize the depth level in the parser\u003c/li\u003e\n\u003cli\u003eIMPORTANT: The default \u003ccode\u003edepth\u003c/code\u003e level for parsing URL-encoded data is now \u003ccode\u003e32\u003c/code\u003e (previously was \u003ccode\u003eInfinity\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eRemove link renderization in html while using \u003ccode\u003eres.redirect\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003edeps: path-to-regexp@0.1.10\n\u003cul\u003e\n\u003cli\u003eAdds support for named matching groups in the routes using a regex\u003c/li\u003e\n\u003cli\u003eAdds backtracking protection to parameters without regexes defined\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edeps: encodeurl@~2.0.0\n\u003cul\u003e\n\u003cli\u003eRemoves encoding of \u003ccode\u003e\\\u003c/code\u003e, \u003ccode\u003e|\u003c/code\u003e, and \u003ccode\u003e^\u003c/code\u003e to align better with URL spec\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eDeprecate passing \u003ccode\u003eoptions.maxAge\u003c/code\u003e and \u003ccode\u003eoptions.expires\u003c/code\u003e to \u003ccode\u003eres.clearCookie\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eWill be ignored in v5, clearCookie will set a cookie with an expires in the past to instruct clients to delete the cookie\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.19.2 / 2024-03-25\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eImproved fix for open redirect allow list bypass\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.19.1 / 2024-03-20\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAllow passing non-strings to res.location with new encoding handling checks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/1faf228935aa0a13111f92c28ee795be64ce3f0f\"\u003e\u003ccode\u003e1faf228\u003c/code\u003e\u003c/a\u003e 4.21.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/2e0fb646d03184dd9a5285813460210c0e7ae654\"\u003e\u003ccode\u003e2e0fb64\u003c/code\u003e\u003c/a\u003e deps: bump path-to-regexp@0.1.12 (\u003ca href=\"https://redirect.github.com/expressjs/express/issues/6209\"\u003e#6209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/59fc27028ec5d212be653d35d7e3f73a2c3ac3c0\"\u003e\u003ccode\u003e59fc270\u003c/code\u003e\u003c/a\u003e deps: path-to-regexp@0.1.11 (\u003ca href=\"https://redirect.github.com/expressjs/express/issues/5956\"\u003e#5956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/51fc39ccf834eec44547b0f4fed8027e7c05a009\"\u003e\u003ccode\u003e51fc39c\u003c/code\u003e\u003c/a\u003e docs: add funding (\u003ca href=\"https://redirect.github.com/expressjs/express/issues/6065\"\u003e#6065\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/8e229f92752ad51462c868b99f6e6c2e559801b0\"\u003e\u003ccode\u003e8e229f9\u003c/code\u003e\u003c/a\u003e 4.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/a024c8a7b658a178cbdb9bde33030b7500172815\"\u003e\u003ccode\u003ea024c8a\u003c/code\u003e\u003c/a\u003e fix(deps): cookie@0.7.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/7e562c6d8daddff4604f8efaaf9db2cf98c6dcff\"\u003e\u003ccode\u003e7e562c6\u003c/code\u003e\u003c/a\u003e 4.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/1bcde96bc87c4704df9a704271d1167064ab56bb\"\u003e\u003ccode\u003e1bcde96\u003c/code\u003e\u003c/a\u003e fix(deps): qs@6.13.0 (\u003ca href=\"https://redirect.github.com/expressjs/express/issues/5946\"\u003e#5946\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/7d364775688be98aaa973302e066d0da9f438997\"\u003e\u003ccode\u003e7d36477\u003c/code\u003e\u003c/a\u003e fix(deps): serve-static@1.16.2 (\u003ca href=\"https://redirect.github.com/expressjs/express/issues/5951\"\u003e#5951\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/expressjs/express/commit/40d2d8f2c882712a0f2e4603c38d166c79676b2b\"\u003e\u003ccode\u003e40d2d8f\u003c/code\u003e\u003c/a\u003e fix(deps): finalhandler@1.3.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/expressjs/express/compare/4.18.1...4.21.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~jonchurch\"\u003ejonchurch\u003c/a\u003e, a new releaser for express since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `braces` from 3.0.2 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/74b2db2938fad48a2ea54a9c8bf27a37a62c350d\"\u003e\u003ccode\u003e74b2db2\u003c/code\u003e\u003c/a\u003e 3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/88f1429a0f47e1dd3813de35211fc97ffda27f9e\"\u003e\u003ccode\u003e88f1429\u003c/code\u003e\u003c/a\u003e update eslint. lint, fix unit tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/415d660c3002d1ab7e63dbf490c9851da80596ff\"\u003e\u003ccode\u003e415d660\u003c/code\u003e\u003c/a\u003e Snyk js braces 6838727 (\u003ca href=\"https://redirect.github.com/micromatch/braces/issues/40\"\u003e#40\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/190510f79db1adf21d92798b0bb6fccc1f72c9d6\"\u003e\u003ccode\u003e190510f\u003c/code\u003e\u003c/a\u003e fix tests, skip 1 test in test/braces.expand\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/716eb9f12d820b145a831ad678618731927e8856\"\u003e\u003ccode\u003e716eb9f\u003c/code\u003e\u003c/a\u003e readme bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/a5851e57f45c3431a94d83fc565754bc10f5bbc3\"\u003e\u003ccode\u003ea5851e5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/micromatch/braces/issues/37\"\u003e#37\u003c/a\u003e from coderaiser/fix/vulnerability\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/2092bd1fb108d2c59bd62e243b70ad98db961538\"\u003e\u003ccode\u003e2092bd1\u003c/code\u003e\u003c/a\u003e feature: braces: add maxSymbols (\u003ca href=\"https://github.com/micromatch/braces/issues/\"\u003ehttps://github.com/micromatch/braces/issues/\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/9f5b4cf47329351bcb64287223ffb6ecc9a5e6d3\"\u003e\u003ccode\u003e9f5b4cf\u003c/code\u003e\u003c/a\u003e fix: vulnerability (\u003ca href=\"https://security.snyk.io/vuln/SNYK-JS-BRACES-6838727\"\u003ehttps://security.snyk.io/vuln/SNYK-JS-BRACES-6838727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/98414f9f1fabe021736e26836d8306d5de747e0d\"\u003e\u003ccode\u003e98414f9\u003c/code\u003e\u003c/a\u003e remove funding file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/micromatch/braces/commit/665ab5d561c017a38ba7aafd92cc6655b91d8c14\"\u003e\u003ccode\u003e665ab5d\u003c/code\u003e\u003c/a\u003e update keepEscaping doc (\u003ca href=\"https://redirect.github.com/micromatch/braces/issues/27\"\u003e#27\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/micromatch/braces/compare/3.0.2...3.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cookie` from 0.5.0 to 0.7.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jshttp/cookie/releases\"\u003ecookie's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.7.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAllow leading dot for domain (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/174\"\u003e#174\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eAlthough not permitted in the spec, some users expect this to work and user agents ignore the leading dot according to spec\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdd fast path for \u003ccode\u003eserialize\u003c/code\u003e without options, use \u003ccode\u003eobj.hasOwnProperty\u003c/code\u003e when parsing (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/172\"\u003e#172\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jshttp/cookie/compare/v0.7.0...v0.7.1\"\u003ehttps://github.com/jshttp/cookie/compare/v0.7.0...v0.7.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.7.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eperf: parse cookies ~10% faster (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/144\"\u003e#144\u003c/a\u003e by \u003ca href=\"https://github.com/kurtextrem\"\u003e\u003ccode\u003e@​kurtextrem\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/170\"\u003e#170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: narrow the validation of cookies to match RFC6265 (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/167\"\u003e#167\u003c/a\u003e by \u003ca href=\"https://github.com/bewinsnw\"\u003e\u003ccode\u003e@​bewinsnw\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: add \u003ccode\u003emain\u003c/code\u003e to \u003ccode\u003epackage.json\u003c/code\u003e for rspack (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/166\"\u003e#166\u003c/a\u003e by \u003ca href=\"https://github.com/proudparrot2\"\u003e\u003ccode\u003e@​proudparrot2\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/jshttp/cookie/compare/v0.6.0...v0.7.0\"\u003ehttps://github.com/jshttp/cookie/compare/v0.6.0...v0.7.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.6.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epartitioned\u003c/code\u003e option\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/cf4658f492c5bd96aeaf5693c3500f8495031014\"\u003e\u003ccode\u003ecf4658f\u003c/code\u003e\u003c/a\u003e 0.7.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/6a8b8f5a49af7897b98ebfb29a1c4955afa3d33e\"\u003e\u003ccode\u003e6a8b8f5\u003c/code\u003e\u003c/a\u003e Allow leading dot for domain (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/174\"\u003e#174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/58015c0b93de0b63db245cfdc5a108e511a81ad0\"\u003e\u003ccode\u003e58015c0\u003c/code\u003e\u003c/a\u003e Remove more code and perf wins (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/172\"\u003e#172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/ab057d6c06b94a7b1e3358e69a685ae49c97b627\"\u003e\u003ccode\u003eab057d6\u003c/code\u003e\u003c/a\u003e 0.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/5f02ca87688481dbcf155e49ca8b61732f30e542\"\u003e\u003ccode\u003e5f02ca8\u003c/code\u003e\u003c/a\u003e Migrate history to GitHub releases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/a5d591ce8447dd63821779724f96ad3c774c8579\"\u003e\u003ccode\u003ea5d591c\u003c/code\u003e\u003c/a\u003e Migrate history to GitHub releases\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/51968f94b5e820adeceef505539fa193ffe2d105\"\u003e\u003ccode\u003e51968f9\u003c/code\u003e\u003c/a\u003e Skip isNaN\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/9e7ca51ade4b325307eedd6b4dec190983e9e2cc\"\u003e\u003ccode\u003e9e7ca51\u003c/code\u003e\u003c/a\u003e perf(parse): cache length, return early (\u003ca href=\"https://redirect.github.com/jshttp/cookie/issues/144\"\u003e#144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/d6f39b0aab5521a8b118b466a515fd6eb0b9f65e\"\u003e\u003ccode\u003ed6f39b0\u003c/code\u003e\u003c/a\u003e Fix tests for old node\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jshttp/cookie/commit/6bb701f14e59c5e768933bfae9b578db4ed26c6e\"\u003e\u003ccode\u003e6bb701f\u003c/code\u003e\u003c/a\u003e Remove failing scorecard\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jshttp/cookie/compare/v0.5.0...v0.7.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~blakeembrey\"\u003eblakeembrey\u003c/a\u003e, a new releaser for cookie since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ejs` from 3.1.8 to 3.1.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mde/ejs/releases\"\u003eejs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1.10\u003c/h2\u003e\n\u003cp\u003eVersion 3.1.10\u003c/p\u003e\n\u003ch2\u003ev3.1.9\u003c/h2\u003e\n\u003cp\u003eVersion 3.1.9\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/d3f807dea9ce904e20a47a661f2310ce9134dc2a\"\u003e\u003ccode\u003ed3f807d\u003c/code\u003e\u003c/a\u003e Version 3.1.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/9ee26dde5d7015d9c0e2ff87314cabeac5247c02\"\u003e\u003ccode\u003e9ee26dd\u003c/code\u003e\u003c/a\u003e Mocha TDD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/e469741dca7df2eb400199e1cdb74621e3f89aa5\"\u003e\u003ccode\u003ee469741\u003c/code\u003e\u003c/a\u003e Basic pollution protection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/715e9507fa3e6122dc6430fe0f25a6e6ded300c1\"\u003e\u003ccode\u003e715e950\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/mde/ejs/issues/756\"\u003e#756\u003c/a\u003e from Jeffrey-mu/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/cabe3146ad964a1e98db7742abf435906ca79406\"\u003e\u003ccode\u003ecabe314\u003c/code\u003e\u003c/a\u003e Include advanced usage examples\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/29b076cdbbf3eb1b4323b33299ab6d79391b2c33\"\u003e\u003ccode\u003e29b076c\u003c/code\u003e\u003c/a\u003e Added header\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/11503c79af882e3635b513d57c7f1813792eb127\"\u003e\u003ccode\u003e11503c7\u003c/code\u003e\u003c/a\u003e Merge branch 'main' of github.com:mde/ejs into main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/7690404e2fc1688756938e4d2fc19e0fac77d736\"\u003e\u003ccode\u003e7690404\u003c/code\u003e\u003c/a\u003e Added security banner to README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/f47d7aedd51a983e4f73045f962b1209096b5800\"\u003e\u003ccode\u003ef47d7ae\u003c/code\u003e\u003c/a\u003e Update SECURITY.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mde/ejs/commit/828cea1687e3db459ab09d2f405d2444c7580b90\"\u003e\u003ccode\u003e828cea1\u003c/code\u003e\u003c/a\u003e Update SECURITY.md\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mde/ejs/compare/v3.1.8...v3.1.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `esbuild` from 0.15.5 to 0.25.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evanw/esbuild/releases\"\u003eesbuild's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.25.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eBetter support building projects that use Yarn on Windows (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3131\"\u003e#3131\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3663\"\u003e#3663\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eWith this release, you can now use esbuild to bundle projects that use Yarn Plug'n'Play on Windows on drives other than the \u003ccode\u003eC:\u003c/code\u003e drive. The problem was as follows:\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003eYarn in Plug'n'Play mode on Windows stores its global module cache on the \u003ccode\u003eC:\u003c/code\u003e drive\u003c/li\u003e\n\u003cli\u003eSome developers put their projects on the \u003ccode\u003eD:\u003c/code\u003e drive\u003c/li\u003e\n\u003cli\u003eYarn generates relative paths that use \u003ccode\u003e../..\u003c/code\u003e to get from the project directory to the cache directory\u003c/li\u003e\n\u003cli\u003eWindows-style paths don't support directory traversal between drives via \u003ccode\u003e..\u003c/code\u003e (so \u003ccode\u003eD:\\..\u003c/code\u003e is just \u003ccode\u003eD:\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003eI didn't have access to a Windows machine for testing this edge case\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eYarn works around this edge case by pretending Windows-style paths beginning with \u003ccode\u003eC:\\\u003c/code\u003e are actually Unix-style paths beginning with \u003ccode\u003e/C:/\u003c/code\u003e, so the \u003ccode\u003e../..\u003c/code\u003e path segments are able to navigate across drives inside Yarn's implementation. This was broken for a long time in esbuild but I finally got access to a Windows machine and was able to debug and fix this edge case. So you should now be able to bundle these projects with esbuild.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePreserve parentheses around function expressions (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4252\"\u003e#4252\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe V8 JavaScript VM uses parentheses around function expressions as an optimization hint to immediately compile the function. Otherwise the function would be lazily-compiled, which has additional overhead if that function is always called immediately as lazy compilation involves parsing the function twice. You can read \u003ca href=\"https://v8.dev/blog/preparser\"\u003eV8's blog post about this\u003c/a\u003e for more details.\u003c/p\u003e\n\u003cp\u003ePreviously esbuild did not represent parentheses around functions in the AST so they were lost during compilation. With this change, esbuild will now preserve parentheses around function expressions when they are present in the original source code. This means these optimization hints will not be lost when bundling with esbuild. In addition, esbuild will now automatically add this optimization hint to immediately-invoked function expressions. Here's an example:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003e// Original code\nconst fn0 = () =\u0026gt; 0\nconst fn1 = (() =\u0026gt; 1)\nconsole.log(fn0, function() { return fn1() }())\n\u003cp\u003e// Old output\nconst fn0 = () =\u0026gt; 0;\nconst fn1 = () =\u0026gt; 1;\nconsole.log(fn0, function() {\nreturn fn1();\n}());\u003c/p\u003e\n\u003cp\u003e// New output\nconst fn0 = () =\u0026gt; 0;\nconst fn1 = (() =\u0026gt; 1);\nconsole.log(fn0, (function() {\nreturn fn1();\n})());\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eNote that you do not want to wrap all function expressions in parentheses. This optimization hint should only be used for functions that are called on initial load. Using this hint for functions that are not called on initial load will unnecessarily delay the initial load. Again, see V8's blog post linked above for details.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdate Go from 1.23.10 to 1.23.12 (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4257\"\u003e#4257\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/evanw/esbuild/pull/4258\"\u003e#4258\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThis should have no effect on existing code as this version change does not change Go's operating system support. It may remove certain false positive reports (specifically CVE-2025-4674 and CVE-2025-47907) from vulnerability scanners that only detect which version of the Go compiler esbuild uses.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.25.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix another TypeScript parsing edge case (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4248\"\u003e#4248\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThis fixes a regression with a change in the previous release that tries to more accurately parse TypeScript arrow functions inside the \u003ccode\u003e?:\u003c/code\u003e operator. The regression specifically involves parsing an arrow function containing a \u003ccode\u003e#private\u003c/code\u003e identifier inside the middle of a \u003ccode\u003e?:\u003c/code\u003e ternary operator inside a class body. This was fixed by propagating private identifier state into the parser clone used to speculatively parse the arrow function body. Here is an example of some affected code:\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evanw/esbuild/blob/main/CHANGELOG-2022.md\"\u003eesbuild's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog: 2022\u003c/h1\u003e\n\u003cp\u003eThis changelog documents all esbuild versions published in the year 2022 (versions 0.14.11 through 0.16.12).\u003c/p\u003e\n\u003ch2\u003e0.16.12\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eLoader defaults to \u003ccode\u003ejs\u003c/code\u003e for extensionless files (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/2776\"\u003e#2776\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eCertain packages contain files without an extension. For example, the \u003ccode\u003eyargs\u003c/code\u003e package contains the file \u003ccode\u003eyargs/yargs\u003c/code\u003e which has no extension. Node, Webpack, and Parcel can all understand code that imports \u003ccode\u003eyargs/yargs\u003c/code\u003e because they assume that the file is JavaScript. However, esbuild was previously unable to understand this code because it relies on the file extension to tell it how to interpret the file. With this release, esbuild will now assume files without an extension are JavaScript files. This can be customized by setting the loader for \u003ccode\u003e\u0026quot;\u0026quot;\u003c/code\u003e (the empty string, representing files without an extension) to another loader. For example, if you want files without an extension to be treated as CSS instead, you can do that like this:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eCLI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eesbuild --bundle --loader:=css\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eJS:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eesbuild.build({\n  bundle: true,\n  loader: { '': 'css' },\n})\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eGo:\u003c/p\u003e\n\u003cpre lang=\"go\"\u003e\u003ccode\u003eapi.Build(api.BuildOptions{\n  Bundle: true,\n  Loader: map[string]api.Loader{\u0026quot;\u0026quot;: api.LoaderCSS},\n})\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn addition, the \u003ccode\u003e\u0026quot;type\u0026quot;\u003c/code\u003e field in \u003ccode\u003epackage.json\u003c/code\u003e files now only applies to files with an explicit \u003ccode\u003e.js\u003c/code\u003e, \u003ccode\u003e.jsx\u003c/code\u003e, \u003ccode\u003e.ts\u003c/code\u003e, or \u003ccode\u003e.tsx\u003c/code\u003e extension. Previously it was incorrectly applied by esbuild to all files that had an extension other than \u003ccode\u003e.mjs\u003c/code\u003e, \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cjs\u003c/code\u003e, or \u003ccode\u003e.cts\u003c/code\u003e including extensionless files. So for example an extensionless file in a \u003ccode\u003e\u0026quot;type\u0026quot;: \u0026quot;module\u0026quot;\u003c/code\u003e package is now treated as CommonJS instead of ESM.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.16.11\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid a syntax error in the presence of direct \u003ccode\u003eeval\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/2761\"\u003e#2761\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe behavior of nested \u003ccode\u003efunction\u003c/code\u003e declarations in JavaScript depends on whether the code is run in strict mode or not. It would be problematic if esbuild preserved nested \u003ccode\u003efunction\u003c/code\u003e declarations in its output because then the behavior would depend on whether the output was run in strict mode or not instead of respecting the strict mode behavior of the original source code. To avoid this, esbuild transforms nested \u003ccode\u003efunction\u003c/code\u003e declarations to preserve the intended behavior of the original source code regardless of whether the output is run in strict mode or not:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003e// Original code\nif (true) {\n  function foo() {}\n  console.log(!!foo)\n  foo = null\n  console.log(!!foo)\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/195e05c16f03a341390feef38b8ebf17d3075e14\"\u003e\u003ccode\u003e195e05c\u003c/code\u003e\u003c/a\u003e publish 0.25.9 to npm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/3dac33f2a2ba60387fb9aaca96b3e80b9e0512e0\"\u003e\u003ccode\u003e3dac33f\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3131\"\u003e#3131\u003c/a\u003e, fix \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/3663\"\u003e#3663\u003c/a\u003e: yarnpnp + windows + D drive\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/0f2c5c8c11dc3fa2a4e9e82df202d0b607e59de4\"\u003e\u003ccode\u003e0f2c5c8\u003c/code\u003e\u003c/a\u003e mock fs now supports multiple volumes on...\n\n_Description has been truncated_","html_url":"https://github.com/1Yoel26/Projet5_Test_App/pull/1","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/1Yoel26%2FProjet5_Test_App/issues/1","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1/packages"}},{"old_version":"19.0.1","new_version":"20.0.0","update_type":"major","path":null,"pr_created_at":"2025-08-01T04:11:51.000Z","version_change":"19.0.1 → 20.0.0","issue":{"uuid":"2711931586","node_id":"PR_kwDOBX7yTs6hpMrC","number":2147,"state":"open","title":"build(deps): bump the angular group across 1 directory with 12 updates","user":"dependabot[bot]","labels":["theme: dependencies","theme: angular"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-01T04:11:51.000Z","updated_at":"2025-08-01T04:11:52.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"angular","update_count":12,"packages":[{"name":"@angular/common","old_version":"19.2.13","new_version":"20.1.4","repository_url":"https://github.com/angular/angular"},{"name":"@fortawesome/angular-fontawesome","old_version":"1.0.0","new_version":"2.0.1","repository_url":"https://github.com/FortAwesome/angular-fontawesome"},{"name":"@ng-bootstrap/ng-bootstrap","old_version":"18.0.0","new_version":"19.0.1","repository_url":"https://github.com/ng-bootstrap/ng-bootstrap"},{"name":"ngx-cookie-service","old_version":"19.1.2","new_version":"20.0.1","repository_url":"https://github.com/stevermeister/ngx-cookie-service"},{"name":"ngx-infinite-scroll","old_version":"19.0.0","new_version":"20.0.0","repository_url":"https://github.com/orizens/ngx-infinite-scroll"},{"name":"@angular-architects/module-federation","old_version":"19.0.3","new_version":"20.0.0","repository_url":"https://github.com/angular-architects/module-federation-plugin"},{"name":"@angular-architects/module-federation-runtime","old_version":"19.0.3","new_version":"20.0.0"},{"name":"@angular-builders/custom-esbuild","old_version":"19.1.0","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/custom-webpack","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular/cli","old_version":"19.2.13","new_version":"20.1.4","repository_url":"https://github.com/angular/angular-cli"},{"name":"typescript","old_version":"5.8.3","new_version":"5.9.2","repository_url":"https://github.com/microsoft/TypeScript"}],"path":null,"ecosystem":"npm"},"body":"Bumps the angular group with 12 updates in the /generators/angular/resources directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `19.2.13` | `20.1.4` |\n| [@fortawesome/angular-fontawesome](https://github.com/FortAwesome/angular-fontawesome) | `1.0.0` | `2.0.1` |\n| [@ng-bootstrap/ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap) | `18.0.0` | `19.0.1` |\n| [ngx-cookie-service](https://github.com/stevermeister/ngx-cookie-service) | `19.1.2` | `20.0.1` |\n| [ngx-infinite-scroll](https://github.com/orizens/ngx-infinite-scroll) | `19.0.0` | `20.0.0` |\n| [@angular-architects/module-federation](https://github.com/angular-architects/module-federation-plugin) | `19.0.3` | `20.0.0` |\n| @angular-architects/module-federation-runtime | `19.0.3` | `20.0.0` |\n| [@angular-builders/custom-esbuild](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-esbuild) | `19.1.0` | `20.0.0` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `19.0.1` | `20.0.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `19.2.13` | `20.1.4` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.8.3` | `5.9.2` |\n\n\nUpdates `@angular/common` from 19.2.13 to 20.1.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.1.4\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/db3c5826ee0b52e5b7886087b82990340a34c1ab\"\u003e\u003cimg src=\"https://img.shields.io/badge/db3c5826ee-fix-green\" alt=\"fix - db3c5826ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eexclude more safe reads expression from 2way-binding (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62852\"\u003e#62852\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c633b63e561d7142dd9a1f8631813cc47a169058\"\u003e\u003cimg src=\"https://img.shields.io/badge/c633b63e56-fix-green\" alt=\"fix - c633b63e56\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate symbols for new signals api (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62284\"\u003e#62284\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab6033979a3b409738d55d0c01effb378473c05a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ab6033979a-fix-green\" alt=\"fix - ab6033979a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd missing http options allowed in fetch API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62881\"\u003e#62881\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/15670d8417449c5b5f2990209552a1fc61420acb\"\u003e\u003cimg src=\"https://img.shields.io/badge/15670d8417-fix-green\" alt=\"fix - 15670d8417\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003epropagate plain errors when parsing fails (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62765\"\u003e#62765\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.3\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2c522efbe500e7c6c9929ce76df435b3dae49c84\"\u003e\u003cimg src=\"https://img.shields.io/badge/2c522efbe5-fix-green\" alt=\"fix - 2c522efbe5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix change tracking for Resource#hasValue (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62595\"\u003e#62595\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2fd1f7beb5e524aea8dcb24c5b87cb81689363ba\"\u003e\u003cimg src=\"https://img.shields.io/badge/2fd1f7beb5-fix-green\" alt=\"fix - 2fd1f7beb5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve component resources before bootstrapping in JIT mode (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62758\"\u003e#62758\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.2\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8ad10fd63b01a906efbfa50ccccb7914610c61bd\"\u003e\u003cimg src=\"https://img.shields.io/badge/8ad10fd63b-fix-green\" alt=\"fix - 8ad10fd63b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix detection of directive deps in JIT (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62666\"\u003e#62666\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.1\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/75d2a349b4d0ee1ed0489f1804dc1938046eaace\"\u003e\u003cimg src=\"https://img.shields.io/badge/75d2a349b4-fix-green\" alt=\"fix - 75d2a349b4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eincorrect spans for left side of binary operation (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62641\"\u003e#62641\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70c8780c5443929539631a06c5e09c18d108e51b\"\u003e\u003cimg src=\"https://img.shields.io/badge/70c8780c54-fix-green\" alt=\"fix - 70c8780c54\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emore permissive parsing of @ characters (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62644\"\u003e#62644\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9506cdfaad2693a0350a74f4ee4bb7fa27fa3086\"\u003e\u003cimg src=\"https://img.shields.io/badge/9506cdfaad-fix-green\" alt=\"fix - 9506cdfaad\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003einfer type of event target for void elements (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62648\"\u003e#62648\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/26ade4a3370911f6c8e9c0e6504d9335d637cfe1\"\u003e\u003cimg src=\"https://img.shields.io/badge/26ade4a337-fix-green\" alt=\"fix - 26ade4a337\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eEnsure application remains unstable during bootstrap (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62631\"\u003e#62631\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a81f0faa1a72decf9bdd35b243486a510b9352ee\"\u003e\u003cimg src=\"https://img.shields.io/badge/a81f0faa1a-fix-green\" alt=\"fix - a81f0faa1a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eInputBinding marks component a dirty. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62613\"\u003e#62613\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/276836ee7351c5d605fac5dc0abe0ae898dcfa5d\"\u003e\u003cimg src=\"https://img.shields.io/badge/276836ee73-fix-green\" alt=\"fix - 276836ee73\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edo not display warnings \u003ccode\u003eAngular detected that a \u003c/code\u003eHttpClient\u003ccode\u003erequest with the\u003c/code\u003ekeepalive\u003ccode\u003e option was sent using XHR\u003c/code\u003e when option is not true (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62536\"\u003e#62536\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.1.4 (2025-07-31)\u003c/h1\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/db3c5826ee0b52e5b7886087b82990340a34c1ab\"\u003edb3c5826ee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eexclude more safe reads expression from 2way-binding (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62852\"\u003e#62852\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c633b63e561d7142dd9a1f8631813cc47a169058\"\u003ec633b63e56\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate symbols for new signals api (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62284\"\u003e#62284\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab6033979a3b409738d55d0c01effb378473c05a\"\u003eab6033979a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd missing http options allowed in fetch API (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62881\"\u003e#62881\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/15670d8417449c5b5f2990209552a1fc61420acb\"\u003e15670d8417\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epropagate plain errors when parsing fails (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62765\"\u003e#62765\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.2.0-next.2 (2025-07-23)\u003c/h1\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7767aa640c542f5058df9322f2bbe974fa8d3c81\"\u003e7767aa640c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow more characters in square-bracketed attribute names (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62742\"\u003e#62742\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3171d01452444721dbea53d1d1ca758f38d083a5\"\u003e3171d01452\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix detection of directive deps in JIT (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62666\"\u003e#62666\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5abfe4a8999e42ad44e6f1d4414f241094bb8fdb\"\u003e5abfe4a899\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd diagnostic for uninvoked functions in text interpolation (\u003ca href=\"https://redirect.github.com/angular/angular/pull/59191\"\u003e#59191\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b1f4b9e8bb981377e271e6af0d9768ff7f765e9\"\u003e6b1f4b9e8b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd enter and leave animation instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62682\"\u003e#62682\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cec91c00356ee3974c39c9471b243a2a16149f5b\"\u003ecec91c0035\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd option to infer the tag names of components in tests (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62283\"\u003e#62283\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4138aca91fe828f0cfbd779d0c456cdea7703bdc\"\u003e4138aca91f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003erender ARIA property bindings as attributes (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62630\"\u003e#62630\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/593cc8a3684dfb163bfffa265c5efb3bc7efacd1\"\u003e593cc8a368\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003echecks if body exists before continuing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62768\"\u003e#62768\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/b8e415a717fd3747c7bab3f6ea652874082a19bb\"\u003eb8e415a717\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix change tracking for Resource#hasValue (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62595\"\u003e#62595\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/063b5e166f66bce1abd06c258242212009e76cca\"\u003e063b5e166f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eswitch check to documentElement with chaining (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62773\"\u003e#62773\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/74d99ed3796a3ced462e327c9b5857e5de4b7cb9\"\u003e74d99ed379\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve component resources before bootstrapping in JIT mode (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62758\"\u003e#62758\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eservice-worker\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4ac6171b09e449c619e0588c366861f8f3bb59be\"\u003e4ac6171b09\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds support for updateViaCache in provideServiceWorker (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62721\"\u003e#62721\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.3 (2025-07-23)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/82fcc9c136ee2ca23ab970450876a9af8f42b8eb\"\u003e\u003ccode\u003e82fcc9c\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix(http): add missing http options allowed in fetch API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62881\"\u003e#62881\u003c/a\u003e)\u0026quot; (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab6033979a3b409738d55d0c01effb378473c05a\"\u003e\u003ccode\u003eab60339\u003c/code\u003e\u003c/a\u003e fix(http): add missing http options allowed in fetch API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62881\"\u003e#62881\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea1afec1e433ff30837d53c0e47b4bc4c92545ce\"\u003e\u003ccode\u003eea1afec\u003c/code\u003e\u003c/a\u003e build: move http_server and generate_api_docs into defaults2.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62878\"\u003e#62878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/f0fca612ee482eb08cc14dcb242cb1db38d1dde8\"\u003e\u003ccode\u003ef0fca61\u003c/code\u003e\u003c/a\u003e refactor(common): replace aio links to adev (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62839\"\u003e#62839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/622e10881f3585512fc6cc0d61d784821d877979\"\u003e\u003ccode\u003e622e108\u003c/code\u003e\u003c/a\u003e build: standardize usage of js_binary (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62860\"\u003e#62860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/2b0f3fc7cb36f63d0c344f06a1c355eba13c0136\"\u003e\u003ccode\u003e2b0f3fc\u003c/code\u003e\u003c/a\u003e build: remove all usages of \u003ccode\u003e@​bazel/runfiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62805\"\u003e#62805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/15670d8417449c5b5f2990209552a1fc61420acb\"\u003e\u003ccode\u003e15670d8\u003c/code\u003e\u003c/a\u003e fix(http): propagate plain errors when parsing fails (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62765\"\u003e#62765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b388f1e518d3f2b1491eadb2189d258bccb1dfd5\"\u003e\u003ccode\u003eb388f1e\u003c/code\u003e\u003c/a\u003e build: remove all usages of the interop_deps attr for ts_project and ng_proje...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/1e9bfe54b1374a4195b35681b0beba277c522228\"\u003e\u003ccode\u003e1e9bfe5\u003c/code\u003e\u003c/a\u003e build: migrate to new toolchain usage for api goldens (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62688\"\u003e#62688\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/276836ee7351c5d605fac5dc0abe0ae898dcfa5d\"\u003e\u003ccode\u003e276836e\u003c/code\u003e\u003c/a\u003e fix(http): do not display warnings \u003ccode\u003eAngular detected that a \u003c/code\u003eHttpClient` requ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.1.4/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@fortawesome/angular-fontawesome` from 1.0.0 to 2.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestored possibility to set inputs to \u003ccode\u003eundefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.0\u003c/h2\u003e\n\u003cp\u003eConverted all library internal component implementation to use reactive Signal APIs.\u003c/p\u003e\n\u003cp\u003eMake sure to check \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/UPGRADING.md\"\u003eupgrade instructions\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 20.\u003c/li\u003e\n\u003cli\u003eDocumentation on changes in Programmatic API.\u003c/li\u003e\n\u003cli\u003eDocumentation for upgrading 1.0.0 to 2.0.0\u003c/li\u003e\n\u003cli\u003eUpdated code to use signal APIs like signal, computed, effect, input, model.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003echangeDetection: ChangeDetectionStrategy.OnPush\u003c/code\u003e 🚀 for all components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated the \u003ccode\u003erender\u003c/code\u003e function from the \u003ccode\u003eFaIconComponent\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eProgrammatic API has changed, \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/docs/usage/features.md#programmatic-api\"\u003eplease refer here\u003c/a\u003e and migration guide \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/HEAD/docs/upgrading/1.0.0-2.0.0.md\"\u003e1.0.0 to 2.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/2.0.1\"\u003e2.0.1\u003c/a\u003e (2025-06-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestored possibility to set inputs to \u003ccode\u003eundefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/2.0.0\"\u003e2.0.0\u003c/a\u003e (2025-05-31)\u003c/h2\u003e\n\u003cp\u003eConverted all library internal component implementation to use reactive Signal APIs.\u003c/p\u003e\n\u003cp\u003eMake sure to check \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/UPGRADING.md\"\u003eupgrade instructions\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 20.\u003c/li\u003e\n\u003cli\u003eDocumentation on changes in Programmatic API.\u003c/li\u003e\n\u003cli\u003eDocumentation for upgrading 1.0.0 to 2.0.0\u003c/li\u003e\n\u003cli\u003eUpdated code to use signal APIs like signal, computed, effect, input, model.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003echangeDetection: ChangeDetectionStrategy.OnPush\u003c/code\u003e 🚀 for all components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated the \u003ccode\u003erender\u003c/code\u003e function from the \u003ccode\u003eFaIconComponent\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eProgrammatic API has changed, \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/docs/usage/features.md#programmatic-api\"\u003eplease refer here\u003c/a\u003e and migration guide \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/docs/upgrading/1.0.0-2.0.0.md\"\u003e1.0.0 to 2.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/259bd3905b4f16915e27f64ab6ef8af75ceb2dae\"\u003e\u003ccode\u003e259bd39\u003c/code\u003e\u003c/a\u003e Release 2.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/71adc9a27742b97195d0e0feaeee4d2ce58bca22\"\u003e\u003ccode\u003e71adc9a\u003c/code\u003e\u003c/a\u003e Align TypeScript configuration with the new Angular CLI project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/eb9807e70d53512a72eeb976b2c2bf1cf98d4daf\"\u003e\u003ccode\u003eeb9807e\u003c/code\u003e\u003c/a\u003e Update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/3d2e105f09d7c288f2349613144d996956da72b0\"\u003e\u003ccode\u003e3d2e105\u003c/code\u003e\u003c/a\u003e Release 2.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/a30ff67460d8d59cdf9ed37610d545e97c6a6e9a\"\u003e\u003ccode\u003ea30ff67\u003c/code\u003e\u003c/a\u003e Update dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/b1edcac6ed205050e8d97d6b76368a0561e667a1\"\u003e\u003ccode\u003eb1edcac\u003c/code\u003e\u003c/a\u003e Refactor imports in component files to consolidate DOCUMENT import\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/9d8cab15f26cbe141c6b5587f3ee54439e7922b8\"\u003e\u003ccode\u003e9d8cab1\u003c/code\u003e\u003c/a\u003e Add support for Angular 20 in CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/0bcbabcbf4002002da7594ce08b3b3745cf50b68\"\u003e\u003ccode\u003e0bcbabc\u003c/code\u003e\u003c/a\u003e Update README.md to reflect Angular 20 compatibility for version 2.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/dab6d6fa79baebdd829c548813625f8bd491cb14\"\u003e\u003ccode\u003edab6d6f\u003c/code\u003e\u003c/a\u003e Update \u003ca href=\"https://github.com/typescript-eslint\"\u003e\u003ccode\u003e@​typescript-eslint\u003c/code\u003e\u003c/a\u003e dependencies to version 8.33.0 and adjust peer depe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/0a2488582b195e9b4b178ceb77276c62dd7bcdff\"\u003e\u003ccode\u003e0a24885\u003c/code\u003e\u003c/a\u003e Fix typo in app module file name in index.spec.ts\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/compare/1.0.0...2.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ng-bootstrap/ng-bootstrap` from 18.0.0 to 19.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/releases\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.0.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.0...19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-07-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etoast:\u003c/strong\u003e missing export of \u003ccode\u003eNgbToastOptions\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e6b26ef3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epositioning:\u003c/strong\u003e missing export of \u003ccode\u003ePlacementArray\u003c/code\u003e type (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e) (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003ea4e94a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e missing export of \u003ccode\u003eDayTemplateContext\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e1b90da5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e20.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e tooltip created after view destroyed (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003ed9c96aa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.0-rc.0\u003c/h2\u003e\n\u003cp\u003eThis release candidate version bumps minimum required versions to Angular 20.0.0\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/blob/master/CHANGELOG.md\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.0...19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-07-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etoast:\u003c/strong\u003e missing export of \u003ccode\u003eNgbToastOptions\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e6b26ef3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epositioning:\u003c/strong\u003e missing export of \u003ccode\u003ePlacementArray\u003c/code\u003e type (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e) (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003ea4e94a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e missing export of \u003ccode\u003eDayTemplateContext\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e1b90da5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e20.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e tooltip created after view destroyed (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003ed9c96aa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/b117049a0f46998703c296150a03e7b14a1ca6d9\"\u003e\u003ccode\u003eb117049\u003c/code\u003e\u003c/a\u003e 19.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003e\u003ccode\u003ea4e94a3\u003c/code\u003e\u003c/a\u003e fix(types): export PlacementArray in main index (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/db98bf0e2be8c77e46b77b6f304f051ec391ef98\"\u003e\u003ccode\u003edb98bf0\u003c/code\u003e\u003c/a\u003e demo: add clipboard button functionality and relevant styling (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e\u003ccode\u003e1b90da5\u003c/code\u003e\u003c/a\u003e feat(datepicker): export DayTemplateContext\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e\u003ccode\u003e6b26ef3\u003c/code\u003e\u003c/a\u003e fix(toast): missing export of NgbToastOptions interface\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/2704265b58621bca48f7ca2926113a18cf15dd5c\"\u003e\u003ccode\u003e2704265\u003c/code\u003e\u003c/a\u003e docs: release 19.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/3dec2a2da5f598968ce532e094305456e4bac6e3\"\u003e\u003ccode\u003e3dec2a2\u003c/code\u003e\u003c/a\u003e docs: add release 18 in demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/622ba01aaf6ad2dfad9e121480c9d731b8e2efa9\"\u003e\u003ccode\u003e622ba01\u003c/code\u003e\u003c/a\u003e docs: update README adding 19.0.0 info\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003e\u003ccode\u003ed9c96aa\u003c/code\u003e\u003c/a\u003e fix(tooltip): tooltip created after view destroyed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a6635ce9f8244ee615e93caf739a0b290aa2895e\"\u003e\u003ccode\u003ea6635ce\u003c/code\u003e\u003c/a\u003e demo: bump bootstrap to 5.3.6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-cookie-service` from 19.1.2 to 20.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/releases\"\u003engx-cookie-service's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(package): update version to 20.0.0 for ngx-cookie-service and ng… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/354\"\u003estevermeister/ngx-cookie-service#354\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChange peer dependencies by \u003ca href=\"https://github.com/sokheang-dev\"\u003e\u003ccode\u003e@​sokheang-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/356\"\u003estevermeister/ngx-cookie-service#356\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sokheang-dev\"\u003e\u003ccode\u003e@​sokheang-dev\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/356\"\u003estevermeister/ngx-cookie-service#356\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v20.0.0...v20.0.1\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v20.0.0...v20.0.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(core): adds angular 20 support by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/353\"\u003estevermeister/ngx-cookie-service#353\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.5...v20.0.0\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.5...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: update Node.js version to 20 and upgrade action versions in CI… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/351\"\u003estevermeister/ngx-cookie-service#351\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: migrate tests from Jest to Jasmine and update related configurations by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/352\"\u003estevermeister/ngx-cookie-service#352\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.4...v19.1.5\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.4...v19.1.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(core): revert-replace headers.get('cookie') with headers.cookie by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/348\"\u003estevermeister/ngx-cookie-service#348\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.3...v19.1.4\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.3...v19.1.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(package): bump version to 19.1.2 for ngx-cookie-service and ngx… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/344\"\u003estevermeister/ngx-cookie-service#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(core): replace headers.get('cookie') with headers.cookie by \u003ca href=\"https://github.com/mmart1n\"\u003e\u003ccode\u003e@​mmart1n\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/347\"\u003estevermeister/ngx-cookie-service#347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mmart1n\"\u003e\u003ccode\u003e@​mmart1n\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/347\"\u003estevermeister/ngx-cookie-service#347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v19.1.3\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v19.1.3\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/0771c9290123eafa0cb35a2802a266ac32bd0914\"\u003e\u003ccode\u003e0771c92\u003c/code\u003e\u003c/a\u003e Change peer dependencies (\u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/356\"\u003e#356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/4060892b99ea59f7c6bca67e6c6e32f5085dddac\"\u003e\u003ccode\u003e4060892\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/354\"\u003e#354\u003c/a\u003e from stevermeister/development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/23eb206dd8634f93e7b0a35bc77c544f9e26572d\"\u003e\u003ccode\u003e23eb206\u003c/code\u003e\u003c/a\u003e feat(package): update version to 20.0.0 for ngx-cookie-service and ngx-cookie...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/1573f4764b1d7415a13f95f0082ea2c7acac9004\"\u003e\u003ccode\u003e1573f47\u003c/code\u003e\u003c/a\u003e feat(core): adds angular 20 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/411a870150b08b8e902b28a2f67024d7686af304\"\u003e\u003ccode\u003e411a870\u003c/code\u003e\u003c/a\u003e fix(karma): update Angular build plugin and improve configuration formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/8537abaa580bedd757fdbed77df61a23a9e60b64\"\u003e\u003ccode\u003e8537aba\u003c/code\u003e\u003c/a\u003e feat(docs): add Copilot instructions for Angular projects\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/7e610ea7112a33211cb75fe654cb2da57d7a5e38\"\u003e\u003ccode\u003e7e610ea\u003c/code\u003e\u003c/a\u003e feat(docs): add Copilot instructions for Angular projects\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/ce350ca9da67c4a0faa883e1f35036c1d4aea4b8\"\u003e\u003ccode\u003ece350ca\u003c/code\u003e\u003c/a\u003e feat(core): adds angular 20 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/97650bdaabb048485a48f4823f90f11fc630887b\"\u003e\u003ccode\u003e97650bd\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/1b97b0a7589ffb097c955f1edce53dd0375da072\"\u003e\u003ccode\u003e1b97b0a\u003c/code\u003e\u003c/a\u003e feat: migrate tests from Jest to Jasmine and update related configurations (#...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v20.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-infinite-scroll` from 19.0.0 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/orizens/ngx-infinite-scroll/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-architects/module-federation` from 19.0.3 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/releases\"\u003e\u003ccode\u003e@​angular-architects/module-federation\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular-architects/module-federation-plugin/commit/d4bf6f035b01631fa7f1bf6f98838ae94db2f8ef\"\u003efeat(nf): migrate to angular 20\u003c/a\u003e\n\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/compare/19.0.23...20.0.0\"\u003ehttps://github.com/angular-architects/module-federation-plugin/compare/19.0.23...20.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.23\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(index-file): fixed the double quote issue by \u003ca href=\"https://github.com/asollberger\"\u003e\u003ccode\u003e@​asollberger\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/angular-architects/module-federation-plugin/pull/849\"\u003eangular-architects/module-federation-plugin#849\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/compare/19.0.19...19.0.23\"\u003ehttps://github.com/angular-architects/module-federation-plugin/compare/19.0.19...19.0.23\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.0.19\u003c/h2\u003e\n\u003cp\u003eThis release solves several issues that occurred with Angular 19.2, and it also solves issues with an entire class of npm packages using Singletons. For this, it delegates directly to the underlying bundler for chunk splitting. Hence, we don't need the transient flag anymore. \u003ccode\u003etransient\u003c/code\u003e deps will end up in their own bundles automatically \u003cem\u003ewhen\u003c/em\u003e required (when used from more than one other dependencies). In this regards, Native Federation now behaves like Module Federation.\u003c/p\u003e\n\u003ch2\u003e19.0.16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(nf): add shareAngularLocales helper\u003c/li\u003e\n\u003cli\u003efeat(nf): support angular i18n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/angular-architects/module-federation-plugin/blob/main/libs/native-federation/README.md#angular-i18n\"\u003eDetails in Readme\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.0.10\u003c/h2\u003e\n\u003cp\u003eBig thanks to our contributors!\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003efeat(nf-runtime): added cacheTag option\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003einitFederation\u003c/code\u003e now has a \u003ccode\u003ecacheTag\u003c/code\u003e option. If you set it, e.g., to \u003ccode\u003eDate.now()\u003c/code\u003e, it will be appended to the URLs of the fetched \u003ccode\u003eremoteEntries.json\u003c/code\u003e files to prevent caching.\u003c/p\u003e\n\u003cp\u003eBig thanks to \u003ca href=\"https://github.com/asollberger\"\u003eAlain Sollberger\u003c/a\u003e for this contribution!\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003efeat(nf): allow to version repo-internal libs (mapped paths)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eWe can now assign a version number to monorepo-internal libs (mapped paths). This allows to detect conflicts in cases where different micro frontends of the same monorepo were deployed independently and a shared internal lib was changed in between the two deployments.\u003c/p\u003e\n\u003cp\u003eTo use this feature, just assign a version number in the libs package.json and activate the new feature using the new feature map:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003emodule.exports = withNativeFederation({\n\u003cp\u003e[...]\u003c/p\u003e\n\u003cp\u003efeatures: {\nmappingVersion: true,\n},\u003c/p\u003e\n\u003cp\u003e});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eThe new feature map activates features that might cause breaking changes. Without explicitly activating these features, the usual backwards-compatible behavior is used.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/commits/20.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-architects/module-federation-runtime` from 19.0.3 to 20.0.0\n\nUpdates `@angular-builders/custom-esbuild` from 19.1.0 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-esbuild/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@20.0.0-beta.0...@angular-builders/custom-esbuild@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@19.1.0...@angular-builders/custom-esbuild@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecustom-esbuild:\u003c/strong\u003e expose builder options to plugins (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/2c114d9ccf105d8bbf024de9e67a69d625ce2742\"\u003e2c114d9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/2c114d9ccf105d8bbf024de9e67a69d625ce2742\"\u003e\u003ccode\u003e2c114d9\u003c/code\u003e\u003c/a\u003e feat(custom-esbuild): expose builder options to plugins\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-esbuild@20.0.0/packages/custom-esbuild\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/custom-webpack` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-webpack/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.0-beta.0...@angular-builders/custom-webpack@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.1...@angular-builders/custom-webpack@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-webpack@20.0.0/packages/custom-webpack\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/cli` from 19.2.13 to 20.1.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/releases\"\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.1.4\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d753cc62c9a801c40923a43e4af5f74b22700e0\"\u003e\u003cimg src=\"https://img.shields.io/badge/2d753cc62-fix-green\" alt=\"fix - 2d753cc62\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eskip workspace-specific tools when outside a workspace\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d72ef4d99380dbb1c0e03e3e3abfb2223fa539\"\u003e\u003cimg src=\"https://img.shields.io/badge/42d72ef4d-fix-green\" alt=\"fix - 42d72ef4d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eskip vite transformation of CSS-like assets\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.3\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ea5cd0e81196467ea66f50c106cffec1cd8a1a56\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea5cd0e81-fix-green\" alt=\"fix - ea5cd0e81\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate \u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e7.0.6\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.2\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/96785224f55291cd60553aead07ead10d9d2fbda\"\u003e\u003cimg src=\"https://img.shields.io/badge/96785224f-fix-green\" alt=\"fix - 96785224f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003edefine\u003c/code\u003e option is being included multiple times in the JSON help\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/core\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0d0040bdf58a82e18f7669363b6f149313524bfc\"\u003e\u003cimg src=\"https://img.shields.io/badge/0d0040bdf-fix-green\" alt=\"fix - 0d0040bdf\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse crypto.randomUUID instead of Date.now for unique string in tmp file names\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.1\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/541b33f8d977c1fe8f609099a8b8ed1c5f8e827e\"\u003e\u003cimg src=\"https://img.shields.io/badge/541b33f8d-fix-green\" alt=\"fix - 541b33f8d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eemit a warning when \u003ccode\u003eoutputHashing\u003c/code\u003e is set to \u003ccode\u003eall\u003c/code\u003e or \u003ccode\u003ebundles\u003c/code\u003e when HMR is enabled\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/558a0fe9275e68e0b768de3ee2e5bee0d6d84a6e\"\u003e\u003cimg src=\"https://img.shields.io/badge/558a0fe92-fix-green\" alt=\"fix - 558a0fe92\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enormalize code coverage include paths to POSIX\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1c19e0dcd4a87fbf542201e09a402a8fccdfcd88\"\u003e\u003cimg src=\"https://img.shields.io/badge/1c19e0dcd-feat-blue\" alt=\"feat - 1c19e0dcd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse signal in app component\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/dc45c186ec16e345b75ffcd57961a8e0cfd4b649\"\u003e\u003cimg src=\"https://img.shields.io/badge/dc45c186e-feat-blue\" alt=\"feat - dc45c186e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd initial MCP server implementation\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/49a09737d5412c302d09b40de198251bb99789d1\"\u003e\u003cimg src=\"https://img.shields.io/badge/49a09737d-feat-blue\" alt=\"feat - 49a09737d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprovide partial custom postcss configuration support\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1159cf08103081d2b851e59bc1c5fb200f114982\"\u003e\u003cimg src=\"https://img.shields.io/badge/1159cf081-feat-blue\" alt=\"feat - 1159cf081\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd code coverage reporters option for unit-test\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.1.4 (2025-07-30)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d753cc62c9a801c40923a43e4af5f74b22700e0\"\u003e2d753cc62\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eskip workspace-specific tools when outside a workspace\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d72ef4d99380dbb1c0e03e3e3abfb2223fa539\"\u003e42d72ef4d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eskip vite transformation of CSS-like assets\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.3 (2025-07-24)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ea5cd0e81196467ea66f50c106cffec1cd8a1a56\"\u003eea5cd0e81\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate \u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e7.0.6\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.2.0-next.1 (2025-07-23)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/fefa7a46f5733fd77852a61fddc3120b1bb4b202\"\u003efefa7a46f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003edefine\u003c/code\u003e option is being included multiple times in the JSON help\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/core\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/7595e1f8887bafd344ec939e647e3fca8bbd98be\"\u003e7595e1f88\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003euse crypto.randomUUID instead of Date.now for unique string in tmp file names\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/fb06bb5050e92eb4d0f95d7774552d0902163f6a\"\u003efb06bb505\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd headless mode for vitest browser mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ffc4c671753aa7ba4ae4ff6cd13eb4cd9eb08ec2\"\u003e\u003ccode\u003effc4c67\u003c/code\u003e\u003c/a\u003e release: cut the v20.1.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d753cc62c9a801c40923a43e4af5f74b22700e0\"\u003e\u003ccode\u003e2d753cc\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/cli\u003c/code\u003e): skip workspace-specific tools when outside a workspace\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d72ef4d99380dbb1c0e03e3e3abfb2223fa539\"\u003e\u003ccode\u003e42d72ef\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): skip vite transformation of CSS-like assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0489fe7025c60f022ca3959d6f651dc6b1bc9f2a\"\u003e\u003ccode\u003e0489fe7\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/build\u003c/code\u003e): update MCP best practices guide content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f7b61609c4f555fda8bd7e0571ee2308cdecee90\"\u003e\u003ccode\u003ef7b6160\u003c/code\u003e\u003c/a\u003e build: update bazel dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/18b44f64559ce7fc5c63cf9c9354b01c398fdae9\"\u003e\u003ccode\u003e18b44f6\u003c/code\u003e\u003c/a\u003e release: cut the v20.1.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ea5cd0e81196467ea66f50c106cffec1cd8a1a56\"\u003e\u003ccode\u003eea5cd0e\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): update \u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e7.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0568f385ebed0f8572f542985d6be2411ed98730\"\u003e\u003ccode\u003e0568f38\u003c/code\u003e\u003c/a\u003e release: cut the v20.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/14da0424a739b567d7e740fbc8b5992e0f084e01\"\u003e\u003ccode\u003e14da042\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): move MCP list projects tool to separate file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/731d1a637ec82a6e501962603447e2b67b077862\"\u003e\u003ccode\u003e731d1a6\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): include content for top result in MCP documentation s...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular-cli/compare/19.2.13...20.1.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript` from 5.8.3 to 5.9.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/TypeScript/releases\"\u003etypescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTypeScript 5.9\u003c/h2\u003e\n\u003cp\u003eRelease notes pending.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.1%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.1 (RC)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e[[No specific changes for TypeScript 5.9.2 (Stable)]]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTypeScript 5.9 RC\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9-rc/\"\u003erelease announcement\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.1%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.1 (RC)\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTypeScript 5.9 Beta\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9-beta/\"\u003erelease announcement\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/be8678315541e814da14316848a9468e8f90ab11\"\u003e\u003ccode\u003ebe86783\u003c/code\u003e\u003c/a\u003e Give more specific errors for \u003ccode\u003everbatimModuleSyntax\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62113\"\u003e#62113\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/22ef57786f5ca99837c430439bc6003c068fe1d2\"\u003e\u003ccode\u003e22ef577\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250714...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/d5a414cd1dceb209fd2569e89d1096812218e8c5\"\u003e\u003ccode\u003ed5a414c\u003c/code\u003e\u003c/a\u003e Don't use \u003ccode\u003enoErrorTruncation\u003c/code\u003e when printing types with \u003ccode\u003emaximumLength\u003c/code\u003e set (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/f14b5c8a2f0be503ac455054a91573c63f0e5088\"\u003e\u003ccode\u003ef14b5c8\u003c/code\u003e\u003c/a\u003e Remove unused and confusing dom.iterable.d.ts file (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62037\"\u003e#62037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/2778e84ed88894156e2c5a17d74a25c73cc96ffe\"\u003e\u003ccode\u003e2778e84\u003c/code\u003e\u003c/a\u003e Restore AbortSignal.abort (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62086\"\u003e#62086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/65cb4bd2d52cd882f2c3a503681479eb2ed291ca\"\u003e\u003ccode\u003e65cb4bd\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250710...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/9e20e032effad965567d4a1e1c30d5433b0a3332\"\u003e\u003ccode\u003e9e20e03\u003c/code\u003e\u003c/a\u003e Clear out checker-level stacks on pop (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62016\"\u003e#62016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/87740bc7fe3d8d2af47d767db081491f40b8a90d\"\u003e\u003ccode\u003e87740bc\u003c/code\u003e\u003c/a\u003e Fix for Issue 61081 (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/61221\"\u003e#61221\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/833a8d492c728d606454865e8c0fee84842f9f10\"\u003e\u003ccode\u003e833a8d4\u003c/code\u003e\u003c/a\u003e Fix Symbol completion priority and cursor positioning (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/61945\"\u003e#61945\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/0018c9ff12e657b84997dc1843818fea0a2ce850\"\u003e\u003ccode\u003e0018c9f\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250702...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/TypeScript/compare/v5.8.3...v5.9.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will canc...\n\n_Description has been truncated_","html_url":"https://github.com/jdubois/generator-jhipster/pull/2147","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jdubois%2Fgenerator-jhipster/issues/2147","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2147/packages"}},{"old_version":"19.0.1","new_version":"20.0.0","update_type":"major","path":null,"pr_created_at":"2025-08-01T03:22:20.000Z","version_change":"19.0.1 → 20.0.0","issue":{"uuid":"2711856223","node_id":"PR_kwDOFckGqs6ho6Rf","number":1494,"state":"open","title":"build(deps): bump the angular group across 1 directory with 12 updates","user":"dependabot[bot]","labels":["theme: dependencies","theme: angular"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-01T03:22:20.000Z","updated_at":"2025-08-01T03:22:21.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"angular","update_count":12,"packages":[{"name":"@angular/common","old_version":"19.2.13","new_version":"20.1.4","repository_url":"https://github.com/angular/angular"},{"name":"@fortawesome/angular-fontawesome","old_version":"1.0.0","new_version":"2.0.1","repository_url":"https://github.com/FortAwesome/angular-fontawesome"},{"name":"@ng-bootstrap/ng-bootstrap","old_version":"18.0.0","new_version":"19.0.1","repository_url":"https://github.com/ng-bootstrap/ng-bootstrap"},{"name":"ngx-cookie-service","old_version":"19.1.2","new_version":"20.0.1","repository_url":"https://github.com/stevermeister/ngx-cookie-service"},{"name":"ngx-infinite-scroll","old_version":"19.0.0","new_version":"20.0.0","repository_url":"https://github.com/orizens/ngx-infinite-scroll"},{"name":"@angular-architects/module-federation","old_version":"19.0.3","new_version":"20.0.0","repository_url":"https://github.com/angular-architects/module-federation-plugin"},{"name":"@angular-architects/module-federation-runtime","old_version":"19.0.3","new_version":"20.0.0"},{"name":"@angular-builders/custom-esbuild","old_version":"19.1.0","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/custom-webpack","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular/cli","old_version":"19.2.13","new_version":"20.1.4","repository_url":"https://github.com/angular/angular-cli"},{"name":"typescript","old_version":"5.8.3","new_version":"5.9.2","repository_url":"https://github.com/microsoft/TypeScript"}],"path":null,"ecosystem":"npm"},"body":"Bumps the angular group with 12 updates in the /generators/angular/resources directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `19.2.13` | `20.1.4` |\n| [@fortawesome/angular-fontawesome](https://github.com/FortAwesome/angular-fontawesome) | `1.0.0` | `2.0.1` |\n| [@ng-bootstrap/ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap) | `18.0.0` | `19.0.1` |\n| [ngx-cookie-service](https://github.com/stevermeister/ngx-cookie-service) | `19.1.2` | `20.0.1` |\n| [ngx-infinite-scroll](https://github.com/orizens/ngx-infinite-scroll) | `19.0.0` | `20.0.0` |\n| [@angular-architects/module-federation](https://github.com/angular-architects/module-federation-plugin) | `19.0.3` | `20.0.0` |\n| @angular-architects/module-federation-runtime | `19.0.3` | `20.0.0` |\n| [@angular-builders/custom-esbuild](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-esbuild) | `19.1.0` | `20.0.0` |\n| [@angular-builders/custom-webpack](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/custom-webpack) | `19.0.1` | `20.0.0` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `19.2.13` | `20.1.4` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.8.3` | `5.9.2` |\n\n\nUpdates `@angular/common` from 19.2.13 to 20.1.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.1.4\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/db3c5826ee0b52e5b7886087b82990340a34c1ab\"\u003e\u003cimg src=\"https://img.shields.io/badge/db3c5826ee-fix-green\" alt=\"fix - db3c5826ee\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eexclude more safe reads expression from 2way-binding (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62852\"\u003e#62852\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c633b63e561d7142dd9a1f8631813cc47a169058\"\u003e\u003cimg src=\"https://img.shields.io/badge/c633b63e56-fix-green\" alt=\"fix - c633b63e56\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate symbols for new signals api (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62284\"\u003e#62284\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab6033979a3b409738d55d0c01effb378473c05a\"\u003e\u003cimg src=\"https://img.shields.io/badge/ab6033979a-fix-green\" alt=\"fix - ab6033979a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd missing http options allowed in fetch API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62881\"\u003e#62881\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/15670d8417449c5b5f2990209552a1fc61420acb\"\u003e\u003cimg src=\"https://img.shields.io/badge/15670d8417-fix-green\" alt=\"fix - 15670d8417\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003epropagate plain errors when parsing fails (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62765\"\u003e#62765\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.3\u003c/h2\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2c522efbe500e7c6c9929ce76df435b3dae49c84\"\u003e\u003cimg src=\"https://img.shields.io/badge/2c522efbe5-fix-green\" alt=\"fix - 2c522efbe5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix change tracking for Resource#hasValue (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62595\"\u003e#62595\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2fd1f7beb5e524aea8dcb24c5b87cb81689363ba\"\u003e\u003cimg src=\"https://img.shields.io/badge/2fd1f7beb5-fix-green\" alt=\"fix - 2fd1f7beb5\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eresolve component resources before bootstrapping in JIT mode (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62758\"\u003e#62758\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.2\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8ad10fd63b01a906efbfa50ccccb7914610c61bd\"\u003e\u003cimg src=\"https://img.shields.io/badge/8ad10fd63b-fix-green\" alt=\"fix - 8ad10fd63b\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix detection of directive deps in JIT (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62666\"\u003e#62666\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.1\u003c/h2\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/75d2a349b4d0ee1ed0489f1804dc1938046eaace\"\u003e\u003cimg src=\"https://img.shields.io/badge/75d2a349b4-fix-green\" alt=\"fix - 75d2a349b4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eincorrect spans for left side of binary operation (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62641\"\u003e#62641\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/70c8780c5443929539631a06c5e09c18d108e51b\"\u003e\u003cimg src=\"https://img.shields.io/badge/70c8780c54-fix-green\" alt=\"fix - 70c8780c54\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003emore permissive parsing of @ characters (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62644\"\u003e#62644\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/9506cdfaad2693a0350a74f4ee4bb7fa27fa3086\"\u003e\u003cimg src=\"https://img.shields.io/badge/9506cdfaad-fix-green\" alt=\"fix - 9506cdfaad\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003einfer type of event target for void elements (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62648\"\u003e#62648\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/26ade4a3370911f6c8e9c0e6504d9335d637cfe1\"\u003e\u003cimg src=\"https://img.shields.io/badge/26ade4a337-fix-green\" alt=\"fix - 26ade4a337\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eEnsure application remains unstable during bootstrap (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62631\"\u003e#62631\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a81f0faa1a72decf9bdd35b243486a510b9352ee\"\u003e\u003cimg src=\"https://img.shields.io/badge/a81f0faa1a-fix-green\" alt=\"fix - a81f0faa1a\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eInputBinding marks component a dirty. (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62613\"\u003e#62613\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/276836ee7351c5d605fac5dc0abe0ae898dcfa5d\"\u003e\u003cimg src=\"https://img.shields.io/badge/276836ee73-fix-green\" alt=\"fix - 276836ee73\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003edo not display warnings \u003ccode\u003eAngular detected that a \u003c/code\u003eHttpClient\u003ccode\u003erequest with the\u003c/code\u003ekeepalive\u003ccode\u003e option was sent using XHR\u003c/code\u003e when option is not true (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62536\"\u003e#62536\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.1.4 (2025-07-31)\u003c/h1\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/db3c5826ee0b52e5b7886087b82990340a34c1ab\"\u003edb3c5826ee\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eexclude more safe reads expression from 2way-binding (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62852\"\u003e#62852\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/c633b63e561d7142dd9a1f8631813cc47a169058\"\u003ec633b63e56\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate symbols for new signals api (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62284\"\u003e#62284\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ehttp\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab6033979a3b409738d55d0c01effb378473c05a\"\u003eab6033979a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd missing http options allowed in fetch API (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62881\"\u003e#62881\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/15670d8417449c5b5f2990209552a1fc61420acb\"\u003e15670d8417\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003epropagate plain errors when parsing fails (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62765\"\u003e#62765\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.2.0-next.2 (2025-07-23)\u003c/h1\u003e\n\u003ch3\u003ecompiler\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/7767aa640c542f5058df9322f2bbe974fa8d3c81\"\u003e7767aa640c\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow more characters in square-bracketed attribute names (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62742\"\u003e#62742\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3171d01452444721dbea53d1d1ca758f38d083a5\"\u003e3171d01452\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix detection of directive deps in JIT (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62666\"\u003e#62666\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/5abfe4a8999e42ad44e6f1d4414f241094bb8fdb\"\u003e5abfe4a899\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd diagnostic for uninvoked functions in text interpolation (\u003ca href=\"https://redirect.github.com/angular/angular/pull/59191\"\u003e#59191\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/6b1f4b9e8bb981377e271e6af0d9768ff7f765e9\"\u003e6b1f4b9e8b\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd enter and leave animation instructions (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62682\"\u003e#62682\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/cec91c00356ee3974c39c9471b243a2a16149f5b\"\u003ecec91c0035\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd option to infer the tag names of components in tests (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62283\"\u003e#62283\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4138aca91fe828f0cfbd779d0c456cdea7703bdc\"\u003e4138aca91f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003erender ARIA property bindings as attributes (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62630\"\u003e#62630\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/593cc8a3684dfb163bfffa265c5efb3bc7efacd1\"\u003e593cc8a368\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003echecks if body exists before continuing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62768\"\u003e#62768\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/b8e415a717fd3747c7bab3f6ea652874082a19bb\"\u003eb8e415a717\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003efix change tracking for Resource#hasValue (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62595\"\u003e#62595\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/063b5e166f66bce1abd06c258242212009e76cca\"\u003e063b5e166f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eswitch check to documentElement with chaining (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62773\"\u003e#62773\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eplatform-browser\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/74d99ed3796a3ced462e327c9b5857e5de4b7cb9\"\u003e74d99ed379\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eresolve component resources before bootstrapping in JIT mode (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62758\"\u003e#62758\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eservice-worker\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4ac6171b09e449c619e0588c366861f8f3bb59be\"\u003e4ac6171b09\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eAdds support for updateViaCache in provideServiceWorker (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62721\"\u003e#62721\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.3 (2025-07-23)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/82fcc9c136ee2ca23ab970450876a9af8f42b8eb\"\u003e\u003ccode\u003e82fcc9c\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix(http): add missing http options allowed in fetch API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62881\"\u003e#62881\u003c/a\u003e)\u0026quot; (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ab6033979a3b409738d55d0c01effb378473c05a\"\u003e\u003ccode\u003eab60339\u003c/code\u003e\u003c/a\u003e fix(http): add missing http options allowed in fetch API (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62881\"\u003e#62881\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ea1afec1e433ff30837d53c0e47b4bc4c92545ce\"\u003e\u003ccode\u003eea1afec\u003c/code\u003e\u003c/a\u003e build: move http_server and generate_api_docs into defaults2.bzl (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62878\"\u003e#62878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/f0fca612ee482eb08cc14dcb242cb1db38d1dde8\"\u003e\u003ccode\u003ef0fca61\u003c/code\u003e\u003c/a\u003e refactor(common): replace aio links to adev (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62839\"\u003e#62839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/622e10881f3585512fc6cc0d61d784821d877979\"\u003e\u003ccode\u003e622e108\u003c/code\u003e\u003c/a\u003e build: standardize usage of js_binary (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62860\"\u003e#62860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/2b0f3fc7cb36f63d0c344f06a1c355eba13c0136\"\u003e\u003ccode\u003e2b0f3fc\u003c/code\u003e\u003c/a\u003e build: remove all usages of \u003ccode\u003e@​bazel/runfiles\u003c/code\u003e (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62805\"\u003e#62805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/15670d8417449c5b5f2990209552a1fc61420acb\"\u003e\u003ccode\u003e15670d8\u003c/code\u003e\u003c/a\u003e fix(http): propagate plain errors when parsing fails (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62765\"\u003e#62765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b388f1e518d3f2b1491eadb2189d258bccb1dfd5\"\u003e\u003ccode\u003eb388f1e\u003c/code\u003e\u003c/a\u003e build: remove all usages of the interop_deps attr for ts_project and ng_proje...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/1e9bfe54b1374a4195b35681b0beba277c522228\"\u003e\u003ccode\u003e1e9bfe5\u003c/code\u003e\u003c/a\u003e build: migrate to new toolchain usage for api goldens (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62688\"\u003e#62688\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/276836ee7351c5d605fac5dc0abe0ae898dcfa5d\"\u003e\u003ccode\u003e276836e\u003c/code\u003e\u003c/a\u003e fix(http): do not display warnings \u003ccode\u003eAngular detected that a \u003c/code\u003eHttpClient` requ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular/commits/20.1.4/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@fortawesome/angular-fontawesome` from 1.0.0 to 2.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestored possibility to set inputs to \u003ccode\u003eundefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.0\u003c/h2\u003e\n\u003cp\u003eConverted all library internal component implementation to use reactive Signal APIs.\u003c/p\u003e\n\u003cp\u003eMake sure to check \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/UPGRADING.md\"\u003eupgrade instructions\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 20.\u003c/li\u003e\n\u003cli\u003eDocumentation on changes in Programmatic API.\u003c/li\u003e\n\u003cli\u003eDocumentation for upgrading 1.0.0 to 2.0.0\u003c/li\u003e\n\u003cli\u003eUpdated code to use signal APIs like signal, computed, effect, input, model.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003echangeDetection: ChangeDetectionStrategy.OnPush\u003c/code\u003e 🚀 for all components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated the \u003ccode\u003erender\u003c/code\u003e function from the \u003ccode\u003eFaIconComponent\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eProgrammatic API has changed, \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/docs/usage/features.md#programmatic-api\"\u003eplease refer here\u003c/a\u003e and migration guide \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/HEAD/docs/upgrading/1.0.0-2.0.0.md\"\u003e1.0.0 to 2.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​fortawesome/angular-fontawesome\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/2.0.1\"\u003e2.0.1\u003c/a\u003e (2025-06-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestored possibility to set inputs to \u003ccode\u003eundefined\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/releases/tag/2.0.0\"\u003e2.0.0\u003c/a\u003e (2025-05-31)\u003c/h2\u003e\n\u003cp\u003eConverted all library internal component implementation to use reactive Signal APIs.\u003c/p\u003e\n\u003cp\u003eMake sure to check \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/UPGRADING.md\"\u003eupgrade instructions\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Angular 20.\u003c/li\u003e\n\u003cli\u003eDocumentation on changes in Programmatic API.\u003c/li\u003e\n\u003cli\u003eDocumentation for upgrading 1.0.0 to 2.0.0\u003c/li\u003e\n\u003cli\u003eUpdated code to use signal APIs like signal, computed, effect, input, model.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003echangeDetection: ChangeDetectionStrategy.OnPush\u003c/code\u003e 🚀 for all components.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecated the \u003ccode\u003erender\u003c/code\u003e function from the \u003ccode\u003eFaIconComponent\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eProgrammatic API has changed, \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/master/docs/usage/features.md#programmatic-api\"\u003eplease refer here\u003c/a\u003e and migration guide \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/blob/main/docs/upgrading/1.0.0-2.0.0.md\"\u003e1.0.0 to 2.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/259bd3905b4f16915e27f64ab6ef8af75ceb2dae\"\u003e\u003ccode\u003e259bd39\u003c/code\u003e\u003c/a\u003e Release 2.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/71adc9a27742b97195d0e0feaeee4d2ce58bca22\"\u003e\u003ccode\u003e71adc9a\u003c/code\u003e\u003c/a\u003e Align TypeScript configuration with the new Angular CLI project\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/eb9807e70d53512a72eeb976b2c2bf1cf98d4daf\"\u003e\u003ccode\u003eeb9807e\u003c/code\u003e\u003c/a\u003e Update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/3d2e105f09d7c288f2349613144d996956da72b0\"\u003e\u003ccode\u003e3d2e105\u003c/code\u003e\u003c/a\u003e Release 2.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/a30ff67460d8d59cdf9ed37610d545e97c6a6e9a\"\u003e\u003ccode\u003ea30ff67\u003c/code\u003e\u003c/a\u003e Update dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/b1edcac6ed205050e8d97d6b76368a0561e667a1\"\u003e\u003ccode\u003eb1edcac\u003c/code\u003e\u003c/a\u003e Refactor imports in component files to consolidate DOCUMENT import\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/9d8cab15f26cbe141c6b5587f3ee54439e7922b8\"\u003e\u003ccode\u003e9d8cab1\u003c/code\u003e\u003c/a\u003e Add support for Angular 20 in CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/0bcbabcbf4002002da7594ce08b3b3745cf50b68\"\u003e\u003ccode\u003e0bcbabc\u003c/code\u003e\u003c/a\u003e Update README.md to reflect Angular 20 compatibility for version 2.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/dab6d6fa79baebdd829c548813625f8bd491cb14\"\u003e\u003ccode\u003edab6d6f\u003c/code\u003e\u003c/a\u003e Update \u003ca href=\"https://github.com/typescript-eslint\"\u003e\u003ccode\u003e@​typescript-eslint\u003c/code\u003e\u003c/a\u003e dependencies to version 8.33.0 and adjust peer depe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/commit/0a2488582b195e9b4b178ceb77276c62dd7bcdff\"\u003e\u003ccode\u003e0a24885\u003c/code\u003e\u003c/a\u003e Fix typo in app module file name in index.spec.ts\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/FortAwesome/angular-fontawesome/compare/1.0.0...2.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ng-bootstrap/ng-bootstrap` from 18.0.0 to 19.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/releases\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.0.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.0...19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-07-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etoast:\u003c/strong\u003e missing export of \u003ccode\u003eNgbToastOptions\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e6b26ef3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epositioning:\u003c/strong\u003e missing export of \u003ccode\u003ePlacementArray\u003c/code\u003e type (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e) (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003ea4e94a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e missing export of \u003ccode\u003eDayTemplateContext\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e1b90da5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e20.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e tooltip created after view destroyed (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003ed9c96aa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.0-rc.0\u003c/h2\u003e\n\u003cp\u003eThis release candidate version bumps minimum required versions to Angular 20.0.0\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/blob/master/CHANGELOG.md\"\u003e\u003ccode\u003e@​ng-bootstrap/ng-bootstrap\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/19.0.0...19.0.1\"\u003e19.0.1\u003c/a\u003e (2025-07-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etoast:\u003c/strong\u003e missing export of \u003ccode\u003eNgbToastOptions\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e6b26ef3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epositioning:\u003c/strong\u003e missing export of \u003ccode\u003ePlacementArray\u003c/code\u003e type (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e) (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003ea4e94a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e missing export of \u003ccode\u003eDayTemplateContext\u003c/code\u003e interface (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e1b90da5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.0\"\u003e19.0.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003cp\u003eThis release bumps minimum required versions to Angular \u003ccode\u003e20.0.0\u003c/code\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecarousel:\u003c/strong\u003e remove invalid \u003ccode\u003earia-activedescendant\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6ecb129c09ea7db8df05209f65aca844a5171b64\"\u003e6ecb129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e add missing attributes \u003ccode\u003earia-disabled\u003c/code\u003e and \u003ccode\u003earia-selected\u003c/code\u003e (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/fab39cb0fbce89ec4a92cc5c3044b7f4e0c81f39\"\u003efab39cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emodal:\u003c/strong\u003e fix usage of modal in zoneless, by calling mark for check after update of modal options (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/afe98eef8fee83888d666381fa0d9f9a48c56e5b\"\u003eafe98ee\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epagination:\u003c/strong\u003e put \u003ccode\u003earia-current\u003c/code\u003e on link element instead of li for a11y (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/39dc037f2ac22203bbc4810a14fd69693893a144\"\u003e39dc037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etimepicker:\u003c/strong\u003e wrong auto-setting of hour value (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/4137c6062c497869af7998b2ebfdd429eb6e2a97\"\u003e4137c60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e opening just after a close does not keep the tooltip open (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/bfee86d6a4d1aed033c0ecd3d571f732e62341c9\"\u003ebfee86d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip:\u003c/strong\u003e tooltip created after view destroyed (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003ed9c96aa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e add aria-controls for accessibility (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypeahead:\u003c/strong\u003e set the value of typeahead's control to \u003ccode\u003enull\u003c/code\u003e instead of \u003ccode\u003eundefined\u003c/code\u003e when using the non-editable mode (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/daaa56def53e9b2d4a30f456ea1087523c5ca3d7\"\u003edaaa56d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,popover:\u003c/strong\u003e allow to keep tooltip/popover open when hovered if \u003ccode\u003ecloseDelay\u003c/code\u003e is a positive number (\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/8117bfa9292ffb2495306e5f1a7739d9587baa79\"\u003e8117bfa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/b117049a0f46998703c296150a03e7b14a1ca6d9\"\u003e\u003ccode\u003eb117049\u003c/code\u003e\u003c/a\u003e 19.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a4e94a38ec8cd8fed9eea3e5315d977f990d56fb\"\u003e\u003ccode\u003ea4e94a3\u003c/code\u003e\u003c/a\u003e fix(types): export PlacementArray in main index (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4847\"\u003e#4847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/db98bf0e2be8c77e46b77b6f304f051ec391ef98\"\u003e\u003ccode\u003edb98bf0\u003c/code\u003e\u003c/a\u003e demo: add clipboard button functionality and relevant styling (\u003ca href=\"https://redirect.github.com/ng-bootstrap/ng-bootstrap/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/1b90da52656b3f94b4c48cfbd0b60cf40bff8c7d\"\u003e\u003ccode\u003e1b90da5\u003c/code\u003e\u003c/a\u003e feat(datepicker): export DayTemplateContext\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/6b26ef37ba39a931d06eea222306efd6f005cc92\"\u003e\u003ccode\u003e6b26ef3\u003c/code\u003e\u003c/a\u003e fix(toast): missing export of NgbToastOptions interface\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/2704265b58621bca48f7ca2926113a18cf15dd5c\"\u003e\u003ccode\u003e2704265\u003c/code\u003e\u003c/a\u003e docs: release 19.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/3dec2a2da5f598968ce532e094305456e4bac6e3\"\u003e\u003ccode\u003e3dec2a2\u003c/code\u003e\u003c/a\u003e docs: add release 18 in demo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/622ba01aaf6ad2dfad9e121480c9d731b8e2efa9\"\u003e\u003ccode\u003e622ba01\u003c/code\u003e\u003c/a\u003e docs: update README adding 19.0.0 info\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/d9c96aad19565c74e2754e254871c7a5cf8f2194\"\u003e\u003ccode\u003ed9c96aa\u003c/code\u003e\u003c/a\u003e fix(tooltip): tooltip created after view destroyed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/commit/a6635ce9f8244ee615e93caf739a0b290aa2895e\"\u003e\u003ccode\u003ea6635ce\u003c/code\u003e\u003c/a\u003e demo: bump bootstrap to 5.3.6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ng-bootstrap/ng-bootstrap/compare/18.0.0...19.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-cookie-service` from 19.1.2 to 20.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/releases\"\u003engx-cookie-service's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(package): update version to 20.0.0 for ngx-cookie-service and ng… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/354\"\u003estevermeister/ngx-cookie-service#354\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChange peer dependencies by \u003ca href=\"https://github.com/sokheang-dev\"\u003e\u003ccode\u003e@​sokheang-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/356\"\u003estevermeister/ngx-cookie-service#356\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sokheang-dev\"\u003e\u003ccode\u003e@​sokheang-dev\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/356\"\u003estevermeister/ngx-cookie-service#356\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v20.0.0...v20.0.1\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v20.0.0...v20.0.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(core): adds angular 20 support by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/353\"\u003estevermeister/ngx-cookie-service#353\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.5...v20.0.0\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.5...v20.0.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: update Node.js version to 20 and upgrade action versions in CI… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/351\"\u003estevermeister/ngx-cookie-service#351\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: migrate tests from Jest to Jasmine and update related configurations by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/352\"\u003estevermeister/ngx-cookie-service#352\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.4...v19.1.5\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.4...v19.1.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(core): revert-replace headers.get('cookie') with headers.cookie by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/348\"\u003estevermeister/ngx-cookie-service#348\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.3...v19.1.4\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.3...v19.1.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.1.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(package): bump version to 19.1.2 for ngx-cookie-service and ngx… by \u003ca href=\"https://github.com/pavankjadda\"\u003e\u003ccode\u003e@​pavankjadda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/344\"\u003estevermeister/ngx-cookie-service#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(core): replace headers.get('cookie') with headers.cookie by \u003ca href=\"https://github.com/mmart1n\"\u003e\u003ccode\u003e@​mmart1n\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/347\"\u003estevermeister/ngx-cookie-service#347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mmart1n\"\u003e\u003ccode\u003e@​mmart1n\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/pull/347\"\u003estevermeister/ngx-cookie-service#347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v19.1.3\"\u003ehttps://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v19.1.3\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/0771c9290123eafa0cb35a2802a266ac32bd0914\"\u003e\u003ccode\u003e0771c92\u003c/code\u003e\u003c/a\u003e Change peer dependencies (\u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/356\"\u003e#356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/4060892b99ea59f7c6bca67e6c6e32f5085dddac\"\u003e\u003ccode\u003e4060892\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/stevermeister/ngx-cookie-service/issues/354\"\u003e#354\u003c/a\u003e from stevermeister/development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/23eb206dd8634f93e7b0a35bc77c544f9e26572d\"\u003e\u003ccode\u003e23eb206\u003c/code\u003e\u003c/a\u003e feat(package): update version to 20.0.0 for ngx-cookie-service and ngx-cookie...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/1573f4764b1d7415a13f95f0082ea2c7acac9004\"\u003e\u003ccode\u003e1573f47\u003c/code\u003e\u003c/a\u003e feat(core): adds angular 20 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/411a870150b08b8e902b28a2f67024d7686af304\"\u003e\u003ccode\u003e411a870\u003c/code\u003e\u003c/a\u003e fix(karma): update Angular build plugin and improve configuration formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/8537abaa580bedd757fdbed77df61a23a9e60b64\"\u003e\u003ccode\u003e8537aba\u003c/code\u003e\u003c/a\u003e feat(docs): add Copilot instructions for Angular projects\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/7e610ea7112a33211cb75fe654cb2da57d7a5e38\"\u003e\u003ccode\u003e7e610ea\u003c/code\u003e\u003c/a\u003e feat(docs): add Copilot instructions for Angular projects\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/ce350ca9da67c4a0faa883e1f35036c1d4aea4b8\"\u003e\u003ccode\u003ece350ca\u003c/code\u003e\u003c/a\u003e feat(core): adds angular 20 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/97650bdaabb048485a48f4823f90f11fc630887b\"\u003e\u003ccode\u003e97650bd\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/commit/1b97b0a7589ffb097c955f1edce53dd0375da072\"\u003e\u003ccode\u003e1b97b0a\u003c/code\u003e\u003c/a\u003e feat: migrate tests from Jest to Jasmine and update related configurations (#...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/stevermeister/ngx-cookie-service/compare/v19.1.2...v20.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ngx-infinite-scroll` from 19.0.0 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/orizens/ngx-infinite-scroll/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-architects/module-federation` from 19.0.3 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/releases\"\u003e\u003ccode\u003e@​angular-architects/module-federation\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular-architects/module-federation-plugin/commit/d4bf6f035b01631fa7f1bf6f98838ae94db2f8ef\"\u003efeat(nf): migrate to angular 20\u003c/a\u003e\n\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/compare/19.0.23...20.0.0\"\u003ehttps://github.com/angular-architects/module-federation-plugin/compare/19.0.23...20.0.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.0.23\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(index-file): fixed the double quote issue by \u003ca href=\"https://github.com/asollberger\"\u003e\u003ccode\u003e@​asollberger\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/angular-architects/module-federation-plugin/pull/849\"\u003eangular-architects/module-federation-plugin#849\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/compare/19.0.19...19.0.23\"\u003ehttps://github.com/angular-architects/module-federation-plugin/compare/19.0.19...19.0.23\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.0.19\u003c/h2\u003e\n\u003cp\u003eThis release solves several issues that occurred with Angular 19.2, and it also solves issues with an entire class of npm packages using Singletons. For this, it delegates directly to the underlying bundler for chunk splitting. Hence, we don't need the transient flag anymore. \u003ccode\u003etransient\u003c/code\u003e deps will end up in their own bundles automatically \u003cem\u003ewhen\u003c/em\u003e required (when used from more than one other dependencies). In this regards, Native Federation now behaves like Module Federation.\u003c/p\u003e\n\u003ch2\u003e19.0.16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(nf): add shareAngularLocales helper\u003c/li\u003e\n\u003cli\u003efeat(nf): support angular i18n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/angular-architects/module-federation-plugin/blob/main/libs/native-federation/README.md#angular-i18n\"\u003eDetails in Readme\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e19.0.10\u003c/h2\u003e\n\u003cp\u003eBig thanks to our contributors!\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003efeat(nf-runtime): added cacheTag option\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003einitFederation\u003c/code\u003e now has a \u003ccode\u003ecacheTag\u003c/code\u003e option. If you set it, e.g., to \u003ccode\u003eDate.now()\u003c/code\u003e, it will be appended to the URLs of the fetched \u003ccode\u003eremoteEntries.json\u003c/code\u003e files to prevent caching.\u003c/p\u003e\n\u003cp\u003eBig thanks to \u003ca href=\"https://github.com/asollberger\"\u003eAlain Sollberger\u003c/a\u003e for this contribution!\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003efeat(nf): allow to version repo-internal libs (mapped paths)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eWe can now assign a version number to monorepo-internal libs (mapped paths). This allows to detect conflicts in cases where different micro frontends of the same monorepo were deployed independently and a shared internal lib was changed in between the two deployments.\u003c/p\u003e\n\u003cp\u003eTo use this feature, just assign a version number in the libs package.json and activate the new feature using the new feature map:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003emodule.exports = withNativeFederation({\n\u003cp\u003e[...]\u003c/p\u003e\n\u003cp\u003efeatures: {\nmappingVersion: true,\n},\u003c/p\u003e\n\u003cp\u003e});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eThe new feature map activates features that might cause breaking changes. Without explicitly activating these features, the usual backwards-compatible behavior is used.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular-architects/module-federation-plugin/commits/20.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-architects/module-federation-runtime` from 19.0.3 to 20.0.0\n\nUpdates `@angular-builders/custom-esbuild` from 19.1.0 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-esbuild/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@20.0.0-beta.0...@angular-builders/custom-esbuild@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-esbuild\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-esbuild@19.1.0...@angular-builders/custom-esbuild@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecustom-esbuild:\u003c/strong\u003e expose builder options to plugins (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/2c114d9ccf105d8bbf024de9e67a69d625ce2742\"\u003e2c114d9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/2c114d9ccf105d8bbf024de9e67a69d625ce2742\"\u003e\u003ccode\u003e2c114d9\u003c/code\u003e\u003c/a\u003e feat(custom-esbuild): expose builder options to plugins\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-esbuild@20.0.0/packages/custom-esbuild\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/custom-webpack` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/custom-webpack/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@20.0.0-beta.0...@angular-builders/custom-webpack@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/custom-webpack\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/custom-webpack@19.0.1...@angular-builders/custom-webpack@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/custom-webpack@20.0.0/packages/custom-webpack\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular-builders/jest` from 19.0.1 to 20.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/cli` from 19.2.13 to 20.1.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/releases\"\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.1.4\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d753cc62c9a801c40923a43e4af5f74b22700e0\"\u003e\u003cimg src=\"https://img.shields.io/badge/2d753cc62-fix-green\" alt=\"fix - 2d753cc62\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eskip workspace-specific tools when outside a workspace\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d72ef4d99380dbb1c0e03e3e3abfb2223fa539\"\u003e\u003cimg src=\"https://img.shields.io/badge/42d72ef4d-fix-green\" alt=\"fix - 42d72ef4d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eskip vite transformation of CSS-like assets\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.3\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ea5cd0e81196467ea66f50c106cffec1cd8a1a56\"\u003e\u003cimg src=\"https://img.shields.io/badge/ea5cd0e81-fix-green\" alt=\"fix - ea5cd0e81\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eupdate \u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e7.0.6\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.2\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/96785224f55291cd60553aead07ead10d9d2fbda\"\u003e\u003cimg src=\"https://img.shields.io/badge/96785224f-fix-green\" alt=\"fix - 96785224f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003edefine\u003c/code\u003e option is being included multiple times in the JSON help\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/core\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0d0040bdf58a82e18f7669363b6f149313524bfc\"\u003e\u003cimg src=\"https://img.shields.io/badge/0d0040bdf-fix-green\" alt=\"fix - 0d0040bdf\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse crypto.randomUUID instead of Date.now for unique string in tmp file names\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.1\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/541b33f8d977c1fe8f609099a8b8ed1c5f8e827e\"\u003e\u003cimg src=\"https://img.shields.io/badge/541b33f8d-fix-green\" alt=\"fix - 541b33f8d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eemit a warning when \u003ccode\u003eoutputHashing\u003c/code\u003e is set to \u003ccode\u003eall\u003c/code\u003e or \u003ccode\u003ebundles\u003c/code\u003e when HMR is enabled\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/558a0fe9275e68e0b768de3ee2e5bee0d6d84a6e\"\u003e\u003cimg src=\"https://img.shields.io/badge/558a0fe92-fix-green\" alt=\"fix - 558a0fe92\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003enormalize code coverage include paths to POSIX\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch2\u003e20.1.0\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​schematics/angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1c19e0dcd4a87fbf542201e09a402a8fccdfcd88\"\u003e\u003cimg src=\"https://img.shields.io/badge/1c19e0dcd-feat-blue\" alt=\"feat - 1c19e0dcd\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003euse signal in app component\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/dc45c186ec16e345b75ffcd57961a8e0cfd4b649\"\u003e\u003cimg src=\"https://img.shields.io/badge/dc45c186e-feat-blue\" alt=\"feat - dc45c186e\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd initial MCP server implementation\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/build-angular\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/49a09737d5412c302d09b40de198251bb99789d1\"\u003e\u003cimg src=\"https://img.shields.io/badge/49a09737d-feat-blue\" alt=\"feat - 49a09737d\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eprovide partial custom postcss configuration support\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/1159cf08103081d2b851e59bc1c5fb200f114982\"\u003e\u003cimg src=\"https://img.shields.io/badge/1159cf081-feat-blue\" alt=\"feat - 1159cf081\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd code coverage reporters option for unit-test\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular-cli/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.1.4 (2025-07-30)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d753cc62c9a801c40923a43e4af5f74b22700e0\"\u003e2d753cc62\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eskip workspace-specific tools when outside a workspace\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d72ef4d99380dbb1c0e03e3e3abfb2223fa539\"\u003e42d72ef4d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eskip vite transformation of CSS-like assets\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.3 (2025-07-24)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ea5cd0e81196467ea66f50c106cffec1cd8a1a56\"\u003eea5cd0e81\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eupdate \u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e7.0.6\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.2.0-next.1 (2025-07-23)\u003c/h1\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/cli\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/fefa7a46f5733fd77852a61fddc3120b1bb4b202\"\u003efefa7a46f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003edefine\u003c/code\u003e option is being included multiple times in the JSON help\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular-devkit/core\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/7595e1f8887bafd344ec939e647e3fca8bbd98be\"\u003e7595e1f88\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003euse crypto.randomUUID instead of Date.now for unique string in tmp file names\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003e\u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/fb06bb5050e92eb4d0f95d7774552d0902163f6a\"\u003efb06bb505\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003eadd headless mode for vitest browser mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ffc4c671753aa7ba4ae4ff6cd13eb4cd9eb08ec2\"\u003e\u003ccode\u003effc4c67\u003c/code\u003e\u003c/a\u003e release: cut the v20.1.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/2d753cc62c9a801c40923a43e4af5f74b22700e0\"\u003e\u003ccode\u003e2d753cc\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/cli\u003c/code\u003e): skip workspace-specific tools when outside a workspace\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/42d72ef4d99380dbb1c0e03e3e3abfb2223fa539\"\u003e\u003ccode\u003e42d72ef\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): skip vite transformation of CSS-like assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0489fe7025c60f022ca3959d6f651dc6b1bc9f2a\"\u003e\u003ccode\u003e0489fe7\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/build\u003c/code\u003e): update MCP best practices guide content\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/f7b61609c4f555fda8bd7e0571ee2308cdecee90\"\u003e\u003ccode\u003ef7b6160\u003c/code\u003e\u003c/a\u003e build: update bazel dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/18b44f64559ce7fc5c63cf9c9354b01c398fdae9\"\u003e\u003ccode\u003e18b44f6\u003c/code\u003e\u003c/a\u003e release: cut the v20.1.3 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/ea5cd0e81196467ea66f50c106cffec1cd8a1a56\"\u003e\u003ccode\u003eea5cd0e\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​angular/build\u003c/code\u003e): update \u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e7.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/0568f385ebed0f8572f542985d6be2411ed98730\"\u003e\u003ccode\u003e0568f38\u003c/code\u003e\u003c/a\u003e release: cut the v20.1.2 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/14da0424a739b567d7e740fbc8b5992e0f084e01\"\u003e\u003ccode\u003e14da042\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): move MCP list projects tool to separate file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular-cli/commit/731d1a637ec82a6e501962603447e2b67b077862\"\u003e\u003ccode\u003e731d1a6\u003c/code\u003e\u003c/a\u003e refactor(\u003ccode\u003e@​angular/cli\u003c/code\u003e): include content for top result in MCP documentation s...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/angular-cli/compare/19.2.13...20.1.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript` from 5.8.3 to 5.9.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/TypeScript/releases\"\u003etypescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTypeScript 5.9\u003c/h2\u003e\n\u003cp\u003eRelease notes pending.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.1%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.1 (RC)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e[[No specific changes for TypeScript 5.9.2 (Stable)]]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTypeScript 5.9 RC\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9-rc/\"\u003erelease announcement\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.1%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.1 (RC)\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTypeScript 5.9 Beta\u003c/h2\u003e\n\u003cp\u003eFor release notes, check out the \u003ca href=\"https://devblogs.microsoft.com/typescript/announcing-typescript-5-9-beta/\"\u003erelease announcement\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\u0026amp;q=milestone%3A%22TypeScript+5.9.0%22+is%3Aclosed+\"\u003efixed issues query for Typescript 5.9.0 (Beta)\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDownloads are available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/typescript\"\u003enpm\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/be8678315541e814da14316848a9468e8f90ab11\"\u003e\u003ccode\u003ebe86783\u003c/code\u003e\u003c/a\u003e Give more specific errors for \u003ccode\u003everbatimModuleSyntax\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62113\"\u003e#62113\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/22ef57786f5ca99837c430439bc6003c068fe1d2\"\u003e\u003ccode\u003e22ef577\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250714...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/d5a414cd1dceb209fd2569e89d1096812218e8c5\"\u003e\u003ccode\u003ed5a414c\u003c/code\u003e\u003c/a\u003e Don't use \u003ccode\u003enoErrorTruncation\u003c/code\u003e when printing types with \u003ccode\u003emaximumLength\u003c/code\u003e set (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/f14b5c8a2f0be503ac455054a91573c63f0e5088\"\u003e\u003ccode\u003ef14b5c8\u003c/code\u003e\u003c/a\u003e Remove unused and confusing dom.iterable.d.ts file (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62037\"\u003e#62037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/2778e84ed88894156e2c5a17d74a25c73cc96ffe\"\u003e\u003ccode\u003e2778e84\u003c/code\u003e\u003c/a\u003e Restore AbortSignal.abort (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62086\"\u003e#62086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/65cb4bd2d52cd882f2c3a503681479eb2ed291ca\"\u003e\u003ccode\u003e65cb4bd\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250710...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/9e20e032effad965567d4a1e1c30d5433b0a3332\"\u003e\u003ccode\u003e9e20e03\u003c/code\u003e\u003c/a\u003e Clear out checker-level stacks on pop (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/62016\"\u003e#62016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/87740bc7fe3d8d2af47d767db081491f40b8a90d\"\u003e\u003ccode\u003e87740bc\u003c/code\u003e\u003c/a\u003e Fix for Issue 61081 (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/61221\"\u003e#61221\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/833a8d492c728d606454865e8c0fee84842f9f10\"\u003e\u003ccode\u003e833a8d4\u003c/code\u003e\u003c/a\u003e Fix Symbol completion priority and cursor positioning (\u003ca href=\"https://redirect.github.com/microsoft/TypeScript/issues/61945\"\u003e#61945\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/TypeScript/commit/0018c9ff12e657b84997dc1843818fea0a2ce850\"\u003e\u003ccode\u003e0018c9f\u003c/code\u003e\u003c/a\u003e LEGO: Pull request from lego/hb_5378966c-b857-470a-8675-daebef4a6da1_20250702...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/TypeScript/compare/v5.8.3...v5.9.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will canc...\n\n_Description has been truncated_","html_url":"https://github.com/qmonmert/generator-jhipster/pull/1494","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/qmonmert%2Fgenerator-jhipster/issues/1494","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1494/packages"}},{"old_version":"19.0.1","new_version":"20.0.0","update_type":"major","path":null,"pr_created_at":"2025-07-14T06:12:34.000Z","version_change":"19.0.1 → 20.0.0","issue":{"uuid":"3227493495","node_id":"PR_kwDOEG4mJ86evCOJ","number":1308,"state":"open","title":"chore: bump @angular-builders/jest from 19.0.1 to 20.0.0","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-14T06:12:34.000Z","updated_at":"2025-07-14T14:56:21.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore","packages":[{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) from 19.0.1 to 20.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@angular-builders/jest\u0026package-manager=npm_and_yarn\u0026previous-version=19.0.1\u0026new-version=20.0.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/hypertrace/hyperdash-angular/pull/1308","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hypertrace%2Fhyperdash-angular/issues/1308","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1308/packages"}},{"old_version":"19.0.1","new_version":"20.0.0","update_type":"major","path":null,"pr_created_at":"2025-06-30T12:49:19.000Z","version_change":"19.0.1 → 20.0.0","issue":{"uuid":"2628828865","node_id":"PR_kwDOKj54E86csL7B","number":505,"state":"closed","title":"Bump @angular-builders/jest from 19.0.1 to 20.0.0","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-07-19T08:11:04.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-30T12:49:19.000Z","updated_at":"2025-07-19T08:11:04.000Z","time_to_close":1624905,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"}],"path":null,"ecosystem":"npm"},"body":"[//]: # (dependabot-start)\n⚠️  **Dependabot is rebasing this PR** ⚠️ \n\nRebasing might not happen immediately, so don't worry if this takes some time.\n\nNote: if you make any changes to this PR yourself, they will take precedence over the rebase.\n\n---\n\n[//]: # (dependabot-end)\n\nBumps [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) from 19.0.1 to 20.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular-builders/jest\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@20.0.0-beta.0...@angular-builders/jest@20.0.0\"\u003e20.0.0\u003c/a\u003e (2025-06-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​angular-builders/jest\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/compare/@angular-builders/jest@19.0.1...@angular-builders/jest@20.0.0-beta.0\"\u003e20.0.0-beta.0\u003c/a\u003e (2025-06-19)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emigrate to \u003ccode\u003e@​angular/build\u003c/code\u003e (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003edb2fc68\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e upgrade to Angular 20 (\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e4f673a8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/a4c82a435c2be98fd8e0963d44cbd21e07915428\"\u003e\u003ccode\u003ea4c82a4\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/24bf96d532eea5f526136bbcab12b66f3210b61a\"\u003e\u003ccode\u003e24bf96d\u003c/code\u003e\u003c/a\u003e ci(release): publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/db2fc689cf58be44bcbee6a13e9729ec88138e1b\"\u003e\u003ccode\u003edb2fc68\u003c/code\u003e\u003c/a\u003e feat: migrate to \u003ccode\u003e@​angular/build\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/just-jeb/angular-builders/commit/4f673a8ae090c226b67c4e249a161a968e1964da\"\u003e\u003ccode\u003e4f673a8\u003c/code\u003e\u003c/a\u003e chore(deps)!: upgrade to Angular 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@20.0.0/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@angular-builders/jest\u0026package-manager=npm_and_yarn\u0026previous-version=19.0.1\u0026new-version=20.0.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/ls1intum/Artemis-Benchmarking/pull/505","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ls1intum%2FArtemis-Benchmarking/issues/505","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/505/packages"}},{"old_version":"19.0.1","new_version":"20.0.0","update_type":"major","path":null,"pr_created_at":"2025-06-26T04:46:05.000Z","version_change":"19.0.1 → 20.0.0","issue":{"uuid":"2619995276","node_id":"PR_kwDOLXKG486cKfSM","number":589,"state":"open","title":"chore(deps): bump the angular group with 13 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-26T04:46:05.000Z","updated_at":"2025-06-26T04:46:06.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"angular","update_count":13,"packages":[{"name":"@angular/animations","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular/common","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular/compiler","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular/core","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular/forms","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular/material","old_version":"20.0.3","new_version":"20.0.4","repository_url":"https://github.com/angular/components"},{"name":"@angular/platform-browser","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular/platform-browser-dynamic","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"},{"name":"@angular-builders/jest","old_version":"19.0.1","new_version":"20.0.0","repository_url":"https://github.com/just-jeb/angular-builders"},{"name":"@angular-devkit/build-angular","old_version":"20.0.3","new_version":"20.0.4","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/cdk","old_version":"20.0.3","new_version":"20.0.4","repository_url":"https://github.com/angular/components"},{"name":"@angular/cli","old_version":"20.0.3","new_version":"20.0.4","repository_url":"https://github.com/angular/angular-cli"},{"name":"@angular/compiler-cli","old_version":"20.0.4","new_version":"20.0.5","repository_url":"https://github.com/angular/angular"}],"path":null,"ecosystem":"npm"},"body":"Bumps the angular group with 13 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@angular/animations](https://github.com/angular/angular/tree/HEAD/packages/animations) | `20.0.4` | `20.0.5` |\n| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `20.0.4` | `20.0.5` |\n| [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) | `20.0.4` | `20.0.5` |\n| [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) | `20.0.4` | `20.0.5` |\n| [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) | `20.0.4` | `20.0.5` |\n| [@angular/material](https://github.com/angular/components) | `20.0.3` | `20.0.4` |\n| [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) | `20.0.4` | `20.0.5` |\n| [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) | `20.0.4` | `20.0.5` |\n| [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) | `19.0.1` | `20.0.0` |\n| [@angular-devkit/build-angular](https://github.com/angular/angular-cli) | `20.0.3` | `20.0.4` |\n| [@angular/cdk](https://github.com/angular/components) | `20.0.3` | `20.0.4` |\n| [@angular/cli](https://github.com/angular/angular-cli) | `20.0.3` | `20.0.4` |\n| [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) | `20.0.4` | `20.0.5` |\n\nUpdates `@angular/animations` from 20.0.4 to 20.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/animations\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003e\u003cimg src=\"https://img.shields.io/badge/de0d525ad7-fix-green\" alt=\"fix - de0d525ad7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e\u003cimg src=\"https://img.shields.io/badge/3eb5a79a83-fix-green\" alt=\"fix - 3eb5a79a83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003cimg src=\"https://img.shields.io/badge/a2e6f317a7-fix-green\" alt=\"fix - a2e6f317a7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003cimg src=\"https://img.shields.io/badge/4c00238a69-fix-green\" alt=\"fix - 4c00238a69\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003cimg src=\"https://img.shields.io/badge/369f03ad7f-fix-green\" alt=\"fix - 369f03ad7f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003cimg src=\"https://img.shields.io/badge/65c59dd796-fix-green\" alt=\"fix - 65c59dd796\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e\u003cimg src=\"https://img.shields.io/badge/144c429230-fix-green\" alt=\"fix - 144c429230\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/animations/issues/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/animations\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.5 (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003ede0d525ad7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e3eb5a79a83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003ea2e6f317a7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e4c00238a69\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e369f03ad7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e65c59dd796\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e144c429230\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.2 (2025-06-18)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2e0c98bd3f2efd1181429b486dd1cebe14385c18\"\u003e2e0c98bd3f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport bindings in TestBed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62040\"\u003e#62040\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8424b3bcd5b9c78f37dc8ba636c87775937bcc03\"\u003e8424b3bcd5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eFixes template outlet hydration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61989\"\u003e#61989\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/31da435854379e2a97b9b746751617e9979f01b0\"\u003e31da435854\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einject \u003ccode\u003eAPP_ID\u003c/code\u003e before injector is destroyed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61885\"\u003e#61885\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/572c32a03876a5dbb6d0400ab0a217541407a0f9\"\u003e572c32a038\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eWrap ErrorEvent with no error property (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62081\"\u003e#62081\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/34adfdea82997c43325e541c016c5c5d6f6f4a31\"\u003e34adfdea82\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emore robust trailing comma removal in unused imports migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62118\"\u003e#62118\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular/angular/commits/20.0.5/packages/animations\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/common` from 20.0.4 to 20.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003e\u003cimg src=\"https://img.shields.io/badge/de0d525ad7-fix-green\" alt=\"fix - de0d525ad7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e\u003cimg src=\"https://img.shields.io/badge/3eb5a79a83-fix-green\" alt=\"fix - 3eb5a79a83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003cimg src=\"https://img.shields.io/badge/a2e6f317a7-fix-green\" alt=\"fix - a2e6f317a7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003cimg src=\"https://img.shields.io/badge/4c00238a69-fix-green\" alt=\"fix - 4c00238a69\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003cimg src=\"https://img.shields.io/badge/369f03ad7f-fix-green\" alt=\"fix - 369f03ad7f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003cimg src=\"https://img.shields.io/badge/65c59dd796-fix-green\" alt=\"fix - 65c59dd796\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e\u003cimg src=\"https://img.shields.io/badge/144c429230-fix-green\" alt=\"fix - 144c429230\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/common\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.5 (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003ede0d525ad7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e3eb5a79a83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003ea2e6f317a7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e4c00238a69\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e369f03ad7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e65c59dd796\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e144c429230\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.2 (2025-06-18)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2e0c98bd3f2efd1181429b486dd1cebe14385c18\"\u003e2e0c98bd3f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport bindings in TestBed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62040\"\u003e#62040\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8424b3bcd5b9c78f37dc8ba636c87775937bcc03\"\u003e8424b3bcd5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eFixes template outlet hydration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61989\"\u003e#61989\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/31da435854379e2a97b9b746751617e9979f01b0\"\u003e31da435854\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einject \u003ccode\u003eAPP_ID\u003c/code\u003e before injector is destroyed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61885\"\u003e#61885\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/572c32a03876a5dbb6d0400ab0a217541407a0f9\"\u003e572c32a038\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eWrap ErrorEvent with no error property (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62081\"\u003e#62081\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/34adfdea82997c43325e541c016c5c5d6f6f4a31\"\u003e34adfdea82\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emore robust trailing comma removal in unused imports migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62118\"\u003e#62118\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/c43f632dc08c5cd9fa01170399146125f0ae8c84\"\u003e\u003ccode\u003ec43f632\u003c/code\u003e\u003c/a\u003e docs: fix deprecation message on ngIf/ngSwitch (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62149\"\u003e#62149\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b40c9d0e59993142730137788cc663a16cdbbcb1\"\u003e\u003ccode\u003eb40c9d0\u003c/code\u003e\u003c/a\u003e refactor(common): move \u003ccode\u003engServerMode\u003c/code\u003e check outside \u003ccode\u003etap()\u003c/code\u003e to enable tree-sh...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003ccode\u003e65c59dd\u003c/code\u003e\u003c/a\u003e fix(router): handle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/common/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular/angular/commits/20.0.5/packages/common\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/compiler` from 20.0.4 to 20.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003e\u003cimg src=\"https://img.shields.io/badge/de0d525ad7-fix-green\" alt=\"fix - de0d525ad7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e\u003cimg src=\"https://img.shields.io/badge/3eb5a79a83-fix-green\" alt=\"fix - 3eb5a79a83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003cimg src=\"https://img.shields.io/badge/a2e6f317a7-fix-green\" alt=\"fix - a2e6f317a7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003cimg src=\"https://img.shields.io/badge/4c00238a69-fix-green\" alt=\"fix - 4c00238a69\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003cimg src=\"https://img.shields.io/badge/369f03ad7f-fix-green\" alt=\"fix - 369f03ad7f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003cimg src=\"https://img.shields.io/badge/65c59dd796-fix-green\" alt=\"fix - 65c59dd796\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e\u003cimg src=\"https://img.shields.io/badge/144c429230-fix-green\" alt=\"fix - 144c429230\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/compiler/issues/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/compiler\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.5 (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003ede0d525ad7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e3eb5a79a83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003ea2e6f317a7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e4c00238a69\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e369f03ad7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e65c59dd796\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e144c429230\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.2 (2025-06-18)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2e0c98bd3f2efd1181429b486dd1cebe14385c18\"\u003e2e0c98bd3f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport bindings in TestBed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62040\"\u003e#62040\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8424b3bcd5b9c78f37dc8ba636c87775937bcc03\"\u003e8424b3bcd5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eFixes template outlet hydration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61989\"\u003e#61989\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/31da435854379e2a97b9b746751617e9979f01b0\"\u003e31da435854\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einject \u003ccode\u003eAPP_ID\u003c/code\u003e before injector is destroyed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61885\"\u003e#61885\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/572c32a03876a5dbb6d0400ab0a217541407a0f9\"\u003e572c32a038\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eWrap ErrorEvent with no error property (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62081\"\u003e#62081\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/34adfdea82997c43325e541c016c5c5d6f6f4a31\"\u003e34adfdea82\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emore robust trailing comma removal in unused imports migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62118\"\u003e#62118\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular/angular/commits/20.0.5/packages/compiler\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/core` from 20.0.4 to 20.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003e\u003cimg src=\"https://img.shields.io/badge/de0d525ad7-fix-green\" alt=\"fix - de0d525ad7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e\u003cimg src=\"https://img.shields.io/badge/3eb5a79a83-fix-green\" alt=\"fix - 3eb5a79a83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003cimg src=\"https://img.shields.io/badge/a2e6f317a7-fix-green\" alt=\"fix - a2e6f317a7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003cimg src=\"https://img.shields.io/badge/4c00238a69-fix-green\" alt=\"fix - 4c00238a69\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003cimg src=\"https://img.shields.io/badge/369f03ad7f-fix-green\" alt=\"fix - 369f03ad7f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003cimg src=\"https://img.shields.io/badge/65c59dd796-fix-green\" alt=\"fix - 65c59dd796\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e\u003cimg src=\"https://img.shields.io/badge/144c429230-fix-green\" alt=\"fix - 144c429230\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/core\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.5 (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003ede0d525ad7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e3eb5a79a83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003ea2e6f317a7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e4c00238a69\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e369f03ad7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e65c59dd796\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e144c429230\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.2 (2025-06-18)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2e0c98bd3f2efd1181429b486dd1cebe14385c18\"\u003e2e0c98bd3f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport bindings in TestBed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62040\"\u003e#62040\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8424b3bcd5b9c78f37dc8ba636c87775937bcc03\"\u003e8424b3bcd5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eFixes template outlet hydration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61989\"\u003e#61989\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/31da435854379e2a97b9b746751617e9979f01b0\"\u003e31da435854\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einject \u003ccode\u003eAPP_ID\u003c/code\u003e before injector is destroyed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61885\"\u003e#61885\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/572c32a03876a5dbb6d0400ab0a217541407a0f9\"\u003e572c32a038\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eWrap ErrorEvent with no error property (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62081\"\u003e#62081\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/34adfdea82997c43325e541c016c5c5d6f6f4a31\"\u003e34adfdea82\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emore robust trailing comma removal in unused imports migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62118\"\u003e#62118\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003ccode\u003ea2e6f31\u003c/code\u003e\u003c/a\u003e fix(core): allow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/b40c9d0e59993142730137788cc663a16cdbbcb1\"\u003e\u003ccode\u003eb40c9d0\u003c/code\u003e\u003c/a\u003e refactor(common): move \u003ccode\u003engServerMode\u003c/code\u003e check outside \u003ccode\u003etap()\u003c/code\u003e to enable tree-sh...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003ccode\u003e4c00238\u003c/code\u003e\u003c/a\u003e fix(core): avoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/e7d259b0dc73b2513ca635cd242be894d13f310b\"\u003e\u003ccode\u003ee7d259b\u003c/code\u003e\u003c/a\u003e refactor(core): drop injection context assertion in production (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62038\"\u003e#62038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003ccode\u003e369f03a\u003c/code\u003e\u003c/a\u003e fix(core): unable to retrieve defer blocks in tests when component injects Vi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/dff1417b7305e85530df0e2ab65e9d47009e750d\"\u003e\u003ccode\u003edff1417\u003c/code\u003e\u003c/a\u003e build: revert incompatible build changes in patch branch (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62168\"\u003e#62168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/ebaebb849f67d628cf6da966e0d9e9705e431355\"\u003e\u003ccode\u003eebaebb8\u003c/code\u003e\u003c/a\u003e refactor(core): update FakeNavigation to the latest spec (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62017\"\u003e#62017\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/4e26ef996be6c317eea7df5317056799e9ea0827\"\u003e\u003ccode\u003e4e26ef9\u003c/code\u003e\u003c/a\u003e build: migrate to using new jasmine_test (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/core/issues/62132\"\u003e#62132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular/angular/commits/20.0.5/packages/core\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/forms` from 20.0.4 to 20.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003e\u003cimg src=\"https://img.shields.io/badge/de0d525ad7-fix-green\" alt=\"fix - de0d525ad7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e\u003cimg src=\"https://img.shields.io/badge/3eb5a79a83-fix-green\" alt=\"fix - 3eb5a79a83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003cimg src=\"https://img.shields.io/badge/a2e6f317a7-fix-green\" alt=\"fix - a2e6f317a7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003cimg src=\"https://img.shields.io/badge/4c00238a69-fix-green\" alt=\"fix - 4c00238a69\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003cimg src=\"https://img.shields.io/badge/369f03ad7f-fix-green\" alt=\"fix - 369f03ad7f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003cimg src=\"https://img.shields.io/badge/65c59dd796-fix-green\" alt=\"fix - 65c59dd796\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e\u003cimg src=\"https://img.shields.io/badge/144c429230-fix-green\" alt=\"fix - 144c429230\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/forms\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.5 (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003ede0d525ad7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e3eb5a79a83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003ea2e6f317a7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e4c00238a69\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e369f03ad7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e65c59dd796\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e144c429230\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.2 (2025-06-18)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2e0c98bd3f2efd1181429b486dd1cebe14385c18\"\u003e2e0c98bd3f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport bindings in TestBed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62040\"\u003e#62040\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8424b3bcd5b9c78f37dc8ba636c87775937bcc03\"\u003e8424b3bcd5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eFixes template outlet hydration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61989\"\u003e#61989\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/31da435854379e2a97b9b746751617e9979f01b0\"\u003e31da435854\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einject \u003ccode\u003eAPP_ID\u003c/code\u003e before injector is destroyed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61885\"\u003e#61885\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/572c32a03876a5dbb6d0400ab0a217541407a0f9\"\u003e572c32a038\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eWrap ErrorEvent with no error property (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62081\"\u003e#62081\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003emigrations\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/34adfdea82997c43325e541c016c5c5d6f6f4a31\"\u003e34adfdea82\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003emore robust trailing comma removal in unused imports migration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62118\"\u003e#62118\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/angular/commit/eddc296b94a02026a95ae65dd5bd3481354ced3c\"\u003e\u003ccode\u003eeddc296\u003c/code\u003e\u003c/a\u003e build: migrate final non-zone.js jasmine tests (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/forms/issues/62170\"\u003e#62170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/angular/angular/commits/20.0.5/packages/forms\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/material` from 20.0.3 to 20.0.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/releases\"\u003e\u003ccode\u003e@​angular/material\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.4\u003c/h2\u003e\n\u003ch3\u003eyoutube-player\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3b31dacc09f5040e5b4dc3e33bec39bad3b339f7\"\u003e\u003cimg src=\"https://img.shields.io/badge/3b31dacc0-fix-green\" alt=\"fix - 3b31dacc0\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003einvalid URL when playlist is passed in without videoId (\u003ca href=\"https://redirect.github.com/angular/components/issues/31403\"\u003e#31403\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/88bc13d88639aff36eacd33cd3d958c1993e6f57\"\u003e\u003cimg src=\"https://img.shields.io/badge/88bc13d88-fix-green\" alt=\"fix - 88bc13d88\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e harness not picking up buttons with dynamic appearance (\u003ca href=\"https://redirect.github.com/angular/components/issues/31327\"\u003e#31327\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c1b9682e49699fe02693a68def16e5c26302d547\"\u003e\u003cimg src=\"https://img.shields.io/badge/c1b9682e4-fix-green\" alt=\"fix - c1b9682e4\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e update button golden (\u003ca href=\"https://redirect.github.com/angular/components/issues/31346\"\u003e#31346\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c3bb067bf2e135d4086837a55aad476825c21b24\"\u003e\u003cimg src=\"https://img.shields.io/badge/c3bb067bf-fix-green\" alt=\"fix - c3bb067bf\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003einput:\u003c/strong\u003e remove native clear button (\u003ca href=\"https://redirect.github.com/angular/components/issues/31394\"\u003e#31394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/747218ba2fce8bac943915bb06e09c6fb4bbef2d\"\u003e\u003cimg src=\"https://img.shields.io/badge/747218ba2-fix-green\" alt=\"fix - 747218ba2\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003einput:\u003c/strong\u003e revert wheel workaround (\u003ca href=\"https://redirect.github.com/angular/components/issues/31391\"\u003e#31391\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/59be54616446b596fa36182cad9ac29f243e564c\"\u003e\u003cimg src=\"https://img.shields.io/badge/59be54616-fix-green\" alt=\"fix - 59be54616\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e close sibling triggers when opening a menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/30894\"\u003e#30894\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/components/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/material\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.4 \u0026quot;strontium-shack\u0026quot; (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecdk\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/59be54616446b596fa36182cad9ac29f243e564c\"\u003e59be54616\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e close sibling triggers when opening a menu (\u003ca href=\"https://redirect.github.com/angular/components/pull/30894\"\u003e#30894\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/88bc13d88639aff36eacd33cd3d958c1993e6f57\"\u003e88bc13d88\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e harness not picking up buttons with dynamic appearance (\u003ca href=\"https://redirect.github.com/angular/components/pull/31327\"\u003e#31327\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c1b9682e49699fe02693a68def16e5c26302d547\"\u003ec1b9682e4\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e update button golden (\u003ca href=\"https://redirect.github.com/angular/components/pull/31346\"\u003e#31346\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/c3bb067bf2e135d4086837a55aad476825c21b24\"\u003ec3bb067bf\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003einput:\u003c/strong\u003e remove native clear button (\u003ca href=\"https://redirect.github.com/angular/components/pull/31394\"\u003e#31394\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/747218ba2fce8bac943915bb06e09c6fb4bbef2d\"\u003e747218ba2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003einput:\u003c/strong\u003e revert wheel workaround (\u003ca href=\"https://redirect.github.com/angular/components/pull/31391\"\u003e#31391\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eyoutube-player\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3b31dacc09f5040e5b4dc3e33bec39bad3b339f7\"\u003e3b31dacc0\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einvalid URL when playlist is passed in without videoId (\u003ca href=\"https://redirect.github.com/angular/components/pull/31403\"\u003e#31403\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e19.2.19 \u0026quot;strontium-shovel\u0026quot; (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/1b9061ad26b949b58e82077b0fa07aacac76b307\"\u003e1b9061ad2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e fix sass deprecation warning (\u003ca href=\"https://redirect.github.com/angular/components/pull/31390\"\u003e#31390\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.1 \u0026quot;plastic-straw\u0026quot; (2025-06-11)\u003c/h1\u003e\n\u003ch3\u003ematerial\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/8523397fd29a1cb5c08c88420367d0def020bf12\"\u003e8523397fd2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e prevents mat-icon being cut off by text-spacing (\u003ca href=\"https://redirect.github.com/angular/components/pull/30891\"\u003e#30891\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0d47628d2eb1a5d72198769fbc7cfb978c8074d6\"\u003e0d47628d2e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ebutton:\u003c/strong\u003e use system colors for state layers and text (\u003ca href=\"https://redirect.github.com/angular/components/pull/31278\"\u003e#31278\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/458a17ba4680cc4ed90965f2a71f655699f2bc11\"\u003e458a17ba46\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003echeckbox:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31279\"\u003e#31279\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/be48108bc2b0939af496c8e82482b4b7326ef85d\"\u003ebe48108bc2\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003echips:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31280\"\u003e#31280\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/21df04e78743ac961bdb8d8e309417a80842238b\"\u003e21df04e787\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e output tokens from theme under same selector (\u003ca href=\"https://redirect.github.com/angular/components/pull/31295\"\u003e#31295\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/576a008b09ce377da892fbd54720947269deb6c6\"\u003e576a008b09\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e remove unused form field mixins (\u003ca href=\"https://redirect.github.com/angular/components/pull/31283\"\u003e#31283\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/4d67427cef1442f2c66feb821a2f2cf20a01001b\"\u003e4d67427cef\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e update ripple tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31282\"\u003e#31282\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/28f2763f96427239514b03a87ad6543c7bf1ce98\"\u003e28f2763f96\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003ecore:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31281\"\u003e#31281\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/009424c73ec97769edbed440336d0e7386c49d13\"\u003e009424c73e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003edatepicker:\u003c/strong\u003e use system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31300\"\u003e#31300\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/918b6254385ef35c6d95621f6c0c04f294974710\"\u003e918b625438\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003elist:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31284\"\u003e#31284\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/623030b50df52162e4a5c931b6d12226c44a4897\"\u003e623030b50d\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003emenu:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31285\"\u003e#31285\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/0f26b91425b5b7f34fdabf877e0f84929a6c8032\"\u003e0f26b91425\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003epaginator:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31286\"\u003e#31286\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/3f7d2778fb0cae09a49802102ad6c994984ddb93\"\u003e3f7d2778fb\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eradio:\u003c/strong\u003e color tokens excluded when passing in variant (\u003ca href=\"https://redirect.github.com/angular/components/pull/31321\"\u003e#31321\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/010122ff2adebb7f7b6aff330044591ff771a966\"\u003e010122ff2a\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eselect:\u003c/strong\u003e use system color for arrow (\u003ca href=\"https://redirect.github.com/angular/components/pull/31302\"\u003e#31302\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/9ce023d9771b07229df59c6aa360ae0462980b60\"\u003e9ce023d977\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eslider:\u003c/strong\u003e ensure disabled slider thumb input has 'auto' c… (\u003ca href=\"https://redirect.github.com/angular/components/pull/31311\"\u003e#31311\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/029e39ccedc01e931f4a2dc762b26bc8c87ec857\"\u003e029e39cced\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003eslider:\u003c/strong\u003e use system color (\u003ca href=\"https://redirect.github.com/angular/components/pull/31305\"\u003e#31305\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/components/commit/951f37e6564c5d0701acdad992b0e0ca23b99882\"\u003e951f37e656\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003e\u003cstrong\u003etabs:\u003c/strong\u003e update tokens to system colors (\u003ca href=\"https://redirect.github.com/angular/components/pull/31287\"\u003e#31287\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/7b876772c079b791fe22e5001e683eb8c918a7d2\"\u003e\u003ccode\u003e7b87677\u003c/code\u003e\u003c/a\u003e release: cut the v20.0.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/76451c5f481bc6be55fa0a1cd1b431d1cc1ac505\"\u003e\u003ccode\u003e76451c5\u003c/code\u003e\u003c/a\u003e build: fix failing firefox tests on main (\u003ca href=\"https://redirect.github.com/angular/components/issues/31441\"\u003e#31441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/59be54616446b596fa36182cad9ac29f243e564c\"\u003e\u003ccode\u003e59be546\u003c/code\u003e\u003c/a\u003e fix(cdk/menu): close sibling triggers when opening a menu (\u003ca href=\"https://redirect.github.com/angular/components/issues/30894\"\u003e#30894\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/6f445d1fac5f4d3c61c6e34afd0c54fbb73064da\"\u003e\u003ccode\u003e6f445d1\u003c/code\u003e\u003c/a\u003e build: update dependency zx to v8 (\u003ca href=\"https://redirect.github.com/angular/components/issues/31435\"\u003e#31435\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/3ff0547df3d67f0b567bf4038f5dacafcb7634dd\"\u003e\u003ccode\u003e3ff0547\u003c/code\u003e\u003c/a\u003e build: update dependency node to v22.17.0 (\u003ca href=\"https://redirect.github.com/angular/components/issues/31428\"\u003e#31428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/3b31dacc09f5040e5b4dc3e33bec39bad3b339f7\"\u003e\u003ccode\u003e3b31dac\u003c/code\u003e\u003c/a\u003e fix(youtube-player): invalid URL when playlist is passed in without videoId (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/c3bb067bf2e135d4086837a55aad476825c21b24\"\u003e\u003ccode\u003ec3bb067\u003c/code\u003e\u003c/a\u003e fix(material/input): remove native clear button (\u003ca href=\"https://redirect.github.com/angular/components/issues/31394\"\u003e#31394\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/747218ba2fce8bac943915bb06e09c6fb4bbef2d\"\u003e\u003ccode\u003e747218b\u003c/code\u003e\u003c/a\u003e fix(material/input): revert wheel workaround (\u003ca href=\"https://redirect.github.com/angular/components/issues/31391\"\u003e#31391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/e89c09b8cea88d5fd8ff10622ff9e56d6784a061\"\u003e\u003ccode\u003ee89c09b\u003c/code\u003e\u003c/a\u003e docs: snippet-based examples not showing after clicking away and coming back ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/angular/components/commit/f48c8ad7d6d4da20c1d8f8adbdcf65649749f81a\"\u003e\u003ccode\u003ef48c8ad\u003c/code\u003e\u003c/a\u003e build: update scorecard action dependencies (\u003ca href=\"https://redirect.github.com/angular/components/issues/31409\"\u003e#31409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/angular/components/compare/20.0.3...20.0.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@angular/platform-browser` from 20.0.4 to 20.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/releases\"\u003e\u003ccode\u003e@​angular/platform-browser\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e20.0.5\u003c/h2\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003e\u003cimg src=\"https://img.shields.io/badge/de0d525ad7-fix-green\" alt=\"fix - de0d525ad7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e\u003cimg src=\"https://img.shields.io/badge/3eb5a79a83-fix-green\" alt=\"fix - 3eb5a79a83\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003e\u003cimg src=\"https://img.shields.io/badge/a2e6f317a7-fix-green\" alt=\"fix - a2e6f317a7\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e\u003cimg src=\"https://img.shields.io/badge/4c00238a69-fix-green\" alt=\"fix - 4c00238a69\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e\u003cimg src=\"https://img.shields.io/badge/369f03ad7f-fix-green\" alt=\"fix - 369f03ad7f\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e\u003cimg src=\"https://img.shields.io/badge/65c59dd796-fix-green\" alt=\"fix - 65c59dd796\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e\u003cimg src=\"https://img.shields.io/badge/144c429230-fix-green\" alt=\"fix - 144c429230\" /\u003e\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://github.com/angular/angular/tree/HEAD/packages/platform-browser/issues/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/angular/angular/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​angular/platform-browser\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e20.0.5 (2025-06-25)\u003c/h1\u003e\n\u003ch3\u003ecompiler-cli\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/de0d525ad7a5a9bfcc78b66ac627a507c8709064\"\u003ede0d525ad7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eadd suggestion when pipe is missing (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62146\"\u003e#62146\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/3eb5a79a8324c96d438f4ad004a098295efad769\"\u003e3eb5a79a83\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle initializer APIs wrapped in type casts (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62203\"\u003e#62203\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/a2e6f317a732495602caf2ab871d38981a742e05\"\u003ea2e6f317a7\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eallow to set a resource in an error state (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62253\"\u003e#62253\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/4c00238a69ab7f6c5b53d12d4030cb172454ab39\"\u003e4c00238a69\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eavoid injecting \u003ccode\u003eErrorHandler\u003c/code\u003e from a destroyed injector (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61886\"\u003e#61886\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/369f03ad7f3132240db938ea2b4de2de2e38c867\"\u003e369f03ad7f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eunable to retrieve defer blocks in tests when component injects ViewContainerRef (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62156\"\u003e#62156\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003erouter\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/65c59dd7964cd9643244b46094031e7227252875\"\u003e65c59dd796\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003ehandle scrollRestoration error in restricted environments (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62186\"\u003e#62186\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003ch3\u003eupgrade\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/144c429230c864ae7a94c6a40738a9cd1223581b\"\u003e144c429230\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eMake zoneless work with hybrid apps (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61660\"\u003e#61660\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003ch1\u003e20.1.0-next.2 (2025-06-18)\u003c/h1\u003e\n\u003ch3\u003ecore\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eCommit\u003c/th\u003e\n\u003cth\u003eType\u003c/th\u003e\n\u003cth\u003eDescription\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/2e0c98bd3f2efd1181429b486dd1cebe14385c18\"\u003e2e0c98bd3f\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efeat\u003c/td\u003e\n\u003ctd\u003esupport bindings in TestBed (\u003ca href=\"https://redirect.github.com/angular/angular/pull/62040\"\u003e#62040\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/8424b3bcd5b9c78f37dc8ba636c87775937bcc03\"\u003e8424b3bcd5\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003eFixes template outlet hydration (\u003ca href=\"https://redirect.github.com/angular/angular/pull/61989\"\u003e#61989\u003c/a\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"https://github.com/angular/angular/commit/31da435854379e2a97b9b746751617e9979f01b0\"\u003e31da435854\u003c/a\u003e\u003c/td\u003e\n\u003ctd\u003efix\u003c/td\u003e\n\u003ctd\u003einject \u003ccode\u003eAPP_ID\u003c/code\u003e before injector is destroyed (\u003ca href=\"https://redirect.github.com/angular/angular/pu...\n\n_Description has been truncated_","html_url":"https://github.com/nihilux-org/roon-web-stack/pull/589","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nihilux-org%2Froon-web-stack/issues/589","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/589/packages"}}]}