diff --git a/Library/Homebrew/cmd/audit.rb b/Library/Homebrew/cmd/audit.rb index f4ed74ba65..6bab710951 100644 --- a/Library/Homebrew/cmd/audit.rb +++ b/Library/Homebrew/cmd/audit.rb @@ -294,6 +294,16 @@ class FormulaAuditor problem "#{cksum.hash_type} should be lowercase" unless cksum.hexdigest == cksum.hexdigest.downcase end end + + # Check for :using that is already detected from the url + @specs.each do |s| + next if s.using.nil? + + url_strategy = DownloadStrategyDetector.detect(s.url) + using_strategy = DownloadStrategyDetector.detect('', s.using) + + problem "redundant :using specification in url or head" if url_strategy == using_strategy + end end def audit_patches diff --git a/Library/Homebrew/formula_support.rb b/Library/Homebrew/formula_support.rb index ed8b72d9de..85f215adec 100644 --- a/Library/Homebrew/formula_support.rb +++ b/Library/Homebrew/formula_support.rb @@ -4,6 +4,7 @@ require 'version' class SoftwareSpec attr_reader :checksum, :mirrors, :specs + attr_reader :using # for auditing def initialize url=nil, version=nil @url = url