Skip to content

Instantly share code, notes, and snippets.

@sferik
Created April 21, 2011 17:23
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sferik/935037 to your computer and use it in GitHub Desktop.
Save sferik/935037 to your computer and use it in GitHub Desktop.
#!/usr/bin/env ruby
require 'rubygems'
require 'rubygems/remote_fetcher'
file = "Marshal.#{Gem.marshal_version}.Z"
# uri = URI.parse "http://gems.rubyforge.org/#{file}"
# data = Gem::RemoteFetcher.fetcher.fetch_path uri
data = File.read(file)
data = Gem.inflate data
data = Marshal.load data
gem_name = "faraday_middleware"
dependencies = {}
data.each do |name, spec|
# BUG: Only check the latest version of the gem
name = spec.name
version = spec.version.to_s
date = spec.date
# name = faraday_middleware
# dep = faraday
# what are the things that depened on Fraday
spec.dependencies.each do |dependency|
next unless gem_name == dependency.name
dependencies[dependency.name] ||= []
dependencies[dependency.name] << name
end
end
dependencies.each do |name, deps|
deps.uniq.each do |dep|
puts "* #{dep}"
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment