Age | Commit message (Expand) | Author |
2017-10-01 | trap invalid use of reserved words (#2338)...fixes #2337 | Alex Lam S.L |
2017-07-29 | improve `mangle.properties` (#2261)...- include dead code when `keep_quoted`
- unify `keep_quoted` & `reserved`
- make `test/run-tests.js` consistent with `minify()`
fixes #2256 | Alex Lam S.L |
2017-06-29 | improve usability of name cache under `minify()` (#2176)...fixes #2174 | Alex Lam S.L |
2017-06-27 | parse `@global_defs` as expressions (#2169)...- let parser rejects non-conformant input
- eliminate need for extraneous parenthesis | Alex Lam S.L |
2017-06-08 | fix iteration over object with inherited properties (#2068)...fixes #2055 | Alex Lam S.L |
2017-06-06 | implement function inlining (#2053)...- empty body
- single `AST_Return`
- single `AST_SimpleStatement`
- avoid `/*#__PURE__*/`
Miscellaneous
- enhance single-use function substitution
fixes #281 | Alex Lam S.L |
2017-05-23 | fix source map offset (#1993)...Account for whitespace insertions.
fixes #505
fixes #890 | Alex Lam S.L |
2017-05-22 | improve usability of `global_defs` in `minify()` (#1987)...Use `@key` to `parse()` string value as `AST_Node`.
fixes #1986 | Alex Lam S.L |
2017-05-08 | return `Error` from `minify()` (#1880)...Have `minify()` return `Error` in `result.error` rather than throwing it. | Alex Lam S.L |
2017-05-08 | deprecate low level API (#1877)...fixes #1872 | Alex Lam S.L |
2017-04-15 | unify CLI & API under `minify()` (#1811)...- rename `screw_ie8` to `ie8`
- rename `mangle.except` to `mangle.reserved`
- rename `mangle.properties.ignore_quoted` to `mangle.properties.keep_quoted`
- compact `sourceMap` options
- more stringent verification on input `options`
- toplevel shorthands
- `ie8`
- `keep_fnames`
- `toplevel`
- `warnings`
- support arrays and unquoted string values on CLI
- drop `fromString` from `minify()`
- `minify()` no longer handles any `fs` operations
- unify order of operations for `mangle_properties()` on CLI & API
- `bin/uglifyjs` used to `mangle_properties()` before even `Compressor`
- `minify()` used to `mangle_properties()` after `Compressor` but before `mangle_names()`
- both will now do `Compressor`, `mangle_names()` then `mangle_properties()`
- `options.parse` / `--parse` for parser options beyond `bare_returns`
- add `mangle.properties.builtins` to disable built-in reserved list
- disable with `--mangle-props builtins` on CLI
- `warnings` now off by default
- add `--warn` and `--verbose` on CLI
- drop `--enclose`
- drop `--export-all`
- drop `--reserved-file`
- use `--mangle reserved` instead
- drop `--reserve-domprops`
- enabled by default, disable with `--mangle-props domprops`
- drop `--prefix`
- use `--source-map base` instead
- drop `--lint`
- remove `bin/extract-props.js`
- limit exposure of internal APIs
- update documentations
closes #96
closes #102
closes #136
closes #166
closes #243
closes #254
closes #261
closes #311
closes #700
closes #748
closes #912
closes #1072
closes #1366
fixes #101
fixes #123
fixes #124
fixes #263
fixes #379
fixes #419
fixes #423
fixes #461
fixes #465
fixes #576
fixes #737
fixes #772
fixes #958
fixes #1036
fixes #1142
fixes #1175
fixes #1220
fixes #1223
fixes #1280
fixes #1359
fixes #1368 | Alex Lam S.L |
2017-03-16 | make `collapse_vars` consistent with `toplevel` (#1608)...fixes #1605 | Alex Lam S.L |
2017-03-02 | optimize trivial IIFEs returning constants (#1530) | kzc |
2017-03-01 | invert `reduce_vars` tracking flag (#1519)...Modules like webpack and grunt-contrib-uglify still uses `ast.transform(compressor)` before `Compressor.compress(ast)` was introduced.
Workaround this compatibility issue by deactivating `reduce_vars` in such case.
Also fix use case with omitted `options` when calling `Compressor()`.
fixes #1516 | Alex Lam S.L |
2017-02-28 | warn & drop `#__PURE__` iff IIFE is dropped (#1511)...- consolidate `side-effects` optimisations
- improve string `+` optimisation
- enhance literal & `conditionals` optimisations | Alex Lam S.L |
2017-02-27 | improve error messages (#1506)...- better inheritance of `Error` sub-classes
- mark parse error against source in CLI
closes #235
closes #348
closes #524
closes #1356
closes #1405 | Alex Lam S.L |
2017-02-25 | allow --in-source-map inline (#1490)...- limited to one input file (or `stdin`)
- only works with built-in parser
fixes #520 | Alex Lam S.L |
2017-02-21 | Support marking a call as pure...A function call or IIFE with an immediately preceding comment
containing `@__PURE__` or `#__PURE__` is deemed to be a
side-effect-free pure function call and can potentially be
dropped.
Depends on `side_effects` option.
`[#@]__PURE__` hint will be removed from comment when pure
call is dropped.
fixes #1261
closes #1448
| kzc |
2016-11-29 | feat: add option.outFileName for JS API, if absense, sourceMap.file field wil... | 1111hui |
2016-10-23 | Add an option for writing inline source map | pengzhenqing |
2016-08-14 | Moved test input files to test/input. | Lucas Wiener |
2016-08-14 | Added test for #1236 | Lucas Wiener |
2016-06-19 | Respect quote style in object literals...The option added in fbbaa42ee55a7f753f7cab9b1a905ccf73cf26d5 wasn't
being respected inside object literals, so quoted property names would
still be stripped out with this option.
This is mostly a corner-case, but useful when the output is passed to
something like the Closure compiler, where quoted property names can be
used to prevent mangling.
| Shrey Banga |
2016-04-19 | Add `passes` compress option. Fix duplicate compress warnings. | kzc |