Skip to content

Conversation

@Andarist
Copy link
Contributor

fixes #53267

@typescript-bot typescript-bot added the For Backlog Bug PRs that fix a backlog bug label May 22, 2023
@sandersn sandersn requested a review from ahejlsberg June 1, 2023 23:24
Copy link
Member

@sandersn sandersn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Question about a diff in an existing test.

// Some narrowings may be invalidated due to later assignments.
let s: string;
s = this.x;
~
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would expect this to match s = x on the next line, as it does in the previous diff. Why does the error go away for s = this.x here, but not for s = x?
For that matter, why does assignment in the else branch prevent narrowing in the if branch?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's an assignment to x in the else branch that causes x to viewed as mutable and therefore it isn't narrowed. There's a comment to that effect in the test, so not unexpected.

@sandersn
Copy link
Member

sandersn commented Jun 1, 2023

@typescript-bot test this
@typescript-bot test top100
@typescript-bot user test this
@typescript-bot user test tsserver
@typescript-bot test tsserver top100
@typescript-bot run dt
@typescript-bot perf test this
@typescript-bot pack this

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 1, 2023

Heya @sandersn, I've started to run the perf test suite on this PR at c6ebde7. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 1, 2023

Heya @sandersn, I've started to run the tarball bundle task on this PR at c6ebde7. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 1, 2023

Heya @sandersn, I've started to run the diff-based user code test suite on this PR at c6ebde7. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 1, 2023

Heya @sandersn, I've started to run the diff-based top-repos suite on this PR at c6ebde7. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 1, 2023

Heya @sandersn, I've started to run the parallelized Definitely Typed test suite on this PR at c6ebde7. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 1, 2023

Heya @sandersn, I've started to run the diff-based top-repos suite (tsserver) on this PR at c6ebde7. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 1, 2023

Heya @sandersn, I've started to run the extended test suite on this PR at c6ebde7. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 1, 2023

Heya @sandersn, I've started to run the diff-based user code test suite (tsserver) on this PR at c6ebde7. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 1, 2023

Hey @sandersn, 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/155307/artifacts?artifactName=tgz&fileId=3D426879F5A837F7F2E76D8218A274523255F1AF4CCA69ADD681B6C50F62F68E02&fileName=/typescript-5.2.0-insiders.20230601.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]".;

// Some narrowings may be invalidated due to later assignments.
let s: string;
s = this.x;
~
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's an assignment to x in the else branch that causes x to viewed as mutable and therefore it isn't narrowed. There's a comment to that effect in the test, so not unexpected.

@sandersn sandersn merged commit 2fb0267 into microsoft:main Jun 1, 2023
@typescript-bot
Copy link
Collaborator

@sandersn Here are the results of running the user test suite comparing main and refs/pull/54347/merge:

Everything looks good!

@typescript-bot
Copy link
Collaborator

@sandersn Here are the results of running the top-repos suite comparing main and refs/pull/54347/merge:

Everything looks good!

@typescript-bot
Copy link
Collaborator

@sandersn
The results of the perf run you requested are in!

Here they are:

Compiler

