Skip to content

Commit 47d2edd

Browse files
authoredJul 4, 2023
feat(es/minifier): Drop unused properties (#7534)
**Related issue:** - Closes #7472.
1 parent cf902d3 commit 47d2edd

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+460
-262
lines changed
 

‎crates/swc/tests/projects.rs

+5-2
Original file line numberDiff line numberDiff line change
@@ -1095,7 +1095,7 @@ function test() {
10951095

10961096
#[test]
10971097
fn issue_7513_2() {
1098-
static INPUT: &str = "const cachedTextDecoder = { ignoreBOM: true, fatal: true };";
1098+
static INPUT: &str = "export const cachedTextDecoder = { ignoreBOM: true, fatal: true };";
10991099

11001100
let cm = Lrc::<SourceMap>::default();
11011101
let c = swc::Compiler::new(cm.clone());
@@ -1129,7 +1129,10 @@ fn issue_7513_2() {
11291129
.unwrap();
11301130

11311131
println!("{}", output.code);
1132-
assert_eq!(output.code, "const a={ignoreBOM:!0,fatal:!0};");
1132+
assert_eq!(
1133+
output.code,
1134+
"export const cachedTextDecoder={ignoreBOM:!0,fatal:!0};"
1135+
);
11331136
}
11341137

11351138
#[testing::fixture("tests/minify/**/input.js")]

‎crates/swc/tests/tsc-references/checkJsdocSatisfiesTag10.2.minified.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
//// [/a.js]
33
var p = {
44
a: 0,
5-
b: "hello",
6-
x: 8
5+
b: "hello"
76
};
87
p.a.toFixed(), p.b.substring(1), p.d;

1 commit comments

Comments
 (1)

github-actions[bot] commented on Jul 4, 2023

@github-actions[bot]

Benchmark

Benchmark suite Current: 47d2edd Previous: 0a26066 Ratio
es/full/bugs-1 303754 ns/iter (± 10391) 359320 ns/iter (± 7526) 0.85
es/full/minify/libraries/antd 1479881007 ns/iter (± 15346568) 1962626415 ns/iter (± 26476019) 0.75
es/full/minify/libraries/d3 322529959 ns/iter (± 4409340) 396462371 ns/iter (± 5399578) 0.81
es/full/minify/libraries/echarts 1204757356 ns/iter (± 10909836) 1521917201 ns/iter (± 14568815) 0.79
es/full/minify/libraries/jquery 95757637 ns/iter (± 341815) 112517553 ns/iter (± 619457) 0.85
es/full/minify/libraries/lodash 113589497 ns/iter (± 270471) 135548903 ns/iter (± 1091107) 0.84
es/full/minify/libraries/moment 56007792 ns/iter (± 72668) 65184752 ns/iter (± 789444) 0.86
es/full/minify/libraries/react 20108038 ns/iter (± 63537) 23339225 ns/iter (± 285289) 0.86
es/full/minify/libraries/terser 247915709 ns/iter (± 869642) 310109399 ns/iter (± 4187405) 0.80
es/full/minify/libraries/three 436086240 ns/iter (± 1547766) 554647983 ns/iter (± 7509872) 0.79
es/full/minify/libraries/typescript 2931924068 ns/iter (± 9864819) 3722547808 ns/iter (± 18631199) 0.79
es/full/minify/libraries/victory 627334244 ns/iter (± 5979752) 853067767 ns/iter (± 15801867) 0.74
es/full/minify/libraries/vue 138210915 ns/iter (± 418795) 163910839 ns/iter (± 1708827) 0.84
es/full/codegen/es3 37219 ns/iter (± 126) 42418 ns/iter (± 93) 0.88
es/full/codegen/es5 37157 ns/iter (± 75) 42569 ns/iter (± 44) 0.87
es/full/codegen/es2015 37239 ns/iter (± 71) 42588 ns/iter (± 64) 0.87
es/full/codegen/es2016 37211 ns/iter (± 82) 42517 ns/iter (± 75) 0.88
es/full/codegen/es2017 37222 ns/iter (± 84) 42557 ns/iter (± 35) 0.87
es/full/codegen/es2018 37199 ns/iter (± 75) 42579 ns/iter (± 57) 0.87
es/full/codegen/es2019 37227 ns/iter (± 61) 42576 ns/iter (± 86) 0.87
es/full/codegen/es2020 37168 ns/iter (± 65) 42574 ns/iter (± 39) 0.87
es/full/all/es3 182539747 ns/iter (± 484497) 213421453 ns/iter (± 3048496) 0.86
es/full/all/es5 173951819 ns/iter (± 739205) 204473113 ns/iter (± 2691775) 0.85
es/full/all/es2015 131291799 ns/iter (± 782267) 160827765 ns/iter (± 2488455) 0.82
es/full/all/es2016 130798828 ns/iter (± 339249) 159978869 ns/iter (± 3368385) 0.82
es/full/all/es2017 130123731 ns/iter (± 431889) 159397199 ns/iter (± 2736224) 0.82
es/full/all/es2018 127483204 ns/iter (± 617335) 159012240 ns/iter (± 2427836) 0.80
es/full/all/es2019 126866347 ns/iter (± 684112) 156933399 ns/iter (± 1429045) 0.81
es/full/all/es2020 122577046 ns/iter (± 297779) 150797464 ns/iter (± 2808982) 0.81
es/full/parser 560809 ns/iter (± 1923) 648621 ns/iter (± 11285) 0.86
es/full/base/fixer 19056 ns/iter (± 101) 24656 ns/iter (± 29) 0.77
es/full/base/resolver_and_hygiene 92949 ns/iter (± 164) 105875 ns/iter (± 166) 0.88
serialization of serde 299 ns/iter (± 1) 271 ns/iter (± 0) 1.10
css/minify/libraries/bootstrap 30713654 ns/iter (± 46620) 36984932 ns/iter (± 293572) 0.83
css/visitor/compare/clone 1997582 ns/iter (± 16362) 2349279 ns/iter (± 13602) 0.85
css/visitor/compare/visit_mut_span 2107275 ns/iter (± 10220) 2569608 ns/iter (± 7668) 0.82
css/visitor/compare/visit_mut_span_panic 2173956 ns/iter (± 12393) 2605549 ns/iter (± 5858) 0.83
css/visitor/compare/fold_span 2914018 ns/iter (± 21923) 3323964 ns/iter (± 16675) 0.88
css/visitor/compare/fold_span_panic 3108407 ns/iter (± 12397) 3467807 ns/iter (± 14475) 0.90
css/lexer/bootstrap_5_1_3 4742696 ns/iter (± 6020) 5632706 ns/iter (± 6342) 0.84
css/lexer/foundation_6_7_4 3993202 ns/iter (± 2903) 4753566 ns/iter (± 3164) 0.84
css/lexer/tailwind_3_1_1 760201 ns/iter (± 358) 901726 ns/iter (± 861) 0.84
css/parser/bootstrap_5_1_3 20602595 ns/iter (± 26500) 24401531 ns/iter (± 107269) 0.84
css/parser/foundation_6_7_4 16638044 ns/iter (± 16721) 19429440 ns/iter (± 59904) 0.86
css/parser/tailwind_3_1_1 3215846 ns/iter (± 2884) 3714657 ns/iter (± 4330) 0.87
es/codegen/colors 735026 ns/iter (± 397377) 716760 ns/iter (± 391254) 1.03
es/codegen/large 3020228 ns/iter (± 1598131) 2925476 ns/iter (± 1523597) 1.03
es/codegen/with-parser/colors 49079 ns/iter (± 146) 57189 ns/iter (± 436) 0.86
es/codegen/with-parser/large 520284 ns/iter (± 1241) 579282 ns/iter (± 980) 0.90
es/minify/libraries/antd 1284220878 ns/iter (± 10742149) 1726015562 ns/iter (± 24612081) 0.74
es/minify/libraries/d3 278024561 ns/iter (± 514468) 345521019 ns/iter (± 3915541) 0.80
es/minify/libraries/echarts 1038700072 ns/iter (± 3413514) 1357623044 ns/iter (± 14090383) 0.77
es/minify/libraries/jquery 83463892 ns/iter (± 129712) 98822394 ns/iter (± 721675) 0.84
es/minify/libraries/lodash 102099424 ns/iter (± 192397) 124118935 ns/iter (± 1593664) 0.82
es/minify/libraries/moment 49159369 ns/iter (± 76968) 57614404 ns/iter (± 421970) 0.85
es/minify/libraries/react 17965705 ns/iter (± 25141) 20825032 ns/iter (± 126800) 0.86
es/minify/libraries/terser 212496268 ns/iter (± 273773) 262441531 ns/iter (± 4528475) 0.81
es/minify/libraries/three 367966430 ns/iter (± 578744) 467220267 ns/iter (± 12284677) 0.79
es/minify/libraries/typescript 2560079636 ns/iter (± 12260288) 3227327520 ns/iter (± 18441812) 0.79
es/minify/libraries/victory 541577843 ns/iter (± 1945704) 724835777 ns/iter (± 18985009) 0.75
es/minify/libraries/vue 123286396 ns/iter (± 187022) 146018771 ns/iter (± 639225) 0.84
es/visitor/compare/clone 2064708 ns/iter (± 5707) 2427594 ns/iter (± 7209) 0.85
es/visitor/compare/visit_mut_span 2409752 ns/iter (± 6201) 2779713 ns/iter (± 7031) 0.87
es/visitor/compare/visit_mut_span_panic 2447778 ns/iter (± 4183) 2846400 ns/iter (± 12031) 0.86
es/visitor/compare/fold_span 3476639 ns/iter (± 4927) 3929886 ns/iter (± 8079) 0.88
es/visitor/compare/fold_span_panic 3608432 ns/iter (± 31006) 4046621 ns/iter (± 34988) 0.89
es/lexer/colors 13486 ns/iter (± 49) 14825 ns/iter (± 14) 0.91
es/lexer/angular 6217117 ns/iter (± 34745) 7106592 ns/iter (± 2459) 0.87
es/lexer/backbone 821757 ns/iter (± 8094) 862037 ns/iter (± 537) 0.95
es/lexer/jquery 4625432 ns/iter (± 15669) 4834258 ns/iter (± 2293) 0.96
es/lexer/jquery mobile 7134022 ns/iter (± 27536) 7481481 ns/iter (± 7290) 0.95
es/lexer/mootools 3655228 ns/iter (± 26318) 3759891 ns/iter (± 1497) 0.97
es/lexer/underscore 679060 ns/iter (± 3700) 714178 ns/iter (± 413) 0.95
es/lexer/three 21532658 ns/iter (± 94626) 22650579 ns/iter (± 31995) 0.95
es/lexer/yui 4127484 ns/iter (± 33970) 4347547 ns/iter (± 5899) 0.95
es/parser/colors 28984 ns/iter (± 46) 32842 ns/iter (± 104) 0.88
es/parser/angular 14264801 ns/iter (± 65738) 16928946 ns/iter (± 303889) 0.84
es/parser/backbone 2149460 ns/iter (± 7200) 2380591 ns/iter (± 13612) 0.90
es/parser/jquery 11620760 ns/iter (± 57310) 13103385 ns/iter (± 94482) 0.89
es/parser/jquery mobile 17790266 ns/iter (± 56750) 20945633 ns/iter (± 497516) 0.85
es/parser/mootools 8894332 ns/iter (± 15863) 9841132 ns/iter (± 41230) 0.90
es/parser/underscore 1846588 ns/iter (± 10366) 2019735 ns/iter (± 9844) 0.91
es/parser/three 49562238 ns/iter (± 204934) 59812716 ns/iter (± 482457) 0.83
es/parser/yui 8934352 ns/iter (± 27897) 10086904 ns/iter (± 70735) 0.89
es/preset-env/usage/builtin_type 143355 ns/iter (± 33046) 149230 ns/iter (± 33929) 0.96
es/preset-env/usage/property 18679 ns/iter (± 48) 27658 ns/iter (± 100) 0.68
es/resolver/typescript 92786692 ns/iter (± 1694991) 133540508 ns/iter (± 2765706) 0.69
es/fixer/typescript 65232006 ns/iter (± 449023) 93852193 ns/iter (± 837592) 0.70
es/hygiene/typescript 142301688 ns/iter (± 729348) 211910952 ns/iter (± 2289408) 0.67
es/resolver_with_hygiene/typescript 299231918 ns/iter (± 1078766) 428215963 ns/iter (± 2473377) 0.70
es/visitor/base-perf/module_clone 61387 ns/iter (± 221) 85617 ns/iter (± 1327) 0.72
es/visitor/base-perf/fold_empty 64626 ns/iter (± 489) 95218 ns/iter (± 290) 0.68
es/visitor/base-perf/fold_noop_impl_all 65339 ns/iter (± 245) 95571 ns/iter (± 393) 0.68
es/visitor/base-perf/fold_noop_impl_vec 65270 ns/iter (± 322) 96246 ns/iter (± 513) 0.68
es/visitor/base-perf/boxing_boxed_clone 57 ns/iter (± 0) 66 ns/iter (± 0) 0.86
es/visitor/base-perf/boxing_unboxed_clone 40 ns/iter (± 0) 44 ns/iter (± 0) 0.91
es/visitor/base-perf/boxing_boxed 113 ns/iter (± 0) 104 ns/iter (± 0) 1.09
es/visitor/base-perf/boxing_unboxed 80 ns/iter (± 0) 81 ns/iter (± 0) 0.99
es/visitor/base-perf/visit_empty 0 ns/iter (± 0)
es/visitor/base-perf/visit_contains_this 2670 ns/iter (± 26) 3676 ns/iter (± 91) 0.73
es/base/parallel/resolver/typescript 4459443302 ns/iter (± 232743404) 7157185144 ns/iter (± 637702958) 0.62
es/base/parallel/hygiene/typescript 1545252983 ns/iter (± 13725430) 2399244782 ns/iter (± 26914818) 0.64
misc/visitors/time-complexity/time 5 112 ns/iter (± 3) 111 ns/iter (± 0) 1.01
misc/visitors/time-complexity/time 10 263 ns/iter (± 6) 380 ns/iter (± 0) 0.69
misc/visitors/time-complexity/time 15 510 ns/iter (± 11) 756 ns/iter (± 1) 0.67
misc/visitors/time-complexity/time 20 947 ns/iter (± 10) 1421 ns/iter (± 2) 0.67
misc/visitors/time-complexity/time 40 3808 ns/iter (± 24) 7431 ns/iter (± 1) 0.51
misc/visitors/time-complexity/time 60 8288 ns/iter (± 486) 18814 ns/iter (± 16) 0.44
es/full-target/es2016 243509 ns/iter (± 774) 268993 ns/iter (± 529) 0.91
es/full-target/es2017 230548 ns/iter (± 1166) 260323 ns/iter (± 1058) 0.89
es/full-target/es2018 218155 ns/iter (± 881) 248816 ns/iter (± 558) 0.88
es2020_nullish_coalescing 73037 ns/iter (± 439) 98141 ns/iter (± 228) 0.74
es2020_optional_chaining 82929 ns/iter (± 411) 113686 ns/iter (± 368) 0.73
es2022_class_properties 123092 ns/iter (± 305) 157139 ns/iter (± 253) 0.78
es2018_object_rest_spread 76848 ns/iter (± 188) 99580 ns/iter (± 210) 0.77
es2019_optional_catch_binding 67182 ns/iter (± 244) 88577 ns/iter (± 223) 0.76
es2017_async_to_generator 65172 ns/iter (± 70) 89289 ns/iter (± 222) 0.73
es2016_exponentiation 70838 ns/iter (± 196) 95447 ns/iter (± 346) 0.74
es2015_arrow 74373 ns/iter (± 193) 98976 ns/iter (± 256) 0.75
es2015_block_scoped_fn 71758 ns/iter (± 222) 96844 ns/iter (± 226) 0.74
es2015_block_scoping 134829 ns/iter (± 531) 186168 ns/iter (± 354) 0.72

This comment was automatically generated by workflow using github-action-benchmark.

Please sign in to comment.