summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel E. Giddins <segiddins@segiddins.me>2015-06-16 22:23:39 -0700
committerSamuel E. Giddins <segiddins@segiddins.me>2015-06-16 22:23:39 -0700
commitec8093c8deea290b4062f7fd116f5214f9d3f28a (patch)
treea498ec4111c2867a5ce697a68630322379ff903b
parenta667c0206ac587732991aee3617a3981efb485b4 (diff)
parentf0074247f39e2a7064471188ef54fb8e36127f38 (diff)
downloadbundler-ec8093c8deea290b4062f7fd116f5214f9d3f28a.tar.gz
Merge pull request #3736 from bundler/seg-fixed-resolver
[Resolver] Add optimization for deps where theres a path/gemspec source
-rw-r--r--lib/bundler/resolver.rb8
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/bundler/resolver.rb b/lib/bundler/resolver.rb
index 61d45aba46..c4a4f4f557 100644
--- a/lib/bundler/resolver.rb
+++ b/lib/bundler/resolver.rb
@@ -309,11 +309,13 @@ module Bundler
dependency.requirement.satisfied_by?(base.first.version) ? 0 : 1
else
base_dep = Dependency.new dependency.name, '>= 0.a'
- all = search_for(DepProxy.new base_dep, dependency.__platform)
- if all.size == 0
+ all = search_for(DepProxy.new base_dep, dependency.__platform).size.to_f
+ if all.zero?
+ 0
+ elsif (search = search_for(dependency).size.to_f) == all && all == 1
0
else
- search_for(dependency).size.to_f / all.size.to_f
+ search / all
end
end
end