From f5b0bc36231c6511401784531809a0fcbb52dae6 Mon Sep 17 00:00:00 2001 From: Lukas Taegert-Atkinson Date: Fri, 15 Feb 2019 12:23:14 +0100 Subject: [PATCH] Consider actually exported names in hash, resolve #2692 --- src/Chunk.ts | 1 + ...k-main2-36fde4aa-amd.js => chunk-main2-dda51113-amd.js} | 0 .../_expected/amd/entry-main1-a0f4fde5-amd.js | 2 +- .../_expected/amd/entry-main2-236b789c-amd.js | 7 ------- .../_expected/amd/entry-main2-5396b748-amd.js | 7 +++++++ ...k-main2-72ffade3-cjs.js => chunk-main2-9301b27d-cjs.js} | 0 .../_expected/cjs/entry-main1-3cd10506-cjs.js | 2 +- .../_expected/cjs/entry-main2-64fa0b57-cjs.js | 7 ------- .../_expected/cjs/entry-main2-fd8c1a13-cjs.js | 7 +++++++ ...k-main2-33a8eba2-esm.js => chunk-main2-bee79135-esm.js} | 0 .../_expected/es/entry-main1-5a1ab158-esm.js | 2 +- .../_expected/es/entry-main2-2f78d4f8-esm.js | 1 + .../_expected/es/entry-main2-52329ca1-esm.js | 1 - ...2-bd8b7ffb-system.js => chunk-main2-441b49d2-system.js} | 0 .../_expected/system/entry-main1-2422e801-system.js | 2 +- ...2-45e98bef-system.js => entry-main2-2ad41703-system.js} | 2 +- .../_expected/amd/{5654511d.js => 00e68f7b.js} | 0 .../_expected/cjs/{69b0b1f3.js => 0d12e680.js} | 0 .../_expected/es/{21d179d7.js => 1249effd.js} | 0 .../_expected/system/{8714c598.js => 5845a025.js} | 0 test/file-hashes/samples/respects-exports/_config.js | 1 - test/misc/bundle-information.js | 2 +- 22 files changed, 22 insertions(+), 22 deletions(-) rename test/chunking-form/samples/filenames-patterns/_expected/amd/{chunk-main2-36fde4aa-amd.js => chunk-main2-dda51113-amd.js} (100%) delete mode 100644 test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-236b789c-amd.js create mode 100644 test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-5396b748-amd.js rename test/chunking-form/samples/filenames-patterns/_expected/cjs/{chunk-main2-72ffade3-cjs.js => chunk-main2-9301b27d-cjs.js} (100%) delete mode 100644 test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-64fa0b57-cjs.js create mode 100644 test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-fd8c1a13-cjs.js rename test/chunking-form/samples/filenames-patterns/_expected/es/{chunk-main2-33a8eba2-esm.js => chunk-main2-bee79135-esm.js} (100%) create mode 100644 test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-2f78d4f8-esm.js delete mode 100644 test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-52329ca1-esm.js rename test/chunking-form/samples/filenames-patterns/_expected/system/{chunk-main2-bd8b7ffb-system.js => chunk-main2-441b49d2-system.js} (100%) rename test/chunking-form/samples/filenames-patterns/_expected/system/{entry-main2-45e98bef-system.js => entry-main2-2ad41703-system.js} (70%) rename test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/amd/{5654511d.js => 00e68f7b.js} (100%) rename test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/cjs/{69b0b1f3.js => 0d12e680.js} (100%) rename test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/es/{21d179d7.js => 1249effd.js} (100%) rename test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/system/{8714c598.js => 5845a025.js} (100%) diff --git a/src/Chunk.ts b/src/Chunk.ts index b8576a19efb..af5b4f7f047 100644 --- a/src/Chunk.ts +++ b/src/Chunk.ts @@ -707,6 +707,7 @@ export default class Chunk { hash.update(addons.hash); hash.update(options.format); + hash.update(Object.keys(this.exportNames).join(',')); this.visitDependencies(dep => { if (dep instanceof ExternalModule) hash.update(':' + dep.renderPath); else hash.update(dep.getRenderedHash()); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/chunk-main2-36fde4aa-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/chunk-main2-dda51113-amd.js similarity index 100% rename from test/chunking-form/samples/filenames-patterns/_expected/amd/chunk-main2-36fde4aa-amd.js rename to test/chunking-form/samples/filenames-patterns/_expected/amd/chunk-main2-dda51113-amd.js diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-a0f4fde5-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-a0f4fde5-amd.js index ce58304359c..49064a5c726 100644 --- a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-a0f4fde5-amd.js +++ b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-a0f4fde5-amd.js @@ -1,4 +1,4 @@ -define(['./chunk-main2-36fde4aa-amd.js'], function (main2) { 'use strict'; +define(['./chunk-main2-dda51113-amd.js'], function (main2) { 'use strict'; main2.log(main2.dep); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-236b789c-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-236b789c-amd.js deleted file mode 100644 index 5f7899d1287..00000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-236b789c-amd.js +++ /dev/null @@ -1,7 +0,0 @@ -define(['./chunk-main2-36fde4aa-amd.js'], function (main2) { 'use strict'; - - - - return main2.log; - -}); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-5396b748-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-5396b748-amd.js new file mode 100644 index 00000000000..646ec109059 --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-5396b748-amd.js @@ -0,0 +1,7 @@ +define(['./chunk-main2-dda51113-amd.js'], function (main2) { 'use strict'; + + + + return main2.log; + +}); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/chunk-main2-72ffade3-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/chunk-main2-9301b27d-cjs.js similarity index 100% rename from test/chunking-form/samples/filenames-patterns/_expected/cjs/chunk-main2-72ffade3-cjs.js rename to test/chunking-form/samples/filenames-patterns/_expected/cjs/chunk-main2-9301b27d-cjs.js diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-3cd10506-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-3cd10506-cjs.js index f51d2315f4b..b4e293492ac 100644 --- a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-3cd10506-cjs.js +++ b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-3cd10506-cjs.js @@ -1,5 +1,5 @@ 'use strict'; -var main2 = require('./chunk-main2-72ffade3-cjs.js'); +var main2 = require('./chunk-main2-9301b27d-cjs.js'); main2.log(main2.dep); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-64fa0b57-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-64fa0b57-cjs.js deleted file mode 100644 index 9376d5e8485..00000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-64fa0b57-cjs.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; - -var main2 = require('./chunk-main2-72ffade3-cjs.js'); - - - -module.exports = main2.log; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-fd8c1a13-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-fd8c1a13-cjs.js new file mode 100644 index 00000000000..15201047222 --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-fd8c1a13-cjs.js @@ -0,0 +1,7 @@ +'use strict'; + +var main2 = require('./chunk-main2-9301b27d-cjs.js'); + + + +module.exports = main2.log; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/chunk-main2-33a8eba2-esm.js b/test/chunking-form/samples/filenames-patterns/_expected/es/chunk-main2-bee79135-esm.js similarity index 100% rename from test/chunking-form/samples/filenames-patterns/_expected/es/chunk-main2-33a8eba2-esm.js rename to test/chunking-form/samples/filenames-patterns/_expected/es/chunk-main2-bee79135-esm.js diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-5a1ab158-esm.js b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-5a1ab158-esm.js index 8b69b0c617d..6663901d931 100644 --- a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-5a1ab158-esm.js +++ b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-5a1ab158-esm.js @@ -1,3 +1,3 @@ -import { a as log, b as dep } from './chunk-main2-33a8eba2-esm.js'; +import { a as log, b as dep } from './chunk-main2-bee79135-esm.js'; log(dep); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-2f78d4f8-esm.js b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-2f78d4f8-esm.js new file mode 100644 index 00000000000..378a2efbaf5 --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-2f78d4f8-esm.js @@ -0,0 +1 @@ +export { a as default } from './chunk-main2-bee79135-esm.js'; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-52329ca1-esm.js b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-52329ca1-esm.js deleted file mode 100644 index 17153d426c3..00000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-52329ca1-esm.js +++ /dev/null @@ -1 +0,0 @@ -export { a as default } from './chunk-main2-33a8eba2-esm.js'; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/system/chunk-main2-bd8b7ffb-system.js b/test/chunking-form/samples/filenames-patterns/_expected/system/chunk-main2-441b49d2-system.js similarity index 100% rename from test/chunking-form/samples/filenames-patterns/_expected/system/chunk-main2-bd8b7ffb-system.js rename to test/chunking-form/samples/filenames-patterns/_expected/system/chunk-main2-441b49d2-system.js diff --git a/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-2422e801-system.js b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-2422e801-system.js index c8a2dcf7bfa..f3f7d131066 100644 --- a/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-2422e801-system.js +++ b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-2422e801-system.js @@ -1,4 +1,4 @@ -System.register(['./chunk-main2-bd8b7ffb-system.js'], function (exports, module) { +System.register(['./chunk-main2-441b49d2-system.js'], function (exports, module) { 'use strict'; var log, dep; return { diff --git a/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-45e98bef-system.js b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-2ad41703-system.js similarity index 70% rename from test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-45e98bef-system.js rename to test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-2ad41703-system.js index 5bd450d0712..81739879cb5 100644 --- a/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-45e98bef-system.js +++ b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-2ad41703-system.js @@ -1,4 +1,4 @@ -System.register(['./chunk-main2-bd8b7ffb-system.js'], function (exports, module) { +System.register(['./chunk-main2-441b49d2-system.js'], function (exports, module) { 'use strict'; return { setters: [function (module) { diff --git a/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/amd/5654511d.js b/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/amd/00e68f7b.js similarity index 100% rename from test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/amd/5654511d.js rename to test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/amd/00e68f7b.js diff --git a/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/cjs/69b0b1f3.js b/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/cjs/0d12e680.js similarity index 100% rename from test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/cjs/69b0b1f3.js rename to test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/cjs/0d12e680.js diff --git a/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/es/21d179d7.js b/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/es/1249effd.js similarity index 100% rename from test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/es/21d179d7.js rename to test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/es/1249effd.js diff --git a/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/system/8714c598.js b/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/system/5845a025.js similarity index 100% rename from test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/system/8714c598.js rename to test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/system/5845a025.js diff --git a/test/file-hashes/samples/respects-exports/_config.js b/test/file-hashes/samples/respects-exports/_config.js index 4157e15ef10..0a575de5c29 100644 --- a/test/file-hashes/samples/respects-exports/_config.js +++ b/test/file-hashes/samples/respects-exports/_config.js @@ -1,5 +1,4 @@ module.exports = { - solo: true, description: 'creates different hashes if the content is equal but the generated exports differ', options1: { input: ['main1', 'other'] diff --git a/test/misc/bundle-information.js b/test/misc/bundle-information.js index 8dabe6d9b35..44f11d2aee9 100644 --- a/test/misc/bundle-information.js +++ b/test/misc/bundle-information.js @@ -26,7 +26,7 @@ describe('The bundle object', () => { .then(({ output }) => { assert.deepEqual( output.map(chunk => chunk.fileName), - ['input1-6792d712.js', 'input2-82fc6fc0.js', 'generated-chunk-d6db1a1e.js'], + ['input1-02f7855a.js', 'input2-253c4620.js', 'generated-chunk-d6db1a1e.js'], 'fileName' ); assert.deepEqual(