Class: Bundler::RubyGemsGemInstaller
- Inherits:
-
Gem::Installer
- Object
- Gem::Installer
- Bundler::RubyGemsGemInstaller
- Defined in:
- lib/bundler/rubygems_gem_installer.rb
Direct Known Subclasses
Class Method Summary collapse
Instance Method Summary collapse
- #build_extensions ⇒ Object
- #check_executable_overwrite(filename) ⇒ Object
- #pre_install_checks ⇒ Object
Class Method Details
.at(*args) ⇒ Object
8 9 10 |
# File 'lib/bundler/rubygems_gem_installer.rb', line 8 def self.at(*args) new(*args) end |
Instance Method Details
#build_extensions ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/bundler/rubygems_gem_installer.rb', line 21 def build_extensions extension_cache_path = [:bundler_extension_cache_path] return super unless extension_cache_path && extension_dir = Bundler.rubygems.spec_extension_dir(spec) extension_dir = Pathname.new(extension_dir) build_complete = SharedHelpers.filesystem_access(extension_cache_path.join("gem.build_complete"), :read, &:file?) if build_complete && ![:force] SharedHelpers.filesystem_access(extension_dir.parent, &:mkpath) SharedHelpers.filesystem_access(extension_cache_path) do FileUtils.cp_r extension_cache_path, spec.extension_dir end else super if extension_dir.directory? # not made for gems without extensions SharedHelpers.filesystem_access(extension_cache_path.parent, &:mkpath) SharedHelpers.filesystem_access(extension_cache_path) do FileUtils.cp_r extension_dir, extension_cache_path end end end end |
#check_executable_overwrite(filename) ⇒ Object
13 14 15 |
# File 'lib/bundler/rubygems_gem_installer.rb', line 13 def check_executable_overwrite(filename) # Bundler needs to install gems regardless of binstub overwriting end |
#pre_install_checks ⇒ Object
17 18 19 |
# File 'lib/bundler/rubygems_gem_installer.rb', line 17 def pre_install_checks super && validate_bundler_checksum([:bundler_expected_checksum]) end |