Skip to content

Commit d576b21

Browse files
committed
Remove deprecation caused by the DeletedUnusuedEntriesJSPlugin
1 parent b0f7190 commit d576b21

File tree

1 file changed

+11
-10
lines changed

1 file changed

+11
-10
lines changed

Diff for: lib/webpack/delete-unused-entries-js-plugin.js

+11-10
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,13 @@
99

1010
'use strict';
1111

12+
const webpack = require('webpack');
13+
1214
function DeleteUnusedEntriesJSPlugin(entriesToDelete = []) {
1315
this.entriesToDelete = entriesToDelete;
1416
}
1517
DeleteUnusedEntriesJSPlugin.prototype.apply = function(compiler) {
16-
const emit = (compilation, callback) => {
17-
18+
const deleteEntries = (compilation) => {
1819
// loop over output chunks
1920
compilation.chunks.forEach((chunk) => {
2021
// see of this chunk is one that needs its .js deleted
@@ -26,7 +27,7 @@ DeleteUnusedEntriesJSPlugin.prototype.apply = function(compiler) {
2627
if (/\.js?(\?[^.]*)?$/.test(filename)) {
2728
removedFiles.push(filename);
2829
// remove the output file
29-
delete compilation.assets[filename];
30+
compilation.deleteAsset(filename);
3031
// remove the file, so that it does not dump in the manifest
3132
chunk.files.delete(filename);
3233
}
@@ -37,7 +38,7 @@ DeleteUnusedEntriesJSPlugin.prototype.apply = function(compiler) {
3738
if (removedFiles.map(name => `${name}.map`).includes(`${filename}`)) {
3839
removedFiles.push(filename);
3940
// remove the output file
40-
delete compilation.assets[filename];
41+
compilation.deleteAsset(filename);
4142
// remove the file, so that it does not dump in the manifest
4243
chunk.auxiliaryFiles.delete(filename);
4344
}
@@ -51,14 +52,14 @@ DeleteUnusedEntriesJSPlugin.prototype.apply = function(compiler) {
5152
}
5253
}
5354
});
54-
55-
callback();
5655
};
5756

58-
compiler.hooks.emit.tapAsync(
59-
{ name: 'DeleteUnusedEntriesJsPlugin' },
60-
emit
61-
);
57+
compiler.hooks.compilation.tap('DeleteUnusedEntriesJSPlugin', function (compilation) {
58+
compilation.hooks.additionalAssets.tap(
59+
'DeleteUnusedEntriesJsPlugin',
60+
function() { deleteEntries(compilation) }
61+
);
62+
});
6263
};
6364

6465
module.exports = DeleteUnusedEntriesJSPlugin;

0 commit comments

Comments
 (0)