Change the default sequences limit to 200 to speed up compress.
authorkzc <zaxxon2011@gmail.com>
Thu, 30 Jun 2016 18:56:12 +0000 (14:56 -0400)
committerRichard van Velzen <rvanvelzen@experty.com>
Fri, 1 Jul 2016 07:41:31 +0000 (09:41 +0200)
Has little or no impact on minification size in the majority of
cases but can speed up rollup builds significantly.

This sequences change also has the beneficial side effect of avoiding
"stack size exceeded" errors on very large input files.

The user is free to alter the sequences limit if they are so inclined.
The previous sequences limit was 2000. 20 is often sufficient.

README.md
lib/compress.js

index 287c481..ca1c8e4 100644 (file)
--- a/README.md
+++ b/README.md
@@ -294,7 +294,7 @@ to set `true`; it's effectively a shortcut for `foo=true`).
 - `sequences` (default: true) -- join consecutive simple statements using the
   comma operator.  May be set to a positive integer to specify the maximum number
   of consecutive comma sequences that will be generated. If this option is set to
-  `true` then the default sequences limit is `2000`. Set option to `false` or `0`
+  `true` then the default sequences limit is `200`. Set option to `false` or `0`
   to disable. On rare occasions the default sequences limit leads to very slow
   compress times in which case a value of `20` or less is recommended.
 
index 6a534c3..f0f3d09 100644 (file)
@@ -80,7 +80,7 @@ function Compressor(options, false_by_default) {
         passes        : 1,
     }, true);
     var sequences = this.options["sequences"];
-    this.sequences_limit = sequences == 1 ? 2000 : sequences | 0;
+    this.sequences_limit = sequences == 1 ? 200 : sequences | 0;
     this.warnings_produced = {};
 };