Performs various checks before installing the gem such as the install repository is writable and
its directories exist, required Ruby
and rubygems versions are met and that dependencies are installed.
Version and dependency checks are skipped
if this install is forced.
The dependent check will be skipped if the install is ignoring dependencies.
# File lib/rubygems/installer.rb, line 853
def pre_install_checks
verify_gem_home options[:unpack]
# The name and require_paths must be verified first, since it could contain
# ruby code that would be eval'ed in #ensure_loadable_spec
verify_spec
ensure_loadable_spec
if options[:install_as_default]
Gem.ensure_default_gem_subdirectories gem_home
else
Gem.ensure_gem_subdirectories gem_home
end
return true if @force
ensure_required_ruby_version_met
ensure_required_rubygems_version_met
ensure_dependencies_met unless @ignore_dependencies
true
end