Skip to content

[Snyk] Security upgrade @angular/platform-server from 9.1.13 to 19.2.21#187

Open
patzeltj wants to merge 1 commit intodevelopfrom
snyk-fix-0955ad0a120536e9171b3af51e0c690e
Open

[Snyk] Security upgrade @angular/platform-server from 9.1.13 to 19.2.21#187
patzeltj wants to merge 1 commit intodevelopfrom
snyk-fix-0955ad0a120536e9171b3af51e0c690e

Conversation

@patzeltj
Copy link
Copy Markdown

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 Server-side Request Forgery (SSRF)
SNYK-JS-ANGULARPLATFORMSERVER-16097942
  696  

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:

🦉 Server-side Request Forgery (SSRF)

@patzeltj
Copy link
Copy Markdown
Author

Merge Risk: High

Upgrading @angular/platform-server from version 9.1.13 to 19.2.21 is a massive undertaking that spans ten major versions. This is not a direct upgrade but a series of migrations with numerous significant breaking changes. Manual intervention and significant code refactoring are guaranteed.

Key Breaking Changes & Architectural Shifts:

  • Complete Removal of View Engine: The legacy View Engine rendering engine was deprecated in v12 and completely removed in v13. All code and dependencies must be compatible with the modern Ivy compiler. This change alone requires a major migration effort.

  • Shift to Standalone Components: Standalone components were introduced as stable in v15 and became the default architecture in v17, making NgModules optional. This fundamentally changes how applications are structured and bootstrapped, including the server-side entry point.

  • Revolution in Server-Side Rendering (SSR): The SSR and hydration model has been completely overhauled.

    • v16 introduced non-destructive hydration, which prevents the page from flickering on load by reusing the server-rendered DOM.
    • v17 introduced the new @angular/ssr package and enhanced Static Site Generation (SSG) capabilities.
    • v19 introduced incremental hydration (in developer preview), allowing for parts of a page to be hydrated lazily.
  • Build System Modernization: The build tooling has evolved significantly.

    • v12 moved to Webpack 5.
    • v17 adopted Vite and esbuild for significantly faster development server performance.
    • v19 deprecated the old :server builder in angular.json in favor of a new, unified application builder.
  • Strict Environment Requirements: Each major version drops support for older versions of Node.js and TypeScript. For example, v17 requires Node.js 18.13.0+ and TypeScript 5.2+.

Recommendation: This upgrade cannot be performed in a single step. It requires a sequential migration, moving from one major version to the next (v9 → v10 → v11, etc.), running automated migration scripts provided by @angular/cli at each step, and performing extensive testing. This is a major project that requires careful planning and dedicated effort.

Source: Angular Update Guide, Official Angular Blog Posts

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