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.