class Gem::Resolver::APISet

def versions(name) # :nodoc:

:nodoc:
def versions(name) # :nodoc:
  if @data.key?(name)
    return @data[name]
  end
  uri = @dep_uri + name
  begin
    str = Gem::RemoteFetcher.fetcher.fetch_path uri
  rescue Gem::RemoteFetcher::FetchError
    @data[name] = []
  else
    lines(str).each do |ver|
      number, platform, dependencies, requirements = parse_gem(ver)
      platform ||= "ruby"
      dependencies = dependencies.map {|dep_name, reqs| [dep_name, reqs.join(", ")] }
      requirements = requirements.map {|req_name, reqs| [req_name.to_sym, reqs] }.to_h
      @data[name] << { name: name, number: number, platform: platform, dependencies: dependencies, requirements: requirements }
    end
  end
  @data[name]
end