gatsby
5.16.1 · 10 Feb 2026MIT252.9k / weekRepositoryHomepagenpmAtom feed
0.12.48 is the newest release of 0.11.x.
In short
8 breaking
- breaking
post-build.jsmoved insidegatsby-node.js. If you had added apost-build.jsmodule to your code, this function should now be exported fromgatsby-node.js. A simple way to make the change is to simply requirepost-build.jsthere e.g.exports.postBuild = require('./post-build'). Thanks to @LukeSheard for this! #273 - breaking
The "stages" were renamed. If you override Webpack configs and are switching behavior based on the stage,
staticis split into two stages,build-cssandbuild-htmlandproductionis nowbuild-javascript. We think these are much more sensible names. Thanks to @scottnonnenberg for the this! #253 - breaking
User can override the
.babelrcpassed to webpack. - breaking
User can use whatever babel plugins they want.
- breaking
User babel config is extended with
react-hmrerather than being overwritten in develop.js. - breaking
Object.assign is now polyfilled by default.
- breaking
Non breaking change as starters previously required a babelrc and gatsby will just read them as normal.
- breaking
Fixes three issues #129, #235, #264
Security
1 advisory affects 0.11.0; 4.25.7 fixes them
- ModerateGatsby develop server has Local File Inclusion vulnerabilityGHSA-c6f8-8r25-c4gc · 9 Jun 2023Fixed in 4.25.7
Release note
The headliner of this release is you can now inline CSS in the <head> of your site. This is a best practice recommended by Google's AMP project among others as you then avoid additional requests which can signifcantly slow down your site. Testing using webpagetest.org showed that moving css inline improved the Speed Index 20-50%!! In one test on a simulated 3G connection, the time to initial render went from ~1.8 seconds to ~1 second.
It's a very simple switch to make. See this commit in the default starter 1faecb5 It's also documented at github.com/gatsbyjs/gatsby
Breaking changes
- breaking
post-build.jsmoved insidegatsby-node.js. If you had added apost-build.jsmodule to your code, this function should now be exported fromgatsby-node.js. A simple way to make the change is to simply requirepost-build.jsthere e.g.exports.postBuild = require('./post-build'). Thanks to @LukeSheard for this! #273 - breaking
The "stages" were renamed. If you override Webpack configs and are switching behavior based on the stage,
staticis split into two stages,build-cssandbuild-htmlandproductionis nowbuild-javascript. We think these are much more sensible names. Thanks to @scottnonnenberg for the this! #253
Other notable non-breaking changes
@benstepp did a deep refactor of how we're loading Babel plugins. There shouldn't be any breaking changes but it fixes a number of bugs #279
Some highlights:
- breaking
User can override the
.babelrcpassed to webpack. - breaking
User can use whatever babel plugins they want.
- breaking
User babel config is extended with
react-hmrerather than being overwritten in develop.js. - breaking
Object.assign is now polyfilled by default.
- breaking
Non breaking change as starters previously required a babelrc and gatsby will just read them as normal.
- breaking