Comparison Report - main..54347
Metric main 54347 Delta Best Worst p-value
Angular - node (v18.10.0, x64)
Memory used 365,820k (± 0.01%) 365,829k (± 0.00%) ~ 365,802k 365,844k p=0.628 n=6
Parse Time 3.43s (± 0.54%) 3.40s (± 0.63%) -0.03s (- 0.87%) 3.37s 3.43s p=0.043 n=6
Bind Time 1.12s (± 0.36%) 1.12s (± 0.75%) ~ 1.11s 1.13s p=0.097 n=6
Check Time 8.75s (± 0.75%) 8.77s (± 0.30%) ~ 8.75s 8.82s p=0.574 n=6
Emit Time 7.45s (± 0.60%) 7.41s (± 0.18%) -0.04s (- 0.58%) 7.39s 7.42s p=0.043 n=6
Total Time 20.75s (± 0.50%) 20.70s (± 0.07%) ~ 20.68s 20.72s p=0.226 n=6
Compiler-Unions - node (v18.10.0, x64)
Memory used 192,142k (± 1.22%) 193,051k (± 1.49%) ~ 191,156k 196,806k p=0.689 n=6
Parse Time 1.52s (± 1.15%) 1.50s (± 1.42%) -0.03s (- 1.64%) 1.46s 1.52s p=0.043 n=6
Bind Time 0.77s (± 0.00%) 0.77s (± 0.53%) ~ 0.77s 0.78s p=0.405 n=6
Check Time 9.50s (± 0.46%) 9.44s (± 0.37%) -0.06s (- 0.61%) 9.39s 9.47s p=0.029 n=6
Emit Time 2.73s (± 0.33%) 2.74s (± 1.72%) ~ 2.68s 2.82s p=0.466 n=6
Total Time 14.52s (± 0.37%) 14.45s (± 0.28%) ~ 14.40s 14.52s p=0.053 n=6
Monaco - node (v18.10.0, x64)
Memory used 346,605k (± 0.01%) 346,623k (± 0.01%) ~ 346,578k 346,688k p=0.378 n=6
Parse Time 2.56s (± 0.81%) 2.58s (± 1.06%) ~ 2.55s 2.62s p=0.257 n=6
Bind Time 1.01s (± 0.75%) 1.00s (± 1.60%) ~ 0.98s 1.03s p=0.196 n=6
Check Time 7.16s (± 0.66%) 7.14s (± 0.25%) ~ 7.12s 7.16s p=0.462 n=6
Emit Time 4.26s (± 1.18%) 4.25s (± 0.89%) ~ 4.21s 4.31s p=0.808 n=6
Total Time 14.99s (± 0.53%) 14.97s (± 0.50%) ~ 14.88s 15.07s p=0.873 n=6
TFS - node (v18.10.0, x64)
Memory used 300,608k (± 0.01%) 300,614k (± 0.00%) ~ 300,602k 300,632k p=0.378 n=6
Parse Time 2.08s (± 0.95%) 2.05s (± 1.36%) ~ 2.02s 2.10s p=0.168 n=6
Bind Time 1.14s (± 0.91%) 1.14s (± 0.72%) ~ 1.13s 1.15s p=0.932 n=6
Check Time 6.64s (± 0.47%) 6.60s (± 0.42%) ~ 6.57s 6.63s p=0.107 n=6
Emit Time 3.90s (± 1.94%) 3.88s (± 0.35%) ~ 3.87s 3.90s p=0.467 n=6
Total Time 13.75s (± 0.63%) 13.67s (± 0.26%) ~ 13.63s 13.72s p=0.126 n=6
material-ui - node (v18.10.0, x64)
Memory used 481,722k (± 0.01%) 481,746k (± 0.01%) ~ 481,693k 481,799k p=0.471 n=6
Parse Time 3.11s (± 0.47%) 3.11s (± 0.55%) ~ 3.09s 3.14s p=1.000 n=6
Bind Time 0.92s (± 1.15%) 0.91s (± 1.08%) ~ 0.90s 0.92s p=0.673 n=6
Check Time 16.78s (± 0.16%) 16.77s (± 0.48%) ~ 16.69s 16.92s p=0.332 n=6
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) ~ 0.00s 0.00s p=1.000 n=6
Total Time 20.80s (± 0.16%) 20.79s (± 0.44%) ~ 20.71s 20.96s p=0.423 n=6
xstate - node (v18.10.0, x64)
Memory used 563,033k (± 0.02%) 563,061k (± 0.02%) ~ 562,935k 563,241k p=0.575 n=6
Parse Time 3.81s (± 0.68%) 3.83s (± 0.47%) ~ 3.80s 3.85s p=0.327 n=6
Bind Time 1.65s (± 0.92%) 1.63s (± 0.60%) ~ 1.62s 1.64s p=0.059 n=6
Check Time 2.81s (± 0.37%) 2.81s (± 0.80%) ~ 2.77s 2.83s p=0.625 n=6
Emit Time 0.08s (± 0.00%) 0.08s (± 0.00%) ~ 0.08s 0.08s p=1.000 n=6
Total Time 8.36s (± 0.33%) 8.34s (± 0.40%) ~ 8.28s 8.37s p=0.332 n=6
Angular - node (v16.17.1, x64)
Memory used 365,235k (± 0.01%) 365,243k (± 0.01%) ~ 365,142k 365,285k p=0.471 n=6
Parse Time 3.56s (± 0.14%) 3.56s (± 0.35%) ~ 3.54s 3.57s p=0.931 n=6
Bind Time 1.18s (± 0.69%) 1.18s (± 0.54%) ~ 1.17s 1.19s p=0.432 n=6
Check Time 9.56s (± 0.34%) 9.53s (± 0.26%) ~ 9.49s 9.56s p=0.253 n=6
Emit Time 7.92s (± 0.73%) 7.95s (± 0.57%) ~ 7.87s 7.99s p=0.335 n=6
Total Time 22.22s (± 0.35%) 22.22s (± 0.21%) ~ 22.15s 22.27s p=1.000 n=6
Compiler-Unions - node (v16.17.1, x64)
Memory used 193,493k (± 0.71%) 193,506k (± 0.74%) ~ 192,862k 196,418k p=0.936 n=6
Parse Time 1.60s (± 1.44%) 1.61s (± 0.85%) ~ 1.58s 1.62s p=0.803 n=6
Bind Time 0.83s (± 0.66%) 0.83s (± 0.49%) ~ 0.82s 0.83s p=0.282 n=6
Check Time 10.25s (± 0.89%) 10.15s (± 0.76%) ~ 10.01s 10.24s p=0.126 n=6
Emit Time 3.00s (± 0.62%) 3.00s (± 1.20%) ~ 2.97s 3.06s p=0.935 n=6
Total Time 15.67s (± 0.65%) 15.59s (± 0.46%) ~ 15.47s 15.66s p=0.261 n=6
Monaco - node (v16.17.1, x64)
Memory used 345,885k (± 0.01%) 345,880k (± 0.01%) ~ 345,855k 345,904k p=0.873 n=6
Parse Time 2.73s (± 0.28%) 2.73s (± 0.51%) ~ 2.71s 2.75s p=0.212 n=6
Bind Time 1.09s (± 0.00%) 1.09s (± 1.11%) ~ 1.08s 1.11s p=0.121 n=6
Check Time 7.85s (± 0.61%) 7.83s (± 0.36%) ~ 7.78s 7.86s p=0.572 n=6
Emit Time 4.49s (± 0.79%) 4.44s (± 0.55%) -0.05s (- 1.04%) 4.40s 4.46s p=0.043 n=6
Total Time 16.15s (± 0.40%) 16.08s (± 0.35%) ~ 15.97s 16.13s p=0.077 n=6
TFS - node (v16.17.1, x64)
Memory used 299,955k (± 0.01%) 299,959k (± 0.00%) ~ 299,947k 299,986k p=0.423 n=6
Parse Time 2.17s (± 0.69%) 2.17s (± 0.94%) ~ 2.15s 2.21s p=0.681 n=6
Bind Time 1.23s (± 1.11%) 1.24s (± 0.44%) ~ 1.23s 1.24s p=0.663 n=6
Check Time 7.27s (± 0.60%) 7.27s (± 0.44%) ~ 7.22s 7.32s p=0.936 n=6
Emit Time 4.36s (± 0.63%) 4.33s (± 0.84%) ~ 4.29s 4.39s p=0.227 n=6
Total Time 15.03s (± 0.51%) 15.01s (± 0.34%) ~ 14.95s 15.07s p=0.630 n=6
material-ui - node (v16.17.1, x64)
Memory used 480,995k (± 0.00%) 481,001k (± 0.00%) ~ 480,989k 481,007k p=0.378 n=6
Parse Time 3.26s (± 0.47%) 3.26s (± 0.26%) ~ 3.24s 3.26s p=1.000 n=6
Bind Time 0.94s (± 0.80%) 0.94s (± 0.80%) ~ 0.93s 0.95s p=1.000 n=6
Check Time 17.83s (± 0.64%) 17.83s (± 1.18%) ~ 17.65s 18.19s p=0.688 n=6
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) ~ 0.00s 0.00s p=1.000 n=6
Total Time 22.03s (± 0.48%) 22.03s (± 0.94%) ~ 21.84s 22.38s p=0.689 n=6
xstate - node (v16.17.1, x64)
Memory used 560,679k (± 0.02%) 560,672k (± 0.02%) ~ 560,528k 560,798k p=0.936 n=6
Parse Time 4.01s (± 0.26%) 4.02s (± 0.13%) ~ 4.01s 4.02s p=0.774 n=6
Bind Time 1.76s (± 0.46%) 1.76s (± 0.98%) ~ 1.73s 1.78s p=0.677 n=6
Check Time 3.06s (± 0.45%) 3.04s (± 0.68%) ~ 3.02s 3.08s p=0.221 n=6
Emit Time 0.09s (± 4.62%) 0.09s (± 0.00%) ~ 0.09s 0.09s p=0.405 n=6
Total Time 8.91s (± 0.23%) 8.91s (± 0.28%) ~ 8.87s 8.94s p=0.808 n=6
Angular - node (v14.21.3, x64)
Memory used 359,201k (± 0.01%) 359,208k (± 0.01%) ~ 359,182k 359,235k p=0.630 n=6
Parse Time 3.66s (± 0.72%) 3.66s (± 0.35%) ~ 3.64s 3.67s p=0.413 n=6
Bind Time 1.22s (± 0.62%) 1.22s (± 0.42%) ~ 1.21s 1.22s p=0.784 n=6
Check Time 10.01s (± 0.41%) 10.00s (± 0.29%) ~ 9.96s 10.04s p=0.419 n=6
Emit Time 8.40s (± 1.15%) 8.34s (± 0.73%) ~ 8.27s 8.44s p=0.261 n=6
Total Time 23.29s (± 0.36%) 23.22s (± 0.35%) ~ 23.14s 23.36s p=0.173 n=6
Compiler-Unions - node (v14.21.3, x64)
Memory used 188,289k (± 0.01%) 188,287k (± 0.01%) ~ 188,269k 188,309k p=0.748 n=6
Parse Time 1.63s (± 0.64%) 1.62s (± 0.25%) ~ 1.61s 1.62s p=0.209 n=6
Bind Time 0.86s (± 1.41%) 0.85s (± 0.61%) ~ 0.84s 0.85s p=0.070 n=6
Check Time 10.32s (± 0.33%) 10.31s (± 0.47%) ~ 10.22s 10.37s p=0.683 n=6
Emit Time 3.14s (± 0.39%) 3.12s (± 0.71%) ~ 3.10s 3.16s p=0.187 n=6
Total Time 15.94s (± 0.31%) 15.90s (± 0.39%) ~ 15.79s 15.96s p=0.462 n=6
Monaco - node (v14.21.3, x64)
Memory used 341,032k (± 0.00%) 341,015k (± 0.01%) ~ 340,952k 341,058k p=0.423 n=6
Parse Time 2.80s (± 0.44%) 2.81s (± 0.43%) ~ 2.79s 2.82s p=0.868 n=6
Bind Time 1.11s (± 0.73%) 1.11s (± 0.68%) ~ 1.10s 1.12s p=0.306 n=6
Check Time 8.20s (± 0.65%) 8.19s (± 0.30%) ~ 8.16s 8.23s p=0.747 n=6
Emit Time 4.68s (± 0.29%) 4.69s (± 0.78%) ~ 4.64s 4.73s p=0.870 n=6
Total Time 16.80s (± 0.32%) 16.79s (± 0.34%) ~ 16.73s 16.88s p=0.630 n=6
TFS - node (v14.21.3, x64)
Memory used 295,137k (± 0.00%) 295,134k (± 0.00%) ~ 295,128k 295,140k p=0.520 n=6
Parse Time 2.41s (± 1.11%) 2.40s (± 0.72%) ~ 2.38s 2.42s p=0.683 n=6
Bind Time 1.07s (± 0.76%) 1.06s (± 1.58%) ~ 1.04s 1.08s p=0.677 n=6
Check Time 7.61s (± 0.51%) 7.58s (± 0.32%) ~ 7.55s 7.61s p=0.415 n=6
Emit Time 4.34s (± 0.94%) 4.32s (± 0.86%) ~ 4.26s 4.36s p=0.686 n=6
Total Time 15.42s (± 0.56%) 15.37s (± 0.47%) ~ 15.23s 15.42s p=0.374 n=6
material-ui - node (v14.21.3, x64)
Memory used 476,585k (± 0.00%) 476,563k (± 0.01%) ~ 476,521k 476,612k p=0.298 n=6
Parse Time 3.34s (± 0.54%) 3.33s (± 0.58%) ~ 3.31s 3.36s p=0.287 n=6
Bind Time 1.00s (± 0.54%) 1.00s (± 0.75%) ~ 0.99s 1.01s p=0.137 n=6
Check Time 18.71s (± 0.15%) 18.69s (± 0.41%) ~ 18.57s 18.80s p=0.521 n=6
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) ~ 0.00s 0.00s p=1.000 n=6
Total Time 23.06s (± 0.14%) 23.02s (± 0.32%) ~ 22.89s 23.11s p=0.378 n=6
xstate - node (v14.21.3, x64)
Memory used 549,625k (± 0.00%) 549,629k (± 0.01%) ~ 549,573k 549,669k p=0.810 n=6
Parse Time 4.23s (± 0.73%) 4.22s (± 0.46%) ~ 4.19s 4.24s p=0.572 n=6
Bind Time 1.64s (± 2.70%) 1.61s (± 2.10%) ~ 1.58s 1.66s p=0.290 n=6
Check Time 3.17s (± 0.35%) 3.16s (± 0.58%) ~ 3.14s 3.18s p=0.235 n=6
Emit Time 0.09s (± 5.53%) 0.09s (± 0.00%) ~ 0.09s 0.09s p=0.174 n=6
Total Time 9.14s (± 0.54%) 9.09s (± 0.36%) ~ 9.05s 9.14s p=0.148 n=6
System
Machine Namets-ci-ubuntu
Platformlinux 5.4.0-148-generic
Architecturex64
Available Memory16 GB
Available Memory15 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v18.10.0, x64)
  • node (v16.17.1, x64)
  • node (v14.21.3, x64)
