Merge pull request #12279 from bayandin/synced-versions-formulae

formula_auditor: add audit for formulae with synced versions
This commit is contained in:
Alexander Bayandin 2021-11-19 12:24:33 +00:00 committed by GitHub
commit 27a76295a4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -118,6 +118,31 @@ module Homebrew
@aliases ||= Formula.aliases + Formula.tap_aliases
end
SYNCED_VERSIONS_FORMULAE_FILE = "synced_versions_formulae.json"
def audit_synced_versions_formulae
synced_versions_formulae_file = formula.tap.path/SYNCED_VERSIONS_FORMULAE_FILE
return unless synced_versions_formulae_file.file?
name = formula.name
version = formula.version
synced_versions_formulae = JSON.parse(synced_versions_formulae_file.read)
synced_versions_formulae.each do |synced_version_formulae|
next unless synced_version_formulae.include? name
synced_version_formulae.each do |synced_formula|
next if synced_formula == name
if (synced_version = Formulary.factory(synced_formula).version) != version
problem "Version of `#{synced_formula}` (#{synced_version}) should match version of `#{name}` (#{version})"
end
end
break
end
end
def audit_formula_name
name = formula.name