Skip to content

Fix services' type's isLiteral implementation#50929

Merged
gabritto merged 3 commits intomainfrom
gabritto/servicesIsLiteral
Nov 2, 2022
Merged

Fix services' type's isLiteral implementation#50929
gabritto merged 3 commits intomainfrom
gabritto/servicesIsLiteral

Conversation

@gabritto
Copy link
Copy Markdown
Member

@gabritto gabritto commented Sep 23, 2022

Not sure if there's a bug for this, but the implementation of the method isLiteral() in Type interface in services is wrong, and only returned true for number or string literal types. Now it will also return true for boolean literal types and bigint literal types.

This affects our literal completions: before this change, we only completed literals for number and string literal types, never for bigints or booleans.
Note that completions for true and false are sorted as keywords (because they are keywords).

Note also that this is a breaking API change, but also a bug fix... 🤨

@typescript-bot typescript-bot added Author: Team For Uncommitted Bug PR for untriaged, rejected, closed or missing bug labels Sep 23, 2022
@gabritto gabritto marked this pull request as ready for review September 23, 2022 23:48
@RyanCavanaugh
Copy link
Copy Markdown
Member

This might be considered annoying behavior for boolean literals. Let's keep an eye on user feedback.

@andrewbranch andrewbranch added the Breaking Change Would introduce errors in existing code label Sep 26, 2022
@andrewbranch
Copy link
Copy Markdown
Member

I feel like the API change is really an API bugfix, but can you make a note of it in https://github.com/microsoft/TypeScript/wiki/API-Breaking-Changes once merged?

@gabritto
Copy link
Copy Markdown
Member Author

I feel like the API change is really an API bugfix, but can you make a note of it in https://github.com/microsoft/TypeScript/wiki/API-Breaking-Changes once merged?

Sure. Now that you mention merging, should I wait until after 4.9 rc to merge this, so it gets into 5.0? Or does it not matter since it's an API break in services only?

@gabritto
Copy link
Copy Markdown
Member Author

gabritto commented Sep 28, 2022

I just realized that isLiteral() is returning this is LiteralType and LiteralType doesn't include booleans, so I'm updating this to exclude booleans and only include string literals, number literals, and BigInt literals. Seems to make the most sense since we were already concerned whether the boolean completions would be annoying.

@gabritto
Copy link
Copy Markdown
Member Author

@typescript-bot perf test this faster

@typescript-bot
Copy link
Copy Markdown
Collaborator

typescript-bot commented Sep 29, 2022

Heya @gabritto, I've started to run the abridged perf test suite on this PR at 297f892. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Copy Markdown
Collaborator

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

Here they are:

Comparison Report - main..50929

