Class: Dependabot::Utils::Java::Version
- Inherits:
-
Gem::Version
- Object
- Gem::Version
- Dependabot::Utils::Java::Version
- Defined in:
- lib/dependabot/utils/java/version.rb
Constant Summary collapse
- NULL_VALUES =
%w(0 final ga).freeze
- PREFIXED_TOKEN_HIERARCHY =
{ "." => { qualifier: 1, number: 4 }, "-" => { qualifier: 2, number: 3 } }.freeze
- NAMED_QUALIFIERS_HIERARCHY =
{ "a" => 1, "alpha" => 1, "b" => 2, "beta" => 2, "m" => 3, "milestone" => 3, "rc" => 4, "cr" => 4, "snapshot" => 5, "ga" => 6, "" => 6, "final" => 6, "sp" => 7 }.freeze
- VERSION_PATTERN =
'[0-9a-zA-Z]+(?>\.[0-9a-zA-Z]*)*(-[0-9A-Za-z-]*(\.[0-9A-Za-z-]*)*)?'- ANCHORED_VERSION_PATTERN =
/\A\s*(#{VERSION_PATTERN})?\s*\z/.freeze
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(version) ⇒ Version
constructor
A new instance of Version.
- #prerelease? ⇒ Boolean
- #to_s ⇒ Object
Constructor Details
#initialize(version) ⇒ Version
Returns a new instance of Version.
36 37 38 39 |
# File 'lib/dependabot/utils/java/version.rb', line 36 def initialize(version) @version_string = version.to_s super(version.to_s.tr("_", "-")) end |
Class Method Details
.correct?(version) ⇒ Boolean
30 31 32 33 34 |
# File 'lib/dependabot/utils/java/version.rb', line 30 def self.correct?(version) return false if version.nil? version.to_s.match?(ANCHORED_VERSION_PATTERN) end |
Instance Method Details
#prerelease? ⇒ Boolean
45 46 47 48 49 50 51 |
# File 'lib/dependabot/utils/java/version.rb', line 45 def prerelease? tokens.any? do |token| next false unless NAMED_QUALIFIERS_HIERARCHY[token] NAMED_QUALIFIERS_HIERARCHY[token] < 6 end end |
#to_s ⇒ Object
41 42 43 |
# File 'lib/dependabot/utils/java/version.rb', line 41 def to_s @version_string end |