Sha256: 72e67758abb20f244806fc9fabd196294fefedb97c476df9f4d9495e5a8de36f

Contents?: true

Size: 1.38 KB

Versions: 93

Compression:

Stored size: 1.38 KB

Contents

require 'rubygems'
require 'gauntlet'

##
# GemGauntlet validates all current gems. Currently these packages are
# borked:
#
# Asami-0.04           : No such file or directory - bin/Asami.rb
# ObjectGraph-1.0.1    : No such file or directory - bin/objectgraph
# evil-ruby-0.1.0      : authors must be Array of Strings
# fresh_cookies-1.0.0  : authors must be Array of Strings
# plugems_deploy-0.2.0 : authors must be Array of Strings
# pmsrb-0.2.0          : authors must be Array of Strings
# pqa-1.6              : authors must be Array of Strings
# rant-0.5.7           : authors must be Array of Strings
# rvsh-0.4.5           : No such file or directory - bin/rvsh
# xen-0.1.2.1          : authors must be Array of Strings

class GemGauntlet < Gauntlet
  def run(name)
    warn name

    spec = begin
             Gem::Specification.load 'gemspec'
           rescue SyntaxError
             Gem::Specification.from_yaml File.read('gemspec')
           end
    spec.validate

    self.data[name] = false
    self.dirty = true
  rescue SystemCallError, Gem::InvalidSpecificationException => e
    self.data[name] = e.message
    self.dirty = true
  end

  def should_skip?(name)
    self.data[name] == false
  end

  def report
    self.data.sort.reject { |k,v| !v }.each do |k,v|
      puts "%-21s: %s" % [k, v]
    end
  end
end

gauntlet = GemGauntlet.new
gauntlet.run_the_gauntlet ARGV.shift
gauntlet.report

Version data entries

93 entries across 93 versions & 2 rubygems

Version Path
rubygems-update-2.0.17 lib/gauntlet_rubygems.rb
rubygems-update-2.0.16 lib/gauntlet_rubygems.rb
rubygems-update-2.0.15 lib/gauntlet_rubygems.rb
rubygems-update-1.8.30 lib/gauntlet_rubygems.rb
rubygems-update-1.8.29 lib/gauntlet_rubygems.rb
rubygems-update-2.1.11 lib/gauntlet_rubygems.rb
rubygems-update-2.0.14 lib/gauntlet_rubygems.rb
rubygems-update-2.1.10 lib/gauntlet_rubygems.rb
rubygems-update-2.0.13 lib/gauntlet_rubygems.rb
rubygems-update-2.0.12 lib/gauntlet_rubygems.rb
rubygems-update-2.1.9 lib/gauntlet_rubygems.rb
rubygems-update-2.1.8 lib/gauntlet_rubygems.rb
rubygems-update-2.1.7 lib/gauntlet_rubygems.rb
rubygems-update-1.8.28 lib/gauntlet_rubygems.rb
rubygems-update-2.0.11 lib/gauntlet_rubygems.rb
rubygems-update-2.1.6 lib/gauntlet_rubygems.rb
rubygems-update-1.8.23.2 lib/gauntlet_rubygems.rb
rubygems-update-2.0.10 lib/gauntlet_rubygems.rb
rubygems-update-1.8.27 lib/gauntlet_rubygems.rb
rubygems-update-2.1.5 lib/gauntlet_rubygems.rb