chenzhutian / hexo-all-minifier

A plugin for Hexo that optimizes HTML, CSS, JS and imagages, and it can optionally deploys your blog.
MIT License
277 stars 30 forks source link

Error when minify js: Can't read property 'length' of undefined in optimizeJS #28

Closed qzhou1607-zz closed 7 years ago

qzhou1607-zz commented 7 years ago

After update to the latest version (v0.2.2), the js minifier stops working.

The result returned from UglifyJS.minify doesn't have property code, which caused this error when trying to get length and calculate the percentage. Below is the actual content of result. It looks like fromString is not an option in uglify-es, and comment out that setting fixed the error.

{ error:
   { DefaultsError: `fromString` is not a supported option
       at DefaultsError.get (eval at <anonymous> (C:\github\Sonar-Website\node_modules\hexo-all-minifier\node_modules\uglify-es\to
ols\node.js:21:1), <anonymous>:79:23)
       at formatError (util.js:628:15)
       at formatValue (util.js:532:18)
       at formatProperty (util.js:786:15)
       at util.js:634:12
       at Array.map (native)
       at formatObject (util.js:633:15)
       at formatValue (util.js:573:16)
       at inspect (util.js:188:10)
       at exports.format (util.js:128:20)
       at Console.log (console.js:106:24)
       at Hexo.OptimizeJS (C:\github\Sonar-Website\node_modules\hexo-all-minifier\lib\optimizeJS.js:27:11)
       at Hexo.tryCatcher (C:\github\Sonar-Website\node_modules\bluebird\js\release\util.js:16:23)
       at Hexo.<anonymous> (C:\github\Sonar-Website\node_modules\bluebird\js\release\method.js:15:34)
       at C:\github\Sonar-Website\node_modules\hexo\lib\extend\filter.js:68:35
       at tryCatcher (C:\github\Sonar-Website\node_modules\bluebird\js\release\util.js:16:23)
     message: '`fromString` is not a supported option',
     defs:
      { compress: {},
        ecma: undefined,
        ie8: false,
        keep_fnames: false,
        mangle: {},
        nameCache: null,
        output: {},
        parse: {},
        sourceMap: false,
        timings: false,
        toplevel: false,
        warnings: false,
        wrap: false } } }
chenzhutian commented 7 years ago

thanks~ Fix https://github.com/chenzhutian/hexo-all-minifier/commit/c13a47d3895f3031e9473cbfc8bc408aded9df4c

rosuH commented 7 years ago

Same question in v2.2.3.

ERROR Asset render failed: js/lazyload.min.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)
ERROR Asset render failed: js/nprogress.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)
ERROR Asset render failed: js/mathjax.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)
ERROR Asset render failed: js/queue.min.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)
ERROR Asset render failed: js/ie-blocker.en.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)
ERROR Asset render failed: js/smoothscroll.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)
ERROR Asset render failed: js/queue.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)
ERROR Asset render failed: js/lsloader.min.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)
ERROR Asset render failed: js/ie-blocker.zhCN.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)
ERROR Asset render failed: js/lsloader.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)
ERROR Asset render failed: js/jquery.min.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)
ERROR Asset render failed: js/js.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)
ERROR Asset render failed: js/js.min.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)
ERROR Asset render failed: js/gallery/gallery.js
TypeError: Cannot read property 'length' of undefined
    at Hexo.OptimizeJS (/mnt/d/Documents/Blog/node_modules/hexo-all-minifier/lib/optimizeJS.js:27:41)
    at Hexo.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/d/Documents/Blog/node_modules/hexo/lib/extend/filter.js:68:35
    at tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:155:18)
    at Object.gotAccum (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/reduce.js:144:25)
    at Object.tryCatcher (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromiseCtx (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/promise.js:606:10)
    at Async._drainQueue (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:138:12)
    at Async._drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/mnt/d/Documents/Blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:800:20)
    at tryOnImmediate (timers.js:762:5)
    at processImmediate [as _immediateCallback] (timers.js:733:5)

I tried hexo-filter-cleanup and it works fine.

chenzhutian commented 7 years ago

Can you provide a minimal repo to reproduce the bug? Because it works fine on my site.. Currently, I will add some exception handler.