diff --git a/Library/Homebrew/test/version_spec.rb b/Library/Homebrew/test/version_spec.rb
index d3d63a25ccd775da09ecd92dcdc1a365410b6461..41e05019c44932b272e668a71a3c5fcb0d2f1379 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 b9f512a50cfdbf041ed0f58a597c1614fa32931d..56ef37f72d8aa08496b11fa9a015939236ac4cd6 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?