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

Transform decorators that reference private names into a 'static {}' block #50074

Merged
merged 1 commit into from Jul 29, 2022

Conversation

rbuckton
Copy link
Member

@rbuckton rbuckton commented Jul 27, 2022

This moves the downlevel emit for class element decorators into a static {} block when one of the decorators contains a PrivateIdentifier in an expression position (i.e., x.#y or #y in x). This only moves the decorators to a static {} block for that specific case to avoid introducing an unnecessary IIFE during downlevel emit for existing, working code.

Fixes #48515

@typescript-bot typescript-bot added Author: Team For Uncommitted Bug PR for untriaged, rejected, closed or missing bug labels Jul 27, 2022
@rbuckton
Copy link
Member Author

@typescript-bot perf test

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jul 27, 2022

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Compiler

Comparison Report - main..50074
Metric main 50074 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 360,217k (± 0.02%) 360,248k (± 0.02%) +31k (+ 0.01%) 360,110k 360,347k
Parse Time 2.10s (± 0.32%) 2.11s (± 0.49%) +0.02s (+ 0.72%) 2.10s 2.14s
Bind Time 0.89s (± 0.79%) 0.90s (± 0.72%) +0.01s (+ 1.01%) 0.88s 0.91s
Check Time 6.00s (± 0.59%) 6.04s (± 0.66%) +0.03s (+ 0.55%) 5.91s 6.12s
Emit Time 6.15s (± 0.53%) 6.21s (± 0.36%) +0.06s (+ 1.02%) 6.16s 6.28s
Total Time 15.14s (± 0.41%) 15.26s (± 0.36%) +0.12s (+ 0.78%) 15.11s 15.41s
Compiler-Unions - node (v10.16.3, x64)
Memory used 206,895k (± 0.03%) 206,937k (± 0.04%) +41k (+ 0.02%) 206,735k 207,094k
Parse Time 0.84s (± 0.91%) 0.84s (± 0.35%) +0.00s (+ 0.24%) 0.83s 0.84s
Bind Time 0.52s (± 1.70%) 0.53s (± 1.29%) +0.00s (+ 0.38%) 0.51s 0.54s
Check Time 7.14s (± 0.54%) 7.14s (± 0.60%) +0.00s (+ 0.04%) 7.03s 7.24s
Emit Time 2.50s (± 1.05%) 2.52s (± 1.12%) +0.02s (+ 0.96%) 2.46s 2.59s
Total Time 11.00s (± 0.48%) 11.02s (± 0.50%) +0.03s (+ 0.25%) 10.94s 11.17s
Monaco - node (v10.16.3, x64)
Memory used 343,868k (± 0.02%) 343,905k (± 0.02%) +37k (+ 0.01%) 343,752k 344,102k
Parse Time 1.61s (± 0.50%) 1.60s (± 0.74%) -0.01s (- 0.37%) 1.58s 1.64s
Bind Time 0.76s (± 1.58%) 0.77s (± 1.63%) +0.00s (+ 0.13%) 0.75s 0.81s
Check Time 5.99s (± 0.48%) 6.00s (± 0.55%) +0.01s (+ 0.13%) 5.94s 6.11s
Emit Time 3.26s (± 0.70%) 3.27s (± 0.71%) +0.01s (+ 0.43%) 3.23s 3.32s
Total Time 11.63s (± 0.41%) 11.64s (± 0.47%) +0.01s (+ 0.11%) 11.55s 11.78s
TFS - node (v10.16.3, x64)
Memory used 305,129k (± 0.03%) 305,155k (± 0.02%) +26k (+ 0.01%) 304,985k 305,233k
Parse Time 1.29s (± 0.52%) 1.29s (± 0.52%) -0.00s (- 0.00%) 1.27s 1.30s
Bind Time 0.71s (± 0.70%) 0.72s (± 0.62%) +0.00s (+ 0.42%) 0.71s 0.73s
Check Time 5.44s (± 0.51%) 5.44s (± 0.44%) +0.00s (+ 0.04%) 5.39s 5.50s
Emit Time 3.45s (± 0.98%) 3.44s (± 0.99%) -0.01s (- 0.41%) 3.39s 3.54s
Total Time 10.90s (± 0.51%) 10.89s (± 0.37%) -0.01s (- 0.06%) 10.80s 10.96s
material-ui - node (v10.16.3, x64)
Memory used 469,422k (± 0.01%) 469,437k (± 0.01%) +15k (+ 0.00%) 469,326k 469,560k
Parse Time 1.85s (± 0.75%) 1.85s (± 0.58%) +0.00s (+ 0.16%) 1.82s 1.87s
Bind Time 0.69s (± 1.76%) 0.69s (± 1.35%) +0.00s (+ 0.29%) 0.67s 0.70s
Check Time 14.63s (± 0.72%) 14.61s (± 0.71%) -0.02s (- 0.12%) 14.39s 14.84s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 17.16s (± 0.62%) 17.15s (± 0.62%) -0.01s (- 0.06%) 16.91s 17.38s
xstate - node (v10.16.3, x64)
Memory used 578,152k (± 0.02%) 578,213k (± 0.01%) +61k (+ 0.01%) 578,024k 578,323k
Parse Time 2.62s (± 0.51%) 2.61s (± 0.27%) -0.00s (- 0.15%) 2.60s 2.63s
Bind Time 1.03s (± 0.63%) 1.03s (± 0.74%) -0.00s (- 0.19%) 1.01s 1.04s
Check Time 1.57s (± 0.52%) 1.57s (± 0.63%) +0.00s (+ 0.19%) 1.55s 1.60s
Emit Time 0.07s (± 3.14%) 0.07s (± 3.14%) 0.00s ( 0.00%) 0.07s 0.08s
Total Time 5.28s (± 0.37%) 5.28s (± 0.36%) -0.00s (- 0.06%) 5.23s 5.31s
Angular - node (v12.1.0, x64)
Memory used 337,689k (± 0.08%) 337,849k (± 0.02%) +160k (+ 0.05%) 337,667k 337,980k
Parse Time 2.09s (± 0.51%) 2.10s (± 0.52%) +0.01s (+ 0.53%) 2.08s 2.13s
Bind Time 0.86s (± 0.80%) 0.86s (± 1.16%) +0.00s (+ 0.58%) 0.85s 0.89s
Check Time 5.82s (± 0.55%) 5.82s (± 0.62%) +0.00s (+ 0.05%) 5.76s 5.93s
Emit Time 6.42s (± 1.08%) 6.38s (± 0.71%) -0.04s (- 0.62%) 6.29s 6.52s
Total Time 15.19s (± 0.62%) 15.17s (± 0.53%) -0.02s (- 0.12%) 15.02s 15.37s
Compiler-Unions - node (v12.1.0, x64)
Memory used 194,446k (± 0.17%) 194,616k (± 0.03%) +170k (+ 0.09%) 194,470k 194,750k
Parse Time 0.82s (± 0.73%) 0.83s (± 0.48%) +0.01s (+ 0.73%) 0.82s 0.84s
Bind Time 0.55s (± 1.18%) 0.55s (± 0.67%) -0.00s (- 0.36%) 0.54s 0.55s
Check Time 6.67s (± 0.58%) 6.72s (± 0.64%) +0.05s (+ 0.72%) 6.62s 6.81s
Emit Time 2.52s (± 0.85%) 2.55s (± 0.85%) +0.03s (+ 1.03%) 2.51s 2.62s
Total Time 10.57s (± 0.37%) 10.65s (± 0.57%) +0.08s (+ 0.71%) 10.52s 10.80s
Monaco - node (v12.1.0, x64)
Memory used 326,834k (± 0.03%) 326,813k (± 0.02%) -21k (- 0.01%) 326,587k 326,961k
Parse Time 1.58s (± 0.90%) 1.58s (± 1.07%) -0.00s (- 0.25%) 1.54s 1.62s
Bind Time 0.74s (± 0.80%) 0.75s (± 0.91%) +0.00s (+ 0.27%) 0.73s 0.76s
Check Time 5.82s (± 0.39%) 5.81s (± 0.46%) -0.01s (- 0.17%) 5.73s 5.88s
Emit Time 3.30s (± 0.36%) 3.33s (± 0.63%) +0.03s (+ 0.88%) 3.28s 3.37s
Total Time 11.45s (± 0.21%) 11.46s (± 0.38%) +0.02s (+ 0.14%) 11.40s 11.58s
TFS - node (v12.1.0, x64)
Memory used 289,763k (± 0.02%) 289,737k (± 0.01%) -26k (- 0.01%) 289,659k 289,816k
Parse Time 1.30s (± 0.60%) 1.29s (± 0.76%) -0.01s (- 0.69%) 1.27s 1.32s
Bind Time 0.71s (± 0.84%) 0.72s (± 1.31%) +0.01s (+ 1.26%) 0.71s 0.75s
Check Time 5.37s (± 0.45%) 5.37s (± 0.64%) 0.00s ( 0.00%) 5.29s 5.45s
Emit Time 3.54s (± 0.75%) 3.50s (± 1.17%) -0.04s (- 1.05%) 3.42s 3.58s
Total Time 10.92s (± 0.43%) 10.89s (± 0.64%) -0.04s (- 0.34%) 10.73s 11.03s
material-ui - node (v12.1.0, x64)
Memory used 448,505k (± 0.01%) 448,404k (± 0.05%) -101k (- 0.02%) 447,518k 448,586k
Parse Time 1.83s (± 0.67%) 1.83s (± 0.40%) -0.00s (- 0.16%) 1.81s 1.84s
Bind Time 0.67s (± 0.71%) 0.67s (± 0.54%) +0.00s (+ 0.15%) 0.67s 0.68s
Check Time 13.08s (± 0.40%) 13.13s (± 0.63%) +0.05s (+ 0.37%) 12.97s 13.36s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.58s (± 0.37%) 15.63s (± 0.54%) +0.04s (+ 0.29%) 15.46s 15.85s
xstate - node (v12.1.0, x64)
Memory used 546,945k (± 1.31%) 543,661k (± 0.01%) -3,285k (- 0.60%) 543,459k 543,766k
Parse Time 2.56s (± 0.25%) 2.55s (± 0.33%) -0.01s (- 0.27%) 2.54s 2.58s
Bind Time 1.03s (± 1.51%) 1.04s (± 1.25%) +0.00s (+ 0.00%) 1.02s 1.07s
Check Time 1.51s (± 0.48%) 1.51s (± 0.80%) -0.00s (- 0.13%) 1.49s 1.54s
Emit Time 0.07s (± 0.00%) 0.07s (± 0.00%) 0.00s ( 0.00%) 0.07s 0.07s
Total Time 5.17s (± 0.37%) 5.16s (± 0.33%) -0.01s (- 0.14%) 5.13s 5.20s
Angular - node (v14.15.1, x64)
Memory used 335,964k (± 0.01%) 335,862k (± 0.08%) -102k (- 0.03%) 334,775k 336,039k
Parse Time 2.07s (± 0.52%) 2.09s (± 0.64%) +0.02s (+ 0.87%) 2.06s 2.13s
Bind Time 0.89s (± 0.66%) 0.90s (± 0.81%) +0.00s (+ 0.45%) 0.88s 0.91s
Check Time 5.82s (± 0.46%) 5.81s (± 0.39%) -0.01s (- 0.10%) 5.77s 5.87s
Emit Time 6.43s (± 0.66%) 6.41s (± 0.60%) -0.02s (- 0.25%) 6.33s 6.48s
Total Time 15.21s (± 0.41%) 15.21s (± 0.28%) -0.00s (- 0.01%) 15.11s 15.29s
Compiler-Unions - node (v14.15.1, x64)
Memory used 193,686k (± 0.43%) 193,175k (± 0.02%) -511k (- 0.26%) 193,082k 193,235k
Parse Time 0.86s (± 1.18%) 0.85s (± 0.82%) -0.00s (- 0.47%) 0.84s 0.87s
Bind Time 0.57s (± 1.85%) 0.57s (± 1.23%) -0.01s (- 1.04%) 0.56s 0.59s
Check Time 6.73s (± 0.41%) 6.72s (± 0.78%) -0.01s (- 0.19%) 6.63s 6.86s
Emit Time 2.50s (± 1.40%) 2.49s (± 0.77%) -0.01s (- 0.56%) 2.45s 2.53s
Total Time 10.66s (± 0.38%) 10.63s (± 0.54%) -0.03s (- 0.31%) 10.52s 10.77s
Monaco - node (v14.15.1, x64)
Memory used 325,645k (± 0.01%) 325,658k (± 0.01%) +13k (+ 0.00%) 325,616k 325,700k
Parse Time 1.59s (± 0.93%) 1.58s (± 0.48%) -0.01s (- 0.88%) 1.56s 1.59s
Bind Time 0.79s (± 0.87%) 0.78s (± 1.19%) -0.00s (- 0.51%) 0.77s 0.81s
Check Time 5.69s (± 0.47%) 5.69s (± 0.56%) -0.00s (- 0.07%) 5.63s 5.76s
Emit Time 3.37s (± 0.54%) 3.36s (± 0.64%) -0.01s (- 0.24%) 3.31s 3.41s
Total Time 11.44s (± 0.34%) 11.41s (± 0.42%) -0.03s (- 0.25%) 11.31s 11.53s
TFS - node (v14.15.1, x64)
Memory used 288,819k (± 0.01%) 288,814k (± 0.01%) -5k (- 0.00%) 288,722k 288,906k
Parse Time 1.34s (± 2.12%) 1.34s (± 1.29%) -0.00s (- 0.00%) 1.31s 1.38s
Bind Time 0.78s (± 4.87%) 0.76s (± 3.60%) 🟩-0.03s (- 3.45%) 0.73s 0.85s
Check Time 5.34s (± 0.65%) 5.35s (± 0.49%) +0.01s (+ 0.17%) 5.31s 5.42s
Emit Time 3.56s (± 2.25%) 3.60s (± 2.07%) +0.04s (+ 1.18%) 3.40s 3.72s
Total Time 11.02s (± 0.90%) 11.05s (± 0.61%) +0.02s (+ 0.20%) 10.89s 11.20s
material-ui - node (v14.15.1, x64)
Memory used 446,715k (± 0.01%) 446,746k (± 0.01%) +31k (+ 0.01%) 446,676k 446,836k
Parse Time 1.88s (± 0.59%) 1.88s (± 0.50%) -0.00s (- 0.21%) 1.87s 1.91s
Bind Time 0.73s (± 1.67%) 0.72s (± 1.22%) -0.01s (- 1.09%) 0.70s 0.74s
Check Time 13.22s (± 0.57%) 13.25s (± 0.58%) +0.03s (+ 0.26%) 13.13s 13.49s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.83s (± 0.55%) 15.86s (± 0.47%) +0.03s (+ 0.16%) 15.74s 16.07s
xstate - node (v14.15.1, x64)
Memory used 541,503k (± 0.00%) 541,529k (± 0.00%) +26k (+ 0.00%) 541,505k 541,598k
Parse Time 2.61s (± 0.45%) 2.61s (± 0.39%) -0.00s (- 0.11%) 2.59s 2.63s
Bind Time 1.15s (± 0.83%) 1.15s (± 0.91%) +0.00s (+ 0.35%) 1.12s 1.17s
Check Time 1.56s (± 0.70%) 1.56s (± 0.65%) -0.00s (- 0.19%) 1.54s 1.58s
Emit Time 0.07s (± 4.13%) 0.07s (± 4.95%) +0.00s (+ 4.17%) 0.07s 0.08s
Total Time 5.38s (± 0.43%) 5.38s (± 0.43%) -0.00s (- 0.04%) 5.34s 5.44s
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 (v10.16.3, x64)
  • node (v12.1.0, x64)
  • node (v14.15.1, x64)
Scenarios
  • Angular - node (v10.16.3, x64)
  • Angular - node (v12.1.0, x64)
  • Angular - node (v14.15.1, x64)
  • Compiler-Unions - node (v10.16.3, x64)
  • Compiler-Unions - node (v12.1.0, x64)
  • Compiler-Unions - node (v14.15.1, x64)
  • Monaco - node (v10.16.3, x64)
  • Monaco - node (v12.1.0, x64)
  • Monaco - node (v14.15.1, x64)
  • TFS - node (v10.16.3, x64)
  • TFS - node (v12.1.0, x64)
  • TFS - node (v14.15.1, x64)
  • material-ui - node (v10.16.3, x64)
  • material-ui - node (v12.1.0, x64)
  • material-ui - node (v14.15.1, x64)
  • xstate - node (v10.16.3, x64)
  • xstate - node (v12.1.0, x64)
  • xstate - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50074 10
Baseline main 10

TSServer

Comparison Report - main..50074
Metric main 50074 Delta Best Worst
Compiler-UnionsTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 1,459ms (± 0.49%) 1,449ms (± 0.55%) -9ms (- 0.64%) 1,429ms 1,466ms
Req 2 - geterr 3,621ms (± 0.65%) 3,603ms (± 0.64%) -17ms (- 0.47%) 3,546ms 3,665ms
Req 3 - references 279ms (± 1.73%) 277ms (± 1.29%) -3ms (- 0.90%) 272ms 288ms
Req 4 - navto 232ms (± 0.51%) 231ms (± 0.70%) -1ms (- 0.39%) 228ms 234ms
Req 5 - completionInfo count 1,355 (± 0.00%) 1,355 (± 0.00%) 0 ( 0.00%) 1,355 1,355
Req 5 - completionInfo 71ms (± 8.70%) 66ms (± 2.92%) 🟩-5ms (- 6.36%) 61ms 70ms
CompilerTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 1,555ms (± 0.58%) 1,553ms (± 0.58%) -3ms (- 0.17%) 1,543ms 1,587ms
Req 2 - geterr 2,270ms (± 0.60%) 2,270ms (± 0.57%) +0ms (+ 0.02%) 2,250ms 2,303ms
Req 3 - references 297ms (± 0.77%) 299ms (± 1.78%) +3ms (+ 0.84%) 292ms 315ms
Req 4 - navto 233ms (± 2.07%) 238ms (± 2.01%) +5ms (+ 2.32%) 223ms 244ms
Req 5 - completionInfo count 1,517 (± 0.00%) 1,517 (± 0.00%) 0 ( 0.00%) 1,517 1,517
Req 5 - completionInfo 68ms (± 1.47%) 68ms (± 3.62%) -0ms (- 0.58%) 62ms 72ms
xstateTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 2,171ms (± 0.42%) 2,156ms (± 0.70%) -16ms (- 0.72%) 2,111ms 2,177ms
Req 2 - geterr 777ms (± 0.73%) 773ms (± 0.60%) -4ms (- 0.48%) 762ms 783ms
Req 3 - references 95ms (± 1.25%) 95ms (± 0.78%) +0ms (+ 0.11%) 94ms 97ms
Req 4 - navto 255ms (± 0.86%) 255ms (± 0.92%) -1ms (- 0.20%) 247ms 259ms
Req 5 - completionInfo count 3,244 (± 0.00%) 3,244 (± 0.00%) 0 ( 0.00%) 3,244 3,244
Req 5 - completionInfo 274ms (± 1.24%) 274ms (± 0.87%) -0ms (- 0.07%) 268ms 278ms
Compiler-UnionsTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 1,493ms (± 1.09%) 1,478ms (± 0.69%) -15ms (- 1.00%) 1,454ms 1,502ms
Req 2 - geterr 3,396ms (± 0.49%) 3,386ms (± 0.73%) -11ms (- 0.32%) 3,318ms 3,426ms
Req 3 - references 263ms (± 0.78%) 264ms (± 0.70%) +1ms (+ 0.42%) 261ms 268ms
Req 4 - navto 205ms (± 0.80%) 203ms (± 0.89%) -2ms (- 0.88%) 197ms 206ms
Req 5 - completionInfo count 1,355 (± 0.00%) 1,355 (± 0.00%) 0 ( 0.00%) 1,355 1,355
Req 5 - completionInfo 77ms (±13.34%) 77ms (±14.12%) +0ms (+ 0.13%) 58ms 96ms
CompilerTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 1,572ms (± 0.67%) 1,564ms (± 0.60%) -8ms (- 0.50%) 1,546ms 1,584ms
Req 2 - geterr 2,215ms (± 0.41%) 2,219ms (± 0.53%) +4ms (+ 0.18%) 2,200ms 2,244ms
Req 3 - references 272ms (± 0.73%) 271ms (± 0.85%) -1ms (- 0.26%) 267ms 277ms
Req 4 - navto 214ms (± 1.44%) 217ms (± 1.60%) +3ms (+ 1.26%) 211ms 229ms
Req 5 - completionInfo count 1,517 (± 0.00%) 1,517 (± 0.00%) 0 ( 0.00%) 1,517 1,517
Req 5 - completionInfo 63ms (± 2.77%) 61ms (± 4.28%) 🟩-2ms (- 3.18%) 55ms 66ms
xstateTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 2,093ms (± 0.49%) 2,098ms (± 0.47%) +5ms (+ 0.26%) 2,077ms 2,120ms
Req 2 - geterr 760ms (± 0.58%) 761ms (± 0.48%) +1ms (+ 0.08%) 752ms 771ms
Req 3 - references 66ms (± 1.46%) 66ms (± 1.36%) +0ms (+ 0.15%) 63ms 67ms
Req 4 - navto 241ms (± 1.07%) 240ms (± 1.48%) -1ms (- 0.54%) 232ms 249ms
Req 5 - completionInfo count 3,244 (± 0.00%) 3,244 (± 0.00%) 0 ( 0.00%) 3,244 3,244
Req 5 - completionInfo 263ms (± 1.02%) 263ms (± 0.84%) -0ms (- 0.11%) 259ms 270ms
Compiler-UnionsTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,520ms (± 0.54%) 1,523ms (± 0.60%) +3ms (+ 0.21%) 1,503ms 1,541ms
Req 2 - geterr 3,540ms (± 0.76%) 3,533ms (± 0.68%) -7ms (- 0.19%) 3,495ms 3,606ms
Req 3 - references 277ms (± 0.62%) 278ms (± 0.71%) +1ms (+ 0.43%) 275ms 283ms
Req 4 - navto 219ms (± 0.74%) 222ms (± 0.60%) +3ms (+ 1.28%) 220ms 226ms
Req 5 - completionInfo count 1,355 (± 0.00%) 1,355 (± 0.00%) 0 ( 0.00%) 1,355 1,355
Req 5 - completionInfo 57ms (± 4.64%) 55ms (± 0.81%) 🟩-2ms (- 3.01%) 54ms 56ms
CompilerTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,610ms (± 0.65%) 1,594ms (± 0.43%) -15ms (- 0.94%) 1,579ms 1,607ms
Req 2 - geterr 2,352ms (± 0.35%) 2,334ms (± 0.22%) -19ms (- 0.79%) 2,319ms 2,343ms
Req 3 - references 290ms (± 1.06%) 286ms (± 0.51%) -4ms (- 1.31%) 282ms 289ms
Req 4 - navto 232ms (± 1.68%) 229ms (± 0.93%) -4ms (- 1.51%) 225ms 235ms
Req 5 - completionInfo count 1,517 (± 0.00%) 1,517 (± 0.00%) 0 ( 0.00%) 1,517 1,517
Req 5 - completionInfo 53ms (± 0.98%) 53ms (± 0.42%) -0ms (- 0.38%) 52ms 53ms
xstateTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 2,241ms (± 0.27%) 2,224ms (± 0.39%) -18ms (- 0.79%) 2,209ms 2,241ms
Req 2 - geterr 777ms (± 0.61%) 775ms (± 0.46%) -3ms (- 0.33%) 766ms 783ms
Req 3 - references 64ms (± 0.90%) 64ms (± 0.70%) -0ms (- 0.31%) 63ms 65ms
Req 4 - navto 251ms (± 0.69%) 251ms (± 0.68%) +1ms (+ 0.24%) 248ms 254ms
Req 5 - completionInfo count 3,244 (± 0.00%) 3,244 (± 0.00%) 0 ( 0.00%) 3,244 3,244
Req 5 - completionInfo 272ms (± 4.58%) 265ms (± 0.59%) -8ms (- 2.79%) 261ms 269ms
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 (v10.16.3, x64)
  • node (v12.1.0, x64)
  • node (v14.15.1, x64)
Scenarios
  • Compiler-UnionsTSServer - node (v10.16.3, x64)
  • Compiler-UnionsTSServer - node (v12.1.0, x64)
  • Compiler-UnionsTSServer - node (v14.15.1, x64)
  • CompilerTSServer - node (v10.16.3, x64)
  • CompilerTSServer - node (v12.1.0, x64)
  • CompilerTSServer - node (v14.15.1, x64)
  • xstateTSServer - node (v10.16.3, x64)
  • xstateTSServer - node (v12.1.0, x64)
  • xstateTSServer - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50074 10
Baseline main 10

Developer Information:

Download Benchmark

@rbuckton rbuckton force-pushed the wip-decoratorsWithPrivateFieldAccess2 branch from ecaf38f to 0c04351 Compare July 29, 2022 18:05
@rbuckton rbuckton marked this pull request as ready for review July 29, 2022 18:10
@typescript-bot typescript-bot added For Milestone Bug PRs that fix a bug with a specific milestone and removed For Uncommitted Bug PR for untriaged, rejected, closed or missing bug labels Jul 29, 2022
Copy link
Member

@weswigham weswigham left a comment

Choose a reason for hiding this comment

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

Looks good, but could probably use a test for the parameter decorator case, since that uses some differing checks if I've read it correctly.

@rbuckton
Copy link
Member Author

rbuckton commented Jul 29, 2022

You are correct that the checker reports an error here, though it shouldn't for class elements since

method(@dec p) {}

Is essentially the same as

@__param(dec, 0)
method(p) {}

Sorry, I spoke too soon. We do not report an error here, I just had a typo in my updated test.

@rbuckton rbuckton force-pushed the wip-decoratorsWithPrivateFieldAccess2 branch from 0c04351 to 4060783 Compare July 29, 2022 19:01
@rbuckton rbuckton merged commit 88a1e3a into main Jul 29, 2022
@rbuckton rbuckton deleted the wip-decoratorsWithPrivateFieldAccess2 branch July 29, 2022 19:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Author: Team For Milestone Bug PRs that fix a bug with a specific milestone
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Decorators broken with private fields, generated code has syntax error
3 participants