ruby/rubygems · error · SecurityError
The gem '#{indirect_dependency_name}' was found in multiple
Error message
The gem '#{indirect_dependency_name}' was found in multiple relevant sources.
You must add this gem to the source block for the source you wish it to be installed from. What it means
Error "The gem '#{indirect_dependency_name}' was found in multiple relevant sources. You must add this gem to the source block for the source you wish it to be installed from." thrown in ruby/rubygems.
Source
Thrown at lib/bundler/source_map.rb:35
def all_requirements(excluded_sources = [])
requirements = direct_requirements.dup
explicit_sources = sources.non_default_explicit_sources.reject do |source|
excluded_sources.include?(source)
end
unmet_deps = explicit_sources.map do |source|
(source.spec_names - pinned_spec_names).each do |indirect_dependency_name|
previous_source = requirements[indirect_dependency_name]
if previous_source.nil?
requirements[indirect_dependency_name] = source
else
msg = ["The gem '#{indirect_dependency_name}' was found in multiple relevant sources."]
msg.concat [previous_source, source].map {|s| " * #{s}" }.sort
msg << "You must add this gem to the source block for the source you wish it to be installed from."
msg = msg.join("\n")
raise SecurityError, msg
end
end
source.unmet_deps
end
sources.default_source.add_dependency_names(unmet_deps.flatten - requirements.keys)
requirements
end
def direct_requirements
@direct_requirements ||= begin
requirements = {}
default = sources.default_source
dependencies.each do |dep|
dep_source = dep.source || default
dep_source.add_dependency_names(dep.name)View on GitHub (pinned to 86cbb817a3)
When it happens
Trigger: Thrown at lib/bundler/source_map.rb:35 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ruby/rubygems@86cbb817a3 (2026-08-23).
Data as JSON: /api/errors/164e812cc207c7af.
Report an issue: GitHub.