mirror of
https://github.com/ruby/ruby.git
synced 2025-08-23 13:04:13 +02:00
* lib/rubygems: Update to RubyGems 2.4.5.
* test/rubygems: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
a0b80a4410
commit
97f80207d0
32 changed files with 458 additions and 103 deletions
|
@ -109,6 +109,11 @@ extensions will be restored.
|
|||
next
|
||||
end
|
||||
|
||||
if spec.bundled_gem_in_old_ruby?
|
||||
say "Skipped #{spec.full_name}, it is bundled with old Ruby"
|
||||
next
|
||||
end
|
||||
|
||||
unless spec.extensions.empty? or options[:extensions] then
|
||||
say "Skipped #{spec.full_name}, it needs to compile an extension"
|
||||
next
|
||||
|
@ -120,8 +125,17 @@ extensions will be restored.
|
|||
require 'rubygems/remote_fetcher'
|
||||
|
||||
say "Cached gem for #{spec.full_name} not found, attempting to fetch..."
|
||||
|
||||
dep = Gem::Dependency.new spec.name, spec.version
|
||||
Gem::RemoteFetcher.fetcher.download_to_cache dep
|
||||
found, _ = Gem::SpecFetcher.fetcher.spec_for_dependency dep
|
||||
|
||||
if found.empty?
|
||||
say "Skipped #{spec.full_name}, it was not found from cache and remote sources"
|
||||
next
|
||||
end
|
||||
|
||||
spec_candidate, source = found.first
|
||||
Gem::RemoteFetcher.fetcher.download spec_candidate, source.uri.to_s, spec.base_dir
|
||||
end
|
||||
|
||||
env_shebang =
|
||||
|
|
|
@ -124,7 +124,7 @@ that is a dependency of an existing gem. You can use the
|
|||
end
|
||||
|
||||
def uninstall_all
|
||||
_, specs = Gem::Specification.partition { |spec| spec.default_gem? }
|
||||
specs = Gem::Specification.reject { |spec| spec.default_gem? }
|
||||
|
||||
specs.each do |spec|
|
||||
options[:version] = spec.version
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue