explanation()
public
Explanation of the conflict used by exceptions to print useful messages
# File lib/rubygems/resolver/conflict.rb, line 54
def explanation
activated = @activated.spec.full_name
dependency = @failed_dep.dependency
requirement = dependency.requirement
alternates = dependency.matching_specs.map { |spec| spec.full_name }
unless alternates.empty?
matching = Gems matching %s: %s.chomp
matching = matching % [
dependency,
alternates.join(', '),
]
end
explanation = Activated %s which does not match conflicting dependency (%s) Conflicting dependency chains: %s versus: %s%s
explanation % [
activated, requirement,
request_path(@activated).reverse.join(", depends on\n "),
request_path(@failed_dep).reverse.join(", depends on\n "),
matching,
]
end