-
Notifications
You must be signed in to change notification settings - Fork 12.6k
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
Bail when comparing a specialized form of an already ongoing comparison #42727
Conversation
… the middle of a more general comparison of those same types
@typescript-bot perf test this |
Heya @weswigham, I've started to run the parallelized community code test suite on this PR at e7547a1. You can monitor the build here. |
Heya @weswigham, I've started to run the perf test suite on this PR at e7547a1. You can monitor the build here. Update: The results are in! |
Heya @weswigham, I've started to run the tarball bundle task on this PR at e7547a1. You can monitor the build here. |
Heya @weswigham, I've started to run the extended test suite on this PR at e7547a1. You can monitor the build here. |
Heya @weswigham, I've started to run the parallelized Definitely Typed test suite on this PR at e7547a1. 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 There is also a playground for this build and an npm module you can use via |
The user suite test run you requested has finished and failed. I've opened a PR with the baseline diff from master. |
@weswigham Here they are:Comparison Report - master..42727
System
Hosts
Scenarios
|
This accomplishes something very similar to #42726. but through exclusively manipulation of the type ID text. As such, it only works for type references, whose structure is partially encoded into the ID, and only in scenarios where we are starting with a comparison where all the type parameters of the types being compared are in their most general form. But it requires significantly less work to check, and manufactures no new types, when compared to #42726.
Fixes #38970
This and #42726 aren't technically mutually exclusive, but given that they target the same underlying inefficiency, I imagine we'll only take one until we have good reason to take the other.