v12.0.0 - Webpack 5
This release updates Page Kit's Webpack plugins to Webpack 5. You'll need to update your app to Webpack 5 when updating to this version of Page Kit. Most apps (i.e. ones using Page Kit plugins without any additional custom Webpack configuration) will be able to just update the packages and everything will be fine. If you have any custom Webpack config, follow the Webpack 5 migration guide.
When updating to Webpack 5, you may need to be aware of its breaking changes. In testing, I've found one breaking change that affects apps:
- when a package has an
exports
specifier inpackage.json
Webpack 5 is strict about not importing things that aren't exported inexports
. this may require code changes in packages and/or apps to export everything that should be and import things correctly.- for example,
next-article
imports@financial-times/custom-code-component/dist/custom-code-component.js
, but that package doesn't include that entrypoint in itsexports
(it exports.
, the top-level import, pointing that at the filedist/custom-code-component.js
, which isn't visible outside the package).next-article
won't build with Webpack 5 without changing thatimport
to@financial-times/custom-code-component
.
- for example,
This release contains a number of other breaking changes:
- We no longer use Autoprefixer. The CSS we write is supported in every browser we use, and browsers no longer use vendor prefixes for new features. The only holdouts are a handful of -webkit prefixed properties supported by every browser; i have verified via Github search that we never use any of these properties unprefixed.
- Our Babel config now targets the
latest
Browserslist default config. This is Browserslist best practice, slightly lenient than our current browser support policy, results in much smaller Babel output than our previous Browserslist config (which was inadvertently targeting some very old browsers), and means we don't have to keep updating the config. - The
prependData
option indotcom-build-sass
, which was deprecated in favour ofadditionalData
, has been removed.
What's Changed
- fix: bump cross-spawn by @dependabot in #1099
- [AG-194] chore: bump oAds to consume mvt2 flag changes by @AniaMakes in #1115
- build: remove storybook by @apaleslimghost in #1117
⚠️ BREAKING CHANGES
- CPP-2230: upgrade to Webpack 5 by @apaleslimghost in #1002
New Contributors
- @AniaMakes made their first contribution in #1115
Full Changelog: v11.3.0...v12.0.0