Class | Gem::Installer |
In: |
lib/rubygems/installer.rb
|
Parent: | Object |
The installer class processes RubyGem .gem files and installs the files contained in the .gem into the Gem.path.
Ensure that the dependency is satisfied by the current installation of gem. If it is not, then fail (i.e. throw and exception).
spec : | Gem::Specification |
dependency : | Gem::Dependency |
Reads the YAML file index and then extracts each file into the supplied directory, building directories for the extracted files as needed.
directory: | [String] The root directory to extract files into |
file: | [IO] The IO that contains the file data |
Creates the symlinks to run the applications in the gem. Moves the symlink if the gem being installed has a newer version.
Installs the gem in the Gem.path. This will fail (unless force=true) if a Gem has a requirement on another Gem that is not installed. The installation will install in the following structure:
Gem.path/ specifications/<gem-version>.gemspec #=> the extracted YAML gemspec gems/<gem-version>/... #=> the extracted Gem files cache/<gem-version>.gem #=> a cached copy of the installed Gem
force: | [default = false] if false will fail if a required Gem is not installed, or if the Ruby version is too low for the gem |
install_dir: | [default = Gem.dir] directory that Gem is to be installed in |
return: | [Gem::Specification] The specification for the newly installed Gem. |
True if the current installed gems satisfy the given dependency.
dependency : | Gem::Dependency |
Writes the .gemspec specification (in Ruby) to the supplied spec_path.
spec: | [Gem::Specification] The Gem specification to output |
spec_path: | [String] The location (path) to write the gemspec to |