aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-05-04Avoid spurious brackets when dropping unused varsMihai Bazon
Fix #702
2015-04-23Fix parsing strings with literal DOS newlinesMihai Bazon
(should not set newline_before) Fix #693
2015-04-22If name_cache is specified, do rename cached propertiesMihai Bazon
(even if --mangle-props is not there)
2015-04-17Fix testsMihai Bazon
2015-04-17Drop NaN -> 0/0 transformation.Mihai Bazon
Fix #687
2015-04-14Added expect_exact for testing the OutputStreamFábio Santos
This works almost exactly like `expect`, except that you pass a literal string of which the result is compared with the generated output.
2015-04-14Normalize package.json.XhmikosR
* Specify the files to install in package.json * Add missing properties * Follow `npm init`'s scheme
2015-04-14Test on latest `node` and `io.js`Jordan Harband
Per https://github.com/mishoo/UglifyJS2/commit/0262b4244c13b3ef148bf096874847aea84b93e5 - if you're going to stop testing on 0.8, you should be testing on 0.12. Also allow failures on unstable nodes and "older than two latest" `io.js` versions, and enable "sudo: false" which makes tests run faster.
2015-04-13v2.4.20Mihai Bazon
2015-04-13Fix compression of conditionalsMihai Bazon
Don't move the condition on the right side of an assignment when the left side may have side effects. Fix #677
2015-04-10Use the `before` visitor in mangle propsMihai Bazon
(works around a bug in our tree walker which, while cloning nodes, breaks references between labeled statements and break/continue labels)
2015-04-05More fixes for the breaking changes in yargsMihai Bazon
Close #670
2015-04-04Merge pull request #669 from galvanix/documentation-inSourceMapMihai Bazon
Document passing source maps directly to minify() using inSourceMap
2015-04-03Document passing source maps directly to minify() using inSourceMapDavid Caldwell
2015-03-29v2.4.19Mihai Bazon
2015-03-29Merge pull request #660 from ntkme/fix-long-optionsMihai Bazon
Fix long options
2015-03-29Fix long optionsなつき
2015-03-29Disable testing with Node 0.8Mihai Bazon
2015-03-29v2.4.18Mihai Bazon
2015-03-29Update READMEMihai Bazon
2015-03-29Merge branch 'propmangle'Mihai Bazon
2015-03-29Add tool to extract property namesMihai Bazon
2015-03-24Merge in more DOM properties.Mihai Bazon
2015-03-23Fix compressing `![foo()];` as a statementMihai Bazon
need to check whether the literal has any side effects before replacing that with `false`.
2015-03-22[sequencesize] Actually even better:Mihai Bazon
do create the sequence even if the stat list is bigger than 2000 statements, but limit the sequence itself to 2000 expressions. Ref #414
2015-03-22Avoid sequencesize for more than 2000 statements.Mihai Bazon
It hardly saves any bytes for a sequence so long, and it risks blowing the stack with the recursive Seq functions. Ref #414
2015-03-22Add start/end nodes for NaN/Infinity transformationsMihai Bazon
2015-03-22Export readDefaultReservedFileMihai Bazon
2015-03-20Keep unused function arguments by defaultMihai Bazon
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
2015-03-19Don't use Object.createMihai Bazon
2015-03-19tools/props.html: output complete JSONMihai Bazon
2015-03-18Add --reserve-domprops along with a default exclusion list in ↵Mihai Bazon
tools/domprops.json
2015-03-18Support multiple --reserved-file argsMihai Bazon
2015-03-18Bump yargs version (for .array arguments)Mihai Bazon
2015-03-18Fix parsing for U+2028 / U+2029Mihai Bazon
(they should be treated as whitespace)
2015-03-18Fix parsing for U+2028 / U+2029Mihai Bazon
(they should be treated as whitespace)
2015-03-17tools/props.html: use try/catch in a few more placesMihai Bazon
2015-03-17Add tool to list DOM properties/methodsMihai Bazon
2015-03-17Export readNameCache / writeNameCacheMihai Bazon
2015-03-16rename --prop-cache to --name-cacheMihai Bazon
... and support storing there variable names as well, to help with multiple invocations when mangling toplevel.
2015-03-16Fix prop manglingMihai Bazon
Even if not “defined”, do mangle if name exists in the cache.
2015-03-14Fix --reserved-fileMihai Bazon
2015-03-14Add property name manglerMihai Bazon
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.
2015-03-11v2.4.17Mihai Bazon
2015-02-11Add filename to the JS_Parse_Error exception.Edward Casbon
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.
2015-02-11Add .npmignoreRob Loach
2015-02-11Clean up unit test breakageRichard van Velzen
In 992b6b9fcce47ca67ecb14675f10b172ce7a99b5 unit test broke (which I missed). This was due to undeclared variables not being side-effects free. However, since they're really not side-effect free, just declare them in the test cases.
2015-02-11Fix invalid removal of left side in && and || compressionRichard van Velzen
See #637. This does not produce the optimal result, but it does prevent the removal of non-side-effect-free code.
2015-02-11Parse regexes properlyAnthony Van de Gejuchte
2015-01-31Drop all `console` statements properlyRichard van Velzen
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