class Gem::Release::Context::Paths::ByGemspecs
def by_gemspecs
def by_gemspecs paths = gemspecs(true).map { |path| [path.dirname, name_for(path)] } paths unless paths.empty? end
def by_names
def by_names paths = names.map { |arg| by_gemspecs.detect { |_, name| name == arg } }.compact paths unless paths.empty? end
def dirs
def dirs dirs = by_gemspecs if opts[:recurse] dirs ||= by_names if names.any? dirs ||= gemspec dirs || by_gemspecs || current end
def gemspec
def gemspec path = gemspecs.first [[path.expand_path.dirname, name_for(path)]] if path end
def gemspecs(recurse = false)
def gemspecs(recurse = false) pattern = recurse ? '**/*.gemspec' : '*.gemspec' Pathname.glob(pattern).map(&:expand_path).sort end
def in_dirs(&block)
def in_dirs(&block) dirs.each do |dir, name| in_dir(dir) { yield name } end end
def name_for(path)
def name_for(path) path.basename('.gemspec').to_s end