开源项目遭“夺权”,原核心维护者全被踢出局后怒批:这是一次恶意接管!

整理 | 屠敏

出品 | CSDN(ID:CSDNnews)

有人的地方就有江湖,开源世界也并不例外。

最近,一位长期参与开源项目的开发者愤怒指责,称自己深度维护了十多年的项目遭到了“恶意接管”,自己落了个被「踢出局」的下场。随后,这个项目被一家非营利公司的开源总监接手了,其还大刀阔斧地移除了所有其他维护者,可谓一点情面也没留。

几天后,这些“移除”操作大部分被撤销,而这家组织的开源总监却轻描淡写地称这只是一次“错误”。令人没想到的是,他隔了几天又再次将所有维护者从 GitHub 组织中移除,给的理由是以安全之名。

如此儿戏般的剧情,目前正在主流编程语言 Ruby 社区上演,由此也引发了巨大的争议,其中 Apache CouchDB 的开发者、Relaxed 公司的创始人之一 Jan Lehnardt 在 Mastodon 上质问道:“Ruby 到底发生了什么鬼事情?”

“惨遭踢出局”的开源维护者

归根结底,这其实是一场关于开源项目管理权的问题,具体源头还得从 RubyGems 和 Bundler 这两款工具说起。

RubyGems 是 Ruby 的标准包管理器, Bundler 则是依赖管理器,它由非营利组织 Ruby Central 赞助。不过,多年来,这些工具由包括 Ellen Dash 和 André Arko 在内的专业团队维护,他们投入了无数小时而未获得正式报酬。

不久前,身为 RubyGems 项目中非常重要的长期维护者之一,Ellen Dash(网名 duckinator)发布了一份 PDF,算是实名举报 Ruby Central 组织无故删除了所有维护者的权限,寒了所有人的心。

https://pup-e.com/goodbye-rubygems.pdf

据 Ellen Dash 描述,9 月 9 日那天,一位 RubyGems 维护者在没有给出解释的情况下,单方面的做出了一些调整,具体包括:

面对这种突发的变化,Ellen Dash 感到十分不解,毕竟自己从 13 岁开始就已经是 Ruby 社区的一员、同时成为 RubyGems 维护者也有十年之久了,为什么在没有任何通知的情况下,就丧失了项目提交的权限?

为此,她与这位实施操作的 RubyGems 维护者据理力争。

起初,这名 RubyGems 维护者拒绝撤销这些更改,并称需要 Marty Haught 的同意才可以。

六天后,这位维护者又出面表示已经与 Marty Haught 沟通好了,之前这些更改大部分被撤销。而且,代为转述说——Marty Haught 称移除维护者是个“永远不该发生的错误”。但事件中不变的是,Haught 自己仍保留了对 GitHub Enterprise 的所有权。

如果说之前的操作是一次“失误”,那么后续的举措则让人颇为无语。

因为在 9 月 18 日,Marty Haught 再次在没有解释的情况下,撤销了所有 RubyGems、Bundler 以及 RubyGems.org 维护团队管理员的 GitHub 组织成员权限。

通过这样做,他控制了 Ruby Central 以及其他全职员工。

“我不会拐弯抹角的说话:这其实就是一次强硬接管。”Ellen Dash 吐槽道。同时,她也分享了对此事的立场:

我认为 Ruby Central 的行为对整个 Ruby 社区构成威胁。

强行移除那些维护 RubyGems 和 Bundler 超过十年的开发者,本质上就是一种敌意行为。Ruby Central 的做法已经越过了底线。

在被指出问题后,这些变动大部分被撤销。然而,他们又再次重复了同样的行为。

在被点名批评后仍然第二次越界,Ruby Central 已经向我明确表明,他们并没有以善意行事。

Ruby Central 的行为迫使我不得不采取行动。我不能袖手旁观,必须发声。

因此,我决定立即辞去在 Ruby Central 的职务。

为消除任何疑问:Ruby Central 在没有任何解释的情况下,单方面撤销了我以及整个 RubyGems 团队的所有访问权限,这完全违背了我们的意愿。

Ruby 非营利组织:此举是为了安全起见、加强管理

简单来看,这其实就是负责 Ruby 核心工具的非营利组织 Ruby Central,在没有征求长期维护者同意的情况下,接管了 RubyGems 和 Bundler 这两个关键项目,长期贡献者因此被迫退出。

随着事情的发酵,9 月 19 日,Ruby Central 在官方发布了一则《加强 RubyGems 和 Bundler 的管理》的声明,解释其采取行动的原因:

作为该基础设施的非营利管理机构,Ruby Central 负有维护供应链和生态系统长期稳定的受托责任。在咨询法律顾问并进行最近的安全审计后,我们正在加强治理流程,正式制定运营商协议,并加强对生产系统的访问。今后,只有 Ruby Central 雇佣或签约的工程师才能拥有 RubyGems.org 服务的管理权限。

Ruby Central 同时指出,软件供应链攻击的风险迫使其“必须采取主动措施来全方位保护 Ruby gem 生态系统”。

