End of Life Ruby 3.0 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →
class method
Gem::Package.new
new(gem, security_policy = nil)
lib/rubygems/package.rb
View on GitHub ↗
# File tmp/rubies/ruby-3.0.5/lib/rubygems/package.rb, line 147
def self.new(gem, security_policy = nil)
gem = if gem.is_a?(Gem::Package::Source)
gem
elsif gem.respond_to? :read
Gem::Package::IOSource.new gem
else
Gem::Package::FileSource.new gem
end
return super unless Gem::Package == self
return super unless gem.present?
return super unless gem.start
return super unless gem.start.include? 'MD5SUM ='
Gem::Package::Old.new gem
end
Creates a new Gem::Package for the file at gem. gem can also be provided as an IO object.
If gem is an existing file in the old format a Gem::Package::Old will be returned.