diff options
-rw-r--r-- | lib/rubygems/requirement.rb | 2 | ||||
-rw-r--r-- | test/rubygems/test_gem_requirement.rb | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/lib/rubygems/requirement.rb b/lib/rubygems/requirement.rb index 65bc83777e..d9d7c2fbad 100644 --- a/lib/rubygems/requirement.rb +++ b/lib/rubygems/requirement.rb @@ -111,7 +111,7 @@ class Gem::Requirement elsif $1 == ">=" && $2 == "0.a" DefaultPrereleaseRequirement else - [$1 || "=", Gem::Version.new($2)] + [-($1 || "="), Gem::Version.new($2)] end end diff --git a/test/rubygems/test_gem_requirement.rb b/test/rubygems/test_gem_requirement.rb index 55a902dc83..af9d807701 100644 --- a/test/rubygems/test_gem_requirement.rb +++ b/test/rubygems/test_gem_requirement.rb @@ -81,6 +81,12 @@ class TestGemRequirement < Gem::TestCase Gem::Requirement.parse(Gem::Version.new('2')) end + if RUBY_VERSION >= '2.5' + def test_parse_deduplication + assert_same '~>', Gem::Requirement.parse('~> 1').first + end + end + def test_parse_bad [ nil, |