summaryrefslogtreecommitdiff
path: root/lib/bundler/resolver.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/bundler/resolver.rb')
-rw-r--r--lib/bundler/resolver.rb19
1 files changed, 7 insertions, 12 deletions
diff --git a/lib/bundler/resolver.rb b/lib/bundler/resolver.rb
index 22d61fba36..be0751d9d2 100644
--- a/lib/bundler/resolver.rb
+++ b/lib/bundler/resolver.rb
@@ -249,10 +249,11 @@ module Bundler
end
def verify_gemfile_dependencies_are_found!(requirements)
- requirements.each do |requirement|
+ requirements.map! do |requirement|
name = requirement.name
- next if name == "bundler"
- next unless search_for(requirement).empty?
+ next requirement if name == "bundler"
+ next requirement unless search_for(requirement).empty?
+ next unless requirement.current_platform?
if (base = @base[name]) && !base.empty?
version = base.first.version
@@ -266,7 +267,7 @@ module Bundler
message = gem_not_found_message(name, requirement, source_for(name))
end
raise GemNotFound, message
- end
+ end.compact!
end
def gem_not_found_message(name, requirement, source, extra_message = "")
@@ -358,24 +359,18 @@ module Bundler
o << "\n"
o << %(Running `bundle update` will rebuild your snapshot from scratch, using only\n)
o << %(the gems in your Gemfile, which may resolve the conflict.\n)
- elsif !conflict.existing
+ elsif !conflict.existing && !name.end_with?("\0")
o << "\n"
relevant_source = conflict.requirement.source || source_for(name)
- metadata_requirement = name.end_with?("\0")
-
extra_message = if conflict.requirement_trees.first.size > 1
", which is required by gem '#{SharedHelpers.pretty_dependency(conflict.requirement_trees.first[-2])}',"
else
""
end
- if metadata_requirement
- o << "#{SharedHelpers.pretty_dependency(conflict.requirement)}#{extra_message} is not available in #{relevant_source}"
- else
- o << gem_not_found_message(name, conflict.requirement, relevant_source, extra_message)
- end
+ o << gem_not_found_message(name, conflict.requirement, relevant_source, extra_message)
end
end,
:version_for_spec => lambda {|spec| spec.version },