instance method
Gem::Resolver#search_for
search_for(dependency)
lib/rubygems/resolver.rb
View on GitHub ↗
# File tmp/rubies/ruby-4.0.0/lib/rubygems/resolver.rb, line 223
def search_for(dependency)
possibles, all = find_possible(dependency)
if !@soft_missing && possibles.empty?
exc = Gem::UnsatisfiableDependencyError.new dependency, all
exc.errors = @set.errors
raise exc
end
groups = Hash.new {|hash, key| hash[key] = [] }
# create groups & sources in the same loop
sources = possibles.map do |spec|
source = spec.source
groups[source] << spec
source
end.uniq.reverse
activation_requests = []
sources.each do |source|
groups[source].
sort_by {|spec| [spec.version, -Gem::Platform.platform_specificity_match(spec.platform, Gem::Platform.local)] }.
map {|spec| ActivationRequest.new spec, dependency }.
each {|activation_request| activation_requests << activation_request }
end
activation_requests
end
No documentation available