Constructs an Installer
instance that will install the gem at package
which can either be a path or an instance of Gem::Package. options
is a Hash
with the following keys:
Where to put a bin wrapper if needed.
Whether or not development dependencies should be installed.
Use /usr/bin/env in bin wrappers.
Overrides all version checks and security policy checks, except for a signed-gems-only policy.
Format the executable the same as the Ruby executable. If your Ruby is ruby18, foo_exec will be installed as foo_exec18.
Don’t raise if a dependency is missing.
The directory to install the gem into.
Use the specified security policy. See Gem::Security
Indicate that the gem should be unpacked into the users personal gem directory.
Only validate dependencies against what is in the install_dir
Install wrappers if true, symlinks if false.
An Array
of arguments to pass to the extension builder process. If not set, then Gem::Command.build_args
is used
Print gem post install message if true
Creates a new Gem::Package for the file at gem
. gem
can also be provided as an IO
object.
If gem
is an existing file in the old format a Gem::Package::Old
will be returned.
Create a Gem Package task library. Automatically define the gem if a block is given. If no block is supplied, then define
needs to be called to define the task.
Constructor. Takes a single argument which is to be treated like a hashtable, or defaults to ENV
, the system environment.
Initialize a remote fetcher using the source URI
and possible proxy information.
proxy
[String]: explicit specification of proxy; overrides any environment
variable setting
nil: respect environment variables (HTTP_PROXY, HTTP_PROXY_USER,
HTTP_PROXY_PASS)
:no_proxy
: ignore environment variables and _don’t_ use a proxy
headers
: A set of additional HTTP headers to be sent to the server when
fetching the gem.
Creates a RequestSet
for a list of Gem::Dependency
objects, deps
. You can then resolve
and install
the resolved list of dependencies.
nokogiri = Gem::Dependency.new 'nokogiri', '~> 1.6' pg = Gem::Dependency.new 'pg', '~> 0.14' set = Gem::RequestSet.new nokogiri, pg
Constructs a requirement from requirements
. Requirements can be Strings, Gem::Versions, or Arrays of those. nil
and duplicate requirements are ignored. An empty set of requirements
is the same as ">= 0"
.
Constructs a Version
from the version
string. A version string is a series of digits or ASCII letters separated by dots.
Create Resolver
object which will resolve the tree starting with needed
Dependency objects.
set
is an object that provides where to look for specifications to satisfy the Dependencies. This defaults to IndexSet
, which will query rubygems.org.
Creates a new Source
which will use the index located at uri
.
Creates a new SourceList
Creates a new SpecFetcher
. Ordinarily you want to use the default fetcher from Gem::SpecFetcher::fetcher
which uses the Gem.sources
.
If you need to retrieve specifications from a different source
, you can send it as an argument.
Constructs an uninstaller that will uninstall gem
Creates a new URI
formatter for uri
.
Creates a new StreamUI
wrapping in_stream
for user input, out_stream
for standard output, err_stream
for error output. If usetty
is true then special operations (like asking for passwords) will use the TTY commands to disable character echo.
The Console UI has no arguments as it defaults to reading input from stdin, output to stdout and warnings or errors to stderr.
The SilentUI
has no arguments as it does not use any stream.