Type:
Module
Constants:
VERSION : '2.0.14'
RUBYGEMS_DIR : File.dirname File.expand_path(__FILE__)
WIN_PATTERNS : [ /bccwin/i, /cygwin/i, /djgpp/i, /mingw/i, /mswin/i, /wince/i, ]

An Array of Regexps that match windows ruby platforms.

GEM_DEP_FILES : %w[ gem.deps.rb Gemfile Isolate ]
REPOSITORY_SUBDIRECTORIES : %w[ build_info cache doc gems specifications ]

Subdirectories in a gem repository

MARSHAL_SPEC_DIR : "quick/Marshal.#{Gem.marshal_version}/"

Location of Marshal quick gemspecs on remote repositories

DEFAULT_HOST : "https://rubygems.org"
RDoc : RDoc::RubygemsHook

Gem::RDoc provides methods to generate RDoc and ri data for installed gems upon gem installation.

This file is automatically required by RubyGems 1.9 and newer.

RubyGems is the Ruby standard for publishing and managing third party libraries.

For user documentation, see:

For gem developer documentation see:

Further RubyGems documentation can be found at:

RubyGems Plugins

As of RubyGems 1.3.2, RubyGems will load plugins installed in gems or $LOAD_PATH. Plugins must be named 'rubygems_plugin' (.rb, .so, etc) and placed at the root of your gem's require_path. Plugins are discovered via ::find_files then loaded. Take care when implementing a plugin as your plugin file may be loaded multiple times if multiple versions of your gem are installed.

For an example plugin, see the graph gem which adds a `gem graph` command.

RubyGems Defaults, Packaging

RubyGems defaults are stored in rubygems/defaults.rb. If you're packaging RubyGems or implementing Ruby you can change RubyGems' defaults.

For RubyGems packagers, provide lib/rubygems/operating_system.rb and override any defaults from lib/rubygems/defaults.rb.

For Ruby implementers, provide lib/rubygems/defaults/#{RUBY_ENGINE}.rb and override any defaults from lib/rubygems/defaults.rb.

If you need RubyGems to perform extra work on install or uninstall, your defaults override file can set pre and post install and uninstall hooks. See ::pre_install, ::pre_uninstall, ::post_install, ::post_uninstall.

Bugs

You can submit bugs to the RubyGems bug tracker on GitHub

Credits

RubyGems is currently maintained by Eric Hodel.

RubyGems was originally developed at RubyConf 2003 by:

  • Rich Kilmer – rich(at)infoether.com

  • Chad Fowler – chad(at)chadfowler.com

  • David Black – dblack(at)wobblini.net

  • Paul Brannan – paul(at)atdesk.com

  • Jim Weirch – jim(at)weirichhouse.org

Contributors:

  • Gavin Sinclair – gsinclair(at)soyabean.com.au

  • George Marrows – george.marrows(at)ntlworld.com

  • Dick Davies – rasputnik(at)hellooperator.net

  • Mauricio Fernandez – batsman.geo(at)yahoo.com

  • Simon Strandgaard – neoneye(at)adslhome.dk

  • Dave Glasser – glasser(at)mit.edu

  • Paul Duncan – pabs(at)pablotron.org

  • Ville Aine – vaine(at)cs.helsinki.fi

  • Eric Hodel – drbrain(at)segment7.net

  • Daniel Berger – djberg96(at)gmail.com

  • Phil Hagelberg – technomancy(at)gmail.com

  • Ryan Davis – ryand-ruby(at)zenspider.com

  • Evan Phoenix – evan(at)fallingsnow.net

  • Steve Klabnik – steve(at)steveklabnik.com

(If your name is missing, PLEASE let us know!)

See LICENSE.txt for permissions.

Thanks!

-The RubyGems Team

activate
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Specification

activate() Instance Public methods Activate this spec, registering it as a loaded

2025-01-10 15:47:30
add_spec
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Specification

add_spec(spec) Class Public methods Adds spec to the known specifications

2025-01-10 15:47:30
sorted
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::AvailableSet

sorted() Instance Public methods

2025-01-10 15:47:30
find_spec_by_name_and_version
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::DependencyInstaller

find_spec_by_name_and_version(gem_name, version = Gem::Requirement.default, prerelease = false) Instance Public methods

2025-01-10 15:47:30
tsort_each_node
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::DependencyList

tsort_each_node(&block) Instance Public methods

2025-01-10 15:47:30
for_spec?
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::DependencyResolver/Gem::DependencyResolver::DependencyConflict

for_spec?(spec) Instance Public methods

2025-01-10 15:47:30
load_specs
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Source/Gem::Source::Local

load_specs(type) Instance Public methods

2025-01-10 15:47:30
requirements
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Specification

requirements() Instance Public methods Lists the external (to RubyGems) requirements

2025-01-10 15:47:30
configuration
  • References/Ruby on Rails/Ruby/Classes/Gem

configuration() Class Public methods The standard configuration object for gems

2025-01-10 15:47:30
requirement
  • References/Ruby on Rails/Ruby/Classes/Gem/Gem::Dependency

requirement() Instance Public methods What does this dependency require?

2025-01-10 15:47:30