Scenarios
  • 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 54347 6
Baseline main 6

TSServer

Comparison Report - main..54347
Metric main 54347 Delta Best Worst p-value
Compiler-UnionsTSServer - node (v18.10.0, x64)
Req 1 - updateOpen 2,540ms (± 0.30%) 2,536ms (± 0.70%) ~ 2,509ms 2,555ms p=1.000 n=6
Req 2 - geterr 5,560ms (± 0.52%) 5,528ms (± 1.76%) ~ 5,332ms 5,587ms p=0.810 n=6
Req 3 - references 336ms (± 0.93%) 336ms (± 0.82%) ~ 331ms 338ms p=0.935 n=6
Req 4 - navto 286ms (± 0.69%) 287ms (± 1.03%) ~ 284ms 292ms p=0.413 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 85ms (± 0.89%) 84ms (± 4.09%) ~ 77ms 86ms p=0.933 n=6
CompilerTSServer - node (v18.10.0, x64)
Req 1 - updateOpen 2,649ms (± 0.57%) 2,654ms (± 1.04%) ~ 2,621ms 2,693ms p=0.873 n=6
Req 2 - geterr 4,265ms (± 1.76%) 4,296ms (± 0.35%) ~ 4,278ms 4,322ms p=0.470 n=6
Req 3 - references 350ms (± 0.51%) 349ms (± 0.76%) ~ 344ms 351ms p=0.324 n=6
Req 4 - navto 293ms (± 0.85%) 291ms (± 0.52%) ~ 289ms 293ms p=0.506 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 66ms (± 5.52%) 68ms (± 5.05%) ~ 63ms 71ms p=0.368 n=6
xstateTSServer - node (v18.10.0, x64)
Req 1 - updateOpen 3,083ms (± 0.46%) 3,065ms (± 0.40%) ~ 3,049ms 3,085ms p=0.053 n=6
Req 2 - geterr 1,563ms (± 1.11%) 1,564ms (± 1.04%) ~ 1,542ms 1,581ms p=1.000 n=6
Req 3 - references 114ms (± 1.17%) 114ms (± 1.32%) ~ 113ms 116ms p=0.588 n=6
Req 4 - navto 359ms (± 0.14%) 359ms (± 0.27%) ~ 358ms 360ms p=0.931 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 372ms (± 1.95%) 383ms (± 0.30%) +12ms (+ 3.09%) 382ms 385ms p=0.036 n=6
Compiler-UnionsTSServer - node (v16.17.1, x64)
Req 1 - updateOpen 2,662ms (± 0.56%) 2,652ms (± 0.47%) ~ 2,634ms 2,666ms p=0.199 n=6
Req 2 - geterr 6,034ms (± 0.55%) 6,008ms (± 0.53%) ~ 5,959ms 6,042ms p=0.298 n=6
Req 3 - references 352ms (± 0.73%) 352ms (± 0.66%) ~ 349ms 355ms p=0.808 n=6
Req 4 - navto 291ms (± 1.34%) 288ms (± 0.92%) ~ 286ms 293ms p=0.055 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 93ms (± 0.55%) 92ms (± 0.82%) -1ms (- 1.25%) 91ms 93ms p=0.020 n=6
CompilerTSServer - node (v16.17.1, x64)
Req 1 - updateOpen 2,831ms (± 0.96%) 2,822ms (± 0.37%) ~ 2,803ms 2,832ms p=0.688 n=6
Req 2 - geterr 4,662ms (± 0.22%) 4,649ms (± 0.45%) ~ 4,626ms 4,682ms p=0.173 n=6
Req 3 - references 365ms (± 0.74%) 363ms (± 0.47%) ~ 360ms 365ms p=0.256 n=6
Req 4 - navto 286ms (± 1.15%) 287ms (± 0.31%) ~ 286ms 288ms p=0.806 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 (± 0.61%) 67ms (± 0.77%) ~ 67ms 68ms p=0.595 n=6
xstateTSServer - node (v16.17.1, x64)
Req 1 - updateOpen 3,206ms (± 0.47%) 3,210ms (± 0.29%) ~ 3,195ms 3,218ms p=0.810 n=6
Req 2 - geterr 1,737ms (± 1.02%) 1,740ms (± 1.11%) ~ 1,712ms 1,762ms p=1.000 n=6
Req 3 - references 123ms (± 2.46%) 125ms (± 6.60%) ~ 120ms 142ms p=1.000 n=6
Req 4 - navto 341ms (± 0.26%) 343ms (± 0.80%) ~ 341ms 348ms p=0.209 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 409ms (± 1.64%) 408ms (± 1.37%) ~ 403ms 417ms p=0.520 n=6
Compiler-UnionsTSServer - node (v14.21.3, x64)
Req 1 - updateOpen 2,803ms (± 0.60%) 2,786ms (± 0.22%) ~ 2,777ms 2,793ms p=0.109 n=6
Req 2 - geterr 6,218ms (± 0.42%) 6,197ms (± 0.81%) ~ 6,151ms 6,264ms p=0.378 n=6
Req 3 - references 363ms (± 0.53%) 363ms (± 0.90%) ~ 359ms 368ms p=0.686 n=6
Req 4 - navto 288ms (± 0.36%) 288ms (± 0.26%) ~ 287ms 289ms p=0.437 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 103ms (± 2.07%) 103ms (± 0.61%) ~ 102ms 104ms p=0.236 n=6
CompilerTSServer - node (v14.21.3, x64)
Req 1 - updateOpen 2,967ms (± 0.71%) 2,958ms (± 0.50%) ~ 2,937ms 2,979ms p=0.261 n=6
Req 2 - geterr 4,553ms (± 0.56%) 4,538ms (± 0.92%) ~ 4,470ms 4,577ms p=0.575 n=6
Req 3 - references 375ms (± 0.46%) 375ms (± 0.62%) ~ 371ms 378ms p=1.000 n=6
Req 4 - navto 298ms (± 0.35%) 297ms (± 0.50%) ~ 294ms 298ms p=0.063 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 77ms (± 3.02%) 75ms (± 1.08%) -2ms (- 2.59%) 74ms 76ms p=0.026 n=6
xstateTSServer - node (v14.21.3, x64)
Req 1 - updateOpen 3,489ms (± 1.61%) 3,524ms (± 0.53%) ~ 3,491ms 3,543ms p=0.378 n=6
Req 2 - geterr 1,846ms (± 0.62%) 1,848ms (± 0.35%) ~ 1,835ms 1,854ms p=0.936 n=6
Req 3 - references 149ms (± 8.00%) 153ms (± 7.46%) ~ 137ms 161ms p=0.627 n=6
Req 4 - navto 394ms (± 1.12%) 396ms (± 1.41%) ~ 390ms 405ms p=0.469 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 428ms (± 1.16%) 431ms (± 0.45%) ~ 428ms 433ms p=0.333 n=6
System
Machine Namets-ci-ubuntu
Platformlinux 5.4.0-148-generic
Architecturex64
Available Memory16 GB
Available Memory15 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v18.10.0, x64)
  • node (v16.17.1, x64)
  • node (v14.21.3, x64)
