Upgrade Angular from 9.0.1 to 20.3.4 with comprehensive testing #70
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 20.3.4 with comprehensive testing
Summary
This PR performs a major Angular upgrade from version 9.0.1 to 20.3.4 (spanning 11 major versions) while adding comprehensive unit test coverage that was previously missing. The upgrade was performed incrementally through each major Angular version to handle breaking changes properly.
Key Changes:
rxjs/ObservabletorxjsTesting Added:
Configuration Updates:
angular.jsonfor Angular 20 build systembrowserslist→.browserslistrc(Angular 12+ requirement)Review & Testing Checklist for Human
npm run build+ serve from dist/)npm run buildsucceeds and app runs correctly from production build with reasonable bundle sizesNotes
Risk Assessment: This is a high-risk change due to the massive version jump. While I performed comprehensive visual testing and all features appeared to work correctly, there may be subtle regressions or edge cases that only surface with real usage patterns.
Screenshots available: I have browser screenshots of the visual testing process showing all major features working, which can be shared if needed.
Session Details: