diff --git a/Library/Homebrew/cmd/audit.rb b/Library/Homebrew/cmd/audit.rb index a73a0bef51..5a3e41d670 100644 --- a/Library/Homebrew/cmd/audit.rb +++ b/Library/Homebrew/cmd/audit.rb @@ -18,6 +18,8 @@ module Homebrew style end + online = ARGV.include? "--online" + ENV.activate_extensions! ENV.setup_build_environment @@ -50,7 +52,7 @@ module Homebrew output_header = !strict ff.each do |f| - fa = FormulaAuditor.new(f, :strict => strict) + fa = FormulaAuditor.new(f, :strict => strict, :online => online) fa.audit unless fa.problems.empty? @@ -131,6 +133,7 @@ class FormulaAuditor def initialize(formula, options={}) @formula = formula @strict = !!options[:strict] + @online = !!options[:online] @problems = [] @text = FormulaText.new(formula.path) @specs = %w{stable devel head}.map { |s| formula.send(s) }.compact @@ -230,6 +233,7 @@ class FormulaAuditor return end + return unless @online same_name_tap_formulae = Formula.tap_names.select do |tap_formula_name| user_name, _, formula_name = tap_formula_name.split("/", 3) user_name == "homebrew" && formula_name == name @@ -423,7 +427,7 @@ class FormulaAuditor end def audit_github_repository - return unless @strict + return unless @online regex = %r{https?://github.com/([^/]+)/([^/]+)/?.*} _, user, repo = *regex.match(formula.stable.url) if formula.stable diff --git a/Library/Homebrew/cmd/test-bot.rb b/Library/Homebrew/cmd/test-bot.rb index 64b14efa34..0418b7dec5 100644 --- a/Library/Homebrew/cmd/test-bot.rb +++ b/Library/Homebrew/cmd/test-bot.rb @@ -481,7 +481,7 @@ module Homebrew end install_passed = steps.last.passed? audit_args = [canonical_formula_name] - audit_args << "--strict" if @added_formulae.include? formula_name + audit_args << "--strict" << "--online" if @added_formulae.include? formula_name test "brew", "audit", *audit_args if install_passed if formula.stable? && !ARGV.include?('--no-bottle') diff --git a/Library/Homebrew/manpages/brew.1.md b/Library/Homebrew/manpages/brew.1.md index d5c6fa17ca..ede0d02240 100644 --- a/Library/Homebrew/manpages/brew.1.md +++ b/Library/Homebrew/manpages/brew.1.md @@ -38,7 +38,7 @@ Note that these flags should only appear after a command. ## COMMANDS - * `audit` [--strict] []: + * `audit` [--strict] [--online] []: Check for Homebrew coding style violations. This should be run before submitting a new formula. @@ -47,6 +47,9 @@ Note that these flags should only appear after a command. If `--strict` is passed, additional checks are run. This should be used when creating for new formulae. + If `--online` is passed, additional slower checks that require a network + connection are run. This should be used when creating for new formulae. + `audit` exits with a non-zero status if any errors are found. This is useful, for instance, for implementing pre-commit hooks. diff --git a/share/man/man1/brew.1 b/share/man/man1/brew.1 index eb3b46ebf9..f3f80c76de 100644 --- a/share/man/man1/brew.1 +++ b/share/man/man1/brew.1 @@ -44,7 +44,7 @@ Perform a substring search of formula names for \fItext\fR\. If \fItext\fR is su .SH "COMMANDS" . .IP "\(bu" 4 -\fBaudit\fR [\-\-strict] [\fIformulae\fR]: Check \fIformulae\fR for Homebrew coding style violations\. This should be run before submitting a new formula\. +\fBaudit\fR [\-\-strict] [\-\-online] [\fIformulae\fR]: Check \fIformulae\fR for Homebrew coding style violations\. This should be run before submitting a new formula\. . .IP If no \fIformulae\fR are provided, all of them are checked\. @@ -53,6 +53,9 @@ If no \fIformulae\fR are provided, all of them are checked\. If \fB\-\-strict\fR is passed, additional checks are run\. This should be used when creating for new formulae\. . .IP +If \fB\-\-online\fR is passed, additional slower checks that require a network connection are run\. This should be used when creating for new formulae\. +. +.IP \fBaudit\fR exits with a non\-zero status if any errors are found\. This is useful, for instance, for implementing pre\-commit hooks\. . .IP "\(bu" 4