aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2016-01-19Add some tests for comment-filters through apiAnthony Van de Gejuchte
Also never bother comment options to filter comment5/shebang comments as they have their custom filter.
2016-01-14Never mangle arguments and keep them in their scopeAnthony Van de Gejuchte
Fixes #892 Helped-by: kzc
2016-01-14Merge pull request #905 from avdg/unit-testsRichard van Velzen
Add unit tests
2016-01-05Fix hoisting the var in ForInMihai Bazon
Close #913
2015-12-27Fix ch that could contain other newline charactersAnthony Van de Gejuchte
2015-12-26Do not allow newlines in string literalsAnthony Van de Gejuchte
2015-12-26Merge pull request #874 from kzc/fix-conditionalsRichard van Velzen
#873 Fix `conditionals` optimizations with default compress options
2015-12-17Semicolon after do...while statement is optionalAnthony Van de Gejuchte
2015-11-24#873 Fix `conditionals` optimizations with default compress optionskzc
2015-11-16Fix endless loopMihai Bazon
Close #866
2015-11-16Limit max iterations for tighten_bodyMihai Bazon
Ref #866
2015-11-12Fix output for "use asm" code from SpiderMonkey ASTMihai Bazon
(will only work properly if the SM tree contains "raw" properties for Literal number nodes)
2015-11-12Build label def/refs info when figuring out scopeMihai Bazon
Fix #862
2015-11-11Rework has_directiveMihai Bazon
It's now available during tree walking, i.e. walker.has_directive("use asm"), rather than as part of the scope. It's thus no longer necessary to call `figure_out_scope` before codegen. Added special bits in the code generator to overcome the fact that it doesn't inherit from TreeWalker. Fix #861
2015-11-10Merge pull request #854 from kzc/moz-regexp-2Mihai Bazon
Have mozilla AST RegExpLiteral parser use regex.pattern and regex.flags
2015-11-09Fix parsing invalid inputMihai Bazon
i.e. `x = 1.xe` — because parseFloat("1.xe") returns 1, this parsed as `x = 1`. Ref #857
2015-11-09Prevent ReDoS by not using a regexp to verify floating point numbersRichard van Velzen
`parseFloat` will return `NaN` for invalid numbers anyway, which is the check used to throw the parse error. Fixes #857
2015-11-02simplify mozilla AST RegExpLiteral token parse and handle corner cases of ↵kzc
regex.pattern better
2015-11-02Have mozilla AST RegExpLiteral parser use regex.pattern and regex.flags ↵kzc
rather than non-standard `raw` property.
2015-11-01rename To_Moz_Literal to To_Moz_RegExpkzc
2015-11-01Fixed RegExp literal in mozilla AST generation/output and added a ↵kzc
--dump-spidermonkey-ast flag
2015-10-29`return undefined` optimization no longer uses `return_void_0` optionkzc
2015-10-29optimize `return undefined` and `return void 0`kzc
2015-10-28Allow specification beautify options in testsRichard van Velzen
Caught an error in #847 as well - `output` wasn't passed anywhere which led to an exception. `options` was available though.
2015-10-27fixes #845: \v escaping should be restricted to "screw_ie8" modeMichael Ficarra
2015-10-20Fix #836Fábio Santos
2015-10-15Make_string was missing \v and wasnt reversing vertical tabs even though ↵startswithaj
read_escaped_char coverts them
2015-10-13Fix other operator output related to <!-- or -->kzc
2015-10-12Only encode <!-- and --> in strings when inline_scriptMihai Bazon
2015-10-12Output `-- >` instead of `-->` in expressions. Escape `<!--` and `-->` ↵kzc
within string literals.
2015-10-07Fix handling of "use asm" when no command line flags are passed to uglifyjs. ↵kzc
SCOPE_IS_NEEDED is unconditionally true now. Refactored floating point literal parsing to be more in keeping with the AST class design.
2015-10-07Add proper support for "use asm"; blocks. Disable -c optimization within ↵kzc
"use asm"; sections and preserve floating point literals in their original form. Non-asm.js sections are optimized as before. Asm.js sections can still be mangled and minified of whitespace. No special command line flags are required.
2015-10-06Implement shebang supportAnthony Van de Gejuchte
2015-09-24Fix mozilla-ast after module loading changesMihai Bazon
Need to explicitly qualify stuff now, since it's not evaluated in some global scope. Ref #636
2015-09-24No longer use `vm` to load code.Mihai Bazon
Improves performance 2x on node > 0.10. Ref #636
2015-09-24Fix wrap_commonjs to include code firstMihai Bazon
(code could have directives, i.e. "use strict")
2015-09-14Control keeping function arguments with a single optionVille Lautanala
2015-08-27Fix bad parsing of `new new x()()` constructsRichard van Velzen
Fixes #739
2015-08-25Don't change sequences that influence lexical binding in callsRichard van Velzen
Fixes #782
2015-08-10[Fix] --define replaces SymbolRefs in LHS of assignmentsChristopher Chedeau
See #208 for context
2015-08-05Fix mangling of property names which overwrite unmangleable propertiesRichard van Velzen
Fixes #747.
2015-07-30Fix semicolon printing when restricting max line lengthRichard van Velzen
Fixes #755
2015-07-29Re-use the caught exception's error message in the parse error call.Chris Cowan
2015-07-29Give a good error message if an invalid regular expression is found.Chris Cowan
2015-07-29Advanced way to specify if a function call might have side effects. #400thorn0
2015-07-22Don't attempt to negate non-boolean AST_BinaryMihai Bazon
Fix #751
2015-07-20Merge pull request #735 from kzc/masterMihai Bazon
optimizations for && and || where left side is constant expression
2015-06-30Don't drop parens in a * (b * c). Close #744Mihai Bazon
2015-06-14operator && and || optimization: add "else" before "if" as intendedkzc
2015-06-11optimizations for && and || where left side is constant expressionkzc