io.js 是从 Node.js 克隆出的一个分支,于本月初正式启动,并且计划在 2015 年 1 月发布第一个版本。
Fedor Indutny 是 Node 的核心开发人员,他和 Node 社区的一些核心成员对 Joyent 管理层以及 Node 过少的版本发布心存不满,因此创建了 io.js。Fedor 还得到了社区中其它一些成员的支持,包括 Trevor Norris,Isaac Z.Schlueter,以及 NodeConf 的组织者 Mikeal Rogers。
Io.js 在其 Github 主页上这样介绍:“始自于 joyent/node 的克隆。开源贡献,版本发布以及所有参与者都将通过开放的管理模式来管理”。针对所指出的Joyent 在Node.js 上的管理问题,io.js 已经开始改进:将提高release 的频率,并且兼容现有的为Node.js 所构建的npm 生态系统。
作为一个全新的克隆分支,io.js 和Node.js 现在还基本没有区别。不过Rogers 在关于最初release 的一个帖子中说到,技术委员会已经承诺每周一次的release,并且将以最快的速度去采用新版的v8 引擎。若如 Rogers 所述,io.js 将可以保证在第一版发布时和现在大有不同。
Node Forward 是一个任何人都可以参与“改进 Node,JavaScript 以及它们的生态系统”的社区,通过开放合作的方式来运行。它也已经将工作从 Node 完全转移到 io.js,如果有人想通过其去为 Node 工作,现在都被强制定向到 io.js。
Schuetler 在一篇 FAQ 的博客中澄清,无论 Node Forward 还是 io.js 都不是为了和 Node.js 竞争,他说道:
io.js 是和 Joyent 或者 Node.js 竞争吗?不是,io.js 的目的是提供一个空间让 Node 核心团队可以继续改进 Node。
io.js 让 Node Forward 的努力得以继续。我们承诺去制造进展以及继续服务于 Node.js 社区,无论是技术问题还是非技术问题。
为了打消人们对潜在的“碎片化”问题的担忧,Rogers 写了一篇同名博客《碎片化》:看上去这种担忧很合理,但是却没有必要。
为什么没有必要担忧此问题,Rogers 说一部分是因为 io.js“将能够吸引比 Node.js 更多的活跃贡献者”,原因在于 io.js 项目是由一个透明的技术委员会所拥有,而不是某一家公司。另外,“git 和 Github 使得项目间的合并相对容易,而且 Joyent 丢弃了 CLA(贡献者许可协议),两个项目之间的代码将随时可以被合并。”
如果说 Node.js 对此有什么反应,那么其周五发布的这篇博客文章可以看做一个直接的回应:
在过去的一个月中我们在开放管理模式上取得了重要进展,包括 API 标准、知识产权管理以及透明度问题,这可以确保整个项目是由社区驱动的。我们所做的这些努力无疑是为了解决矛盾,以及能够和整个社区共同前进。有一点很重要,我们理解质疑的声音和挫折,我们需要一起来营造更好的生态系统。我们一定会努力做到。
无论对于创新性的项目还是商业目的,Node.js 依然是大家所信赖的平台。我们即将发布 v0.12 版本,并且项目组已经在开始讨论下一个 release。
查看英文原文: Io.js, Node.js Fork, Plans First Release for January 2015
感谢崔康对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。
评论