Features
postcss and completely remove rework parser.Breaking Changes
node@>=12.webpack@>=4 (no longer tested for earlier versions).engine option has been removed.Migrating
Remove the engine option if you are using it.
Features
url() in variables and mixins.rework and rework-visit has been removed.Breaking Changes
engine option is deprecated which means the old rework engine is deprecated.keepQuery behaviour is now the default, the keepQuery option has been removed.removeCR option defaults to true when executing on Windows OS.absolute option has been removed.join option has changed.Migrating
Remove the engine option if you are using it - the default "postcss" engine is much more reliable. The "rework" engine will still work for now but will be removed in the next major version.
Remove the keepQuery option if you are using it.
Remove the absolute option, webpack should work fine without it. If you have a specific need to rebase url() then you should use a separate loader.
If you use a custom join function then you will need to refactor it to the new API. Refer to the advanced usage documentation.
If you wish to still use engine: "rework" then note that rework and rework-visit packages are now peerDependencies that must be explicitly installed by you.
Features
Use postcss parser by default. This is long overdue as the old rework parser doesn't cope with modern css.
Lots of automated tests running actual webpack builds. If you have an interesting use-case let me know.
Breaking Changes
join option.root option to be set.Migrating
Initially set option engine: 'rework' for parity with your existing build. Once working you can remove this option or set engine: 'postcss' explicitly.
Retain keepQuery option if you are already using it.
The root option now has a different meaning. Previously it limited file search. Now it is the base path for absolute or root-relative URIs, consistent with css-loader. If you are already using it you can probably remove it.
If you build on Windows platform and your content contains absolute asset paths, then css-loader could fail. The root option here may fix the URIs before they get to css-loader. Try to leave it unspecified, otherwise (windows only) set to empty string root: ''.