tools icon indicating copy to clipboard operation
tools copied to clipboard

feat(rome_js_parser): optional variance annotation

Open IWANABETHATGUY opened this issue 2 years ago • 4 comments

Summary

part of #2400

current: File Based Average Prettier Similarity: 72.69%
Line Based Average Prettier Similarity: 67.25%

main: File Based Average Prettier Similarity: 72.65%
Line Based Average Prettier Similarity: 67.13%

Test Plan

I took test cases from esbuild https://github.com/evanw/esbuild/pull/2102, the original test case of Typescript pull request related to semantics, which we don't care too much about. esbuild Optional variance annotations pull request test case is more suitable for us.

IWANABETHATGUY avatar May 08 '22 14:05 IWANABETHATGUY

!bench_parser

IWANABETHATGUY avatar May 08 '22 14:05 IWANABETHATGUY

Parser Benchmark Results

group                                 main                                   pr
-----                                 ----                                   --
parser/checker.ts                     1.12    136.6±2.57ms    19.0 MB/sec    1.00    122.3±2.32ms    21.2 MB/sec
parser/compiler.js                    1.00     70.3±1.38ms    14.9 MB/sec    1.11     78.3±3.85ms    13.4 MB/sec
parser/d3.min.js                      1.01     42.9±0.70ms     6.1 MB/sec    1.00     42.6±0.73ms     6.2 MB/sec
parser/dojo.js                        1.01      3.8±0.01ms    18.2 MB/sec    1.00      3.7±0.00ms    18.4 MB/sec
parser/ios.d.ts                       1.05    106.2±1.86ms    17.6 MB/sec    1.00    101.6±1.95ms    18.4 MB/sec
parser/jquery.min.js                  1.01     11.1±0.03ms     7.4 MB/sec    1.00     11.0±0.03ms     7.5 MB/sec
parser/math.js                        1.00     84.9±1.56ms     7.6 MB/sec    1.00     84.8±1.35ms     7.6 MB/sec
parser/parser.ts                      1.02      2.6±0.01ms    18.3 MB/sec    1.00      2.6±0.00ms    18.7 MB/sec
parser/pixi.min.js                    1.01     51.9±1.08ms     8.5 MB/sec    1.00     51.7±1.59ms     8.5 MB/sec
parser/react-dom.production.min.js    1.15     17.5±0.13ms     6.6 MB/sec    1.00     15.2±0.06ms     7.6 MB/sec
parser/react.production.min.js        1.01    834.6±1.39µs     7.4 MB/sec    1.00    826.4±0.72µs     7.4 MB/sec
parser/router.ts                      1.02      2.2±0.01ms    28.1 MB/sec    1.00      2.1±0.00ms    28.6 MB/sec
parser/tex-chtml-full.js              1.03    116.6±1.61ms     7.8 MB/sec    1.00    112.9±2.97ms     8.1 MB/sec
parser/three.min.js                   1.00     60.2±1.09ms     9.8 MB/sec    1.00     60.3±1.47ms     9.7 MB/sec
parser/typescript.js                  1.01    526.3±6.63ms    18.0 MB/sec    1.00    523.5±7.09ms    18.1 MB/sec
parser/vue.global.prod.js             1.01     19.0±0.12ms     6.3 MB/sec    1.00     18.9±0.15ms     6.4 MB/sec

github-actions[bot] avatar May 08 '22 14:05 github-actions[bot]

This pull request is pretty big, so I prefer to separate the optional variance annotation formatting another pr

IWANABETHATGUY avatar May 08 '22 16:05 IWANABETHATGUY

@MichaReiser , @ematipico could we make some progress here ? Since prettier has been landed Ts 4.7, https://github.com/prettier/prettier/pull/12900

IWANABETHATGUY avatar May 23 '22 05:05 IWANABETHATGUY