| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
|
TypeScript Bot (@typescript-bot) test this |
Sorry, something went wrong.
|
Heya Daniel Rosenwasser (@DanielRosenwasser), I've started to run the extended test suite on this PR at e17ca56. You can monitor the build here. |
Sorry, something went wrong.
|
Heya Daniel Rosenwasser (@DanielRosenwasser), I've started to run the parallelized community code test suite on this PR at e17ca56. You can monitor the build here. |
Sorry, something went wrong.
|
Heya Daniel Rosenwasser (@DanielRosenwasser), I've started to run the perf test suite on this PR at e17ca56. You can monitor the build here. Update: The results are in! |
Sorry, something went wrong.
|
Heya Daniel Rosenwasser (@DanielRosenwasser), I've started to run the parallelized Definitely Typed test suite on this PR at e17ca56. You can monitor the build here. |
Sorry, something went wrong.
|
Daniel Rosenwasser (@DanielRosenwasser) Comparison Report - main..47483
System
Hosts
Scenarios
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Sorry, something went wrong.
|
The user suite test run you requested has finished and failed. I've opened a PR with the baseline diff from master. |
Sorry, something went wrong.
|
I'm curious why you've included TypeFacts.TypeofEQObject and TypeFacts.TypeofNEObject in TypeFacts.OrFactsMask? I'd be inclined to think an intersection is an object only when every constituent is an object. Meaning the flags should be and-ed, not or-ed. For example: function test(x: number & { _foo: string }) {
if (typeof x === 'object') {
x; // Used to narrow to never, now doesn't
}
}It's fairly common to have tagged primitives like that, but they shouldn't appear to be objects. |
Sorry, something went wrong.
|
I think TypeFacts.TypeofEQObject was a mistake on my part, given that behavior. But TypeofNEObject still makes sense to me to be an or mask because of the interaction between objects and functions: function f1(x: F & { foo: number }) {
if (typeof x !== "object") {
x; // Narrows to `never` if `TypeFacts.TypeofNEObject` is an `and` mask
}
}However, there's also a mistake on the ignoreObjects behavior: we should return the AndMask instead of falling back and returning All, since All is no longer the identity element for computing type facts of intersections. Made the fixes here: #47583 |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Fixes #45801.
Second attempt at a fix, first is in #47282 (along with some explanation of the issue).