Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix(es/renamer): Don't use symbols used by declarations if
eval
exi…
- Loading branch information
Showing
23 changed files
with
17,170 additions
and
17,079 deletions.
There are no files selected for viewing
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,19 @@ | ||
{ | ||
"jsc": { | ||
"parser": { | ||
"syntax": "ecmascript", | ||
"jsx": false | ||
}, | ||
"target": "es2015", | ||
"loose": true, | ||
"minify": { | ||
"compress": false, | ||
"mangle": false | ||
} | ||
}, | ||
"module": { | ||
"type": "es6" | ||
}, | ||
"minify": false, | ||
"isModule": true | ||
} |
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 @@ | ||
async function fromTokenizer() { } | ||
async function _fromTokenizer() { } | ||
eval() |
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,16 @@ | ||
import _async_to_generator from "@swc/helpers/src/_async_to_generator.mjs"; | ||
function fromTokenizer() { | ||
return _fromTokenizer1.apply(this, arguments); | ||
} | ||
function _fromTokenizer1() { | ||
_fromTokenizer1 = _async_to_generator(function*() {}); | ||
return _fromTokenizer1.apply(this, arguments); | ||
} | ||
function _fromTokenizer() { | ||
return __fromTokenizer.apply(this, arguments); | ||
} | ||
function __fromTokenizer() { | ||
__fromTokenizer = _async_to_generator(function*() {}); | ||
return __fromTokenizer.apply(this, arguments); | ||
} | ||
eval(); |
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
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
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
30,052 changes: 15,026 additions & 15,026 deletions
30,052
crates/swc_ecma_minifier/tests/fixture/next/wrap-contracts/output.js
Large diffs are not rendered by default.
Oops, something went wrong.
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,5 @@ | ||
export function useSyncExternalStore$2(e, n, t) { | ||
let a = n(); // any variable expect `e` | ||
return a; | ||
} | ||
eval(); |
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 @@ | ||
export function useSyncExternalStore$2(r,o,u){return o()}eval(); |
19 changes: 19 additions & 0 deletions
19
crates/swc_ecma_minifier/tests/full/issues/7094/2/input.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,19 @@ | ||
|
||
export function foo() { | ||
eval(); | ||
return function useSyncExternalStore$2(e, n, t) { | ||
let a = n(); // any variable expect `e` | ||
return a; | ||
} | ||
} | ||
|
||
export function bar() { | ||
|
||
const shouldBeMangled = Math.random() > 0.5 ? 1 : 2; | ||
console.log(shouldBeMangled) | ||
console.log(shouldBeMangled) | ||
console.log(shouldBeMangled) | ||
console.log(shouldBeMangled) | ||
console.log(shouldBeMangled) | ||
console.log(shouldBeMangled) | ||
} |
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 @@ | ||
export function foo(){return eval(),function(o,l,c){return l()}}export function bar(){const o=Math.random()>.5?1:2;console.log(o),console.log(o),console.log(o),console.log(o),console.log(o),console.log(o)} |
Oops, something went wrong.
6d9763e
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
294792
ns/iter (± 8692
)302868
ns/iter (± 8561
)0.97
es/full/minify/libraries/antd
1636485310
ns/iter (± 19211180
)1636708153
ns/iter (± 20498815
)1.00
es/full/minify/libraries/d3
299706338
ns/iter (± 4528581
)298099978
ns/iter (± 6884705
)1.01
es/full/minify/libraries/echarts
1227852490
ns/iter (± 9988016
)1242876701
ns/iter (± 7606453
)0.99
es/full/minify/libraries/jquery
89557235
ns/iter (± 518929
)90453153
ns/iter (± 614761
)0.99
es/full/minify/libraries/lodash
105039736
ns/iter (± 950168
)105142359
ns/iter (± 821767
)1.00
es/full/minify/libraries/moment
52120501
ns/iter (± 479065
)53069464
ns/iter (± 328632
)0.98
es/full/minify/libraries/react
18954445
ns/iter (± 121474
)19259111
ns/iter (± 143858
)0.98
es/full/minify/libraries/terser
244169630
ns/iter (± 1616264
)247433966
ns/iter (± 3254239
)0.99
es/full/minify/libraries/three
440597634
ns/iter (± 5181987
)445873793
ns/iter (± 4836745
)0.99
es/full/minify/libraries/typescript
3092986821
ns/iter (± 19635304
)3176427535
ns/iter (± 47638124
)0.97
es/full/minify/libraries/victory
664834940
ns/iter (± 9001330
)705458179
ns/iter (± 12472609
)0.94
es/full/minify/libraries/vue
130773228
ns/iter (± 1284448
)131270079
ns/iter (± 1797384
)1.00
es/full/codegen/es3
26663
ns/iter (± 75
)26507
ns/iter (± 82
)1.01
es/full/codegen/es5
26815
ns/iter (± 106
)26630
ns/iter (± 40
)1.01
es/full/codegen/es2015
26818
ns/iter (± 47
)26622
ns/iter (± 74
)1.01
es/full/codegen/es2016
26767
ns/iter (± 51
)26602
ns/iter (± 50
)1.01
es/full/codegen/es2017
26791
ns/iter (± 39
)26568
ns/iter (± 57
)1.01
es/full/codegen/es2018
26843
ns/iter (± 70
)26583
ns/iter (± 72
)1.01
es/full/codegen/es2019
26825
ns/iter (± 63
)26589
ns/iter (± 80
)1.01
es/full/codegen/es2020
26809
ns/iter (± 64
)26527
ns/iter (± 69
)1.01
es/full/all/es3
182181569
ns/iter (± 2545629
)176871631
ns/iter (± 4636742
)1.03
es/full/all/es5
172512583
ns/iter (± 3312106
)172701109
ns/iter (± 2181872
)1.00
es/full/all/es2015
136990129
ns/iter (± 1538485
)137497086
ns/iter (± 1764130
)1.00
es/full/all/es2016
133809188
ns/iter (± 2725141
)134824037
ns/iter (± 2973046
)0.99
es/full/all/es2017
133201251
ns/iter (± 1635445
)134238537
ns/iter (± 2213479
)0.99
es/full/all/es2018
128644649
ns/iter (± 2317575
)129232634
ns/iter (± 1732712
)1.00
es/full/all/es2019
127822448
ns/iter (± 1628042
)127286222
ns/iter (± 1496205
)1.00
es/full/all/es2020
119083468
ns/iter (± 1311019
)119401764
ns/iter (± 704887
)1.00
es/full/parser
532861
ns/iter (± 8529
)539940
ns/iter (± 9364
)0.99
es/full/base/fixer
22066
ns/iter (± 50
)22344
ns/iter (± 49
)0.99
es/full/base/resolver_and_hygiene
82280
ns/iter (± 265
)84478
ns/iter (± 93
)0.97
serialization of ast node
124
ns/iter (± 1
)124
ns/iter (± 0
)1
serialization of serde
127
ns/iter (± 0
)126
ns/iter (± 0
)1.01
css/minify/libraries/bootstrap
28433894
ns/iter (± 129566
)28936428
ns/iter (± 144246
)0.98
css/visitor/compare/clone
2103256
ns/iter (± 11933
)2076986
ns/iter (± 23217
)1.01
css/visitor/compare/visit_mut_span
2284649
ns/iter (± 7592
)2266684
ns/iter (± 7733
)1.01
css/visitor/compare/visit_mut_span_panic
2371497
ns/iter (± 38970
)2329054
ns/iter (± 9154
)1.02
css/visitor/compare/fold_span
3089656
ns/iter (± 21659
)3052552
ns/iter (± 22379
)1.01
css/visitor/compare/fold_span_panic
3204298
ns/iter (± 21575
)3199648
ns/iter (± 24604
)1.00
css/lexer/bootstrap_5_1_3
5107644
ns/iter (± 7300
)5117678
ns/iter (± 4484
)1.00
css/lexer/foundation_6_7_4
4310392
ns/iter (± 21208
)4306101
ns/iter (± 3856
)1.00
css/lexer/tailwind_3_1_1
816063
ns/iter (± 2974
)817719
ns/iter (± 472
)1.00
css/parser/bootstrap_5_1_3
21908482
ns/iter (± 85971
)22041993
ns/iter (± 186553
)0.99
css/parser/foundation_6_7_4
17405984
ns/iter (± 58679
)17458448
ns/iter (± 67049
)1.00
css/parser/tailwind_3_1_1
3354250
ns/iter (± 8071
)3331958
ns/iter (± 2624
)1.01
es/codegen/colors
327358
ns/iter (± 184774
)327310
ns/iter (± 185129
)1.00
es/codegen/large
1207352
ns/iter (± 615510
)1205080
ns/iter (± 612890
)1.00
es/codegen/with-parser/colors
46786
ns/iter (± 225
)47382
ns/iter (± 271
)0.99
es/codegen/with-parser/large
520005
ns/iter (± 1523
)522385
ns/iter (± 1487
)1.00
es/minify/libraries/antd
1409765201
ns/iter (± 12111197
)1449774277
ns/iter (± 20624233
)0.97
es/minify/libraries/d3
262948367
ns/iter (± 3148450
)256779578
ns/iter (± 3170533
)1.02
es/minify/libraries/echarts
1093902891
ns/iter (± 14164344
)1070279109
ns/iter (± 8613932
)1.02
es/minify/libraries/jquery
79071891
ns/iter (± 478849
)78392449
ns/iter (± 399254
)1.01
es/minify/libraries/lodash
95564818
ns/iter (± 479153
)93920084
ns/iter (± 1334126
)1.02
es/minify/libraries/moment
46052848
ns/iter (± 242089
)45487741
ns/iter (± 303904
)1.01
es/minify/libraries/react
17062332
ns/iter (± 57505
)16831412
ns/iter (± 180391
)1.01
es/minify/libraries/terser
211035135
ns/iter (± 1345431
)207062347
ns/iter (± 1615327
)1.02
es/minify/libraries/three
371088341
ns/iter (± 4289014
)359371531
ns/iter (± 2982361
)1.03
es/minify/libraries/typescript
2632948971
ns/iter (± 5676888
)2622938596
ns/iter (± 12358300
)1.00
es/minify/libraries/victory
600225162
ns/iter (± 8288276
)567043851
ns/iter (± 9476212
)1.06
es/minify/libraries/vue
116677725
ns/iter (± 1233421
)114732270
ns/iter (± 747309
)1.02
es/visitor/compare/clone
2318201
ns/iter (± 19068
)2312439
ns/iter (± 14634
)1.00
es/visitor/compare/visit_mut_span
2661323
ns/iter (± 7688
)2647609
ns/iter (± 5522
)1.01
es/visitor/compare/visit_mut_span_panic
2703329
ns/iter (± 9033
)2712570
ns/iter (± 4506
)1.00
es/visitor/compare/fold_span
3780523
ns/iter (± 15571
)3792094
ns/iter (± 15200
)1.00
es/visitor/compare/fold_span_panic
3925816
ns/iter (± 12460
)3942580
ns/iter (± 8426
)1.00
es/lexer/colors
15399
ns/iter (± 12
)15448
ns/iter (± 319
)1.00
es/lexer/angular
7399315
ns/iter (± 7875
)7430708
ns/iter (± 5323
)1.00
es/lexer/backbone
987351
ns/iter (± 522
)989464
ns/iter (± 988
)1.00
es/lexer/jquery
5556336
ns/iter (± 4400
)5583310
ns/iter (± 3902
)1.00
es/lexer/jquery mobile
8556375
ns/iter (± 4849
)8572902
ns/iter (± 16437
)1.00
es/lexer/mootools
4410428
ns/iter (± 11005
)4424705
ns/iter (± 4020
)1.00
es/lexer/underscore
832504
ns/iter (± 517
)835646
ns/iter (± 1047
)1.00
es/lexer/three
26154534
ns/iter (± 37513
)26217358
ns/iter (± 77137
)1.00
es/lexer/yui
4653380
ns/iter (± 5278
)4670024
ns/iter (± 4271
)1.00
es/parser/colors
29164
ns/iter (± 46
)29290
ns/iter (± 111
)1.00
es/parser/angular
17152675
ns/iter (± 285922
)15266136
ns/iter (± 154913
)1.12
es/parser/backbone
2280165
ns/iter (± 21192
)2225675
ns/iter (± 13093
)1.02
es/parser/jquery
13850924
ns/iter (± 423405
)12158027
ns/iter (± 107530
)1.14
es/parser/jquery mobile
21727797
ns/iter (± 377531
)19131014
ns/iter (± 184241
)1.14
es/parser/mootools
10070037
ns/iter (± 101046
)9273294
ns/iter (± 38444
)1.09
es/parser/underscore
1900777
ns/iter (± 8524
)1880196
ns/iter (± 12095
)1.01
es/parser/three
56601175
ns/iter (± 497544
)57133848
ns/iter (± 666041
)0.99
es/parser/yui
9253553
ns/iter (± 72728
)9257893
ns/iter (± 78122
)1.00
es/preset-env/usage/builtin_type
143235
ns/iter (± 34211
)144162
ns/iter (± 34986
)0.99
es/preset-env/usage/property
21418
ns/iter (± 90
)21118
ns/iter (± 166
)1.01
es/resolver/typescript
125503207
ns/iter (± 3501918
)122929684
ns/iter (± 2445151
)1.02
es/fixer/typescript
90878441
ns/iter (± 2676079
)86668790
ns/iter (± 1117811
)1.05
es/hygiene/typescript
191030363
ns/iter (± 2460193
)186087163
ns/iter (± 1570260
)1.03
es/resolver_with_hygiene/typescript
349503752
ns/iter (± 2007629
)323621828
ns/iter (± 1517478
)1.08
es/visitor/base-perf/module_clone
79928
ns/iter (± 687
)80215
ns/iter (± 1418
)1.00
es/visitor/base-perf/fold_empty
89494
ns/iter (± 1264
)89223
ns/iter (± 1738
)1.00
es/visitor/base-perf/fold_noop_impl_all
89308
ns/iter (± 1374
)90233
ns/iter (± 1594
)0.99
es/visitor/base-perf/fold_noop_impl_vec
90240
ns/iter (± 1094
)90198
ns/iter (± 1532
)1.00
es/visitor/base-perf/boxing_boxed_clone
56
ns/iter (± 0
)56
ns/iter (± 0
)1
es/visitor/base-perf/boxing_unboxed_clone
53
ns/iter (± 0
)54
ns/iter (± 0
)0.98
es/visitor/base-perf/boxing_boxed
103
ns/iter (± 0
)104
ns/iter (± 0
)0.99
es/visitor/base-perf/boxing_unboxed
99
ns/iter (± 0
)105
ns/iter (± 0
)0.94
es/visitor/base-perf/visit_contains_this
3509
ns/iter (± 88
)3379
ns/iter (± 78
)1.04
es/base/parallel/resolver/typescript
7097046157
ns/iter (± 545388083
)6714561210
ns/iter (± 340888489
)1.06
es/base/parallel/hygiene/typescript
2180118476
ns/iter (± 12676137
)2247780142
ns/iter (± 37771607
)0.97
misc/visitors/time-complexity/time 5
95
ns/iter (± 0
)95
ns/iter (± 0
)1
misc/visitors/time-complexity/time 10
292
ns/iter (± 4
)294
ns/iter (± 8
)0.99
misc/visitors/time-complexity/time 15
599
ns/iter (± 16
)599
ns/iter (± 7
)1
misc/visitors/time-complexity/time 20
1127
ns/iter (± 53
)1140
ns/iter (± 16
)0.99
misc/visitors/time-complexity/time 40
5969
ns/iter (± 26
)6033
ns/iter (± 85
)0.99
misc/visitors/time-complexity/time 60
15561
ns/iter (± 27
)15206
ns/iter (± 40
)1.02
es/full-target/es2016
250746
ns/iter (± 501
)250198
ns/iter (± 522
)1.00
es/full-target/es2017
242502
ns/iter (± 836
)243323
ns/iter (± 696
)1.00
es/full-target/es2018
231992
ns/iter (± 355
)231965
ns/iter (± 560
)1.00
es2020_nullish_coalescing
90741
ns/iter (± 435
)90225
ns/iter (± 403
)1.01
es2020_optional_chaining
124351
ns/iter (± 442
)123400
ns/iter (± 442
)1.01
es2022_class_properties
146822
ns/iter (± 227
)147148
ns/iter (± 1004
)1.00
es2018_object_rest_spread
94731
ns/iter (± 173
)94193
ns/iter (± 428
)1.01
es2019_optional_catch_binding
83942
ns/iter (± 202
)83995
ns/iter (± 209
)1.00
es2017_async_to_generator
84468
ns/iter (± 236
)84443
ns/iter (± 184
)1.00
es2016_exponentiation
88685
ns/iter (± 246
)88576
ns/iter (± 498
)1.00
es2015_arrow
93072
ns/iter (± 534
)92853
ns/iter (± 398
)1.00
es2015_block_scoped_fn
90115
ns/iter (± 467
)89908
ns/iter (± 348
)1.00
es2015_block_scoping
169646
ns/iter (± 349
)168572
ns/iter (± 686
)1.01
This comment was automatically generated by workflow using github-action-benchmark.