Skip to content
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

Make special intersections order-independent #52782

Conversation

Andarist
Copy link
Contributor

@Andarist Andarist commented Feb 15, 2023

I understand that those special intersections are, well, special - they are a carveout in the logic and don't quite adhere to The Rules. So if you feel that it's unnecessary then feel free to just close this PR.

That being said... this is a regression from #49119 and this worked OK in TS 4.7 (TS 4.7 playground). I accidentally discovered this by using {} & string (even though usually I write string & {}). It took me some time to notice that I used a somewhat unusual order and that it broke my use case.

fixes #53043

@typescript-bot typescript-bot added the For Uncommitted Bug PR for untriaged, rejected, closed or missing bug label Feb 15, 2023
@typescript-bot
Copy link
Collaborator

This PR doesn't have any linked issues. Please open an issue that references this PR. From there we can discuss and prioritise.

@sandersn sandersn added this to Not started in PR Backlog Feb 28, 2023
@sandersn sandersn requested a review from ahejlsberg March 1, 2023 00:04
@sandersn sandersn self-assigned this Mar 1, 2023
@sandersn sandersn moved this from Not started to Waiting on author in PR Backlog Mar 1, 2023
@sandersn
Copy link
Member

sandersn commented Mar 1, 2023

@Andarist can you open a bug to explain the expected and actual behaviour (and the 4.7 behaviour as well)?

@Andarist
Copy link
Contributor Author

Andarist commented Mar 1, 2023

@sandersn sure, I just created this

@jakebailey
Copy link
Member

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

@typescript-bot
Copy link
Collaborator

typescript-bot commented Mar 2, 2023

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Mar 2, 2023

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Mar 2, 2023

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

@typescript-bot
Copy link
Collaborator

typescript-bot commented Mar 2, 2023

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Mar 2, 2023

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

@typescript-bot typescript-bot added For Backlog Bug PRs that fix a backlog bug and removed For Uncommitted Bug PR for untriaged, rejected, closed or missing bug labels Mar 3, 2023
@typescript-bot
Copy link
Collaborator

The TypeScript team hasn't accepted the linked issue #53043. If you can get it accepted, this PR will have a better chance of being reviewed.

@sandersn sandersn assigned ahejlsberg and unassigned sandersn Mar 3, 2023
@sandersn sandersn moved this from Waiting on author to Waiting on reviewers in PR Backlog Mar 3, 2023
@typescript-bot
Copy link
Collaborator

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

Here they are:

Compiler

