io.js Joins the Node.js Foundation

2015-05-20 17:15:23 +0100 by Alex R. Young

When io.js got started there were those that saw it as the "new Node", a more aggressively developed fork that quickly implemented features that were lacking from 0.11 and 0.12. And the lack of the mystical Node.js 1.0 in 2014 certainly encouraged that kind of attitude. We were waiting for an updated V8 with the ES6 features that we wanted and more mature core modules, but what we got was leadership changes and talk of a "foundation".

A week ago the io.js Technical Committee met and voted to merge with Node under the Node.js Foundation. This is summarised in the May 13th Technical Committee meeting notes:

Voting Question: The io.js TC agrees to:

  1. have the io.js project join the Node Foundation

  2. rename the entire "iojs" GitHub org to be "nodejs"

  3. invite the the current Node.js TC on to our TC to form the basis of a Node Foundation TSC under the policies of the Node Foundation

  4. moving the io.js Working Groups to be under the Node Foundation

Mikeal Rogers wrote a post about why io.js needs a foundation, which includes some background about why io.js forked from Node, what it achieved, and what needs to happen next:

However, without a legal entity to own property it means that various io.js assets are in reality owned by individuals and companies. The domain name is owned by Fedor, the billing contact for the GitHub org is Colin, the keys used for signing the releases are owned by NodeSource, etc. With all the current owners acting in good faith this ownership isn’t an immediate problem, just as it wasn’t a problem for node.js in 2012, but the more successful we are the worse it could be, so this is something that keeps me up at night.

There's also a GitHub issue about this with a lot of positive support from the community. Later on, Mike Dolan (Director of Strategic Programs at The Linux Foundation) summarised the io.js merge on the official Node blog in Node.js and io.js leaders are building an open, neutral Node.js Foundation to support the future of the platform:

Most recently the io.js TC voted to join in the Foundation effort and planning is already underway to begin the process of converging the codebases.

It sounds like everyone is doing the right thing: Node has shifted to an open model with support from the Linux Foundation, and io.js has recognised the need to seek a more formal management model.

The next steps from a technical perspective will be difficult: merging commits from io.js won't be trivial, and even resolving details like moving GitHub issues will take time.

I expect the merged Node.js will not be a 0.12 release, and from the io.js commits I've been watching over the last few months there may be some small backwards compatibility issues, but hopefully this brings us closer to a Node that can keep up with modern JavaScript. It seems like we're finally seeing a Node with the right kind of management and technical progress that we expected from the heady success of earlier releases.