aboutsummaryrefslogtreecommitdiff
path: root/test/compress/drop-unused.js
AgeCommit message (Expand)Author
2019-10-18fix corner case in `unused` (#3499)...fixes #3497Alex Lam S.L
2019-10-18fix corner case in `unused` (#3496)...fixes #3495Alex Lam S.L
2019-05-29enhance `assignments` & `unused` (#3428)...closes #3427Alex Lam S.L
2019-05-12fix corner case in `assignments` (#3407)...fixes #3406Alex Lam S.L
2019-05-10fix corner case in `inline` (#3401)...fixes #3400Alex Lam S.L
2019-04-30unify logging functionality (#3392)...fixes #3253 fixes #3254Alex Lam S.L
2019-04-24fix corner case in `assignments` (#3376)...fixes #3375Alex Lam S.L
2018-08-23fix corner case in `unused` (#3234)...fixes #3233Alex Lam S.L
2018-07-01fix corner case in `unused`alexlamsl
2018-06-24enhance `arguments` (#3193)...fixes #3192 Alex Lam S.L
2018-05-24fix corner cases with `eval()` (#3147)...fixes #3146Alex Lam S.L
2018-03-13preserve non-constant value assignments with modifications (#2997)...fixes #2995Alex Lam S.L
2018-02-17drop unused "class" definition IIFEs (#2923)...fixes #805Alex Lam S.L
2018-01-26fix accounting after conversion to assignment (#2847)...Missing reference to `AST_SymbolRef` created by `unused` causes `collapse_vars` to misbehave. fixes #2846Alex Lam S.L
2018-01-11fix nested `unused` assignments (#2769)...fixes #2768Alex Lam S.L
2018-01-04drop `unused` assignment based on `reduce_vars` (#2709)Alex Lam S.L
2017-12-27retain recursive function names (#2667)...fixes #2665Alex Lam S.L
2017-12-27fix bugs on substituted `AST_Defun` (#2661)...fixes #2660Alex Lam S.L
2017-12-26improve `unused` over duplicate variable names (#2656)Alex Lam S.L
2017-12-14fold `cascade` functionality into `collapse_vars` (#2586)Alex Lam S.L
2017-12-09improve `unused` on assign-only symbols (#2568)Alex Lam S.L
2017-11-28improve synergy between `collapse_vars` & `unused` (#2521)Alex Lam S.L
2017-11-28drop assignment in `AST_VarDef.value` (#2522)...fixes #2516Alex Lam S.L
2017-11-11implement compress option `reduce_funcs` (#2466)...- inline single-use function declarations as expressions when permissible - depend on `reduce_vars` - enabled by default - disable for speed critical code fixes #2464Alex Lam S.L
2017-11-09fix multiple nested function substitutions (#2458)...fixes #2449Alex Lam S.L
2017-11-05extend function inlining safety checks (#2430)Alex Lam S.L
2017-10-09perform `reduce_vars` on safe literals (#2351)...- constant expression - single reference - same scope - not across loop bodyAlex Lam S.L
2017-08-29fix `unused` patching of `AST_For.init` blocks (#2289)...fixes #2288Alex Lam S.L
2017-07-14drop `unused` compound assignments (#2230)...fixes #2226Alex Lam S.L
2017-07-02drop argument value after `collapse_vars` (#2190)Alex Lam S.L
2017-07-02improve `inline` efficiency (#2188)...... by teaching `collapse_vars` some new tricks. fixes #2187Alex Lam S.L
2017-06-16enforce `inline` scope restriction (#2106)...fixes #2105Alex Lam S.L
2017-06-04fix `AST_Function` scope invariance (#2052)...improve function name hack in `run_code()`Alex Lam S.L
2017-05-12remove support for `const` (#1910)...As this is not part of ES5.Alex Lam S.L
2017-05-12fix invalid transform on `const` (#1919)...- preserve (re)assignment to `const` for runtime error - suppress `cascade` on `const`, as runtime behaviour is ill-definedAlex Lam S.L
2017-05-06enhance `collapse_vars` (#1862)...- extend expression types - `a++` - `a=x;` - extend scan range - `for(init;;);` - `switch(expr){case expr:}` - `a = x; a = a || y;` - terminate upon `debugger;` closes #1821 fixes #27 fixes #315 fixes #1858 Alex Lam S.L
2017-04-23fix `AST_For.init` patch-up in `drop_unused()` (#1839)...fixes #1838Alex Lam S.L
2017-04-20improve `unused` (#1832)...- extract leading value with side-effects out of `var` statement - reduce scanning of `AST_Definitions` from 3 passes to just onceAlex Lam S.L
2017-04-20fix `unused` on labeled for-loop (#1831)...fixes #1830Alex Lam S.L
2017-04-17compress duplicated variable definitions (#1817)...These are surprisingly common, as people reuse the same variable name within loops or switch branches.Alex Lam S.L
2017-04-08fix `delete` corner cases (#1799)...- assignment - boolean - conditional - sequenceAlex Lam S.L
2017-03-30optimize try-catch-finally (#1731)...- eliminate empty blocks - flatten out if try-block does not throwAlex Lam S.L
2017-03-29fix corner case in `unused` (#1718)...When fixing catch-related issue in #1715, it tries to optimise for duplicate definitions but did not take anonymous functions into account. Remove such optimisation for now and we can cover this as a more general rule later.Alex Lam S.L
2017-03-28fix `unused` on var of the same name within catch (#1716)...fixes #1715Alex Lam S.L
2017-03-28drop anonymous function name when overshadowed by other declarations (#1712)...fixes #1709Alex Lam S.L
2017-03-25fix invalid `AST_For.init` (#1657)...Turns out the only place in `Compressor` which can generate invalid `AST_For.init` is within `drop_unused()`, so focus the fix-up efforts. supercedes #1652 fixes #1656Alex Lam S.L
2017-03-09fix & improve function argument compression (#1584)...- one-use function call => IIFE should take `eval()` & `arguments` into account - if unused parameter cannot be eliminated, replace it with `0` fixes #1583Alex Lam S.L
2017-03-09scan RHS of dropped assignments (#1581)...- similar case as #1578 but against #1450 instead - fix `this` binding in #1450 as well closes #1580Alex Lam S.L
2017-03-08scan assignment value in drop_unused() (#1578)...those were not optimised for `unused` before, which made it necessary for `reduce_vars` to have separate steps for `keep_fnames` docs update by @kzc closes #1577Alex Lam S.L
2017-03-03process code with implicit return statement (#1522)...Bookmarklet for instance implicitedly assumes a "completion value" without using `return`. The `expression` option now supports such use cases. Optimisations on IIFEs also enhanced. fixes #354 fixes #543 fixes #625 fixes #628 fixes #640 closes #1293Alex Lam S.L