1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05: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:
drbrain 2014-12-07 00:53:01 +00:00
parent a0b80a4410
commit 97f80207d0
32 changed files with 458 additions and 103 deletions

View file

@ -200,6 +200,8 @@ class Gem::RequestSet::Lockfile
platforms = @requests.map { |request| request.spec.platform }.uniq
platforms = platforms.sort_by { |platform| platform.to_s }
platforms.sort.each do |platform|
out << " #{platform}"
end
@ -277,14 +279,7 @@ class Gem::RequestSet::Lockfile
when :bang then
get :bang
spec = @set.sets.select { |set|
Gem::Resolver::GitSet === set or
Gem::Resolver::VendorSet === set
}.map { |set|
set.specs[name]
}.compact.first
requirements << spec.version
requirements << pinned_requirement(name)
when :l_paren then
get :l_paren
@ -300,6 +295,13 @@ class Gem::RequestSet::Lockfile
end
get :r_paren
if peek[0] == :bang then
requirements.clear
requirements << pinned_requirement(name)
get :bang
end
end
@set.gem name, *requirements
@ -507,6 +509,17 @@ class Gem::RequestSet::Lockfile
@tokens.first || [:EOF]
end
def pinned_requirement name # :nodoc:
spec = @set.sets.select { |set|
Gem::Resolver::GitSet === set or
Gem::Resolver::VendorSet === set
}.map { |set|
set.specs[name]
}.compact.first
spec.version
end
def skip type # :nodoc:
get while not @tokens.empty? and peek.first == type
end