Comparison Report - main..52782
Metric main 52782 Delta Best Worst p-value
Angular - node (v18.10.0, x64)
Memory used 359,800k (± 0.02%) 359,757k (± 0.01%) ~ 359,693k 359,834k p=0.199 n=6
Parse Time 3.49s (± 0.51%) 3.49s (± 0.84%) ~ 3.46s 3.54s p=0.935 n=6
Bind Time 1.13s (± 0.97%) 1.13s (± 0.79%) ~ 1.12s 1.14s p=0.932 n=6
Check Time 8.66s (± 0.37%) 8.68s (± 0.41%) ~ 8.63s 8.72s p=0.419 n=6
Emit Time 7.46s (± 0.77%) 7.41s (± 0.45%) ~ 7.38s 7.47s p=0.126 n=6
Total Time 20.74s (± 0.40%) 20.71s (± 0.25%) ~ 20.63s 20.79s p=0.630 n=6
Compiler-Unions - node (v18.10.0, x64)
Memory used 192,448k (± 1.57%) 189,663k (± 0.04%) ~ 189,512k 189,743k p=0.128 n=6
Parse Time 1.48s (± 0.85%) 1.48s (± 0.43%) ~ 1.47s 1.49s p=0.799 n=6
Bind Time 0.77s (± 0.53%) 0.77s (± 0.67%) ~ 0.76s 0.77s p=0.114 n=6
Check Time 9.38s (± 0.42%) 9.33s (± 0.47%) -0.05s (- 0.57%) 9.29s 9.41s p=0.036 n=6
Emit Time 2.72s (± 0.28%) 2.73s (± 1.04%) ~ 2.68s 2.76s p=0.250 n=6
Total Time 14.35s (± 0.33%) 14.30s (± 0.17%) -0.05s (- 0.34%) 14.28s 14.35s p=0.044 n=6
Monaco - node (v18.10.0, x64)
Memory used 343,824k (± 0.02%) 343,831k (± 0.01%) ~ 343,801k 343,887k p=0.423 n=6
Parse Time 2.63s (± 0.93%) 2.63s (± 0.44%) ~ 2.61s 2.64s p=1.000 n=6
Bind Time 1.01s (± 0.51%) 1.02s (± 0.88%) ~ 1.01s 1.03s p=0.190 n=6
Check Time 7.00s (± 0.53%) 7.02s (± 0.45%) ~ 6.98s 7.06s p=0.745 n=6
Emit Time 4.26s (± 1.15%) 4.23s (± 0.61%) ~ 4.20s 4.27s p=0.334 n=6
Total Time 14.90s (± 0.42%) 14.90s (± 0.31%) ~ 14.84s 14.98s p=1.000 n=6
TFS - node (v18.10.0, x64)
Memory used 299,873k (± 0.01%) 299,867k (± 0.01%) ~ 299,834k 299,884k p=0.298 n=6
Parse Time 2.05s (± 1.31%) 2.04s (± 1.15%) ~ 2.00s 2.06s p=0.370 n=6
Bind Time 1.14s (± 0.48%) 1.14s (± 0.36%) ~ 1.13s 1.14s p=0.282 n=6
Check Time 6.51s (± 0.60%) 6.50s (± 0.49%) ~ 6.46s 6.54s p=0.630 n=6
Emit Time 3.85s (± 0.68%) 3.86s (± 0.92%) ~ 3.82s 3.91s p=0.872 n=6
Total Time 13.55s (± 0.41%) 13.53s (± 0.49%) ~ 13.45s 13.62s p=0.747 n=6
material-ui - node (v18.10.0, x64)
Memory used 476,434k (± 0.01%) 476,433k (± 0.00%) ~ 476,409k 476,464k p=1.000 n=6
Parse Time 3.12s (± 0.94%) 3.12s (± 0.77%) ~ 3.09s 3.16s p=1.000 n=6
Bind Time 0.91s (± 0.56%) 0.91s (± 0.45%) ~ 0.90s 0.91s p=0.114 n=6
Check Time 17.09s (± 0.67%) 17.05s (± 0.73%) ~ 16.91s 17.28s 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 21.13s (± 0.55%) 21.08s (± 0.69%) ~ 20.92s 21.35s p=0.335 n=6
xstate - node (v18.10.0, x64)
Memory used 548,846k (± 0.02%) 548,803k (± 0.02%) ~ 548,696k 548,975k p=0.230 n=6
Parse Time 4.09s (± 0.45%) 4.06s (± 0.58%) ~ 4.04s 4.09s p=0.088 n=6
Bind Time 1.68s (± 0.24%) 1.67s (± 0.82%) ~ 1.65s 1.69s p=0.209 n=6
Check Time 2.77s (± 1.13%) 2.76s (± 0.68%) ~ 2.74s 2.79s p=0.331 n=6
Emit Time 0.08s (± 4.99%) 0.08s (± 4.99%) ~ 0.08s 0.09s p=1.000 n=6
Total Time 8.63s (± 0.60%) 8.57s (± 0.54%) ~ 8.54s 8.66s p=0.090 n=6
Angular - node (v16.17.1, x64)
Memory used 359,076k (± 0.01%) 359,092k (± 0.00%) ~ 359,077k 359,102k p=0.423 n=6
Parse Time 3.71s (± 0.37%) 3.72s (± 0.56%) ~ 3.69s 3.74s p=0.369 n=6
Bind Time 1.20s (± 0.68%) 1.19s (± 0.43%) ~ 1.19s 1.20s p=0.523 n=6
Check Time 9.44s (± 0.51%) 9.42s (± 0.30%) ~ 9.39s 9.47s p=0.629 n=6
Emit Time 7.88s (± 0.29%) 7.89s (± 0.29%) ~ 7.85s 7.91s p=0.935 n=6
Total Time 22.23s (± 0.23%) 22.22s (± 0.17%) ~ 22.17s 22.27s p=0.687 n=6
Compiler-Unions - node (v16.17.1, x64)
Memory used 191,292k (± 0.02%) 191,311k (± 0.03%) ~ 191,257k 191,424k p=0.873 n=6
Parse Time 1.56s (± 1.02%) 1.56s (± 0.88%) ~ 1.53s 1.57s p=0.226 n=6
Bind Time 0.82s (± 0.63%) 0.82s (± 0.63%) ~ 0.82s 0.83s p=1.000 n=6
Check Time 10.12s (± 0.36%) 10.08s (± 0.28%) ~ 10.05s 10.11s p=0.064 n=6
Emit Time 3.01s (± 0.95%) 2.99s (± 0.56%) ~ 2.97s 3.01s p=0.168 n=6
Total Time 15.51s (± 0.43%) 15.44s (± 0.29%) ~ 15.39s 15.49s p=0.091 n=6
Monaco - node (v16.17.1, x64)
Memory used 343,119k (± 0.01%) 343,096k (± 0.00%) -24k (- 0.01%) 343,083k 343,122k p=0.030 n=6
Parse Time 2.80s (± 0.68%) 2.79s (± 0.53%) ~ 2.77s 2.81s p=0.291 n=6
Bind Time 1.09s (± 0.47%) 1.08s (± 0.75%) ~ 1.08s 1.10s p=0.235 n=6
Check Time 7.69s (± 0.26%) 7.67s (± 0.62%) ~ 7.61s 7.75s p=0.126 n=6
Emit Time 4.44s (± 0.23%) 4.42s (± 0.62%) ~ 4.39s 4.46s p=0.120 n=6
Total Time 16.02s (± 0.22%) 15.96s (± 0.31%) -0.07s (- 0.41%) 15.91s 16.05s p=0.036 n=6
TFS - node (v16.17.1, x64)
Memory used 299,232k (± 0.00%) 299,245k (± 0.01%) ~ 299,216k 299,271k p=0.173 n=6
Parse Time 2.15s (± 0.81%) 2.15s (± 0.48%) ~ 2.13s 2.16s p=0.739 n=6
Bind Time 1.24s (± 0.79%) 1.25s (± 0.44%) ~ 1.24s 1.25s p=0.662 n=6
Check Time 7.15s (± 0.51%) 7.16s (± 0.48%) ~ 7.11s 7.20s p=0.684 n=6
Emit Time 4.33s (± 1.11%) 4.33s (± 0.65%) ~ 4.30s 4.38s p=0.747 n=6
Total Time 14.87s (± 0.62%) 14.89s (± 0.33%) ~ 14.84s 14.96s p=0.748 n=6
material-ui - node (v16.17.1, x64)
Memory used 475,701k (± 0.02%) 475,674k (± 0.01%) ~ 475,654k 475,741k p=0.689 n=6
Parse Time 3.28s (± 0.36%) 3.29s (± 0.64%) ~ 3.27s 3.32s p=0.462 n=6
Bind Time 0.96s (± 0.54%) 0.96s (± 0.00%) ~ 0.96s 0.96s p=0.174 n=6
Check Time 18.10s (± 0.35%) 18.06s (± 0.31%) ~ 17.96s 18.11s p=0.336 n=6
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) ~ 0.00s 0.00s p=1.000 n=6
Total Time 22.34s (± 0.31%) 22.31s (± 0.32%) ~ 22.19s 22.39s p=0.575 n=6
xstate - node (v16.17.1, x64)
Memory used 546,372k (± 0.00%) 546,372k (± 0.01%) ~ 546,327k 546,469k p=0.575 n=6
Parse Time 4.26s (± 0.21%) 4.25s (± 0.15%) ~ 4.24s 4.26s p=0.070 n=6
Bind Time 1.77s (± 0.43%) 1.77s (± 0.56%) ~ 1.76s 1.78s p=1.000 n=6
Check Time 2.98s (± 0.66%) 2.99s (± 0.67%) ~ 2.96s 3.01s p=0.225 n=6
Emit Time 0.09s (± 0.00%) 0.09s (± 4.45%) ~ 0.09s 0.10s p=0.405 n=6
Total Time 9.09s (± 0.18%) 9.10s (± 0.29%) ~ 9.06s 9.13s p=0.466 n=6
Angular - node (v14.15.1, x64)
Memory used 352,865k (± 0.00%) 352,861k (± 0.01%) ~ 352,823k 352,896k p=0.810 n=6
Parse Time 3.71s (± 0.81%) 3.69s (± 0.63%) ~ 3.66s 3.72s p=0.333 n=6
Bind Time 1.25s (± 0.33%) 1.25s (± 0.41%) ~ 1.24s 1.25s p=0.595 n=6
Check Time 9.76s (± 0.53%) 9.71s (± 0.33%) -0.05s (- 0.56%) 9.66s 9.74s p=0.044 n=6
Emit Time 8.34s (± 0.56%) 8.29s (± 0.95%) ~ 8.21s 8.43s p=0.261 n=6
Total Time 23.06s (± 0.27%) 22.94s (± 0.35%) -0.12s (- 0.51%) 22.85s 23.08s p=0.037 n=6
Compiler-Unions - node (v14.15.1, x64)
Memory used 186,534k (± 0.01%) 186,558k (± 0.01%) ~ 186,535k 186,580k p=0.109 n=6
Parse Time 1.56s (± 0.66%) 1.56s (± 0.66%) ~ 1.55s 1.58s p=1.000 n=6
Bind Time 0.84s (± 0.65%) 0.84s (± 0.75%) ~ 0.83s 0.85s p=0.201 n=6
Check Time 10.19s (± 0.48%) 10.14s (± 0.55%) ~ 10.08s 10.22s p=0.170 n=6
Emit Time 3.13s (± 0.68%) 3.13s (± 0.82%) ~ 3.10s 3.17s p=0.871 n=6
Total Time 15.73s (± 0.32%) 15.68s (± 0.43%) ~ 15.58s 15.77s p=0.261 n=6
Monaco - node (v14.15.1, x64)
Memory used 338,145k (± 0.01%) 338,148k (± 0.01%) ~ 338,115k 338,176k p=0.810 n=6
Parse Time 2.88s (± 0.65%) 2.88s (± 0.77%) ~ 2.85s 2.91s p=1.000 n=6
Bind Time 1.11s (± 0.68%) 1.10s (± 0.68%) ~ 1.09s 1.11s p=0.195 n=6
Check Time 8.08s (± 0.52%) 8.07s (± 0.39%) ~ 8.01s 8.10s p=0.872 n=6
Emit Time 4.70s (± 0.79%) 4.68s (± 0.61%) ~ 4.64s 4.72s p=0.520 n=6
Total Time 16.75s (± 0.43%) 16.73s (± 0.35%) ~ 16.65s 16.80s p=0.630 n=6
TFS - node (v14.15.1, x64)
Memory used 294,289k (± 0.00%) 294,288k (± 0.00%) ~ 294,272k 294,297k p=0.871 n=6
Parse Time 2.38s (± 0.63%) 2.38s (± 0.62%) ~ 2.36s 2.40s p=0.622 n=6
Bind Time 1.07s (± 0.51%) 1.07s (± 0.48%) ~ 1.06s 1.07s p=0.640 n=6
Check Time 7.48s (± 0.50%) 7.46s (± 0.34%) ~ 7.43s 7.49s p=0.372 n=6
Emit Time 4.31s (± 0.71%) 4.27s (± 1.18%) ~ 4.20s 4.33s p=0.377 n=6
Total Time 15.24s (± 0.32%) 15.18s (± 0.37%) ~ 15.11s 15.26s p=0.196 n=6
material-ui - node (v14.15.1, x64)
Memory used 471,373k (± 0.01%) 471,379k (± 0.01%) ~ 471,340k 471,406k p=0.689 n=6
Parse Time 3.46s (± 0.30%) 3.43s (± 0.24%) -0.02s (- 0.63%) 3.42s 3.44s p=0.009 n=6
Bind Time 1.01s (± 0.88%) 1.00s (± 0.75%) ~ 0.99s 1.01s p=0.149 n=6
Check Time 19.02s (± 0.49%) 18.96s (± 0.63%) ~ 18.85s 19.19s p=0.147 n=6
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) ~ 0.00s 0.00s p=1.000 n=6
Total Time 23.49s (± 0.39%) 23.39s (± 0.52%) -0.10s (- 0.43%) 23.28s 23.63s p=0.044 n=6
xstate - node (v14.15.1, x64)
Memory used 535,142k (± 0.01%) 535,142k (± 0.00%) ~ 535,123k 535,171k p=0.936 n=6
Parse Time 4.49s (± 1.21%) 4.52s (± 1.73%) ~ 4.42s 4.61s p=0.572 n=6
Bind Time 1.78s (± 3.74%) 1.71s (± 4.18%) ~ 1.65s 1.81s p=0.292 n=6
Check Time 3.15s (± 1.25%) 3.16s (± 0.33%) ~ 3.15s 3.18s p=0.376 n=6
Emit Time 0.09s (± 4.45%) 0.09s (± 0.00%) ~ 0.09s 0.09s p=0.405 n=6
Total Time 9.51s (± 0.59%) 9.50s (± 0.24%) ~ 9.48s 9.54s p=1.000 n=6
System
Machine Namets-ci-ubuntu
Platformlinux 5.4.0-135-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.15.1, x64)
Scenarios
  • Angular - node (v18.10.0, x64)
  • Angular - node (v16.17.1, x64)
  • Angular - node (v14.15.1, x64)
  • Compiler-Unions - node (v18.10.0, x64)
  • Compiler-Unions - node (v16.17.1, x64)
  • Compiler-Unions - node (v14.15.1, x64)
  • Monaco - node (v18.10.0, x64)
  • Monaco - node (v16.17.1, x64)
  • Monaco - node (v14.15.1, x64)
  • TFS - node (v18.10.0, x64)
  • TFS - node (v16.17.1, x64)
  • TFS - node (v14.15.1, x64)
  • material-ui - node (v18.10.0, x64)
  • material-ui - node (v16.17.1, x64)
  • material-ui - node (v14.15.1, x64)
  • xstate - node (v18.10.0, x64)
  • xstate - node (v16.17.1, x64)
  • xstate - node (v14.15.1, x64)
