当每周维护2600万次下载的lib的维护者入狱时会发生什么?

2021-01-29 16:16:11

2019年11月,流行的core-js库的维护者Denis Pushkarev败诉,要求推翻因驾驶摩托车撞向两名行人而被判处18个月徒刑,杀死其中一名行人。

结果,他预计将无法更新core-js,这种情况使项目贡献者和其他开发人员都担心他的代码库的命运。

Core-js是" JavaScript的模块化标准库,"意味着它提供了大量功能来执行常见的有用操作。通常用于" polyfills" –在性能较差的旧版浏览器中实现现代浏览器功能–通过npm注册表每周下载超过2600万次,并被包括Apple在内的主要公司广泛使用。现在它的未来是不确定的。

普斯赫卡列夫(Pushkarev)在GitHub上被称为zloirock,他提到他可能会在去年5月陷入讨论中,讨论增加安装后广告来为一个项目使用而产生的收入,而这种项目使用很多,却很少为之付费。他预计自己可能需要支付与摩托车事故有关的法律或医疗费用。

在那个线程中,开发人员Nathan Dobrowolski问,"如果您在监狱中,那么谁来维护[core-js]?

普什卡列夫没有提供任何答案。自从他于去年10月被定罪以来,解决该问题的需要已经超出了理论范围。

2月开始的讨论线程询问core-js是否可以在缺少项目主要维护者Pushkarev的情况下生存下来。迄今为止,只有Pushkarev发布了官方版本,最后一次发布是在2020年1月13日。

庞大的开放源代码普查:揭示了最常用的库–开发人员应采取10项措施来保护其代码安全

阅读更多

至少有一个其他项目贡献者(与GitHub帐户slowcheetah相关联的个人)具有" collaborator"状态-基本上是写权限-并声称能够发布更新。但是尚不清楚此人的管理是否足以维持对该项目的信心。

另一个名为jsrsasign的JavaScript密码库也面临类似的挑战:其维护者Kenji Urushima自2018年4月以来一直没有活跃。使用该软件的程序员表示担心缺乏通讯和未解决的漏洞,指出350 npm项目取决于该库,其中包括Microsoft和Mozilla的一些库。

core-js和jsrsasign所面临的情况凸显了流行的开源项目所面临的许多挑战,尤其是那些使用量在不改变治理的情况下增长的项目。参与讨论的一位编码人员询问,如此广泛使用的项目可以由一个人而不是一个基金会来掌控。

如果core-js处于休眠状态,则可能不会像2016年的左手事件那样造成太多麻烦。一切不会突然中断,开发人员将有时间修改相关代码。但是,过渡计划可能有所帮助。

GitHub社区与安全高级产品经理Ben Balter在给The Register的电子邮件中说,在项目维护者不响应的情况下,该公司将继续考虑回购所有权的转移。 "在一种首选情况下,我们希望确保提前主动缓解问题,"他说。

"我们鼓励维护人员将热门项目从他们的个人帐户转移到组织中。 除了获得高级社区管理功能的权限外,至少添加一个其他维护者作为共同所有者,即使没有一个维护者,也可以确保项目继续进行。" 他补充说,维护者可以通过将GitHub状态设置为" away,"来表示他们打算退出项目。 让参与者知道在此期间他们将不会做出回应。 巴尔特说,GitHub拥有在生病时转移帐户所有权的流程,适用于亲戚,合作者,同事和业务合作伙伴。 他说,分叉休眠的回购也是一种选择,并指出GitHub如果接管了该项目的规范资源,则有可能重新定位它。 ® 注册-技术社区的独立新闻和观点。 情境发布的一部分