Skip to content

Commit 3beafae

Browse files
authored
Merge pull request #696 from ruby-oauth/feat/hostile
📝 link to documentation of RubyGems hostile takeover
2 parents 7e6b8f2 + 7b4029a commit 3beafae

49 files changed

Lines changed: 16529 additions & 196 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 7 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,3 @@
1-
| 📍 NOTE |
2-
|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|
3-
| RubyGems (the [GitHub org][rubygems-org], not the website) [suffered][draper-security] a [hostile takeover][ellen-takeover] in September 2025. |
4-
| Ultimately [4 maintainers][simi-removed] were [hard removed][martin-removed] and a reason has been given for only 1 of those, while 2 others resigned in protest. |
5-
| It is a [complicated story][draper-takeover] which is difficult to [parse quickly][draper-lies]. |
6-
| I'm adding notes like this to gems because I [don't condone theft][draper-theft] of repositories or gems from their rightful owners. |
7-
| If a similar theft happened with my repos/gems, I'd hope some would stand up for me. |
8-
| Disenfranchised former-maintainers have started [gem.coop][gem-coop]. |
9-
| Once available I will publish there exclusively; unless RubyCentral makes amends with the community. |
10-
| The ["Technology for Humans: Joel Draper"][reinteractive-podcast] podcast episode by [reinteractive][reinteractive] is the most cogent summary I'm aware of. |
11-
| See [here][gem-naming], [here][gem-coop] and [here][martin-ann] for more info on what comes next. |
12-
| What I'm doing: A (WIP) proposal for [bundler/gem scopes][gem-scopes], and a (WIP) proposal for a federated [gem server][gem-server]. |
13-
14-
[rubygems-org]: https://github.com/rubygems/
15-
[draper-security]: https://joel.drapper.me/p/ruby-central-security-measures/
16-
[draper-takeover]: https://joel.drapper.me/p/ruby-central-takeover/
17-
[ellen-takeover]: https://pup-e.com/blog/goodbye-rubygems/
18-
[simi-removed]: https://www.reddit.com/r/ruby/s/gOk42POCaV
19-
[martin-removed]: https://bsky.app/profile/martinemde.com/post/3m3occezxxs2q
20-
[draper-lies]: https://joel.drapper.me/p/ruby-central-fact-check/
21-
[draper-theft]: https://joel.drapper.me/p/ruby-central/
22-
[reinteractive]: https://reinteractive.com/ruby-on-rails
23-
[gem-coop]: https://gem.coop
24-
[gem-naming]: https://github.com/gem-coop/gem.coop/issues/12
25-
[martin-ann]: https://martinemde.com/2025/10/05/announcing-gem-coop.html
26-
[gem-scopes]: https://github.com/galtzo-floss/bundle-namespace
27-
[gem-server]: https://github.com/galtzo-floss/gem-server
28-
[reinteractive-podcast]: https://youtu.be/_H4qbtC5qzU?si=BvuBU90R2wAqD2E6
29-
301
[![Galtzo FLOSS Logo by Aboling0, CC BY-SA 4.0][🖼️galtzo-i]][🖼️galtzo-discord] [![ruby-lang Logo, Yukihiro Matsumoto, Ruby Visual Identity Team, CC BY-SA 2.5][🖼️ruby-lang-i]][🖼️ruby-lang] [![oauth2 Logo by Chris Messina, CC BY-SA 3.0][🖼️oauth2-i]][🖼️oauth2]
312

323
[🖼️galtzo-i]: https://logos.galtzo.com/assets/images/galtzo-floss/avatar-192px.svg
@@ -50,6 +21,13 @@
5021

5122
[![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate on Polar][🖇polar-img]][🖇polar] [![Donate at ko-fi.com][🖇kofi-img]][🖇kofi]
5223

24+
<details>
25+
<summary>👣 How will this project approach the September 2025 hostile takeover of RubyGems? 🚑️</summary>
26+
27+
I've summarized my thoughts in [this blog post](https://dev.to/galtzo/hostile-takeover-of-rubygems-my-thoughts-5hlo).
28+
29+
</details>
30+
5331
## 🌻 Synopsis
5432

5533
OAuth 2.0 is the industry-standard protocol for authorization.

0 commit comments

Comments
 (0)