10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# File 'lib/bundler/checksum/command/helper.rb', line 10
def remote_checksums_for_gem(gem_name, gem_version)
response = Net::HTTP.get_response(URI(
"https://rubygems.org/api/v1/versions/#{gem_name}.json"
))
return [] unless response.code == '200'
gem_candidates = JSON.parse(response.body, symbolize_names: true)
gem_candidates.select! { |g| g[:number] == gem_version.to_s }
gem_candidates.map {
|g| {:name => gem_name, :version => gem_version, :platform => g[:platform], :checksum => g[:sha]}
}
rescue JSON::ParserError
[]
end
|