-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix(es/compat): Fix loose mode of the
spread
pass (#7608)
**Related issue:** - Closes #7354
- Loading branch information
Showing
7 changed files
with
51 additions
and
1 deletion.
There are no files selected for viewing
11 changes: 11 additions & 0 deletions
11
crates/swc/tests/fixture/issues-7xxx/7354/case1/input/.swcrc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
{ | ||
"jsc": { | ||
"parser": { | ||
"syntax": "ecmascript", | ||
"jsx": false | ||
}, | ||
"target": "es5", | ||
"loose": true | ||
}, | ||
"isModule": false | ||
} |
2 changes: 2 additions & 0 deletions
2
crates/swc/tests/fixture/issues-7xxx/7354/case1/input/index.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
const data = {} | ||
const temp = [...data.demo, ...data.demo2] |
2 changes: 2 additions & 0 deletions
2
crates/swc/tests/fixture/issues-7xxx/7354/case1/output/index.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
var data = {}; | ||
var temp = [].concat(data.demo, data.demo2); |
10 changes: 10 additions & 0 deletions
10
crates/swc/tests/fixture/issues-7xxx/7354/case2/input/.swcrc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
{ | ||
"jsc": { | ||
"parser": { | ||
"syntax": "ecmascript", | ||
"jsx": false | ||
}, | ||
"target": "es5" | ||
}, | ||
"isModule": false | ||
} |
2 changes: 2 additions & 0 deletions
2
crates/swc/tests/fixture/issues-7xxx/7354/case2/input/index.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
const data = {} | ||
const temp = [...data.demo, ...data.demo2] |
3 changes: 3 additions & 0 deletions
3
crates/swc/tests/fixture/issues-7xxx/7354/case2/output/index.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
var _to_consumable_array = require("@swc/helpers/_/_to_consumable_array"); | ||
var data = {}; | ||
var temp = _to_consumable_array._(data.demo).concat(_to_consumable_array._(data.demo2)); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
a7daa5b
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Benchmark
es/full/bugs-1
283983
ns/iter (± 1467
)285631
ns/iter (± 9151
)0.99
es/full/minify/libraries/antd
1312181534
ns/iter (± 8400074
)1299990443
ns/iter (± 9999522
)1.01
es/full/minify/libraries/d3
278593802
ns/iter (± 3559922
)276018893
ns/iter (± 7711417
)1.01
es/full/minify/libraries/echarts
1051700219
ns/iter (± 7816484
)1050212355
ns/iter (± 5668307
)1.00
es/full/minify/libraries/jquery
84979655
ns/iter (± 109305
)84569114
ns/iter (± 104345
)1.00
es/full/minify/libraries/lodash
98509006
ns/iter (± 189904
)98474121
ns/iter (± 206667
)1.00
es/full/minify/libraries/moment
50089826
ns/iter (± 44879
)49770103
ns/iter (± 81741
)1.01
es/full/minify/libraries/react
18031577
ns/iter (± 16661
)17974112
ns/iter (± 27148
)1.00
es/full/minify/libraries/terser
219605389
ns/iter (± 324078
)217347994
ns/iter (± 423190
)1.01
es/full/minify/libraries/three
384727937
ns/iter (± 2782730
)382722934
ns/iter (± 875748
)1.01
es/full/minify/libraries/typescript
2649291381
ns/iter (± 8053763
)2637732672
ns/iter (± 11159058
)1.00
es/full/minify/libraries/victory
556657840
ns/iter (± 4498258
)555289685
ns/iter (± 5146012
)1.00
es/full/minify/libraries/vue
119976592
ns/iter (± 412618
)120487294
ns/iter (± 178237
)1.00
es/full/codegen/es3
35495
ns/iter (± 97
)35231
ns/iter (± 121
)1.01
es/full/codegen/es5
35545
ns/iter (± 78
)35191
ns/iter (± 67
)1.01
es/full/codegen/es2015
35542
ns/iter (± 53
)35214
ns/iter (± 124
)1.01
es/full/codegen/es2016
35549
ns/iter (± 108
)35150
ns/iter (± 129
)1.01
es/full/codegen/es2017
35481
ns/iter (± 65
)35200
ns/iter (± 114
)1.01
es/full/codegen/es2018
35520
ns/iter (± 92
)35224
ns/iter (± 269
)1.01
es/full/codegen/es2019
35559
ns/iter (± 112
)35201
ns/iter (± 82
)1.01
es/full/codegen/es2020
35504
ns/iter (± 78
)35038
ns/iter (± 192
)1.01
es/full/all/es3
171850912
ns/iter (± 1157975
)173582531
ns/iter (± 691178
)0.99
es/full/all/es5
164707054
ns/iter (± 1024273
)166407156
ns/iter (± 1801503
)0.99
es/full/all/es2015
123513206
ns/iter (± 652572
)123808368
ns/iter (± 710692
)1.00
es/full/all/es2016
122844236
ns/iter (± 725269
)123451891
ns/iter (± 632335
)1.00
es/full/all/es2017
121839938
ns/iter (± 506334
)122489359
ns/iter (± 626260
)0.99
es/full/all/es2018
120134407
ns/iter (± 843293
)120456655
ns/iter (± 773323
)1.00
es/full/all/es2019
119414136
ns/iter (± 1242485
)120243183
ns/iter (± 667485
)0.99
es/full/all/es2020
114486275
ns/iter (± 447504
)115203953
ns/iter (± 398041
)0.99
es/full/parser
533550
ns/iter (± 5642
)530296
ns/iter (± 7536
)1.01
es/full/base/fixer
17398
ns/iter (± 87
)20452
ns/iter (± 121
)0.85
es/full/base/resolver_and_hygiene
79877
ns/iter (± 191
)80917
ns/iter (± 268
)0.99
serialization of serde
304
ns/iter (± 0
)323
ns/iter (± 0
)0.94
css/minify/libraries/bootstrap
28794150
ns/iter (± 46672
)29087197
ns/iter (± 115607
)0.99
css/visitor/compare/clone
1626688
ns/iter (± 3853
)1635134
ns/iter (± 5499
)0.99
css/visitor/compare/visit_mut_span
1755593
ns/iter (± 6835
)1767527
ns/iter (± 4446
)0.99
css/visitor/compare/visit_mut_span_panic
1829679
ns/iter (± 6889
)1841931
ns/iter (± 4641
)0.99
css/visitor/compare/fold_span
2564468
ns/iter (± 9497
)2587739
ns/iter (± 11255
)0.99
css/visitor/compare/fold_span_panic
2751650
ns/iter (± 15264
)2747899
ns/iter (± 15412
)1.00
css/lexer/bootstrap_5_1_3
4442149
ns/iter (± 6464
)4431159
ns/iter (± 2961
)1.00
css/lexer/foundation_6_7_4
3756929
ns/iter (± 2910
)3743498
ns/iter (± 6706
)1.00
css/lexer/tailwind_3_1_1
712226
ns/iter (± 887
)711894
ns/iter (± 1324
)1.00
css/parser/bootstrap_5_1_3
19631768
ns/iter (± 32456
)20150085
ns/iter (± 106457
)0.97
css/parser/foundation_6_7_4
15281275
ns/iter (± 36056
)16373248
ns/iter (± 15862
)0.93
css/parser/tailwind_3_1_1
2984921
ns/iter (± 2898
)3109204
ns/iter (± 4501
)0.96
es/codegen/colors
735239
ns/iter (± 405568
)735454
ns/iter (± 402299
)1.00
es/codegen/large
3141034
ns/iter (± 1671325
)3134841
ns/iter (± 1672154
)1.00
es/codegen/with-parser/colors
44489
ns/iter (± 512
)43875
ns/iter (± 485
)1.01
es/codegen/with-parser/large
487455
ns/iter (± 747
)485170
ns/iter (± 811
)1.00
es/minify/libraries/antd
1115315457
ns/iter (± 10270838
)1127062273
ns/iter (± 6424099
)0.99
es/minify/libraries/d3
239984526
ns/iter (± 481538
)240882500
ns/iter (± 429114
)1.00
es/minify/libraries/echarts
894223120
ns/iter (± 2448010
)899106257
ns/iter (± 2185040
)0.99
es/minify/libraries/jquery
73732973
ns/iter (± 80331
)73851913
ns/iter (± 201799
)1.00
es/minify/libraries/lodash
88457890
ns/iter (± 74958
)88692400
ns/iter (± 197707
)1.00
es/minify/libraries/moment
43631983
ns/iter (± 99780
)43747803
ns/iter (± 51049
)1.00
es/minify/libraries/react
16008283
ns/iter (± 40758
)16134454
ns/iter (± 60816
)0.99
es/minify/libraries/terser
186150193
ns/iter (± 189628
)187114194
ns/iter (± 457520
)0.99
es/minify/libraries/three
318917486
ns/iter (± 915537
)321131012
ns/iter (± 832124
)0.99
es/minify/libraries/typescript
2249353672
ns/iter (± 5506953
)2260071081
ns/iter (± 7206501
)1.00
es/minify/libraries/victory
471212225
ns/iter (± 2174055
)467965910
ns/iter (± 1027463
)1.01
es/minify/libraries/vue
107415661
ns/iter (± 136766
)107636332
ns/iter (± 186722
)1.00
es/visitor/compare/clone
1946636
ns/iter (± 4243
)1959977
ns/iter (± 4910
)0.99
es/visitor/compare/visit_mut_span
2289260
ns/iter (± 2928
)2301947
ns/iter (± 5222
)0.99
es/visitor/compare/visit_mut_span_panic
2314057
ns/iter (± 3104
)2331419
ns/iter (± 5300
)0.99
es/visitor/compare/fold_span
3360198
ns/iter (± 6249
)3365869
ns/iter (± 4709
)1.00
es/visitor/compare/fold_span_panic
3487642
ns/iter (± 6346
)3512774
ns/iter (± 10769
)0.99
es/lexer/colors
12236
ns/iter (± 50
)12606
ns/iter (± 65
)0.97
es/lexer/angular
5987452
ns/iter (± 13520
)6050152
ns/iter (± 16454
)0.99
es/lexer/backbone
766923
ns/iter (± 7743
)777638
ns/iter (± 354
)0.99
es/lexer/jquery
4337048
ns/iter (± 5735
)4418454
ns/iter (± 2159
)0.98
es/lexer/jquery mobile
6633527
ns/iter (± 16247
)6780992
ns/iter (± 4827
)0.98
es/lexer/mootools
3446234
ns/iter (± 2207
)3518056
ns/iter (± 6742
)0.98
es/lexer/underscore
637307
ns/iter (± 1866
)649973
ns/iter (± 398
)0.98
es/lexer/three
20483346
ns/iter (± 34713
)20861413
ns/iter (± 40956
)0.98
es/lexer/yui
3734088
ns/iter (± 2525
)3811789
ns/iter (± 4167
)0.98
es/parser/colors
26432
ns/iter (± 33
)26201
ns/iter (± 101
)1.01
es/parser/angular
13308371
ns/iter (± 57055
)13261755
ns/iter (± 35044
)1.00
es/parser/backbone
1980249
ns/iter (± 10538
)1967655
ns/iter (± 10216
)1.01
es/parser/jquery
10799353
ns/iter (± 30760
)10668990
ns/iter (± 47415
)1.01
es/parser/jquery mobile
16545275
ns/iter (± 43564
)16391725
ns/iter (± 34812
)1.01
es/parser/mootools
8303005
ns/iter (± 11371
)8225556
ns/iter (± 16670
)1.01
es/parser/underscore
1712843
ns/iter (± 14027
)1684166
ns/iter (± 9597
)1.02
es/parser/three
45840127
ns/iter (± 114176
)45501530
ns/iter (± 111633
)1.01
es/parser/yui
8193296
ns/iter (± 20133
)8133520
ns/iter (± 25939
)1.01
es/preset-env/usage/builtin_type
138368
ns/iter (± 33052
)136765
ns/iter (± 32144
)1.01
es/preset-env/usage/property
16783
ns/iter (± 56
)16811
ns/iter (± 39
)1.00
es/resolver/typescript
86711865
ns/iter (± 1094288
)86390618
ns/iter (± 1210577
)1.00
es/fixer/typescript
63706675
ns/iter (± 2197091
)62078444
ns/iter (± 1212459
)1.03
es/hygiene/typescript
127960713
ns/iter (± 263812
)128696350
ns/iter (± 430447
)0.99
es/resolver_with_hygiene/typescript
237315974
ns/iter (± 1143210
)237676785
ns/iter (± 1084554
)1.00
es/visitor/base-perf/module_clone
59247
ns/iter (± 281
)59449
ns/iter (± 256
)1.00
es/visitor/base-perf/fold_empty
63026
ns/iter (± 206
)64208
ns/iter (± 231
)0.98
es/visitor/base-perf/fold_noop_impl_all
63381
ns/iter (± 293
)63764
ns/iter (± 241
)0.99
es/visitor/base-perf/fold_noop_impl_vec
63703
ns/iter (± 903
)64401
ns/iter (± 385
)0.99
es/visitor/base-perf/boxing_boxed_clone
56
ns/iter (± 0
)57
ns/iter (± 0
)0.98
es/visitor/base-perf/boxing_unboxed_clone
41
ns/iter (± 0
)39
ns/iter (± 0
)1.05
es/visitor/base-perf/boxing_boxed
109
ns/iter (± 0
)109
ns/iter (± 0
)1
es/visitor/base-perf/boxing_unboxed
79
ns/iter (± 0
)80
ns/iter (± 0
)0.99
es/visitor/base-perf/visit_empty
0
ns/iter (± 0
)0
ns/iter (± 0
)NaN
es/visitor/base-perf/visit_contains_this
2557
ns/iter (± 31
)2612
ns/iter (± 12
)0.98
es/base/parallel/resolver/typescript
4332115921
ns/iter (± 221833555
)3902177776
ns/iter (± 313180266
)1.11
es/base/parallel/hygiene/typescript
1463074088
ns/iter (± 23439009
)1431510204
ns/iter (± 15944366
)1.02
misc/visitors/time-complexity/time 5
148
ns/iter (± 1
)148
ns/iter (± 0
)1
misc/visitors/time-complexity/time 10
428
ns/iter (± 0
)421
ns/iter (± 8
)1.02
misc/visitors/time-complexity/time 15
794
ns/iter (± 0
)885
ns/iter (± 1
)0.90
misc/visitors/time-complexity/time 20
1286
ns/iter (± 2
)1287
ns/iter (± 5
)1.00
misc/visitors/time-complexity/time 40
4333
ns/iter (± 4
)4359
ns/iter (± 5
)0.99
misc/visitors/time-complexity/time 60
9044
ns/iter (± 19
)9039
ns/iter (± 20
)1.00
es/full-target/es2016
239677
ns/iter (± 590
)237092
ns/iter (± 1200
)1.01
es/full-target/es2017
226679
ns/iter (± 394
)225221
ns/iter (± 635
)1.01
es/full-target/es2018
214622
ns/iter (± 720
)213484
ns/iter (± 831
)1.01
es2020_nullish_coalescing
69420
ns/iter (± 425
)70739
ns/iter (± 5573
)0.98
es2020_optional_chaining
79518
ns/iter (± 306
)79418
ns/iter (± 413
)1.00
es2022_class_properties
119930
ns/iter (± 365
)120932
ns/iter (± 343
)0.99
es2018_object_rest_spread
74656
ns/iter (± 140
)77127
ns/iter (± 256
)0.97
es2019_optional_catch_binding
63021
ns/iter (± 180
)65521
ns/iter (± 351
)0.96
es2017_async_to_generator
62951
ns/iter (± 222
)64408
ns/iter (± 175
)0.98
es2016_exponentiation
67307
ns/iter (± 160
)69287
ns/iter (± 395
)0.97
es2015_arrow
70642
ns/iter (± 251
)71044
ns/iter (± 197
)0.99
es2015_block_scoped_fn
67920
ns/iter (± 221
)68474
ns/iter (± 174
)0.99
es2015_block_scoping
124098
ns/iter (± 703
)125216
ns/iter (± 604
)0.99
This comment was automatically generated by workflow using github-action-benchmark.