Node.js 被分叉出一个项目 — Ayo.js,肿么了
(注:ayo.js叉从Node.js。目前,大量的文档仍然指向Node.js库。)
ayo.js是一个JavaScript运行时建立在Chrome的V8 JavaScript引擎。ayo.js使用事件驱动的,非阻塞I/O模型,使其轻量化和高效。生态系统的ayo.js包,NPM,是世界上最大的生态系统的开放源代码库。
贡献、策略和发布是在一个开放的治理模型下管理的。
这个项目受到行为准则的约束。
https://github.com/ayojs/ayo
Ayo(发音为“eye-oh”或 IO)是当前流行的 JavaScript 运行时 Node.js 的一个分支。它的创建是由于 Node.js 项目内部发生了一个关于“行为准则(Code of Conduct)”的问题。
Node.js 项目的一个委员会(TSC)就是否应该允许一名 Node.js 项目的开发者继续为项目工作进行了投票,投票结果是 60% 持赞成的态度。之所以进行投票,是因为这名开发者存在一些违反“行为准则”的行为。事实上,本次投票意味着他们对这个“行为准则”十分重视。
不幸的是,正如推特用户 maybekatz 所指出的那样,如果委员会成员投票赞成让开发者继续为项目工作,这使得“行为准则”看起来没有执行力。
而且现在由于“行为准则”的执行力不足,不仅造成了 Node.js 的分叉,还导致一名 Node.js 委员会成员在 TSC(技术指导委员会)上辞去自己的职务。
下面是这位选择辞职的开发者所说的内容:
TSC 最近的一项决定让我认为技术指导委员会正在做出不符合 Node.js 项目最大利益的决策。这并不只是关乎某个具体的个人的问题,作为一个项目和我们承担的责任,这还是一个关乎着我们所选择的向众人展示的价值观的问题。
TSC 对该项目拥有最终的权力,包括:
技术方向
项目的治理与流程(包括本条细则)
贡献细则
GitHub 仓库托管
行为准则
维护附加协作者的列表
当前的决定破坏了我们的“行为准则”,在我看来,这不但驱走了潜在的贡献者,还破坏了委员会的治理能力。
驱走开源项目的贡献者在开源世界中可能是致命的举动,要知道,大多数开发者基本上都是利用他们的空闲时间来志愿为项目贡献。无论是为小项目,还是诸如 Node.js 这样的大项目吸引贡献者都是十分困难的事,所以我们需要注意让所有贡献者都感到愉悦。
开源项目应该采用“行为准则”,因为它可以使得贡献者在为项目贡献的过程中感到安全,可以增加他们提交补丁时的勇气。贡献者刚加入一个项目时,可能对项目会有点“怕生”的心理,不过“行为准则”可以帮助解决这种情况。引入一个“贡献”文档 —— 解释如何为项目贡献以及从哪开始,这也是一个好主意。其实,任何能让大众轻松为开源项目贡献的事都是好事。
2017 年 8 月 23 日上午 11:26 更新:ayo.js 在 github 上讨论管理架构和项目目标等多个问题。
其中一个关于是否重新合并回 Node.js 的 issue,得票最高的回复如下:
我只是希望错误能被修复。我不在乎这个项目叫什么或者谁在控制它,只要它还为社区服务,它就值得大家努力推动。
译自:https://sourcecontribute.com/