192 KiB
Change Log
v3.4.9 (2018-08-31)
Merged pull requests:
- fix corner case in
conditionals#3244 (alexlamsl) - enhance
conditionals#3243 (alexlamsl) - fix corner case in
reduce\_vars#3241 (alexlamsl) - fix corner case in
collapse\_vars#3239 (alexlamsl)
v3.4.8 (2018-08-23)
Merged pull requests:
v3.4.7 (2018-08-09)
Merged pull requests:
- fix corner case in
mangleworkaround for Safari #3230 (alexlamsl) - clean up webkit quirks #3229 (alexlamsl)
v3.4.6 (2018-07-27)
Merged pull requests:
- fix corner case in
join\_vars#3224 (alexlamsl) - fix corner case in
ie8&rename#3223 (alexlamsl) - fix corner case in
global\_defs#3218 (alexlamsl) - fix corner case in
ie8#3216 (alexlamsl)
v3.4.5 (2018-07-16)
Merged pull requests:
v3.4.4 (2018-07-09)
Merged pull requests:
v3.4.3 (2018-07-02)
Merged pull requests:
v3.4.2 (2018-06-25)
Merged pull requests:
- fix corner case in
ie8#3198 (alexlamsl) - improve
mochatests #3195 (alexlamsl) - enhance
arguments#3193 (alexlamsl)
v3.4.1 (2018-06-19)
Merged pull requests:
v3.4.0 (2018-06-02)
Merged pull requests:
- update JetStream URL #3165 (alexlamsl)
- handle asynchronous test failures #3164 (alexlamsl)
- Add
encloseoption for #2443 #3163 (Jiavan)
v3.3.28 (2018-05-29)
Merged pull requests:
- fix corner case in
reduce\_vars#3151 (alexlamsl) - fix corner cases with
eval\(\)#3147 (alexlamsl) - augment tests for inline source maps #3145 (alexlamsl)
- augment tests for
RegExp#3144 (alexlamsl)
v3.3.27 (2018-05-22)
Merged pull requests:
v3.3.26 (2018-05-20)
Merged pull requests:
- fix corner case in
collapse\_vars#3139 (alexlamsl) - Update README.md to clarify --source-map filename option #3137 (exvisory)
v3.3.25 (2018-05-12)
Merged pull requests:
- remove
colorsdependency #3133 (alexlamsl) - replace
mochadependency #3131 (alexlamsl) - fix corner case in
reduce\_vars#3129 (alexlamsl) - fix corner case in call binding #3128 (alexlamsl)
v3.3.24 (2018-05-07)
Merged pull requests:
- fix various corner cases #3126 (alexlamsl)
- fix corner case in
reduce\_vars#3124 (alexlamsl) - fix various corner cases #3123 (alexlamsl)
- speed up
collapse\_vars#3119 (alexlamsl) - fix
reduce\_varson nested invocations #3118 (alexlamsl) - compress
AST\_SequencewithinAST\_Call#3117 (alexlamsl) - better fix for #3113 #3115 (alexlamsl)
- fix
TreeWalkerscan order #3114 (alexlamsl) - improve
reduce\_vars#3112 (alexlamsl)
v3.3.23 (2018-04-28)
Merged pull requests:
- improve numeral compression #3108 (alexlamsl)
- workaround
vmcontext issue innode-chakracore#3106 (alexlamsl) - improve general performance #3104 (alexlamsl)
- improve
collapse\_vars#3103 (alexlamsl) - workaround test failures on Node.js 10 #3102 (alexlamsl)
- workaround stack overflow in ChakraCore #3101 (alexlamsl)
- better fix for #2506 #3099 (alexlamsl)
- handle RHS side-effects in
collapse\_vars#3097 (alexlamsl) - improve
max\_line\_len#3095 (alexlamsl) - update
ASTdocumentation #3094 (alexlamsl)
v3.3.22 (2018-04-20)
Merged pull requests:
- fix corner case in
strip\_func\_ids\(\)#3090 (alexlamsl) - improve performance when handling unused variables in
collapse\_vars#3084 (alexlamsl)
v3.3.21 (2018-04-12)
Merged pull requests:
- fix
inlineofcatch-scoped variables #3077 (alexlamsl) - suppress
hoist\_propsfor embedded assignments #3074 (alexlamsl) - extend
hoist\_props#3073 (alexlamsl) - extend
join\_varson object assignments #3072 (alexlamsl) - handle flow control in loops with
reduce\_vars#3069 (alexlamsl) - handle
pure\_funcsunderinline&reduce\_varscorrectly #3066 (alexlamsl)
v3.3.20 (2018-04-07)
Merged pull requests:
v3.3.19 (2018-04-07)
Merged pull requests:
- mangle
Object.defineProperty\(\)#3059 (alexlamsl) - support inline source map from multiple files #3058 (alexlamsl)
- improve usability of
includeSources#3057 (alexlamsl) - fix AST corruption during
inlineof simplereturn#3056 (alexlamsl) - speed up
has\_parens\(\)take 2#3052 (alexlamsl) - improve performance through
makePredicate\(\)#3048 (alexlamsl) - fix tree traversal on
AST\_Do#3047 (alexlamsl)
v3.3.18 (2018-04-02)
Merged pull requests:
- give sensible error against invalid input source map #3044 (alexlamsl)
- fix escape analysis on
AST\_New#3043 (alexlamsl) - Don't load source map until the JS source is fully received #3040 (b-fuze)
v3.3.17 (2018-03-31)
Merged pull requests:
- mangle unused nested
AST\_SymbolCatchcorrectly #3038 (alexlamsl) - handle modifications to
thiscorrectly #3036 (alexlamsl) - improve test for #3023 #3031 (alexlamsl)
- improve source map granularity #3030 (alexlamsl)
- fix extra regex slash when going through mozilla AST I/O #3025 (fabiosantoscode)
- fix corner case in
hoist\_props#3022 (alexlamsl) - improve performance #3020 (alexlamsl)
- fix nested
inlinewithin loop #3019 (alexlamsl) - fix corner case in
inline#3017 (alexlamsl) - speed up
has\_parens\(\)#3014 (alexlamsl)
v3.3.16 (2018-03-19)
Merged pull requests:
- improve truthy compression #3009 (alexlamsl)
- extend fuzzy RHS folding #3006 (alexlamsl)
- refactor brackets to braces #3005 (alexlamsl)
v3.3.15 (2018-03-14)
Merged pull requests:
- update dependencies #3002 (alexlamsl)
- retain comments within brackets #2999 (alexlamsl)
- preserve non-constant value assignments with modifications #2997 (alexlamsl)
- handle
casecorrectly underreduce\_vars#2993 (alexlamsl) - preserve case when
inline\_script#2991 (alexlamsl)
v3.3.14 (2018-03-10)
Merged pull requests:
- fix
mangleofAST\_SymbolLambdaunderie8#2978 (alexlamsl) - handle negated constants correctly in
collapse\_vars#2975 (alexlamsl)
v3.3.13 (2018-03-04)
Merged pull requests:
- improve
test/run-test.jsperformance #2971 (alexlamsl) - fix value reference caching in
evaluate#2969 (alexlamsl) - compress
arguments\[index\]#2967 (alexlamsl) - enhance
conditionals#2966 (alexlamsl) - drop
side\_effects-freereturnvalues #2965 (alexlamsl) - drop lone "use strict" in function body #2963 (alexlamsl)
- migrate safe transformations out of
unsafe\_comps#2962 (alexlamsl) - show benchmark subtotal #2960 (Skalman)
- improve fix for #2954 #2958 (alexlamsl)
- fix
collapse\_varson nested exception #2955 (alexlamsl) - deduplicate parenthesis around object and function literals #2953 (alexlamsl)
- enhance
collapse\_vars#2952 (alexlamsl) - minor clean-ups #2951 (alexlamsl)
- improve
mangle#2948 (alexlamsl)
v3.3.12 (2018-02-22)
Merged pull requests:
- more tests for #2938 #2940 (alexlamsl)
- workaround
pure\_getters=truewhen dropping unused assignments #2939 (alexlamsl) - improve
unsafeevaluateoffunction#2936 (alexlamsl) - reduce false positives from object literals #2935 (alexlamsl)
- reduce false positives from labels #2934 (alexlamsl)
- reduce false positives from noop #2933 (alexlamsl)
- fix crash in
may\_throw\(\)#2932 (alexlamsl) - fix
dead\_codeon exceptionalreturn#2930 (alexlamsl) - reduce false positives from
function.toString\(\)#2928 (alexlamsl) - fix
unsafeevaluateoffunctionproperty #2927 (alexlamsl) - reduce
function-related false positives #2925 (alexlamsl) - improve
inlineefficiency #2924 (alexlamsl) - drop unused "class" definition IIFEs #2923 (alexlamsl)
- fix
unsafeevaluateofAST\_Function#2920 (alexlamsl)
v3.3.11 (2018-02-15)
Merged pull requests:
- fix
unsafeevaluateon type-converting operators #2917 (alexlamsl) - fix
collapse\_varswithin loops #2915 (alexlamsl) - report options upon reminify input error #2911 (alexlamsl)
- collapse within unary expressions #2910 (alexlamsl)
- fix corner case in
collapse\_vars#2909 (alexlamsl) - simplify
do-whileintofor#2907 (alexlamsl) - fix AST corruption due to
collapse\_vars&inline#2899 (alexlamsl) - fix
collapse\_varsregression in destructuring #2897 (kzc) - fix
join\_varson property accessors #2895 (alexlamsl)
harmony-v3.3.10 (2018-02-08)
Merged pull requests:
v3.3.10 (2018-02-08)
Merged pull requests:
- account for exceptions in
AST\_Assign.left#2892 (alexlamsl) - update dependencies #2889 (alexlamsl)
- mention file encoding #2887 (alexlamsl)
- evaluate
to{Low,Upp}erCase\(\)underunsafe#2886 (alexlamsl) - add information on testing and code style #2885 (Skalman)
- describe a few compiler assumptions #2883 (Skalman)
- change
undefined == xtonull == x#2882 (Skalman) - fix
inlinewithin arrow functions #2881 (kzc) - improve exceptional flow compression by
collapse\_vars#2880 (alexlamsl) - maintain order between side-effects and externally observable assignments #2879 (alexlamsl)
-
ES6 - handle
break&continueincollapse\_vars#2875 (alexlamsl) - fix assignment logic in
reduce\_vars#2872 (alexlamsl) - fix missing corner case in #2855 #2868 (alexlamsl)
- allow
collapse\_varsacross conditional branches #2867 (alexlamsl) - Update License Copyright Year to 2018 #2866 (Icidis)
- always test for
rename#2865 (alexlamsl) - better fix for #2858 #2864 (alexlamsl)
- account for side-effects in
comparisonsofnull&undefined#2863 (alexlamsl) - simplify comparisons with
undefined&null#2862 (alexlamsl) - avoid
evaluateof compound assignment afterdead\_codetransform #2861 (alexlamsl) - account for declaration assignment in
collapse\_vars#2859 (alexlamsl) - relax
collapse\_varsonAST\_Exit#2855 (alexlamsl) - improve symbol replacement heuristic #2851 (alexlamsl)
- compress chained compound assignments #2850 (alexlamsl)
harmony-v3.3.9 (2018-01-27)
Merged pull requests:
v3.3.9 (2018-01-27)
Merged pull requests:
- fix accounting after conversion to assignment #2847 (alexlamsl)
- backport of #2840 #2841 (alexlamsl)
-
ES6 - drop assignments to constant expressions only #2839 (alexlamsl)
- handle duplicate function declarations correctly #2837 (alexlamsl)
- enable reminify on harmony branch to avoid regressions #2834 (kzc)
-
ES6
harmony-v3.3.8 (2018-01-21)
Merged pull requests:
v3.3.8 (2018-01-21)
Merged pull requests:
- fix
unsafeevaluateofAST\_Array#2825 (alexlamsl) - enable
unsafefortest/ufuzz.js#2819 (alexlamsl) - avoid duplicate property names in object literals under "use strict" #2818 (alexlamsl)
- improve
unusedon built-in functions #2817 (alexlamsl) - fix & improve
test/ufuzz.js#2815 (alexlamsl) - fix time-out for respawned
test/ufuzz.js#2814 (alexlamsl) - compress
undefinedproperty names #2811 (alexlamsl) - fix
join\_varsproperty assignment for negative array index #2810 (kzc) - enhance
test/ufuzz.js#2808 (alexlamsl) - faster output of comments #2806 (alexlamsl)
- suppress
unsafe\_protofor LHS expressions #2804 (alexlamsl) - fix
AST\_Scope.clone\(\)#2803 (alexlamsl) - configure
renamewith CLI #2802 (alexlamsl) -
ES6 - extend
join\_vars&sequences#2798 (alexlamsl) - improve
mochatests #2797 (alexlamsl) - general improvements around
AST\_ForIn#2796 (alexlamsl) - improve
test/travis-ufuzz.js#2795 (alexlamsl) - Fix typo in README #2792 (Jolg42)
- handle VM failure gracefully #2791 (alexlamsl)
- improve
test/travis-ufuzz.js#2789 (alexlamsl) - enhance
collapse\_vars#2788 (alexlamsl) - avoid suboptimal termination in
passes#2787 (alexlamsl) - improve
test/travis-ufuzz.js#2786 (alexlamsl) - avoid double counting within single-use functions #2785 (alexlamsl)
- run
test/ufuzz.jswhen Travis CI is idle #2784 (alexlamsl)
harmony-v3.3.7 (2018-01-14)
Merged pull requests:
v3.3.7 (2018-01-14)
Merged pull requests:
- fix & extend
join\_varsfor object assigments #2781 (alexlamsl) -
ES6 - fix
mangleof block-scoped variables #2779 (alexlamsl) - improve SymbolDef info in
--output ast#2778 (kzc)
harmony-v3.3.6 (2018-01-13)
Merged pull requests:
v3.3.6 (2018-01-13)
Merged pull requests:
- fix
reduce\_varsonAST\_Accessor#2776 (alexlamsl) - add SymbolDef IDs to
--output ast#2772 (kzc) - fix output of imported AST #2771 (alexlamsl)
- update dependencies #2770 (alexlamsl)
- fix nested
unusedassignments #2769 (alexlamsl) - fix corner case in #2763 #2766 (alexlamsl)
- join object assignments #2763 (alexlamsl)
- fix
reduce\_varswith uninitializedletvariables #2760 (alexlamsl) - skip only
vars inif\_return#2759 (alexlamsl) - enhance
conditionals#2758 (alexlamsl) -
ES6 - improve synergy between
compressandrename#2755 (alexlamsl) - improve
renamereproducibility #2754 (alexlamsl) - patch variable declaractions extracted within
catch#2753 (alexlamsl) - compress loops with immediate
break#2746 (alexlamsl)
harmony-v3.3.5 (2018-01-07)
Merged pull requests:
v3.3.5 (2018-01-07)
Merged pull requests:
- improve
process.exit\(\)workaround #2741 (alexlamsl) - enable AppVeyor CI #2739 (alexlamsl)
- fix recursive function
inline#2738 (alexlamsl) - handle trailing line comments correctly #2736 (alexlamsl)
- compress
RegExp\(\)inunsafe#2735 (alexlamsl) - enhance
unsafe\_proto#2733 (alexlamsl) - ufuzz: add strings "a", "b", "c" to VALUES #2732 (kzc)
- fix corner case with
argumentsas function name #2729 (alexlamsl) - improve
if\_return#2727 (alexlamsl) - warn on deprecated features #2726 (alexlamsl)
- fix
hoist\_propsonconst#2724 (alexlamsl) - fix
manglename collision across files #2722 (alexlamsl) - fix corner case in
inline#2720 (alexlamsl) - forbid block-scoped
AST\_Defunin strict mode #2718 (alexlamsl) - preserve constant modification under strict mode #2717 (alexlamsl)
- reminify tests upon
expect\_stdout#2716 (alexlamsl) - extend
inline#2714 (alexlamsl) - apply
collapse\_varsto loop conditions #2712 (alexlamsl) - drop
unusedassignment based onreduce\_vars#2709 (alexlamsl) - fix
reduce\_varsonAST\_Defun#2708 (alexlamsl) - extend
\_\_PURE\_\_toAST\_New#2706 (alexlamsl) - enhance
collapse\_vars#2704 (alexlamsl) - enhance
if\_return#2703 (alexlamsl) - scan within IIFEs of assigned values #2702 (alexlamsl)
- mark
AST\_Varout of block scopes #2700 (alexlamsl) - reset argument value within loop after
inline#2699 (alexlamsl) - fix
inlineon duplicate argument names #2698 (alexlamsl) - enhance
join\_vars&sequences#2697 (alexlamsl) - inline functions with
AST\_Var#2688 (alexlamsl) - reduce hoisting declarations #2687 (alexlamsl)
harmony-v3.3.4 (2017-12-30)
Merged pull requests:
v3.3.4 (2017-12-30)
Merged pull requests:
- improve test for #2689 #2694 (alexlamsl)
- fix
dead\_codeon escapedreturnassignment #2693 (alexlamsl) - fix parse and output of
yield#2690 (alexlamsl) - minor clean-ups #2686 (alexlamsl)
harmony-v3.3.3 (2017-12-28)
Merged pull requests:
v3.3.3 (2017-12-28)
Merged pull requests:
- fix
pure\_gettersonAST\_Binary#2681 (alexlamsl) - fix parenthesis output of
AST\_ClassExpression#2677 (alexlamsl) - fix function inlining within loops #2675 (alexlamsl)
- fix
reduce\_varsonAST\_Destructuring#2672 (alexlamsl) - improve assignment variations #2671 (alexlamsl)
- fix
dead\_codeonreturnassignments #2668 (alexlamsl) - retain recursive function names #2667 (alexlamsl)
- fix bugs on substituted
AST\_Defun#2661 (alexlamsl) - replace single-use recursive functions #2659 (alexlamsl)
- suppress
inlinewithin substitutedAST\_Scope#2658 (alexlamsl) - improve
unusedover duplicate variable names #2656 (alexlamsl)
harmony-v3.3.2 (2017-12-25)
Merged pull requests:
v3.3.2 (2017-12-25)
Merged pull requests:
harmony-v3.3.1 (2017-12-25)
Merged pull requests:
v3.3.1 (2017-12-24)
Merged pull requests:
harmony-v3.3.0 (2017-12-24)
Merged pull requests:
v3.3.0 (2017-12-24)
Merged pull requests:
- fix comments output & improve
/\*@\_\_PURE\_\_\*/#2639 (alexlamsl) - fix corner cases with
collapse\_vars,inline&reduce\_vars#2637 (alexlamsl) - fix escape analysis on
AST\_PropAccess#2636 (alexlamsl) - make comments output more robust #2633 (alexlamsl)
arrowsfix for object literal methods containingarguments#2632 (kzc)- remove AST hack from
inline#2627 (alexlamsl) - disable
hoist\_funsby default #2626 (alexlamsl) - avoid
inlineof function with special argument names #2625 (alexlamsl) - fix
inlineafter single-usereduce\_vars#2623 (alexlamsl) - Simplify transform #2621 (OndrejSpanel)
- extend
test/ufuzz.jstoinline&reduce\_funcs#2620 (alexlamsl) - add test for #2613 #2618 (alexlamsl)
- handle global constant collision with local variable after
inline#2617 (alexlamsl) -
ES6 - compress
apply\(\)&call\(\)offunction#2613 (alexlamsl) - drop property assignment to constants #2612 (alexlamsl)
- improve transversal efficiency in
collapse\_vars#2611 (alexlamsl) - improve
reset\_opt\_flags\(\)#2610 (alexlamsl) - export
parse\(\)#2608 (alexlamsl) - fix
export defaultof anonymous generators and async functions #2607 (kzc) - account for
catchvariable wheninline#2605 (alexlamsl) - fix nested
inline#2602 (alexlamsl) - fix escape analysis on
||and&ਨ (alexlamsl) - fix
dead\_codeon nestedtry#2599 (alexlamsl) - fix
reduce\_varsondo...while#2596 (alexlamsl) - inline single-use
functionacross loop #2594 (alexlamsl) - fix
reduce\_varson singleAST\_Defunreference across loop #2593 (alexlamsl) - improve
reduce\_vars#2592 (alexlamsl) - improve
collapse\_vars#2591 (alexlamsl) - handle
inlineof function arguments #2590 (alexlamsl) - improve
dead\_codetests #2589 (kzc) - fix
dead\_codeonreturn/throwwithintry#2588 (alexlamsl) - drop local assign-only variable in
return#2587 (alexlamsl) - fold
cascadefunctionality intocollapse\_vars#2586 (alexlamsl) - recover lost opportunities from #2574 #2584 (alexlamsl)
- improve
collapse\_varson side-effect-free replacements #2583 (alexlamsl) - minor clean-up for IIFE #2582 (alexlamsl)
- avoid
Function.prototypepollution bytest/sandbox.js#2581 (alexlamsl) - fix
AST\_VarDef.may\_throw\(\)#2580 (alexlamsl) - remove unused code #2579 (alexlamsl)
- fix
collapse\_varsonswitch#2578 (alexlamsl) - escape consecutive unpaired surrogates #2576 (alexlamsl)
- rename tests #2575 (alexlamsl)
harmony-v3.2.2 (2017-12-10)
Merged pull requests:
- handle exceptional flow correctly in
collapse\_vars#2574 (alexlamsl) - Harmony v3.2.2 #2572 (alexlamsl)
v3.2.2 (2017-12-10)
Merged pull requests:
- improve
unusedon assign-only symbols #2568 (alexlamsl) - fix escape analysis for
AST\_Throw#2564 (alexlamsl) - fix escape analysis for
AST\_Conditional&AST\_Sequence#2563 (alexlamsl) - account for side-effects in conditional call inversion #2562 (alexlamsl)
- eliminate noop calls more aggressively #2559 (alexlamsl)
- improve
if\_return#2558 (alexlamsl) - simplify computed properties for methods, getters & setters #2555 (alexlamsl)
harmony-v3.2.1 (2017-12-03)
Merged pull requests:
v3.2.1 (2017-12-03)
Merged pull requests:
- fix
dead\_codeonfor#2552 (alexlamsl) - more tests for #2535 #2551 (alexlamsl)
- improve
evaluateontypeof#2550 (alexlamsl) - improve boolean compression #2548 (alexlamsl)
- improve switch case compression #2547 (alexlamsl)
- improve
AST\_For.init&AST\_Switch.expressioncompression #2546 (alexlamsl) - convert to number under boolean context #2545 (alexlamsl)
- improve compression of
ifconditions #2544 (alexlamsl) - improve compression of loop conditions #2543 (alexlamsl)
- improve code reuse #2542 (alexlamsl)
- fix corner case in call binding #2541 (alexlamsl)
- backport test from #2526 #2534 (alexlamsl)
- fix
inlineon nested substitutions #2533 (alexlamsl) - document top level
minify\(\)optionsafari10#2532 (kzc) - introduce
--safari10#2530 (alexlamsl) - document the new
outputoptionsafari10#2529 (kzc) - add Safari workaround for
await#2528 (alexlamsl) - extend
hoist\_propstoAST\_Arrow&AST\_Class#2527 (alexlamsl) - reduce
thisin block scopes #2526 (alexlamsl) - replace single-use class definitions #2524 (alexlamsl)
- fix nested
hoist\_propssubstitution #2523 (alexlamsl) - drop assignment in
AST\_VarDef.value#2522 (alexlamsl) - improve synergy between
collapse\_vars&unused#2521 (alexlamsl)
harmony-v3.2.0 (2017-11-25)
Merged pull requests:
v3.2.0 (2017-11-25)
Merged pull requests:
- fix argument/atom collision by
properties#2514 (alexlamsl) - fix wording and formatting #2512 (alexlamsl)
- document top level minify option
keep\_classnames#2511 (kzc) - separate
keep\_classnames&keep\_fnames#2510 (alexlamsl) - extend escape analysis on constant expression properties #2509 (alexlamsl)
- fix argument/atom collision by
collapse\_vars#2507 (alexlamsl) - make
AST\_Lambda.contains\_this\(\)less magical #2505 (alexlamsl) - fix
reduce\_varson arrow functions withthis#2504 (alexlamsl) - eliminate invalid state caching in
collapse\_vars#2502 (alexlamsl) - fix
rename#2501 (alexlamsl) -
ES6 - expand symbol space to improve compression #2460 (alexlamsl)
harmony-v3.1.10 (2017-11-19)
Merged pull requests:
- Harmony v3.1.10 #2494 (alexlamsl)
- fix keyword shorthand property output for
ecma>= 6 #2493 (kzc) - enable
hoist\_propsby default #2492 (alexlamsl)
v3.1.10 (2017-11-18)
Merged pull requests:
- document the
webkitoutput option #2490 (kzc) -
ES6 - fix cross-scope inlining of
AST\_Functions #2486 (alexlamsl) - minor consolidations #2484 (alexlamsl)
- Update ISSUE_TEMPLATE.md #2481 (kzc)
- update documentation for
reduce\_funcs#2478 (kzc) - fix replacement logic in
collapse\_vars#2475 (alexlamsl) - fix
top\_retainonhoist\_props#2474 (alexlamsl) - allow symbol replacement on multiple occurrences #2472 (alexlamsl)
harmony-v3.1.9 (2017-11-11)
Merged pull requests:
v3.1.9 (2017-11-11)
Merged pull requests:
- extend
reduce\_funcsto cover cross-scope substitutions #2469 (alexlamsl) - implement compress option
reduce\_funcs#2466 (alexlamsl) - suppress
hoist\_propsonexport#2463 (alexlamsl) - fix object literal tracing in
reduce\_vars#2461 (alexlamsl) - fix multiple nested function substitutions #2458 (alexlamsl)
- remove hack in
collapse\_vars#2457 (alexlamsl) - fix
constundercollapse\_varswithoutunused#2454 (alexlamsl) - preserve function identity in
reduce\_vars#2451 (alexlamsl)
harmony-v3.1.8 (2017-11-06)
Merged pull requests:
v3.1.8 (2017-11-06)
Merged pull requests:
- handle circular
functionreference gracefully #2446 (alexlamsl) - account for
eval&withinreduce\_vars#2441 (alexlamsl) - consolidate & enhance
unused#2439 (alexlamsl) - inline single-use functions that are not constant expressions #2434 (alexlamsl)
harmony-v3.1.7 (2017-11-05)
Merged pull requests:
v3.1.7 (2017-11-05)
Merged pull requests:
- tweak #2424 #2432 (alexlamsl)
- extend function inlining safety checks #2430 (alexlamsl)
- consolidate single-use
functionreduction #2427 (alexlamsl) - maintain call argument order in
collapse\_vars#2426 (alexlamsl) - improve variations on call arguments for
ufuzz#2424 (alexlamsl) - reduce
thiswithin functions #2421 (alexlamsl) - compress
newfunctioncontainingthis#2417 (alexlamsl) - hoist_props: hoisting of some class expressions #2415 (kzc)
harmony-v3.1.6 (2017-10-29)
Merged pull requests:
v3.1.6 (2017-10-29)
Merged pull requests:
- enhance
properties#2412 (alexlamsl) - consistently reduce
constsafe literals #2411 (alexlamsl) - fix & improve
AST\_TemplateString#2410 (alexlamsl) - remove dead code #2405 (alexlamsl)
- fix
reduce\_varsonAST\_Array.length#2404 (alexlamsl) - document compress option
hoist\_props#2399 (kzc) - compress self comparisons #2398 (alexlamsl)
- fix
unsafereduce\_varson arrays & objects #2397 (alexlamsl) - implement
hoist\_props#2396 (alexlamsl) - docs: Fix spelling and style #2395 (tmcw)
- enhance
unsafeevaluateof arrays & objects #2394 (alexlamsl) - deduplicate declarations regardless of
toplevel#2393 (alexlamsl) - fix
dead\_codeonAST\_Destructuring#2392 (alexlamsl) - safer
propertiestransform #2391 (alexlamsl) - fix
unsafeexpansion of object literals #2390 (alexlamsl) - fix
unsafeevaluation ofAST\_Sub#2389 (alexlamsl) - fix
unsafeevaluation of objects #2388 (alexlamsl) - fix
unsafeescape analysis inreduce\_vars#2387 (alexlamsl)
harmony-v3.1.5 (2017-10-21)
Merged pull requests:
v3.1.5 (2017-10-21)
Merged pull requests:
- Allow 'yield' as method name #2382 (t-sauer)
unsafefix-ups for #2351 #2379 (alexlamsl)- backport #2374 #2376 (alexlamsl)
- fix
AST\_PropAccessincollapse\_varstake 3#2375 (alexlamsl) -
ES6 - clean up lazy operator detection #2373 (alexlamsl)
- fix
AST\_PropAccessincollapse\_varstake 2#2372 (alexlamsl) - fix
AST\_PropAccessincollapse\_vars#2370 (alexlamsl) - enhance
collapse\_varsaround lazy operations #2369 (alexlamsl) - deduplicate
AST\_Super&AST\_Thislogic #2366 (alexlamsl) - account for side-effects from
AST\_Thisincollapse\_vars#2365 (alexlamsl)
harmony-v3.1.4 (2017-10-16)
Merged pull requests:
v3.1.4 (2017-10-15)
Merged pull requests:
- update dependency #2362 (alexlamsl)
- fix-ups for #2356 #2360 (alexlamsl)
-
ES6 - more tests for #2351 #2357 (alexlamsl)
- update README to include defaults #2356 (rogpeppe)
- Update README.md - sourceMappingURL directive note #2355 (tdmalone)
- perform
reduce\_varson safe literals #2351 (alexlamsl) - collapse
a.bwhenever safe #2350 (alexlamsl) -
ES6
harmony-v3.1.3 (2017-10-01)
Merged pull requests:
v3.1.3 (2017-10-01)
Merged pull requests:
- enhance
reduce\_varsforAST\_Accessor#2339 (alexlamsl) - trap invalid use of reserved words #2338 (alexlamsl)
-
ES9
harmony-v3.1.2 (2017-09-24)
Merged pull requests:
v3.1.2 (2017-09-23)
Merged pull requests:
- fix "use asm" numeric output in function expressions #2328 (kzc)
-
ES6 - suppress
collapse\_varsofthisinto "use strict" #2326 (alexlamsl) -
ES6 - mangle: do not mangle reserved class #2317 (jlguenego)
harmony-v3.1.1 (2017-09-17)
Merged pull requests:
v3.1.1 (2017-09-16)
Merged pull requests:
- handle LHS side-effects on
cascade&collapse\_vars#2314 (alexlamsl) - improve source mapping #2312 (alexlamsl)
harmony-v3.1.0 (2017-09-10)
Merged pull requests:
v3.1.0 (2017-09-10)
Merged pull requests:
- Testing all leading comments against being PURE comments #2305 (Andarist)
- extend
unsafeon pure global functions #2303 (alexlamsl) - add
Dateand other known globals tounsafecompress option #2302 (kzc) - fix
collapse\_varson default function argument #2299 (alexlamsl) - correctly count declarations after
hoist\_vars#2297 (alexlamsl) - Fix CLI example for mangle reserved list of names #2294 (Dazix)
-
ES6 - Fix CLI source-maps examples #2291 (Dazix)
- fix
unusedpatching ofAST\_For.initblocks #2289 (alexlamsl)
harmony-v3.0.28 (2017-08-19)
Merged pull requests:
v3.0.28 (2017-08-19)
Merged pull requests:
- Introduce new compress option
unsafe\_arrows#2278 (kzc) -
ES6 -
ES6 - Don't escape null characters as \0 when followed by any digit #2273 (erikdesjardins)
-
ES6 -
ES9 - fix
ie8mangling of top-levelAST\_SymbolCatch#2263 (alexlamsl)
harmony-v3.0.27 (2017-07-30)
Merged pull requests:
v3.0.27 (2017-07-29)
Merged pull requests:
- improve
mangle.properties#2261 (alexlamsl) -
ES6 - issue template: describe acceptable JS input #2255 (kzc)
-
ES6 - enhance test for #2242 #2248 (alexlamsl)
harmony-v3.0.26 (2017-07-23)
Merged pull requests:
v3.0.26 (2017-07-23)
Merged pull requests:
harmony-v3.0.25 (2017-07-16)
Merged pull requests:
v3.0.25 (2017-07-16)
Merged pull requests:
- reject malformed CLI parameters #2239 (alexlamsl)
- ensure
ie8works with mangled properties #2238 (alexlamsl) - drop
unusedbuiltin globals underunsafe#2236 (alexlamsl) - fix
unsafeevaluateofObjectstatic methods #2232 (alexlamsl) - drop
unusedcompound assignments #2230 (alexlamsl) - enhance
passes#2229 (alexlamsl) - fix gzip stream in
test/benchmark.js#2228 (alexlamsl) - enhance source mapping on IIFEs #2224 (alexlamsl)
- uglify-es: update repository and project tagline #2221 (kzc)
- benchmark gzipped output #2220 (alexlamsl)
- docs: update benchmarks using node 8, add babili #2218 (kzc)
harmony-v3.0.24 (2017-07-08)
Merged pull requests:
v3.0.24 (2017-07-08)
Merged pull requests:
- handle duplicate argument names in
collapse\_vars#2215 (alexlamsl) - uglify-es: have repository point to harmony branch #2212 (kzc)
- inlining of static methods & constants #2211 (alexlamsl)
- inline property access of object literal #2209 (alexlamsl)
- suppress
collapse\_varsofthisas call argument #2204 (alexlamsl) -
ES6 - improve
compressgranularity throughtypeofs#2201 (alexlamsl) -
ES6 - minor clean-ups to
evaluate#2197 (alexlamsl) - improve parenthesis emission #2196 (alexlamsl)
- clean up
TreeWalker.pop\(\)#2195 (alexlamsl) - document fast mangle-only minify mode #2194 (kzc)
- refactor
throwusage withincompress#2193 (alexlamsl)
harmony-v3.0.23 (2017-07-02)
Merged pull requests:
v3.0.23 (2017-07-02)
Merged pull requests:
- drop argument value after
collapse\_vars#2190 (alexlamsl) - improve
inlineefficiency #2188 (alexlamsl)
harmony-v3.0.22 (2017-06-30)
Merged pull requests:
v3.0.22 (2017-06-30)
Merged pull requests:
harmony-v3.0.21 (2017-06-28)
Merged pull requests:
v3.0.21 (2017-06-28)
Merged pull requests:
-
ES6 -
ES6 - improve
unsafe\_Func#2171 (alexlamsl) -
ES6 - parse
@global\_defsas expressions #2169 (alexlamsl) - update
uglify-eskeywords in package.json #2168 (kzc) -
ES6 - update doc notes for
uglify-es#2164 (kzc) -
ES6
harmony-v3.0.20 (2017-06-25)
Merged pull requests:
v3.0.20 (2017-06-25)
Merged pull requests:
- more tests for #2158 #2160 (alexlamsl)
- fix
cascade&collapse\_varson property access of constants #2158 (alexlamsl) - toplevel shorthand for
ecma#2157 (alexlamsl) -
ES8 -
ES6 -
ES6 - refactor
compute\_char\_frequency\(\)#2152 (alexlamsl) - synchronise
mangle.propertiesforminify\(\)&test/compress#2151 (alexlamsl) - refactor
Compressor.toplevel#2149 (alexlamsl) - minimise
reduce\_varscloning overhead #2148 (alexlamsl) - fix
unusedonAST\_Destructuring#2146 (alexlamsl) - fix
reduce\_varsonthis#2145 (alexlamsl) - fix for-in loop parsing #2144 (alexlamsl)
-
ES6
harmony-v3.0.19 (2017-06-21)
Merged pull requests:
v3.0.19 (2017-06-21)
Merged pull requests:
-
ES6 -
ES6 -
ES6 -
ES6 -
ES6 - reject non-toplevel import/export #2128 (alexlamsl)
-
ES6 - ensure mangling works if catch reuses a scope variable #2123 (alexlamsl)
-
ES6
harmony-v3.0.18 (2017-06-18)
Merged pull requests:
v3.0.18 (2017-06-18)
Merged pull requests:
- make defensive copies when
inline#2116 (alexlamsl) - fix loss of context in
collapse\_vars&cascade#2112 (alexlamsl) - in-place
tighten\_body\(\)#2111 (alexlamsl) - correctly determine scope of
AST\_This#2109 (alexlamsl) -
ES6 - enforce
inlinescope restriction #2106 (alexlamsl)
harmony-v3.0.17 (2017-06-15)
Merged pull requests:
v3.0.17 (2017-06-15)
Merged pull requests:
- suppress
inlineofthis#2103 (alexlamsl) - avoid intermittent test time-out failures #2100 (alexlamsl)
- compute
uses\_argumentscorrectly infigure\_out\_scope\(\)#2099 (alexlamsl) -
ES6
v2.8.29 (2017-06-14)
Merged pull requests:
v3.0.16 (2017-06-14)
Merged pull requests:
- add comment about quote_style and gzip #2092 (kzc)
- fix
reduce\_varsonAST\_Arrow#2091 (alexlamsl) - cache web assets between CI runs #2089 (alexlamsl)
- Fix use of commander's parser function's options argument
fixes \#2082#2088 (zaygraveyard) - allow
expect\_stdoutto specifyError#2087 (alexlamsl) - add Node.js 8 to Travis CI #2086 (alexlamsl)
- fix variable accounting in
inline#2085 (alexlamsl) - suppress false positives for-in loops #2080 (alexlamsl)
- fix portability of
sandbox.run\_code\(\)on Node.js 0.1x #2078 (alexlamsl) - fix non-string parameters #2076 (alexlamsl)
- report
test/ufuzz.jsfailures inprocess.stderr#2074 (alexlamsl) - marshal
mangle\[.properties\].reservedfrom non-Array values #2072 (alexlamsl) - fix iteration over object with inherited properties #2068 (alexlamsl)
- fix
cascadeon multi-branch evaluations #2067 (alexlamsl) - fix
unusedcrash with top-levelAST\_Var#2066 (alexlamsl) - fix CLI output corruption #2061 (alexlamsl)
- fix
inlinehandling ofAST\_Call.args#2059 (alexlamsl) - implement
test/jetstream.js --debug#2058 (alexlamsl) - workaround webkit parsing error #2056 (alexlamsl)
- implement function inlining #2053 (alexlamsl)
- fix
AST\_Functionscope invariance #2052 (alexlamsl) -
ES6 -
ES6
v2.8.28 (2017-06-03)
Merged pull requests:
- add tests for
AST\_SymbolAccessor#2049 (alexlamsl) - backports for 2.8.28 #2048 (alexlamsl)
- clean up
lib/parse.js#2047 (alexlamsl) - fix
beautifywhitespace output withinAST\_Destructuring#2046 (alexlamsl) - better document behavior of unsafe_Func #2043 (kzc)
harmony-v3.0.15 (2017-06-01)
Merged pull requests:
v3.0.15 (2017-06-01)
Merged pull requests:
- fix non-identifier getter/setter name #2041 (alexlamsl)
- whitelist
unsafeevaluatecandidates #2039 (alexlamsl) - enhance
unsafeevaluate#2037 (alexlamsl) - reformat mangle options section of README #2036 (kzc)
- document safari10 mangle option #2035 (kzc)
harmony-v3.0.14 (2017-05-31)
Merged pull requests:
v3.0.14 (2017-05-31)
Merged pull requests:
- introduce
unsafe\_Func#2033 (alexlamsl) - widen CLI parse error code fragment displayed #2032 (alexlamsl)
-
ES6 - mangle destructuring function parameters #2029 (alexlamsl)
-
ES6 -
ES6
harmony-v3.0.13 (2017-05-29)
Merged pull requests:
v3.0.13 (2017-05-29)
Merged pull requests:
- better fix for #512 & #2010 #2019 (alexlamsl)
- display default values in
--help options#2018 (alexlamsl) - implement
--help options#2017 (alexlamsl) - improve CLI usability #2016 (alexlamsl)
harmony-v3.0.12 (2017-05-27)
Merged pull requests:
v3.0.12 (2017-05-27)
Merged pull requests:
- fix
hoist\_funson block-scopedfunctionunder "use strict" #2013 (alexlamsl) - clarify what --mangle-props does #2012 (kzc)
- fix
if\_returnonAST\_Defun#2010 (alexlamsl) - better document mangle properties options #2009 (kzc)
- fix and expand --mangle-props documentation #2008 (kzc)
- fix
dead\_codeon block-scopedfunctionunder "use strict" #2006 (alexlamsl) - fix
exportrelated issues #2005 (alexlamsl) - clean up
lib/scope.js#2003 (alexlamsl) - fix issues related to
export&function#2002 (alexlamsl) - report timing breakdown #2000 (alexlamsl)
- ensure new line after
describe\_ast\(\)#1999 (alexlamsl) -
ES6 - reinstate
describe\_ast\(\)on CLI #1996 (alexlamsl)
harmony-v3.0.11 (2017-05-23)
Merged pull requests:
v3.0.11 (2017-05-23)
Merged pull requests:
- fix source map offset #1993 (alexlamsl)
-
ES6 -
ES6 - add another minify() options example #1988 (kzc)
- improve usability of
global\_defsinminify\(\)#1987 (alexlamsl) - more refinement of minify() documentation #1983 (kzc)
harmony-v3.0.10 (2017-05-20)
Merged pull requests:
v3.0.10 (2017-05-20)
Merged pull requests:
- uglify-es: update keywords in package.json #1981 (kzc)
- add "es5" to package.json keywords #1980 (kzc)
- document minify() option
toplevel#1979 (kzc) - enhance
if\_returnto handlereturn void...#1977 (alexlamsl) - fix parsing of
yieldas object key #1976 (alexlamsl) - document 3.x minify() does not throw errors #1975 (kzc)
v2.8.27 (2017-05-19)
Merged pull requests:
- document minify
warningsand add an error example #1973 (kzc) - backports for 2.8.27 #1971 (alexlamsl)
harmony-v3.0.9 (2017-05-19)
Merged pull requests:
v3.0.9 (2017-05-19)
Merged pull requests:
harmony-v3.0.8 (2017-05-18)
Merged pull requests:
v3.0.8 (2017-05-18)
Merged pull requests:
- fix docs for side_effects flag to reflect current behavior #1966 (kara)
- make
expect\_stdoutnode version specific #1963 (alexlamsl) -
ES6 - remove
space\_colon#1960 (alexlamsl) - improve
RegExphandling #1959 (alexlamsl) -
Docs -
ES6 -
ES6
harmony-v3.0.7 (2017-05-16)
Merged pull requests:
v3.0.7 (2017-05-16)
Merged pull requests:
harmony-v3.0.6 (2017-05-16)
Merged pull requests:
v2.8.26 (2017-05-15)
Merged pull requests:
v3.0.6 (2017-05-15)
Merged pull requests:
- print package name alongside version in CLI #1946 (alexlamsl)
- fix parsing of property access after new line #1944 (alexlamsl)
- reorg README for 3.x #1942 (kzc)
- improve keyword-related parser errors #1941 (alexlamsl)
harmony-v3.0.5 (2017-05-15)
Merged pull requests:
v2.8.25 (2017-05-15)
Merged pull requests:
v3.0.5 (2017-05-15)
Merged pull requests:
- fix & improve coverage of
estree#1935 (alexlamsl) - Tweak README Notes #1934 (kzc)
- uglify-es: update homepage in package.json #1933 (kzc)
-
ES6 - clarify wording #1931 (olsonpm)
- document 3 max passes #1928 (olsonpm)
- fix bugs with getter/setter #1926 (alexlamsl)
v2.8.24 (2017-05-12)
Merged pull requests:
- add documentation for commit
1e51586#1925 (olsonpm) - avoid
argumentsandevalinreduce\_vars#1924 (alexlamsl) - backports for 2.8.24 #1921 (alexlamsl)
- remove support for
const#1910 (alexlamsl)
harmony-v3.0.4 (2017-05-11)
Merged pull requests:
v3.0.4 (2017-05-11)
Merged pull requests:
- fix invalid transform on
const#1919 (alexlamsl) - update README #1918 (kzc)
- document known issues with
const#1916 (alexlamsl) - fix typo #1913 (OmgImAlexis)
- update documentation #1909 (alexlamsl)
-
2.x -
ES6
harmony-v3.0.3 (2017-05-10)
Merged pull requests:
v3.0.3 (2017-05-10)
Merged pull requests:
- Update issue template: change harmony to uglify-es #1900 (kzc)
-
ES6 - Remove unnecessary
git cloneinstructions in README #1897 (kzc) - Remove incorrect
git cloneinstructions fromuglify-esREADME #1896 (kzc) - Change
harmonytouglify-esin master README #1895 (kzc) - Have harmony docs use
uglify-espackage name. #1894 (kzc) - gracefully handle non-
Errorbeing thrown #1893 (alexlamsl)
harmony-v3.0.2 (2017-05-09)
Merged pull requests:
v3.0.2 (2017-05-09)
Merged pull requests:
- print error stack in CLI #1890 (alexlamsl)
-
ES6 - update
minify\(\)usage intest/ufuzz.js#1888 (alexlamsl)
harmony-v3.0.1 (2017-05-08)
Merged pull requests:
v3.0.1 (2017-05-07)
Merged pull requests:
- return
Errorfromminify\(\)#1880 (alexlamsl) - support dumping AST #1879 (alexlamsl)
- support
minify\(\)output as AST #1878 (alexlamsl) - deprecate low level API #1877 (alexlamsl)
harmony-v3.0.0 (2017-05-07)
Merged pull requests:
v2.8.23 (2017-05-06)
Merged pull requests:
v3.0.0 (2017-05-06)
Merged pull requests:
- fix
unsafeonevaluateofreduce\_vars#1870 (alexlamsl) - kill
opera#1869 (alexlamsl) - update
test/benchmark.jsresources #1864 (alexlamsl) - rename variables for better readability #1863 (alexlamsl)
- enhance
collapse\_vars#1862 (alexlamsl) - restore report of supported options #1861 (alexlamsl)
- improve return optimization for constant expressions #1860 (kzc)
-
ES6 - enforce
toplevelon other compress options #1855 (alexlamsl) -
ES6 - Update ISSUE_TEMPLATE.md #1846 (kzc)
- fix
unusedon for-in statements #1843 (alexlamsl) - fix fuzzer on
this#1842 (alexlamsl) - update README for 3.x #1840 (kzc)
- fix
AST\_For.initpatch-up indrop\_unused\(\)#1839 (alexlamsl) - improve parser under "use strict" #1836 (alexlamsl)
- fix label-related bugs #1835 (alexlamsl)
- Fix API reference examples #1834 (lahmatiy)
- improve
unused#1832 (alexlamsl) - fix
unusedon labeled for-loop #1831 (alexlamsl) - extend
cascadeintoa.b#1829 (alexlamsl) - improve
collapse\_varsonAST\_Var#1828 (alexlamsl) - fix parser bugs & CLI reporting #1827 (alexlamsl)
- clean up
collapse\_vars#1826 (alexlamsl) - support safe reassignments in
reduce\_vars#1823 (alexlamsl) - fix
reduce\_varson conditionals #1822 (alexlamsl) - fix
reduce\_varson boolean binary expressions #1819 (alexlamsl) - fix
reduce\_varswithin try-block #1818 (alexlamsl) - compress duplicated variable definitions #1817 (alexlamsl)
- fix variable substitution #1816 (alexlamsl)
- enhance
reduce\_vars#1814 (alexlamsl) - update README #1813 (alexlamsl)
- drop
angular#1812 (alexlamsl) - unify CLI & API under
minify\(\)#1811 (alexlamsl) -
3.x
harmony-v2.8.22 (2017-04-09)
Merged pull requests:
v2.8.22 (2017-04-09)
Merged pull requests:
- fix LHS cases for NaN & friends #1804 (alexlamsl)
- enhance
test/ufuzz.js#1803 (alexlamsl) - fix a couple of bugs in
global\_defs#1802 (alexlamsl) - fix
deletecorner cases #1799 (alexlamsl) - fix
pure\_gettersfor chained property access #1798 (alexlamsl) - fix corner cases with
delete#1796 (alexlamsl) - introduce "strict" to
pure\_getters#1795 (alexlamsl) - fix
reduce\_varson catch variable #1794 (alexlamsl) - enable
inline\_scriptby default #1793 (alexlamsl) - fix incorrect context in variable substitution #1791 (alexlamsl)
- implement delayed resolution for
reduce\_vars#1788 (alexlamsl) - improve
pure\_getters#1786 (alexlamsl) - optimise
do{...}while\(false\)#1785 (alexlamsl) - extend ufuzz generator #1783 (alexlamsl)
-
ES6 - exclude mangling of special property names #1779 (alexlamsl)
- Allow AST_DefaultAssign as parameter #1778 (avdg)
- remove
--mangle-propsfrom fuzzing #1777 (alexlamsl) - fix
manglePropertieson identifiers #1776 (alexlamsl) - workaround Node.js bugs #1775 (alexlamsl)
-
ES6 - fix mangleProperties of
undefined&Infinity#1772 (alexlamsl) - extend
test/ufuzz.js#1769 (alexlamsl) -
ES6
harmony-v2.8.21 (2017-04-02)
Merged pull requests:
v2.8.21 (2017-04-02)
Merged pull requests:
- fix corner case in
switch#1765 (alexlamsl) - avoid confusion of
NaN&Infinitywithcatchsymbol of the same name #1763 (alexlamsl) - fix corner cases in switch and undefined #1762 (alexlamsl)
- speed up fuzzer code generation #1757 (alexlamsl)
- minor tweaks to
test/ufuzz.js#1756 (alexlamsl) - fuzz regexp literals, more constant numbers, typeof expression #1755 (kzc)
- upgrade fuzzer #1754 (alexlamsl)
- fix switch branch elimination #1752 (alexlamsl)
- minor tweaks to fuzzer #1751 (alexlamsl)
- implement
test/sandbox.js#1749 (alexlamsl) - improve compression of undefined, NaN & Infinitiy #1748 (alexlamsl)
- combine rules for binary boolean operations #1744 (alexlamsl)
- sort options in alphabetical order #1743 (alexlamsl)
-
ES6 -
ES6 - Fuzz v3 #1697 (pvdz)
v2.8.20 (2017-03-31)
Merged pull requests:
harmony-v2.8.19 (2017-03-31)
Merged pull requests:
v2.8.19 (2017-03-31)
Merged pull requests:
harmony-v2.8.17 (2017-03-30)
Merged pull requests:
- remove paranthesis for
-\(x\*y\)#1732 (alexlamsl) - optimize try-catch-finally #1731 (alexlamsl)
- improve tests from #1726 #1729 (alexlamsl)
- speed up IIFE elimination #1728 (alexlamsl)
- speed up
equivalent\_to\(\)andAST\_Switch#1727 (alexlamsl) - fix missing parentheses around NaN/Infinity shorthands #1726 (alexlamsl)
- output optimal representations of NaN & Infinity #1723 (alexlamsl)
- improve beautified output of switch blocks #1721 (alexlamsl)
-
ES6
v2.8.18 (2017-03-28)
Merged pull requests:
- remove UGLIFY_DEBUG #1720 (alexlamsl)
- fix corner case in
unused#1718 (alexlamsl) - Harmony v2.8.17 #1717 (alexlamsl)
v2.8.17 (2017-03-28)
Merged pull requests:
- fix
unusedon var of the same name within catch #1716 (alexlamsl) - fix
is\_number\(\)on+=#1714 (alexlamsl) - drop anonymous function name when overshadowed by other declarations #1712 (alexlamsl)
- handle var within catch of the same name #1711 (alexlamsl)
- fix tail trimming of switch blocks #1707 (alexlamsl)
- fix mangle for variable declared within catch block #1706 (alexlamsl)
- ufuzz: workaround for Function.toString() v2 #1700 (alexlamsl)
has\_side\_effects\(\)should takeAST\_Switch.expressioninto account #1699 (alexlamsl)- fix typeof side effects #1696 (alexlamsl)
- preserve side effects in switch expression #1694 (alexlamsl)
- fix
cascadeon anonymous function reference #1693 (alexlamsl) - handle overlapped variable definitions #1691 (alexlamsl)
- fix
deleterelated issues incollapse\_varsandreduce\_vars#1689 (alexlamsl) - ufuzz: workaround function name and toString() #1688 (alexlamsl)
- fix
cascadeondeleteoperator #1687 (alexlamsl) - optimize conditional when condition symbol matches consequent #1684 (kzc)
- fallthrough should not execute case expression #1683 (alexlamsl)
- suppress switch branch de-duplication upon side effects #1682 (alexlamsl)
-
ES6 - fix side-effects detection on switch statements #1678 (alexlamsl)
- improve switch optimisations #1677 (alexlamsl)
- fix
has\_side\_effects\(\)#1675 (alexlamsl) - fix
reduce\_varsonAST\_Switch#1671 (alexlamsl) - fix typeof side-effects #1669 (alexlamsl)
- fix
dead\_codeonAST\_Switch#1667 (alexlamsl) - Improve fuzzer #1665 (pvdz)
v2.8.16 (2017-03-24)
Merged pull requests:
- fix invalid
AST\_For.init#1657 (alexlamsl) - introduce ufuzz.js #1655 (alexlamsl)
- fix cascade of
evaluateoptimisation #1654 (alexlamsl) - fix corner case in
AST\_For.init#1652 (alexlamsl) - fix assignment extraction from conditional #1651 (alexlamsl)
- improve error marker placement #1644 (alexlamsl)
- fix assignment substitution in sequences #1643 (alexlamsl)
- fix expect_stdout #1642 (alexlamsl)
- fix regression to allow CLI options with hyphens like -b ascii-only #1640 (kzc)
- improve collapsible value detection #1638 (alexlamsl)
harmony-v2.8.15 (2017-03-23)
Merged pull requests:
v2.8.15 (2017-03-23)
Merged pull requests:
- account for cross-scope modifications in
collapse\_vars#1634 (alexlamsl) - suppress unused warnings from inlined elements #1633 (alexlamsl)
- fix a bug in simple_glob #1632 (alexlamsl)
- metadata cleanup #1630 (alexlamsl)
- throw parse error on invalid assignments #1627 (alexlamsl)
harmony-v2.8.14 (2017-03-19)
Merged pull requests:
v2.8.14 (2017-03-19)
Merged pull requests:
- make
expect\_stdoutwork on Node.js 0.12 #1623 (alexlamsl) - fix commit
88fb83aa#1622 (alexlamsl) - fix AST_Binary.lift_sequences() #1621 (alexlamsl)
- transform String.charAt() to index access #1620 (alexlamsl)
harmony-v2.8.13 (2017-03-18)
Merged pull requests:
- handle runtime errors in
expect\_stdout#1618 (alexlamsl) -
ES6 - fix top-level directives in compress tests #1615 (alexlamsl)
- Harmony v2.8.13 #1614 (alexlamsl)
- Add
--in-source-map inlinedocumentation #1611 (CMTegner)
v2.8.13 (2017-03-16)
Merged pull requests:
- fix chained evaluation #1610 (alexlamsl)
- make
collapse\_varsconsistent withtoplevel#1608 (alexlamsl) - fix
hoist\_varsonreduce\_vars#1607 (alexlamsl) - extend
test/run-tests.jsto optionally execute uglified output #1604 (alexlamsl) - fix stack issues with
AST\_Node.evaluate\(\)#1603 (alexlamsl) - fix
AST\_Node.optimize\(\)#1602 (alexlamsl)
harmony-v2.8.12 (2017-03-14)
Merged pull requests:
v2.8.12 (2017-03-10)
Merged pull requests:
- temporary fix for boolean bug #1597 (alexlamsl)
- disallow parameter substitution for named IIFEs #1596 (alexlamsl)
harmony-v2.8.11 (2017-03-10)
Merged pull requests:
v2.8.11 (2017-03-10)
Merged pull requests:
- fixup for #1585 #1589 (alexlamsl)
- fix catch variable reference in IE8 #1587 (alexlamsl)
- Correctly raise parse error on missing loop body #1585 (michaelmior)
- fix & improve function argument compression #1584 (alexlamsl)
- Harmony v2.8.10 #1582 (alexlamsl)
v2.8.10 (2017-03-08)
harmony-v2.8.10 (2017-03-08)
Merged pull requests:
- scan RHS of dropped assignments #1581 (alexlamsl)
- explain how to make a proper bug report #1579 (alexlamsl)
- scan assignment value in drop_unused() #1578 (alexlamsl)
v2.8.9 (2017-03-08)
Merged pull requests:
- fix function name eliminiation #1576 (alexlamsl)
- plan B for IE8 do-while semi-colon fix #1572 (alexlamsl)
- only run benchmark & jetstream on CI #1571 (alexlamsl)
- fix return from recursive IIFE #1570 (alexlamsl)
- Harmony v2.8.8 #1567 (alexlamsl)
- Harmony v2.8.8 #1566 (alexlamsl)
-
ES6
v2.8.8 (2017-03-07)
Merged pull requests:
- fix deep cloning of labels #1565 (alexlamsl)
- include benchmark.js in test suite #1564 (alexlamsl)
- collapse_vars: do not replace a constant in loop condition or init #1562 (kzc)
- transform function calls to IIFEs #1560 (alexlamsl)
- avoid substitution of global variables #1557 (alexlamsl)
- suppress semicolons after do/while #1556 (alexlamsl)
harmony-v2.8.7 (2017-03-05)
Merged pull requests:
v2.8.7 (2017-03-05)
Merged pull requests:
v2.8.6 (2017-03-05)
Merged pull requests:
- collapse assignment with adjacent subsequent usage #1553 (alexlamsl)
- fix a corner case in #1530 #1552 (alexlamsl)
- resolve issue with outdated version of async #1549 (alexlamsl)
- improve
unsafeon undefined #1548 (alexlamsl) - stay safe with constants in IE8- #1547 (alexlamsl)
- handle variable declaration within catch blocks #1546 (alexlamsl)
- fix handling of shebang and preamble #1545 (alexlamsl)
- disallow collapse_vars constant replacement in for-in statements #1543 (kzc)
- preserve implicit return values #1522 (alexlamsl)
- compress numerical expressions #1513 (alexlamsl)
harmony-v2.8.5 (2017-03-02)
Merged pull requests:
v2.8.5 (2017-03-02)
Merged pull requests:
- fix chained assignment with
unused#1540 (alexlamsl) - collapse_vars should not replace constant in for-in init section #1538 (kzc)
- properly cover all cases of for-in loop variables #1536 (alexlamsl)
- fix reference marking in for-in loops #1535 (alexlamsl)
- disable do{...}while(false) optimisation #1534 (alexlamsl)
- optimize trivial IIFEs returning constants #1530 (kzc)
- trim unused invocation parameters #1526 (alexlamsl)
- minor improvement to string optimisation #1514 (alexlamsl)
harmony-v2.8.4 (2017-03-02)
Merged pull requests:
v2.8.4 (2017-03-01)
Merged pull requests:
v2.8.3 (2017-03-01)
Merged pull requests:
harmony-v2.8.2 (2017-03-01)
Merged pull requests:
v2.8.2 (2017-02-28)
Merged pull requests:
- invert
reduce\_varstracking flag #1519 (alexlamsl) - fix
evaluateon object getter & setter #1515 (alexlamsl)
v2.8.1 (2017-02-28)
Merged pull requests:
harmony-v2.8.0 (2017-02-28)
Merged pull requests:
v2.8.0 (2017-02-26)
Merged pull requests:
- add harmony branch details in README #1507 (kzc)
- improve error messages #1506 (alexlamsl)
- consolidate
evaluate&reduce\_vars#1505 (alexlamsl) - update docs for
pure\_funcs&drop\_console#1503 (alexlamsl) - allow --in-source-map inline #1490 (alexlamsl)
- 2.8.0 staging #1485 (alexlamsl)
- verify that property names after mangle are legal #1481 (anatdagan)
- Avoid using exports when they are not defined #1471 (OndrejSpanel)
- faster tree transversal #1462 (alexlamsl)
-
ES6 - fix test breakage after #1425 & #1427 #1441 (alexlamsl)
-
ES6 - fix mangling collision with keep_fnames #1431 (alexlamsl)
- optimise binary operands with evaluate() #1427 (alexlamsl)
- add missing LHS cases which global_defs should avoid #1426 (alexlamsl)
- augment evaluate to extract within objects #1425 (alexlamsl)
-
ES6 -
ES6 - Have minify() and tests use figure_out_scope() as uglifyjs CLI does #1408 (kzc)
- Add preventive test involving non-ascii function identifiers #1391 (avdg)
-
ES6 - Add note about name mangling when using --mangle-props=unquoted
\#1314#1387 (wiktor-k) - remove npm-shrinkwrap.json to work around npm@4.0.2 bug #1385 (kzc)
harmony-v2.7.5 (2016-11-29)
v2.7.5 (2016-11-29)
Merged pull requests:
v2.7.4 (2016-10-23)
Merged pull requests:
-
ES6 - Add an option to wrap IIFEs in parenthesis #1310 (rvanvelzen)
-
ES6 -
ES6 - Make all comment options in cli available in js api #1285 (avdg)
- Account for side effects in
string + exproptimization #1277 (kzc) - implement optimization:
x = 2 \* x--->x \*= 2#1270 (kzc) -
ES6
v2.7.3 (2016-08-17)
Merged pull requests:
- Fix negate_iife transform to return a correct tree for nested IIFEs #1257 (rvanvelzen)
v2.7.2 (2016-08-17)
Merged pull requests:
v2.7.1 (2016-08-14)
Merged pull requests:
v2.7.0 (2016-07-03)
Merged pull requests:
-
ES6 -
ES6
v2.6.4 (2016-06-22)
Merged pull requests:
- Fix conditional expressions of form
x ? -1 : -1#1155 (kzc) - Test --self build #1152 (rvanvelzen)
- Fixes to prevent failing tests after merging master #1150 (avdg)
v2.6.3 (2016-06-19)
Merged pull requests:
- Don't convert all strings to directives from moz-ast #1183 (avdg)
- Fix test262 failures related to <, <=, in and instanceof #1134 (avdg)
- Various LineTerminator changes #1131 (avdg)
- Don't allow with statements in strict mode #1129 (avdg)
-
ES6 - Export tokenizer function #1113 (ChALkeR)
-
ES6 - collapse_vars: Do not consider RegExp literals to be constants #1102 (kzc)
- Only allow
vardefinitions to be moved into the for-init clause #1081 (rvanvelzen) - Do not apply negate_iife optimization to
newexpression #1074 (kzc) - Avoid syntax error in yield assignments #1059 (not-an-aardvark)
- Hoist functions when reversing if
xreturn; ... vs. if!x... #1053 (rvanvelzen) - Merge master into harmony #1047 (rvanvelzen)
- Parse comments without recursion to avoid RangeError. #1045 (kzc)
- Simplify member(name, array) implementation. #1032 (kzc)
- Speedup
unusedcompress option for already minified code #1024 (kzc) - fix #1021 #1023 (fabiosantoscode)
- Escape all ASCII control characters within strings for ascii_only #1019 (kzc)
- Do not produce
letas a variable name in mangle. #1011 (kzc) - Ignore mangle sort option #991 (kzc)
v2.6.2 (2016-02-22)
Merged pull requests:
- Take operator || precendence into account for AST_If optimization. #981 (kzc)
- Fix #931: Create arrow functions in maybe_assign so that they can be … #967 (fabiosantoscode)
- Fixes #951 missing export for SymbolDef #952 (Bobris)
- collapse_vars: fix if/else and ternary operator side effects #949 (kzc)
- collapse_vars: document the compress option in README #948 (kzc)
- Add mangleProperties documentation to README #943 (bryanerayner)
- fix bug in collapse_vars for right side of "||" and "&&" #942 (kzc)
- Mark vars with /** @const */ pragma as consts so they can be eliminated. #928 (STRML)
- Never mangle arguments and keep them in their scope #918 (avdg)
- Unit tests #905 (avdg)
- Do not allow newlines in string literals #903 (avdg)
- Semicolon after do...while statement is optional #896 (avdg)
- Update README URLs based on HTTP redirects #879 (ReadmeCritic)
- #873 Fix
conditionalsoptimizations with default compress options #874 (kzc) - Feature/harmony defaults #872 (fabiosantoscode)
- Harmony: classes #870 (fabiosantoscode)
v2.6.1 (2015-11-16)
Merged pull requests:
v2.6.0 (2015-11-12)
Merged pull requests:
- Have mozilla AST RegExpLiteral parser use regex.pattern and regex.flags #854 (kzc)
- Fix RegExp literal in mozilla AST, add --dump-spidermonkey-ast flag #853 (kzc)
- fixes #845: \v escaping should be restricted to "screw_ie8" mode #847 (michaelficarra)
- Harmony: allow use of
ofas a name. #844 (fabiosantoscode) - Fix #836 #837 (fabiosantoscode)
- Escape \v like other special characters #833 (startswithaj)
- add support for --pure-funcs option #831 (pirxpilot)
- Fix other operator output producing <!-- or --> #829 (kzc)
- Feature/harmony computed props #806 (fabiosantoscode)
v2.5.0 (2015-10-11)
Merged pull requests:
- Fix handling of "use asm" when no flags are passed #822 (kzc)
- Add node 4.x in Travis #808 (avdg)
- sFix crash, remove unused code and state variable. #795 (fabiosantoscode)
- Harmony: template strings #794 (fabiosantoscode)
- allow for anonymous map generation using string type check #786 (istr)
- Parse ES6 number literals, round 2 #775 (fabiosantoscode)
- remove Symbol's argument when we're unsafe and Symbol is undeclared #774 (fabiosantoscode)
- Fix evaluating the typeof an arrow function. #773 (fabiosantoscode)
- Parse binary number literals #771 (fabiosantoscode)
- Feature/harmony destructuring expression #768 (fabiosantoscode)
-
Fix - Feature/harmony super #763 (fabiosantoscode)
- Feature/harmony arrows #760 (fabiosantoscode)
- Fix semicolon printing when restricting max line length #757 (rvanvelzen)
- Fix semicolon printing when restricting max line length #756 (rvanvelzen)
- Support wrap and exportAll options for node.js tools. #753 (Surgo)
- fromString option, use index from argument array for filename instead of "?" #736 (AlbertoGP)
- Add keep_fnames compressor option to README.md #729 (DrewML)
v2.4.24 (2015-07-22)
Merged pull requests:
- optimizations for && and || where left side is constant expression #735 (kzc)
- Add --mangle-regex option #733 (jcxplorer)
v2.4.23 (2015-05-20)
v2.4.22 (2015-05-18)
v2.4.21 (2015-05-04)
v2.4.20 (2015-04-13)
Merged pull requests:
v2.4.19 (2015-03-29)
Merged pull requests:
v2.4.18 (2015-03-29)
v2.4.17 (2015-03-10)
Merged pull requests:
- Allow uglify to handle executable files #810 (avdg)
- Drop all
consolestatements properly #629 (rvanvelzen) - fixes issue #621 SourceMap toString JSON format #622 (brycecr)
- Give parser more unicode support #615 (avdg)
- Replace the correct node when replacing in
voidsequences #612 (rvanvelzen) - Document
--for usage in CLI class #606 (rvanvelzen) - Add an option to prevent function names from being mangled #603 (rvanvelzen)
- Use yargs instead of optimist. #600 (knpwrs)
- Fix #597 #599 (rvanvelzen)
- Fix max_line_len not working for JSON files #592 (micschro)
- fix base54 #584 (clyfish)
- Fix #569 #570 (rvanvelzen)
- added @ngInject support for inline functions #482 (arty-name)
v2.4.16 (2014-12-09)
Merged pull requests:
- Don't warn for an unreferenced exception symbol in a catch block. #549 (Arnavion)
- Use uglify source map token names if missing #546 (jacobk)
- Conditional assignment of equivalent constants compressed
x=y?1:1 --\> x=1#541 (TalAter) - Added example for usage with SpiderMonkey AST #529 (RReverser)
- Added generative testing for AST conversions. #527 (RReverser)
- SpiderMonkey AST conversion #526 (RReverser)
- Added license #522 (gdw2)
v2.4.15 (2014-07-09)
Merged pull requests:
v2.4.14 (2014-06-12)
Merged pull requests:
- Fix sourceMapIncludeSources exception in Node API #470 (ebednarz)
- Allow colons in the pairs passed to AST_Toplevel.wrap_enclose #454 (Arnavion)
- Handle TryStatements trees from acorn >=0.2.0 #445 (ConradIrwin)
v2.4.13 (2014-03-11)
Merged pull requests:
- Handle the case when SourceMapConsumer.originalPositionFor returns null source. #439 (Arnavion)
- Simplify nested conditionals if possible #424 (mattbasta)
- Fix readme typo
when -\> with#422 (mourner)
v2.4.12 (2014-01-26)
Merged pull requests:
- Don't unescape \x00 in regexes
it breaks IE8#408 (danielstutzman)
v2.4.11 (2014-01-21)
Merged pull requests:
v2.4.10 (2014-01-18)
v2.4.9 (2014-01-15)
Merged pull requests:
v2.4.8 (2013-12-18)
Merged pull requests:
- bugfix #242 #371 (colorhook)
- Make
DefaultsErrora realErrorobject #245 (ForbesLindesay)
v2.4.7 (2013-12-09)
v2.4.6 (2013-11-28)
v2.4.5 (2013-11-28)
v2.4.4 (2013-11-27)
v2.4.3 (2013-11-06)
v2.4.2 (2013-11-03)
Merged pull requests:
- Disallow reversal where lhs has higher or equal precedence #336 (rvanvelzen)
- Fix RHS concat
raised in \#330#331 (rvanvelzen) - Unit test to detect issue in
8d14efefor #126 that causes aggressive parenthesis removal, functional differences #330 (markjaquith) - Fix #269 #325 (rvanvelzen)
- Fix #280 #323 (rvanvelzen)
- Add an exit code to the test suite #322 (rvanvelzen)
v2.4.1 (2013-10-22)
Merged pull requests:
v2.4.0 (2013-08-22)
Merged pull requests:
- fixes #259: don't unnecessarily quote object properties when --screw-ie8 #270 (michaelficarra)
- Escape null characters as \x00 #220 (lautis)
v2.3.6 (2013-05-23)
Merged pull requests:
- SourceMapping pragma has changed to //# #213 (mattrobenolt)
v2.3.5 (2013-05-19)
v2.3.4 (2013-05-15)
v2.3.3 (2013-05-14)
Merged pull requests:
v2.3.2 (2013-05-09)
v2.3.1 (2013-05-08)
Merged pull requests:
- Fix typo in bin and readme #195 (kimjoar)
- Add README syntax highlighting #194 (ulikoehler)
v2.3.0 (2013-05-01)
v2.3 (2013-05-01)
Merged pull requests:
- use dotted member access when --screw-ie8 option given #191 (michaelficarra)
- unbalanced parentheses in readme #190 (michaelficarra)
- Fix typeof evaluation for regex and function #181 (candid82)
- renamed --screw-ie to --screw-oldie, documented it in README.md, indicat... #163 (mgol)
- Read the entire STDIN. #146 (mbostock)
- Allow inSourceMap option to be a generated JSON source map #125 (devongovett)
v2.2.5 (2013-02-14)
Merged pull requests:
- Wraps sourceMappingURL in a multiline comment. Fixes #108 #111 (mattrobenolt)
v2.2.4 (2013-02-01)
Merged pull requests:
- Fix #105: property comparison to undefined is not always safe #106 (gibson042)
- Update installation instructions #98 (ForbesLindesay)
- Add better fromstring docs. #94 (paulmillr)
- Compressor options use underscores rather than hyphens #90 (jakearchibald)
v2.2.3 (2013-01-04)
Merged pull requests:
- Add a --version option #87 (BenoitZugmeyer)
v2.2.2 (2012-12-06)
Merged pull requests:
v2.2.1 (2012-11-23)
v2.2.0 (2012-11-21)
Merged pull requests:
- Add simple optimization for empty-string concats. #45 (rvanvelzen)
v2.1.11 (2012-11-12)
Merged pull requests:
v2.1.10 (2012-11-08)
v2.1.9 (2012-11-07)
v2.1.8 (2012-11-07)
v2.1.7 (2012-11-07)
v2.1.6 (2012-11-01)
v2.1.5 (2012-10-30)
v2.1.4 (2012-10-25)
v2.1.3 (2012-10-24)
v2.1.2 (2012-10-22)
Merged pull requests:
v2.1.1 (2012-10-18)
v2.1 (2012-10-17)
Merged pull requests:
v2.0 (2012-10-05)
* This Change Log was automatically generated by github_changelog_generator