Open-Source Wikis

/

Ruby

/

Maintainers

ruby/ruby

Maintainers

Ownership in ruby/ruby is documented authoritatively in doc/maintainers.md. That file is consulted by the auto-review-request workflow (.github/auto_request_review.yml) to nominate reviewers when a PR is opened.

This page summarises the major subsystem owners. For default gems whose source is vendored from upstream gem repositories, the real maintainer is the upstream gem's owner.

Top-level

Area Owner
Language core features and security Yukihiro "Matz" Matsumoto
Evaluator (VM, eval) Koichi Sasada (ko1)
Core classes (overall) Yukihiro Matsumoto

Subsystems

Subsystem Maintainer(s)
Garbage collector (gc/, gc.c) Peter Zhu, Matt Valentine-House (the "GC team")
Parser (parse.y) Yui Naruse (naruse), Yuichiro Kaneko (yui-knk)
Prism (prism/) Kevin Newton, Shopify Prism team
Lrama (tool/lrama/) Yuichiro Kaneko (yui-knk)
YJIT (yjit/) Maxime Chevalier-Boisvert, Alan Wu, Takashi Kokubun, Aaron Patterson, Shopify YJIT team
ZJIT (zjit/) Shopify YJIT/ZJIT team
Threads (thread.c, thread_pthread.c) Koichi Sasada (ko1)
Ractor (ractor.c) Koichi Sasada (ko1)
Fibers / coroutines (cont.c, coroutine/) Samuel Williams (ioquatix), Koichi Sasada
Fiber Scheduler (scheduler.c) Samuel Williams (ioquatix)
IO (io.c, io_buffer.c) Samuel Williams (ioquatix)
Encoding / M17N (encoding.c, enc/) Yui Naruse (naruse), Martin Dürst (duerst) for Unicode normalisation
Onigmo regex (reg*.c) K. Takata, Akinori MUSHA, upstream Onigmo maintainers
Set (set.c, lib/set.rb) Akinori MUSHA (knu)

Standard library (default gems)

Most default gems have an upstream repository; the maintainer there is the canonical owner. Selected mappings (full list in tool/sync_default_gems.rb's REPOSITORIES hash and doc/maintainers.md):

Gem Upstream Maintainer
rubygems / bundler github.com/rubygems/rubygems Hiroshi SHIBATA (hsbt) and the rubygems team
optparse github.com/ruby/optparse Nobuyoshi Nakada (nobu)
uri github.com/ruby/uri Aaron Patterson (tenderlove)
prism github.com/ruby/prism Kevin Newton
psych github.com/ruby/psych Aaron Patterson
json github.com/ruby/json Jean Boussier (byroot) and the json team
did_you_mean github.com/ruby/did_you_mean Yuki Nishijima
error_highlight github.com/ruby/error_highlight Yusuke Endoh (mame)
syntax_suggest github.com/ruby/syntax_suggest Schneems and contributors
irb github.com/ruby/irb aycabta and the IRB team
reline github.com/ruby/reline aycabta
rdoc github.com/ruby/rdoc the rdoc team
prettyprint / pp upstream + here Yuki Sonoda
pathname (Ruby + ext) here Tanaka Akira (akr)
mkmf (lib/mkmf.rb) here (no specific maintainer; nobu in practice)
unicode_normalize here Martin J. Dürst (duerst)

C extensions in ext/

Extension Maintainer
ext/socket Tanaka Akira (akr) — API changes need matz's approval
ext/openssl Kazuki Yamaguchi (rhenium) and the openssl team
ext/digest Akinori MUSHA (knu)
ext/pathname Tanaka Akira (akr)
ext/coverage Yusuke Endoh (mame)
ext/objspace (no specific maintainer)
ext/ripper (no specific maintainer)
ext/pty (no specific maintainer)
ext/fiber Samuel Williams
ext/monitor Koichi Sasada
ext/win32 NAKAMURA Usaku (unak)
ext/zlib (no specific maintainer; was UI Misuzu)
ext/strscan upstream Sutou Kouhei (kou)
ext/stringio Nobuyoshi Nakada
ext/etc, ext/fcntl (legacy, low maintenance)

Platform maintainers

Per doc/maintainers.md's "Platform Maintainers" section:

Platform Maintainer
Ubuntu / Debian (community)
macOS Yuta Saito (katei), Aaron Patterson
Windows MSVC NAKAMURA Usaku (unak)
Windows MinGW Lars Kanis
Solaris / illumos (community)
AIX (community)
WASM / WASI Yuta Saito (katei)

Branch maintainers

Stable releases of older Ruby branches are cut by per-branch maintainers. The current list is at the Release Engineering wiki page. Recent maintainers:

Branch Maintainer
master (4.1 dev) All committers; Yui Naruse coordinates releases
ruby_3_4 Yui Naruse (naruse)
ruby_3_3 Yui Naruse
ruby_3_2 Hiroshi SHIBATA (hsbt)

How review-request automation works

When you open a PR, GitHub Actions consults .github/auto_request_review.yml and the labels mapped from doc/maintainers.md. Reviewers are auto-suggested based on which files the PR touches.

You can mention specific maintainers in the PR description if you want their attention, but the bot usually picks the right people based on paths.

How to update the list

The authoritative source is doc/maintainers.md. To update:

  1. Edit doc/maintainers.md.
  2. (If you're listed as a new owner of a path) update .github/auto_request_review.yml if your username isn't already mapped.
  3. Open a PR.

The "3 months rule" applies: a maintainer who hasn't been active on their part for three months can be discharged. (See the cited ruby-core thread in the original document.)

See also

  • doc/maintainers.md — full list (this page summarises it).
  • .github/auto_request_review.yml — reviewer auto-assignment.
  • .mailmap — historical author/email aliases (for git blame).
  • tool/sync_default_gems.rb's REPOSITORIES hash — gem ↔ upstream-repo mapping.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

Maintainers – Ruby wiki | Factory