1 ポイント 投稿者 GN⁺ 2025-09-24 | 2件のコメント | WhatsAppで共有
  • Ruby Central が Bundler や RubyGems などのオープンソースプロジェクトを、既存の メンテナーの同意なく接収
  • 主な背景には Shopify の財政的圧力 と Ruby Central の資金難があり、その過程で特定のメンテナーがプロジェクトから排除された
  • GitHub リポジトリおよび gem の所有権の強制移転 が非公開で進められ、コミュニティに混乱と反発が発生
  • Ruby Central と Shopify は セキュリティおよびインフラ責任の強調 によって正当化したが、本質は実際の所有権問題とコミュニティの信頼危機にある
  • 一部の既存メンテナーは 競合プロジェクト Spinel と rv の開発 に注力し、新たな Ruby エコシステムへの対応を模索中

概要

Ruby Central は最近、Bundler や RubyGems など主要なオープンソースプロジェクト の所有権および管理権を、既存メンテナーの同意なしに一方的に接収した。この過程には Shopify の財政的圧力、Ruby Central の資金難、主要メンテナーの排除、そしてコミュニティの混乱が絡み合っている。

主な出来事の要約

  • Ruby Central は 財政的困難 に直面しており、Sidekiq が RailsConf での DHH 招待を理由に年間 250,000 ドルの支援を撤回
  • その結果、Ruby Central は Shopify に大きく依存 するようになった
  • Shopify は Ruby Central に対し、GitHub リポジトリおよび Bundler、rubygems-update gem の所有権の全面接収 を要求し、応じなければ支援撤回を示唆して圧力をかけた
  • 接収の過程で主要メンテナー(特に André Arko)が排除され、コミュニティの同意なしに強制転換が行われた
  • 事件の進行と内部協議の過程は対外的に迅速かつ非公開で処理され、多くの主要なコミュニティ関係者が排除された

Bundler および RubyGems 接収の詳細な経緯

初期状況

  • 9 月 9 日、Hiroshi Shibata(HSBT)が RubyGems GitHub Enterprise の名前を「Ruby Central」に変更し、新たなオーナーとして Marty Haught を追加、既存メンテナーの権限の一部を剥奪
  • この措置が問題視されると一部の権限は復旧されたが、Marty のオーナー追加は取り消されなかった

所有権とサービス区分に関する議論

  • RubyGems のソースコードリポジトリは コミュニティ所有・管理 である
  • RubyGems Service は Ruby Central が別途運営する インフラサービス である
  • この 2 つの概念を明確に区別する必要があったにもかかわらず、Ruby Central はこれらを混同し、所有権主張の根拠として用いた
広告

権限剥奪と接収の実行

  • 9 月 18 日ごろ、既存メンテナーは再びアクセス権を失い、GitHub、Fastly、rubygems.org の各アカウントから排除された
  • Ruby Central 理事会は GitHub リポジトリおよび gem 所有権の強制接収を採決し、Marty が単独で実行した

Ruby Central の Shopify 依存の深まり

  • RailsConf で DHH を招待したことで既存支援(Sidekiq)を失い、財政構造が Shopify に集中
  • Rails World の期間中、Ruby Central、Rails Core、Shopify、GitHub などの主要人物・企業の間で長期支援の条件が協議され、その際に特定メンテナーの排除と所有権移転の条件が求められた
  • 理事会内部でも「他の選択肢は Ruby Central の閉鎖を始めるのと同じだった」という認識があった

接収の実行とコミュニティの反応

  • Ruby Central 理事会は Marty に即時の接収実行権限を付与し、Shopify はエンジニアを投入してオンコール体制を迅速に切り替えた
  • Ellen が最初にこの事実を公表した後、Ruby Central は「サプライチェーンセキュリティの強化」を名目とする公式声明を発表
  • 内部的にはセキュリティと人的信頼性の問題を強調したが、実際の本質は正当な所有権移転の手続きとコミュニティの合意形成の不足にあった

