Maintenance Ruby 3.4 gets fixes, but no new features. Switch to Ruby 4.0 →
instance method
Gem::Version#canonical_segments
() -> ::Array[::Integer | ::String]
canonical_segments
lib/rubygems/version.rb
View on GitHub ↗
# File tmp/rubies/ruby-3.4.1/lib/rubygems/version.rb, line 391
def canonical_segments
@canonical_segments ||= begin
# remove trailing 0 segments, using dot or letter as anchor
# may leave a trailing dot which will be ignored by partition_segments
canonical_version = @version.sub(/(?<=[a-zA-Z.])[.0]+\z/, "")
# remove 0 segments before the first letter in a prerelease version
canonical_version.sub!(/(?<=\.|\A)[0.]+(?=[a-zA-Z])/, "") if prerelease?
partition_segments(canonical_version)
end
end
remove trailing zeros segments before first letter or at the end of the version