Teach audit about new patches implementation

This commit is contained in:
Jack Nagel 2014-03-13 19:51:23 -05:00
parent 86cdd812a2
commit 4f051abc3e
2 changed files with 14 additions and 13 deletions

View File

@ -292,19 +292,24 @@ class FormulaAuditor
"#{name} resource #{resource.name.inspect}: #{problem}"
}
end
spec.patches.select(&:external?).each { |p| audit_patch(p) }
end
end
def audit_patches
Patches.new(f.patches).select(&:external?).each do |p|
case p.url
when %r[raw\.github\.com], %r[gist\.github\.com/raw], %r[gist\.github\.com/.+/raw$]
unless p.url =~ /[a-fA-F0-9]{40}/
problem "GitHub/Gist patches should specify a revision:\n#{p.url}"
end
when %r[macports/trunk]
problem "MacPorts patches should specify a revision instead of trunk:\n#{p.url}"
patches = Patch.normalize_legacy_patches(f.patches)
patches.grep(LegacyPatch).each { |p| audit_patch(p) }
end
def audit_patch(patch)
case patch.url
when %r[raw\.github\.com], %r[gist\.github\.com/raw], %r[gist\.github\.com/.+/raw$]
unless patch.url =~ /[a-fA-F0-9]{40}/
problem "GitHub/Gist patches should specify a revision:\n#{patch.url}"
end
when %r[macports/trunk]
problem "MacPorts patches should specify a revision instead of trunk:\n#{patch.url}"
end
end

View File

@ -86,7 +86,7 @@ class ExternalPatch < Patch
attr_reader :resource, :strip
def_delegators :@resource, :fetch, :verify_download_integrity,
:cached_download, :clear_cache
:cached_download, :clear_cache, :url
def initialize(strip, &block)
@strip = strip
@ -94,10 +94,6 @@ class ExternalPatch < Patch
@whence = :resource
end
def url
resource.url
end
def owner= owner
resource.owner = owner
resource.name = "patch-#{resource.checksum}"