Metric main 50929 Delta Best Worst
Angular - node (v14.15.1, x64)
Memory used 338,132k (± 0.01%) 338,091k (± 0.01%) -41k (- 0.01%) 338,022k 338,167k
Parse Time 2.06s (± 0.62%) 2.06s (± 0.51%) +0.00s (+ 0.05%) 2.04s 2.09s
Bind Time 0.80s (± 0.94%) 0.79s (± 0.78%) -0.01s (- 0.75%) 0.78s 0.81s
Check Time 5.89s (± 0.46%) 5.87s (± 0.33%) -0.02s (- 0.34%) 5.83s 5.92s
Emit Time 6.29s (± 0.66%) 6.26s (± 0.41%) -0.03s (- 0.43%) 6.21s 6.33s
Total Time 15.03s (± 0.44%) 14.98s (± 0.25%) -0.05s (- 0.33%) 14.92s 15.09s
Compiler-Unions - node (v14.15.1, x64)
Memory used 190,220k (± 0.01%) 190,722k (± 0.60%) +502k (+ 0.26%) 190,165k 195,354k
Parse Time 0.86s (± 0.68%) 0.86s (± 0.43%) -0.00s (- 0.12%) 0.85s 0.86s
Bind Time 0.48s (± 0.70%) 0.49s (± 0.45%) +0.01s (+ 1.66%) 0.49s 0.50s
Check Time 6.75s (± 0.75%) 6.75s (± 0.43%) +0.00s (+ 0.07%) 6.69s 6.80s
Emit Time 2.40s (± 0.53%) 2.40s (± 1.19%) +0.00s (+ 0.08%) 2.34s 2.48s
Total Time 10.49s (± 0.57%) 10.50s (± 0.48%) +0.01s (+ 0.13%) 10.38s 10.60s
Monaco - node (v14.15.1, x64)
Memory used 326,575k (± 0.01%) 326,581k (± 0.01%) +6k (+ 0.00%) 326,534k 326,639k
Parse Time 1.59s (± 0.90%) 1.59s (± 0.43%) +0.00s (+ 0.06%) 1.57s 1.60s
Bind Time 0.73s (± 1.39%) 0.72s (± 0.92%) -0.00s (- 0.41%) 0.71s 0.74s
Check Time 5.74s (± 0.47%) 5.71s (± 0.61%) -0.02s (- 0.40%) 5.64s 5.80s
Emit Time 3.37s (± 0.54%) 3.37s (± 0.87%) +0.00s (+ 0.03%) 3.28s 3.42s
Total Time 11.42s (± 0.42%) 11.40s (± 0.40%) -0.02s (- 0.16%) 11.31s 11.52s
TFS - node (v14.15.1, x64)
Memory used 289,682k (± 0.00%) 289,705k (± 0.01%) +23k (+ 0.01%) 289,651k 289,733k
Parse Time 1.29s (± 0.72%) 1.29s (± 0.73%) +0.01s (+ 0.47%) 1.28s 1.32s
Bind Time 0.80s (± 0.62%) 0.79s (± 0.71%) -0.01s (- 1.01%) 0.78s 0.80s
Check Time 5.39s (± 0.40%) 5.43s (± 1.05%) +0.03s (+ 0.63%) 5.32s 5.57s
Emit Time 3.60s (± 0.89%) 3.60s (± 0.54%) 0.00s ( 0.00%) 3.56s 3.64s
Total Time 11.07s (± 0.45%) 11.11s (± 0.55%) +0.03s (+ 0.31%) 10.98s 11.24s
material-ui - node (v14.15.1, x64)
Memory used 435,617k (± 0.00%) 435,615k (± 0.00%) -3k (- 0.00%) 435,574k 435,665k
Parse Time 1.87s (± 0.44%) 1.88s (± 0.66%) +0.01s (+ 0.37%) 1.85s 1.91s
Bind Time 0.58s (± 0.81%) 0.58s (± 0.69%) -0.00s (- 0.17%) 0.57s 0.59s
Check Time 12.88s (± 0.41%) 12.86s (± 0.39%) -0.02s (- 0.12%) 12.77s 13.02s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.32s (± 0.38%) 15.32s (± 0.33%) -0.01s (- 0.05%) 15.21s 15.47s
xstate - node (v14.15.1, x64)
Memory used 544,080k (± 0.00%) 544,083k (± 0.01%) +3k (+ 0.00%) 544,017k 544,171k
Parse Time 2.62s (± 0.36%) 2.61s (± 0.43%) -0.00s (- 0.04%) 2.58s 2.64s
Bind Time 0.98s (± 1.32%) 0.97s (± 0.72%) -0.01s (- 1.32%) 0.96s 0.99s
Check Time 1.51s (± 0.44%) 1.52s (± 0.68%) +0.00s (+ 0.33%) 1.50s 1.54s
Emit Time 0.07s (± 0.00%) 0.07s (± 0.00%) 0.00s ( 0.00%) 0.07s 0.07s
Total Time 5.19s (± 0.27%) 5.18s (± 0.23%) -0.01s (- 0.12%) 5.16s 5.21s
Angular - node (v10.16.3, x64)
Memory used 362,481k (± 0.02%) 362,499k (± 0.03%) +18k (+ 0.00%) 362,284k 362,716k
Parse Time 2.08s (± 0.53%) 2.09s (± 0.64%) +0.01s (+ 0.43%) 2.06s 2.12s
Bind Time 0.78s (± 0.79%) 0.79s (± 1.04%) +0.01s (+ 0.77%) 0.77s 0.80s
Check Time 6.23s (± 0.47%) 6.24s (± 0.46%) +0.01s (+ 0.19%) 6.17s 6.29s
Emit Time 6.12s (± 0.67%) 6.09s (± 0.50%) -0.03s (- 0.41%) 6.01s 6.15s
Total Time 15.21s (± 0.28%) 15.21s (± 0.39%) -0.00s (- 0.01%) 15.06s 15.32s
Compiler-Unions - node (v10.16.3, x64)
Memory used 206,074k (± 0.28%) 206,099k (± 0.29%) +26k (+ 0.01%) 203,705k 206,521k
Parse Time 0.84s (± 0.58%) 0.84s (± 0.71%) -0.01s (- 0.95%) 0.82s 0.85s
Bind Time 0.47s (± 1.19%) 0.47s (± 1.25%) +0.01s (+ 1.28%) 0.46s 0.49s
Check Time 8.47s (± 0.45%) 8.51s (± 0.62%) +0.04s (+ 0.44%) 8.37s 8.63s
Emit Time 2.45s (± 1.31%) 2.46s (± 1.27%) +0.01s (+ 0.53%) 2.41s 2.56s
Total Time 12.23s (± 0.47%) 12.28s (± 0.55%) +0.05s (+ 0.40%) 12.16s 12.43s
Monaco - node (v10.16.3, x64)
Memory used 344,800k (± 0.02%) 344,845k (± 0.01%) +45k (+ 0.01%) 344,691k 344,926k
Parse Time 1.60s (± 0.47%) 1.59s (± 0.69%) -0.00s (- 0.25%) 1.56s 1.62s
Bind Time 0.69s (± 0.43%) 0.70s (± 1.27%) +0.01s (+ 1.88%) 0.69s 0.73s
Check Time 6.20s (± 0.46%) 6.21s (± 0.54%) +0.00s (+ 0.06%) 6.12s 6.25s
Emit Time 3.22s (± 0.53%) 3.25s (± 0.90%) +0.03s (+ 0.93%) 3.18s 3.31s
Total Time 11.71s (± 0.28%) 11.76s (± 0.47%) +0.04s (+ 0.36%) 11.59s 11.85s
TFS - node (v10.16.3, x64)
Memory used 306,151k (± 0.03%) 306,028k (± 0.02%) -123k (- 0.04%) 305,925k 306,141k
Parse Time 1.30s (± 1.02%) 1.29s (± 0.60%) -0.01s (- 0.69%) 1.27s 1.31s
Bind Time 0.67s (± 1.23%) 0.67s (± 0.71%) -0.01s (- 1.04%) 0.66s 0.68s
Check Time 5.54s (± 0.53%) 5.51s (± 0.52%) -0.04s (- 0.67%) 5.47s 5.58s
Emit Time 3.40s (± 1.42%) 3.42s (± 1.74%) +0.02s (+ 0.50%) 3.30s 3.55s
Total Time 10.91s (± 0.52%) 10.88s (± 0.52%) -0.03s (- 0.29%) 10.78s 11.00s
material-ui - node (v10.16.3, x64)
Memory used 458,147k (± 0.01%) 458,109k (± 0.02%) -38k (- 0.01%) 457,950k 458,282k
Parse Time 1.83s (± 0.78%) 1.84s (± 0.87%) +0.01s (+ 0.71%) 1.81s 1.87s
Bind Time 0.57s (± 2.02%) 0.57s (± 2.05%) -0.00s (- 0.70%) 0.55s 0.59s
Check Time 15.67s (± 0.52%) 15.71s (± 0.61%) +0.04s (+ 0.26%) 15.55s 15.89s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 18.08s (± 0.49%) 18.13s (± 0.52%) +0.05s (+ 0.25%) 17.97s 18.31s
xstate - node (v10.16.3, x64)
Memory used 587,430k (± 1.62%) 587,510k (± 1.63%) +81k (+ 0.01%) 580,963k 613,422k
Parse Time 2.60s (± 0.14%) 2.61s (± 0.38%) +0.01s (+ 0.46%) 2.59s 2.64s
Bind Time 0.90s (± 0.49%) 0.90s (± 0.49%) 0.00s ( 0.00%) 0.89s 0.91s
Check Time 1.60s (± 0.44%) 1.60s (± 0.67%) 0.00s ( 0.00%) 1.58s 1.63s
Emit Time 0.07s (± 3.14%) 0.07s (± 4.66%) +0.00s (+ 2.82%) 0.07s 0.08s
Total Time 5.17s (± 0.17%) 5.19s (± 0.41%) +0.02s (+ 0.37%) 5.14s 5.24s
Angular - node (v12.1.0, x64)
Memory used 339,972k (± 0.09%) 339,882k (± 0.08%) -90k (- 0.03%) 338,826k 340,093k
Parse Time 2.09s (± 0.68%) 2.09s (± 0.60%) +0.00s (+ 0.19%) 2.06s 2.12s
Bind Time 0.76s (± 0.90%) 0.77s (± 0.68%) +0.00s (+ 0.52%) 0.76s 0.78s
Check Time 5.89s (± 0.75%) 5.91s (± 0.60%) +0.02s (+ 0.25%) 5.84s 6.00s
Emit Time 6.30s (± 0.64%) 6.36s (± 0.74%) +0.06s (+ 0.98%) 6.25s 6.48s
Total Time 15.04s (± 0.55%) 15.13s (± 0.48%) +0.08s (+ 0.56%) 14.96s 15.26s
Compiler-Unions - node (v12.1.0, x64)
Memory used 193,177k (± 0.46%) 194,018k (± 0.10%) +841k (+ 0.44%) 193,455k 194,211k
Parse Time 0.83s (± 0.78%) 0.83s (± 0.80%) -0.00s (- 0.24%) 0.82s 0.85s
Bind Time 0.47s (± 1.44%) 0.47s (± 1.25%) 0.00s ( 0.00%) 0.46s 0.49s
Check Time 6.68s (± 0.66%) 6.76s (± 0.47%) +0.08s (+ 1.20%) 6.68s 6.82s
Emit Time 2.47s (± 1.29%) 2.46s (± 1.00%) -0.02s (- 0.69%) 2.42s 2.53s
Total Time 10.46s (± 0.54%) 10.52s (± 0.48%) +0.06s (+ 0.57%) 10.42s 10.62s
Monaco - node (v12.1.0, x64)
Memory used 327,748k (± 0.02%) 327,771k (± 0.02%) +23k (+ 0.01%) 327,503k 327,855k
Parse Time 1.58s (± 0.88%) 1.58s (± 0.39%) -0.00s (- 0.13%) 1.57s 1.59s
Bind Time 0.70s (± 0.53%) 0.70s (± 1.00%) +0.01s (+ 0.86%) 0.69s 0.72s
Check Time 5.84s (± 0.39%) 5.84s (± 0.54%) -0.00s (- 0.07%) 5.77s 5.90s
Emit Time 3.33s (± 0.86%) 3.33s (± 0.88%) 0.00s ( 0.00%) 3.26s 3.40s
Total Time 11.45s (± 0.27%) 11.45s (± 0.46%) -0.00s (- 0.03%) 11.33s 11.57s
TFS - node (v12.1.0, x64)
Memory used 290,746k (± 0.01%) 290,765k (± 0.02%) +19k (+ 0.01%) 290,664k 290,899k
Parse Time 1.29s (± 0.50%) 1.30s (± 0.68%) +0.01s (+ 0.39%) 1.28s 1.31s
Bind Time 0.68s (± 1.07%) 0.67s (± 1.16%) -0.01s (- 1.61%) 0.65s 0.69s
Check Time 5.41s (± 0.37%) 5.39s (± 0.45%) -0.02s (- 0.28%) 5.36s 5.47s
Emit Time 3.51s (± 1.24%) 3.50s (± 0.99%) -0.01s (- 0.40%) 3.44s 3.59s
Total Time 10.89s (± 0.41%) 10.86s (± 0.53%) -0.04s (- 0.33%) 10.75s 10.99s
material-ui - node (v12.1.0, x64)
Memory used 437,370k (± 0.07%) 437,289k (± 0.06%) -81k (- 0.02%) 436,205k 437,491k
Parse Time 1.82s (± 0.44%) 1.82s (± 0.68%) +0.00s (+ 0.22%) 1.80s 1.86s
Bind Time 0.55s (± 0.54%) 0.55s (± 0.87%) -0.00s (- 0.18%) 0.54s 0.56s
Check Time 12.71s (± 0.67%) 12.81s (± 0.65%) +0.10s (+ 0.83%) 12.67s 12.99s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.07s (± 0.59%) 15.18s (± 0.56%) +0.11s (+ 0.72%) 15.01s 15.37s
xstate - node (v12.1.0, x64)
Memory used 546,321k (± 0.02%) 546,291k (± 0.02%) -29k (- 0.01%) 546,086k 546,505k
Parse Time 2.54s (± 0.40%) 2.54s (± 0.48%) -0.00s (- 0.20%) 2.52s 2.56s
Bind Time 0.88s (± 0.76%) 0.88s (± 0.73%) -0.00s (- 0.11%) 0.87s 0.90s
Check Time 1.48s (± 0.57%) 1.49s (± 0.73%) +0.01s (+ 0.88%) 1.47s 1.52s
Emit Time 0.07s (± 3.14%) 0.07s (± 0.00%) -0.00s (- 1.41%) 0.07s 0.07s
Total Time 4.98s (± 0.32%) 4.99s (± 0.44%) +0.01s (+ 0.14%) 4.94s 5.03s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory15 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v14.15.1, x64)
  • node (v10.16.3, x64)
  • node (v12.1.0, x64)
