From ac15f06f2a0a015b27ffc3db2c0d4ce2c3ef8454 Mon Sep 17 00:00:00 2001 From: Tobias Koppers Date: Mon, 16 Nov 2020 20:24:54 +0100 Subject: [PATCH] improve handling of exported Promises --- lib/ContextModule.js | 23 +++-- lib/RuntimeTemplate.js | 2 +- .../CreateFakeNamespaceObjectRuntimeModule.js | 10 +- test/Stats.test.js | 8 +- .../__snapshots__/StatsTestCases.test.js.snap | 98 +++++++++---------- .../move-to-grandparent/index.js | 2 +- 6 files changed, 79 insertions(+), 64 deletions(-) diff --git a/lib/ContextModule.js b/lib/ContextModule.js index 18c81bc98..e9c167217 100644 --- a/lib/ContextModule.js +++ b/lib/ContextModule.js @@ -553,18 +553,26 @@ class ContextModule extends Module { : ""; } - getReturn(type) { + getReturn(type, asyncModule) { if (type === 9) { return "__webpack_require__(id)"; } - return `${RuntimeGlobals.createFakeNamespaceObject}(id, ${type})`; + return `${RuntimeGlobals.createFakeNamespaceObject}(id, ${type}${ + asyncModule ? " | 16" : "" + })`; } - getReturnModuleObjectSource(fakeMap, fakeMapDataExpression = "fakeMap[id]") { + getReturnModuleObjectSource( + fakeMap, + asyncModule, + fakeMapDataExpression = "fakeMap[id]" + ) { if (typeof fakeMap === "number") { return `return ${this.getReturn(fakeMap)};`; } - return `return ${RuntimeGlobals.createFakeNamespaceObject}(id, ${fakeMapDataExpression})`; + return `return ${ + RuntimeGlobals.createFakeNamespaceObject + }(id, ${fakeMapDataExpression}${asyncModule ? " | 16" : ""})`; } /** @@ -652,7 +660,7 @@ module.exports = webpackContext;`; const arrow = runtimeTemplate.supportsArrowFunction(); const map = this.getUserRequestMap(dependencies, chunkGraph); const fakeMap = this.getFakeMap(dependencies, chunkGraph); - const returnModuleObject = this.getReturnModuleObjectSource(fakeMap); + const returnModuleObject = this.getReturnModuleObjectSource(fakeMap, true); return `var map = ${JSON.stringify(map, null, "\t")}; ${this.getFakeMapInitStatement(fakeMap)} @@ -755,7 +763,7 @@ module.exports = webpackAsyncContext;`; const thenFunction = fakeMap !== 9 ? `${arrow ? "id =>" : "function(id)"} { - ${this.getReturnModuleObjectSource(fakeMap)}; + ${this.getReturnModuleObjectSource(fakeMap, true)}; }` : "__webpack_require__"; @@ -853,12 +861,13 @@ module.exports = webpackAsyncContext;`; : `${RuntimeGlobals.ensureChunk}(ids[${chunksStartPosition}])`; const returnModuleObject = this.getReturnModuleObjectSource( fakeMap, + true, shortMode ? "invalid" : "ids[1]" ); const webpackAsyncContext = requestPrefix === "Promise.resolve()" - ? `${shortMode ? "" : ""} + ? ` function webpackAsyncContext(req) { return Promise.resolve().then(${arrow ? "() =>" : "function()"} { if(!${RuntimeGlobals.hasOwnProperty}(map, req)) { diff --git a/lib/RuntimeTemplate.js b/lib/RuntimeTemplate.js index 9bc964058..1e8a5c236 100644 --- a/lib/RuntimeTemplate.js +++ b/lib/RuntimeTemplate.js @@ -497,7 +497,7 @@ class RuntimeTemplate { weak }); const exportsType = module.getExportsType(chunkGraph.moduleGraph, strict); - let fakeType = 0; + let fakeType = 16; switch (exportsType) { case "namespace": if (header) { diff --git a/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js b/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js index ab7c36bc2..83506677e 100644 --- a/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js +++ b/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js @@ -32,17 +32,23 @@ class CreateFakeNamespaceObjectRuntimeModule extends HelperRuntimeModule { "// mode & 1: value is a module id, require it", "// mode & 2: merge all properties of value into the ns", "// mode & 4: return value when already ns object", + "// mode & 16: return value when it's Promise-like", "// mode & 8|1: behave like require", // Note: must be a function (not arrow), because this is used in body! `${fn} = function(value, mode) {`, Template.indent([ `if(mode & 1) value = this(value);`, `if(mode & 8) return value;`, - "if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;", + "if(typeof value === 'object' && value) {", + Template.indent([ + "if((mode & 4) && value.__esModule) return value;", + "if((mode & 16) && typeof value.then === 'function') return value;" + ]), + "}", "var ns = Object.create(null);", `${RuntimeGlobals.makeNamespaceObject}(ns);`, "var def = {};", - 'leafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto), typeof Promise === "function" && Promise.prototype];', + "leafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];", "for(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {", Template.indent([ modern diff --git a/test/Stats.test.js b/test/Stats.test.js index bb6c7f5ca..2f8bf30b5 100644 --- a/test/Stats.test.js +++ b/test/Stats.test.js @@ -173,10 +173,10 @@ describe("Stats", () => { "assets": Array [ Object { "name": "entryB.js", - "size": 2908, + "size": 2910, }, ], - "assetsSize": 2908, + "assetsSize": 2910, "auxiliaryAssets": undefined, "auxiliaryAssetsSize": 0, "childAssets": undefined, @@ -221,10 +221,10 @@ describe("Stats", () => { "info": Object { "javascriptModule": false, "minimized": true, - "size": 2908, + "size": 2910, }, "name": "entryB.js", - "size": 2908, + "size": 2910, "type": "asset", }, Object { diff --git a/test/__snapshots__/StatsTestCases.test.js.snap b/test/__snapshots__/StatsTestCases.test.js.snap index fa0fe4354..ff4ab9c49 100644 --- a/test/__snapshots__/StatsTestCases.test.js.snap +++ b/test/__snapshots__/StatsTestCases.test.js.snap @@ -3,14 +3,14 @@ exports[`StatsTestCases should print correct stats for aggressive-splitting-entry 1`] = ` "fitting: PublicPath: auto - asset fitting-b45b5aa3029e0ed81551.js 15.8 KiB [emitted] [immutable] + asset fitting-9492cad25a13fbc8e7a7.js 16 KiB [emitted] [immutable] asset fitting-34542f2d6e4f073117f4.js 1.9 KiB [emitted] [immutable] asset fitting-db0927f4ef7838186003.js 1.9 KiB [emitted] [immutable] asset fitting-648f8b05ea1214c52404.js 1.08 KiB [emitted] [immutable] - Entrypoint main 19.6 KiB = fitting-db0927f4ef7838186003.js 1.9 KiB fitting-34542f2d6e4f073117f4.js 1.9 KiB fitting-b45b5aa3029e0ed81551.js 15.8 KiB - chunk (runtime: main) fitting-b45b5aa3029e0ed81551.js 1.87 KiB (javascript) 8.69 KiB (runtime) [entry] [rendered] + Entrypoint main 19.8 KiB = fitting-db0927f4ef7838186003.js 1.9 KiB fitting-34542f2d6e4f073117f4.js 1.9 KiB fitting-9492cad25a13fbc8e7a7.js 16 KiB + chunk (runtime: main) fitting-9492cad25a13fbc8e7a7.js 1.87 KiB (javascript) 8.76 KiB (runtime) [entry] [rendered] > ./index main - runtime modules 8.69 KiB 10 modules + runtime modules 8.76 KiB 10 modules cacheable modules 1.87 KiB ./e.js 899 bytes [dependent] [built] [code generated] ./f.js 900 bytes [dependent] [built] [code generated] @@ -30,14 +30,14 @@ exports[`StatsTestCases should print correct stats for aggressive-splitting-entr content-change: PublicPath: auto - asset content-change-963229bb49ade52aa6f9.js 15.8 KiB [emitted] [immutable] + asset content-change-2ceac52d6bb8a7443486.js 16 KiB [emitted] [immutable] asset content-change-34542f2d6e4f073117f4.js 1.9 KiB [emitted] [immutable] asset content-change-db0927f4ef7838186003.js 1.9 KiB [emitted] [immutable] asset content-change-648f8b05ea1214c52404.js 1.08 KiB [emitted] [immutable] - Entrypoint main 19.6 KiB = content-change-db0927f4ef7838186003.js 1.9 KiB content-change-34542f2d6e4f073117f4.js 1.9 KiB content-change-963229bb49ade52aa6f9.js 15.8 KiB - chunk (runtime: main) content-change-963229bb49ade52aa6f9.js 1.87 KiB (javascript) 8.7 KiB (runtime) [entry] [rendered] + Entrypoint main 19.8 KiB = content-change-db0927f4ef7838186003.js 1.9 KiB content-change-34542f2d6e4f073117f4.js 1.9 KiB content-change-2ceac52d6bb8a7443486.js 16 KiB + chunk (runtime: main) content-change-2ceac52d6bb8a7443486.js 1.87 KiB (javascript) 8.77 KiB (runtime) [entry] [rendered] > ./index main - runtime modules 8.7 KiB 10 modules + runtime modules 8.77 KiB 10 modules cacheable modules 1.87 KiB ./e.js 899 bytes [dependent] [built] [code generated] ./f.js 900 bytes [dependent] [built] [code generated] @@ -585,8 +585,8 @@ webpack x.x.x compiled successfully in X ms" exports[`StatsTestCases should print correct stats for circular-correctness 1`] = ` "chunk (runtime: main) 128.bundle.js (b) 49 bytes <{179}> <{459}> >{459}< [rendered] ./module-b.js 49 bytes [built] [code generated] -chunk (runtime: main) bundle.js (main) 98 bytes (javascript) 7.48 KiB (runtime) >{128}< >{786}< [entry] [rendered] - runtime modules 7.48 KiB 10 modules +chunk (runtime: main) bundle.js (main) 98 bytes (javascript) 7.55 KiB (runtime) >{128}< >{786}< [entry] [rendered] + runtime modules 7.55 KiB 10 modules ./index.js 98 bytes [built] [code generated] chunk (runtime: main) 459.bundle.js (c) 98 bytes <{128}> <{786}> >{128}< >{786}< [rendered] ./module-c.js 98 bytes [built] [code generated] @@ -818,16 +818,16 @@ exports[`StatsTestCases should print correct stats for graph-correctness-entries "chunk (runtime: e1, e2) b.js (b) 49 bytes <{786}> >{459}< [rendered] ./module-b.js 49 bytes [built] [code generated] import() ./module-b ./module-a.js 1:0-47 -chunk (runtime: e1) e1.js (e1) 49 bytes (javascript) 7.5 KiB (runtime) >{786}< [entry] [rendered] - runtime modules 7.5 KiB 10 modules +chunk (runtime: e1) e1.js (e1) 49 bytes (javascript) 7.58 KiB (runtime) >{786}< [entry] [rendered] + runtime modules 7.58 KiB 10 modules ./e1.js 49 bytes [built] [code generated] entry ./e1 e1 chunk (runtime: e1, e2) c.js (c) 49 bytes <{128}> <{621}> >{786}< [rendered] ./module-c.js 49 bytes [built] [code generated] import() ./module-c ./e2.js 1:0-47 import() ./module-c ./module-b.js 1:0-47 -chunk (runtime: e2) e2.js (e2) 49 bytes (javascript) 7.5 KiB (runtime) >{459}< [entry] [rendered] - runtime modules 7.5 KiB 10 modules +chunk (runtime: e2) e2.js (e2) 49 bytes (javascript) 7.58 KiB (runtime) >{459}< [entry] [rendered] + runtime modules 7.58 KiB 10 modules ./e2.js 49 bytes [built] [code generated] entry ./e2 e2 chunk (runtime: e1, e2) a.js (a) 49 bytes <{257}> <{459}> >{128}< [rendered] @@ -841,8 +841,8 @@ exports[`StatsTestCases should print correct stats for graph-correctness-modules "chunk (runtime: e1, e2) b.js (b) 179 bytes <{786}> >{459}< [rendered] ./module-b.js 179 bytes [built] [code generated] import() ./module-b ./module-a.js 1:0-47 -chunk (runtime: e1) e1.js (e1) 119 bytes (javascript) 7.77 KiB (runtime) >{786}< >{892}< [entry] [rendered] - runtime modules 7.77 KiB 11 modules +chunk (runtime: e1) e1.js (e1) 119 bytes (javascript) 7.84 KiB (runtime) >{786}< >{892}< [entry] [rendered] + runtime modules 7.84 KiB 11 modules cacheable modules 119 bytes ./e1.js 70 bytes [built] [code generated] entry ./e1 e1 @@ -854,8 +854,8 @@ chunk (runtime: e1, e2) c.js (c) 49 bytes <{128}> <{621}> >{786}< [rendered] ./module-c.js 49 bytes [built] [code generated] import() ./module-c ./e2.js 2:0-47 import() ./module-c ./module-b.js 1:0-47 -chunk (runtime: e2) e2.js (e2) 119 bytes (javascript) 7.77 KiB (runtime) >{459}< >{892}< [entry] [rendered] - runtime modules 7.77 KiB 11 modules +chunk (runtime: e2) e2.js (e2) 119 bytes (javascript) 7.84 KiB (runtime) >{459}< >{892}< [entry] [rendered] + runtime modules 7.84 KiB 11 modules cacheable modules 119 bytes ./e2.js 70 bytes [built] [code generated] entry ./e2 e2 @@ -924,7 +924,7 @@ webpack x.x.x compiled with 2 warnings in X ms" `; exports[`StatsTestCases should print correct stats for immutable 1`] = ` -"asset 98c2a287d707b3235193.js 12.9 KiB [emitted] [immutable] (name: main) +"asset deb902e1c6c6d6c31fc1.js 13 KiB [emitted] [immutable] (name: main) asset cd9e349e4fe2a6d0d4d0.js 884 bytes [emitted] [immutable]" `; @@ -945,9 +945,9 @@ webpack x.x.x compiled successfully in X ms" `; exports[`StatsTestCases should print correct stats for import-weak 1`] = ` -"asset entry.js 12.7 KiB [emitted] (name: entry) +"asset entry.js 12.8 KiB [emitted] (name: entry) asset 836.js 138 bytes [emitted] -runtime modules 7.47 KiB 10 modules +runtime modules 7.54 KiB 10 modules orphan modules 37 bytes [orphan] 1 module cacheable modules 142 bytes ./entry.js 120 bytes [built] [code generated] @@ -956,7 +956,7 @@ webpack x.x.x compiled successfully in X ms" `; exports[`StatsTestCases should print correct stats for import-with-invalid-options-comments 1`] = ` -"runtime modules 8.45 KiB 12 modules +"runtime modules 8.52 KiB 12 modules cacheable modules 559 bytes ./index.js 50 bytes [built] [code generated] ./chunk.js 401 bytes [built] [code generated] [3 warnings] @@ -1017,9 +1017,9 @@ webpack x.x.x compiled successfully in X ms" exports[`StatsTestCases should print correct stats for limit-chunk-count-plugin 1`] = ` "1 chunks: - asset bundle1.js 4.54 KiB [emitted] (name: main) - chunk (runtime: main) bundle1.js (main) 219 bytes (javascript) 1.68 KiB (runtime) <{179}> >{179}< [entry] [rendered] - runtime modules 1.68 KiB 4 modules + asset bundle1.js 4.65 KiB [emitted] (name: main) + chunk (runtime: main) bundle1.js (main) 219 bytes (javascript) 1.75 KiB (runtime) <{179}> >{179}< [entry] [rendered] + runtime modules 1.75 KiB 4 modules cacheable modules 219 bytes ./a.js 22 bytes [dependent] [built] [code generated] ./b.js 22 bytes [dependent] [built] [code generated] @@ -1030,10 +1030,10 @@ exports[`StatsTestCases should print correct stats for limit-chunk-count-plugin 1 chunks (webpack x.x.x) compiled successfully in X ms 2 chunks: - asset bundle2.js 12.3 KiB [emitted] (name: main) - asset 459.bundle2.js 662 bytes [emitted] (name: c) - chunk (runtime: main) bundle2.js (main) 101 bytes (javascript) 7.48 KiB (runtime) >{459}< [entry] [rendered] - runtime modules 7.48 KiB 10 modules + asset bundle2.js 12.4 KiB [emitted] (name: main) + asset 459.bundle2.js 664 bytes [emitted] (name: c) + chunk (runtime: main) bundle2.js (main) 101 bytes (javascript) 7.55 KiB (runtime) >{459}< [entry] [rendered] + runtime modules 7.55 KiB 10 modules ./index.js 101 bytes [built] [code generated] chunk (runtime: main) 459.bundle2.js (c) 118 bytes <{179}> <{459}> >{459}< [rendered] dependent modules 44 bytes [dependent] @@ -1045,11 +1045,11 @@ exports[`StatsTestCases should print correct stats for limit-chunk-count-plugin 2 chunks (webpack x.x.x) compiled successfully in X ms 3 chunks: - asset bundle3.js 12.3 KiB [emitted] (name: main) - asset 459.bundle3.js 526 bytes [emitted] (name: c) + asset bundle3.js 12.4 KiB [emitted] (name: main) + asset 459.bundle3.js 528 bytes [emitted] (name: c) asset 524.bundle3.js 206 bytes [emitted] - chunk (runtime: main) bundle3.js (main) 101 bytes (javascript) 7.48 KiB (runtime) >{459}< [entry] [rendered] - runtime modules 7.48 KiB 10 modules + chunk (runtime: main) bundle3.js (main) 101 bytes (javascript) 7.55 KiB (runtime) >{459}< [entry] [rendered] + runtime modules 7.55 KiB 10 modules ./index.js 101 bytes [built] [code generated] chunk (runtime: main) 459.bundle3.js (c) 74 bytes <{179}> >{524}< [rendered] ./a.js 22 bytes [built] [code generated] @@ -1061,12 +1061,12 @@ exports[`StatsTestCases should print correct stats for limit-chunk-count-plugin 3 chunks (webpack x.x.x) compiled successfully in X ms 4 chunks: - asset bundle4.js 12.3 KiB [emitted] (name: main) - asset 459.bundle4.js 390 bytes [emitted] (name: c) + asset bundle4.js 12.4 KiB [emitted] (name: main) + asset 459.bundle4.js 392 bytes [emitted] (name: c) asset 394.bundle4.js 206 bytes [emitted] asset 524.bundle4.js 206 bytes [emitted] - chunk (runtime: main) bundle4.js (main) 101 bytes (javascript) 7.48 KiB (runtime) >{394}< >{459}< [entry] [rendered] - runtime modules 7.48 KiB 10 modules + chunk (runtime: main) bundle4.js (main) 101 bytes (javascript) 7.55 KiB (runtime) >{394}< >{459}< [entry] [rendered] + runtime modules 7.55 KiB 10 modules ./index.js 101 bytes [built] [code generated] chunk (runtime: main) 394.bundle4.js 44 bytes <{179}> [rendered] ./a.js 22 bytes [built] [code generated] @@ -1427,10 +1427,10 @@ webpack x.x.x compiled successfully in X ms" `; exports[`StatsTestCases should print correct stats for named-chunks-plugin-async 1`] = ` -"asset entry.js 12.1 KiB [emitted] (name: entry) -asset modules_a_js.js 312 bytes [emitted] +"asset entry.js 12.3 KiB [emitted] (name: entry) +asset modules_a_js.js 313 bytes [emitted] asset modules_b_js.js 149 bytes [emitted] -runtime modules 7.47 KiB 10 modules +runtime modules 7.55 KiB 10 modules cacheable modules 106 bytes ./entry.js 47 bytes [built] [code generated] ./modules/a.js 37 bytes [built] [code generated] @@ -1726,17 +1726,17 @@ webpack x.x.x compiled with 3 errors in X ms" `; exports[`StatsTestCases should print correct stats for prefetch 1`] = ` -"asset main.js 15.6 KiB {179} [emitted] (name: main) -asset prefetched.js 553 bytes {505} [emitted] (name: prefetched) +"asset main.js 15.7 KiB {179} [emitted] (name: main) +asset prefetched.js 556 bytes {505} [emitted] (name: prefetched) asset inner2.js 150 bytes {641} [emitted] (name: inner2) asset inner.js 110 bytes {746} [emitted] (name: inner) asset prefetched2.js 110 bytes {379} [emitted] (name: prefetched2) asset prefetched3.js 110 bytes {220} [emitted] (name: prefetched3) asset normal.js 109 bytes {30} [emitted] (name: normal) -Entrypoint main 15.6 KiB = main.js +Entrypoint main 15.7 KiB = main.js prefetch: prefetched2.js {379} (name: prefetched2), prefetched.js {505} (name: prefetched), prefetched3.js {220} (name: prefetched3) chunk {30} (runtime: main) normal.js (normal) 1 bytes <{179}> [rendered] -chunk {179} (runtime: main) main.js (main) 436 bytes (javascript) 8.89 KiB (runtime) >{30}< >{220}< >{379}< >{505}< (prefetch: {379} {505} {220}) [entry] [rendered] +chunk {179} (runtime: main) main.js (main) 436 bytes (javascript) 8.97 KiB (runtime) >{30}< >{220}< >{379}< >{505}< (prefetch: {379} {505} {220}) [entry] [rendered] chunk {220} (runtime: main) prefetched3.js (prefetched3) 1 bytes <{179}> [rendered] chunk {379} (runtime: main) prefetched2.js (prefetched2) 1 bytes <{179}> [rendered] chunk {505} (runtime: main) prefetched.js (prefetched) 228 bytes <{179}> >{641}< >{746}< (prefetch: {641} {746}) [rendered] @@ -1751,7 +1751,7 @@ chunk (runtime: main) c1.js (c1) 1 bytes <{459}> [rendered] chunk (runtime: main) b.js (b) 203 bytes <{179}> >{132}< >{751}< >{978}< (prefetch: {751} {132}) (preload: {978}) [rendered] chunk (runtime: main) b3.js (b3) 1 bytes <{128}> [rendered] chunk (runtime: main) a2.js (a2) 1 bytes <{786}> [rendered] -chunk (runtime: main) main.js (main) 195 bytes (javascript) 9.57 KiB (runtime) >{128}< >{459}< >{786}< (prefetch: {786} {128} {459}) [entry] [rendered] +chunk (runtime: main) main.js (main) 195 bytes (javascript) 9.64 KiB (runtime) >{128}< >{459}< >{786}< (prefetch: {786} {128} {459}) [entry] [rendered] chunk (runtime: main) c.js (c) 134 bytes <{179}> >{3}< >{76}< (preload: {76} {3}) [rendered] chunk (runtime: main) b1.js (b1) 1 bytes <{128}> [rendered] chunk (runtime: main) a.js (a) 136 bytes <{179}> >{74}< >{178}< (prefetch: {74} {178}) [rendered] @@ -1759,17 +1759,17 @@ chunk (runtime: main) b2.js (b2) 1 bytes <{128}> [rendered]" `; exports[`StatsTestCases should print correct stats for preload 1`] = ` -"asset main.js 14.9 KiB [emitted] (name: main) -asset preloaded.js 553 bytes [emitted] (name: preloaded) +"asset main.js 15 KiB [emitted] (name: main) +asset preloaded.js 556 bytes [emitted] (name: preloaded) asset inner2.js 150 bytes [emitted] (name: inner2) asset inner.js 110 bytes [emitted] (name: inner) asset normal.js 109 bytes [emitted] (name: normal) asset preloaded2.js 109 bytes [emitted] (name: preloaded2) asset preloaded3.js 108 bytes [emitted] (name: preloaded3) -Entrypoint main 14.9 KiB = main.js +Entrypoint main 15 KiB = main.js preload: preloaded2.js (name: preloaded2), preloaded.js (name: preloaded), preloaded3.js (name: preloaded3) chunk (runtime: main) normal.js (normal) 1 bytes [rendered] -chunk (runtime: main) main.js (main) 424 bytes (javascript) 8.71 KiB (runtime) (preload: {363} {851} {355}) [entry] [rendered] +chunk (runtime: main) main.js (main) 424 bytes (javascript) 8.78 KiB (runtime) (preload: {363} {851} {355}) [entry] [rendered] chunk (runtime: main) preloaded3.js (preloaded3) 1 bytes [rendered] chunk (runtime: main) preloaded2.js (preloaded2) 1 bytes [rendered] chunk (runtime: main) inner2.js (inner2) 2 bytes [rendered] diff --git a/test/configCases/split-chunks-common/move-to-grandparent/index.js b/test/configCases/split-chunks-common/move-to-grandparent/index.js index abee1e85c..5f810b399 100644 --- a/test/configCases/split-chunks-common/move-to-grandparent/index.js +++ b/test/configCases/split-chunks-common/move-to-grandparent/index.js @@ -1,7 +1,7 @@ it("should correctly include indirect children in common chunk", function(done) { Promise.all([ import('./pageA'), - import('./pageB').then(m => m.default) + import('./pageB') ]).then((imports) => { expect(imports[0].default).toBe("reuse"); expect(imports[1].default).toBe("reuse");