Skip to content

Commit

Permalink
[rubygems/rubygems] Remove non-transparent requirement added to prere…
Browse files Browse the repository at this point in the history
…lease gems

I think we can safely assume these days that all RubyGems and Bundler
versions that will ever bundle a new gem created in 2023 support
prereleases.

So this non transparent requirement is not necessary.

In my opinion, it should be the gem author to explicitly add this
constraint, not RubyGems.

rubygems/rubygems@b165e6d725
  • Loading branch information
deivid-rodriguez authored and hsbt committed Dec 12, 2023
1 parent b37288c commit a06bf00
Show file tree
Hide file tree
Showing 2 changed files with 1 addition and 14 deletions.
9 changes: 1 addition & 8 deletions lib/rubygems/specification.rb
Expand Up @@ -2674,19 +2674,12 @@ def validate_permissions
rubygems_deprecate :validate_permissions

##
# Set the version to +version+, potentially also setting
# required_rubygems_version if +version+ indicates it is a
# prerelease.
# Set the version to +version+.

def version=(version)
@version = Gem::Version.create(version)
return if @version.nil?

# skip to set required_ruby_version when pre-released rubygems.
# It caused to raise CircularDependencyError
if @version.prerelease? && (@name.nil? || @name.strip != "rubygems")
self.required_rubygems_version = "> 1.3.1"
end
invalidate_memoized_attributes
end

Expand Down
6 changes: 0 additions & 6 deletions test/rubygems/test_gem_specification.rb
Expand Up @@ -2005,12 +2005,6 @@ def test_platform_equals_legacy
assert_equal Gem::Platform.new("ppc-darwin"), @a1.platform
end

def test_prerelease_spec_adds_required_rubygems_version
@prerelease = util_spec("tardis", "2.2.0.a")
refute @prerelease.required_rubygems_version.satisfied_by?(Gem::Version.new("1.3.1"))
assert @prerelease.required_rubygems_version.satisfied_by?(Gem::Version.new("1.4.0"))
end

def test_require_paths
enable_shared "no" do
ext_spec
Expand Down

0 comments on commit a06bf00

Please sign in to comment.