Skip to content
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

Update frontend to Angular 14 #373

Merged
merged 14 commits into from
Mar 15, 2023
Merged

Conversation

sinedied
Copy link
Contributor

@sinedied sinedied commented Dec 9, 2022

This is quite a big PR, so I'll try to summarize all the changes made and some limitations:

What has been done

  • Updated web app from Angular 9 -> Angular 14, making sure intermediate upgrades were functional
  • Changed build process from Webpack 4 to using Angular CLI with some Webpack 5 customizations, in-line with latest JHipster tooling
  • Removed deprecated tslint and codelyzer in favor of eslint. Rules haven't all been upgraded as it would need a lot of refactoring from the code (maybe done in a separate PR)
  • Migrated from moment to dayjs, which reduced the total bundle size by about ~100kb
  • Updated Jest and jest-angular, and migrated to use @angular-builders/jest to run unit tests with Angular CLI
  • Updated all needed dependencies, added missing peer dependencies and removed unneeded dependencies

Limitations

  • rxjs was not migrated to v7, so it's still v6 mainly because of the ng-jhipster dependency
  • ng-jhipster is not maintained anymore (and stuck to Angular v10, though still functional). To remove it as a dependency it would need quite a lot of changes in the code (for a another PR)
  • Bootstrap was not migrated to v5, so it's still v4. This currently limits to using ng-bootstrap@11 (for Angular 13). It would need quite a big CSS & JS migration, so it would be for another PR.
  • Update to Angular 15 is blocked mainly because of the lack of @angular-builders/custom-webpack support for v15, also some other dependencies are not ready yet.
  • Because of ng-jhipster and the lack of bootstrap v5 migration, there are some peerDependencies warnings during yarn install, though the app is working fine.

I tested the app locally with the backend and all the screens successfully, but it may need further testing on a preprod env to make sure it doesn't introduce any regression.

cc @jdubois

@jdubois
Copy link
Member

jdubois commented Feb 17, 2023

@sinedied can you have a look at the merge conflict?

@sinedied
Copy link
Contributor Author

Merge conflict resolved ✅

@jdubois
Copy link
Member

jdubois commented Mar 15, 2023

LGTM, thanks @sinedied !

@jdubois jdubois merged commit 1fe7399 into jhipster:main Mar 15, 2023
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.

None yet

2 participants