diff options
Diffstat (limited to 'lib/rubygems/request_set.rb')
-rw-r--r-- | lib/rubygems/request_set.rb | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/rubygems/request_set.rb b/lib/rubygems/request_set.rb index eb45516cfb..9a7ac83e91 100644 --- a/lib/rubygems/request_set.rb +++ b/lib/rubygems/request_set.rb @@ -159,7 +159,15 @@ class Gem::RequestSet # Resolve the requested dependencies and return an Array of Specification # objects to be activated. - def resolve set = nil + def resolve set = Gem::DependencyResolver::IndexSet.new + sets = [set, @vendor_set].compact + + set = if sets.size == 1 then + sets.first + else + Gem::DependencyResolver.compose_sets(*sets) + end + resolver = Gem::DependencyResolver.new @dependencies, set resolver.development = @development resolver.soft_missing = @soft_missing |