Scenarios
  • Angular - node (v14.15.1, x64)
  • Angular - node (v10.16.3, x64)
  • Angular - node (v12.1.0, x64)
  • Compiler-Unions - node (v14.15.1, x64)
  • Compiler-Unions - node (v10.16.3, x64)
  • Compiler-Unions - node (v12.1.0, x64)
  • Monaco - node (v14.15.1, x64)
  • Monaco - node (v10.16.3, x64)
  • Monaco - node (v12.1.0, x64)
  • TFS - node (v14.15.1, x64)
  • TFS - node (v10.16.3, x64)
  • TFS - node (v12.1.0, x64)
  • material-ui - node (v14.15.1, x64)
  • material-ui - node (v10.16.3, x64)
  • material-ui - node (v12.1.0, x64)
  • xstate - node (v14.15.1, x64)
  • xstate - node (v10.16.3, x64)
  • xstate - node (v12.1.0, x64)
Benchmark Name Iterations
Current 50929 10
Baseline main 10

Developer Information:

Download Benchmark

@fatcerberus
Copy link
Copy Markdown

exclude booleans and only include string literals, number literals, and boolean literals

Is this a typo?

@gabritto
Copy link
Copy Markdown
Member Author

gabritto commented Oct 3, 2022

exclude booleans and only include string literals, number literals, and boolean literals

