diff --git a/src/index.js b/src/index.js index d0c66d4e..98278923 100644 --- a/src/index.js +++ b/src/index.js @@ -3,6 +3,7 @@ Author Tobias Koppers @sokra */ +import crypto from 'crypto'; import { SourceMapConsumer } from 'source-map'; import { SourceMapSource, RawSource, ConcatSource } from 'webpack-sources'; import RequestShortener from 'webpack/lib/RequestShortener'; @@ -160,7 +161,7 @@ class UglifyJsPlugin { 'uglifyjs-webpack-plugin': versions.plugin, 'uglifyjs-webpack-plugin-options': this.options, path: compiler.outputPath ? `${compiler.outputPath}/${file}` : file, - input, + hash: crypto.createHash('md5').update(input).digest('hex'), }); } diff --git a/test/__snapshots__/cache-options.test.js.snap b/test/__snapshots__/cache-options.test.js.snap index 8698182c..5d6b3b5d 100644 --- a/test/__snapshots__/cache-options.test.js.snap +++ b/test/__snapshots__/cache-options.test.js.snap @@ -23,56 +23,56 @@ exports[`cache \`true\`: asset manifest.6afe1bc6685e9ab36c1c.js 1`] = `"!functio exports[`cache \`true\`: cached entry test.js 1`] = ` Array [ "test.js", - "function test(foo) { foo = 1; }", + "46adcef6cf434fbddbc275218b3e093a", ] `; exports[`cache \`true\`: cached entry test.js 2`] = ` Array [ "test.js", - "function test(foo) { foo = 1; }", + "46adcef6cf434fbddbc275218b3e093a", ] `; exports[`cache \`true\`: cached entry test1.js 1`] = ` Array [ "test1.js", - "function test1(foo) { foo = 1; }", + "6b6ccbbe331608e36cded49fd411c373", ] `; exports[`cache \`true\`: cached entry test1.js 2`] = ` Array [ "test1.js", - "function test1(foo) { foo = 1; }", + "6b6ccbbe331608e36cded49fd411c373", ] `; exports[`cache \`true\`: cached entry test2.js 1`] = ` Array [ "test2.js", - "function test2(foo) { foo = 1; }", + "975b72a762ef408dcf46a574fead7e60", ] `; exports[`cache \`true\`: cached entry test2.js 2`] = ` Array [ "test2.js", - "function test2(foo) { foo = 1; }", + "975b72a762ef408dcf46a574fead7e60", ] `; exports[`cache \`true\`: cached entry test3.js 1`] = ` Array [ "test3.js", - "function test3(foo) { foo = 1; }", + "fa894d635dc764c42fb6b1d4e3f6ed2b", ] `; exports[`cache \`true\`: cached entry test3.js 2`] = ` Array [ "test3.js", - "function test3(foo) { foo = 1; }", + "fa894d635dc764c42fb6b1d4e3f6ed2b", ] `; diff --git a/test/cache-options.test.js b/test/cache-options.test.js index c8709354..0b4da69d 100644 --- a/test/cache-options.test.js +++ b/test/cache-options.test.js @@ -243,7 +243,7 @@ describe('when options.cache', () => { // eslint-disable-next-line no-new-func const cacheEntryOptions = new Function(`'use strict'\nreturn ${cacheEntry}`)(); - expect([cacheEntryOptions.path, cacheEntryOptions.input]) + expect([cacheEntryOptions.path, cacheEntryOptions.hash]) .toMatchSnapshot(`cache \`true\`: cached entry ${cacheEntryOptions.path}`); }); @@ -389,7 +389,7 @@ describe('when options.cache', () => { // eslint-disable-next-line no-new-func const cacheEntryOptions = new Function(`'use strict'\nreturn ${cacheEntry}`)(); - expect([cacheEntryOptions.path, cacheEntryOptions.input]) + expect([cacheEntryOptions.path, cacheEntryOptions.hash]) .toMatchSnapshot(`cache \`true\`: cached entry ${cacheEntryOptions.path}`); });