Today is a major milestone in Node history and the Node.js / io.js reconciliation process. You no longer have to guess and choose the right path forward. It is now official: io.js is Node.js and Node v4.0.0 is here!
This version represents the end result of countless hours merging and unifying the separate codebases. Many people were involved in this tremendous effort. The community now operates under an open governance structure stewarded by the Node.js Foundation as part of the Linux Foundation.
Why no Node v1.0.0? Because io.js already had a v1.0.0 and reached v3.3.0 with its latest release. To avoid confusion, the decision was made to release the merged codebase as Node v4.0.0.
There are lots of great updates, but highlights include the fact that Node is now shipping with the same version of V8 that ships with Chrome, and this includes first class support for a bunch of ES6 features now enabled by default, such as block scoping, classes, typed arrays (Node's Buffer backed by Uint8Array), generators, Promises, Symbols, template strings, collections (Map, Set, etc.) and, new to V8 v4.5, arrow functions!
Node.js v4 comes with a plan for long-term support (LTS) and a regular release cycle, and now formally follows semantic versioning (SemVer) rules. Semantic versioning conveys specific meaning about release compatibility, which makes upgrade decisions clearer for developers.
The Node.js Foundation elected leadership to help accelerate growth of the platform. You can read more here, but I'd like to a special shout-out for Rod Vagg and Mikeal Rogers who have both been tireless in their respective efforts. Mikeal's appointment as the official (and salaried) community manager is well-deserved.
You can download the latest version of Node.js from — where else, but the official Node.js website: nodejs.org!