Skip to content

Instantly share code, notes, and snippets.

@NakedMoleRatScientist
Created December 19, 2013 16:56
Show Gist options
  • Save NakedMoleRatScientist/8042513 to your computer and use it in GitHub Desktop.
Save NakedMoleRatScientist/8042513 to your computer and use it in GitHub Desktop.
require "rubygems"
require "gems"
require "json"
require "retryable"
gems = []
File.open("gems", "r") do |f|
while (l = f.gets) do
gems << l.strip()
end
end
i = 0
file = File.open("gems-data","a+")
file.each_line do
i += 1
end
puts gems.size
gems.shift(i)
puts gems.size
puts "#of lines that exists: " + i.to_s
notify = Proc.new do |retries|
puts "Trying the #{retries} time! " + Time.now.to_s
end
gems.each do |g|
retryable(:tries => 5,:ensure => notify) do
data = {
:name => g,
:info => Gems.info(g),
:versions => Gems.versions(g),
:dependencies => Gems.dependencies(g)
}
file.write(data)
file.write("\n")
i += 1
puts i
end
end
file.close()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment