From c4adc6801612ef804ae36c528d096b954818a7c9 Mon Sep 17 00:00:00 2001
From: Mike McQuaid <mike@mikemcquaid.com>
Date: Sat, 1 Oct 2016 11:49:39 +0100
Subject: [PATCH] man: set date when --fail-if-changed.

Set the manpage date to the existing one if we're checking for changes.
This avoids the only change being e.g. a new date.
---
 Library/Homebrew/dev-cmd/man.rb | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/Library/Homebrew/dev-cmd/man.rb b/Library/Homebrew/dev-cmd/man.rb
index d7f47d199d..6c0c00747a 100644
--- a/Library/Homebrew/dev-cmd/man.rb
+++ b/Library/Homebrew/dev-cmd/man.rb
@@ -78,10 +78,25 @@ module Homebrew
   end
 
   def convert_man_page(markup, target)
+    manual = target.basename(".1")
+    organisation = "Homebrew"
+
+    # Set the manpage date to the existing one if we're checking for changes.
+    # This avoids the only change being e.g. a new date.
+    date = if ARGV.include?("--fail-if-changed") &&
+              target.extname == ".1" && target.exist?
+      /"(\d{1,2})" "([A-Z][a-z]+) (\d{4})" "#{organisation}" "#{manual}"/ =~ target.read
+      Date.parse("#{$1} #{$2} #{$3}")
+    else
+      Date.today
+    end
+    date = date.strftime("%Y-%m-%d")
+
     shared_args = %W[
       --pipe
-      --organization=Homebrew
+      --organization=#{organisation}
       --manual=#{target.basename(".1")}
+      --date=#{date}
     ]
 
     format_flag, format_desc = target_path_to_format(target)
-- 
GitLab