Age | Commit message (Expand) | Author |
2021-01-24 | support BigInt literals (#4583) | Alex Lam S.L |
2020-11-08 | support computed property name in object literal (#4268) | Alex Lam S.L |
2020-08-24 | tidy up various interfaces (#4066) | Alex Lam S.L |
2020-08-23 | enhance `mangle.properties` (#4064) | Alex Lam S.L |
2020-05-05 | update links to repository after rename (#3847) | Alex Lam S.L |
2018-07-26 | fix corner case in `ie8` & `rename` (#3223) | Alex Lam S.L |
2018-06-06 | general clean-ups (#3175) | Alex Lam S.L |
2018-04-06 | mangle `Object.defineProperty()` (#3059)...fixes #869 | Alex Lam S.L |
2018-01-05 | fix `mangle` name collision across files (#2722) | Alex Lam S.L |
2017-12-01 | improve code reuse (#2542) | 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-07-15 | reject malformed CLI parameters (#2239)...fixes #2237 | Alex Lam S.L |
2017-06-09 | marshal `mangle[.properties].reserved` from non-Array values (#2072) | 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-12 | convert `AST_Seq` from binary tree to array (#1460)...- rename `AST_Seq` to `AST_Sequence`
- raise default sequences_limit from 200 to 800 | Alex Lam S.L |
2017-04-04 | exclude mangling of special property names (#1779)...- `null`
- `true`
- `false`
- numeric literals | Alex Lam S.L |
2017-04-03 | fix `mangleProperties` on identifiers (#1776)...- fix handling of "-Infinity"
- add test case for "-0"
reverts #1481 | Alex Lam S.L |
2017-04-03 | fix mangleProperties of `undefined` & `Infinity` (#1772)...`NaN` already works by the happy accident of `Number.NaN`
fixes #1770 | Alex Lam S.L |
2017-03-31 | sort options in alphabetical order (#1743)...They started off as functional groups I guess, but given the sheer number of options this is becoming too difficult to read. | Alex Lam S.L |
2017-02-10 | in mangle_names there is a check that the variable name is legal and that it ... | Anat Dagan |
2016-11-29 | Add --mangle-props-debug and fix --mangle-props=unquoted collision...Patch by @AshleyScirra
Based on: PR #1316
Renamed the CLI debug option to --mangle-props-debug
Fixes: #1321 name collision in --mangle-props=unquoted
| Ashley (Scirra) |
2016-08-14 | Fix --mangle-props and --mangle-props=unquoted...Fixes: #1247
Fix --mangle-props and --name-cache inconsistency.
AST_Dot and AST_Sub properties are now mangled by --mangle-props
without regard to being used in an assignment statement.
Note: if --mangle-props is used then *all* javascript files used must
be uglified with the same mangle options.
Fix the ignore_quoted=true mangle option, also known as
`--mangle-props=unquoted`. If a given property is quoted anywhere
it will not be mangled in any quoted or non-quoted context.
| kzc |
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 |
2015-08-05 | Fix mangling of property names which overwrite unmangleable properties...Fixes #747.
| Richard van Velzen |
2015-06-09 | Add --mangle-regex option | Joao Carlos |
2015-05-13 | fix again reserved props | Mihai Bazon |
2015-05-07 | Make reserved names take priority over the name cache | 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-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-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 |