aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/test/version_spec.rb5
-rw-r--r--Library/Homebrew/version.rb5
2 files changed, 10 insertions, 0 deletions
diff --git a/Library/Homebrew/test/version_spec.rb b/Library/Homebrew/test/version_spec.rb
index d3d63a25c..41e05019c 100644
--- a/Library/Homebrew/test/version_spec.rb
+++ b/Library/Homebrew/test/version_spec.rb
@@ -433,6 +433,11 @@ describe Version do
.to be_detected_from("https://homebrew.bintray.com/bottles/imagemagick-6.7.5-7.lion.bottle.1.tar.gz")
end
+ specify "date-based version style" do
+ expect(Version.create("2017-04-17"))
+ .to be_detected_from("https://example.com/dada-v2017-04-17.tar.gz")
+ end
+
specify "dash version style" do
expect(Version.create("3.4"))
.to be_detected_from("http://www.antlr.org/download/antlr-3.4-complete.jar")
diff --git a/Library/Homebrew/version.rb b/Library/Homebrew/version.rb
index b9f512a50..56ef37f72 100644
--- a/Library/Homebrew/version.rb
+++ b/Library/Homebrew/version.rb
@@ -344,6 +344,11 @@ class Version
m = /[-v]((?:\d+\.)*\d+)$/.match(spec_s)
return m.captures.first unless m.nil?
+ # date-based versioning
+ # e.g. ltopers-v2017-04-14.tar.gz
+ m = /-v?(\d{4}-\d{2}-\d{2})/.match(stem)
+ return m.captures.first unless m.nil?
+
# e.g. lame-398-1
m = /-((?:\d)+-\d+)/.match(stem)
return m.captures.first unless m.nil?