Age | Commit message (Expand) | Author |
2013-07-28 | Don't require arguments to --enclose | Mihai Bazon |
2013-05-21 | The extra /* */ isn't needed now | Matt Robenolt |
2013-05-21 | SourceMapping pragma has changed to //#...See: https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit
The spec was updated on May 16th since `//@` was causing some issues with IE. | Matt Robenolt |
2013-05-15 | Add `--expr`, an option to parse a single expression (suitable for JSON) | Mihai Bazon |
2013-05-02 | Fix typo in bin and readme | Kim Joar Bekkelund |
2013-04-21 | Make compress/mangle disabled by default, as before 5af144522a6fea302abdd0b63... | Mihai Bazon |
2013-04-20 | fixes #189: use dotted member access when --screw-ie8 option given | Michael Ficarra |
2013-03-31 | uglifyjs binary: Make read_whole_file async and don't attempt to read STDIN s... | Andreas Lind Petersen |
2013-03-25 | renamed --screw-ie to --screw-ie8, documented it in README.md, indicated it d... | Michał Gołębiowski |
2013-03-24 | Add support for enclose option. Closes #139. | Jake Harding |
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-03-05 | Read the entire STDIN....The problem with reading synchronously from /dev/stdin is that you can get a
spurious EOF when the input buffer is empty, even if more content is coming. Now
STDIN is read from a loop, and only stops polling when all input has been read.
This fixes #70 #85 and other errors related to parsing large files on STDIN.
| Mike Bostock |
2013-03-02 | Add `--screw-ie` option...For now the implication is that UglifyJS will not leak a function
expression's name in the surrounding scope (IE < 9 does that).
(ref. mishoo/UglifyJS#485)
| Mihai Bazon |
2013-02-03 | Wraps sourceMappingURL in a multiline comment. Fixes #108 | Matt Robenolt |
2013-01-20 | Add --source-map-url option...Fix #100
Fix #47
| Mihai Bazon |
2013-01-03 | Set --version as a boolean #87 | Benoît Zugmeyer |
2013-01-03 | --version option | Benoît Zugmeyer |
2012-11-30 | Revert "Fixed reading from STDIN."...It breaks usage like this:
echo '...code...' | uglifyjs
This reverts commit e48802ad291fae5a16f2d23cbd25a0c433cdbe48.
| Mihai Bazon |
2012-11-29 | Fixed reading from STDIN. | Visa Kopu |
2012-11-21 | rename the npm package to "uglify-js" and cli tool to "uglifyjs" | 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-10-18 | fix `--comments` (close #16) | Mihai Bazon |
2012-10-17 | employ a better parser for command-line arguments...to support passing commas in strings in for example:
uglifyjs2 -cd TEST="'a,b'" <<EOF
console.log(TEST);
EOF
→ console.log("a,b")
close #14
| Mihai Bazon |
2012-10-10 | add `--lint` and display {file} in scope_warnings | Mihai Bazon |
2012-10-09 | make `--comments` keep @cc_on too | Mihai Bazon |
2012-10-09 | add `--ast-help`...displays a rather cruel description of the AST classes, derived
directly from the node definitions.
| Mihai Bazon |
2012-10-08 | should not expose base54.sort() in the API docs, I think | Mihai Bazon |
2012-10-08 | added --self to easily get a browser-runnable version of UglifyJS | Mihai Bazon |
2012-10-05 | added --acorn and --spidermonkey options | Mihai Bazon |
2012-10-02 | fixed usage string | Mihai Bazon |
2012-10-02 | support for `--comments` option to keep comments containing @license or @pres... | Mihai Bazon |
2012-10-02 | option to exclude certain names from mangling | Mihai Bazon |
2012-10-02 | support defines | Mihai Bazon |
2012-10-02 | "use strict"; | Mihai Bazon |
2012-10-02 | a shy attempt to obey `width` in the beautifier; added `bracketize` option to... | Mihai Bazon |
2012-09-26 | removed the "squeeze" method (it's now effectively "transform") | Mihai Bazon |
2012-09-26 | minor | Mihai Bazon |
2012-09-24 | Support input source map...This is useful while compressing generated code; for example compressing JS
compiled by CoffeeScript (assuming you got a source map):
uglifyjs2 --in-source-map generated.js.map \
--source-map uglified.js.map \
-o uglified.js
The above assumes you have a "generated.js.map" file which is the source
mapping between your CoffeeScript and the generated.js (compiled output from
CoffeeScript). The name of the input file is not present in this example;
it will be fetched from the source map (but it can be passed manually too).
The output will be in "uglified.js" and the output map "uglified.js.map"
will actually map to the original CoffeeScript code, rather than to
generated.js.
| Mihai Bazon |
2012-09-21 | log filename in parse errors / compressor warnings | Mihai Bazon |
2012-09-21 | better support for multiple input files:...- use a single AST_Toplevel node for all files
- keep original source filename in the tokens
| Mihai Bazon |
2012-09-19 | support -c with no arguments to disable compression entirely | Mihai Bazon |
2012-09-14 | more optimizations that v1 does and some cleanups...- a = a + x ==> a+=x
- joining consecutive var statements (hoisting is not always desirable)
- x == false ==> x == 0, x != true ==> x != 1
- x, x ==> x; x = exp(), x ==> x = exp()
- discarding useless break-s
| Mihai Bazon |
2012-09-13 | added -m and -c options | Mihai Bazon |
2012-09-11 | minor | Mihai Bazon |
2012-09-11 | fixed some mess with symbols/scope...- all symbols now have a `thedef` property which is a SymbolDef object,
instead of the `uniq` that we had before (pointing to the first occurrence
of the name as declaration).
- for undeclared symbols we still create a SymbolDef object in the toplevel
scope but mark it "undeclared"
- we can now call figure_out_scope after squeezing, which is useful in order
not to mangle names that were dropped by the squeezer
| Mihai Bazon |
2012-09-11 | checkpoint...- discard statements with no side effects (unsafe? could be)
- safer hoist_vars (needs some revamping of scope/mangling)
| Mihai Bazon |
2012-09-10 | hoist_vars is pretty bad, it seems. cancelled it for now. | Mihai Bazon |
2012-09-10 | adaptive base54 digits depending on char frequency (WIP) | Mihai Bazon |
2012-09-10 | fix "file" in the source map | Mihai Bazon |
2012-09-05 | declared `--stats` as boolean | Mihai Bazon |