Sha256: 8fd6cdc3eb09b1af3ed880ca8f407542d4ed87e1b600dd51f57692daeddd1eb9

Contents?: true

Size: 833 Bytes

Versions: 84

Compression:

Stored size: 833 Bytes

Contents

class Ungemmer
  def self.ungem(*names)
    deps = names.map do |name|
      Gem::Dependency.new(name, nil)
    end

    deps.each do |dep|
      Gem.source_index.search(dep).each do |gemspec|
	puts " ** Ungemming #{gemspec.full_name}  **"
	Gem.source_index.remove_spec(gemspec.full_name)
      end
    end

    Gem.instance_eval do
      if defined? Gem::MUTEX
      Gem::MUTEX.synchronize do
          @searcher = nil
        end
      else
	@searcher = nil
      end
    end
  end

  def self.ungem_gemspec
    Dir[File::expand_path(__FILE__ + "../../../*.gemspec")].each do |gemspec_path|
      puts "Ungemming based on #{gemspec_path}"
      begin
        spec = Gem::Specification::load(gemspec_path)
        Ungemmer::ungem(spec)
      rescue LoadError
        puts "Couldn't load #{gemspec_path}"
      end
    end
  end
end

Version data entries

84 entries across 84 versions & 6 rubygems

Version Path
corundum-0.6.3 spec_help/ungemmer.rb
corundum-0.6.2 spec_help/ungemmer.rb
corundum-0.6.1 spec_help/ungemmer.rb
rspec-steps-2.1.1 spec_help/ungemmer.rb
rspec-steps-2.1.0 spec_help/ungemmer.rb
rspec-steps-2.0.1 spec_help/ungemmer.rb
rspec-steps-2.0.0 spec_help/ungemmer.rb
corundum-0.6.0 spec_help/ungemmer.rb
corundum-0.5.0 spec_help/ungemmer.rb
rspec-steps-1.0.7 spec_help/ungemmer.rb
rspec-steps-1.0.6 spec_help/ungemmer.rb
rspec-steps-1.0.5 spec_help/ungemmer.rb
rspec-steps-1.0.4 spec_help/ungemmer.rb
rspec-steps-1.0.3 spec_help/ungemmer.rb
rspec-steps-1.0.2 spec_help/ungemmer.rb
rspec-steps-1.0.1 spec_help/ungemmer.rb
rspec-steps-1.0.0 spec_help/ungemmer.rb
two-step-1.0 spec_help/ungemmer.rb
corundum-0.4.1 spec_help/ungemmer.rb
corundum-0.4.0 spec_help/ungemmer.rb