io.js 技术委员会已经投票决定加入即将成立的 Node 基金会。该项目将命名为 Node.js,但会基于 io.js 代码库。
几个月前,Node.js 产生了一个分支,新项目名为 io.js,第一个版本1.0 在2015 年1 月初发布。虽然 Node.js 先前也产生过分支,但这次不同:多名 Node.js 顶级贡献者离开,开始向 io.js 提交 pull 请求。社区分裂了。 2014 年,Node.js 的提交数量不断下降,2015 年这一趋势还在延续。除了这样一个事实外,导致这个分支出现的最主要的原因是治理:部分贡献者不愿意看到Node.js 掌控在任意一家特定公司的手中,对代码的每一项改进都不得不说服项目负责人接受。
io.js 开始时的目标是“更快且可预见的发布周期”,并在一个“开放式治理模型”下将“最新的语言、API 和性能改进合并到 V8”。他们 1 月份发布了 1.0 版本,并且很快就达到了 2.0 版本。版本编号方案可能并不能说明很多问题,但提交数量可以:与 Node.js 相比,io.js 项目活跃度一直在增加,1 月份达到了一个峰值,并且比以往任何峰值都要高。
但是,io.js 的未来并不清晰,一些社区成员还不确定是否要涉足这一新项目:
Benjamin Lupton:这是 io.js 的问题所在。这是一个长期的东西,还是一个短期的东西?没有人知道答案。
Yuri Soloviov:我最担心的是,N 个分支意味着 N 次重复劳动,那会降低所有人的效率
尽管如此,io.js 还是每周发布新版本,并且 Uber、 MongoDB 、 Microsoft Azure 等等都开始支持它。
Joyent 立即做出了回应,并在二月份宣布了创建一个由技术指导委员会(TSC)领导的 Node 基金会的计划。该计划得到了 IBM、PayPal、微软和 Linux 基金会的支持。该基金会将解决 io.js 提交者所说的领导权问题。Joyent 首席执行官 Scott Hammond邀请 io.js 技术委员会(TC)成员参加了一个私人会议,建议他们将 io.js 合并回来。经过数月的讨论,io.js 技术委员会成员已于本周投票加入新的基金会。
据 io.js 方面消息,这两个项目将合并到 Node 基金会下,使用 Node.js 的名字,以 io.js 代码库为基础,并暂时由“Node.js 和 io.js 核心技术团队联合监督”运营。
在最近的一片博文中,Hammond 阐述了他的观点:
基金会面临的最大也是最明显的挑战是设法解决存在于 Node.js 社区部分开发者之间的争执。过去,领导者运营项目相当严格,只有少数核心开发者基于 BDFL 模型开展工作。新人加入项目非常困难,对于这样一个多样化、充满热情的社区而言,没有足够的透明度让人们产生归属感。结果,一组希望基于一个更加开放的治理模型运营项目的开发者创建了 io.js 分支。那个团队做的很好,创新了治理和参与模型,Node.js 基金会模型将基于这些策略,确保将来的 Node.js 有 更广泛的社区参与……
重新统一 Node.js 开发者社区仍然是基金会的一个重要目标。
Mike Dolan 是 Linux 基金会战略规划部门的负责人,他为 Joyent 和 io.js 技术委员会的讨论提供了帮助。他最近评论说,当一种“技术和社区达到了一定的成熟度水平,使用范围超出了一个公司或项目时,基金会就会成为项目继续发展的一个关键推动者,”但他补充说,一个“开放式治理模型并不能保证项目成功或发展。比如,io.js 项目有一个强大的开发者社区,但进一步发展需要一个模型可以促成项目的筹资和投资。”此外,他建议双方完善治理文档,举行理事会和技术指导委员会选举,并在5 月底或6 月初宣布Node 基金会及其成员。
评论