主な人物の発言と争点

  • DHH は Bundler/Gems 接収を支持するツイートを投稿したが、過去の WordPress におけるプラグイン強制接収事件では反対の立場を示しており、一貫性の欠如が指摘された
  • Ruby Central 理事会および一部関係者は、RubyGems.org のインフラ運用とソースコードリポジトリの所有権を混同する発言によって混乱を招いた
  • Shun Cureton らは、メンテナーとの協議が時間内に行えなかったため一時的な権限制限だったと説明した。しかし、一部の既存メンテナーに対する恒久的排除の可能性は高い
広告

Spinel と rv の登場

  • 既存の Bundler、RubyGems メンテナーだった André Arko、Samuel Giddins らは新たな協同組合 Spinel を設立し、新しい Ruby 管理ツール rv の開発 に着手
  • rv は gems、Ruby バージョン、依存関係、バイナリの事前パッケージ化など幅広い管理機能の統合を目指しており、既存の rvm、rbenv、bundler、rubygems など複数ツールの代替を志向する
  • Shopify および Rails Core の一部では、Spinel・rv を Ruby の中央集権化されたエコシステムに対する 潜在的脅威 と認識している

結論と懸念

  • Ruby Central が今後 Bundler、RubyGems の所有権をコミュニティに戻すかどうかは不確実
  • Ruby Central 理事会が結果と代替案を十分認識したうえで、同意なき強制接収を断行した点はコミュニティの信頼に深刻な打撃を与えた
  • Shopify など企業の圧力に脆弱なガバナンス構造への批判と、Spinel のような新たなコミュニティ代替案の必要性が提起されている

Disclosure

  • 著者は 2017〜2022 年に Shopify に在籍していた経歴がある

Disclaimer

  • 本要約は複数の利害関係者へのインタビューと議事録をもとに作成した、専門家ではない立場からの意見である。欠落や誤りがある可能性がある。

Changelog

  • 2025 年 9 月 23 日: Rails World 参加者の一部氏名を削除し、DHH の WordPress 関連引用を追加

2件のコメント

 
click 2025-09-24

