-
Notifications
You must be signed in to change notification settings - Fork 393
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade to Angular 19 #19772
Merged
Merged
Upgrade to Angular 19 #19772
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- ran `npx nx migrate latest` (bump most of libraries to the latest version) and `npx nx migrate --run-migration` (run packages' migration, all except angular's migration from initializer tokens to helper functions) - bump '@angular/animations' to version '^19.0.3' - bump '@angular/common' to version '^19.0.3' - bump '@angular/compiler' to version '^19.0.3' - bump '@angular/core' to version '^19.0.3' - bump '@angular/forms' to version '^19.0.3' - bump '@angular/platform-browser' to version '^19.0.3' - bump '@angular/platform-browser-dynamic' to version '^19.0.3' - bump '@angular/platform-server' to version '^19.0.3' - bump '@angular/pwa' to version '^19.0.4' - bump '@angular/router' to version '^19.0.3' - bump '@angular/service-worker' to version '^19.0.3' - bump '@angular/ssr' to version '^19.0.4' - bump '@ng-select/ng-select' to version '^14.1.0' - bump 'angular-oauth2-oidc' to version '19.0.0' - bump 'ngx-infinite-scroll' to version '^19.0.0' - bump 'zone.js' to version '0.15.0' - bump '@angular-devkit/build-angular' to version '^19.0.4' - bump '@angular-devkit/core' to version '^19.0.4' - bump '@angular-devkit/schematics' to version '^19.0.4' - bump '@angular-eslint/builder' to version '19.0.2' - bump '@angular-eslint/eslint-plugin' to version '^19.0.2' - bump '@angular-eslint/eslint-plugin-template' to version '^19.0.2' - bump '@angular-eslint/schematics' to version '^19.0.2' - bump '@angular-eslint/template-parser' to version '^19.0.2' - bump '@angular-eslint/test-utils' to version '^19.0.2' - bump '@angular-eslint/utils' to version '^19.0.2' - bump '@angular/cli' to version '^19.0.4' - bump '@angular/compiler-cli' to version '^19.0.3' - bump '@angular/language-service' to version '^19.0.3' - bump '@nx/angular' to version '^20.2.2' - bump '@nx/devkit' to version '^20.2.2' - bump '@nx/eslint-plugin' to version '^20.2.2' - bump '@nx/jest' to version '^20.2.2' - bump '@nx/workspace' to version '^20.2.2' - bump '@schematics/angular' to version '^19.0.4' - bump 'jest-preset-angular' to version '14.4.2' - bump 'ng-packagr' to version '^19.0.1' - bump 'nx' to version '^20.2.2' - bump 'typescript' to version '^5.6.3' - add `standalone: false` to all components, directives and pipes for more, see: angular/angular#57643 - add rule `"@angular-eslint/prefer-standalone": "off"` in eslint files - remove deprecated `"angular-eslint/no-host-metadata-property"` for more, see: angular-eslint/angular-eslint#2113 - update '@angular/ssr' import paths to use the new '/node' entry point when 'CommonEngine' is detected for more, see: angular/angular-cli#28278
pawelfras
force-pushed
the
epic/upgrade-to-angular-19
branch
from
December 12, 2024 11:55
24c98da
to
158766c
Compare
- change range specifier for typescript library to meet Angular's requirement (>=5.5.0 and <5.7.0)
- fix building libs and CSR by solvig type errors provided with TS 5.6
- this update is required for SSR to work, because previous version use Angualr 18 API which is no longer part of @angular/core in v19. for more, see: angular/angular#58891
- fix type issues - use `takeUntil` with destroy subject in `trending-searches.service.ts` as a more reliable cleanup method to properly handle cleanup - remove redundant 'declatartion: true' from 'tsconfig.schematics.json' files, that caused issues in unit tests due to type errors in '@schematics/angular' library 'Buffer is not a generic type'. The issue appeared because '*.d.ts' files are taken into consideration when running tests, maybe unnecessary for more, see: https://github.com/angular/angular-cli/blob/4db4dd4315fd8c31872bbf1e82e3414eea15ffef/goldens/public-api/angular_devkit/schematics/index.api.md\?plain\=1\#L498
- update snapshots with new budget thresholds for more, see: angular/angular-cli#28255 - update snapshots with new packages versions - update schematics and related tests with the new `server.ts` location for more, see: angular/angular-cli#28571 - adjust positions in utils tests to reflect the `standalone: false` in component decorators - adjust SSR schematics to remove `withEventReplay()` that Angular installs by default for more, see: - refactor tests for 2211.19 SSR migration to make them independent of Angular's schematics for more, see: angular/angular-cli#28469
- move `@angular-eslint/prefer-standalone` to global eslint rules - add missing `OnDestroy` implementation in cds library - remove `@angular-eslint/no-host-metadata-property` from the config as it is no longer part of the package for more, see: angular-eslint/angular-eslint#2113
- add missing comma to all files where 'standalone: false' was added
- upgrade to version that supports TS >= 5.6.3 - add `@typescript-eslint/rule-tester` which was missing peer dependency of `@angular-eslint/test-utils` - adjust import-utils.ts to meet new typing
Merge Checks Failed
|
Platonn
previously approved these changes
Jan 22, 2025
…ew apps via our installation schematics (#19878) fixes https://jira.tools.sap/browse/CXSPA-9272 **QA steps:** 1. on this branch `npm run build:libs` 2. on this branch publish the built libs to verdaccio (e.g. via `npx ts-node schematics/testing.ts`) 4. in a separate folder create a fresh ng19 app `npx @angular/cli@19 new test-app --standalone=false` 5. enter the subfolder of the test-app and there install spartacus (with libs from verdaccio) `ng add @spartacus/[email protected]` 6. run the app `npm run start` and wait for the successful build 7. verify that the build output in the terminald doensn't contain warnings about Sass `@import` usage BEFORE: ![image](https://github.com/user-attachments/assets/e456ce4e-05c8-404e-9670-c4178c09ef2f) AFTER: ![image](https://github.com/user-attachments/assets/abd6fd77-2c35-4c8a-940a-39aafb54fc14)
Merge Checks Failed
|
Platonn
previously approved these changes
Jan 22, 2025
This reverts commit 1c4d8f9.
- use 'develop' branch - add comment to switch to Angular 19 when PR with Angualr 19 is ready
Merge Checks Failed
|
Platonn
approved these changes
Jan 22, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Nx migration (all packages and their migration)
npx nx migrate latest
(bump most of libraries to the latest version) andnpx nx migrate --run-migration
(run packages' migration, all except angular's migration from initializer tokens to helper functions)^19.0.0
@typescript-eslint
to8.18.1
standalone: false
to all components, directives and pipesfor more, see: feat(core): Add a schematics to migrate to
standalone: false
. angular/angular#57643"@angular-eslint/prefer-standalone": "off"
in eslint files"angular-eslint/no-host-metadata-property"
for more, see: feat(eslint-plugin)!: remove deprecated no-host-metadata-property rule angular-eslint/angular-eslint#2113
for more, see: feat(@angular/ssr): move
CommonEngine
API to/node
entry-point angular/angular-cli#28278Library
@angular-builders/custom-webpack
19.0.0-beta.0
19.0.0
when readyUnit tests
standalone: false
propertysetup/ssr
library to usebeasties
fromnode_modules
instead of the internalized one provided with@angular/ssr
due to issues with not supported ES formatfor more, see: refactor(@angular/ssr): bundle Critters angular/angular-cli#28228
and: refactor: replace
critters
withbeasties
angular/angular-cli#28726Schematics
server.ts
to usedist/server/index.server.html
and adjust schematics@import
usage in new apps via our installation schematics #19878Migration and installation docs
application
builder usersQA (done by author)
QA (done by reviewer)