Class Isolate::Entry
In: lib/isolate/entry.rb
Parent: Object

An isolated Gem, with requirement, environment restrictions, and installation options. Generally intended for internal use. This class exposes lifecycle events for extension, see Isolate::Events for more information.

Methods

activate   inspect   install   matches?   matches_spec?   new   specification   to_s   update  

Included Modules

Events

Attributes

environments  [R]  Which environments does this entry care about? Generally an Array of Strings. An empty array means "all", not "none".
name  [R]  What‘s the name of this entry? Generally the name of a gem.
options  [R]  Extra information or hints for installation. See initialize for well-known keys.
requirement  [R]  What version of this entry is required? Expressed as a Gem::Requirement, which see.

Public Class methods

Create a new entry. Takes sandbox (currently an instance of Isolate::Sandbox), name (as above), and any number of optional version requirements (generally strings). Options can be passed as a trailing hash. Well-known keys:

:args:Command-line build arguments. Passed to the gem at installation time.
:source:An alternative RubyGems source for this gem.

Public Instance methods

Activate this entry. Fires :activating and :activated.

inspect()

Alias for to_s

Install this entry in the sandbox. Fires :installing and :installed.

Is this entry interested in environment?

Is this entry satisfied by spec (generally a Gem::Specification)?

The Gem::Specification for this entry or nil if it isn‘t resolveable.

Updates this entry‘s environments, options, and requirement. Environments and options are merged, requirement is replaced. Fires :updating and :updated.

[Validate]