5.28.3 • Published 7 months ago
@statoscope/stats-validator-plugin-webpack v5.28.3
stats-validator-plugin-webpack
Webpack stats validator plugin for @statoscope/stats-validator
This package contains rules to validate a webpack bundle.
Usage
Install
npm i -D @statoscope/stats-validator-plugin-webpack
Add into
statoscope.config.js
module.exports = { validate: { // add webpack plugin with rules plugins: ['@statoscope/webpack'], // rules to validate your stats (use all of them or only specific rules) rules: { // ensures that the build time has not exceeded the limit (10 sec) '@statoscope/webpack/build-time-limits': ['error', 10000], // ensures that bundle doesn't use specified modules '@statoscope/webpack/restricted-modules': ['error', [/\/some-package\/dist\/some-module\.js/]], // ensures that bundle doesn't use specified packages '@statoscope/webpack/restricted-packages': [ 'error', [ 'lodash', 'browserify-crypto', { name: '@bar/foo', version: '1.0.0 - 4.0.0', description: 'Package is not maintained and has security issues', alternatives: [ '@bar/foo2' ] } ], ], // ensures that bundle hasn't package duplicates '@statoscope/webpack/no-packages-dups': ['error'], // ensure that the download time of entrypoints is not over the limit (3 sec) '@statoscope/webpack/entry-download-time-limits': ['error', { global: { maxDownloadTime: 3000 } }], // ensure that the download size of entrypoints is not over the limit (3 mb) '@statoscope/webpack/entry-download-size-limits': ['error', { global: { maxSize: 3 * 1024 * 1024 } }], // ensures that bundle doesn't have modules with deoptimization '@statoscope/webpack/no-modules-deopts': ['warn'], // compares build time between input and reference stats. Fails if build time diff is the limit (3 sec) '@statoscope/webpack/diff-build-time-limits': ['error', 3000], // diff download size of entrypoints between input and reference stats. Fails if size diff is over the limit (3 kb) '@statoscope/webpack/diff-entry-download-size-limits': [ 'error', { global: { maxSizeDiff: 3 * 1024 } }, ], // diff download time of entrypoints between input and reference stats. Fails if download time is over the limit (500 ms) '@statoscope/webpack/diff-entry-download-time-limits': [ 'error', { global: { maxDownloadTimeDiff: 500 } }, ], // compares usage of specified modules between input and reference stats '@statoscope/webpack/diff-deprecated-modules': ['error', [/\/path\/to\/module\.js/]], // compares usage of specified packages usage between input and reference stats. Fails if rxjs usage has increased '@statoscope/webpack/diff-deprecated-packages': ['error', ['rxjs']], } } }
Rules
- build-time-limits - Ensures that the build time has not exceeded the limit
- diff-build-time-limits - Compares build time between input and reference stats. Fails if build time has increased
- diff-deprecated-modules - Compares usage of specified modules between input and reference stats
- diff-deprecated-packages - Compares usage of specified packages usage between input and reference stats
- diff-entry-download-size-limits - Diff download size of entrypoints between input and reference stats
- diff-entry-download-time-limits - Diff download time of entrypoints between input and reference stats
- entry-download-size-limits - Ensure that the download size of entrypoints is not over the limit
- entry-download-time-limits - Ensure that the download time of entrypoints is not over the limit
- no-modules-deopts - Ensures that bundle doesn't have modules with deoptimization
- no-packages-dups - Ensures that bundle hasn't package duplicates
- restricted-modules - Ensures that bundle doesn't use specified modules
- restricted-packages - Ensures that bundle doesn't use specified packages
5.28.3
7 months ago
5.28.2
2 years ago
5.28.1
2 years ago
5.28.0
2 years ago
5.27.0
2 years ago
5.26.2
2 years ago
5.25.0-alpha.0
2 years ago
5.25.1
2 years ago
5.25.0
2 years ago
5.22.1-alpha.0
3 years ago
5.22.1-alpha.2
3 years ago
5.22.1-alpha.1
3 years ago
5.22.1-alpha.3
3 years ago
5.24.0
3 years ago
5.23.0
3 years ago
5.22.0
3 years ago
5.19.3
3 years ago
5.20.1
3 years ago
5.20.0
3 years ago
5.19.1
4 years ago
5.19.0
4 years ago
5.18.0
4 years ago
5.17.0
4 years ago
5.15.0
4 years ago
5.14.1
4 years ago
5.14.0
4 years ago
5.13.1
4 years ago
5.13.0
4 years ago
5.12.1
4 years ago
5.12.0
4 years ago
5.11.2
4 years ago
5.11.0
4 years ago
5.10.3
4 years ago
5.10.1
4 years ago
5.9.0
4 years ago
5.8.1
4 years ago
5.8.0-alpha.0
4 years ago
5.8.0
4 years ago
5.7.3
4 years ago
5.7.2
4 years ago
5.7.1
4 years ago
5.7.0
4 years ago
5.7.0-alpha.0
4 years ago