With the recent release of Node.js 4.0 (yay!), it’s now time to look at dropping support for Node.js 0.8. Node.js 0.8 is now 3 years old and has been superceded by 0.10, 0.12 and now 4.0 when it comes to stable builds of Node.js. At Nimble Ape we still supported 0.8 in all our modules that we contribute to; until now.
The io.js project did awesome things for Node but let’s not get into that - all we need to know is that we have new versions of libuv, v8, ES6, awesome new APIs within Node and huge speed improvements ready for the userland. It used to be that the Node.js community would wait a few patch versions before really getting behind a new stable version of Node, but that’s all changed; Eran Hammer and the Hapi.js team have already pushed to support Node 4.0.
There was a 'Not Found' error fetching URL: 'https://twitter.com/rvagg/status/642142539856801792'
It’s time to drop 0.8 support. So go forth and remove 0.8 from your codeship configurations and your .travis.yml files. You should also probably update the
engines field in package.json too. But there’s another important step to follow. If your module supports 0.8 publicly today, and you remove that support by removing your tests being run against that version, you need to bump the major version of your module; it’s easy.
npm version major npm publish
This is exactly what the hapi.js team did. No code was changed. The key thing here is you are no longer actively checking that your module works with a particular version of Node; that’s a breaking change. You will break your module on 0.8 sometime soon; be it in a day or a month or a year, you won’t know!
So go and help your friends, your colleagues and the community that use your module and follow the semver rules properly. We’ll be updating all the modules we contribute to over the coming days to add Node 4.0 and drop Node 0.8 from our automated testing; as well as bumping the major version.
Lastly, go have fun and make awesome new things with Node 4.0; it’s an exciting time to be involved in Node!