Skip to content

Commit 93a5bf5

Browse files
committed
fixes for mini-css-extract-plugin
1 parent 54ceb3c commit 93a5bf5

5 files changed

Lines changed: 20 additions & 3 deletions

File tree

‎lib/Compilation.js‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -158,8 +158,6 @@ class Compilation extends Tapable {
158158
beforeChunkAssets: new SyncHook([]),
159159
additionalChunkAssets: new SyncHook(["chunks"]),
160160

161-
records: new SyncHook(["compilation", "records"]),
162-
163161
additionalAssets: new AsyncSeriesHook([]),
164162
optimizeChunkAssets: new AsyncSeriesHook(["chunks"]),
165163
afterOptimizeChunkAssets: new SyncHook(["chunks"]),
@@ -277,6 +275,9 @@ class Compilation extends Tapable {
277275
if (this.cache && this.cache[cacheName]) {
278276
const cacheModule = this.cache[cacheName];
279277

278+
if (typeof cacheModule.updateCacheModule === "function")
279+
cacheModule.updateCacheModule(module);
280+
280281
let rebuild = true;
281282
if (this.fileTimestamps && this.contextTimestamps) {
282283
rebuild = cacheModule.needRebuild(

‎lib/ContextModule.js‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,12 @@ class ContextModule extends Module {
4545
throw new Error("options.mode is a required option");
4646
}
4747

48+
updateCacheModule(module) {
49+
this.resolveDependencies = module.resolveDependencies;
50+
this.options = module.options;
51+
this.resolveOptions = module.resolveOptions;
52+
}
53+
4854
prettyRegExp(regexString) {
4955
// remove the "/" at the front and the beginning
5056
// "/foo/" -> "foo"

‎lib/HotUpdateChunkTemplate.js‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ module.exports = class HotUpdateChunkTemplate extends Tapable {
4747
hotUpdateChunk.removedModules = removedModules;
4848
const modulesSource = Template.renderChunkModules(
4949
hotUpdateChunk,
50-
() => true,
50+
m => typeof m.source === "function",
5151
moduleTemplate,
5252
dependencyTemplates
5353
);

‎lib/Module.js‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -336,5 +336,6 @@ Module.prototype.build = null;
336336
Module.prototype.source = null;
337337
Module.prototype.size = null;
338338
Module.prototype.nameForCondition = null;
339+
Module.prototype.updateCacheModule = null;
339340

340341
module.exports = Module;

‎lib/NormalModule.js‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,15 @@ class NormalModule extends Module {
122122
return this.resource;
123123
}
124124

125+
updateCacheModule(module) {
126+
this.userRequest = module.userRequest;
127+
this.parser = module.parser;
128+
this.generator = module.generator;
129+
this.resource = module.resource;
130+
this.loaders = module.loaders;
131+
this.resolveOptions = module.resolveOptions;
132+
}
133+
125134
createSourceForAsset(name, content, sourceMap) {
126135
if (!sourceMap) {
127136
return new RawSource(content);

0 commit comments

Comments
 (0)