Benchmark Name Iterations
Current 52782 6
Baseline main 6

TSServer

Comparison Report - main..52782
Metric main 52782 Delta Best Worst p-value
Compiler-UnionsTSServer - node (v18.10.0, x64)
Req 1 - updateOpen 2,380ms (± 0.19%) 2,368ms (± 1.14%) ~ 2,334ms 2,410ms p=0.294 n=6
Req 2 - geterr 5,341ms (± 0.83%) 5,316ms (± 0.39%) ~ 5,292ms 5,349ms p=0.298 n=6
Req 3 - references 328ms (± 0.36%) 329ms (± 1.35%) ~ 326ms 338ms p=0.742 n=6
Req 4 - navto 286ms (± 0.48%) 285ms (± 0.69%) ~ 281ms 287ms p=0.508 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 76ms (± 5.39%) 76ms (± 7.59%) ~ 72ms 86ms p=0.934 n=6
CompilerTSServer - node (v18.10.0, x64)
Req 1 - updateOpen 2,504ms (± 0.90%) 2,516ms (± 1.26%) ~ 2,479ms 2,555ms p=0.377 n=6
Req 2 - geterr 3,992ms (± 0.75%) 4,007ms (± 0.45%) ~ 3,974ms 4,023ms p=0.297 n=6
Req 3 - references 345ms (± 0.92%) 347ms (± 0.72%) ~ 343ms 349ms p=0.466 n=6
Req 4 - navto 295ms (± 1.15%) 292ms (± 0.35%) ~ 291ms 294ms p=0.329 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 69ms (± 3.66%) 69ms (± 2.90%) ~ 68ms 73ms p=0.858 n=6
xstateTSServer - node (v18.10.0, x64)
Req 1 - updateOpen 3,165ms (± 0.36%) 3,172ms (± 0.44%) ~ 3,157ms 3,189ms p=0.199 n=6
Req 2 - geterr 1,638ms (± 0.98%) 1,622ms (± 0.93%) ~ 1,606ms 1,642ms p=0.093 n=6
Req 3 - references 104ms (± 1.12%) 104ms (± 1.72%) ~ 102ms 107ms p=1.000 n=6
Req 4 - navto 359ms (± 0.96%) 360ms (± 0.79%) ~ 355ms 363ms p=0.419 n=6
Req 5 - completionInfo count 3,136 (± 0.00%) 3,136 (± 0.00%) ~ 3,136 3,136 p=1.000 n=6
Req 5 - completionInfo 433ms (± 0.96%) 428ms (± 1.01%) ~ 423ms 435ms p=0.091 n=6
Compiler-UnionsTSServer - node (v16.17.1, x64)
Req 1 - updateOpen 2,481ms (± 1.25%) 2,456ms (± 1.40%) ~ 2,416ms 2,519ms p=0.093 n=6
Req 2 - geterr 5,718ms (± 0.40%) 5,703ms (± 0.54%) ~ 5,666ms 5,748ms p=0.575 n=6
Req 3 - references 340ms (± 1.22%) 340ms (± 0.32%) ~ 339ms 341ms p=0.357 n=6
Req 4 - navto 282ms (± 1.13%) 279ms (± 0.70%) ~ 276ms 281ms p=0.163 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 (± 5.34%) 86ms (± 1.61%) ~ 84ms 87ms p=0.621 n=6
CompilerTSServer - node (v16.17.1, x64)
Req 1 - updateOpen 2,689ms (± 0.38%) 2,674ms (± 0.33%) -14ms (- 0.53%) 2,662ms 2,685ms p=0.045 n=6
Req 2 - geterr 4,365ms (± 0.53%) 4,369ms (± 0.07%) ~ 4,364ms 4,373ms p=0.471 n=6
Req 3 - references 355ms (± 1.09%) 354ms (± 1.22%) ~ 350ms 361ms p=0.520 n=6
Req 4 - navto 291ms (± 1.08%) 291ms (± 0.95%) ~ 287ms 295ms p=0.808 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 (± 4.16%) 75ms (± 2.98%) ~ 73ms 78ms p=1.000 n=6
xstateTSServer - node (v16.17.1, x64)
Req 1 - updateOpen 3,348ms (± 0.35%) 3,327ms (± 0.44%) -21ms (- 0.64%) 3,310ms 3,353ms p=0.030 n=6
Req 2 - geterr 1,776ms (± 0.44%) 1,774ms (± 0.95%) ~ 1,746ms 1,790ms p=0.936 n=6
Req 3 - references 113ms (± 1.20%) 112ms (± 1.46%) ~ 109ms 114ms p=0.103 n=6
Req 4 - navto 346ms (± 1.58%) 349ms (± 1.17%) ~ 342ms 352ms p=0.334 n=6
Req 5 - completionInfo count 3,136 (± 0.00%) 3,136 (± 0.00%) ~ 3,136 3,136 p=1.000 n=6
Req 5 - completionInfo 436ms (± 0.89%) 434ms (± 1.34%) ~ 427ms 440ms p=0.520 n=6
Compiler-UnionsTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 2,565ms (± 0.45%) 2,584ms (± 0.45%) ~ 2,572ms 2,601ms p=0.065 n=6
Req 2 - geterr 6,017ms (± 0.52%) 6,064ms (± 0.07%) +47ms (+ 0.78%) 6,058ms 6,068ms p=0.006 n=6
Req 3 - references 356ms (± 0.66%) 360ms (± 1.01%) ~ 353ms 364ms p=0.106 n=6
Req 4 - navto 274ms (± 0.19%) 277ms (± 1.35%) ~ 274ms 284ms p=0.070 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 102ms (± 1.73%) 99ms (± 4.62%) ~ 91ms 103ms p=0.392 n=6
CompilerTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 2,813ms (± 0.23%) 2,811ms (± 0.33%) ~ 2,801ms 2,824ms p=0.630 n=6
Req 2 - geterr 4,455ms (± 2.31%) 4,403ms (± 0.35%) ~ 4,384ms 4,426ms p=0.128 n=6
Req 3 - references 369ms (± 0.36%) 375ms (± 5.05%) ~ 366ms 414ms p=0.515 n=6
Req 4 - navto 296ms (± 0.70%) 294ms (± 1.17%) ~ 287ms 297ms p=0.252 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 93ms (±10.21%) 102ms (± 2.22%) ~ 97ms 103ms p=0.087 n=6
xstateTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 3,662ms (± 0.78%) 3,658ms (± 0.60%) ~ 3,640ms 3,697ms p=0.936 n=6
Req 2 - geterr 1,859ms (± 1.58%) 1,861ms (± 1.33%) ~ 1,828ms 1,892ms p=0.873 n=6
Req 3 - references 129ms (± 3.50%) 127ms (± 2.74%) ~ 124ms 132ms p=0.871 n=6
Req 4 - navto 375ms (± 1.63%) 376ms (± 1.03%) ~ 373ms 383ms p=0.688 n=6
Req 5 - completionInfo count 3,136 (± 0.00%) 3,136 (± 0.00%) ~ 3,136 3,136 p=1.000 n=6
Req 5 - completionInfo 459ms (± 4.06%) 456ms (± 2.03%) ~ 447ms 474ms p=0.748 n=6
System
Machine Namets-ci-ubuntu
Platformlinux 5.4.0-135-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.15.1, x64)
Scenarios
  • Compiler-UnionsTSServer - node (v18.10.0, x64)
  • Compiler-UnionsTSServer - node (v16.17.1, x64)
  • Compiler-UnionsTSServer - node (v14.15.1, x64)
  • CompilerTSServer - node (v18.10.0, x64)
  • CompilerTSServer - node (v16.17.1, x64)
  • CompilerTSServer - node (v14.15.1, x64)
  • xstateTSServer - node (v18.10.0, x64)
  • xstateTSServer - node (v16.17.1, x64)
  • xstateTSServer - node (v14.15.1, x64)
