From Fedora Project Wiki

io.js Technology Preview

Summary

io.js is an npm compatible platform originally based on Node.js™ that supports version 6 of the ECMAScript standard and additional features, developed with an open governance model. io.js will be offered as an optional replacement for /usr/bin/node on Fedora systems as a Technology Preview. node.js will remain the default implementation of /usr/bin/node in Fedora 23.

Owner

Current status

Detailed Description

io.js is an npm compatible platform originally based on Node.js™ that supports version 6 of the ECMAScript standard and additional features, developed with an open governance model. For more information about io.js and the differences between node.js, visit the io.js website.

io.js will support the same set of binary modules currently supported by node.js on Fedora. It is expected to be obsoleted by a future version of the nodejs package, as these two projects have announced their intention to merge.

We will support both parallel-installation of the iojs interpreter alongside the existing node.js interpreter, and permit replacement of /usr/bin/node with io.js in an additional package. All existing noarch nodejs-* packages will work with both interpreters. (Though obviously you'll have to specify iojs if you haven't installed it the /usr/bin/node support package.) Seperate nodejs-* and iojs-* will be provided for binary modules.

Benefit to Fedora

Node.js developers can take advantage of new features in ECMAScript 6 and those developed by the io.js community.

Scope

  • Proposal owners:
    • Package and build a special v8 package for io.js only.
    • Package and build iojs
    • Update nodejs guidelines for multiple interpreters
    • Rebuild modules with above changes
    • Anything that needs updates for Node.js 0.12 will need it for io.js too.
  • Other developers:
    • Anything that needs updates for Node.js 0.12 will need it for io.js too.
  • Release engineering: N/A (not a System Wide Change)
  • Policies and guidelines:
    • Updates to the node.js guidelines and packaging infrastructure to permit building binary modules for multiple interpreters will be necessary. (These are also necessary to allow for a nodejs010/nodejs012 split in EPEL, so will get done anyway.)
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

None needed, this is new software. Users upgrading existing installations using node.js will continue to get the original implementation of Node.js.

How To Test

Try it out instead of node.js.

User Experience

io.js is a drop-in replacement for Node.js.

Dependencies

Any packages and third-party software that require updating to work with Node.js 0.12 will also need updating to work with io.js.

Contingency Plan

None needed; if everything isn't done in time we simply won't ship this software.

Documentation

Release Notes

Fedora 23 features io.js as a Technology Preview. io.js is an npm compatible platform originally based on Node.js™ that supports version 6 of the ECMAScript standard and additional features, developed with an open governance model. io.js will be offered as an optional replacement for /usr/bin/node on Fedora systems.