Maintainers
This page describes the current branch, module, library, and extension maintainers of Ruby.
Branch Maintainers
A branch maintainer is responsible for backporting commits into stable branches and publishing Ruby patch releases.
The list of current branch maintainers is available in the wiki.
Module Maintainers
A module maintainer is responsible for a certain part of Ruby.
-
The maintainer fixes bugs of the part. Particularly, they should fix security vulnerabilities as soon as possible.
-
They handle issues related the module on the Redmine or ML.
-
They may be discharged by the 3 months rule [ruby-core:25764].
-
They have commit right to Ruby’s repository to modify their part in the repository.
-
They have “developer” role on the Redmine to modify issues.
-
They have authority to decide the feature of their part. But they should always respect discussions on ruby-core/ruby-dev.
A submaintainer of a module is like a maintainer. But the submaintainer does not have authority to change/add a feature on his/her part. They need consensus on ruby-core/ruby-dev before changing/adding. Some of submaintainers have commit right, others don’t.
No maintainer means that there is no specific maintainer for the part now. The member of ruby core team can fix issues at anytime. But major changes need consensus on ruby-core/ruby-dev.
Language core features including security
-
Yukihiro Matsumoto (matz)
Evaluator
-
Koichi Sasada (ko1)
Core classes
-
Yukihiro Matsumoto (matz)
Standard Library Maintainers
lib/mkmf.rb
-
No maintainer
lib/rubygems.rb, lib/rubygems/*
-
Hiroshi SHIBATA (hsbt)
lib/unicode_normalize.rb, lib/unicode_normalize/*
-
Martin J. Dürst (duerst)
Standard Library(Extensions) Maintainers
ext/continuation
-
Koichi Sasada (ko1)
ext/coverage
-
Yusuke Endoh (mame)
ext/fiber
-
Koichi Sasada (ko1)
ext/monitor
-
Koichi Sasada (ko1)
ext/objspace
-
No maintainer
ext/pty
-
No maintainer
ext/ripper
-
No maintainer
ext/socket
-
Tanaka Akira (akr)
-
API change needs matz’s approval
ext/win32
-
NAKAMURA Usaku (unak)
Default gems(Libraries) Maintainers
lib/bundler.rb, lib/bundler/*
-
Hiroshi SHIBATA (hsbt)
lib/cgi/escape.rb
-
No maintainer
lib/English.rb
-
No maintainer
lib/delegate.rb
-
No maintainer
lib/did_you_mean.rb
-
Yuki Nishijima (yuki24)
ext/digest, ext/digest/*
-
Akinori MUSHA (knu)
lib/erb.rb
lib/error_highlight.rb, lib/error_highlight/*
-
Yusuke Endoh (mame)
lib/fileutils.rb
-
No maintainer
lib/find.rb
-
Kazuki Tsujimoto (k-tsj)
lib/forwardable.rb
-
Keiju ISHITSUKA (keiju)
lib/ipaddr.rb
-
Akinori MUSHA (knu)
lib/optparse.rb, lib/optparse/*
-
Nobuyuki Nakada (nobu)
lib/net/http.rb, lib/net/https.rb
-
NARUSE, Yui (nurse)
lib/net/protocol.rb
-
No maintainer
lib/open3.rb
-
No maintainer
lib/open-uri.rb
-
Tanaka Akira (akr)
lib/pp.rb
-
Tanaka Akira (akr)
lib/prettyprint.rb
-
Tanaka Akira (akr)
lib/prism.rb
-
Kevin Newton (kddnewton)
-
Eileen Uchitelle (eileencodes)
-
Aaron Patterson (tenderlove)
lib/resolv.rb
-
Tanaka Akira (akr)
lib/securerandom.rb
-
Tanaka Akira (akr)
lib/shellwords.rb
-
Akinori MUSHA (knu)
lib/singleton.rb
-
Yukihiro Matsumoto (matz)
lib/tempfile.rb
-
No maintainer
lib/time.rb
-
Tanaka Akira (akr)
lib/timeout.rb
-
Yukihiro Matsumoto (matz)
lib/tmpdir.rb
-
No maintainer
lib/tsort.rb
-
Tanaka Akira (akr)
lib/un.rb
-
WATANABE Hirofumi (eban)
lib/uri.rb, lib/uri/*
-
NARUSE, Yui (nurse)
lib/yaml.rb, lib/yaml/*
-
Aaron Patterson (tenderlove)
-
Hiroshi SHIBATA (hsbt)
lib/weakref.rb
-
No maintainer
Default gems(Extensions) Maintainers
ext/cgi
-
Nobuyoshi Nakada (nobu)
ext/date
-
No maintainer
ext/etc
-
No maintainer
ext/fcntl
-
No maintainer
ext/io/console
-
Nobuyuki Nakada (nobu)
ext/io/nonblock
-
Nobuyuki Nakada (nobu)
ext/io/wait
-
Nobuyuki Nakada (nobu)
ext/json
ext/openssl
-
Kazuki Yamaguchi (rhenium)
ext/pathname
-
Tanaka Akira (akr)
ext/psych
-
Aaron Patterson (tenderlove)
-
Hiroshi SHIBATA (hsbt)
ext/stringio
-
Nobuyuki Nakada (nobu)
ext/strscan
-
Kouhei Sutou (kou)
ext/zlib
-
NARUSE, Yui (nurse)
Bundled gems upstream repositories and maintainers
The maintanance policy of bundled gems is different from Module Maintainers above. Please check the policies for each repository.
The ruby core team tries to maintain the repositories with no maintainers. It may needs to make consensus on ruby-core/ruby-dev before making major changes.
minitest
power_assert
-
Tsujimoto Kenta (k-tsj)
rake
-
Hiroshi SHIBATA (hsbt)
test-unit
-
Kouhei Sutou (kou)
rexml
-
Kouhei Sutou (kou)
rss
-
Kouhei Sutou (kou)
net-ftp
-
Shugo Maeda (shugo)
net-imap
-
Nicholas A. Evans (nevans)
net-pop
net-smtp
-
TOMITA Masahiro (tmtm)
matrix
-
Marc-André Lafortune (marcandre)
prime
rbs
-
Soutaro Matsumoto (soutaro)
typeprof
-
Yusuke Endoh (mame)
debug
-
Koichi Sasada (ko1)
racc
-
Yuichi Kaneko (yui-knk)
mutex_m
getoptlong
base64
-
Yusuke Endoh (mame)
bigdecimal
-
Kenta Murata (mrkn)
observer
abbrev
-
Akinori MUSHA (knu)
resolv-replace
-
Akira TANAKA (akr)
rinda
-
Masatoshi SEKI (seki)
drb
-
Masatoshi SEKI (seki)
nkf
-
Naruse Yusuke (nurse)
syslog
-
Akinori Musha (knu)
csv
-
Kouhei Sutou (kou)
ostruct
-
Marc-André Lafortune (marcandre)
pstore
benchmark
logger
-
Naotoshi Seo (sonots)
rdoc
win32ole
-
Masaki Suketa (suketa)
irb
reline
readline
fiddle
-
Kouhei Sutou (kou)
repl_type_completor
Platform Maintainers
mswin64 (Microsoft Windows)
-
NAKAMURA Usaku (unak)
mingw32 (Minimalist GNU for Windows)
-
Nobuyoshi Nakada (nobu)
AIX
-
Yutaka Kanemoto (kanemoto)
FreeBSD
-
Akinori MUSHA (knu)
Solaris
-
Naohisa Goto (ngoto)
RHEL, CentOS
-
KOSAKI Motohiro (kosaki)
macOS
-
Kenta Murata (mrkn)
OpenBSD
-
Jeremy Evans (jeremyevans)
cygwin, …
-
No maintainer
WebAssembly/WASI
-
Yuta Saito (kateinoigakukun)