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

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

find_in_unresolved(path) Class Public methods Return currently unresolved specs

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

build(extension, directory, dest_path, results) Class Public methods

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

invoke(*args) Instance Public methods Invoke the command with the given list

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

add_specific_extra_args(cmd,args) Class Public methods Add a list of extra arguments

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

new() Class Public methods

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

install() Instance Public methods Installs the gem and returns a loaded

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

resolve_for(needed, specs) Instance Public methods The meat of the algorithm

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

add_owners(name, owners) Instance Public methods

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

has_unit_tests?() Instance Public methods True if this gem has files in

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

consider_remote?() Instance Public methods Indicated, based on the requested

2025-01-10 15:47:30