Update dependency @angular/common to v19 [SECURITY]#68
Update dependency @angular/common to v19 [SECURITY]#68renovate-bot wants to merge 1 commit intoGoogleCloudPlatform:mainfrom
Conversation
|
Summary of ChangesHello @renovate-bot, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request upgrades the Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request updates @angular/common to version 19 to address a security vulnerability. However, this introduces a major version mismatch with other @angular packages, which are still on version 18. This will likely break the application.
I've added a critical comment suggesting a less disruptive fix, which is to update to a patch version of Angular 18 (18.2.7) that also contains the security patch. This would avoid the breaking changes associated with a major version upgrade. If the goal is to upgrade to Angular 19, all @angular packages must be updated together in this pull request.
| "@angular/animations": "^18.2.0", | ||
| "@angular/cdk": "^18.2.6", | ||
| "@angular/common": "^18.2.0", | ||
| "@angular/common": "^19.0.0", |
There was a problem hiding this comment.
Updating only @angular/common to a new major version while leaving other @angular/* packages on v18 will cause dependency mismatches and likely break the application. All @angular packages within a project should be on the same version.
A less disruptive way to fix the security vulnerability (GHSA-58c5-g7wp-6w37) is to update to a patch release of Angular 18, specifically 18.2.7 or later. I recommend changing this to ^18.2.7 and updating all other @angular/* packages to match.
If you do intend to upgrade to v19, you must update all @angular/* packages (including @angular/core, @angular/compiler, etc.) to ^19.0.0 (or a higher compatible version) in this PR.
| "@angular/common": "^19.0.0", | |
| "@angular/common": "^18.2.7", |
This PR contains the following updates:
^18.2.0→^19.0.0GitHub Vulnerability Alerts
CVE-2025-66035
The vulnerability is a Credential Leak by App Logic that leads to the unauthorized disclosure of the Cross-Site Request Forgery (XSRF) token to an attacker-controlled domain.
Angular's HttpClient has a built-in XSRF protection mechanism that works by checking if a request URL starts with a protocol (
http://orhttps://) to determine if it is cross-origin. If the URL starts with protocol-relative URL (//), it is incorrectly treated as a same-origin request, and the XSRF token is automatically added to theX-XSRF-TOKENheader.Impact
The token leakage completely bypasses Angular's built-in CSRF protection, allowing an attacker to capture the user's valid XSRF token. Once the token is obtained, the attacker can perform arbitrary Cross-Site Request Forgery (CSRF) attacks against the victim user's session.
Attack Preconditions
POST) to a protocol-relative URL (e.g.,//attacker.com) that they control.Patches
Workarounds
Developers should avoid using protocol-relative URLs (URLs starting with
//) in HttpClient requests. All backend communication URLs should be hardcoded as relative paths (starting with a single/) or fully qualified, trusted absolute URLs.Release Notes
angular/angular (@angular/common)
v19.2.16Compare Source
http
v19.2.15Compare Source
Breaking Changes
core
The server-side bootstrapping process has been changed to eliminate the reliance on a global platform injector.
Before:
After:
A schematic is provided to automatically update
main.server.tsfiles to pass theBootstrapContextto thebootstrapApplicationcall.In addition,
getPlatform()anddestroyPlatform()will now returnnulland be a no-op respectively when running in a server environment.core
BootstrapContextfor improved server bootstrapping (#63639)v19.2.14Compare Source
compiler
migrations
v19.2.13Compare Source
common
service-worker
v19.2.12Compare Source
common
compiler
compiler-cli
core
rxResourceabort listener (#58306)withEventReplay()is invoked (#61352)onDestroyintoSignal. (#61514)platform-server
v19.2.11Compare Source
v19.2.10Compare Source
common
updateLatestValueif view is destroyed before promise resolves (#61064)core
platform-server
v19.2.9Compare Source
core
v19.2.8Compare Source
forms
v19.2.7Compare Source
common
NgOptimizedImageexceeds the preload limit (#60883)core
http
httpResource(#60802)v19.2.6Compare Source
compiler
compiler-cli
core
language-service
v19.2.5Compare Source
animations
@angular/common(#60660)compiler
compiler-cli
rootDir(#60555)core
language-service
migrations
router
service-worker
v19.2.4Compare Source
core
localize
platform-browser
platformBrowserTestingincludesplatformBrowserproviders (#60480)v19.2.3Compare Source
compiler-cli
core
platform-browser-dynamic
@angular/common(#60458)upgrade
v19.2.2Compare Source
common
compiler
compiler-cli
core
platform-server
rxjs(#60308)router
v19.2.1Compare Source
Breaking Changes
core
The server-side bootstrapping process has been changed to eliminate the reliance on a global platform injector.
Before:
After:
A schematic is provided to automatically update
main.server.tsfiles to pass theBootstrapContextto thebootstrapApplicationcall.In addition,
getPlatform()anddestroyPlatform()will now returnnulland be a no-op respectively when running in a server environment.core
BootstrapContextfor improved server bootstrapping (#63639)v19.2.0Compare Source
common
httpResource(#59876)compiler
core
resource()(#59655)hasValuenarrowing toResourceRef(#59708)resource()'sprevious.state(#59708)forms
migrations
platform-browser
platform-server
v19.1.8Compare Source
benchpress
common
core
| Commit | Type | Description |
| -------------------------------------------------------------------------------------
Configuration
📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.