@rushstack/webpack4-module-minifier-plugin
0.13.106 • Public • Publishednpm install @rushstack/webpack4-module-minifier-plugin --save-dev
This Webpack plugin performs minification of production assets on a per-module basis, rather than minifying an entire chunk at a time.It issues async calls to the minifier for each unique module and each unique set of chunk boilerplate (i.e. the webpack runtime and the structure of the module list).This improves minification time by:
- Avoiding duplicate work for each module that is included in multiple distinct assets/chunks (this is common with async chunks)
- Handing smaller code chunks to the minifier at a time (AST analysis is superlinear in size of the AST)
- Even single asset builds will likely still contain multiple modules in the final output, which can be split across available CPU cores
The plugin will do its best to update webpack hashes if changing the direct inputs (useSourceMap
,compressAsyncImports
orusePortableModules
) to the plugin, but if altering theminifier
property itself, you may need to use theoutput.hashSalt
property to force a change to the hashes, especially if leverging theMessagePortMinifier
or similar, since it has no direct access to the configuration of the minifier.
If running on node 10, you will need to ensure that the--experimental-workers
flag is enabled.
const{ ModuleMinifierPlugin, WorkerPoolMinifier}=require('@rushstack/webpack4-module-minifier-plugin');// In your webpack options:optimization:{minimizer:[newModuleMinifierPlugin({minifier:newWorkerPoolMinifier(),// If not provided, the plugin will attempt to guess from `mode` and `devtool`.// Providing it expressly gives better resultsuseSourceMap:true})]}
You can also run the ModuleMinifierPlugin in a single-threaded configuration.
// webpack.config.jsconst{ ModuleMinifierPlugin, LocalMinifier}=require('@rushstack/webpack4-module-minifier-plugin');// In your webpack options:optimization:{minimizer:[newModuleMinifierPlugin({minifier:newLocalMinifier()})]}
- CHANGELOG.md - Findout what's new in the latest version
@rushstack/webpack4-module-minifier-plugin
is part of theRush Stack family of projects.
Readme
Keywords
nonePackage Sidebar
Install
npm i @rushstack/webpack4-module-minifier-plugin
Repository
Weekly Downloads
3,255
Version
0.13.106
License
MIT
Unpacked Size
452 kB
Total Files
51