Benchmark Name Iterations
Current 52782 6
Baseline main 6

Startup

Comparison Report - main..52782
Metric main 52782 Delta Best Worst p-value
tsc-startup - node (v16.17.1, x64)
Execution time 141.17ms (± 0.22%) 141.49ms (± 0.21%) +0.32ms (+ 0.23%) 140.49ms 146.41ms p=0.000 n=600
tsserver-startup - node (v16.17.1, x64)
Execution time 225.74ms (± 0.16%) 226.29ms (± 0.30%) +0.55ms (+ 0.25%) 224.48ms 232.91ms p=0.000 n=600
tsserverlibrary-startup - node (v16.17.1, x64)
Execution time 227.67ms (± 0.15%) 229.35ms (± 0.38%) +1.67ms (+ 0.74%) 226.62ms 236.73ms p=0.000 n=600
typescript-startup - node (v16.17.1, x64)
Execution time 208.45ms (± 0.15%) 209.90ms (± 0.38%) +1.45ms (+ 0.70%) 207.54ms 216.65ms p=0.000 n=600
System
Machine Namets-ci-ubuntu
Platformlinux 5.4.0-135-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 52782 6
Baseline main 6

Developer Information:

Download Benchmark

@typescript-bot
Copy link
Collaborator

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

Everything looks good!

@typescript-bot
Copy link
Collaborator

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

Everything looks good!

@jakebailey
Copy link
Member

Seems like everything is clean, including DT.

PR Backlog automation moved this from Waiting on reviewers to Needs merge Mar 4, 2023
Copy link
Member

@andrewbranch andrewbranch left a comment

Choose a reason for hiding this comment

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

isStringAndEmptyAnonymousObjectIntersection in services/utilities.ts needs a corresponding update.

@Andarist
Copy link
Contributor Author

Andarist commented Mar 7, 2023

@andrewbranch done

@sandersn sandersn merged commit 88adf80 into microsoft:main Mar 7, 2023
PR Backlog automation moved this from Needs merge to Done Mar 7, 2023
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
PR Backlog
  
Done
Development

Successfully merging this pull request may close these issues.

"Special" intersections (such as string & {}) are no longer order-independent since 4.8
6 participants