Merge pull request #6585 from webpack/bugfix/bailout-messages

fix incorrect optimization bailout messages
This commit is contained in:
Tobias Koppers 2018-02-26 21:10:20 +01:00 committed by GitHub
commit 7fd5c6fe44
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 32 additions and 23 deletions

View File

@ -375,21 +375,16 @@ class ModuleConcatenationPlugin {
}
}
// Eagerly try to add imports too if possible
for (const imp of this.getImports(module)) {
const problem = this.tryToAdd(
testConfig,
imp,
possibleModules,
failureCache
);
if (problem) {
config.addWarning(module, problem);
}
}
// Commit experimental changes
config.set(testConfig);
// Eagerly try to add imports too if possible
for (const imp of this.getImports(module)) {
const problem = this.tryToAdd(config, imp, possibleModules, failureCache);
if (problem) {
config.addWarning(imp, problem);
}
}
return null;
}
}

View File

@ -0,0 +1 @@
import "./concatenated1";

View File

@ -0,0 +1 @@
import { x } from "./concatenated2";

View File

@ -0,0 +1,2 @@
import { y } from "external";
export var x = y;

View File

@ -1,21 +1,29 @@
Hash: 2f9dacd48c09c3072b04
Hash: 123228577e0595ae0a8e
Time: Xms
Built at: Thu Jan 01 1970 00:00:00 GMT
Entrypoint index = index.js
Entrypoint entry = entry.js
[0] ./entry.js 32 bytes {0} {1} [built]
[0] ./entry.js 32 bytes {1} {2} [built]
ModuleConcatenation bailout: Module is an entry point
[1] ./ref-from-cjs.js 45 bytes {0} [built]
[1] ./ref-from-cjs.js 45 bytes {1} [built]
ModuleConcatenation bailout: Module is referenced from these modules with unsupported syntax: ./cjs.js (referenced with cjs require)
[2] ./index.js 150 bytes {0} [built]
ModuleConcatenation bailout: Module is an entry point
[3] ./cjs.js 59 bytes {0} [built]
[2] external "external" 42 bytes {1} [built]
ModuleConcatenation bailout: Module is not an ECMAScript module
[4] ./eval.js 35 bytes {0} [built]
[3] ./concatenated.js + 2 modules 116 bytes {0} [built]
ModuleConcatenation bailout: Cannot concat with external "external" (<- Module is not an ECMAScript module)
| ./concatenated.js 26 bytes [built]
| ModuleConcatenation bailout: Module is referenced from these modules with unsupported syntax: ./index.js (referenced with import())
| ./concatenated1.js 37 bytes [built]
| ./concatenated2.js 48 bytes [built]
[4] ./index.js 176 bytes {1} [built]
ModuleConcatenation bailout: Module is an entry point
[5] ./cjs.js 59 bytes {1} [built]
ModuleConcatenation bailout: Module is not an ECMAScript module
[6] ./eval.js 35 bytes {1} [built]
ModuleConcatenation bailout: Module uses eval()
[5] ./injected-vars.js 40 bytes {0} [built]
[7] ./injected-vars.js 40 bytes {1} [built]
ModuleConcatenation bailout: Module uses injected variables (__dirname, __filename)
[6] ./module-id.js 26 bytes {0} [built]
[8] ./module-id.js 26 bytes {1} [built]
ModuleConcatenation bailout: Module uses module.id
[7] ./module-loaded.js 30 bytes {0} [built]
[9] ./module-loaded.js 30 bytes {1} [built]
ModuleConcatenation bailout: Module uses module.loaded

View File

@ -5,3 +5,4 @@ import "./injected-vars";
import "./module-id";
import "./module-loaded";
import "./ref-from-cjs";
import("./concatenated");

View File

@ -8,6 +8,7 @@ module.exports = {
output: {
filename: "[name].js"
},
externals: ["external"],
stats: {
assets: false,
optimizationBailout: true