summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordanielsdeleo <dan@getchef.com>2015-06-01 08:19:57 -0700
committerdanielsdeleo <dan@getchef.com>2015-06-01 08:19:57 -0700
commit02e8874637dd661b5aaf656a5c2d6fbbb5795619 (patch)
treea6f9b447b4209e5e61a6dd6ba3138891426f9e04
parente3c455bd083ec7f87b8935a54cfc53692fdb1311 (diff)
downloadchef-02e8874637dd661b5aaf656a5c2d6fbbb5795619.tar.gz
Drop support for rubygems 1.xdrop-rubygems-1.x
Ruby 2.0 is the oldest release we support, and it ships with Rubygems 2.0: https://github.com/ruby/ruby/blob/v2_0_0_0/lib/rubygems.rb#L11
-rw-r--r--lib/chef/provider/package/rubygems.rb9
-rw-r--r--spec/unit/provider/package/rubygems_spec.rb32
2 files changed, 1 insertions, 40 deletions
diff --git a/lib/chef/provider/package/rubygems.rb b/lib/chef/provider/package/rubygems.rb
index c53aa8934a..d120a64f0d 100644
--- a/lib/chef/provider/package/rubygems.rb
+++ b/lib/chef/provider/package/rubygems.rb
@@ -32,14 +32,7 @@ require 'rubygems/version'
require 'rubygems/dependency'
require 'rubygems/spec_fetcher'
require 'rubygems/platform'
-
-# Compatibility note: Rubygems 2.0 removes rubygems/format in favor of
-# rubygems/package.
-begin
- require 'rubygems/format'
-rescue LoadError
- require 'rubygems/package'
-end
+require 'rubygems/package'
require 'rubygems/dependency_installer'
require 'rubygems/uninstaller'
require 'rubygems/specification'
diff --git a/spec/unit/provider/package/rubygems_spec.rb b/spec/unit/provider/package/rubygems_spec.rb
index 3ccc69652f..d3cee82623 100644
--- a/spec/unit/provider/package/rubygems_spec.rb
+++ b/spec/unit/provider/package/rubygems_spec.rb
@@ -107,38 +107,6 @@ describe Chef::Provider::Package::Rubygems::CurrentGemEnvironment do
expect(@gem_env.candidate_version_from_remote(Gem::Dependency.new('rspec', '>= 0'))).to eq(Gem::Version.new('1.3.0'))
end
- context "when rubygems was upgraded from 1.8->2.0" do
- # https://github.com/rubygems/rubygems/issues/404
- # tl;dr rubygems 1.8 and 2.0 can both be in the load path, which means that
- # require "rubygems/format" will load even though rubygems 2.0 doesn't have
- # that file.
-
- before do
- if defined?(Gem::Format)
- # tests are running under rubygems 1.8, or 2.0 upgraded from 1.8
- @remove_gem_format = false
- else
- Gem.const_set(:Format, Object.new)
- @remove_gem_format = true
- end
- allow(Gem::Package).to receive(:respond_to?).and_call_original
- allow(Gem::Package).to receive(:respond_to?).with(:open).and_return(false)
- end
-
- after do
- if @remove_gem_format
- Gem.send(:remove_const, :Format)
- end
- end
-
- it "finds a matching gem candidate version on rubygems 2.0+ with some rubygems 1.8 code loaded" do
- package = double("Gem::Package", :spec => "a gemspec from package")
- expect(Gem::Package).to receive(:new).with("/path/to/package.gem").and_return(package)
- expect(@gem_env.spec_from_file("/path/to/package.gem")).to eq("a gemspec from package")
- end
-
- end
-
it "gives the candidate version as nil if none is found" do
dep = Gem::Dependency.new('rspec', '>= 0')
latest = []