summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel E. Giddins <segiddins@segiddins.me>2015-06-10 14:58:08 -0700
committerSamuel E. Giddins <segiddins@segiddins.me>2015-06-10 14:58:08 -0700
commit90214518a9aa8c6d3157bb914c2fc6beab68e998 (patch)
tree810f8027bee40202dc6d96773337dae0d0c6f950
parentd155010499ae0b68cfd76bb9f8810cfc68f5a24c (diff)
downloadbundler-90214518a9aa8c6d3157bb914c2fc6beab68e998.tar.gz
[Resolver] Add optimization for deps where theres a path/gemspec source
-rw-r--r--lib/bundler/resolver.rb9
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/bundler/resolver.rb b/lib/bundler/resolver.rb
index 61d45aba46..06fd713bd3 100644
--- a/lib/bundler/resolver.rb
+++ b/lib/bundler/resolver.rb
@@ -309,11 +309,14 @@ 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
+ search = search_for(dependency).size.to_f
+ if all.zero?
+ 0
+ elsif search == all && all == 1
0
else
- search_for(dependency).size.to_f / all.size.to_f
+ search / all
end
end
end