class Gem::Resolver::InstallerSet
def find_all(req)
def find_all(req) res = [] dep = req.dependency return res if @ignore_dependencies && @always_install.none? {|spec| dep.match? spec } name = dep.name dep.matching_specs.each do |gemspec| next if @always_install.any? {|spec| spec.name == gemspec.name } res << Gem::Resolver::InstalledSpecification.new(self, gemspec) end unless @ignore_installed matching_local = [] if consider_local? matching_local = @local.values.select do |spec, _| req.match? spec end.map do |spec, source| Gem::Resolver::LocalSpecification.new self, spec, source end res.concat matching_local begin if local_spec = @local_source.find_gem(name, dep.requirement) res << Gem::Resolver::IndexSpecification.new( self, local_spec.name, local_spec.version, @local_source, local_spec.platform ) end rescue Gem::Package::FormatError # ignore end end res.concat @remote_set.find_all req if consider_remote? && matching_local.empty? res end