Merge rubygems-3.0.2.
https://blog.rubygems.org/2019/01/01/3.0.2-released.html git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
f77d381159
commit
6e7213f427
@ -9,7 +9,7 @@
|
|||||||
require 'rbconfig'
|
require 'rbconfig'
|
||||||
|
|
||||||
module Gem
|
module Gem
|
||||||
VERSION = "3.0.1".freeze
|
VERSION = "3.0.2".freeze
|
||||||
end
|
end
|
||||||
|
|
||||||
# Must be first since it unloads the prelude from 1.9.2
|
# Must be first since it unloads the prelude from 1.9.2
|
||||||
|
@ -30,7 +30,7 @@ module Gem::InstallUpdateOptions
|
|||||||
options[:bin_dir] = File.expand_path(value)
|
options[:bin_dir] = File.expand_path(value)
|
||||||
end
|
end
|
||||||
|
|
||||||
add_option(:"Install/Update", '--[no-]document [TYPES]', Array,
|
add_option(:"Install/Update", '--document [TYPES]', Array,
|
||||||
'Generate documentation for installed gems',
|
'Generate documentation for installed gems',
|
||||||
'List the documentation types you wish to',
|
'List the documentation types you wish to',
|
||||||
'generate. For example: rdoc,ri') do |value, options|
|
'generate. For example: rdoc,ri') do |value, options|
|
||||||
|
@ -267,7 +267,22 @@ class Gem::Requirement
|
|||||||
|
|
||||||
def ==(other) # :nodoc:
|
def ==(other) # :nodoc:
|
||||||
return unless Gem::Requirement === other
|
return unless Gem::Requirement === other
|
||||||
requirements == other.requirements
|
|
||||||
|
# An == check is always necessary
|
||||||
|
return false unless requirements == other.requirements
|
||||||
|
|
||||||
|
# An == check is sufficient unless any requirements use ~>
|
||||||
|
return true unless _tilde_requirements.any?
|
||||||
|
|
||||||
|
# If any requirements use ~> we use the stricter `#eql?` that also checks
|
||||||
|
# that version precision is the same
|
||||||
|
_tilde_requirements.eql?(other._tilde_requirements)
|
||||||
|
end
|
||||||
|
|
||||||
|
protected
|
||||||
|
|
||||||
|
def _tilde_requirements
|
||||||
|
requirements.select { |r| r.first == "~>" }
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
@ -150,6 +150,11 @@ class TestGem < Gem::TestCase
|
|||||||
File.umask(umask)
|
File.umask(umask)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_self_install_permissions_with_format_executable
|
||||||
|
@format_executable = true
|
||||||
|
assert_self_install_permissions
|
||||||
|
end
|
||||||
|
|
||||||
def assert_self_install_permissions
|
def assert_self_install_permissions
|
||||||
mask = /mingw|mswin/ =~ RUBY_PLATFORM ? 0700 : 0777
|
mask = /mingw|mswin/ =~ RUBY_PLATFORM ? 0700 : 0777
|
||||||
options = {
|
options = {
|
||||||
@ -157,6 +162,7 @@ class TestGem < Gem::TestCase
|
|||||||
:prog_mode => 0510,
|
:prog_mode => 0510,
|
||||||
:data_mode => 0640,
|
:data_mode => 0640,
|
||||||
:wrappers => true,
|
:wrappers => true,
|
||||||
|
:format_executable => !!(@format_executable if defined?(@format_executable))
|
||||||
}
|
}
|
||||||
Dir.chdir @tempdir do
|
Dir.chdir @tempdir do
|
||||||
Dir.mkdir 'bin'
|
Dir.mkdir 'bin'
|
||||||
@ -182,8 +188,10 @@ class TestGem < Gem::TestCase
|
|||||||
prog_mode = (options[:prog_mode] & mask).to_s(8)
|
prog_mode = (options[:prog_mode] & mask).to_s(8)
|
||||||
dir_mode = (options[:dir_mode] & mask).to_s(8)
|
dir_mode = (options[:dir_mode] & mask).to_s(8)
|
||||||
data_mode = (options[:data_mode] & mask).to_s(8)
|
data_mode = (options[:data_mode] & mask).to_s(8)
|
||||||
|
prog_name = 'foo.cmd'
|
||||||
|
prog_name = RUBY_INSTALL_NAME.sub('ruby', 'foo.cmd') if options[:format_executable]
|
||||||
expected = {
|
expected = {
|
||||||
"bin/#{RUBY_INSTALL_NAME.sub('ruby', 'foo.cmd')}" => prog_mode,
|
"bin/#{prog_name}" => prog_mode,
|
||||||
'gems/foo-1' => dir_mode,
|
'gems/foo-1' => dir_mode,
|
||||||
'gems/foo-1/bin' => dir_mode,
|
'gems/foo-1/bin' => dir_mode,
|
||||||
'gems/foo-1/data' => dir_mode,
|
'gems/foo-1/data' => dir_mode,
|
||||||
|
@ -20,6 +20,12 @@ class TestGemRequirement < Gem::TestCase
|
|||||||
refute_requirement_equal "= 1.2", "= 1.3"
|
refute_requirement_equal "= 1.2", "= 1.3"
|
||||||
refute_requirement_equal "= 1.3", "= 1.2"
|
refute_requirement_equal "= 1.3", "= 1.2"
|
||||||
|
|
||||||
|
refute_requirement_equal "~> 1.3", "~> 1.3.0"
|
||||||
|
refute_requirement_equal "~> 1.3.0", "~> 1.3"
|
||||||
|
|
||||||
|
assert_requirement_equal ["> 2", "~> 1.3"], ["> 2.0", "~> 1.3"]
|
||||||
|
assert_requirement_equal ["> 2.0", "~> 1.3"], ["> 2", "~> 1.3"]
|
||||||
|
|
||||||
refute_equal Object.new, req("= 1.2")
|
refute_equal Object.new, req("= 1.2")
|
||||||
refute_equal req("= 1.2"), Object.new
|
refute_equal req("= 1.2"), Object.new
|
||||||
end
|
end
|
||||||
|
Loading…
x
Reference in New Issue
Block a user