instance method
Gem::Resolver::Conflict#explanation
explanation
lib/rubygems/resolver/conflict.rb
View on GitHub ↗
# File tmp/rubies/ruby-4.0.0/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(&:full_name)
unless alternates.empty?
matching = <<-MATCHING.chomp
Gems matching %s:
%s
MATCHING
matching = format(matching, dependency, alternates.join(", "))
end
explanation = <<-EXPLANATION
Activated %s
which does not match conflicting dependency (%s)
Conflicting dependency chains:
%s
versus:
%s
%s
EXPLANATION
format(explanation, activated, requirement, request_path(@activated).reverse.join(", depends on\n "), request_path(@failed_dep).reverse.join(", depends on\n "), matching)
end
Explanation of the conflict used by exceptions to print useful messages
See also
#explain
#for_spec?
#conflicting_dependencies
#requester
also in
3.4 · 3.3 · 3.2 · 3.1 · 3.0