Skip to content

Conversation

Andarist
Copy link
Contributor

fixes #55778

@typescript-bot typescript-bot added the For Uncommitted Bug PR for untriaged, rejected, closed or missing bug label Sep 18, 2023
@jakebailey
Copy link
Member

This feels almost too simple... I feel like I remember the original PR not doing this on purpose. @ahejlsberg

@typescript-bot test top200
@typescript-bot user test this
@typescript-bot run dt
@typescript-bot perf test this
@typescript-bot pack this

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 19, 2023

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 19, 2023

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 19, 2023

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

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 19, 2023

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 19, 2023

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 19, 2023

Hey @jakebailey, 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/157795/artifacts?artifactName=tgz&fileId=9AF812C3E2572235F52FFF0141044055D42CE04BA80ED2B2F7ACD4CA1C98A04C02&fileName=/typescript-5.3.0-insiders.20230919.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]".;

@typescript-bot
Copy link
Collaborator

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

There were infrastructure failures potentially unrelated to your change:

  • 1 instance of "Unknown failure"
  • 2 instances of "Package install failed"

Otherwise...

Everything looks good!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Compiler

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Angular - node (v18.15.0, x64)
Memory used 294,933k (± 0.01%) 294,907k (± 0.01%) ~ 294,871k 294,938k p=0.128 n=6
Parse Time 2.64s (± 0.52%) 2.64s (± 0.65%) ~ 2.62s 2.67s p=1.000 n=6
Bind Time 0.85s (± 0.61%) 0.85s (± 0.89%) ~ 0.84s 0.86s p=0.784 n=6
Check Time 7.99s (± 0.39%) 8.00s (± 0.32%) ~ 7.96s 8.02s p=0.747 n=6
Emit Time 7.02s (± 0.28%) 7.01s (± 0.19%) ~ 6.99s 7.02s p=0.198 n=6
Total Time 18.50s (± 0.12%) 18.49s (± 0.16%) ~ 18.45s 18.53s p=0.809 n=6
Compiler-Unions - node (v18.15.0, x64)
Memory used 192,584k (± 1.53%) 193,558k (± 1.62%) ~ 190,667k 196,482k p=0.471 n=6
Parse Time 1.35s (± 0.60%) 1.36s (± 0.89%) ~ 1.35s 1.38s p=0.599 n=6
Bind Time 0.74s (± 0.00%) 0.74s (± 0.00%) ~ 0.74s 0.74s p=1.000 n=6
Check Time 9.05s (± 0.46%) 9.10s (± 0.31%) ~ 9.05s 9.13s p=0.091 n=6
Emit Time 2.60s (± 0.70%) 2.61s (± 0.29%) ~ 2.60s 2.62s p=0.279 n=6
Total Time 13.75s (± 0.37%) 13.80s (± 0.22%) ~ 13.75s 13.83s p=0.088 n=6
Monaco - node (v18.15.0, x64)
Memory used 347,175k (± 0.00%) 347,188k (± 0.01%) ~ 347,160k 347,219k p=0.378 n=6
Parse Time 2.46s (± 0.36%) 2.46s (± 0.43%) ~ 2.44s 2.47s p=0.452 n=6
Bind Time 0.94s (± 0.55%) 0.94s (± 0.55%) ~ 0.93s 0.94s p=1.000 n=6
Check Time 6.85s (± 0.51%) 6.86s (± 0.66%) ~ 6.81s 6.94s p=0.686 n=6
Emit Time 4.04s (± 0.38%) 4.06s (± 0.30%) +0.02s (+ 0.50%) 4.04s 4.07s p=0.045 n=6
Total Time 14.28s (± 0.27%) 14.31s (± 0.38%) ~ 14.24s 14.38s p=0.376 n=6
TFS - node (v18.15.0, x64)
Memory used 302,458k (± 0.00%) 302,454k (± 0.00%) ~ 302,449k 302,464k p=0.628 n=6
Parse Time 2.02s (± 0.40%) 2.01s (± 0.75%) ~ 1.99s 2.03s p=1.000 n=6
Bind Time 1.00s (± 0.41%) 1.00s (± 1.17%) ~ 0.99s 1.02s p=0.787 n=6
Check Time 6.22s (± 0.44%) 6.23s (± 0.50%) ~ 6.20s 6.29s p=0.805 n=6
Emit Time 3.53s (± 0.73%) 3.51s (± 0.46%) ~ 3.48s 3.52s p=0.195 n=6
Total Time 12.76s (± 0.39%) 12.75s (± 0.31%) ~ 12.72s 12.83s p=0.376 n=6
material-ui - node (v18.15.0, x64)
Memory used 470,434k (± 0.01%) 470,451k (± 0.00%) ~ 470,436k 470,491k p=0.689 n=6
Parse Time 2.59s (± 0.72%) 2.60s (± 0.71%) ~ 2.58s 2.62s p=0.565 n=6
Bind Time 1.00s (± 0.75%) 0.99s (± 0.90%) ~ 0.98s 1.00s p=0.053 n=6
Check Time 16.58s (± 0.40%) 16.58s (± 0.43%) ~ 16.49s 16.66s p=1.000 n=6
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) ~ 0.00s 0.00s p=1.000 n=6
Total Time 20.18s (± 0.31%) 20.18s (± 0.33%) ~ 20.10s 20.25s p=0.936 n=6
xstate - node (v18.15.0, x64)
Memory used 512,205k (± 0.01%) 512,255k (± 0.01%) ~ 512,217k 512,291k p=0.230 n=6
Parse Time 3.25s (± 0.50%) 3.27s (± 0.17%) ~ 3.26s 3.27s p=0.056 n=6
Bind Time 1.55s (± 0.26%) 1.55s (± 0.33%) ~ 1.54s 1.55s p=0.595 n=6
Check Time 2.78s (± 0.75%) 2.79s (± 0.53%) ~ 2.76s 2.80s p=0.454 n=6
Emit Time 0.08s (± 4.99%) 0.08s (± 0.00%) ~ 0.08s 0.08s p=0.405 n=6
Total Time 7.65s (± 0.24%) 7.68s (± 0.30%) ~ 7.64s 7.70s p=0.061 n=6
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • Angular - node (v18.15.0, x64)
  • Compiler-Unions - node (v18.15.0, x64)
  • Monaco - node (v18.15.0, x64)
  • TFS - node (v18.15.0, x64)
  • material-ui - node (v18.15.0, x64)
  • xstate - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

