Sha256: 3ba5fe816a052a95baf9c44c191ad52067f671f014865c778dc64980852efbba

Contents?: true

Size: 908 Bytes

Versions: 1

Compression:

Stored size: 908 Bytes

Contents

require "bundle_info/version"
require 'gemnasium/parser'
require 'gems'
require 'active_support/core_ext/string'
require 'colored'

module BundleInfo
  class CommandLine
    def self.invoke(args)
      if Dir.glob('*.gemspec').any?
        gemspec_path = Dir.glob('*.gemspec').first
        gemspec = File.open(gemspec_path).read
        gems = Gemnasium::Parser::Gemspec.new(gemspec)
      elsif File.exist?('Gemfile')
        gemfile = File.open('Gemfile').read
        gems = Gemnasium::Parser::Gemfile.new(gemfile)
      else
        puts "No Gemfile or .gemspec found in current directory"
        exit
      end
      gems.dependencies.map do |dep|
        info = Gems.info dep.name
        output = "#{dep.name}:".green
        if info && info['info']
          desc = info['info'].gsub(/\n/, ' ')
          output += " #{desc.truncate(80)}"
        end
        puts output
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
bundle_info-0.0.4 lib/bundle_info.rb