def search(dep)
if base = @base[dep.name] and base.any?
d = Gem::Dependency.new(base.first.name, *[dep.requirement.as_list, base.first.version].flatten)
else
d = dep.dep
end
index = @source_requirements[d.name] || @index
results = index.search_for_all_platforms(d, @base[d.name])
if results.any?
version = results.first.version
nested = [[]]
results.each do |spec|
if spec.version != version
nested << []
version = spec.version
end
nested.last << spec
end
nested.map { |a| SpecGroup.new(a) }.select { |sg| sg.for?(dep.__platform) }
else
[]
end
end