Ruby Standard Gems

About the Gemified Standard Library

Ruby's standard library is in the process of being gemified. More and more libraries will be turned into RubyGems, which can be updated independently from Ruby.

There are two different kinds of standard gems:

Gemification Progress

As of Ruby 2.7, 57% (62 of 108) standard libraries have been gemified.

Standard gems changes in Ruby: 2.7 - 2.6 - 2.5 - 2.4 - 2.3 - 2.2

Checkout Hiroshi Shibata's talk at RubyConf 2017 for more info. Also see Ruby issue #5481 for the current state of the gemification project.

Standard Gems Version Data

Every Ruby version ships a specific set of default and bundled gems. The tables below list included gems of the current Ruby version 2.6.5. There is also version comparison that shows which Ruby version comes with which gem versions. The raw data is available as default_gems.json and bundled_gems.json.

Default Gems (Ruby 2.6.5)

Gem Version Description Resources
bigdecimal c 1.4.1 Support for arbitrary-precision floating point decimal arithmetic RubyGems, GitHub, CRuby, RDoc
bundler 1.17.2 Bundler is the local package manager for Ruby applications RubyGems, GitHub, CRuby, RDoc
cmath 1.0.0 Trigonometric and transcendental functions for complex numbers RubyGems, GitHub, CRuby, RDoc
csv 3.0.9 Support for CSV (Comma-separated Values) RubyGems, GitHub, CRuby (1), CRuby (2), RDoc
date c 2.0.0 The Date and DateTime classes RubyGems, GitHub, CRuby, RDoc (1), RDoc (2)
dbm c 1.0.0 Support for DBM databases RubyGems, GitHub, CRuby, RDoc
e2mmap 0.1.0 Abstraction around exception handling RubyGems, GitHub, CRuby (1), CRuby (2), RDoc
etc c 1.0.1 Access UNIX info from /etc RubyGems, GitHub, CRuby, RDoc
fcntl c 1.0.0 Loads values from the OS' fcntl.h to be used for low-level file descriptor manipulation system calls with IO#fcntl and IO.sysopen RubyGems, GitHub, CRuby, RDoc
fiddle c 1.0.0 Support for FFI (Foreign Function Interface) RubyGems, GitHub, CRuby, RDoc
fileutils 1.1.0 Utilities for working with the file system, such as copying, moving, or deleting files RubyGems, GitHub, CRuby, RDoc
forwardable 1.2.0 Provides a way to delegate method calls. Also see this overview of delegation in Ruby, which contains an example RubyGems, GitHub, CRuby (1), CRuby (2), CRuby (3), RDoc
gdbm c 2.0.0 Support for GDBM databases RubyGems, GitHub, CRuby, RDoc
io-console c 0.4.7 Patches IO for simple and portable access to the console RubyGems, GitHub, CRuby, RDoc
ipaddr 1.2.2 IP address manipulation (IPv4 and IPv6) RubyGems, GitHub, CRuby, RDoc
irb 1.0.0 Interactive Ruby Console (REPL) RubyGems, GitHub, CRuby (1), CRuby (2), RDoc
json c 2.1.0 Support for JSON (JavaScript Object Notation) RubyGems, GitHub, CRuby, RDoc
logger 1.3.0 Logging utility RubyGems, GitHub, CRuby, RDoc
matrix 0.1.0 Support for matrices RubyGems, GitHub, CRuby (1), CRuby (2), RDoc
mutex_m 0.1.0 A mixin that makes any object behave like a mutex RubyGems, GitHub, CRuby, RDoc
openssl c 2.1.2 Wraps OpenSSL for cryptographic functionality RubyGems, GitHub, CRuby, RDoc
ostruct 0.1.0 Wrapper around Hash which lets you read and set attributes with a method-based API RubyGems, GitHub, CRuby, RDoc
prime 0.1.0 Access to prime numbers and prime factorization GitHub, CRuby, RDoc
psych c 3.1.0 Support for YAML (YAML Ain't Markup Language) RubyGems, GitHub, CRuby, RDoc
rdoc 6.1.2 Ruby documentation generator RubyGems, GitHub, CRuby (1), CRuby (2), RDoc
rexml 3.1.9 Support for XML (Extensible Markup Language) RubyGems, GitHub, CRuby, RDoc
rss 0.2.7 Support for RSS (Rich Site Summary) and Atom RubyGems, GitHub, CRuby (1), CRuby (2), RDoc
rubygems 3.0.3 RubyGems allows you to download, install, and use Ruby software packages on your system RubyGems, GitHub, CRuby (1), CRuby (2), RDoc
scanf 1.0.0 Pure-Ruby scanf implementation RubyGems, GitHub, CRuby, RDoc
sdbm c 1.0.0 Support for SDBM databases RubyGems, GitHub, CRuby, RDoc
shell 0.7 Provides a Ruby interface for interacting with the shell RubyGems, GitHub, CRuby (1), CRuby (2), RDoc
stringio c 0.0.2 Makes strings behave like IO objects RubyGems, GitHub, CRuby, RDoc
strscan c 1.0.0 Lexical string scanning RubyGems, GitHub, CRuby, RDoc
sync 0.5.0 Two-phase lock with a counter for multi-threaded code RubyGems, GitHub, CRuby, RDoc
thwait 0.1.0 Waits for threads to finish RubyGems, GitHub, CRuby (1), CRuby (2), RDoc
tracer 0.1.0 Outputs the code execution trace via Kernel#set_trace_func GitHub, CRuby (1), CRuby (2), RDoc
webrick 1.4.2 HTTP Server RubyGems, GitHub, CRuby (1), CRuby (2), RDoc
zlib c 1.0.0 Interface to the zlib compression library RubyGems, GitHub, CRuby, RDoc

Bundled Gems (Ruby 2.6.5)

Gem Version Description Resources
did_you_mean 1.3.0 Patches error messages to suggest correct spelling of methods/classes/variables RubyGems, GitHub
minitest 5.11.3 Test/spec framework, comes with mocking and benchmark capabilities RubyGems, GitHub
net-telnet 0.2.0 Support for Telnet RubyGems, GitHub
power_assert 1.1.3 Debug tool that displays intermediate results of a method chain RubyGems, GitHub
rake 12.3.2 A Ruby task runner, inspired by make RubyGems, GitHub
test-unit 3.2.9 A xUnit family unit testing framework (compatibility layer for minitest) RubyGems, GitHub
xmlrpc 0.3.0 Remote Procedure Calls via XML and HTTP RubyGems, GitHub

Gems per Ruby Version

Unmaintained Default Gems

See the unmaintained page for a list of default gems lacking a maintainer…

Removed Standard Gems

See the removed page for a list of default gems which are not part of Ruby, anymore.

Non-Gemified Standard Libraries

A list of standard libraries which have not yet turned into gems can be found at libraries. The respective JSON file is at libraries.json.


This page and the JSON data files it is based on are maintained on GitHub. Originally based on episode 20 of Idiosyncratic Ruby and put together by Jan Lelis.

Page Version: 1.15.0

Data Protection

Fork me on GitHub