swc/crates/swc_ecma_minifier/tests/terser/compress
Donny/강동윤 68e9017376
fix(es/minifier): Improve minifier (#3350)
swc_ecma_transforms_optimization:
 - `expr_simplifier`: Track more changes.

swc_ecma_minifier:
 - Analyze after applying the pure optimizer.
 - Preserve access to a variable not in scope.
 - `compress`: Remove string literal if it was not a directive.
 - `pure/collapse_vars`: Merge vars declared in the first statement into one with initializers if `collapse_vars` and `join_vars` are enabled.
 - `unused`: Use `usage_count` instead of `ref_count`.
 - `unused`: Fix dropping rule for member expressions.
 - `unused`: Fix dropping rule for declarations.
 - `hoist_props`: Preserve exported items.
2022-01-27 15:36:22 +09:00
..
arguments refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
array-constructor refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
arrays refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
arrow fix(es/minifier): Don't create top level variables (#2985) 2021-12-07 18:02:43 +09:00
ascii refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
asm refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
assignment refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
async fix(swc/hygiene): Prefer not renaming top level variables (#2940) 2021-12-04 01:55:27 +09:00
big_int refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
block-scope refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
blocks refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
class-properties refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
classes refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
collapse_vars fix(es/minifier): Improve minifier (#3350) 2022-01-27 15:36:22 +09:00
comments refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
comparing refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
concat-strings refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
conditionals refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
const fix(es/minifier): Don't inline string literals if it's used multiple time (#2748) 2021-11-15 14:03:03 +09:00
dead-code fix(es/minifier): Improve minifier (#3350) 2022-01-27 15:36:22 +09:00
debugger refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
defaults refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
destructuring fix(swc/hygiene): Prefer not renaming top level variables (#2940) 2021-12-04 01:55:27 +09:00
directives refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
drop-console refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
drop-unused fix(es/minifier): Improve minifier (#3350) 2022-01-27 15:36:22 +09:00
evaluate fix(es/minifier): Don't create top level variables (#2985) 2021-12-07 18:02:43 +09:00
expansions refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
export fix(es/renamer): Fix renamer (#3139) 2021-12-29 13:44:48 +09:00
expression refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
functions refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
global_defs refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
harmony fix(es/hygiene): Reduce renaming (#2938) 2021-12-02 07:28:09 +00:00
hoist refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
hoist_props refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
hoist_vars refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
html_comments refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
identity refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
ie8 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
if_return refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
inline fix(es/minifier): Improve minifier (#3350) 2022-01-27 15:36:22 +09:00
issue-12 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-22/return_with_no_value_in_if_body refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-44 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-59/keep_continue refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-126/concatenate_rhs_strings refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-143 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-203 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-208 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-229/template_strings refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-267/issue_267 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-269 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-281 fix(es/minifier): Improve minifier (#3350) 2022-01-27 15:36:22 +09:00
issue-368/collapse refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-417 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-427 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-597 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-611/issue_611 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-637/wrongly_optimized refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-640 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-747 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-751 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-782 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-892/dont_mangle_arguments refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-913/keep_var_for_in refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-926/template_strings refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-973 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-976 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-979 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1001/parenthesis_strings_in_parenthesis refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1034 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1041 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1043/issue_1043 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1044/issue_1044 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1052 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1105 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1202 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1212 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1261 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1275/string_plus_optimization refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1321 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1431 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1443 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1446 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1447 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1466 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1569/inner_reference refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1588 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1609 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1639 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1656/f7 fix(es/minifier): Don't create top level variables (#2985) 2021-12-07 18:02:43 +09:00
issue-1673 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1704 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1733 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1750 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1770 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1787/unary_prefix refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1833 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-1943 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-2001 fix(es/renamer): Fix renamer (#3139) 2021-12-29 13:44:48 +09:00
issue-2652 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-2719/warn refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-2871/comparison_with_undefined refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-2989 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-t50 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-t120 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
issue-t292 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
join-vars refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
keep_names refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
keep_quoted_strict/keep_quoted_strict refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
labels refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
logical-assignment refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
loops refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
max_line_len refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
negate-iife refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
new refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
node_version/eval_let_6 refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
nullish refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
numbers refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
object fix(swc/hygiene): Prefer not renaming top level variables (#2940) 2021-12-04 01:55:27 +09:00
parameters refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
parse_errors refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
properties refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
pure_funcs refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
pure_getters fix(swc/hygiene): Prefer not renaming top level variables (#2940) 2021-12-04 01:55:27 +09:00
pure_globals refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
reduce_vars fix(es/minifier): Improve minifier (#3350) 2022-01-27 15:36:22 +09:00
regexp refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
rename refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
return_undefined refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
sandbox/console_log refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
sequences fix(es/minifier): Improve minifier (#3350) 2022-01-27 15:36:22 +09:00
string-literal refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
super/super_can_be_parsed refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
switch refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
syntax-errors refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
template-string fix(es/parser, es/compat): transform tagged template with invalid escape sequence (#2939) 2021-12-02 15:49:45 +09:00
transform refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
try-catch refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
typeof fix(swc/hygiene): Prefer not renaming top level variables (#2940) 2021-12-04 01:55:27 +09:00
unicode refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
unsafe_symbols refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
wrap_iife refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00
yield fix(swc/hygiene): Prefer not renaming top level variables (#2940) 2021-12-04 01:55:27 +09:00