Is this a typo?

Yes, I meant to say BigInt literals. Thanks for catching it!

@gabritto
Copy link
Copy Markdown
Member Author

gabritto commented Oct 7, 2022

(Sorry for spamming this PR, I'm making sure our perf infra is working)

@microsoft microsoft deleted a comment from typescript-bot Oct 7, 2022
@gabritto
Copy link
Copy Markdown
Member Author

gabritto commented Oct 7, 2022

@typescript-bot perf test this faster

@typescript-bot
Copy link
Copy Markdown
Collaborator

typescript-bot commented Oct 7, 2022

Heya @gabritto, I've started to run the abridged perf test suite on this PR at 297f892. You can monitor the build here.

@gabritto
Copy link
Copy Markdown
Member Author

gabritto commented Oct 7, 2022

@typescript-bot perf test this

@typescript-bot
Copy link
Copy Markdown
Collaborator

typescript-bot commented Oct 7, 2022

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

Update: The results are in!

@gabritto
Copy link
Copy Markdown
Member Author

gabritto commented Oct 7, 2022

@typescript-bot perf test this faster

@typescript-bot
Copy link
Copy Markdown
Collaborator

typescript-bot commented Oct 7, 2022

Heya @gabritto, I've started to run the abridged perf test suite on this PR at 297f892. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Copy Markdown
Collaborator

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

Here they are:

Compiler

Comparison Report - main..50929
Metric main 50929 Delta Best Worst
Angular - node (v14.15.1, x64)
Memory used 346,658k (± 0.01%) 346,651k (± 0.01%) -7k (- 0.00%) 346,561k 346,728k
Parse Time 2.09s (± 1.19%) 2.10s (± 1.24%) +0.01s (+ 0.24%) 2.06s 2.17s
Bind Time 0.80s (± 0.50%) 0.80s (± 0.85%) +0.00s (+ 0.37%) 0.79s 0.82s
Check Time 6.02s (± 0.30%) 6.02s (± 0.56%) +0.00s (+ 0.03%) 5.92s 6.07s
Emit Time 6.30s (± 0.65%) 6.31s (± 0.91%) +0.01s (+ 0.11%) 6.18s 6.49s
Total Time 15.21s (± 0.37%) 15.23s (± 0.54%) +0.03s (+ 0.16%) 15.01s 15.42s
Compiler-Unions - node (v14.15.1, x64)
Memory used 190,789k (± 0.68%) 190,813k (± 0.68%) +24k (+ 0.01%) 190,167k 196,084k
Parse Time 0.87s (± 0.84%) 0.86s (± 0.55%) -0.01s (- 1.27%) 0.85s 0.87s
Bind Time 0.49s (± 0.96%) 0.49s (± 0.91%) +0.00s (+ 0.41%) 0.48s 0.50s
Check Time 6.83s (± 0.62%) 6.82s (± 0.29%) -0.01s (- 0.16%) 6.79s 6.86s
Emit Time 2.43s (± 0.88%) 2.43s (± 1.13%) -0.00s (- 0.08%) 2.38s 2.51s
Total Time 10.62s (± 0.53%) 10.60s (± 0.36%) -0.02s (- 0.16%) 10.52s 10.72s
Monaco - node (v14.15.1, x64)
Memory used 326,597k (± 0.01%) 326,587k (± 0.01%) -10k (- 0.00%) 326,538k 326,622k
Parse Time 1.58s (± 0.60%) 1.58s (± 0.63%) -0.00s (- 0.19%) 1.56s 1.61s
Bind Time 0.74s (± 0.67%) 0.74s (± 0.95%) +0.00s (+ 0.41%) 0.72s 0.76s
Check Time 5.77s (± 0.59%) 5.78s (± 0.24%) +0.01s (+ 0.26%) 5.75s 5.82s
Emit Time 3.40s (± 1.11%) 3.39s (± 0.38%) -0.00s (- 0.12%) 3.35s 3.41s
Total Time 11.49s (± 0.55%) 11.49s (± 0.20%) +0.01s (+ 0.07%) 11.45s 11.55s
TFS - node (v14.15.1, x64)
Memory used 289,702k (± 0.01%) 289,705k (± 0.01%) +2k (+ 0.00%) 289,659k 289,730k
Parse Time 1.30s (± 0.93%) 1.30s (± 0.38%) -0.01s (- 0.61%) 1.29s 1.31s
Bind Time 0.81s (± 0.61%) 0.81s (± 0.74%) 0.00s ( 0.00%) 0.79s 0.82s
Check Time 5.41s (± 0.44%) 5.43s (± 0.36%) +0.02s (+ 0.35%) 5.38s 5.47s
Emit Time 3.62s (± 0.65%) 3.64s (± 0.49%) +0.02s (+ 0.64%) 3.59s 3.67s
Total Time 11.13s (± 0.38%) 11.17s (± 0.30%) +0.04s (+ 0.31%) 11.09s 11.24s
material-ui - node (v14.15.1, x64)
Memory used 435,379k (± 0.04%) 435,483k (± 0.01%) +104k (+ 0.02%) 435,408k 435,516k
Parse Time 1.89s (± 0.75%) 1.88s (± 0.73%) -0.01s (- 0.37%) 1.86s 1.91s
Bind Time 0.59s (± 0.81%) 0.59s (± 0.56%) +0.00s (+ 0.51%) 0.58s 0.60s
Check Time 13.03s (± 0.76%) 13.03s (± 0.80%) 0.00s ( 0.00%) 12.81s 13.25s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.50s (± 0.70%) 15.50s (± 0.70%) -0.01s (- 0.04%) 15.27s 15.70s
xstate - node (v14.15.1, x64)
Memory used 543,366k (± 0.00%) 543,387k (± 0.00%) +21k (+ 0.00%) 543,344k 543,432k
Parse Time 2.61s (± 0.37%) 2.61s (± 0.44%) +0.00s (+ 0.15%) 2.59s 2.64s
Bind Time 0.99s (± 1.05%) 0.99s (± 0.66%) -0.00s (- 0.40%) 0.97s 1.00s
Check Time 1.54s (± 0.73%) 1.54s (± 0.55%) +0.00s (+ 0.00%) 1.53s 1.56s
Emit Time 0.07s (± 0.00%) 0.07s (± 0.00%) 0.00s ( 0.00%) 0.07s 0.07s
Total Time 5.21s (± 0.29%) 5.21s (± 0.29%) -0.00s (- 0.00%) 5.19s 5.25s
System
Machine Namets-ci-ubuntu
Platformlinux 5.4.0-126-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 50929 10
Baseline main 10

TSServer

Comparison Report - main..50929
Metric main 50929 Delta Best Worst
Compiler-UnionsTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,461ms (± 0.52%) 1,458ms (± 0.32%) -3ms (- 0.19%) 1,446ms 1,471ms
Req 2 - geterr 3,542ms (± 0.46%) 3,579ms (± 0.68%) +38ms (+ 1.06%) 3,526ms 3,644ms
Req 3 - references 234ms (± 0.41%) 233ms (± 0.68%) -1ms (- 0.26%) 230ms 238ms
Req 4 - navto 172ms (± 0.86%) 173ms (± 0.64%) +1ms (+ 0.47%) 171ms 176ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 56ms (± 5.28%) 58ms (± 5.64%) +2ms (+ 3.20%) 55ms 67ms
CompilerTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,539ms (± 0.67%) 1,541ms (± 0.67%) +2ms (+ 0.14%) 1,513ms 1,564ms
Req 2 - geterr 2,331ms (± 0.52%) 2,351ms (± 0.39%) +20ms (+ 0.87%) 2,325ms 2,367ms
Req 3 - references 245ms (± 0.70%) 247ms (± 0.51%) +2ms (+ 0.77%) 243ms 250ms
Req 4 - navto 180ms (± 0.54%) 182ms (± 0.68%) +2ms (+ 1.28%) 180ms 185ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 55ms (± 0.91%) 56ms (± 0.85%) +1ms (+ 2.20%) 55ms 57ms
xstateTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 2,142ms (± 0.44%) 2,156ms (± 0.51%) +14ms (+ 0.63%) 2,115ms 2,167ms
Req 2 - geterr 770ms (± 0.69%) 771ms (± 0.33%) +1ms (+ 0.16%) 765ms 777ms
Req 3 - references 68ms (± 2.78%) 67ms (± 2.35%) -1ms (- 1.76%) 65ms 71ms
Req 4 - navto 229ms (± 0.52%) 229ms (± 0.50%) +1ms (+ 0.26%) 227ms 232ms
Req 5 - completionInfo count 3,206 (± 0.00%) 3,206 (± 0.00%) 0 ( 0.00%) 3,206 3,206
Req 5 - completionInfo 275ms (± 1.27%) 281ms (± 4.79%) +6ms (+ 2.04%) 269ms 334ms
System
Machine Namets-ci-ubuntu
Platformlinux 5.4.0-126-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 50929 10
Baseline main 10

Developer Information:

Download Benchmark

@typescript-bot
Copy link
Copy Markdown
Collaborator

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

Here they are:

Comparison Report - main..50929

Metric main 50929 Delta Best Worst
System
Machine Namets-ci-ubuntu
Platformlinux 5.4.0-126-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
  • Angular - node (v16.17.1, x64)
  • Compiler-Unions - node (v16.17.1, x64)
  • Monaco - node (v16.17.1, x64)
  • TFS - node (v16.17.1, x64)
  • material-ui - node (v16.17.1, x64)
  • xstate - node (v16.17.1, x64)
Benchmark Name Iterations
Current 50929 10
Baseline main 10

Developer Information:

Download Benchmark

@gabritto gabritto merged commit fdcb2ff into main Nov 2, 2022
@gabritto gabritto deleted the gabritto/servicesIsLiteral branch November 2, 2022 18:28
@microsoft microsoft locked as resolved and limited conversation to collaborators Oct 22, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Author: Team Breaking Change Would introduce errors in existing code For Uncommitted Bug PR for untriaged, rejected, closed or missing bug

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

6 participants