Class: Gem::Specification

Inherits:
Object show all
Defined in:
lib/bowline/dependencies/lib/ext/rubygems.rb

Instance Method Summary collapse

Instance Method Details

#recursive_dependencies(from, index = Gem.source_index) ⇒ Object



106
107
108
109
110
111
112
113
114
115
# File 'lib/bowline/dependencies/lib/ext/rubygems.rb', line 106

def recursive_dependencies(from, index = Gem.source_index)
  specs = self.runtime_dependencies.map do |dep|
    spec = index.search(dep).last
    unless spec
      raise "Needed #{dep} for #{from}, but could not find it"
    end
    spec
  end
  specs + specs.map {|s| s.recursive_dependencies(self, index)}.flatten.uniq
end