by Eric Hodel

RubyGems 2.4.0 includes minor enhancements and bug fixes.

To update to the latest RubyGems you can run:

gem update --system

If you need to upgrade or downgrade please follow the how to upgrade/downgrade RubyGems instructions. To install RubyGems by hand see the Download RubyGems page.

Minor enhancements:

The contents command now supports a –show-install-dir option that shows only the directory the gem is installed in. Feature request #966 by Akinori MUSHA.

Added a –build-root option to the install command for packagers. Pull request #965 by Marcus Rückert.

Added vendor gem support to RubyGems. Package managers may now install gems in Gem.vendor_dir with the –vendor option to gem install. Issue #943 by Marcus Rückert.

Bug fixes:

Kernel#gem now respects the prerelease flag when activating gems. Previously this behavior was undefined which could lead to bugs when a prerelease version was unintentionally activated. Bug #938 by Joe Ferris.

RubyGems now prefers gems from git over installed gems. This allows gems from git to override an installed gem with the same name and version. Bug #944 by Thomas Kriechbaumer.

Fixed handling of git gems in a lockfile with unversioned dependencies. Bug #940 by Michael Kaiser-Nyman.

The ruby directive in a gem dependencies file is ignored when installing. Bug #941 by Michael Kaiser-Nyman.

Added open to list of builtin commands ( gem open now works). Reported by Espen Antonsen.

now works). Reported by Espen Antonsen. gem open now works with command-line editors. Pull request #962 by Tim Pope.

now works with command-line editors. Pull request #962 by Tim Pope. gem install -g now respects --conservative . Pull request #950 by Jeremy Evans.

now respects . Pull request #950 by Jeremy Evans. RubyGems releases announcements now now include checksums. Bug #939 by Alexander E. Fischer.

RubyGems now expands ~ in $PATH when checking if installed executables will be runnable. Pull request #945 by Alex Talker.

Fixed gem install -g --explain . Issue #947 by Luis Lavena. Patch by Hsing-Hui Hsu.

. Issue #947 by Luis Lavena. Patch by Hsing-Hui Hsu. RubyGems locks less during gem activation. Pull request #951 by Aaron Patterson and Justin Searls, #969 by Jeremy Tryba.

Kernel#gem is now thread-safe. Pull request #967 by Aaron Patterson.

RubyGems now handles spaces in directory names for some parts of extension building. Pull request #949 by Tristan Hill.

RubyGems no longer defines an empty Date class. Pull Request #948 by Benoit Daloze.

RubyGems respects –document options for gem update again. Bug 946 by jonforums. Patch by Hsing-Hui Hsu.

again. Bug 946 by jonforums. Patch by Hsing-Hui Hsu. RubyGems generates documentation again with –ignore-dependencies. Bug #961 by Pulfer.

RubyGems can install extensions across partitions now. Pull request #970 by Michael Scherer.

-s is now short for --source which resolves an ambiguity with –no-suggestions. Pull request #955 by Alexander Kahn.

is now short for which resolves an ambiguity with –no-suggestions. Pull request #955 by Alexander Kahn. Added extra test for ~> for 0.0.X versions. Pull request #958 by Mark Lorenz.

Fixed typo in gem updated help. Pull request #952 by Per Modin.

Clarified that the gem description should not be excessively long. Part of bug #956 by Renier Morales.

Hid documentation of outdated test_files related methods in Specification. Guides issue #90 by Emil Soman.

RubyGems now falls back to the old index if the rubygems.org API fails during gem resolution.

SHA256 Checksums: