summaryrefslogtreecommitdiff
path: root/lib/rubygems/request_set.rb
diff options
context:
space:
mode:
authorhsbt <hsbt@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-02-05 13:42:45 +0000
committerhsbt <hsbt@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-02-05 13:42:45 +0000
commitc3546c76c8f1c9d61e65d08e8b2dfca2e2098736 (patch)
tree6f3288db1b5970c4d4c65d7736719ef15b44a328 /lib/rubygems/request_set.rb
parent69be3620302aab57c43014aca08629c9d7b7ce44 (diff)
* lib/rubygems: Update to RubyGems HEAD(5c3b6f3).
Fixed #1156, #1142, #1115, #1142, #1139 on rubygems/rubygems * test/rubygems: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rubygems/request_set.rb')
-rw-r--r--lib/rubygems/request_set.rb12
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/rubygems/request_set.rb b/lib/rubygems/request_set.rb
index 05bfcbee2c..819a1d8e2d 100644
--- a/lib/rubygems/request_set.rb
+++ b/lib/rubygems/request_set.rb
@@ -116,7 +116,7 @@ class Gem::RequestSet
if dep = @dependency_names[name] then
dep.requirement.concat reqs
else
- dep = Gem::Dependency.new name, reqs
+ dep = Gem::Dependency.new name, *reqs
@dependency_names[name] = dep
@dependencies << dep
end
@@ -275,8 +275,13 @@ class Gem::RequestSet
@git_set.root_dir = @install_dir
- lockfile = Gem::RequestSet::Lockfile.new self, path
- lockfile.parse
+ lock_file = "#{File.expand_path(path)}.lock"
+ begin
+ tokenizer = Gem::RequestSet::Lockfile::Tokenizer.from_file lock_file
+ parser = tokenizer.make_parser self, []
+ parser.parse
+ rescue Errno::ENOENT
+ end
gf = Gem::RequestSet::GemDependencyAPI.new self, path
gf.installing = installing
@@ -411,3 +416,4 @@ end
require 'rubygems/request_set/gem_dependency_api'
require 'rubygems/request_set/lockfile'
+require 'rubygems/request_set/lockfile/tokenizer'