Upgrade Angular from 9.0.1 to 12 #91
Open
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.
Upgrade Angular from 9.0.1 to 12
Summary
This PR upgrades the Angular application from version 9.0.1 to 12.2.17 through three sequential major version upgrades (9→10→11→12). This is a substantial upgrade that brings the application up to date with improved Ivy rendering engine, Webpack 5, and better tree-shaking.
Key Changes:
extractCssandaotoptions, Ivy now mandatoryrelativeLinkResolution: 'legacy'to preserve old behavior (should be updated to 'corrected' in future)Files Modified:
user.component.ts,item-details.component.ts, andhackernews-api.service.tsangular.jsonwith Angular 12 build configurationpackage.jsonandyarn.lockwith new dependency versionspolyfills.tsandsrc/test.tsReview & Testing Checklist for Human
This is a high-risk change due to the scope of the upgrade. The build succeeds, but comprehensive end-to-end testing is required:
npm run build && npm run precache && npm run static-serve)npm run buildand verify bundle sizes are acceptable (currently ~2.33 MB ES2015, ~3.24 MB ES5)Notes
angular-10-stable,angular-11-stable,angular-12-stablefor easy rollback if neededrelativeLinkResolution: 'legacy'to maintain old routing behavior - consider updating to'corrected'in a future PRLink to Devin run: https://app.devin.ai/sessions/0132ad5569d24294b30cc6a4e424ffd7
Requested by: Kevin Tang (@kevintang513)