Perform partial inference with partially filled type parameter lists
This implements what we wanted to look into a yesterday's design meeting - for expression inference sites, any number of type parameters can be provided, the rest will be inferred from the argument expressions. Likewise, you may now omit type arguments from the middle of a type argument list and have those omitted positions inferred, too.
This is just another flavor of #26349, so this will close #26349 if merged.
@typescript-bot test this @typescript-bot run dt @typescript-bot test top100 @typescript-bot perf test this @typescript-bot pack this
Heya @weswigham, I've started to run the extended test suite on this PR at da7b04718bf67c66bacdf2276deb9fe6395ae743. You can monitor the build here.
Heya @weswigham, I've started to run the parallelized Definitely Typed test suite on this PR at da7b04718bf67c66bacdf2276deb9fe6395ae743. 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 da7b04718bf67c66bacdf2276deb9fe6395ae743. You can monitor the build here.
Heya @weswigham, I've started to run the diff-based top-repos suite on this PR at da7b04718bf67c66bacdf2276deb9fe6395ae743. You can monitor the build here.
Update: The results are in!
Heya @weswigham, I've started to run the perf test suite on this PR at da7b04718bf67c66bacdf2276deb9fe6395ae743. You can monitor the build here.
Update: The results are in!
(Given how some of the tests colorize in the editor, I think this change will need a tmLanguage update, but we should maybe do that regardless of whether we take this or not for better error recovery when people are deleting/writing type argument lists)
Hey @weswigham, I've packed this into an installable tgz. You can install it for testing by referencing it in your package.json like so:
{
"devDependencies": {
"typescript": "https://typescript.visualstudio.com/cf7ac146-d525-443c-b23c-0d58337efebc/_apis/build/builds/153473/artifacts?artifactName=tgz&fileId=C70022D27B778AE17FD10B906383AFE869310E999BB2B75D38A045FDF449942F02&fileName=/typescript-5.1.0-insiders.20230428.tgz"
}
}
and then running npm install.
There is also a playground for this build and an npm module you can use via "typescript": "npm:@typescript-deploys/[email protected]".;
Heya @weswigham, I've run the RWC suite on this PR - assuming you're on the TS core team, you can view the resulting diff here.
@weswigham The results of the perf run you requested are in!
Here they are:
Compiler
Comparison Report - main..54047| Metric | main | 54047 | Delta | Best | Worst | p-value |
|---|---|---|---|---|---|---|
| Angular - node (v18.10.0, x64) | ||||||
| Memory used | 365,883k (± 0.01%) | 365,927k (± 0.01%) | +44k (+ 0.01%) | 365,906k | 366,009k | p=0.045 n=6 |
| Parse Time | 3.40s (± 0.87%) | 3.40s (± 1.06%) | ~ | 3.35s | 3.45s | p=0.872 n=6 |
| Bind Time | 1.11s (± 0.89%) | 1.11s (± 0.68%) | ~ | 1.10s | 1.12s | p=0.554 n=6 |
| Check Time | 8.74s (± 0.37%) | 8.80s (± 0.41%) | +0.06s (+ 0.65%) | 8.74s | 8.85s | p=0.020 n=6 |
| Emit Time | 7.44s (± 1.18%) | 7.47s (± 0.71%) | ~ | 7.41s | 7.54s | p=0.378 n=6 |
| Total Time | 20.69s (± 0.60%) | 20.78s (± 0.45%) | ~ | 20.67s | 20.94s | p=0.199 n=6 |
| Compiler-Unions - node (v18.10.0, x64) | ||||||
| Memory used | 193,284k (± 1.44%) | 191,949k (± 1.25%) | ~ | 190,946k | 196,832k | p=0.298 n=6 |
| Parse Time | 1.49s (± 1.61%) | 1.48s (± 1.38%) | ~ | 1.44s | 1.50s | p=0.153 n=6 |
| Bind Time | 0.77s (± 0.67%) | 0.77s (± 1.27%) | ~ | 0.76s | 0.79s | p=0.386 n=6 |
| Check Time | 9.54s (± 0.72%) | 9.68s (± 0.51%) | +0.15s (+ 1.54%) | 9.63s | 9.76s | p=0.010 n=6 |
| Emit Time | 2.76s (± 0.50%) | 2.76s (± 0.98%) | ~ | 2.73s | 2.81s | p=0.871 n=6 |
| Total Time | 14.55s (± 0.64%) | 14.70s (± 0.44%) | +0.15s (+ 1.00%) | 14.64s | 14.82s | p=0.024 n=6 |
| Monaco - node (v18.10.0, x64) | ||||||
| Memory used | 346,500k (± 0.01%) | 346,575k (± 0.01%) | +75k (+ 0.02%) | 346,516k | 346,632k | p=0.020 n=6 |
| Parse Time | 2.56s (± 1.06%) | 2.58s (± 0.81%) | ~ | 2.54s | 2.60s | p=0.287 n=6 |
| Bind Time | 1.00s (± 0.54%) | 1.00s (± 1.17%) | ~ | 0.99s | 1.02s | p=0.152 n=6 |
| Check Time | 7.16s (± 0.22%) | 7.16s (± 0.43%) | ~ | 7.12s | 7.19s | p=0.745 n=6 |
| Emit Time | 4.23s (± 1.24%) | 4.22s (± 0.53%) | ~ | 4.18s | 4.24s | p=0.809 n=6 |
| Total Time | 14.96s (± 0.45%) | 14.96s (± 0.30%) | ~ | 14.91s | 15.01s | p=0.686 n=6 |
| TFS - node (v18.10.0, x64) | ||||||
| Memory used | 300,715k (± 0.01%) | 300,774k (± 0.01%) | +59k (+ 0.02%) | 300,754k | 300,799k | p=0.005 n=6 |
| Parse Time | 2.06s (± 0.99%) | 2.05s (± 1.17%) | ~ | 2.01s | 2.07s | p=0.743 n=6 |
| Bind Time | 1.14s (± 1.20%) | 1.14s (± 0.96%) | ~ | 1.13s | 1.16s | p=0.933 n=6 |
| Check Time | 6.58s (± 0.45%) | 6.61s (± 0.51%) | ~ | 6.57s | 6.66s | p=0.259 n=6 |
| Emit Time | 3.89s (± 0.57%) | 3.89s (± 0.76%) | ~ | 3.84s | 3.92s | p=0.744 n=6 |
| Total Time | 13.66s (± 0.30%) | 13.69s (± 0.48%) | ~ | 13.62s | 13.78s | p=0.571 n=6 |
| material-ui - node (v18.10.0, x64) | ||||||
| Memory used | 482,370k (± 0.01%) | 482,547k (± 0.01%) | +177k (+ 0.04%) | 482,515k | 482,638k | p=0.005 n=6 |
| Parse Time | 3.08s (± 0.46%) | 3.08s (± 0.54%) | ~ | 3.06s | 3.10s | p=1.000 n=6 |
| Bind Time | 0.91s (± 0.45%) | 0.91s (± 0.56%) | ~ | 0.91s | 0.92s | p=0.114 n=6 |
| Check Time | 16.88s (± 0.65%) | 16.97s (± 0.67%) | ~ | 16.84s | 17.11s | p=0.173 n=6 |
| Emit Time | 0.00s (± 0.00%) | 0.00s (± 0.00%) | ~ | 0.00s | 0.00s | p=1.000 n=6 |
| Total Time | 20.86s (± 0.52%) | 20.96s (± 0.54%) | ~ | 20.82s | 21.09s | p=0.199 n=6 |
| xstate - node (v18.10.0, x64) | ||||||
| Memory used | 563,213k (± 0.03%) | 570,939k (± 0.02%) | +7,727k (+ 1.37%) | 570,803k | 571,118k | p=0.005 n=6 |
| Parse Time | 3.81s (± 0.37%) | 3.79s (± 0.43%) | ~ | 3.76s | 3.80s | p=0.081 n=6 |
| Bind Time | 1.62s (± 0.25%) | 1.62s (± 0.93%) | ~ | 1.60s | 1.64s | p=0.315 n=6 |
| Check Time | 2.81s (± 0.54%) | 3.10s (± 0.76%) | +0.29s (+10.45%) | 3.07s | 3.13s | p=0.005 n=6 |
| Emit Time | 0.08s (± 0.00%) | 0.08s (± 0.00%) | ~ | 0.08s | 0.08s | p=1.000 n=6 |
| Total Time | 8.32s (± 0.16%) | 8.59s (± 0.24%) | +0.28s (+ 3.31%) | 8.56s | 8.62s | p=0.004 n=6 |
| Angular - node (v16.17.1, x64) | ||||||
| Memory used | 365,304k (± 0.01%) | 365,309k (± 0.01%) | ~ | 365,278k | 365,380k | p=0.809 n=6 |
| Parse Time | 3.53s (± 0.30%) | 3.53s (± 0.42%) | ~ | 3.51s | 3.55s | p=0.413 n=6 |
| Bind Time | 1.17s (± 0.71%) | 1.17s (± 0.35%) | ~ | 1.17s | 1.18s | p=0.527 n=6 |
| Check Time | 9.52s (± 0.32%) | 9.54s (± 0.31%) | ~ | 9.50s | 9.57s | p=0.193 n=6 |
| Emit Time | 7.86s (± 0.65%) | 7.88s (± 0.52%) | ~ | 7.83s | 7.93s | p=0.572 n=6 |
| Total Time | 22.09s (± 0.28%) | 22.13s (± 0.30%) | ~ | 22.04s | 22.20s | p=0.470 n=6 |
| Compiler-Unions - node (v16.17.1, x64) | ||||||
| Memory used | 192,725k (± 0.02%) | 192,748k (± 0.02%) | ~ | 192,700k | 192,796k | p=0.230 n=6 |
| Parse Time | 1.59s (± 0.92%) | 1.58s (± 0.93%) | ~ | 1.56s | 1.60s | p=0.289 n=6 |
| Bind Time | 0.82s (± 0.50%) | 0.82s (± 1.20%) | ~ | 0.81s | 0.83s | p=0.930 n=6 |
| Check Time | 10.22s (± 0.60%) | 10.28s (± 0.26%) | ~ | 10.25s | 10.33s | p=0.195 n=6 |
| Emit Time | 3.02s (± 0.87%) | 3.01s (± 0.89%) | ~ | 2.99s | 3.06s | p=0.416 n=6 |
| Total Time | 15.66s (± 0.43%) | 15.69s (± 0.14%) | ~ | 15.67s | 15.73s | p=0.335 n=6 |
| Monaco - node (v16.17.1, x64) | ||||||
| Memory used | 345,779k (± 0.01%) | 345,864k (± 0.01%) | +85k (+ 0.02%) | 345,838k | 345,887k | p=0.005 n=6 |
| Parse Time | 2.72s (± 0.28%) | 2.71s (± 0.28%) | ~ | 2.70s | 2.72s | p=0.195 n=6 |
| Bind Time | 1.08s (± 0.77%) | 1.08s (± 0.70%) | ~ | 1.07s | 1.09s | p=0.652 n=6 |
| Check Time | 7.83s (± 0.25%) | 7.87s (± 0.35%) | +0.04s (+ 0.57%) | 7.84s | 7.92s | p=0.012 n=6 |
| Emit Time | 4.45s (± 1.22%) | 4.47s (± 0.77%) | ~ | 4.42s | 4.51s | p=0.227 n=6 |
| Total Time | 16.08s (± 0.43%) | 16.14s (± 0.29%) | ~ | 16.08s | 16.22s | p=0.078 n=6 |
| TFS - node (v16.17.1, x64) | ||||||
| Memory used | 300,076k (± 0.01%) | 300,101k (± 0.01%) | ~ | 300,086k | 300,129k | p=0.078 n=6 |
| Parse Time | 2.14s (± 0.82%) | 2.15s (± 0.24%) | ~ | 2.14s | 2.15s | p=0.667 n=6 |
| Bind Time | 1.23s (± 0.89%) | 1.23s (± 1.26%) | ~ | 1.22s | 1.26s | p=0.863 n=6 |
| Check Time | 7.22s (± 0.37%) | 7.26s (± 0.61%) | ~ | 7.20s | 7.32s | p=0.126 n=6 |
| Emit Time | 4.38s (± 0.81%) | 4.36s (± 0.91%) | ~ | 4.31s | 4.40s | p=0.422 n=6 |
| Total Time | 14.97s (± 0.49%) | 15.00s (± 0.45%) | ~ | 14.89s | 15.06s | p=0.571 n=6 |
| material-ui - node (v16.17.1, x64) | ||||||
| Memory used | 481,621k (± 0.00%) | 481,790k (± 0.01%) | +169k (+ 0.04%) | 481,723k | 481,829k | p=0.005 n=6 |
| Parse Time | 3.23s (± 0.37%) | 3.24s (± 0.46%) | ~ | 3.22s | 3.26s | p=0.805 n=6 |
| Bind Time | 0.93s (± 0.59%) | 0.93s (± 0.44%) | ~ | 0.93s | 0.94s | p=0.282 n=6 |
| Check Time | 17.88s (± 0.98%) | 17.85s (± 0.43%) | ~ | 17.77s | 17.99s | p=0.810 n=6 |
| Emit Time | 0.00s (± 0.00%) | 0.00s (± 0.00%) | ~ | 0.00s | 0.00s | p=1.000 n=6 |
| Total Time | 22.05s (± 0.79%) | 22.02s (± 0.36%) | ~ | 21.95s | 22.16s | p=0.872 n=6 |
| xstate - node (v16.17.1, x64) | ||||||
| Memory used | 560,685k (± 0.02%) | 568,470k (± 0.02%) | +7,785k (+ 1.39%) | 568,335k | 568,536k | p=0.005 n=6 |
| Parse Time | 3.98s (± 0.26%) | 3.96s (± 0.34%) | ~ | 3.95s | 3.98s | p=0.167 n=6 |
| Bind Time | 1.75s (± 0.23%) | 1.76s (± 0.46%) | ~ | 1.75s | 1.77s | p=0.248 n=6 |
| Check Time | 3.04s (± 0.71%) | 3.32s (± 0.71%) | +0.28s (+ 9.09%) | 3.29s | 3.35s | p=0.005 n=6 |
| Emit Time | 0.09s (± 0.00%) | 0.08s (± 4.99%) | 🟩-0.01s (- 9.26%) | 0.08s | 0.09s | p=0.007 n=6 |
| Total Time | 8.86s (± 0.20%) | 9.14s (± 0.34%) | +0.28s (+ 3.14%) | 9.10s | 9.17s | p=0.005 n=6 |
| Angular - node (v14.21.3, x64) | ||||||
| Memory used | 359,306k (± 0.00%) | 359,362k (± 0.01%) | +55k (+ 0.02%) | 359,337k | 359,384k | p=0.005 n=6 |
| Parse Time | 3.65s (± 0.37%) | 3.64s (± 0.33%) | ~ | 3.63s | 3.66s | p=0.215 n=6 |
| Bind Time | 1.22s (± 0.62%) | 1.21s (± 0.34%) | -0.01s (- 0.82%) | 1.21s | 1.22s | p=0.029 n=6 |
| Check Time | 9.97s (± 0.40%) | 9.99s (± 0.27%) | ~ | 9.96s | 10.04s | p=0.462 n=6 |
| Emit Time | 8.25s (± 0.86%) | 8.25s (± 0.85%) | ~ | 8.16s | 8.34s | p=0.936 n=6 |
| Total Time | 23.11s (± 0.53%) | 23.10s (± 0.44%) | ~ | 23.00s | 23.26s | p=0.872 n=6 |
| Compiler-Unions - node (v14.21.3, x64) | ||||||
| Memory used | 188,083k (± 0.01%) | 188,160k (± 0.01%) | +78k (+ 0.04%) | 188,132k | 188,177k | p=0.005 n=6 |
| Parse Time | 1.59s (± 0.32%) | 1.60s (± 0.61%) | ~ | 1.59s | 1.61s | p=0.140 n=6 |
| Bind Time | 0.84s (± 0.48%) | 0.84s (± 0.65%) | ~ | 0.84s | 0.85s | p=0.282 n=6 |
| Check Time | 10.30s (± 0.20%) | 10.39s (± 0.53%) | +0.09s (+ 0.91%) | 10.31s | 10.47s | p=0.010 n=6 |
| Emit Time | 3.16s (± 0.68%) | 3.17s (± 1.61%) | ~ | 3.14s | 3.27s | p=0.870 n=6 |
| Total Time | 15.90s (± 0.20%) | 16.01s (± 0.47%) | +0.11s (+ 0.70%) | 15.88s | 16.09s | p=0.029 n=6 |
| Monaco - node (v14.21.3, x64) | ||||||
| Memory used | 340,878k (± 0.01%) | 340,949k (± 0.01%) | +71k (+ 0.02%) | 340,926k | 340,973k | p=0.005 n=6 |
| Parse Time | 2.79s (± 0.42%) | 2.79s (± 0.19%) | ~ | 2.78s | 2.79s | p=0.929 n=6 |
| Bind Time | 1.10s (± 0.37%) | 1.11s (± 0.74%) | ~ | 1.10s | 1.12s | p=0.248 n=6 |
| Check Time | 8.13s (± 0.69%) | 8.18s (± 0.55%) | ~ | 8.14s | 8.26s | p=0.169 n=6 |
| Emit Time | 4.69s (± 1.54%) | 4.69s (± 0.65%) | ~ | 4.63s | 4.72s | p=0.809 n=6 |
| Total Time | 16.71s (± 0.59%) | 16.77s (± 0.23%) | ~ | 16.73s | 16.84s | p=0.229 n=6 |
| TFS - node (v14.21.3, x64) | ||||||
| Memory used | 295,250k (± 0.00%) | 295,286k (± 0.00%) | +36k (+ 0.01%) | 295,269k | 295,300k | p=0.005 n=6 |
| Parse Time | 2.39s (± 0.51%) | 2.38s (± 0.72%) | ~ | 2.36s | 2.41s | p=0.566 n=6 |
| Bind Time | 1.06s (± 0.49%) | 1.06s (± 0.00%) | ~ | 1.06s | 1.06s | p=0.174 n=6 |
| Check Time | 7.55s (± 0.66%) | 7.56s (± 0.40%) | ~ | 7.52s | 7.60s | p=1.000 n=6 |
| Emit Time | 4.32s (± 0.32%) | 4.32s (± 0.56%) | ~ | 4.27s | 4.34s | p=0.744 n=6 |
| Total Time | 15.32s (± 0.42%) | 15.31s (± 0.27%) | ~ | 15.26s | 15.36s | p=0.688 n=6 |
| material-ui - node (v14.21.3, x64) | ||||||
| Memory used | 477,217k (± 0.00%) | 477,404k (± 0.01%) | +188k (+ 0.04%) | 477,372k | 477,439k | p=0.005 n=6 |
| Parse Time | 3.31s (± 0.37%) | 3.29s (± 0.17%) | -0.02s (- 0.60%) | 3.29s | 3.30s | p=0.015 n=6 |
| Bind Time | 1.00s (± 0.52%) | 1.00s (± 0.75%) | ~ | 0.99s | 1.01s | p=0.784 n=6 |
| Check Time | 18.69s (± 0.22%) | 18.74s (± 0.20%) | ~ | 18.69s | 18.80s | p=0.075 n=6 |
| Emit Time | 0.00s (± 0.00%) | 0.00s (± 0.00%) | ~ | 0.00s | 0.00s | p=1.000 n=6 |
| Total Time | 23.00s (± 0.19%) | 23.04s (± 0.20%) | ~ | 22.98s | 23.11s | p=0.334 n=6 |
| xstate - node (v14.21.3, x64) | ||||||
| Memory used | 549,587k (± 0.00%) | 557,492k (± 0.00%) | +7,905k (+ 1.44%) | 557,453k | 557,519k | p=0.005 n=6 |
| Parse Time | 4.24s (± 1.59%) | 4.18s (± 0.51%) | ~ | 4.15s | 4.21s | p=0.108 n=6 |
| Bind Time | 1.62s (± 4.71%) | 1.64s (± 2.26%) | ~ | 1.57s | 1.66s | p=0.557 n=6 |
| Check Time | 3.19s (± 0.54%) | 3.53s (± 0.58%) | +0.34s (+10.77%) | 3.51s | 3.55s | p=0.005 n=6 |
| Emit Time | 0.09s (± 0.00%) | 0.09s (± 4.45%) | ~ | 0.09s | 0.10s | p=0.405 n=6 |
| Total Time | 9.14s (± 0.40%) | 9.44s (± 0.32%) | +0.30s (+ 3.30%) | 9.40s | 9.47s | p=0.005 n=6 |
| Machine Name | ts-ci-ubuntu |
|---|---|
| Platform | linux 5.4.0-147-generic |
| Architecture | x64 |
| Available Memory | 16 GB |
| Available Memory | 15 GB |
| CPUs | 4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz |
- node (v18.10.0, x64)
- node (v16.17.1, x64)
- node (v14.21.3, x64)
- Angular - node (v18.10.0, x64)
- Angular - node (v16.17.1, x64)
- Angular - node (v14.21.3, x64)
- Compiler-Unions - node (v18.10.0, x64)
- Compiler-Unions - node (v16.17.1, x64)
- Compiler-Unions - node (v14.21.3, x64)
- Monaco - node (v18.10.0, x64)
- Monaco - node (v16.17.1, x64)
- Monaco - node (v14.21.3, x64)
- TFS - node (v18.10.0, x64)
- TFS - node (v16.17.1, x64)
- TFS - node (v14.21.3, x64)
- material-ui - node (v18.10.0, x64)
- material-ui - node (v16.17.1, x64)
- material-ui - node (v14.21.3, x64)
- xstate - node (v18.10.0, x64)
- xstate - node (v16.17.1, x64)
- xstate - node (v14.21.3, x64)
| Benchmark | Name | Iterations |
|---|---|---|
| Current | 54047 | 6 |
| Baseline | main | 6 |
TSServer
Comparison Report - main..54047| Metric | main | 54047 | Delta | Best | Worst | p-value |
|---|---|---|---|---|---|---|
| Compiler-UnionsTSServer - node (v18.10.0, x64) | ||||||
| Req 1 - updateOpen | 2,531ms (± 0.33%) | 2,526ms (± 0.65%) | ~ | 2,510ms | 2,555ms | p=0.298 n=6 |
| Req 2 - geterr | 5,702ms (± 0.50%) | 5,665ms (± 1.34%) | ~ | 5,512ms | 5,714ms | p=0.689 n=6 |
| Req 3 - references | 341ms (± 0.65%) | 342ms (± 1.09%) | ~ | 338ms | 349ms | p=0.420 n=6 |
| Req 4 - navto | 282ms (± 0.45%) | 284ms (± 1.27%) | ~ | 281ms | 291ms | p=0.279 n=6 |
| Req 5 - completionInfo count | 1,356 (± 0.00%) | 1,356 (± 0.00%) | ~ | 1,356 | 1,356 | p=1.000 n=6 |
| Req 5 - completionInfo | 84ms (± 1.17%) | 85ms (± 0.89%) | ~ | 84ms | 86ms | p=0.167 n=6 |
| CompilerTSServer - node (v18.10.0, x64) | ||||||
| Req 1 - updateOpen | 2,634ms (± 0.33%) | 2,643ms (± 1.11%) | ~ | 2,599ms | 2,686ms | p=0.423 n=6 |
| Req 2 - geterr | 4,329ms (± 0.28%) | 4,295ms (± 2.24%) | ~ | 4,167ms | 4,385ms | p=0.471 n=6 |
| Req 3 - references | 348ms (± 0.47%) | 347ms (± 0.42%) | ~ | 345ms | 349ms | p=0.279 n=6 |
| Req 4 - navto | 289ms (± 0.42%) | 289ms (± 0.71%) | ~ | 287ms | 293ms | p=0.743 n=6 |
| Req 5 - completionInfo count | 1,518 (± 0.00%) | 1,518 (± 0.00%) | ~ | 1,518 | 1,518 | p=1.000 n=6 |
| Req 5 - completionInfo | 63ms (± 4.54%) | 66ms (± 6.05%) | ~ | 62ms | 71ms | p=0.122 n=6 |
| xstateTSServer - node (v18.10.0, x64) | ||||||
| Req 1 - updateOpen | 3,065ms (± 0.36%) | 3,058ms (± 0.25%) | ~ | 3,045ms | 3,068ms | p=0.336 n=6 |
| Req 2 - geterr | 1,615ms (± 1.26%) | 1,615ms (± 1.24%) | ~ | 1,583ms | 1,642ms | p=0.748 n=6 |
| Req 3 - references | 107ms (± 0.51%) | 107ms (± 1.91%) | ~ | 105ms | 109ms | p=1.000 n=6 |
| Req 4 - navto | 363ms (± 0.61%) | 362ms (± 0.48%) | ~ | 360ms | 365ms | p=0.366 n=6 |
| Req 5 - completionInfo count | 2,862 (± 0.00%) | 2,862 (± 0.00%) | ~ | 2,862 | 2,862 | p=1.000 n=6 |
| Req 5 - completionInfo | 371ms (± 1.46%) | 370ms (± 1.98%) | ~ | 359ms | 378ms | p=1.000 n=6 |
| Compiler-UnionsTSServer - node (v16.17.1, x64) | ||||||
| Req 1 - updateOpen | 2,664ms (± 0.37%) | 2,648ms (± 0.59%) | ~ | 2,626ms | 2,669ms | p=0.109 n=6 |
| Req 2 - geterr | 6,131ms (± 0.25%) | 6,147ms (± 0.37%) | ~ | 6,122ms | 6,183ms | p=0.229 n=6 |
| Req 3 - references | 354ms (± 0.73%) | 355ms (± 0.58%) | ~ | 351ms | 357ms | p=0.515 n=6 |
| Req 4 - navto | 284ms (± 0.50%) | 286ms (± 1.65%) | ~ | 279ms | 291ms | p=0.685 n=6 |
| Req 5 - completionInfo count | 1,356 (± 0.00%) | 1,356 (± 0.00%) | ~ | 1,356 | 1,356 | p=1.000 n=6 |
| Req 5 - completionInfo | 88ms (± 6.62%) | 90ms (± 4.51%) | ~ | 82ms | 93ms | p=0.558 n=6 |
| CompilerTSServer - node (v16.17.1, x64) | ||||||
| Req 1 - updateOpen | 2,799ms (± 0.57%) | 2,796ms (± 0.70%) | ~ | 2,770ms | 2,824ms | p=0.936 n=6 |
| Req 2 - geterr | 4,662ms (± 0.29%) | 4,690ms (± 0.20%) | +29ms (+ 0.62%) | 4,675ms | 4,704ms | p=0.008 n=6 |
| Req 3 - references | 362ms (± 0.44%) | 362ms (± 0.29%) | ~ | 361ms | 363ms | p=0.934 n=6 |
| Req 4 - navto | 285ms (± 0.68%) | 283ms (± 0.95%) | ~ | 280ms | 286ms | p=0.221 n=6 |
| Req 5 - completionInfo count | 1,518 (± 0.00%) | 1,518 (± 0.00%) | ~ | 1,518 | 1,518 | p=1.000 n=6 |
| Req 5 - completionInfo | 67ms (± 1.12%) | 68ms (± 0.93%) | ~ | 67ms | 69ms | p=0.081 n=6 |
| xstateTSServer - node (v16.17.1, x64) | ||||||
| Req 1 - updateOpen | 3,199ms (± 0.55%) | 3,206ms (± 0.25%) | ~ | 3,190ms | 3,214ms | p=0.575 n=6 |
| Req 2 - geterr | 1,762ms (± 1.01%) | 1,761ms (± 0.58%) | ~ | 1,754ms | 1,781ms | p=0.747 n=6 |
| Req 3 - references | 126ms (± 6.08%) | 123ms (± 1.73%) | ~ | 119ms | 125ms | p=0.735 n=6 |
| Req 4 - navto | 341ms (± 0.40%) | 339ms (± 0.44%) | ~ | 338ms | 341ms | p=0.117 n=6 |
| Req 5 - completionInfo count | 2,862 (± 0.00%) | 2,862 (± 0.00%) | ~ | 2,862 | 2,862 | p=1.000 n=6 |
| Req 5 - completionInfo | 396ms (± 1.26%) | 402ms (± 1.76%) | ~ | 397ms | 416ms | p=0.226 n=6 |
| Compiler-UnionsTSServer - node (v14.21.3, x64) | ||||||
| Req 1 - updateOpen | 2,766ms (± 0.34%) | 2,767ms (± 0.55%) | ~ | 2,744ms | 2,787ms | p=0.810 n=6 |
| Req 2 - geterr | 6,264ms (± 0.58%) | 6,299ms (± 0.39%) | ~ | 6,264ms | 6,325ms | p=0.128 n=6 |
| Req 3 - references | 366ms (± 0.69%) | 373ms (± 5.12%) | ~ | 364ms | 412ms | p=0.933 n=6 |
| Req 4 - navto | 290ms (± 0.48%) | 287ms (± 0.42%) | -2ms (- 0.75%) | 286ms | 289ms | p=0.021 n=6 |
| Req 5 - completionInfo count | 1,356 (± 0.00%) | 1,356 (± 0.00%) | ~ | 1,356 | 1,356 | p=1.000 n=6 |
| Req 5 - completionInfo | 97ms (± 6.44%) | 101ms (± 5.01%) | ~ | 91ms | 104ms | p=0.167 n=6 |
| CompilerTSServer - node (v14.21.3, x64) | ||||||
| Req 1 - updateOpen | 2,936ms (± 0.27%) | 2,948ms (± 0.61%) | ~ | 2,925ms | 2,969ms | p=0.377 n=6 |
| Req 2 - geterr | 4,545ms (± 0.36%) | 4,578ms (± 1.45%) | ~ | 4,531ms | 4,709ms | p=0.471 n=6 |
| Req 3 - references | 374ms (± 0.46%) | 377ms (± 1.38%) | ~ | 371ms | 386ms | p=0.169 n=6 |
| Req 4 - navto | 296ms (± 0.74%) | 296ms (± 0.66%) | ~ | 292ms | 297ms | p=0.668 n=6 |
| Req 5 - completionInfo count | 1,518 (± 0.00%) | 1,518 (± 0.00%) | ~ | 1,518 | 1,518 | p=1.000 n=6 |
| Req 5 - completionInfo | 76ms (± 1.35%) | 76ms (± 1.44%) | ~ | 74ms | 77ms | p=0.863 n=6 |
| xstateTSServer - node (v14.21.3, x64) | ||||||
| Req 1 - updateOpen | 3,443ms (± 1.55%) | 3,464ms (± 1.04%) | ~ | 3,402ms | 3,504ms | p=0.423 n=6 |
| Req 2 - geterr | 1,864ms (± 0.37%) | 1,872ms (± 0.61%) | ~ | 1,855ms | 1,891ms | p=0.295 n=6 |
| Req 3 - references | 141ms (± 8.20%) | 155ms (± 5.76%) | ~ | 137ms | 160ms | p=0.064 n=6 |
| Req 4 - navto | 396ms (± 1.59%) | 395ms (± 0.81%) | ~ | 391ms | 400ms | p=1.000 n=6 |
| Req 5 - completionInfo count | 2,862 (± 0.00%) | 2,862 (± 0.00%) | ~ | 2,862 | 2,862 | p=1.000 n=6 |
| Req 5 - completionInfo | 425ms (± 2.81%) | 427ms (± 3.11%) | ~ | 402ms | 437ms | p=0.630 n=6 |
| Machine Name | ts-ci-ubuntu |
|---|---|
| Platform | linux 5.4.0-147-generic |
| Architecture | x64 |
| Available Memory | 16 GB |
| Available Memory | 15 GB |
| CPUs | 4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz |
- node (v18.10.0, x64)
- node (v16.17.1, x64)
- node (v14.21.3, x64)
- Compiler-UnionsTSServer - node (v18.10.0, x64)
- Compiler-UnionsTSServer - node (v16.17.1, x64)
- Compiler-UnionsTSServer - node (v14.21.3, x64)
- CompilerTSServer - node (v18.10.0, x64)
- CompilerTSServer - node (v16.17.1, x64)
- CompilerTSServer - node (v14.21.3, x64)
- xstateTSServer - node (v18.10.0, x64)
- xstateTSServer - node (v16.17.1, x64)
- xstateTSServer - node (v14.21.3, x64)
| Benchmark | Name | Iterations |
|---|---|---|
| Current | 54047 | 6 |
| Baseline | main | 6 |
Startup
Comparison Report - main..54047| Metric | main | 54047 | Delta | Best | Worst | p-value |
|---|---|---|---|---|---|---|
| tsc-startup - node (v16.17.1, x64) | ||||||
| Execution time | 140.94ms (± 0.21%) | 140.87ms (± 0.17%) | -0.07ms (- 0.05%) | 140.04ms | 143.63ms | p=0.025 n=600 |
| tsserver-startup - node (v16.17.1, x64) | ||||||
| Execution time | 219.20ms (± 0.19%) | 219.19ms (± 0.17%) | ~ | 217.96ms | 223.03ms | p=0.889 n=600 |
| tsserverlibrary-startup - node (v16.17.1, x64) | ||||||
| Execution time | 220.45ms (± 0.14%) | 220.67ms (± 0.18%) | +0.22ms (+ 0.10%) | 219.57ms | 225.38ms | p=0.000 n=600 |
| typescript-startup - node (v16.17.1, x64) | ||||||
| Execution time | 202.49ms (± 0.16%) | 202.77ms (± 0.19%) | +0.28ms (+ 0.14%) | 201.80ms | 210.20ms | p=0.000 n=600 |
| Machine Name | ts-ci-ubuntu |
|---|---|
| Platform | linux 5.4.0-147-generic |
| Architecture | x64 |
| Available Memory | 16 GB |
| Available Memory | 15 GB |
| CPUs | 4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz |
- node (v16.17.1, x64)
- tsc-startup - node (v16.17.1, x64)
- tsserver-startup - node (v16.17.1, x64)
- tsserverlibrary-startup - node (v16.17.1, x64)
- typescript-startup - node (v16.17.1, x64)
| Benchmark | Name | Iterations |
|---|---|---|
| Current | 54047 | 6 |
| Baseline | main | 6 |
Developer Information:
Hey @weswigham, the results of running the DT tests are ready. There were interesting changes:
Branch only errors:
Package: lodash Error:
Error: /home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/lodash/lodash-tests.ts:1491:5
ERROR: 1491:5 expect TypeScript@local expected type to be:
(AbcObject | undefined)[][]
got:
[AbcObject | undefined, AbcObject | undefined, AbcObject | undefined][]
ERROR: 1492:5 expect TypeScript@local expected type to be:
(string | number | boolean | undefined)[][]
got:
[string | number | boolean | undefined, string | undefined, boolean | undefined][]
at testTypesVersion (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:194:15)
at async runTests (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:151:9)
Package: angular-odata-resources Error:
Error: /home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/angular-odata-resources/angular-odata-resources-tests.ts:121:1
ERROR: 121:1 expect TypeScript@local compile error:
Type '{}' is missing the following properties from type 'IResourceClass<IMyResource>': get, query, save, update, and 3 more.
ERROR: 164:32 expect TypeScript@local compile error:
Property 'odata' does not exist on type 'unknown'.
ERROR: 170:31 expect TypeScript@local compile error:
Property 'odata' does not exist on type 'unknown'.
ERROR: 177:20 expect TypeScript@local compile error:
Parameter 's' implicitly has an 'any' type.
ERROR: 193:28 expect TypeScript@local compile error:
Property 'odata' does not exist on type 'unknown'.
ERROR: 198:38 expect TypeScript@local compile error:
Property 'odata' does not exist on type 'unknown'.
ERROR: 204:39 expect TypeScript@local compile error:
Property 'odata' does not exist on type 'unknown'.
ERROR: 208:39 expect TypeScript@local compile error:
Property 'odata' does not exist on type 'unknown'.
at testTypesVersion (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:194:15)
at async runTests (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:151:9)
Package: hapi__joi Error:
Error: /home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/hapi__joi/hapi__joi-tests.ts:1247:5
ERROR: 1247:5 expect TypeScript@local compile error:
Unused '@ts-expect-error' directive.
at testTypesVersion (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:194:15)
at async runTests (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:151:9)
Package: lodash/v3 Error:
Error: /home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/lodash/v3/lodash-tests.ts:5695:9
ERROR: 5695:9 expect TypeScript@local compile error:
Type 'Function' is not assignable to type 'SampleResult'.
Type 'Function' provides no match for the signature '(a: number, b: string): boolean'.
ERROR: 8060:9 expect TypeScript@local compile error:
Property 'a' is missing in type '{}' but required in type 'Obj'.
ERROR: 8672:9 expect TypeScript@local compile error:
Type 'unknown' is not assignable to type 'string'.
ERROR: 8674:9 expect TypeScript@local compile error:
Type 'unknown' is not assignable to type 'string'.
ERROR: 9185:9 expect TypeScript@local compile error:
Type 'unknown' is not assignable to type 'string'.
ERROR: 9188:9 expect TypeScript@local compile error:
Type 'unknown' is not assignable to type 'string'.
ERROR: 10235:9 expect TypeScript@local compile error:
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Property 'a' is missing in type '{}' but required in type '{ a: string; }'.
ERROR: 10236:9 expect TypeScript@local compile error:
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10237:9 expect TypeScript@local compile error:
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10238:9 expect TypeScript@local compile error:
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10240:9 expect TypeScript@local compile error:
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10241:9 expect TypeScript@local compile error:
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10242:9 expect TypeScript@local compile error:
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10243:9 expect TypeScript@local compile error:
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10263:9 expect TypeScript@local compile error:
Type 'LoDashImplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashImplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Property 'a' is missing in type '{}' but required in type '{ a: string; }'.
ERROR: 10264:9 expect TypeScript@local compile error:
Type 'LoDashImplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashImplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10265:9 expect TypeScript@local compile error:
Type 'LoDashImplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashImplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10266:9 expect TypeScript@local compile error:
Type 'LoDashImplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashImplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10268:9 expect TypeScript@local compile error:
Type 'LoDashImplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashImplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10269:9 expect TypeScript@local compile error:
Type 'LoDashImplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashImplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10270:9 expect TypeScript@local compile error:
Type 'LoDashImplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashImplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10271:9 expect TypeScript@local compile error:
Type 'LoDashImplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashImplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10291:9 expect TypeScript@local compile error:
Type 'LoDashExplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashExplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Property 'a' is missing in type '{}' but required in type '{ a: string; }'.
ERROR: 10292:9 expect TypeScript@local compile error:
Type 'LoDashExplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashExplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10293:9 expect TypeScript@local compile error:
Type 'LoDashExplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashExplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10294:9 expect TypeScript@local compile error:
Type 'LoDashExplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashExplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10296:9 expect TypeScript@local compile error:
Type 'LoDashExplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashExplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10297:9 expect TypeScript@local compile error:
Type 'LoDashExplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashExplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10298:9 expect TypeScript@local compile error:
Type 'LoDashExplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashExplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
ERROR: 10299:9 expect TypeScript@local compile error:
Type 'LoDashExplicitObjectWrapper<(object: { a: string; }) => unknown>' is not assignable to type 'LoDashExplicitObjectWrapper<(object: any) => { a: string; }>'.
Type '(object: { a: string; }) => unknown' is not assignable to type '(object: any) => { a: string; }'.
Type 'unknown' is not assignable to type '{ a: string; }'.
at testTypesVersion (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:194:15)
at async runTests (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:151:9)
Package: redux-actions Error:
Error: /home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/redux-actions/redux-actions-tests.ts:159:10
ERROR: 159:10 expect TypeScript@local compile error:
Parameter '_' implicitly has an 'any' type.
ERROR: 159:13 expect TypeScript@local compile error:
Parameter 'remote' implicitly has an 'any' type.
at testTypesVersion (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:194:15)
at async runTests (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:151:9)
Package: skatejs Error:
Error: /home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/skatejs/test/utils/link.ts:21:27
ERROR: 21:27 expect TypeScript@local compile error:
Argument of type 'this' is not assignable to parameter of type 'CustomElement'.
Type 'default' is missing the following properties from type 'CustomElement': connectedCallback, disconnectedCallback, attributeChangedCallback, accessKey, and 288 more.
ERROR: 28:10 expect TypeScript@local compile error:
Argument of type 'this' is not assignable to parameter of type 'CustomElement'.
ERROR: 29:10 expect TypeScript@local compile error:
Argument of type 'this' is not assignable to parameter of type 'CustomElement'.
ERROR: 30:10 expect TypeScript@local compile error:
Argument of type 'this' is not assignable to parameter of type 'CustomElement'.
at testTypesVersion (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:194:15)
at async runTests (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:151:9)
Package: enzyme Error:
Error: /home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/enzyme/enzyme-tests.tsx:145:13
ERROR: 145:13 expect TypeScript@local expected type to be:
number
got:
any
ERROR: 146:13 expect TypeScript@local expected type to be:
string
got:
any
ERROR: 161:9 expect TypeScript@local compile error:
Unused '@ts-expect-error' directive.
ERROR: 163:9 expect TypeScript@local compile error:
Unused '@ts-expect-error' directive.
ERROR: 586:13 expect TypeScript@local expected type to be:
number
got:
any
ERROR: 587:13 expect TypeScript@local expected type to be:
string
got:
any
ERROR: 602:9 expect TypeScript@local compile error:
Unused '@ts-expect-error' directive.
ERROR: 604:9 expect TypeScript@local compile error:
Unused '@ts-expect-error' directive.
at testTypesVersion (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:194:15)
at async runTests (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:151:9)
Package: papaparse Error:
Error: /home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/papaparse/papaparse-tests.ts:114:9
ERROR: 114:9 expect TypeScript@local expected type to be:
LocalFile
got:
File
ERROR: 137:9 expect TypeScript@local expected type to be:
LocalFile
got:
File
ERROR: 156:9 expect TypeScript@local expected type to be:
LocalFile
got:
File
at testTypesVersion (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:194:15)
at async runTests (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:151:9)
Errors that changed between main and the branch:
Package: ramda Main error:
Error: /home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/ramda/test/find-tests.ts:5:30
ERROR: 5:30 expect TypeScript@local compile error:
Argument of type '{ a: number; }[]' is not assignable to parameter of type 'readonly Record<2, any>[]'.
Property '2' is missing in type '{ a: number; }' but required in type 'Record<2, any>'.
ERROR: 6:30 expect TypeScript@local compile error:
Argument of type '{ a: number; }[]' is not assignable to parameter of type 'readonly Record<4, any>[]'.
Property '4' is missing in type '{ a: number; }' but required in type 'Record<4, any>'.
/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/ramda/test/findIndex-tests.ts:5:35
ERROR: 5:35 expect TypeScript@local compile error:
Argument of type '{ a: number; }[]' is not assignable to parameter of type 'readonly Record<2, any>[]'.
Property '2' is missing in type '{ a: number; }' but required in type 'Record<2, any>'.
ERROR: 6:35 expect TypeScript@local compile error:
Argument of type '{ a: number; }[]' is not assignable to parameter of type 'readonly Record<4, any>[]'.
Property '4' is missing in type '{ a: number; }' but required in type 'Record<4, any>'.
/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/ramda/test/findLast-tests.ts:8:34
ERROR: 8:34 expect TypeScript@local compile error:
Argument of type '{ a: number; b: number; }[]' is not assignable to parameter of type 'readonly Record<1, any>[]'.
Property '1' is missing in type '{ a: number; b: number; }' but required in type 'Record<1, any>'.
ERROR: 9:34 expect TypeScript@local compile error:
Argument of type '{ a: number; b: number; }[]' is not assignable to parameter of type 'readonly Record<4, any>[]'.
Property '4' is missing in type '{ a: number; b: number; }' but required in type 'Record<4, any>'.
/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/ramda/test/findLastIndex-tests.ts:8:39
ERROR: 8:39 expect TypeScript@local compile error:
Argument of type '{ a: number; b: number; }[]' is not assignable to parameter of type 'readonly Record<1, any>[]'.
Property '1' is missing in type '{ a: number; b: number; }' but required in type 'Record<1, any>'.
ERROR: 9:39 expect TypeScript@local compile error:
Argument of type '{ a: number; b: number; }[]' is not assignable to parameter of type 'readonly Record<4, any>[]'.
Property '4' is missing in type '{ a: number; b: number; }' but required in type 'Record<4, any>'.
/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/ramda/test/propEq-tests.ts:10:11
ERROR: 10:11 expect TypeScript@local compile error:
Type '(obj: Record<"bar", any>) => boolean' is not assignable to type '(obj: Record<"foo", "bar">) => boolean'.
Types of parameters 'obj' and 'obj' are incompatible.
Property 'bar' is missing in type 'Record<"foo", "bar">' but required in type 'Record<"bar", any>'.
ERROR: 12:11 expect TypeScript@local compile error:
Type '(obj: Record<5, any>) => boolean' is not assignable to type '(obj: Record<"baz", number>) => boolean'.
Types of parameters 'obj' and 'obj' are incompatible.
Property '5' is missing in type 'Record<"baz", number>' but required in type 'Record<5, any>'.
ERROR: 14:11 expect TypeScript@local compile error:
Type '(obj: Record<"qwerty", any>) => boolean' is not assignable to type '(obj: Record<number, string>) => boolean'.
Types of parameters 'obj' and 'obj' are incompatible.
Property 'qwerty' is missing in type 'Record<number, string>' but required in type 'Record<"qwerty", any>'.
ERROR: 29:22 expect TypeScript@local compile error:
Argument of type 'Obj' is not assignable to parameter of type 'Record<1, any>'.
Property '1' is missing in type 'Obj' but required in type 'Record<1, any>'.
ERROR: 30:22 expect TypeScript@local compile error:
Argument of type 'Obj' is not assignable to parameter of type 'Record<4, any>'.
Property '4' is missing in type 'Obj' but required in type 'Record<4, any>'.
ERROR: 43:28 expect TypeScript@local compile error:
Argument of type 'A' is not assignable to parameter of type 'Record<"", any>'.
Property '""' is missing in type 'A' but required in type 'Record<"", any>'.
at testTypesVersion (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:194:15)
at async runTests (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:151:9)
Branch error:
Error: /home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/ramda/test/find-tests.ts:5:30
ERROR: 5:30 expect TypeScript@local compile error:
Argument of type '{ a: number; }[]' is not assignable to parameter of type 'readonly Record<2, any>[]'.
Property '2' is missing in type '{ a: number; }' but required in type 'Record<2, any>'.
ERROR: 6:30 expect TypeScript@local compile error:
Argument of type '{ a: number; }[]' is not assignable to parameter of type 'readonly Record<4, any>[]'.
Property '4' is missing in type '{ a: number; }' but required in type 'Record<4, any>'.
/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/ramda/test/findIndex-tests.ts:5:35
ERROR: 5:35 expect TypeScript@local compile error:
Argument of type '{ a: number; }[]' is not assignable to parameter of type 'readonly Record<2, any>[]'.
Property '2' is missing in type '{ a: number; }' but required in type 'Record<2, any>'.
ERROR: 6:35 expect TypeScript@local compile error:
Argument of type '{ a: number; }[]' is not assignable to parameter of type 'readonly Record<4, any>[]'.
Property '4' is missing in type '{ a: number; }' but required in type 'Record<4, any>'.
/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/ramda/test/findLast-tests.ts:8:34
ERROR: 8:34 expect TypeScript@local compile error:
Argument of type '{ a: number; b: number; }[]' is not assignable to parameter of type 'readonly Record<1, any>[]'.
Property '1' is missing in type '{ a: number; b: number; }' but required in type 'Record<1, any>'.
ERROR: 9:34 expect TypeScript@local compile error:
Argument of type '{ a: number; b: number; }[]' is not assignable to parameter of type 'readonly Record<4, any>[]'.
Property '4' is missing in type '{ a: number; b: number; }' but required in type 'Record<4, any>'.
/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/ramda/test/findLastIndex-tests.ts:8:39
ERROR: 8:39 expect TypeScript@local compile error:
Argument of type '{ a: number; b: number; }[]' is not assignable to parameter of type 'readonly Record<1, any>[]'.
Property '1' is missing in type '{ a: number; b: number; }' but required in type 'Record<1, any>'.
ERROR: 9:39 expect TypeScript@local compile error:
Argument of type '{ a: number; b: number; }[]' is not assignable to parameter of type 'readonly Record<4, any>[]'.
Property '4' is missing in type '{ a: number; b: number; }' but required in type 'Record<4, any>'.
/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/ramda/test/indexBy-tests.ts:16:16
ERROR: 16:16 expect TypeScript@local compile error:
This expression is not callable.
Type '{ [x: string]: { id: string; }; }' has no call signatures.
ERROR: 16:42 expect TypeScript@local compile error:
No overload matches this call.
Overload 1 of 4, '(fn: (a: T) => string | number): <T>(list: readonly T[]) => { [x: string]: T; [x: number]: T; }', gave the following error.
Argument of type '<T>(value: T) => Prop<T, "id">' is not assignable to parameter of type '(a: T) => string | number'.
Overload 2 of 4, '(fn: (a: T) => string | number | undefined): <T>(list: readonly T[]) => { [x: string]: T | undefined; [x: number]: T | undefined; }', gave the following error.
Argument of type '<T>(value: T) => Prop<T, "id">' is not assignable to parameter of type '(a: T) => string | number | undefined'.
ERROR: 17:16 expect TypeScript@local compile error:
This expression is not callable.
Type '{ [x: string]: unknown; }' has no call signatures.
ERROR: 17:26 expect TypeScript@local compile error:
No overload matches this call.
Overload 1 of 4, '(fn: (a: T) => string | number): <T>(list: readonly T[]) => { [x: string]: T; [x: number]: T; }', gave the following error.
Argument of type '<T>(value: T) => Prop<T, "id">' is not assignable to parameter of type '(a: T) => string | number'.
Overload 2 of 4, '(fn: (a: T) => string | number | undefined): <T>(list: readonly T[]) => { [x: string]: T | undefined; [x: number]: T | undefined; }', gave the following error.
Argument of type '<T>(value: T) => Prop<T, "id">' is not assignable to parameter of type '(a: T) => string | number | undefined'.
ERROR: 18:16 expect TypeScript@local compile error:
This expression is not callable.
Type '{ [x: string]: { id: string; }; }' has no call signatures.
ERROR: 18:42 expect TypeScript@local compile error:
No overload matches this call.
Overload 1 of 4, '(fn: (a: T) => string | number): <T>(list: readonly T[]) => { [x: string]: T; [x: number]: T; }', gave the following error.
Argument of type '<T>(value: T) => Prop<T, "id">' is not assignable to parameter of type '(a: T) => string | number'.
Overload 2 of 4, '(fn: (a: T) => string | number | undefined): <T>(list: readonly T[]) => { [x: string]: T | undefined; [x: number]: T | undefined; }', gave the following error.
Argument of type '<T>(value: T) => Prop<T, "id">' is not assignable to parameter of type '(a: T) => string | number | undefined'.
/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/ramda/test/prop-tests.ts:108:5
ERROR: 108:5 expect TypeScript@local expected type to be:
number
got:
string
/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/DefinitelyTyped/types/ramda/test/propEq-tests.ts:10:11
ERROR: 10:11 expect TypeScript@local compile error:
Type '(obj: Record<"bar", any>) => boolean' is not assignable to type '(obj: Record<"foo", "bar">) => boolean'.
Types of parameters 'obj' and 'obj' are incompatible.
Property 'bar' is missing in type 'Record<"foo", "bar">' but required in type 'Record<"bar", any>'.
ERROR: 12:11 expect TypeScript@local compile error:
Type '(obj: Record<5, any>) => boolean' is not assignable to type '(obj: Record<"baz", number>) => boolean'.
Types of parameters 'obj' and 'obj' are incompatible.
Property '5' is missing in type 'Record<"baz", number>' but required in type 'Record<5, any>'.
ERROR: 14:11 expect TypeScript@local compile error:
Type '(obj: Record<"qwerty", any>) => boolean' is not assignable to type '(obj: Record<number, string>) => boolean'.
Types of parameters 'obj' and 'obj' are incompatible.
Property 'qwerty' is missing in type 'Record<number, string>' but required in type 'Record<"qwerty", any>'.
ERROR: 29:22 expect TypeScript@local compile error:
Argument of type 'Obj' is not assignable to parameter of type 'Record<1, any>'.
Property '1' is missing in type 'Obj' but required in type 'Record<1, any>'.
ERROR: 30:22 expect TypeScript@local compile error:
Argument of type 'Obj' is not assignable to parameter of type 'Record<4, any>'.
Property '4' is missing in type 'Obj' but required in type 'Record<4, any>'.
ERROR: 43:28 expect TypeScript@local compile error:
Argument of type 'A' is not assignable to parameter of type 'Record<"", any>'.
Property '""' is missing in type 'A' but required in type 'Record<"", any>'.
at testTypesVersion (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:194:15)
at async runTests (/home/vsts/work/1/s/DefinitelyTyped-tools/packages/dtslint-runner/node_modules/@definitelytyped/dtslint/dist/index.js:151:9)
@weswigham Here are the results of running the top-repos suite comparing main and refs/pull/54047/merge:
Something interesting changed - please have a look.
Details
microsoft/vscode
5 of 53 projects failed to build with the old tsc and were ignored
src/tsconfig.tsec.json
-
error TS2345: Argument of type '(result: ISearchEngineSuccess) => (ISearchEngineSuccess | IRawFileMatch[])[]' is not assignable to parameter of type '(value: ISearchEngineSuccess) => [ISearchEngineSuccess, IRawFileMatch[]] | PromiseLike<[ISearchEngineSuccess, IRawFileMatch[]]>'.
react-hook-form/react-hook-form
2 of 3 projects failed to build with the old tsc and were ignored
tsconfig.json
-
error TS2322: Type '(data: { checkbox: [{ test: string; }, { test1: string; }]; }) => { errors: { checkbox?: { test1?: { type: string; message: string; } | undefined; test?: { type: string; message: string; } | undefined; }[] | undefined; }; values: {}; }' is not assignable to type 'Resolver<{ checkbox: [{ test: string; }, { test1: string; }]; }, any>'.
vercel/swr
4 of 12 projects failed to build with the old tsc and were ignored
test/type/tsconfig.json
-
error TS2769: No overload matches this call. -
error TS2345: Argument of type 'true' is not assignable to parameter of type 'false'.
#26349 is once again up to date with main, since that approach doesn't break the world and is much more familiar to users of Flow, F#, and Rust.
@weswigham since partial inference by default seems to be to be off the table - do you envision any way for library authors to opt-into that in the future in their signature declarations?