aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--lib/rubygems/basic_specification.rb3
-rw-r--r--lib/rubygems/commands/help_command.rb4
-rw-r--r--lib/rubygems/commands/yank_command.rb2
-rw-r--r--lib/rubygems/dependency_installer.rb12
-rw-r--r--lib/rubygems/path_support.rb7
-rw-r--r--lib/rubygems/psych_additions.rb2
-rw-r--r--lib/rubygems/remote_fetcher.rb2
-rw-r--r--lib/rubygems/security/signer.rb2
-rw-r--r--lib/rubygems/specification.rb2
-rw-r--r--test/rubygems/test_gem.rb7
-rw-r--r--test/rubygems/test_gem_commands_pristine_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_unpack_command.rb4
-rw-r--r--test/rubygems/test_gem_dependency_installer.rb28
-rw-r--r--test/rubygems/test_gem_ext_cmake_builder.rb2
-rw-r--r--test/rubygems/test_gem_installer.rb2
-rw-r--r--test/rubygems/test_gem_package.rb2
-rw-r--r--test/rubygems/test_gem_uninstaller.rb4
18 files changed, 62 insertions, 32 deletions
diff --git a/ChangeLog b/ChangeLog
index 1bb4435dbb..c92a439182 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Fri Jan 9 23:20:04 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
+
+ * lib/rubygems: Update to RubyGems HEAD(e53c54a).
+ * test/rubygems: ditto.
+
Fri Jan 9 11:13:01 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (assocs, assoc): eliminate splatting empty literal
diff --git a/lib/rubygems/basic_specification.rb b/lib/rubygems/basic_specification.rb
index f5fb0f5d97..d1cee4f36d 100644
--- a/lib/rubygems/basic_specification.rb
+++ b/lib/rubygems/basic_specification.rb
@@ -61,8 +61,7 @@ class Gem::BasicSpecification
@contains_requirable_file ||= {}
@contains_requirable_file[file] ||=
begin
- if instance_variable_defined?(:@ignored) or
- instance_variable_defined?('@ignored') then
+ if instance_variable_defined?(:@ignored) then
return false
elsif missing_extensions? then
@ignored = true
diff --git a/lib/rubygems/commands/help_command.rb b/lib/rubygems/commands/help_command.rb
index ed81ad6e25..955ceb929f 100644
--- a/lib/rubygems/commands/help_command.rb
+++ b/lib/rubygems/commands/help_command.rb
@@ -176,7 +176,7 @@ dependencies file.:
Ruby Version and Engine Dependency
==================================
-You can specifiy the version, engine and engine version of ruby to use with
+You can specify the version, engine and engine version of ruby to use with
your gem dependencies file. If you are not running the specified version
RubyGems will raise an exception.
@@ -223,7 +223,7 @@ The #group method can also be used to place gems in groups:
The #group method allows multiple groups.
The #gemspec development dependencies are placed in the :development group by
-default. This may be overriden with the :development_group option:
+default. This may be overridden with the :development_group option:
gemspec development_group: :other
diff --git a/lib/rubygems/commands/yank_command.rb b/lib/rubygems/commands/yank_command.rb
index 3c7859e763..c05ee66283 100644
--- a/lib/rubygems/commands/yank_command.rb
+++ b/lib/rubygems/commands/yank_command.rb
@@ -21,7 +21,7 @@ via the webhooks. If you accidentally pushed passwords or other sensitive
data you will need to change them immediately and yank your gem.
If you are yanking a gem due to intellectual property reasons contact
-http://help.rubygems.org for permanant removal. Be sure to mention this
+http://help.rubygems.org for permanent removal. Be sure to mention this
as the reason for the removal request.
EOF
end
diff --git a/lib/rubygems/dependency_installer.rb b/lib/rubygems/dependency_installer.rb
index 039d046da2..9741554360 100644
--- a/lib/rubygems/dependency_installer.rb
+++ b/lib/rubygems/dependency_installer.rb
@@ -218,7 +218,17 @@ class Gem::DependencyInstaller
tuples, errors = Gem::SpecFetcher.fetcher.search_for_dependency dep
if best_only && !tuples.empty?
- tuples.sort! { |a,b| b[0].version <=> a[0].version }
+ tuples.sort! do |a,b|
+ if b[0].version == a[0].version
+ if b[0].platform != Gem::Platform::RUBY
+ 1
+ else
+ -1
+ end
+ else
+ b[0].version <=> a[0].version
+ end
+ end
tuples = [tuples.first]
end
diff --git a/lib/rubygems/path_support.rb b/lib/rubygems/path_support.rb
index 2af303eecf..e68654c428 100644
--- a/lib/rubygems/path_support.rb
+++ b/lib/rubygems/path_support.rb
@@ -43,13 +43,6 @@ class Gem::PathSupport
private
##
- # Set the Gem home directory (as reported by Gem.dir).
-
- def home=(home)
- @home = home.to_s
- end
-
- ##
# Set the Gem search path (as reported by Gem.path).
def path=(gpaths)
diff --git a/lib/rubygems/psych_additions.rb b/lib/rubygems/psych_additions.rb
index 0e4ebbd50c..08fc04c90d 100644
--- a/lib/rubygems/psych_additions.rb
+++ b/lib/rubygems/psych_additions.rb
@@ -1,4 +1,4 @@
-# This exists just to satify bugs in marshal'd gemspecs that
+# This exists just to satisfy bugs in marshal'd gemspecs that
# contain a reference to YAML::PrivateType. We prune these out
# in Specification._load, but if we don't have the constant, Marshal
# blows up.
diff --git a/lib/rubygems/remote_fetcher.rb b/lib/rubygems/remote_fetcher.rb
index d42a7bd9de..da1febbe86 100644
--- a/lib/rubygems/remote_fetcher.rb
+++ b/lib/rubygems/remote_fetcher.rb
@@ -103,7 +103,7 @@ class Gem::RemoteFetcher
# filename. Returns nil if the gem cannot be located.
#--
# Should probably be integrated with #download below, but that will be a
- # larger, more emcompassing effort. -erikh
+ # larger, more encompassing effort. -erikh
def download_to_cache dependency
found, _ = Gem::SpecFetcher.fetcher.spec_for_dependency dependency
diff --git a/lib/rubygems/security/signer.rb b/lib/rubygems/security/signer.rb
index bb1eae7cf2..fbee240f29 100644
--- a/lib/rubygems/security/signer.rb
+++ b/lib/rubygems/security/signer.rb
@@ -122,7 +122,7 @@ class Gem::Security::Signer
# ~/.gem/gem-public_cert.pem.expired.%Y%m%d%H%M%S
#
# If the signing certificate can be re-signed the expired certificate will
- # be saved as ~/.gem/gem-pubilc_cert.pem.expired.%Y%m%d%H%M%S where the
+ # be saved as ~/.gem/gem-public_cert.pem.expired.%Y%m%d%H%M%S where the
# expiry time (not after) is used for the timestamp.
def re_sign_key # :nodoc:
diff --git a/lib/rubygems/specification.rb b/lib/rubygems/specification.rb
index ab1cd92270..631bb7a0d3 100644
--- a/lib/rubygems/specification.rb
+++ b/lib/rubygems/specification.rb
@@ -1932,7 +1932,7 @@ class Gem::Specification < Gem::BasicSpecification
# Singular accessor for #licenses
def license
- val = licenses and val.first
+ licenses.first
end
##
diff --git a/test/rubygems/test_gem.rb b/test/rubygems/test_gem.rb
index 47f57abf81..0428bea213 100644
--- a/test/rubygems/test_gem.rb
+++ b/test/rubygems/test_gem.rb
@@ -1145,7 +1145,7 @@ class TestGem < Gem::TestCase
]
tests.each do |_name, _paths, expected|
- Gem.paths = { 'GEM_HOME' => _paths.first, 'GEM_PATH' => _paths }
+ Gem.use_paths _paths.first, _paths
Gem::Specification.reset
Gem.searcher = nil
@@ -1192,10 +1192,7 @@ class TestGem < Gem::TestCase
install_gem m, :install_dir => Gem.dir
install_gem m, :install_dir => Gem.user_dir
- Gem.paths = {
- 'GEM_HOME' => Gem.dir,
- 'GEM_PATH' => [ Gem.dir, Gem.user_dir]
- }
+ Gem.use_paths Gem.dir, [ Gem.dir, Gem.user_dir]
assert_equal \
File.join(Gem.dir, "gems", "m-1"),
diff --git a/test/rubygems/test_gem_commands_pristine_command.rb b/test/rubygems/test_gem_commands_pristine_command.rb
index 554d503811..38e00bb1cc 100644
--- a/test/rubygems/test_gem_commands_pristine_command.rb
+++ b/test/rubygems/test_gem_commands_pristine_command.rb
@@ -231,7 +231,7 @@ class TestGemCommandsPristineCommand < Gem::TestCase
Gem.clear_paths
gemhome2 = File.join @tempdir, 'gemhome2'
- Gem.paths = { "GEM_PATH" => [gemhome2, @gemhome], "GEM_HOME" => gemhome2 }
+ Gem.use_paths gemhome2, [gemhome2, @gemhome]
b = util_spec 'b'
install_gem b
@@ -301,7 +301,7 @@ class TestGemCommandsPristineCommand < Gem::TestCase
Gem.clear_paths
gemhome2 = File.join(@tempdir, 'gemhome2')
- Gem.paths = { "GEM_PATH" => [gemhome2, @gemhome], "GEM_HOME" => gemhome2 }
+ Gem.use_paths gemhome2, [gemhome2, @gemhome]
install_gem specs["b-1"]
FileUtils.rm File.join(gemhome2, 'cache', 'b-1.gem')
diff --git a/test/rubygems/test_gem_commands_unpack_command.rb b/test/rubygems/test_gem_commands_unpack_command.rb
index 59f6cc6c74..9264b3fc13 100644
--- a/test/rubygems/test_gem_commands_unpack_command.rb
+++ b/test/rubygems/test_gem_commands_unpack_command.rb
@@ -66,7 +66,7 @@ class TestGemCommandsUnpackCommand < Gem::TestCase
gemhome2 = File.join @tempdir, 'gemhome2'
- Gem.paths = { "GEM_PATH" => [gemhome2, @gemhome], "GEM_HOME" => gemhome2 }
+ Gem.use_paths gemhome2, [gemhome2, @gemhome]
@cmd.options[:args] = %w[a]
@@ -86,7 +86,7 @@ class TestGemCommandsUnpackCommand < Gem::TestCase
gemhome2 = File.join @tempdir, 'gemhome2'
- Gem.paths = { "GEM_PATH" => [gemhome2, @gemhome], "GEM_HOME" => gemhome2 }
+ Gem.use_paths gemhome2, [gemhome2, @gemhome]
@cmd.options[:args] = %w[z]
diff --git a/test/rubygems/test_gem_dependency_installer.rb b/test/rubygems/test_gem_dependency_installer.rb
index 8a0470761e..82640068e4 100644
--- a/test/rubygems/test_gem_dependency_installer.rb
+++ b/test/rubygems/test_gem_dependency_installer.rb
@@ -14,6 +14,14 @@ class TestGemDependencyInstaller < Gem::TestCase
FileUtils.mkdir @gems_dir
Gem::RemoteFetcher.fetcher = @fetcher = Gem::FakeFetcher.new
+
+ @original_platforms = Gem.platforms
+ Gem.platforms = []
+ end
+
+ def teardown
+ Gem.platforms = @original_platforms
+ super
end
def util_setup_gems
@@ -272,7 +280,7 @@ class TestGemDependencyInstaller < Gem::TestCase
# This asserts that if a gem's dependency is satisfied by an
# already installed gem, RubyGems doesn't installed a newer
# version
- def test_install_doesnt_upgrade_installed_depedencies
+ def test_install_doesnt_upgrade_installed_dependencies
util_setup_gems
a2, a2_gem = util_gem 'a', '2'
@@ -1084,6 +1092,24 @@ class TestGemDependencyInstaller < Gem::TestCase
assert_equal [@a1_pre, @a1], prereleases
end
+ def test_find_gems_with_sources_with_best_only_and_platform
+ util_setup_gems
+ a1_x86_mingw32, = util_gem 'a', '1' do |s|
+ s.platform = 'x86-mingw32'
+ end
+ util_setup_spec_fetcher @a1, a1_x86_mingw32
+ Gem.platforms << Gem::Platform.new('x86-mingw32')
+
+ installer = Gem::DependencyInstaller.new
+
+ dependency = Gem::Dependency.new('a', Gem::Requirement.default)
+
+ releases =
+ installer.find_gems_with_sources(dependency, true).all_specs
+
+ assert_equal [a1_x86_mingw32], releases
+ end
+
def test_find_gems_with_sources_with_bad_source
Gem.sources.replace ["http://not-there.nothing"]
diff --git a/test/rubygems/test_gem_ext_cmake_builder.rb b/test/rubygems/test_gem_ext_cmake_builder.rb
index aaece6868b..a36be476be 100644
--- a/test/rubygems/test_gem_ext_cmake_builder.rb
+++ b/test/rubygems/test_gem_ext_cmake_builder.rb
@@ -20,7 +20,7 @@ class TestGemExtCmakeBuilder < Gem::TestCase
def test_self_build
File.open File.join(@ext, 'CMakeLists.txt'), 'w' do |cmakelists|
cmakelists.write <<-eo_cmake
-cmake_minimum_required(VERSION 2.8)
+cmake_minimum_required(VERSION 2.6)
install (FILES test.txt DESTINATION bin)
eo_cmake
end
diff --git a/test/rubygems/test_gem_installer.rb b/test/rubygems/test_gem_installer.rb
index 6f8012feb8..701fda15d4 100644
--- a/test/rubygems/test_gem_installer.rb
+++ b/test/rubygems/test_gem_installer.rb
@@ -319,7 +319,7 @@ gem 'other', version
options = {
:bin_dir => bin_dir,
- :install_dir => "/non/existant"
+ :install_dir => "/non/existent"
}
inst = Gem::Installer.new '', options
diff --git a/test/rubygems/test_gem_package.rb b/test/rubygems/test_gem_package.rb
index 128dcdb1c4..9d9c224349 100644
--- a/test/rubygems/test_gem_package.rb
+++ b/test/rubygems/test_gem_package.rb
@@ -298,7 +298,7 @@ class TestGemPackage < Gem::Package::TarTestCase
assert_equal %w[lib/code.rb], reader.contents
end
- def test_build_signed_encryped_key
+ def test_build_signed_encrypted_key
skip 'openssl is missing' unless defined?(OpenSSL::SSL)
spec = Gem::Specification.new 'build', '1'
diff --git a/test/rubygems/test_gem_uninstaller.rb b/test/rubygems/test_gem_uninstaller.rb
index 2a9a15d5b1..774fbe5ae8 100644
--- a/test/rubygems/test_gem_uninstaller.rb
+++ b/test/rubygems/test_gem_uninstaller.rb
@@ -385,7 +385,7 @@ create_makefile '#{@spec.name}'
assert_match %r!Successfully uninstalled q-1!, lines.last
end
- def test_uninstall_only_lists_unsatified_deps
+ def test_uninstall_only_lists_unsatisfied_deps
quick_gem 'r', '1' do |s| s.add_dependency 'q', '~> 1.0' end
quick_gem 'x', '1' do |s| s.add_dependency 'q', '= 1.0' end
quick_gem 'q', '1.0'
@@ -409,7 +409,7 @@ create_makefile '#{@spec.name}'
assert_match %r!Successfully uninstalled q-1.0!, lines.last
end
- def test_uninstall_doesnt_prompt_when_other_gem_satifies_requirement
+ def test_uninstall_doesnt_prompt_when_other_gem_satisfies_requirement
quick_gem 'r', '1' do |s| s.add_dependency 'q', '~> 1.0' end
quick_gem 'q', '1.0'
quick_gem 'q', '1.1'