85af942 | Mihai Bazon | 05 November 2012, 11:09:39 UTC | print final semicolon close #28 | 05 November 2012, 11:09:39 UTC |
8413787 | Mihai Bazon | 02 November 2012, 08:58:45 UTC | use a Dictionary object instead of plain object for hashes to mitigate the `__proto__` issue related to #30 | 02 November 2012, 08:58:45 UTC |
dde5745 | Mihai Bazon | 01 November 2012, 14:55:10 UTC | v2.1.6 | 01 November 2012, 14:55:10 UTC |
cf40980 | Mihai Bazon | 01 November 2012, 13:49:05 UTC | it's safe to negate expression in !EXP only in boolean context #kendo | 01 November 2012, 13:49:05 UTC |
18270dd | Mihai Bazon | 01 November 2012, 13:14:56 UTC | added unsafe_comps for negating `<=` with `>` since it has the potential to break code, let's keep it disabled by default | 01 November 2012, 13:14:56 UTC |
d4c25c5 | Mihai Bazon | 01 November 2012, 11:35:08 UTC | fix compressing UnaryPrefix only try negating the expression if the operator is `!` #kendo | 01 November 2012, 11:35:08 UTC |
5248b79 | Mihai Bazon | 30 October 2012, 12:51:05 UTC | v2.1.5 | 30 October 2012, 12:51:05 UTC |
abe0ebb | Mihai Bazon | 30 October 2012, 12:50:47 UTC | don't move expressions containing the binary `in` operator into the `for` initializer (opera can't parse it) close #25 | 30 October 2012, 12:50:47 UTC |
0852f55 | Mihai Bazon | 25 October 2012, 15:52:49 UTC | v2.1.4 | 25 October 2012, 15:52:49 UTC |
cb3cafa | Mihai Bazon | 25 October 2012, 15:52:35 UTC | cripple scope to make IE happy :-( close #24 | 25 October 2012, 15:52:35 UTC |
202fb93 | Mihai Bazon | 25 October 2012, 07:58:48 UTC | test for fs.existsSync | 25 October 2012, 07:58:48 UTC |
7b87d2e | Mihai Bazon | 24 October 2012, 06:41:40 UTC | v2.1.3 | 24 October 2012, 06:41:40 UTC |
70fd2b1 | Mihai Bazon | 24 October 2012, 06:33:32 UTC | fix for `if (...) return; else return ...;` (it was assumed that the first `return` always contains a value) close #22 | 24 October 2012, 06:33:32 UTC |
30faaf1 | Mihai Bazon | 22 October 2012, 08:49:58 UTC | more sequence optimizations (lift some sequences above binary/unary expressions so that we can avoid parens) | 22 October 2012, 08:58:06 UTC |
41be863 | Mihai Bazon | 22 October 2012, 04:57:28 UTC | v2.1.2 | 22 October 2012, 04:57:28 UTC |
bee01dc | Mihai Bazon | 20 October 2012, 08:14:25 UTC | Merge branch 'master' of github.com:mishoo/UglifyJS2 | 20 October 2012, 08:14:25 UTC |
12f71e0 | Mihai Bazon | 20 October 2012, 08:12:21 UTC | alternate hack to disable deprecation warning ref #9, close #20 | 20 October 2012, 08:12:21 UTC |
3a72dea | Mihai Bazon | 19 October 2012, 11:29:40 UTC | Merge pull request #19 from SevInf/master Allow to specify sourceRoot in minify | 19 October 2012, 11:29:40 UTC |
fc8314e | Mihai Bazon | 19 October 2012, 09:57:29 UTC | minor fix for dropping unused definitions. function f(x, y) { var g = function() { return h() }; var h = function() { return g() }; return x + y; } now compresses to `function f(x, y) { return x + y }` | 19 October 2012, 09:57:29 UTC |
11dffe9 | Sergej Tatarincev | 19 October 2012, 09:35:19 UTC | Add sourceRoot option to minify | 19 October 2012, 09:35:19 UTC |
6f45928 | Mihai Bazon | 18 October 2012, 12:49:15 UTC | add fromString argument to `UglifyJS.minify` (allows to pass the source code, instead of file names, as first argument). close #17 | 18 October 2012, 12:49:15 UTC |
afb7faa | Mihai Bazon | 18 October 2012, 12:14:57 UTC | more optimizations for some break/continue cases | 18 October 2012, 12:14:57 UTC |
6aa56f9 | Mihai Bazon | 18 October 2012, 07:54:30 UTC | v2.1.1 | 18 October 2012, 07:54:30 UTC |
4fe4257 | Mihai Bazon | 18 October 2012, 07:54:10 UTC | fix `--comments` (close #16) | 18 October 2012, 07:54:10 UTC |
a5e75c5 | Mihai Bazon | 17 October 2012, 19:00:11 UTC | v2.1.0 | 17 October 2012, 19:00:11 UTC |
4482fdd | Mihai Bazon | 17 October 2012, 18:59:36 UTC | added note about API docs and online demo | 17 October 2012, 18:59:36 UTC |
253bd85 | Mihai Bazon | 17 October 2012, 18:57:08 UTC | more small optimizations (unlikely to help for hand-written code) | 17 October 2012, 18:57:08 UTC |
6a099fb | Mihai Bazon | 17 October 2012, 13:17:14 UTC | define aborts on AST_If: true if both branches abort | 17 October 2012, 13:17:14 UTC |
a21f3c6 | Mihai Bazon | 17 October 2012, 12:56:45 UTC | employ a better parser for command-line arguments to support passing commas in strings in for example: uglifyjs2 -cd TEST="'a,b'" <<EOF console.log(TEST); EOF → console.log("a,b") close #14 | 17 October 2012, 12:56:45 UTC |
8f66458 | Mihai Bazon | 17 October 2012, 12:24:47 UTC | the `sort` option is broken anyway, removed it we need to mangle names from outermost to innermost scope; mangling names from inner scopes before we got to the outer scope won't work correctly, therefore sorting doesn't make sense. | 17 October 2012, 12:24:47 UTC |
6472f94 | Mihai Bazon | 17 October 2012, 11:51:27 UTC | add `semicolons` option in the code generator (default: `true`) pass `false` to separate statements with newlines instead of semicolons | 17 October 2012, 11:52:08 UTC |
8957b3a | Mihai Bazon | 16 October 2012, 12:54:12 UTC | fix small glitches in source map generation | 16 October 2012, 12:54:12 UTC |
1ffd526 | Mihai Bazon | 13 October 2012, 12:18:11 UTC | disable warnings in the test suite | 13 October 2012, 12:18:11 UTC |
fcc0229 | Mihai Bazon | 13 October 2012, 12:04:44 UTC | drop unused function arguments also add test for "drop_unused" (the last one fails for now) | 13 October 2012, 12:04:44 UTC |
b071c9d | Mihai Bazon | 13 October 2012, 11:32:08 UTC | add parens to AST_Seq whose parent is AST_Unary | 13 October 2012, 11:32:08 UTC |
851b48e | Mihai Bazon | 13 October 2012, 09:56:56 UTC | fix compressing benchmark.js (it tried to evaluate a statement) the following code in benchmark.js triggered the issue: support.decompilation = Function( 'return (' + (function(x) { return { 'x': '' + (1 + x) + '', 'y': 0 }; }) + ')' )()(0).x === '1'; technically that could be resolved into a constant expression, but seems it's being used here for browser bugs detection :-\ | 13 October 2012, 09:57:10 UTC |
708abb1 | Mihai Bazon | 13 October 2012, 09:42:01 UTC | minor | 13 October 2012, 09:42:01 UTC |
370d3e0 | Mihai Bazon | 13 October 2012, 09:24:27 UTC | fix regression from fb5c01c073d06034815d5f3b782fd11cbdf6d6f5 is_digit takes a char code now, not a string | 13 October 2012, 09:24:27 UTC |
b51fe0d | Mihai Bazon | 13 October 2012, 08:37:58 UTC | fix end tokens in spidermonkey ast import | 13 October 2012, 08:37:58 UTC |
70d205c | Mihai Bazon | 12 October 2012, 21:35:24 UTC | update for acorn | 12 October 2012, 21:35:24 UTC |
8149be5 | Mihai Bazon | 12 October 2012, 11:55:54 UTC | minor | 12 October 2012, 11:55:54 UTC |
ba3df64 | Mihai Bazon | 12 October 2012, 08:41:48 UTC | actually enable the option that drops unused names in the test of issue #12 | 12 October 2012, 08:41:48 UTC |
1b6f8d4 | Mihai Bazon | 12 October 2012, 08:07:35 UTC | remove the $self hack operations are destructive anyway, so there's no point to clone the nodes in the transformer. speed++ | 12 October 2012, 08:07:35 UTC |
731fa9c | Mihai Bazon | 12 October 2012, 07:49:48 UTC | add test for issue #12 | 12 October 2012, 07:49:48 UTC |
72cb532 | Mihai Bazon | 12 October 2012, 07:49:41 UTC | fix in_boolean_context() (two tests were broken) | 12 October 2012, 07:49:41 UTC |
fc39553 | Mihai Bazon | 12 October 2012, 07:11:01 UTC | use AST_Lambda for object setters/getters so that the optimization that drops the name if unused doesn't apply. close #12 | 12 October 2012, 07:11:01 UTC |
d9d6731 | Mihai Bazon | 11 October 2012, 12:25:38 UTC | fix pos in syntax error exception | 11 October 2012, 12:25:38 UTC |
fb5c01c | Mihai Bazon | 11 October 2012, 10:00:58 UTC | stealing more hacks from acorn in the name of speed | 11 October 2012, 12:17:42 UTC |
f4584af | Mihai Bazon | 11 October 2012, 08:52:05 UTC | using makeComparator from acorn to generate functions that tests whether a string is keyword, reserved etc. speeds up the parser a bit, though not spectacular.. still far from acorn. | 11 October 2012, 08:52:05 UTC |
172aa7a | Mihai Bazon | 11 October 2012, 08:07:42 UTC | cleanup - use prototype-less objects where feasible (minor speed improvement) - get rid of HOP | 11 October 2012, 08:07:42 UTC |
5053a29 | Mihai Bazon | 11 October 2012, 07:28:48 UTC | fix propagation of symbol references | 11 October 2012, 07:28:48 UTC |
f322b32 | Mihai Bazon | 11 October 2012, 06:30:22 UTC | disable warnings by default in `minify` (pass warnings: true to enable) close #11 | 11 October 2012, 06:31:17 UTC |
9cdaed9 | Mihai Bazon | 10 October 2012, 20:16:40 UTC | fix node name | 10 October 2012, 20:16:40 UTC |
dacce1b | Mihai Bazon | 10 October 2012, 08:37:51 UTC | seems cleaner if AST_Label doesn't inherit from AST_SymbolDeclaration | 10 October 2012, 08:37:51 UTC |
f26f3b4 | Mihai Bazon | 10 October 2012, 08:28:05 UTC | small improvements in wrap_commonjs: - use MAP.splice instead of a BlockStatement to inject code (avoids some warnings in the linter) - use the original symbol in exports, so that we get the proper source mapping | 10 October 2012, 08:28:05 UTC |
c5ecbfc | Mihai Bazon | 10 October 2012, 08:27:06 UTC | drop unused variable | 10 October 2012, 08:27:06 UTC |
3799ac8 | Mihai Bazon | 10 October 2012, 08:26:59 UTC | add `--lint` and display {file} in scope_warnings | 10 October 2012, 08:26:59 UTC |
86182af | Mihai Bazon | 09 October 2012, 19:56:59 UTC | minor | 09 October 2012, 19:56:59 UTC |
4807c6e | Mihai Bazon | 09 October 2012, 16:09:11 UTC | update on @cc_on | 09 October 2012, 16:09:11 UTC |
a84d07e | Mihai Bazon | 09 October 2012, 15:35:53 UTC | add AST_Infinity node | 09 October 2012, 15:35:53 UTC |
88beddf | Mihai Bazon | 09 October 2012, 15:25:00 UTC | make `--comments` keep @cc_on too | 09 October 2012, 15:25:00 UTC |
1b0aab2 | Mihai Bazon | 09 October 2012, 13:25:45 UTC | added $propdoc to AST nodes and some cleanups hopefully we can make the AST documentation self-generating | 09 October 2012, 15:20:39 UTC |
9ead496 | Mihai Bazon | 09 October 2012, 10:52:32 UTC | minor AST cleanup (AST_BlockStatement may inherit from AST_Block) | 09 October 2012, 10:59:17 UTC |
e1862cd | Mihai Bazon | 09 October 2012, 10:21:21 UTC | add `--ast-help` displays a rather cruel description of the AST classes, derived directly from the node definitions. | 09 October 2012, 10:21:21 UTC |
2c025f2 | Mihai Bazon | 09 October 2012, 10:13:55 UTC | fix detecting symbols in use | 09 October 2012, 10:13:55 UTC |
9dfcd47 | Mihai Bazon | 09 October 2012, 10:04:33 UTC | Merge pull request #8 from SevInf/master Fix crash in minify function | 09 October 2012, 10:04:33 UTC |
203ecaf | Sergej Tatarincev | 09 October 2012, 09:52:28 UTC | Fix nodejs minify without inSourceMap exception When inSourceMap is omitted fs.readFile throws exception. Fixed version calls fs.readFile only when inSourceMap argument is present | 09 October 2012, 09:52:28 UTC |
c967f0b | Mihai Bazon | 08 October 2012, 18:22:20 UTC | fix `inSourceMap` in `minify` (should read the file) | 08 October 2012, 18:22:20 UTC |
dfc04e6 | Mihai Bazon | 08 October 2012, 18:15:47 UTC | add simple API wrapper: UglifyJS.minify (refs #7) | 08 October 2012, 18:15:59 UTC |
42ea3c9 | Mihai Bazon | 08 October 2012, 11:30:34 UTC | added some basic API doc | 08 October 2012, 11:30:34 UTC |
d4970b3 | Mihai Bazon | 08 October 2012, 10:37:27 UTC | should not expose base54.sort() in the API docs, I think | 08 October 2012, 10:37:27 UTC |
dd8286b | Mihai Bazon | 08 October 2012, 09:55:18 UTC | added --self to easily get a browser-runnable version of UglifyJS | 08 October 2012, 09:55:18 UTC |
093a903 | Mihai Bazon | 08 October 2012, 09:53:17 UTC | eliminate redundant directives in the same scope | 08 October 2012, 09:53:17 UTC |
80a18fe | Mihai Bazon | 08 October 2012, 09:52:25 UTC | for certain nodes that we invent we might not have a original source file to map from, so just use "?". and in any case, don't fail hard when addMapping throws. | 08 October 2012, 09:52:25 UTC |
fe1411b | Mihai Bazon | 05 October 2012, 20:10:52 UTC | fix typo | 05 October 2012, 20:10:52 UTC |
455ac54 | Mihai Bazon | 05 October 2012, 19:59:05 UTC | remove unused code | 05 October 2012, 19:59:05 UTC |
4a2b912 | Mihai Bazon | 05 October 2012, 17:24:56 UTC | minor | 05 October 2012, 17:24:56 UTC |
a1e0885 | Mihai Bazon | 05 October 2012, 13:51:16 UTC | replace `(function(){ ...no side effects ... })()` with `undefined`. | 05 October 2012, 13:51:16 UTC |
7ae0912 | Mihai Bazon | 05 October 2012, 13:17:31 UTC | prevent mangling only when eval is *called*, not when it's just referenced | 05 October 2012, 13:17:31 UTC |
42c25d9 | Mihai Bazon | 05 October 2012, 12:31:41 UTC | add note about installation | 05 October 2012, 12:31:55 UTC |
e88dcc3 | Mihai Bazon | 05 October 2012, 12:22:12 UTC | added --acorn and --spidermonkey options | 05 October 2012, 12:22:12 UTC |
ecd9f21 | Mihai Bazon | 05 October 2012, 12:05:06 UTC | fixed import of locations from SpiderMonkey AST | 05 October 2012, 12:05:06 UTC |
a9b6f99 | Mihai Bazon | 04 October 2012, 14:28:35 UTC | use the appropriate constructor for symbols | 04 October 2012, 14:28:35 UTC |
708ec04 | Mihai Bazon | 04 October 2012, 14:28:09 UTC | minor | 04 October 2012, 14:28:09 UTC |
682a58a | Mihai Bazon | 04 October 2012, 05:49:18 UTC | removed some unused variables | 04 October 2012, 05:49:18 UTC |
f20c251 | Mihai Bazon | 03 October 2012, 18:39:47 UTC | moving code around | 03 October 2012, 18:39:47 UTC |
2bd8a11 | Mihai Bazon | 03 October 2012, 17:03:17 UTC | define AST_Node.from_mozilla_ast(ast) returns an UglifyJS2 AST given a Mozilla AST. Still needs some work to do (need to create specific nodes like AST_SymbolRef, AST_SymbolLambda etc. instead of base AST_Symbol, in order for the mangler/compressor to work properly) | 03 October 2012, 17:03:17 UTC |
42ce7ed | Mihai Bazon | 03 October 2012, 17:01:32 UTC | ignore tmp/ | 03 October 2012, 17:01:32 UTC |
11863d6 | Mihai Bazon | 03 October 2012, 12:52:01 UTC | more cleanup (dropped AST_SwitchBlock) | 03 October 2012, 12:52:31 UTC |
3412498 | Mihai Bazon | 03 October 2012, 12:41:11 UTC | AST cleanup (dropped AST_StatementBase) | 03 October 2012, 12:41:11 UTC |
9221ad6 | Mihai Bazon | 03 October 2012, 10:19:00 UTC | added package.json | 03 October 2012, 10:38:39 UTC |
c11de17 | Mihai Bazon | 03 October 2012, 10:08:03 UTC | added option for side-effect-free statements, fix test | 03 October 2012, 10:08:03 UTC |
e0f5075 | Mihai Bazon | 03 October 2012, 09:49:47 UTC | fix endless loop in tests | 03 October 2012, 09:49:47 UTC |
bd94eeb | Mihai Bazon | 03 October 2012, 09:49:33 UTC | drop tmp. files | 03 October 2012, 09:49:33 UTC |
7e8880b | Mihai Bazon | 03 October 2012, 09:22:59 UTC | document the CLI tool | 03 October 2012, 09:22:59 UTC |
0678ae2 | Mihai Bazon | 03 October 2012, 08:34:05 UTC | fix for `a = !b && !c && !d && !e → a=!(b||c||d||e)` | 03 October 2012, 08:34:05 UTC |
378ed17 | Mihai Bazon | 03 October 2012, 08:27:05 UTC | disable `hoist_vars` by default and change `comparations` to `comparisons` | 03 October 2012, 08:27:05 UTC |
5c151f9 | Mihai Bazon | 02 October 2012, 18:08:16 UTC | fixed usage string | 02 October 2012, 18:08:16 UTC |
815abcf | Mihai Bazon | 02 October 2012, 13:40:42 UTC | support for `--comments` option to keep comments containing @license or @preserve | 02 October 2012, 13:40:42 UTC |
cb2e811 | Mihai Bazon | 02 October 2012, 13:40:01 UTC | discard annoying nodejs warning | 02 October 2012, 13:40:01 UTC |