diff --git a/Library/Homebrew/test/test_versions.rb b/Library/Homebrew/test/test_versions.rb index 307bf6ead8..21bf324a38 100644 --- a/Library/Homebrew/test/test_versions.rb +++ b/Library/Homebrew/test/test_versions.rb @@ -63,6 +63,8 @@ class VersionComparisonTests < Homebrew::TestCase end def test_comparing_alpha_versions + assert_operator version("1.2.3alpha"), :<, version("1.2.3") + assert_operator version("1.2.3"), :<, version("1.2.3a") assert_operator version("1.2.3alpha4"), :==, version("1.2.3a4") assert_operator version("1.2.3alpha4"), :==, version("1.2.3A4") assert_operator version("1.2.3alpha4"), :>, version("1.2.3alpha3") diff --git a/Library/Homebrew/version.rb b/Library/Homebrew/version.rb index 00fe2f4901..60a8336095 100644 --- a/Library/Homebrew/version.rb +++ b/Library/Homebrew/version.rb @@ -95,7 +95,7 @@ class Version end class AlphaToken < CompositeToken - PATTERN = /a(?:lpha)?[0-9]*/i + PATTERN = /alpha[0-9]*|a[0-9]+/i def <=>(other) case other @@ -108,7 +108,7 @@ class Version end class BetaToken < CompositeToken - PATTERN = /b(?:eta)?[0-9]*/i + PATTERN = /beta[0-9]*|b[0-9]+/i def <=>(other) case other