summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/rubygems.rb2
-rw-r--r--lib/rubygems/commands/setup_command.rb19
-rw-r--r--lib/rubygems/requirement.rb8
-rw-r--r--lib/rubygems/test_case.rb2
-rw-r--r--test/rubygems/test_bundled_ca.rb7
-rw-r--r--test/rubygems/test_gem_commands_build_command.rb2
-rw-r--r--test/rubygems/test_gem_commands_setup_command.rb22
-rw-r--r--test/rubygems/test_gem_requirement.rb2
-rw-r--r--test/rubygems/test_gem_stub_specification.rb8
9 files changed, 34 insertions, 38 deletions
diff --git a/lib/rubygems.rb b/lib/rubygems.rb
index 03f9063c2b..eabe1c45dd 100644
--- a/lib/rubygems.rb
+++ b/lib/rubygems.rb
@@ -8,7 +8,7 @@
require 'rbconfig'
module Gem
- VERSION = "3.2.0.rc.1".freeze
+ VERSION = "3.2.0.rc.2".freeze
end
# Must be first since it unloads the prelude from 1.9.2
diff --git a/lib/rubygems/commands/setup_command.rb b/lib/rubygems/commands/setup_command.rb
index 73c1b65223..b63920ab8d 100644
--- a/lib/rubygems/commands/setup_command.rb
+++ b/lib/rubygems/commands/setup_command.rb
@@ -533,14 +533,14 @@ By default, this RubyGems will install gem as:
# for installation of bundler as default gems
def bundler_man1_files_in(dir)
Dir.chdir dir do
- Dir['bundle*.1{,.txt}']
+ Dir['bundle*.1{,.txt,.ronn}']
end
end
# for installation of bundler as default gems
def bundler_man5_files_in(dir)
Dir.chdir dir do
- Dir['gemfile.5{,.txt}']
+ Dir['gemfile.5{,.txt,.ronn}']
end
end
@@ -617,15 +617,16 @@ abort "#{deprecation_message}"
def remove_old_man_files(man_dir)
man_dirs = { man_dir => "bundler/man" }
man_dirs.each do |old_man_dir, new_man_dir|
- man1_files = bundler_man1_files_in(new_man_dir)
+ ["1", "5"].each do |section|
+ man_files = send(:"bundler_man#{section}_files_in", new_man_dir)
- old_man1_dir = "#{old_man_dir}/man1"
+ old_man_dir_with_section = "#{old_man_dir}/man#{section}"
+ old_man_files = send(:"bundler_man#{section}_files_in", old_man_dir_with_section)
- old_man1_files = bundler_man1_files_in(old_man1_dir)
+ man_to_remove = old_man_files - man_files
- man1_to_remove = old_man1_files - man1_files
-
- remove_file_list(man1_to_remove, old_man1_dir)
+ remove_file_list(man_to_remove, old_man_dir_with_section)
+ end
end
end
@@ -638,8 +639,6 @@ abort "#{deprecation_message}"
history.force_encoding Encoding::UTF_8
- history = history.sub(/^# coding:.*?(?=^=)/m, '')
-
text = history.split(HISTORY_HEADER)
text.shift # correct an off-by-one generated by split
version_lines = history.scan(HISTORY_HEADER)
diff --git a/lib/rubygems/requirement.rb b/lib/rubygems/requirement.rb
index d9d7c2fbad..a2a5c7bca1 100644
--- a/lib/rubygems/requirement.rb
+++ b/lib/rubygems/requirement.rb
@@ -270,7 +270,7 @@ class Gem::Requirement
return unless Gem::Requirement === other
# An == check is always necessary
- return false unless requirements == other.requirements
+ return false unless _sorted_requirements == other._sorted_requirements
# An == check is sufficient unless any requirements use ~>
return true unless _tilde_requirements.any?
@@ -282,8 +282,12 @@ class Gem::Requirement
protected
+ def _sorted_requirements
+ @_sorted_requirements ||= requirements.sort_by(&:to_s)
+ end
+
def _tilde_requirements
- requirements.select {|r| r.first == "~>" }
+ @_tilde_requirements ||= _sorted_requirements.select {|r| r.first == "~>" }
end
private
diff --git a/lib/rubygems/test_case.rb b/lib/rubygems/test_case.rb
index 7bf7142a45..09b91b6ac6 100644
--- a/lib/rubygems/test_case.rb
+++ b/lib/rubygems/test_case.rb
@@ -109,8 +109,6 @@ class Gem::TestCase < Minitest::Test
TEST_PATH = ENV.fetch('RUBYGEMS_TEST_PATH', File.expand_path('../../../test/rubygems', __FILE__))
- SPECIFICATIONS = File.expand_path(File.join(TEST_PATH, "specifications"), __FILE__)
-
def assert_activate(expected, *specs)
specs.each do |spec|
case spec
diff --git a/test/rubygems/test_bundled_ca.rb b/test/rubygems/test_bundled_ca.rb
index b30264a8d4..557298d8d5 100644
--- a/test/rubygems/test_bundled_ca.rb
+++ b/test/rubygems/test_bundled_ca.rb
@@ -15,15 +15,10 @@ require 'rubygems/request'
#
class TestBundledCA < Gem::TestCase
- THIS_FILE = File.expand_path __FILE__
-
def bundled_certificate_store
store = OpenSSL::X509::Store.new
- ssl_cert_glob =
- File.expand_path '../../../lib/rubygems/ssl_certs/*/*.pem', THIS_FILE
-
- Dir[ssl_cert_glob].each do |ssl_cert|
+ Gem::Request.get_cert_files.each do |ssl_cert|
store.add_file ssl_cert
end
diff --git a/test/rubygems/test_gem_commands_build_command.rb b/test/rubygems/test_gem_commands_build_command.rb
index 01f3487ad4..24c60473f2 100644
--- a/test/rubygems/test_gem_commands_build_command.rb
+++ b/test/rubygems/test_gem_commands_build_command.rb
@@ -148,7 +148,7 @@ class TestGemCommandsBuildCommand < Gem::TestCase
end
def test_execute_rubyforge_project_warning
- rubyforge_gemspec = File.join SPECIFICATIONS, "rubyforge-0.0.1.gemspec"
+ rubyforge_gemspec = File.expand_path File.join("specifications", "rubyforge-0.0.1.gemspec"), __dir__
@cmd.options[:args] = [rubyforge_gemspec]
diff --git a/test/rubygems/test_gem_commands_setup_command.rb b/test/rubygems/test_gem_commands_setup_command.rb
index 050c1ce3a6..9b6aa87861 100644
--- a/test/rubygems/test_gem_commands_setup_command.rb
+++ b/test/rubygems/test_gem_commands_setup_command.rb
@@ -29,9 +29,9 @@ class TestGemCommandsSetupCommand < Gem::TestCase
bundler/lib/bundler/templates/.circleci/config.yml
bundler/lib/bundler/templates/.travis.yml
bundler/man/bundle-b.1
- bundler/man/bundle-b.1.txt
+ bundler/man/bundle-b.1.ronn
bundler/man/gemfile.5
- bundler/man/gemfile.5.txt
+ bundler/man/gemfile.5.ronn
]
create_dummy_files(filelist)
@@ -166,12 +166,12 @@ class TestGemCommandsSetupCommand < Gem::TestCase
end
def test_bundler_man1_files_in
- assert_equal %w[bundle-b.1 bundle-b.1.txt],
+ assert_equal %w[bundle-b.1 bundle-b.1.ronn],
@cmd.bundler_man1_files_in('bundler/man').sort
end
def test_bundler_man5_files_in
- assert_equal %w[gemfile.5 gemfile.5.txt],
+ assert_equal %w[gemfile.5 gemfile.5.ronn],
@cmd.bundler_man5_files_in('bundler/man').sort
end
@@ -199,9 +199,9 @@ class TestGemCommandsSetupCommand < Gem::TestCase
@cmd.install_man dir
assert_path_exists File.join("#{dir}/man1", 'bundle-b.1')
- assert_path_exists File.join("#{dir}/man1", 'bundle-b.1.txt')
+ assert_path_exists File.join("#{dir}/man1", 'bundle-b.1.ronn')
assert_path_exists File.join("#{dir}/man5", 'gemfile.5')
- assert_path_exists File.join("#{dir}/man5", 'gemfile.5.txt')
+ assert_path_exists File.join("#{dir}/man5", 'gemfile.5.ronn')
end
end
@@ -307,14 +307,14 @@ class TestGemCommandsSetupCommand < Gem::TestCase
ruby_1 = File.join man, 'man1', 'ruby.1'
bundle_b_1 = File.join man, 'man1', 'bundle-b.1'
+ bundle_b_1_ronn = File.join man, 'man1', 'bundle-b.1.ronn'
bundle_b_1_txt = File.join man, 'man1', 'bundle-b.1.txt'
- bundle_old_b_1 = File.join man, 'man1', 'bundle-old_b.1'
- bundle_old_b_1_txt = File.join man, 'man1', 'bundle-old_b.1.txt'
gemfile_5 = File.join man, 'man5', 'gemfile.5'
+ gemfile_5_ronn = File.join man, 'man5', 'gemfile.5.ronn'
gemfile_5_txt = File.join man, 'man5', 'gemfile.5.txt'
- files_that_go = [bundle_old_b_1, bundle_old_b_1_txt]
- files_that_stay = [ruby_1, bundle_b_1, bundle_b_1_txt, gemfile_5, gemfile_5_txt]
+ files_that_go = [bundle_b_1_txt, gemfile_5_txt]
+ files_that_stay = [ruby_1, bundle_b_1, bundle_b_1_ronn, gemfile_5, gemfile_5_ronn]
create_dummy_files(files_that_go + files_that_stay)
@@ -333,8 +333,6 @@ class TestGemCommandsSetupCommand < Gem::TestCase
File.open 'History.txt', 'w' do |io|
io.puts <<-HISTORY_TXT
-# coding: UTF-8
-
=== #{Gem::VERSION} / 2013-03-26
* Bug fixes:
diff --git a/test/rubygems/test_gem_requirement.rb b/test/rubygems/test_gem_requirement.rb
index af9d807701..20127a1e15 100644
--- a/test/rubygems/test_gem_requirement.rb
+++ b/test/rubygems/test_gem_requirement.rb
@@ -22,6 +22,8 @@ class TestGemRequirement < Gem::TestCase
refute_requirement_equal "~> 1.3", "~> 1.3.0"
refute_requirement_equal "~> 1.3.0", "~> 1.3"
+ assert_requirement_equal ["> 2", "~> 1.3", "~> 1.3.1"], ["~> 1.3.1", "~> 1.3", "> 2"]
+
assert_requirement_equal ["> 2", "~> 1.3"], ["> 2.0", "~> 1.3"]
assert_requirement_equal ["> 2.0", "~> 1.3"], ["> 2", "~> 1.3"]
diff --git a/test/rubygems/test_gem_stub_specification.rb b/test/rubygems/test_gem_stub_specification.rb
index 5a47fa520a..2ee94dcf8d 100644
--- a/test/rubygems/test_gem_stub_specification.rb
+++ b/test/rubygems/test_gem_stub_specification.rb
@@ -3,14 +3,14 @@ require "rubygems/test_case"
require "rubygems/stub_specification"
class TestStubSpecification < Gem::TestCase
- FOO = File.join SPECIFICATIONS, "foo-0.0.1-x86-mswin32.gemspec"
- BAR = File.join SPECIFICATIONS, "bar-0.0.2.gemspec"
+ FOO = File.expand_path File.join("specifications", "foo-0.0.1-x86-mswin32.gemspec"), __dir__
+ BAR = File.expand_path File.join("specifications", "bar-0.0.2.gemspec"), __dir__
def setup
super
- @base_dir = File.dirname(SPECIFICATIONS)
- @gems_dir = File.join File.dirname(SPECIFICATIONS), 'gem'
+ @base_dir = __dir__
+ @gems_dir = File.join __dir__, 'gem'
@foo = Gem::StubSpecification.gemspec_stub FOO, @base_dir, @gems_dir
end