Age | Commit message (Expand) | Author |
2013-02-06 | Give up evaluating (unary-prefix '-' 0)...Close #117
------
JS, WHY YOU SUCK SO BADLY? ;-(
| Mihai Bazon |
2013-02-06 | Fix parens for NaN...Close #116
| Mihai Bazon |
2013-02-06 | Fix parens for negative numbers...Close #115
| Mihai Bazon |
2013-02-06 | Fix parens for AST_New...Close #114
| Mihai Bazon |
2013-02-06 | Fix handling of constants...Close #113
| Mihai Bazon |
2013-02-05 | Ugly hack to print comments before return/throw statements...Close #112
| Mihai Bazon |
2013-02-01 | Fix end token for Assign nodes | Mihai Bazon |
2013-01-23 | Fix #105: property comparison to undefined is not always safe | Richard Gibson |
2013-01-17 | [AST_Hole] the print function can be a no-op. | Mihai Bazon |
2013-01-17 | Fix output for arrays containing undefined values....1b6bcca7 was a first attempt at this. That commit made Uglify stop replacing
holes with undefined, but instead it started replacing undefined with
holes. This is slightly problematic, because there is a difference between a
hole and an undefined value. More problematically, it changed [1,undefined] to
[1,] which generally doesn't even parse as a hole (just as a trailing comma), so
it didn't even preserve the length of the array!
Instead, parse holes as their own special AST node which prints invisibly.
| David Glasser |
2013-01-17 | Handle String() with no arguments....Fix #91
| Mihai Bazon |
2013-01-04 | Fix handling of labels in nested scopes | Mihai Bazon |
2013-01-02 | Implement `-m sort=true`...close #83
| Mihai Bazon |
2012-12-22 | Accept string or number as name of an accessor....[not sure I'm happy about this fix]
Reference mishoo/UglifyJS#478
| Mihai Bazon |
2012-12-21 | Optimize new Array(1, 2, 3) → [1, 2, 3]...Close #74
| Mihai Bazon |
2012-12-21 | Fix output when semicolons is off....(need to force a semicolon for the empty body of an `if`)
Close #72
| Mihai Bazon |
2012-12-12 | Small cleanup | Mihai Bazon |
2012-12-06 | Add proper parens in "NoIn" expressions....fix #60.
| Mihai Bazon |
2012-12-05 | small improvement on merging assignments into hoisted vars | Mihai Bazon |
2012-12-05 | When hoisting variables, try to merge in assignments that follow. | Mihai Bazon |
2012-11-30 | Don't messup compressor stack while optimizing Switch...Fix #59
| Mihai Bazon |
2012-11-24 | fix #55 | Mihai Bazon |
2012-11-23 | fix for https://github.com/mishoo/UglifyJS/issues/474 | Mihai Bazon |
2012-11-18 | fix #51 | Mihai Bazon |
2012-11-17 | retain (1,eval) as is when it's the expression of an AST_Call...otherwise we change the meaning of eval from global to lexical.
| Mihai Bazon |
2012-11-14 | Add support for somewhat preserving line numbers....Usage: uglifyjs2 -b "beautify=0,preserve_line=1" /path/to/js
ref #46
| Richard van Velzen |
2012-11-14 | better solution for the last test in constant switch folding | Mihai Bazon |
2012-11-14 | optimize constant switch blocks...ref. mishoo/UglifyJS#441
| Mihai Bazon |
2012-11-13 | Merge branch 'optimize_concat' of https://github.com/rvanvelzen/UglifyJS2 int... | Mihai Bazon |
2012-11-13 | don't change order in binary expressions if both operands have side effects | Mihai Bazon |
2012-11-12 | Add simple optimization for empty-string concats....ref. #43
| Richard van Velzen |
2012-11-12 | fix invalid AST produced by dropping unused variable...close #44
| Mihai Bazon |
2012-11-11 | convert x.toString() to ""+x instead of x+""...In some places this can save one byte in whitespace, e.g. after return.
Example:
function f(arg) {
// return""+arg - no space between return and ""
return arg.toString();
}
| Dan Wolff |
2012-11-08 | AST_LabelRef no longer inherits from AST_SymbolRef | Mihai Bazon |
2012-11-08 | fix API breakage...close #36, #38
| Mihai Bazon |
2012-11-08 | optimization for if/break as first statement in a loop body... for(...; x; ...) if (y) break; → for(...; x&&!y; ...);
similarly for `while` and some combinations (i.e. the `break` appears in the
`else` clause, etc.)
| Mihai Bazon |
2012-11-07 | fix another small regression...we do need parens here: `new (foo.bar().baz)`, but not here: `new foo.bar.baz`
| Mihai Bazon |
2012-11-07 | fix regression from 5346fb94 (shouldn't parenthesize i++ in x[i++]) | Mihai Bazon |
2012-11-07 | add AST_Accessor and AST_SymbolAccessor node types...AST_Accessor will represent the function for a setter or getter. Since they
are not mangleable, and they should not introduce a name in scope, we have a
new node for their name (AST_SymbolAccessor) which doesn't inherit from
AST_SymbolDeclaration.
fix #37
| Mihai Bazon |
2012-11-07 | parenthesize property access when it's the expression in New...refs #35
| Mihai Bazon |
2012-11-07 | further fix for parens around New (refs #35) | Mihai Bazon |
2012-11-07 | parenthesize a Call expression when its parent is New...fix #35
| Mihai Bazon |
2012-11-07 | add proper parens around unary expressions...fix #34
| Mihai Bazon |
2012-11-06 | add option to mangle names even if eval/with is in use...(for more fair comparison to Closure compiler)
| Mihai Bazon |
2012-11-05 | convert `while` into `for` | Mihai Bazon |
2012-11-05 | minor | Mihai Bazon |
2012-11-05 | minor optimization...for `==` or `!=` against a constant, prefer to display the constant first.
should help a bit after gzip, i.e.:
typeof foo=="undefined"
^^^^^^ ^^^^^^^^^^^^^
vs:
"undefined"==typeof foo
^^^^^^^^^^^^^^^^^^^ (longer sequence that could repeat)
idea stolen from closure.
| Mihai Bazon |
2012-11-05 | print final semicolon...close #28
| Mihai Bazon |
2012-11-02 | use a Dictionary object instead of plain object for hashes...to mitigate the `__proto__` issue
related to #30
| Mihai Bazon |
2012-11-01 | it's safe to negate expression in !EXP only in boolean context...#kendo
| Mihai Bazon |