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
feat(core): support TypeScript 4.3 #42022
feat(core): support TypeScript 4.3 #42022
Conversation
468786c
to
c93273a
Compare
This is ready for review; but not ready for merge (given TS 4.3 not being released yet). It would be great to get a early review from @angular/fw-compiler and @angular/fw-ngcc, as well as @kyliau for the language-service. Please have a look 😄 |
@@ -368,6 +368,36 @@ export declare class AnimationEvent { | |||
expect(diags.length).toBe(0); | |||
}); | |||
|
|||
// https://devblogs.microsoft.com/typescript/announcing-typescript-4-3-beta/#separate-write-types-on-properties | |||
it('should support separate write types on inputs', () => { |
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.
We should probably include a note in the documentation about input coercion that TS 4.3 onwards supports it natively.
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.
Yeah, let's do that as a follow-up. I'd like to change the section in AIO template-typecheck.md
and I'm not sure yet how that would look like.
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.
SGTM 👍
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.
Nothing seems to be an issue from my persective. google3 presubmit also started.
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.
Looking good!
packages/compiler-cli/src/ngtsc/typecheck/src/template_symbol_builder.ts
Outdated
Show resolved
Hide resolved
...est/compliance/test_cases/r3_compiler_compliance/components_and_directives/GOLDEN_PARTIAL.js
Show resolved
Hide resolved
.../schematics/migrations/static-queries/strategies/usage_strategy/declaration_usage_visitor.ts
Outdated
Show resolved
Hide resolved
c93273a
to
2d2826a
Compare
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.
LGTM for language service
Switches the repository to TypeScript 4.3 and the latest version of tslib. This involves updating the peer dependency ranges on `typescript` for the compiler CLI and for the Bazel package. Tests for new TypeScript features have been added to ensure compatibility with Angular's ngtsc compiler.
…t regression Updates the compiler-cli compliance goldens. The golden updates are required due to a regression in TypeScript 4.3 that causes the emitter to not incorrectly preserve lines when emitting a node list. This can be reverted once microsoft/TypeScript#44070 is available.
2d2826a
to
59a0810
Compare
I reran the g3 presubmit - there is just one failure and it seems unrelated, so I'm almost certain that we'll be fine in g3. |
This comment has been minimized.
This comment has been minimized.
FYI presubmits look good and since this change is also compatible with TS 4.2 it should be safe to land. Thank you. |
…t regression (#42022) Updates the compiler-cli compliance goldens. The golden updates are required due to a regression in TypeScript 4.3 that causes the emitter to not incorrectly preserve lines when emitting a node list. This can be reverted once microsoft/TypeScript#44070 is available. PR Close #42022
…it format regression (angular#42022)" This reverts commit 71e14a7.
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. |
…t regression (angular#42022) Updates the compiler-cli compliance goldens. The golden updates are required due to a regression in TypeScript 4.3 that causes the emitter to not incorrectly preserve lines when emitting a node list. This can be reverted once microsoft/TypeScript#44070 is available. PR Close angular#42022
Switches the repository to TypeScript 4.3 and the latest version of tslib. This involves updating the peer dependency ranges on
typescript
for the compiler CLI and for the Bazel package. Tests for new TypeScript features have been added to ensure compatibility with Angular's ngtsc compiler.