tsserver

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-UnionsTSServer - node (v18.15.0, x64)
Req 1 - updateOpen 2,367ms (± 1.52%) 2,384ms (± 1.45%) ~ 2,336ms 2,424ms p=0.423 n=6
Req 2 - geterr 5,319ms (± 1.52%) 5,299ms (± 1.48%) ~ 5,235ms 5,417ms p=0.810 n=6
Req 3 - references 327ms (± 0.51%) 326ms (± 0.27%) ~ 325ms 327ms p=0.362 n=6
Req 4 - navto 276ms (± 0.63%) 277ms (± 0.50%) ~ 274ms 278ms p=0.803 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 (± 6.34%) 83ms (± 6.28%) ~ 75ms 89ms p=1.000 n=6
CompilerTSServer - node (v18.15.0, x64)
Req 1 - updateOpen 2,457ms (± 1.15%) 2,489ms (± 0.96%) ~ 2,457ms 2,528ms p=0.128 n=6
Req 2 - geterr 4,113ms (± 2.07%) 4,052ms (± 0.64%) ~ 4,015ms 4,093ms p=0.471 n=6
Req 3 - references 335ms (± 0.51%) 337ms (± 0.91%) ~ 335ms 343ms p=0.245 n=6
Req 4 - navto 281ms (± 0.50%) 282ms (± 0.43%) ~ 280ms 283ms p=0.458 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 75ms (± 2.98%) 77ms (± 7.64%) ~ 72ms 88ms p=0.734 n=6
xstateTSServer - node (v18.15.0, x64)
Req 1 - updateOpen 2,591ms (± 0.21%) 2,598ms (± 0.65%) ~ 2,582ms 2,627ms p=0.630 n=6
Req 2 - geterr 1,715ms (± 1.71%) 1,701ms (± 2.86%) ~ 1,631ms 1,760ms p=0.810 n=6
Req 3 - references 117ms (± 9.75%) 112ms (± 8.59%) ~ 104ms 127ms p=0.142 n=6
Req 4 - navto 365ms (± 0.40%) 366ms (± 1.31%) ~ 363ms 376ms p=0.743 n=6
Req 5 - completionInfo count 2,071 (± 0.00%) 2,071 (± 0.00%) ~ 2,071 2,071 p=1.000 n=6
Req 5 - completionInfo 305ms (± 3.18%) 308ms (± 0.93%) ~ 305ms 312ms p=0.414 n=6
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • CompilerTSServer - node (v18.15.0, x64)
  • Compiler-UnionsTSServer - node (v18.15.0, x64)
  • xstateTSServer - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

Startup

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
tsc-startup - node (v18.15.0, x64)
Execution time 151.17ms (± 0.17%) 151.13ms (± 0.17%) ~ 150.13ms 153.05ms p=0.114 n=600
tsserver-startup - node (v18.15.0, x64)
Execution time 226.55ms (± 0.16%) 226.17ms (± 0.15%) -0.37ms (- 0.16%) 224.93ms 231.08ms p=0.000 n=600
tsserverlibrary-startup - node (v18.15.0, x64)
Execution time 228.07ms (± 0.17%) 227.93ms (± 0.20%) -0.13ms (- 0.06%) 226.43ms 235.62ms p=0.000 n=600
typescript-startup - node (v18.15.0, x64)
Execution time 227.98ms (± 0.16%) 227.76ms (± 0.16%) -0.21ms (- 0.09%) 226.33ms 234.25ms p=0.000 n=600
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • tsc-startup - node (v18.15.0, x64)
  • tsserver-startup - node (v18.15.0, x64)
  • tsserverlibrary-startup - node (v18.15.0, x64)
  • typescript-startup - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

Developer Information:

Download Benchmarks

@typescript-bot
Copy link
Collaborator

Hey @jakebailey, it looks like the DT test run failed. Please check the log for more details.
You can check the log here.

@typescript-bot
Copy link
Collaborator

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

Everything looks good!

@ahejlsberg
Copy link
Member

This feels almost too simple... I feel like I remember the original PR not doing this on purpose. @ahejlsberg

I can't recall anything, and this seems like a reasonable fix. So I'm good with it.

@jakebailey
Copy link
Member

I will note that perf/DT don't really have const type params, and they don't have high usage yet, so it's hard to say if we'll get any feedback for this within the PR now. Probably we should just merge it and then wait for someone to come up with a bad case.

@jakebailey jakebailey merged commit 6e01b06 into microsoft:main Sep 19, 2023
@Andarist Andarist deleted the const-context-intersection branch September 20, 2023 08:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
For Uncommitted Bug PR for untriaged, rejected, closed or missing bug
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Const type parameter isn't inferred as const if it's part of an intersection
4 participants