Age | Commit message (Expand) | Author |
2015-07-29 | Re-use the caught exception's error message in the parse error call. | Chris Cowan |
2015-07-29 | Give a good error message if an invalid regular expression is found. | Chris Cowan |
2015-05-20 | Treat \uFEFF as whitespace....Fix #714
| Mihai Bazon |
2015-05-05 | Only drop the BOM when it's the first character....Close #704
| Mihai Bazon |
2015-04-23 | Fix parsing strings with literal DOS newlines...(should not set newline_before)
Fix #693
| Mihai Bazon |
2015-03-18 | Fix parsing for U+2028 / U+2029...(they should be treated as whitespace)
| Mihai Bazon |
2015-02-11 | Add filename to the JS_Parse_Error exception....It would be nice to have access to the filename of the file that includes the code that causes a JavaScript error. This is especially handy if uglifying multiple files at once.
Only a small change is needed for this to happen as it's already available in the function that throws the error. | Edward Casbon |
2015-01-27 | Add option to preserve/enforce string quote style...`-q 0` (default) use single or double quotes such as to minimize the number of
bytes (prefers double quotes when both will do); this is the previous
behavior.
`-q 1` -- always use single quotes
`-q 2` -- always use double quotes
`-q 3` or just `-q` -- always use the original quotes.
Related codegen option: `quote_style`.
Close #495
Close #460
Some `yargs` guru please tell me why `uglifyjs --help` doesn't display the
help string for `-q` / `--quotes`, and why it doesn't output the expected
argument types anymore, like good old `optimist` did.
| Mihai Bazon |
2015-01-20 | Add unicode digit parsing support | Anthony Van de Gejuchte |
2015-01-20 | Update unicode letter | Anthony Van de Gejuchte |
2015-01-06 | Track ending lines/columns; fix end locations in Mozilla AST. | Ingvar Stepanyan |
2015-01-05 | Fix handling \r\n...Close #437
| Mihai Bazon |
2014-10-20 | Add option to allow return outside of functions....Close #288
| Mihai Bazon |
2014-04-18 | Always quote property names that contain non-ASCII characters....Fix #328
| Mihai Bazon |
2014-01-21 | Fix end token for conditionals. Close #404 | Mihai Bazon |
2013-12-22 | Mark `yield` as reserved word. Close #375. | Mihai Bazon |
2013-10-30 | Fix parsing setters/getters (allow keywords for name)....The "key" property was always "set" or "get", which didn't make much sense.
Now it'll be the actual name of the setter/getter (AST_Node), and the
AST_Accessor object itself, which represents the function, won't store any
name.
Close #319
| Mihai Bazon |
2013-10-30 | minor | Mihai Bazon |
2013-10-03 | Only allow identifier start characters at the beginning of identifiers....Without this fix, the following source:
x = {"\u200c": 42};
would incorrectly be converted into a quoteless key. But while \u200c is allowed
to be in identifiers, it cannot be at the beginning, as per ES5.
(For example, the SockJS client library doesn't work under uglify starting with
d9ad3c7c.)
| David Glasser |
2013-09-06 | Support HTML5 comment syntax (enabled by default!)...See http://javascript.spec.whatwg.org/#comment-syntax
https://github.com/mishoo/UglifyJS/issues/503
https://github.com/marijnh/acorn/issues/62
| Mihai Bazon |
2013-09-02 | Fix names. | Mihai Bazon |
2013-09-02 | Disallow `continue` referring to a non-IterationStatement. Fix #287...Simplifies handling of labels (their definition/references can be easily
figured out at parse time, no need to do it in `figure_out_scope`).
| Mihai Bazon |
2013-09-02 | Better fix for #286 | Mihai Bazon |
2013-09-02 | Fix parsing `a.case /= 1`...Close #286
| Mihai Bazon |
2013-09-02 | Fix parsing regexp after unary-prefix operator...++/x/.y
Fix #284
| Mihai Bazon |
2013-07-15 | Revert previous patch, it was no good. | Mihai Bazon |
2013-07-15 | Add "position" option to parser, to specify initial pos/line/col...(for parsing embedded scripts)
| Mihai Bazon |
2013-07-12 | Fix typo....Close #239
| Mihai Bazon |
2013-05-15 | Add `--expr`, an option to parse a single expression (suitable for JSON) | Mihai Bazon |
2013-05-14 | Fix a["1_1"]...Close #204
| Mihai Bazon |
2013-05-09 | Fix is_assignable...(not likely to be noticed, it's only used in `strict` parse mode)
| Mihai Bazon |
2013-05-08 | Fix property names...Close #199
| Mihai Bazon |
2013-05-07 | Fixed dot properties not optimizing unicode identifiers. Signed-off-by: Justi... | Justin Lau |
2013-03-24 | Don't print the warning on parse error, just throw a JS_Parse_Error....Fix #159
| Mihai Bazon |
2013-03-22 | Keep legit code working even when --screw-ie is not passed....Previously:
Without `--screw-ie`, UglifyJS would always leak names of function
expressions into the containing scope, as if they were function
declarations. That was to emulate IE<9 behavior. Code relying on this
IE bug would continue to work properly after mangling, although it would
only work in IE (since other engines don't share the bug). Sometimes
this broke legitimage code (see #153 and #155).
With `--screw-ie` the names would not be leaked into the current scope,
working properly in legit cases; but still it broke legit code when
running in IE<9 (see #24).
Currently:
Regardless of the `--screw-ie` setting, the names will not be leaked.
Code relying on the IE bug will not work properly after mangling.
<evil laughter here>
Without `--screw-ie`: a hack has been added to the mangler to avoid
using the same name for a function expression and some other variable in
the same scope. This keeps legit code working, at the (negligible,
indeed) cost of one more identifier.
With `--screw-ie` you allow the mangler to name function expressions
with the same identifier as another variable in scope. After mangling
code might break in IE<9.
Oh man, the commit message is longer than the patch.
Fix #153, #155
| Mihai Bazon |
2013-02-01 | Fix end token for Assign nodes | 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 |
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-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-10-13 | minor | Mihai Bazon |
2012-10-12 | use AST_Lambda for object setters/getters...so that the optimization that drops the name if unused doesn't apply.
close #12
| Mihai Bazon |
2012-10-11 | fix pos in syntax error exception | Mihai Bazon |
2012-10-11 | stealing more hacks from acorn in the name of speed | Mihai Bazon |
2012-10-11 | using makeComparator from acorn to generate functions that tests whether a...string is keyword, reserved etc.
speeds up the parser a bit, though not spectacular.. still far from acorn.
| Mihai Bazon |
2012-10-11 | cleanup...- use prototype-less objects where feasible (minor speed improvement)
- get rid of HOP
| Mihai Bazon |
2012-10-09 | make `--comments` keep @cc_on too | Mihai Bazon |
2012-10-09 | added $propdoc to AST nodes and some cleanups...hopefully we can make the AST documentation self-generating
| Mihai Bazon |
2012-10-04 | removed some unused variables | Mihai Bazon |
2012-10-03 | more cleanup (dropped AST_SwitchBlock) | Mihai Bazon |
2012-10-02 | line numbers start at 1 | Mihai Bazon |