Skip to content

Commit cae86da

Browse files
committed
switch to license-checker-webpack-plugin again for performance
1 parent c49526f commit cae86da

File tree

3 files changed

+127
-53
lines changed

3 files changed

+127
-53
lines changed

package-lock.json

Lines changed: 118 additions & 33 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
"jquery.are-you-sure": "1.9.0",
2929
"less": "4.0.0",
3030
"less-loader": "7.2.0",
31-
"license-webpack-plugin": "2.3.9",
31+
"license-checker-webpack-plugin": "0.2.1",
3232
"mermaid": "8.8.4",
3333
"mini-css-extract-plugin": "1.3.3",
3434
"monaco-editor": "0.21.2",

webpack.config.js

Lines changed: 8 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@ const fastGlob = require('fast-glob');
22
const wrapAnsi = require('wrap-ansi');
33
const AddAssetPlugin = require('add-asset-webpack-plugin');
44
const CssMinimizerPlugin = require('css-minimizer-webpack-plugin');
5+
const LicenseCheckerWebpackPlugin = require('license-checker-webpack-plugin');
56
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
67
const MonacoWebpackPlugin = require('monaco-editor-webpack-plugin');
78
const TerserPlugin = require('terser-webpack-plugin');
89
const VueLoaderPlugin = require('vue-loader/lib/plugin');
910
const {statSync} = require('fs');
1011
const {resolve, parse} = require('path');
11-
const {LicenseWebpackPlugin} = require('license-webpack-plugin');
1212
const {SourceMapDevToolPlugin} = require('webpack');
1313

1414
const glob = (pattern) => fastGlob.sync(pattern, {cwd: __dirname, absolute: true});
@@ -257,29 +257,18 @@ module.exports = {
257257
new MonacoWebpackPlugin({
258258
filename: 'js/monaco-[name].worker.js',
259259
}),
260-
isProduction ? new LicenseWebpackPlugin({
260+
isProduction ? new LicenseCheckerWebpackPlugin({
261261
outputFilename: 'js/licenses.txt',
262-
perChunkOutput: false,
263-
addBanner: false,
264-
skipChildCompilers: true,
265-
modulesDirectories: [
266-
resolve(__dirname, 'node_modules'),
267-
],
268-
additionalModules: [
269-
'@primer/octicons',
270-
].map((name) => ({name, directory: resolve(__dirname, `node_modules/${name}`)})),
271-
renderLicenses: (modules) => {
262+
outputWriter: ({dependencies}) => {
272263
const line = '-'.repeat(80);
273-
return modules.map((module) => {
274-
const {name, version} = module.packageJson;
275-
const {licenseId, licenseText} = module;
264+
return dependencies.map((module) => {
265+
const {name, version, licenseName, licenseText} = module;
276266
const body = wrapAnsi(licenseText || '', 80);
277-
return `${line}\n${name}@${version} - ${licenseId}\n${line}\n${body}`;
267+
return `${line}\n${name}@${version} - ${licenseName}\n${line}\n${body}`;
278268
}).join('\n');
279269
},
280-
stats: {
281-
warnings: false,
282-
errors: true,
270+
override: {
271+
'jquery.are-you-sure@*': {licenseName: 'MIT'},
283272
},
284273
}) : new AddAssetPlugin('js/licenses.txt', `Licenses are disabled during development`),
285274
],

0 commit comments

Comments
 (0)