Age | Commit message (Expand) | Author |
2015-06-09 | Add --mangle-regex option | Joao Carlos |
2015-05-20 | Treat \uFEFF as whitespace....Fix #714
| Mihai Bazon |
2015-05-18 | Fix compressing conditionals...Only transform foo() ? EXP(x) : EXP(y) into EXP(foo() ? x : y) if EXP has no
side effects.
Fix #710
| Mihai Bazon |
2015-05-13 | fix again reserved props | Mihai Bazon |
2015-05-07 | Make reserved names take priority over the name cache | Mihai Bazon |
2015-05-05 | Only drop the BOM when it's the first character....Close #704
| Mihai Bazon |
2015-05-04 | Fix blank lines in the output....The issue was more obvious when max_line_len has a small value, rather than
the default 32K characters. A blank line showed up after most statements.
| Mihai Bazon |
2015-05-04 | Avoid spurious brackets when dropping unused vars...Fix #702
| Mihai Bazon |
2015-04-23 | Fix parsing strings with literal DOS newlines...(should not set newline_before)
Fix #693
| Mihai Bazon |
2015-04-22 | If name_cache is specified, do rename cached properties...(even if --mangle-props is not there)
| Mihai Bazon |
2015-04-17 | Drop NaN -> 0/0 transformation....Fix #687
| Mihai Bazon |
2015-04-13 | Fix compression of conditionals...Don't move the condition on the right side of an assignment when
the left side may have side effects.
Fix #677
| Mihai Bazon |
2015-04-10 | Use the `before` visitor in mangle props...(works around a bug in our tree walker which, while cloning nodes, breaks
references between labeled statements and break/continue labels)
| Mihai Bazon |
2015-03-29 | Merge branch 'propmangle' | Mihai Bazon |
2015-03-23 | Fix compressing `![foo()];` as a statement...need to check whether the literal has any side effects before replacing that
with `false`.
| Mihai Bazon |
2015-03-22 | [sequencesize] Actually even better:...do create the sequence even if the stat list is bigger than 2000 statements,
but limit the sequence itself to 2000 expressions.
Ref #414
| Mihai Bazon |
2015-03-22 | Avoid sequencesize for more than 2000 statements....It hardly saves any bytes for a sequence so long, and it risks blowing the
stack with the recursive Seq functions.
Ref #414
| Mihai Bazon |
2015-03-22 | Add start/end nodes for NaN/Infinity transformations | Mihai Bazon |
2015-03-20 | Keep unused function arguments by default...Discarding unused function arguments affects function.length, which can lead
to some hard to debug issues. This optimization is now done only in "unsafe
mode".
Fix #121
| Mihai Bazon |
2015-03-18 | Fix parsing for U+2028 / U+2029...(they should be treated as whitespace)
| Mihai Bazon |
2015-03-18 | Fix parsing for U+2028 / U+2029...(they should be treated as whitespace)
| Mihai Bazon |
2015-03-16 | rename --prop-cache to --name-cache...... and support storing there variable names as well, to help with multiple
invocations when mangling toplevel.
| Mihai Bazon |
2015-03-16 | Fix prop mangling...Even if not “defined”, do mangle if name exists in the cache.
| Mihai Bazon |
2015-03-14 | Add property name mangler...We only touch properties that are present in an object literal, or which are
assigned to. Example:
x = { foo: 1 };
x.bar = 2;
x["baz"] = 3;
x[cond ? "qwe" : "asd"] = 4;
console.log(x.stuff);
The names "foo", "bar", "baz", "qwe" and "asd" will be mangled, and the
resulting mangled names will be used for the same properties throughout the
code. The "stuff" will not be, since it's just referenced but never
assigned to.
This *will* break most of the code out there, but could work on carefully
written code: do not use eval, do not define methods or properties by
walking an array of names, etc. Also, a comprehensive list of exclusions
needs to be passed, to avoid mangling properties that are standard in
JavaScript, DOM, used in external libraries etc.
| 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-02-11 | Fix invalid removal of left side in && and || compression...See #637. This does not produce the optimal result, but it does prevent the removal of non-side-effect-free code.
| Richard van Velzen |
2015-01-31 | Drop all `console` statements properly...Because the base reference can be an member expression as well, we have to dig a bit deeper to find the leftmost base reference.
Fixes #451
| Richard van Velzen |
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-26 | Keep single line comments after nlb, after nlb...Fixes #583
| Anthony Van de Gejuchte |
2015-01-24 | fixes issue #621 SourceMap toString JSON format...The correct format of a sourcemap is acquired
from a mozilla source map generator by calling
toJSON on this object. This patch alters the
toString function on mozilla generators to print
the format that is to spec instead of the generator's
internal representation of itself.
| Bryce Cronkite-Ratcliff |
2015-01-20 | Merge pull request #615 from avdg/unicode...Give parser more unicode support | 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-13 | Optimize conditionals where the consequent and alternative are both booleans ... | Tal Ater |
2015-01-12 | Replace the correct node when replacing in `void` sequences...Close #611.
| Richard van Velzen |
2015-01-11 | Merge pull request #482 from arty-name/inline-ng-inject...added @ngInject support for inline functions | Mihai Bazon |
2015-01-07 | Fix make_node_from_constant for Regexp-s...Close #588
| Mihai Bazon |
2015-01-06 | aborts(AST_If) returns the `if` node...Previously it returned the abort node from the alternative branch. This is
not much use as it can be different from the one in the body
branch (i.e. return vs. throw) and can trick us into issues like #591.
Fix #591
| Mihai Bazon |
2015-01-06 | Location fix for Mozilla AST start token. | Ingvar Stepanyan |
2015-01-06 | Track ending lines/columns; fix end locations in Mozilla AST. | Ingvar Stepanyan |
2015-01-06 | AST_Do nodes: walk body before condition | Mihai Bazon |
2015-01-05 | Fix handling \r\n...Close #437
| Mihai Bazon |
2015-01-05 | Support keep_fnames in compressor, and --keep-fnames. #552...Passing `--keep-fnames` will enable it both for compressor/mangler, so that
function names will not be dropped (when unused) nor mangled.
| Mihai Bazon |
2015-01-04 | Add an option to prevent function names from being mangled...See #552. This is mostly useful for having the actual function names in traces.
| Richard van Velzen |
2015-01-04 | using the original sourcemap as the base...* Creates a new SourceMapGenerator based on a SourceMapConsumer:
https://github.com/mozilla/source-map#sourcemapgeneratorfromsourcemapsourcemapconsumer
| Caridy Patino |
2015-01-04 | Fix #556...`\uFEFF` (ZERO WIDTH NO-BREAK SPACE) is removed when parsing, but was
un-escaped for the output when `ascii_only` was false.
When using
UglifyJS multiple times (creating packages from minified sources, for
example), this would lead to problems because the byte was removed when
parsing for the second time.
| Richard van Velzen |
2015-01-04 | Merge pull request #570 from rvanvelzen/fix-569...Fix #569 | Richard van Velzen |
2015-01-04 | Merge pull request #584 from clyfish/fix-base54...fix base54 | Richard van Velzen |
2015-01-04 | Merge pull request #592 from micschro/patch-1...Fix max_line_len not working for JSON files | Richard van Velzen |
2015-01-04 | Fix #569...When no arguments are given to `new Function()`, it should be treated as
a regular anonymous function (http://es5.github.io/#x15.3.2.1)
| Richard van Velzen |