結局、根本的な原因はDHHなんですか?

 
GN⁺ 2025-09-24
Hacker News のコメント
  • Sidekiq が Ruby Central への年間 250,000 ドルの支援を取り下げたという話にかなり驚いた。というのも、Sidekiq(実際には ContribSys)という会社は Mike Perham 一人で運営している 1 人会社だからだ。数年前のインタビューでは、Mike は従業員なしで年 1M ドルを稼いでおり、しかもサーバー運用も別途必要ない構造だった。最近の 2023年のポッドキャスト によると、今では年商 10M ドル近い収益を一人で上げているそうで、個人で起業した開発者としては本当に素晴らしい生き方だと思う
    • Mike は本当に立派な人で、コミュニティは彼がいるというだけでもとても幸運だ。支援額がいくらかは知らなかったが、寄付したことも取り下げたことも別に宣伝していない点から見ても、原則を大事にする人だと分かる
  • 経緯の説明はよくできているが、それでもなお「なぜ」こういうことが起きたのかがよく分からない。Shopify はこれまでも Ruby や Rails に多くの貢献や支援をしてきたので、以前は否定的には見ていなかった
    • コメントを読んでみても、なぜ Shopify がより大きな役割を担うことをそこまで恐れるのか分からない。長年 Ruby のコアコントリビューターだったし、今回の件での行動には同意しないものの、この記事から悪意ある意図を読み取るのは難しい
    • 善意、誤解、そしてコミュニケーション不足が複合的に重なったように見える。Shopify はサプライチェーン攻撃のリスクを減らし、ガバナンス改善のためにより良いアクセス制御を望んで期限まで設けた。パートタイムのメンテナーたちは最後まで先延ばしにし、その後、十分なコミュニケーションも合意もないまま影響力を行使して保守を引き継いだため、既存メンテナーが驚き、混乱がさらに大きくなった。競合ツールの問題や DHH を巡る論争が一部の強硬な行動に影響した可能性はあるが、この事件の直接原因ではない
    • 何行も読んで自分なりに推測すると、流れはこうだ。1) RubyGems の一部を制御していた人たちが DHH を排除しようとした 2) DHH 側に近い勢力がその人たちを RubyGems から追い出した 3) 全員がそれぞれ自分の行動を「良いエンジニアリング」の名目で正当化している。結局は『ゲーム・オブ・スローンズ』のように「勝つか、負けるか」の状況だ
    • DHH の態度の問題やサプライチェーンセキュリティへの懸念などを理由に資金提供を取り下げた団体もあると聞いた。Shopify は自分たちの中核依存関係のために直接動き、主導権を取ったのだろう
  • サプライチェーンセキュリティ強化という名目で RubyGems.org、RubyGems、Bundler の管理者アクセスを安全に管理すると主張していたが、実際には内部の分裂がそのまま望ましくない形で悪意あるサプライチェーン攻撃にまでつながりかねない状況だったと思う
    • 具体的にどんな悪意ある行為があったのか気になる。実際に悪意あるコードが挿入されたのかなど、事実関係を知りたい
  • ここまでよく整理された文章だとは思わなかった。Ruby コミュニティには以前から内部対立があったが、今回の件では信頼とつながりが壊れていく近視眼的な破壊が残念だ
    • もし今の Ruby が「自分自身を食い潰している状態」なら、これからもずっとそうやって食い潰し続けてほしい
    • なぜ「自分自身を食い潰す」状況になったのか気になる
    • Ruby コミュニティが初期から内部対立が激しかったという主張には同意しにくい。初期の Ruby コミュニティは素晴らしかった
    • 記事の内容がかなり散漫で、細部が過剰な箇所もあれば重要な内容が抜けている箇所もあり、全体の文脈を追うのが難しい。Ruby Central の一件が大きな混乱だったこと、そしてメンテナーたちがもっと良い扱いを受けるべきだったことには同意するが、著者がカルチャーウォーのような重要論点を調べていないのは残念だ
  • なぜ Samuel Giddins と André Arko が排除対象として名指しされたのか、何が問題だったのか気になる。記事を見る限り Shopify がそう望んだようにも見えるが、正確な理由を知りたい
    • 記事では関連する内容が こちら で説明されている
  • Ruby Central が RubyGems のコードリポジトリと gem を支配しようとしたという話が理解できない。Ruby Central が自分の GitHub に勝手に権限を行使できるような仕組みではないはずだが、もしかして Ruby Central のアカウントや組織アカウントの配下にあったのだろうか?
    • 文中でも明記されている通り、あるメンテナー(HSBT)が Marty を GitHub アカウントのオーナーとして招待しており、これは従来の合意なしに行われたことだ
    • 「9月9日、HSBT...」の部分では、既存の RubyGems メンテナーが新しいユーザーをオーナーとして追加し、その大半は元に戻された。しかし 1 人の新規ユーザーが RubyGems の GitHub 組織のオーナーとして残っていたため、その後 Ruby Central がいろいろできる状態になった
    • RubyGems 組織の名前が Ruby Central に変更されたと聞いている
  • GitHub 組織レベルのリスクが嫌なら、そもそもそういう構造に入らないのが賢明だと思う。たとえメンテナーが組織に入ったとしても、自分のリポジトリについては最終的に自分が完全な制御権を持ち、必要ならいつでも持ち出せる機能が GitHub にはぜひ必要だと感じる
  • 関連する最近の議論もある
  • Ruby Central はソースコードを所有しておらず、サービスだけを運営しているものだと思っていた。だとすると GitHub アカウントやリポジトリは誰が所有していたのか、誰が最初に作ったのか気になる
    • Ruby Central を作った人たちが初期の RubyGems も作っていたように記憶している(David Black、Chad Fowler など)。かなり昔の話なので、現在の論争とはあまり関係がないかもしれない
  • この一連の論争がうまく解決することを願う。Oracle が Sun Microsystems を買収したとき、コミュニティやメンテナーたちに与えた影響を思い出す