Age | Commit message (Expand) | Author |
2017-12-02 | fix `dead_code` on `for` (#2552) | Alex Lam S.L |
2017-12-01 | improve `AST_For.init` & `AST_Switch.expression` compression (#2546) | Alex Lam S.L |
2017-12-01 | 2020-06-28 | tests: Do not fail when network interface aliases are present....Fixes <https://bugs.gnu.org/42111>.
* tests/syscalls.scm ("network-interface-names"): Filter interface names with
a colon.
| Marius Bakke |
{foo.bar()}.baz`
- `for (function() { "foo" in bar; };;);`Alex Lam S.L |
2017-05-12 | remove support for `const` (#1910)...As this is not part of ES5. | 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-04-04 | optimise `do{...}while(false)` (#1785)...- better heuristics to avoid issues like #1532
- fix `TreeWalker.loopcontrol_target()`
- `continue` cannot refer to `switch` blocks | Alex Lam S.L |
2017-03-24 | fix corner case in `AST_For.init` (#1652)...Enforce `null` as value for empty initialisation blocks.
fixes #1648 | Alex Lam S.L |
2017-03-19 | make `expect_stdout` work on Node.js 0.12 (#1623)...That particular version of Node.js has messed up error messages, so provide a version-specific workaround.
Also fixed an formatting issue which would cause `expect_stdout` to fail if error message contains excerpts of input.
Apply `expect_stdout` to more applicable tests. | Alex Lam S.L |
2017-03-10 | support multi-line string in tests (#1590)...`expect_exact` sometimes have multiple lines and `\n` are hard to read.
Use array of strings to emulate line breaks and improve readability. | Alex Lam S.L |
2017-03-08 | plan B for IE8 do-while semi-colon fix (#1572)...- omitting trailing semi-colon in do-while breaks non-browser parser, e.g. uglify-js 1.x
- trailing semi-colon only breaks IE8 if followed by `else` or `while`
- always use braces in do-while body to workaround 2nd case with no size loss in compression
fixes #1568 | Alex Lam S.L |
2017-03-06 | suppress semicolons after do/while (#1556)...- unless both `beautify` & `screw-ie8` are enabled
- deprecate workaround for if-do-while-else
fixes #186 | Alex Lam S.L |
2017-03-03 | disable do{...}while(false) optimisation (#1534)...- fails to handle `break` in body
fixes #1532 | Alex Lam S.L |
2017-02-21 | tweak do-while loops...- `do{...}while(false)` => `{...}`
- clean up `AST_While` logic
closes #1452
| alexlamsl |
2016-07-15 | Keep const in own scope while compressing...- Fixes #1205
- Fix provided by @kzc
| Anthony Van de Gejuchte |
2015-12-18 | Disable loop optimization for parse-only tests | Anthony Van de Gejuchte |
2015-12-18 | Add tests | Anthony Van de Gejuchte |
2012-11-08 | optimization for if/break as first statement in a loop body... for(...; x; ...) if (y) break; → for(...; x&&!y; ...);
similarly for `while` and some combinations (i.e. the `break` appears in the
`else` clause, etc.)
| Mihai Bazon |