Scenarios
  • 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 54347 6
Baseline main 6

Startup

Comparison Report - main..54347
Metric main 54347 Delta Best Worst p-value
tsc-startup - node (v16.17.1, x64)
Execution time 141.71ms (± 0.18%) 141.91ms (± 0.18%) +0.19ms (+ 0.14%) 141.05ms 144.56ms p=0.000 n=600
tsserver-startup - node (v16.17.1, x64)
Execution time 220.93ms (± 0.16%) 221.16ms (± 0.16%) +0.23ms (+ 0.10%) 220.13ms 224.95ms p=0.000 n=600
tsserverlibrary-startup - node (v16.17.1, x64)
Execution time 222.10ms (± 0.15%) 222.15ms (± 0.14%) +0.05ms (+ 0.02%) 221.19ms 227.83ms p=0.016 n=600
typescript-startup - node (v16.17.1, x64)
Execution time 203.94ms (± 0.16%) 203.93ms (± 0.17%) ~ 203.21ms 214.25ms p=0.899 n=600
System
Machine Namets-ci-ubuntu
Platformlinux 5.4.0-148-generic
Architecturex64
Available Memory16 GB
Available Memory15 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v16.17.1, x64)
Scenarios
  • 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 54347 6
Baseline main 6

Developer Information:

Download Benchmark

@typescript-bot
Copy link
Collaborator

@sandersn Here are the results of running the top-repos suite comparing main and refs/pull/54347/merge:

Everything looks good!

@Andarist Andarist deleted the this-as-constant-reference branch August 25, 2025 20:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

For Backlog Bug PRs that fix a backlog bug

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

allow storing results of narrowing of class properties in booleans for further narrowing

4 participants