-
Notifications
You must be signed in to change notification settings - Fork 12.5k
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
Add fastpath to isRelatedTo for type references #37481
Add fastpath to isRelatedTo for type references #37481
Conversation
@typescript-bot perf test this |
Heya @weswigham, I've started to run the perf test suite on this PR at 5d2149c. You can monitor the build here. Update: The results are in! |
@weswigham Here they are:Comparison Report - master..37481
System
Hosts
Scenarios
|
@typescript-bot pack this |
Heya @DanielRosenwasser, I've started to run the tarball bundle task on this PR at 5d2149c. You can monitor the build here. |
Hey @DanielRosenwasser, I've packed this into an installable tgz. You can install it for testing by referencing it in your
and then running There is also a playground for this build. |
…flags, properly set comparing jsx flag
Can't seem to find behavior that exhibited the case I was mentioning above. I tried interface Foo<T> {
yadda: T;
}
declare let x: number & Foo<string>;
declare let y: number;
x = y;
y = x; but that doesn't seem to have any differences. |
Are type references special here? Can you just check if the source has |
That's because the only type flags propagated are the propagating flags
Maybe, I'll simplify it. |
Sorry, I misread which flags were getting propagated. |
@typescript-bot user test this |
Heya @DanielRosenwasser, I've started to run the parallelized community code test suite on this PR at fdc4e50. You can monitor the build here. |
The user suite test run you requested has finished and failed. I've opened a PR with the baseline diff from master. |
@typescript-bot perf test this |
Heya @weswigham, I've started to run the perf test suite on this PR at 46ca0b6. You can monitor the build here. Update: The results are in! |
Heya @weswigham, I've started to run the parallelized Definitely Typed test suite on this PR at 46ca0b6. You can monitor the build here. |
Heya @weswigham, I've started to run the extended test suite on this PR at 46ca0b6. You can monitor the build here. |
Heya @weswigham, I've started to run the parallelized community code test suite on this PR at 46ca0b6. You can monitor the build here. |
@weswigham Here they are:Comparison Report - master..37481
System
Hosts
Scenarios
|
@typescript-bot pack this |
Heya @weswigham, I've started to run the tarball bundle task on this PR at 46ca0b6. You can monitor the build here. |
Hey @weswigham, I've packed this into an installable tgz. You can install it for testing by referencing it in your
and then running |
@ahejlsberg can I get a review? |
Fixes #37344
This is an alternative to #37423. Rather than deferring conditional simplification, we introduce a fastpath for relating type references to primitives, which occurs before normalization, this way we don't pull on the type arguments for deferred type references unless we're much more likely to actually need their structure to resolve the relationship.