This repository has been archived by the owner on Feb 15, 2025. It is now read-only.
v0.21.0
Breaking Changes
- Validation of the configuration object provided by
nwb.config.js
files has been expanded, so previously valid config files may now be invalid [#136]- Unexpected properties in top-level configuration or in
babel
,karma
,npm
andwebpack
configuration (i.e. anything that's not documented in the Configuration docs) are now treated as errors [#193] - Basic type checking is now performed for all documented configuration properties.
- After upgrading, run
nwb check-config
to check your configuration file.
- Unexpected properties in top-level configuration or in
- Updated to UglifyJSPlugin 1.x, which supports ES2015 syntax and adds options to enable filesystem caching and use multiple processes to improve build speed, which nwb enables by default [#412]
- Review any custom
webpack.uglify
config you have against the new version's options documentation - options for UglifyJS itself must now be passed as anuglifyOptions
object and some of UglifyJS' default options have changed.
- Review any custom
- Node.js 4.8.0 is now the minimum required version, based on the
engines
config of nwb's dependencies.
nwb.config.js
Config Changes
- Deprecated the
webpack.compat.sinon
flag for Sinon 1.x compatibility settings, as subsequent major versions since July 2017 support Webpack out of the box.
Fixed
- Fixed testing React component/library and web module projects when using export extensions - the Babel stage preset wasn't being defaulted to preset-stage-1, which includes the export extensions plugin [#364]
Added
- Added an
--open
flag to open the app in your default browser or in a named browser (e.g.--open="Google Chrome"
) after starting a Webpack dev server [#334] - You can now provide a
babel.config()
function which will be given the generated Babel config to do whatever it wants with. - You can now provide a
karma.config()
function which will be given the generated Karma config to do whatever it wants with [#408]
Changed
- Simplified configuration of locales in
webpack.compat
config
Dependencies
- autoprefixer: v7.1.6 → v7.2.4
- babel-plugin-inferno: v3.3.0 → v3.3.1
- copy-webpack-plugin: v4.2.1 → v4.3.1
- file-loader: v1.1.5 → v1.1.6
- gzip-size: v4.0.0 → v4.1.0
- karma: v1.7.1 → v2.0.0
- karma-webpack: v2.0.6 → v2.0.9
- mocha: v4.0.1 → v4.1.0
- postcss-loader: v2.0.8 → v2.0.9
- style-loader: v0.19.0→ v0.19.1
- webpack: v3.8.1 → v3.10.0
- webpack-dev-server: v2.9.4 → v2.9.7
- webpack-dev-middleware: v1.12.0 → v1.12.2
- webpack-hot-middleware: v2.20.0 → v2.21.0
Docs
- Added missing docs for
webpack.copy
config - Added more headings to the Commands docs to make them easier to browse, and to make feature flags such as
--copy-files
for component builds more visible [#407]