Ruby Central 董事会成员、Vestmark 公司 CTO Freedom Dumlao 也在博客上进一步地做了解释了:

「Ruby Central 长期以来一直负责 RubyGems 和 Bundler,这并不是新情况。

过去几个月里,安全问题越来越频繁地浮出水面。大大小小的公司因为本可避免的供应链攻击而付出了代价,因此它们开始审视供应链的其他环节,包括 RubyGems 和 Bundler。其中一些公司专门付费给 Ruby Central,以确保供应链这一部分的安全和稳定,但却发现一些没有任何正式关系或协议的人,仍然拥有关键基础设施的最高权限。

这并不是 Ruby Central 没有尝试改进 Bundler 和 RubyGems 管理模式的故事。事实上,这两个工具的历史可以追溯到 Ruby Central 负责它们之前的很久以前。有些人早年拥有提交(commit)权限,即便多年不再需要,也依然保留了这些权限。这一直是一个小问题,但从未成为严重隐患。

在我看来,提出的解决方案很常识化:和那些真正需要访问权限的人签订提交者协议(就像其他许多知名开源项目一样),撤销不再需要访问的人权限,同时仍然完全开放接受 Pull Request,如果他们未来希望重新成为提交者,也可以重新欢迎他们加入。

但问题来了:如何告诉一个长期拥有关键基础设施提交和管理员权限的人,“你不再需要这些权限,我需要撤销它”,又不让对方生气?如果其他仍需要访问的人说:“如果你撤销了他们的权限,我自己会加回来”或者“如果你撤销了他们的权限,我就退出”,该怎么办?这些都是情绪化的对话。我并没有参与,也无法对这些对话的具体内容或处理方式发表评论。

但这正是董事会必须面对的信息。」

社区、维护者的愤怒回应

不过,这一声明并未得到开发者的广泛认同。许多 Ruby 开发者在社交媒体和博客上表达了对 Ruby Central 举措的失望,甚至愤怒,并猜测——“Ruby Central 在一些企业赞助者的影响下,撤销了关键贡献者的管理权限,并安排了新的领导层。”

“所谓的‘受托责任’,简直是把‘我们从一个敌意捐助者那里拿了几百万美元换取对 RubyGems 基础设施的控制权’美化了一下。”一位芝加哥开发者 Sam Stephenson 在 Mastodon 上写道。

另一位网友 Mike Perham 同样认为 Ruby Central 的举动是越界。

他表示:“Ruby Central 并不拥有 RubyGems 源代码的版权,而且该仓库在 Ruby Central 出现之前就已经存在。Ruby Central 的角色是管理 rubygems.org 的基础设施,并支付 RubyGems 持续维护的费用。RC(Ruby Central)并不能决定谁是维护者、谁能加入维护团队。这和所有开源项目一样,一直以来都是团队的决定。”

他补充说,Ruby Central 需要向社区提供更多信息。

“在你们告诉我们赞助商是谁、他们的要求是什么之前,我们只能猜测真正的原因。这件事必须被公开。”他说道。“rubygems/rubygems 一直不在 Ruby Central 的控制之下,直到 hsbt 单方面移除了整个现有团队,并把 Marty [Haught] 加为管理员,没有讨论、没有透明。这是一次非法的夺权行为。这种事本应通过公开流程,而不是私下交易。”

Homebrew(macOS 包管理器,使用 Ruby 编写)项目负责人 Mike McQuaid 曾提出调解 Ruby Central 与 RubyGems 维护者之间的矛盾,但未能成功。他在 Bluesky 上表示:“Ruby Central 对此处理得非常糟糕……甚至错误地移除了 RubyGems 组织中最活跃的成员,而该成员拒绝回归。”

对此,揭露此事的维护者 Ellen Dash 回复他的评论时写道:“我没看到阻止事态恶化的办法,所以我选择退出,并把我看到的事情记录下来。我把自己三分之一的人生都给了这个项目,最后却要解释说我失败了。这种痛苦根本无法形容。”

截至目前,紧随 Ellen Dash 之后,另一名核心维护者 André Arko 也在博客中告别社区,称对失去社区驱动的控制权感到遗憾。越来越多的维护者坦言自己突然被“抛弃”。

随着核心维护者离开,新的管理团队需要证明自身能力,而社区也在密切关注。此次事件提醒所有开源项目:如何在专业管理与社区自治之间找到平衡,是未来开源治理必须面对的问题。

对于 Ruby Central 的此举,你怎么看待?

参考:

https://pup-e.com/goodbye-rubygems.pdf

https://www.theregister.com/2025/09/22/ruby_central_rubygems/

https://thenewstack.io/open-source-turmoil-rubygems-maintainers-kicked-off-github/

展开阅读全文

更新时间:2025-09-25

标签:科技   维护者   恶意   核心   项目   权限   开发者   组织   社区   团队   基础设施   管理器   成员

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020- All Rights Reserved. Powered By 71396.com 闽ICP备11008920号
闽公网安备35020302034903号

Top