Skip to content

[Snyk] Security upgrade @angular/core from 9.1.13 to 19.2.19#183

Open
patzeltj wants to merge 1 commit intodevelopfrom
snyk-fix-91c2c9e70d0eb9aa5f38d559ed177480
Open

[Snyk] Security upgrade @angular/core from 9.1.13 to 19.2.19#183
patzeltj wants to merge 1 commit intodevelopfrom
snyk-fix-91c2c9e70d0eb9aa5f38d559ed177480

Conversation

@patzeltj
Copy link

snyk-top-banner

Snyk has created this PR to fix 1 vulnerabilities in the npm dependencies of this project.

Snyk changed the following file(s):

  • src/frontend/packages/core/package.json

Vulnerabilities that will be fixed with an upgrade:

Issue Score
high severity Cross-site Scripting (XSS)
SNYK-JS-ANGULARCORE-15353393
  666  

Breaking Change Risk

Merge Risk: High

Notice: This assessment is enhanced by AI.


Important

  • Check the changes in this PR to ensure they won't cause issues with your project.
  • Max score is 1000. Note that the real score may have changed since the PR was raised.
  • This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.

For more information:
🧐 View latest project report
📜 Customise PR templates
🛠 Adjust project settings
📚 Read about Snyk's upgrade logic


Learn how to fix vulnerabilities with free interactive lessons:

🦉 Cross-site Scripting (XSS)

@patzeltj
Copy link
Author

Merge Risk: High

Upgrading from Angular v9.1.13 to v19.2.19 is a massive undertaking that spans ten major versions and introduces fundamental architectural shifts. This is not a direct upgrade but a series of sequential major version migrations, each with significant breaking changes. Direct migration is not feasible; a gradual upgrade path (e.g., 9 -> 10 -> 11) is required.

Key Architectural and Breaking Changes Across Versions:

  • View Engine to Ivy (v12/v13): The legacy View Engine compiler is completely removed in v13. All applications and libraries must be compatible with the Ivy compilation and rendering pipeline. The Angular Compatibility Compiler (ngcc), which supported older libraries, is removed in v16.
  • Standalone Components (v14/v15): NgModule becomes optional with the introduction of stable standalone components, pipes, and directives in v15. This is a fundamental shift in how applications are structured. New APIs like provideHttpClient replace module imports.
  • Reactivity Model (v16/v17): A new signal-based reactivity system was introduced in v16 and became a core part of the framework in v17, offering fine-grained change detection. This moves away from the reliance on Zone.js for change detection. Zoneless applications are now an experimental feature.
  • Control Flow and Template Syntax (v17): A new built-in syntax for control flow (@if, @for, @switch) replaces structural directives like *ngIf and *ngFor.
  • Required Runtimes: Support for older versions of Node.js and TypeScript is dropped with each major release. For example, v13 dropped IE11 support, v15 requires TypeScript 4.8+, and v17 requires Node.js 18.13.0+.
  • API and Tooling Changes:
    • v10: Dropped support for IE 9-10.
    • v11: Migrated from TSLint to ESLint.
    • v12: Webpack 5 is now used for builds.
    • v14: Introduced strongly-typed reactive forms.
    • v18: Stabilized deferrable views and introduced function-based route redirects.

Recommendation: This upgrade cannot be completed in a single step. It requires a dedicated, multi-stage migration project. Developers must follow the official Angular Update Guide at update.angular.io to upgrade one major version at a time, addressing the specific breaking changes and running automated schematics at each step. This effort will involve significant code refactoring, architectural changes, and thorough testing.

Notice 🤖: This content was augmented using artificial intelligence. AI-generated content may contain errors and should be reviewed for accuracy before use.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants