From d4c7dedf1246e31daca2aa9be22f8f6e4a6c528f Mon Sep 17 00:00:00 2001 From: Xu Cheng Date: Fri, 15 Jan 2016 16:17:14 +0800 Subject: [PATCH] audit: imporve revision check logic * Check revision decrease against both stable and devel spec. * Check revision reset only for stable spec if stable spec is available. --- Library/Homebrew/cmd/audit.rb | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Library/Homebrew/cmd/audit.rb b/Library/Homebrew/cmd/audit.rb index 8c700f42e8..a5221fe376 100644 --- a/Library/Homebrew/cmd/audit.rb +++ b/Library/Homebrew/cmd/audit.rb @@ -588,8 +588,14 @@ class FormulaAuditor revision_map = fv.revision_map("origin/master") if (revisions = revision_map[formula.version]).any? problem "revision should not decrease" if formula.revision < revisions.max - else - problem "revision should be removed" unless formula.revision == 0 + elsif formula.revision != 0 + if formula.stable + if revision_map[formula.stable.version].empty? # check stable spec + problem "revision should be removed" + end + else # head/devel-only formula + problem "revision should be removed" + end end end