[Pkg-javascript-commits] [uglifyjs] branch master updated (8cb84c6 -> dc66782)
Jonas Smedegaard
dr at jones.dk
Sat Apr 15 14:25:11 UTC 2017
This is an automated email from the git hooks/post-receive script.
js pushed a change to branch master
in repository uglifyjs.
from 8cb84c6 Prepare for release: Update changelog.
new 369b195 Update watch file: Use file format 4. Use Github pattern. Add usage comment.
new 5c7705f remove npm-shrinkwrap.json to work around npm at 4.0.2 bug (#1384)
new 0913db8 Add note about name mangling when using --mangle-props=unquoted (#1314)
new da17766 Add preventive test involving non-ascii function identifiers
new ec2e5fa Have minify() and tests use figure_out_scope() as uglifyjs CLI does
new 4828484 add missing LHS cases which global_defs should avoid
new 0d7d491 augment evaluate to extract within objects (#1425)
new 0610c02 optimise binary operands with evaluate() (#1427)
new 1eaa211 fix mangling collision with keep_fnames (#1431)
new 7f8d72d update test (#1441)
new 81f1df1 in mangle_names there is a check that the variable name is legal and that it is not a reserved word. This should apply to propsmangle as well.
new eb55d8a Merge pull request #1481 from anatdagan/propsmangle_only_identifiers
new dd31d12 Improve optimizing `function() { if(c){return foo} bar();}`
new 11676f9 fix crash in unsafe replacement of undefined remove extraneous call to AST_SymbolRef.reference()
new 686a496 remove unused AST_Scope.nesting & AST_SymbolRef.frame they are computed but never used
new fa668a2 fix corner case in keep_fnames happens when inner function: - just below top level - not referenced - `unused` is disabled
new e5badb9 enable typeof "undefined" for general use move out of unsafe, guard corner case with screw_id8 instead
new d11dca3 fix stray else in compress with conditionals=false
new 148047f drop unused: toplevel, assign-only - assign statement does not count towards variable usage by default - only works with assignments on the same scope level as declaration - can be disabled with `unused` set to "keep_assign" - `toplevel` to drop unused top-level variables and/or functions - `top_retain` to whitelist top-level exceptions
new 100307a fixes & improvements to [].join()
new ae4db00 tweak do-while loops - `do{...}while(false)` => `{...}` - clean up `AST_While` logic
new f584ca8 `-c sequences=N` suboptimal at N expression cutoff
new 6b3c49e improve string concatenation shuffle associative operations to minimise parentheses and aid other uglification efforts
new f0ff618 clean up `negate_iife` - remove extra tree scanning phase for `negate_iife` - `negate_iife` now only deals with the narrowest form, i.e. IIFE sitting directly under `AST_SimpleStatement` - `booleans`, `conditionals` etc. will now take care the rest via more accurate accounting - `a(); void b();` => `a(); b();`
new 6ffbecb smarter const replacement taking name length into account
new c525a2b fix duplicated test names
new b8b133d improve keep_fargs & keep_fnames - utilise in_use_ids instead of unreferenced() - drop_unused now up-to-date for subsequent passes
new a0f4fd3 improve reduce_vars and fix a bug - update modified flag between compress() passes - support IIFE arguments - fix corner case with multiple definitions
new 974247c evaluate AST_SymbolRef as parameter fix invalid boolean conversion now exposed in `make_node_from_constant()`
new e275148 enhance `global_defs` - support arrays, objects & AST_Node - support `"a.b":1` on both cli & API - emit warning if variable is modified - override top-level variables
new 7e6331b add benchmark & JetStream tests - `test/benchmark.js` measures performance - `test/jetstream.js` verifies correctness - configurable mangle/compress/output options
new 09f9ae2 improve `--beautify bracketize` reduce whitespaces from if-else statements
new c06a50f Add .gitattributes to checkout lf eol style
new ac0b61e remove extraneous spaces between ++/+/--/-
new ec64acd introduce `unsafe_proto` - `Array.prototype.slice` => `[].slice`
new 8898b8a clean up `max_line_len` - never exceed specified limit - otherwise warning is shown - enabled only for final output
new 26fbeec fix `pure_funcs` & improve `side_effects` - only drops side-effect-free arguments - drop side-effect-free parts with discarded value from `AST_Seq` & `AST_SimpleStatement`
new d48a308 Fix: AST_Accessor missing start / end tokens
new 1e51586 Support marking a call as pure
new 4e49302 enable `collapse_vars` & `reduce_vars` by default - fix corner cases in `const` optimisation - deprecate `/*@const*/`
new 229e42c Merge pull request #1485 from alexlamsl/merge-2.8.0
new 852f784 Avoid using exports when undefined (#1471)
new cf0951f allow --in-source-map inline (#1490)
new 834f9f3 update docs for `pure_funcs` & `drop_console` (#1503)
new 16cd5d5 consolidate `evaluate` & `reduce_vars` (#1505)
new 13be50a faster tree transversal (#1462)
new b1c593a add harmony branch details in README (#1507)
new 872270b improve error messages (#1506)
new 0b0296e v2.8.0
new 858e6c7 warn & drop `#__PURE__` iff IIFE is dropped (#1511)
new 4365a51 temporarily disables `reduce_vars` (#1517)
new 320984c v2.8.1
new b34fa11 fix `evaluate` on object getter & setter (#1515)
new f5cbe19 invert `reduce_vars` tracking flag (#1519)
new fb2b6c7 v2.8.2
new c2334ba fix crash on missing `props` to `string_template()` (#1523)
new bff7ad6 v2.8.3
new 7aa6911 fix corner cases in `reduce_vars` (#1524)
new 40ceddb v2.8.4
new fdc9b94 minor improvement to string optimisation (#1514)
new 9699ffb trim unused invocation parameters (#1526)
new ee3b39b optimize trivial IIFEs returning constants (#1530)
new b49e142 disable do{...}while(false) optimisation (#1534)
new fe9227a fix reference marking in for-in loops (#1535)
new 70d72ad properly cover all cases of for-in loop variables (#1536)
new 4d63d4f collapse_vars should not replace constant in for-in init section (#1538)
new 17b8135 fix chained assignment with `unused` (#1540)
new e5cb927 v2.8.5
new b5e0e8c facilitate fix for #1531 (#1542)
new 18059cc compress numerical expressions (#1513)
new 07accd2 process code with implicit return statement (#1522)
new ce54c9c disallow collapse_vars constant replacement in for-in statements (#1543)
new ea9ab9f resolve issue with outdated version of async (#1549)
new 78d1bb9 fix a corner case in #1530 (#1552)
new eb98a7f fix handling of shebang and preamble (#1545)
new 1f0333e stay safe with constants in IE8- (#1547)
new b33e7f8 improve `unsafe` on undefined (#1548)
new b70591b handle variable declaration within catch blocks (#1546)
new 35a849d collapse assignment with adjacent subsequent usage (#1553)
new 33b5f31 v2.8.6
new 067e5a5 fixup for #1553 (#1555)
new a5d62a3 v2.8.7
new a9fc9dd suppress semicolons after do/while (#1556)
new 3ac2421 collapse_vars: do not replace a constant in loop condition or init (#1562)
new d787d70 avoid substitution of global variables (#1557)
new 8153b7b transform function calls to IIFEs (#1560)
new 8a8a94a fix deep cloning of labels (#1565)
new 65c848c include benchmark.js in test suite (#1564)
new 144052c v2.8.8
new bd6dee5 fix return from recursive IIFE (#1570)
new dedbeef plan B for IE8 do-while semi-colon fix (#1572)
new 3ee5574 only run benchmark & jetstream on CI (#1571)
new c7cdcf0 fix function name eliminiation (#1576)
new 344d11d v2.8.9
new 711f88d scan assignment value in drop_unused() (#1578)
new 80e8176 explain how to make a proper bug report (#1579)
new aa80ee3 remove checkboxes from Issues template
new 7e465d4 scan RHS of dropped assignments (#1581)
new e9920f7 v2.8.10
new b633706 fix & improve function argument compression (#1584)
new 93cdb19 Correctly raise a parse exception with a missing loop body (#1585)
new 9e6b128 fix catch variable reference in IE8 (#1587)
new 8354758 v2.8.11
new cf45e2f fixup for #1585 (#1589)
new be80f7e support multi-line string in tests (#1590)
new d9344f3 disallow parameter substitution for named IIFEs (#1596)
new e3a3db7 temporary fix for boolean bug (#1597)
new 919d5e3 v2.8.12
new 381bd38 minor clean-ups (#1600)
new 8223b2e fix `AST_Node.optimize()` (#1602)
new cf4bf4c fix stack issues with `AST_Node.evaluate()` (#1603)
new a80b228 fix `hoist_vars` on `reduce_vars` (#1607)
new 5ae04b3 make `collapse_vars` consistent with `toplevel` (#1608)
new 3563d8c extend `test/run-tests.js` to optionally execute uglified output (#1604)
new ac40301 fix chained evaluation (#1610)
new b2b8a0d v2.8.13
new b7c112e Add `--in-source-map inline` documentation (#1611)
new fb09283 fix top-level directives in compress tests (#1615)
new 0489d6d handle runtime errors in `expect_stdout` (#1618)
new 274331d transform String.charAt() to index access (#1620)
new cd58635 fix AST_Binary.lift_sequences() (#1621)
new 96f8bef fix commit 88fb83a (#1622)
new a3cc3a9 make `expect_stdout` work on Node.js 0.12 (#1623)
new 30a7504 v2.8.14
new 4bceb85 throw parse error on invalid assignments (#1627)
new ee95c1b metadata cleanup (#1630)
new a00040d fix a bug in simple_glob (#1632)
new c0f3fea introduce compressor.info() (#1633)
new 48ffbef account for cross-scope modifications in `collapse_vars` (#1634)
new 6b2f347 v2.8.15
new e918748 improve collapsible value detection (#1638)
new 79334dd fix regression: CLI options with hyphens like -b ascii-only (#1640)
new 7010356 fix expect_stdout (#1642)
new 2e0dc97 improve error marker placement (#1644)
new f3a1694 fix assignment substitution in sequences (#1643)
new 0432a7a fix assignment extraction from conditional (#1651)
new ac51d4c fix corner case in `AST_For.init` (#1652)
new 32283a0 fix cascade of `evaluate` optimisation (#1654)
new b454ce6 Update ISSUE_TEMPLATE.md
new b1abe92 introduce ufuzz.js (#1655)
new a30092e fix invalid `AST_For.init` (#1657)
new 491f16c v2.8.16
new 8ca2401 fix `dead_code` on `AST_Switch` (#1667)
new 6e86ee9 fix typeof side-effects (#1669)
new 0a65de8 fix `reduce_vars` on `AST_Switch` (#1671)
new b19aa58 fix `has_side_effects()` (#1675)
new f83d370 improve switch optimisations (#1677)
new adb0e88 Improve fuzzer. :) (#1665)
new 8a4f865 fix side-effects detection on switch statements (#1678)
new 94f8472 suppress switch branch de-duplication upon side effects (#1682)
new 5509e51 optimize conditional when condition symbol matches consequent (#1684)
new 3276740 fallthrough should not execute case expression (#1683)
new e76fb35 fix `cascade` on `delete` operator (#1687)
new 00996af ufuzz: workaround function name and toString() (#1688)
new 861a79a fix `delete` related issues in `collapse_vars` and `reduce_vars` (#1689)
new 57ce5bd handle overlapped variable definitions (#1691)
new f001e4c fix `cascade` on anonymous function reference (#1693)
new f595293 preserve side effects in switch expression (#1694)
new 581630e fix typeof side effects (#1696)
new c526da5 `has_side_effects()` should take `AST_Switch.expression` into account (#1699)
new aa3f647 ufuzz: workaround for Function.toString() v2 (#1700)
new 984a217 fix mangle for variable declared within catch block (#1706)
new 67d0237 fix tail trimming of switch blocks (#1707)
new 65da9ac handle var within catch of the same name (#1711)
new fb177a6 drop anonymous function name when overshadowed by other declarations (#1712)
new f71f490 fix `is_number()` on `+=` (#1714)
new c909ffb fix `unused` on var of the same name within catch (#1716)
new 6ab3224 v2.8.17
new eb48a03 fix corner case in `unused` (#1718)
new ec7f37f remove UGLIFY_DEBUG (#1720)
new ae740b9 v2.8.18
new fef0bf9 improve beautified output of switch blocks (#1721)
new 09f77c7 output optimal representations of NaN & Infinity (#1723)
new 2e41cd6 fix missing parentheses around NaN/Infinity shorthands (#1726)
new f1a833a speed up `equivalent_to()` and `AST_Switch` (#1727)
new beb9659 speed up IIFE elimination (#1728)
new 0f910ee improve tests from #1726 (#1729)
new 7bea38a optimize try-catch-finally (#1731)
new 7cb1adf remove paranthesis for `-(x*y)` (#1732)
new c595b84 fix catch symbol mangling (#1734)
new a84564d v2.8.19
new 11e9bdc fix missing preamble when shebang is absent (#1742)
new f8a71b5 v2.8.20
new a0c3836 sort options in alphabetical order (#1743)
new e6b76a4 Massive extension of the fuzzer (#1697)
new 1ddc057 combine rules for binary boolean operations (#1744)
new 257ddc3 improve compression of undefined, NaN & Infinitiy (#1748)
new c934fc8 implement `test/sandbox.js` (#1749)
new 87f6e1b minor tweaks to fuzzer (#1751)
new ee3fe0f fix switch branch elimination (#1752)
new 9a31170 fuzz regexp literals, more constant numbers, typeof expression (#1755)
new 28ecea5 upgrade fuzzer (#1754)
new 4a55bb0 minor tweaks to `test/ufuzz.js` (#1756)
new c076e7b speed up fuzzer code generation (#1757)
new f7ca4f2 fix corner cases in switch and undefined (#1762)
new d575276 avoid confusion of `NaN` & `Infinity` with `catch` symbol of the same name (#1763)
new 9469c03 fix corner case in `switch` (#1765)
new b7f6b73 v2.8.21
new 1f1fccc extend `test/ufuzz.js` (#1769)
new 59a4e56 fix mangleProperties of `undefined` & `Infinity` (#1772)
new a400741 workaround Node.js bugs (#1775)
new 48b3fe9 fix `mangleProperties` on identifiers (#1776)
new 951770f exclude mangling of special property names (#1779)
new 4b90dc1 remove `--mangle-props` from fuzzing (#1777)
new 9b6bc67 optimise `do{...}while(false)` (#1785)
new ff289b9 implement delayed resolution for `reduce_vars` (#1788)
new 06cdb74 improve `pure_getters` (#1786)
new e869779 enable `inline_script` by default (#1793)
new cc6aa3e fix incorrect context in variable substitution (#1791)
new 281e882 fix `reduce_vars` on catch variable (#1794)
new 0f4cd73 introduce "strict" to `pure_getters` (#1795)
new e3c9c22 fix corner cases with `delete` (#1796)
new c2a1bce fix `pure_getters` for chained property access (#1798)
new a1532eb extend ufuzz generator (#1783)
new cf72fe5 fix `delete` corner cases (#1799)
new 0479ff0 fix a couple of bugs in `global_defs` (#1802)
new 9a97884 enhance `test/ufuzz.js` (#1803)
new d6fbc36 fix LHS cases for NaN & friends (#1804)
new 04b8964 v2.8.22
new b0c4159 New upstream version 2.8.22
new d383327 Merge tag 'upstream/2.8.22'
new cdbb066 Unfuzz patches.
new b3714cc Modernize cdbs: Do copyright-check in maintainer script (not during build).
new 947dd41 Modernize cdbs: Drop upstream-tarball hints: Use gbp import-orig --uscan.
new 5e3ae55 Update copyright info: Extend copyright of packaging to cover recent years.
new 1f7313c Stop (build-)depend on node-async.
new e99a3bc Build-depend on and suggest node-acorn.
new dc66782 Prepare for release: Update changelog, control file and copyright hints.
The 228 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.
Summary of changes:
.gitattributes | 1 +
.github/ISSUE_TEMPLATE.md | 9 +
.travis.yml | 4 +-
README.md | 110 +-
bin/uglifyjs | 122 +-
debian/changelog | 23 +
debian/control | 4 +-
debian/copyright | 2 +-
debian/copyright-check | 24 +
debian/copyright_hints | 82 +-
debian/patches/1001_break_dep_loop.patch | 33 +-
debian/patches/1002_avoid_timeout_in_tests.patch | 10 -
debian/patches/2002_node_conflict.patch | 4 +-
debian/rules | 16 +-
debian/watch | 7 +-
lib/ast.js | 96 +-
lib/compress.js | 2502 +++++++++++++++-------
lib/output.js | 220 +-
lib/parse.js | 103 +-
lib/propmangle.js | 24 +-
lib/scope.js | 159 +-
lib/utils.js | 48 +-
npm-shrinkwrap.json | 128 --
package.json | 8 +-
test/benchmark.js | 80 +
test/compress/arrays.js | 103 +
test/compress/collapse_vars.js | 407 +++-
test/compress/concat-strings.js | 197 ++
test/compress/conditionals.js | 439 ++--
test/compress/const.js | 166 ++
test/compress/dead-code.js | 464 ++--
test/compress/drop-console.js | 48 +-
test/compress/drop-unused.js | 852 ++++++++
test/compress/evaluate.js | 960 ++++++++-
test/compress/functions.js | 95 +
test/compress/global_defs.js | 162 ++
test/compress/hoist_vars.js | 90 +
test/compress/html_comments.js | 16 -
test/compress/if_return.js | 101 +-
test/compress/issue-1034.js | 7 +-
test/compress/issue-1041.js | 6 +-
test/compress/issue-105.js | 25 -
test/compress/issue-1105.js | 75 +-
test/compress/issue-1202.js | 1 -
test/compress/issue-1261.js | 176 ++
test/compress/issue-1275.js | 3 +-
test/compress/issue-1321.js | 3 +
test/compress/issue-1431.js | 151 ++
test/compress/issue-1443.js | 61 +
test/compress/issue-1446.js | 71 +
test/compress/issue-1447.js | 46 +
test/compress/issue-1569.js | 19 +
test/compress/issue-1588.js | 99 +
test/compress/issue-1609.js | 55 +
test/compress/issue-1639.js | 88 +
test/compress/issue-1656.js | 45 +
test/compress/issue-1673.js | 161 ++
test/compress/issue-1704.js | 347 +++
test/compress/issue-1733.js | 97 +
test/compress/issue-1750.js | 54 +
test/compress/issue-1770.js | 239 +++
test/compress/issue-1787.js | 19 +
test/compress/issue-208.js | 71 +-
test/compress/issue-368.js | 55 +
test/compress/issue-597.js | 134 +-
test/compress/issue-640.js | 320 +++
test/compress/issue-892.js | 1 +
test/compress/issue-973.js | 1 +
test/compress/issue-976.js | 1 +
test/compress/issue-979.js | 2 +-
test/compress/labels.js | 3 +
test/compress/loops.js | 293 +++
test/compress/max_line_len.js | 39 +
test/compress/negate-iife.js | 258 ++-
test/compress/numbers.js | 185 ++
test/compress/properties.js | 67 +-
test/compress/pure_funcs.js | 295 +++
test/compress/pure_getters.js | 121 ++
test/compress/reduce_vars.js | 1862 +++++++++++++++-
test/compress/screw-ie8.js | 141 +-
test/compress/sequences.js | 447 +++-
test/compress/switch.js | 582 ++++-
test/compress/transform.js | 130 ++
test/compress/typeof.js | 17 +-
test/input/global_defs/nested.js | 1 +
test/input/global_defs/simple.js | 1 +
test/input/invalid/assign_1.js | 1 +
test/input/invalid/assign_2.js | 1 +
test/input/invalid/assign_3.js | 1 +
test/input/invalid/eof.js | 1 +
test/input/invalid/loop-no-body.js | 1 +
test/input/invalid/simple.js | 1 +
test/input/invalid/tab.js | 1 +
test/input/issue-1431/sample.js | 14 +
test/input/issue-1482/bracketize.js | 73 +
test/input/issue-1482/default.js | 17 +
test/input/issue-1482/input.js | 12 +
test/input/issue-1632/^{foo}[bar](baz)+$.js | 1 +
test/input/issue-520/input.js | 3 +
test/input/issue-520/output.js | 2 +
test/jetstream.js | 87 +
test/mocha/accessorTokens-1492.js | 32 +
test/mocha/cli.js | 240 ++-
test/mocha/comment-filter.js | 16 +
test/mocha/comment.js | 4 +-
test/mocha/comment_before_constant.js | 6 +-
test/mocha/directives.js | 15 +-
test/mocha/getter-setter.js | 2 +-
test/mocha/glob.js | 46 +-
test/mocha/line-endings.js | 2 +-
test/mocha/minify.js | 97 +
test/mocha/number-literal.js | 2 +-
test/mocha/operator.js | 489 +++++
test/mocha/release.js | 54 +
test/mocha/string-literal.js | 4 +-
test/mocha/with.js | 2 +-
test/mozilla-ast.js | 4 +-
test/run-tests.js | 135 +-
test/sandbox.js | 54 +
test/ufuzz.js | 921 ++++++++
test/ufuzz.json | 40 +
tools/exports.js | 4 -
tools/node.js | 120 +-
123 files changed, 15364 insertions(+), 1935 deletions(-)
create mode 100644 .gitattributes
create mode 100644 .github/ISSUE_TEMPLATE.md
create mode 100755 debian/copyright-check
delete mode 100644 npm-shrinkwrap.json
create mode 100644 test/benchmark.js
create mode 100644 test/compress/const.js
create mode 100644 test/compress/functions.js
create mode 100644 test/compress/global_defs.js
create mode 100644 test/compress/hoist_vars.js
delete mode 100644 test/compress/issue-105.js
create mode 100644 test/compress/issue-1261.js
create mode 100644 test/compress/issue-1431.js
create mode 100644 test/compress/issue-1443.js
create mode 100644 test/compress/issue-1446.js
create mode 100644 test/compress/issue-1447.js
create mode 100644 test/compress/issue-1569.js
create mode 100644 test/compress/issue-1588.js
create mode 100644 test/compress/issue-1609.js
create mode 100644 test/compress/issue-1639.js
create mode 100644 test/compress/issue-1656.js
create mode 100644 test/compress/issue-1673.js
create mode 100644 test/compress/issue-1704.js
create mode 100644 test/compress/issue-1733.js
create mode 100644 test/compress/issue-1750.js
create mode 100644 test/compress/issue-1770.js
create mode 100644 test/compress/issue-1787.js
create mode 100644 test/compress/issue-368.js
create mode 100644 test/compress/issue-640.js
create mode 100644 test/compress/max_line_len.js
create mode 100644 test/compress/pure_funcs.js
create mode 100644 test/compress/pure_getters.js
create mode 100644 test/compress/transform.js
create mode 100644 test/input/global_defs/nested.js
create mode 100644 test/input/global_defs/simple.js
create mode 100644 test/input/invalid/assign_1.js
create mode 100644 test/input/invalid/assign_2.js
create mode 100644 test/input/invalid/assign_3.js
create mode 100644 test/input/invalid/eof.js
create mode 100644 test/input/invalid/loop-no-body.js
create mode 100644 test/input/invalid/simple.js
create mode 100644 test/input/invalid/tab.js
create mode 100644 test/input/issue-1431/sample.js
create mode 100644 test/input/issue-1482/bracketize.js
create mode 100644 test/input/issue-1482/default.js
create mode 100644 test/input/issue-1482/input.js
create mode 100644 test/input/issue-1632/^{foo}[bar](baz)+$.js
create mode 100644 test/input/issue-520/input.js
create mode 100644 test/input/issue-520/output.js
create mode 100644 test/jetstream.js
create mode 100644 test/mocha/accessorTokens-1492.js
create mode 100644 test/mocha/operator.js
create mode 100644 test/mocha/release.js
create mode 100644 test/sandbox.js
create mode 100644 test/ufuzz.js
create mode 100644 test/ufuzz.json
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/uglifyjs.git
More information about the Pkg-javascript-commits
mailing list