Version 1.0
📦 Version 1.0 - finally!
Here we go, version 1.0. A lot has happened and I think I speak for all of us when I say we could easily have made two major version bumps out of that one 😉
Changes since v1.0 release candidate
Support negations in match()
glob patterns (#253)
You can now have exclusion patterns without writing ugly regular expressions!
match(['*.js', '*.jsx', '!node_modules'], [
babel()
])
Allow passing arbitrary rule
options via match()
(#250)
There was an undocumented limitation before when passing custom webpack rule
options via match()
: You could only pass include
and exclude
. This has been fixed now.
You can now pass any kind of option if necessary (note the enforce: 'pre'
):
match('*.{js,jsx}', { exclude: 'node_modules', enforce: 'pre' }, [
babel()
])
Added when()
(#243)
There is a new helper on the block: when()
. It's a pinch of syntactic sugar for conditionals, so your config won't be cluttered with ternary operators.
module.exports = createConfig([
when(process.env.CI, [reportBuildStatsPlugin()])
])
New block eslint
(#254)
There is now an eslint
block and it's even part of the core packages.
const { createConfig } = require('@webpack-blocks/webpack')
const eslint = require('@webpack-blocks/eslint')
module.exports = createConfig([
eslint(/* eslint options */)
])
Removed proxy()
from dev-server
block (#251)
We trimmed down the dev-server
block a little more. But don't worry, it's still easy as cake to set up a proxy server using the dev-server
block:
module.exports = createConfig([
// use only if `NODE_ENV === 'development'`:
env('development', [
devServer({
proxy: {
'/api': { target: 'http://localhost:3000' },
},
}),
])
])
Changes since v1.0 beta
Have a look at the v1.0.0-rc release notes.
Changes since v0.4
Have a look at the v1.0.0-beta release notes and read the migration guide.
This is it. A big shout out to the contributors!
Especially @vlad-zhukov, @marcofugaro, @boxfoot, @dmitmel and @sapegin this time 😊