feat(webpack-5): opt-in to transitive only side effects #599
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains a:
Motivation / Use-Case
mini-css leaves empty "// extract by ..." js modules in the bundle. They are unnecessary.
webpack 5 will analyse the source code as side-effect-free, but as it contains a custom dependency (
CssDependency
), this dependency also need to opt-in into being side-effect-free. But actual it's not completely side-effect-free as it points to CssModules that need to be included in the bundle. So this PR opts in into a "transitive only" side-effects mode, which allows to drop the js module but keeps the dependencies in the bundle.Breaking Changes
None
Additional Info