-
Notifications
You must be signed in to change notification settings - Fork 12.9k
Remove unused diagnostic 2346 #54442
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
Remove unused diagnostic 2346 #54442
Conversation
This PR doesn't have any linked issues. Please open an issue that references this PR. From there we can discuss and prioritise. |
This is interesting, because googling TS2346 actually turns up results (including at least one issue here) but apparently the error message used to be |
Also possibly relevant: #17032 |
I think that the equivalent diagnostics are just reported by different code paths nowadays. So those errors didn't actually go away. |
Yeah, probably fixing #17032 is what made this specific diagnostic unused |
ELI5, how do you know this code "never" runs? It appears reachable to me. |
|
Incredibly flattered that you think our test suites are that exhaustive, but it's really not the case 😅. I don't think this is safe to remove unless we ship the assert in the nightly for a couple weeks without getting any hits (which I'm not really keen to do either). |
I've done an additional call hierarchy analysis for this
|
@typescript-bot test this |
Heya @DanielRosenwasser, I've started to run the diff-based top-repos suite (tsserver) on this PR at 1cacfca. You can monitor the build here. Update: The results are in! |
Heya @DanielRosenwasser, I've started to run the diff-based top-repos suite on this PR at 1cacfca. You can monitor the build here. Update: The results are in! |
Heya @DanielRosenwasser, I've started to run the parallelized Definitely Typed test suite on this PR at 1cacfca. You can monitor the build here. Update: The results are in! |
Heya @DanielRosenwasser, I've started to run the diff-based user code test suite (tsserver) on this PR at 1cacfca. You can monitor the build here. Update: The results are in! |
Heya @DanielRosenwasser, I've started to run the extended test suite on this PR at 1cacfca. You can monitor the build here. |
Heya @DanielRosenwasser, I've started to run the diff-based user code test suite on this PR at 1cacfca. You can monitor the build here. Update: The results are in! |
@DanielRosenwasser Here are the results of running the user test suite comparing Everything looks good! |
@DanielRosenwasser Here are the results of running the user test suite comparing There were infrastructure failures potentially unrelated to your change:
Otherwise... Everything looks good! |
@DanielRosenwasser Here are the results of running the top-repos suite comparing Everything looks good! |
Hey @DanielRosenwasser, the results of running the DT tests are ready. |
@DanielRosenwasser Here are the results of running the top-repos suite comparing Everything looks good! |
I'd be OK replacing this with |
@typescript-bot test this |
Heya @DanielRosenwasser, I've started to run the diff-based user code test suite on this PR at e79b644. You can monitor the build here. Update: The results are in! |
Heya @DanielRosenwasser, I've started to run the diff-based top-repos suite (tsserver) on this PR at e79b644. You can monitor the build here. Update: The results are in! |
Heya @DanielRosenwasser, I've started to run the diff-based top-repos suite on this PR at e79b644. You can monitor the build here. Update: The results are in! |
Heya @DanielRosenwasser, I've started to run the parallelized Definitely Typed test suite on this PR at e79b644. You can monitor the build here. Update: The results are in! |
Heya @DanielRosenwasser, I've started to run the extended test suite on this PR at e79b644. You can monitor the build here. |
Heya @DanielRosenwasser, I've started to run the diff-based user code test suite (tsserver) on this PR at e79b644. You can monitor the build here. Update: The results are in! |
@DanielRosenwasser Here are the results of running the user test suite comparing Everything looks good! |
@DanielRosenwasser Here are the results of running the user test suite comparing There were infrastructure failures potentially unrelated to your change:
Otherwise... Something interesting changed - please have a look. Details
|
@DanielRosenwasser Here are the results of running the top-repos suite comparing Everything looks good! |
Hey @DanielRosenwasser, the results of running the DT tests are ready. |
@DanielRosenwasser Here are the results of running the top-repos suite comparing Everything looks good! |
@RyanCavanaugh is this ready to merge? It looks like it to me. |
I found something that triggers the debug assertion: #55499 |
"Post mortem" of what went wrong with the initial investigation is that this didn't hold true:
I added further notes on how there might be no valid constructor even in the presence of a |
Two years later, we received another way to hit this (via #61438 (comment)) export class SomeBaseClass { }
export interface SomeInterface { }
export interface MergedClass extends SomeInterface { }
export class MergedClass extends SomeBaseClass<any> {
public constructor() {
super();
}
} |
Really a cautionary tale here; I shouldn't have approved this. It's not just the time to author and review PRs, it's the time that users spend tracking these things down -- those people didn't sign up for this work and no one got any tangible benefit from this not-actually-dead code being removed in the interim. |
I noticed that this code is never executed