-
Notifications
You must be signed in to change notification settings - Fork 25.3k
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
fix(migrations): resolve multiple structural issues with HttpClient migration #55557
Conversation
…igration Fixes several issues with the `HttpClient` migration that showed up after I tried updating the Material docs site to the latest v18 release. Includes: * The migration was assuming that all Angular decorators have at least one argument. This led to a null pointer error that broke the v18 update process when I was testing it. * The migration incorrectly reimplemented the detection of classes with Angular decorators. This can cause code to be migrated incorrectly and doesn't handle cases like import aliases. I've switched it to use the existing tooling for detecting decorated classes. * The migration was trying to migrate directives, even though they don't support the `imports` field. * The migration was detecting `TestBed.configureTestingModule` calls using a raw string match which is very fragile and can be broken by the user's formatting. * There were syntax errors in the unit tests. * There were type checking errors in the unit tests, for example none of them were importing the Angular decorators that they were migrating. There's more room for improvement, but this should resolve the most glaring issues without having to rewrite too much.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for the improvement
This PR was merged into the repository by commit 91b1f24. |
…igration (#55557) Fixes several issues with the `HttpClient` migration that showed up after I tried updating the Material docs site to the latest v18 release. Includes: * The migration was assuming that all Angular decorators have at least one argument. This led to a null pointer error that broke the v18 update process when I was testing it. * The migration incorrectly reimplemented the detection of classes with Angular decorators. This can cause code to be migrated incorrectly and doesn't handle cases like import aliases. I've switched it to use the existing tooling for detecting decorated classes. * The migration was trying to migrate directives, even though they don't support the `imports` field. * The migration was detecting `TestBed.configureTestingModule` calls using a raw string match which is very fragile and can be broken by the user's formatting. * There were syntax errors in the unit tests. * There were type checking errors in the unit tests, for example none of them were importing the Angular decorators that they were migrating. There's more room for improvement, but this should resolve the most glaring issues without having to rewrite too much. PR Close #55557
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
Fixes several issues with the
HttpClient
migration that showed up after I tried updating the Material docs site to the latest v18 release. Includes:imports
field.TestBed.configureTestingModule
calls using a raw string match which is very fragile and can be broken by the user's formatting.There's more room for improvement, but this should resolve the most glaring issues without having to rewrite too much.