From fe969c21ad199ae27a113e9fb2f01c5bb3fbc942 Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Mon, 30 Apr 2012 14:08:59 +1000 Subject: [PATCH] Add ofail command and fix bottle command output. --- Library/Contributions/cmds/brew-test-bot.rb | 6 +++--- Library/Homebrew/cmd/audit.rb | 5 +---- Library/Homebrew/cmd/bottle.rb | 6 ++---- Library/Homebrew/cmd/doctor.rb | 3 +-- Library/Homebrew/cmd/install.rb | 3 +-- Library/Homebrew/cmd/test.rb | 9 +++------ Library/Homebrew/cmd/uninstall.rb | 3 +-- Library/Homebrew/cmd/upgrade.rb | 3 +-- Library/Homebrew/utils.rb | 5 +++++ 9 files changed, 18 insertions(+), 25 deletions(-) diff --git a/Library/Contributions/cmds/brew-test-bot.rb b/Library/Contributions/cmds/brew-test-bot.rb index 3699bd7d95..f927333f8d 100755 --- a/Library/Contributions/cmds/brew-test-bot.rb +++ b/Library/Contributions/cmds/brew-test-bot.rb @@ -91,7 +91,7 @@ class Test begin Formula.factory arg rescue FormulaUnavailableError - ofail "#{arg} is not a pull request number or formula." unless arg.to_i > 0 + odie "#{arg} is not a pull request number or formula." unless arg.to_i > 0 @url = arg @formulae = [] else @@ -214,7 +214,7 @@ class Test test "git clean --force -dx" else `git diff --exit-code HEAD 2>/dev/null` - ofail "Uncommitted changes, aborting." unless $?.success? + odie "Uncommitted changes, aborting." unless $?.success? test "git reset --hard #{@start_sha1}" if @start_sha1 end end @@ -267,7 +267,7 @@ class Test end if ARGV.empty? - ofail 'This command requires at least one argument containing a pull request number or formula.' + odie 'This command requires at least one argument containing a pull request number or formula.' end Dir.chdir HOMEBREW_REPOSITORY diff --git a/Library/Homebrew/cmd/audit.rb b/Library/Homebrew/cmd/audit.rb index e0507e1eb6..985cce0b41 100755 --- a/Library/Homebrew/cmd/audit.rb +++ b/Library/Homebrew/cmd/audit.rb @@ -418,9 +418,6 @@ module Homebrew extend self end end - if errors - puts "#{problem_count} problems in #{brew_count} brews" - Homebrew.failed = true - end + ofail "#{problem_count} problems in #{brew_count} brews" if errors end end diff --git a/Library/Homebrew/cmd/bottle.rb b/Library/Homebrew/cmd/bottle.rb index 2c4028b847..75d299a527 100755 --- a/Library/Homebrew/cmd/bottle.rb +++ b/Library/Homebrew/cmd/bottle.rb @@ -5,14 +5,12 @@ require 'tab' module Homebrew extend self def bottle_formula f unless f.installed? - onoe "Formula not installed: #{f.name}" - Homebrew.failed = true + return ofail "Formula not installed: #{f.name}" return end unless built_bottle? f - onoe "Formula not installed with '--build-bottle': #{f.name}" - Homebrew.failed = true + return ofail "Formula not installed with '--build-bottle': #{f.name}" end directory = Pathname.pwd diff --git a/Library/Homebrew/cmd/doctor.rb b/Library/Homebrew/cmd/doctor.rb index 44df500931..b4c99a7e63 100644 --- a/Library/Homebrew/cmd/doctor.rb +++ b/Library/Homebrew/cmd/doctor.rb @@ -904,9 +904,8 @@ module Homebrew extend self unless out.nil? or out.empty? puts unless Homebrew.failed? lines = out.to_s.split('\n') - opoo lines.shift + ofail lines.shift puts lines - Homebrew.failed = true end end diff --git a/Library/Homebrew/cmd/install.rb b/Library/Homebrew/cmd/install.rb index ed5826da09..8a6c78bb4a 100644 --- a/Library/Homebrew/cmd/install.rb +++ b/Library/Homebrew/cmd/install.rb @@ -76,8 +76,7 @@ module Homebrew extend self fi.caveats fi.finish rescue CannotInstallFormulaError => e - onoe e.message - Homebrew.failed = true + ofail e.message end end end diff --git a/Library/Homebrew/cmd/test.rb b/Library/Homebrew/cmd/test.rb index 9415ba21a8..fc3b43229e 100644 --- a/Library/Homebrew/cmd/test.rb +++ b/Library/Homebrew/cmd/test.rb @@ -12,15 +12,13 @@ module Homebrew extend self ARGV.formulae.each do |f| # Cannot test uninstalled formulae unless f.installed? - puts "Testing requires the latest version of #{f.name}" - Homebrew.failed = true + ofail "Testing requires the latest version of #{f.name}" next end # Cannot test formulae without a test method unless f.respond_to? :test - puts "#{f.name} defines no test" - Homebrew.failed = true + ofail "#{f.name} defines no test" next end @@ -29,8 +27,7 @@ module Homebrew extend self # tests can also return false to indicate failure raise if f.test == false rescue - puts "#{f.name}: failed" - Homebrew.failed = true + ofail "#{f.name}: failed" end end end diff --git a/Library/Homebrew/cmd/uninstall.rb b/Library/Homebrew/cmd/uninstall.rb index ce719a3e94..cc13a18c82 100644 --- a/Library/Homebrew/cmd/uninstall.rb +++ b/Library/Homebrew/cmd/uninstall.rb @@ -33,8 +33,7 @@ module Homebrew extend self end end rescue MultipleVersionsInstalledError => e - onoe e + ofail e puts "Use `brew remove --force #{e.name}` to remove all versions." - Homebrew.failed = true end end diff --git a/Library/Homebrew/cmd/upgrade.rb b/Library/Homebrew/cmd/upgrade.rb index 7b63e80392..d9c1309725 100644 --- a/Library/Homebrew/cmd/upgrade.rb +++ b/Library/Homebrew/cmd/upgrade.rb @@ -66,8 +66,7 @@ module Homebrew extend self installer.caveats installer.finish rescue CannotInstallFormulaError => e - onoe e - Homebrew.failed = true + ofail e rescue BuildError => e e.dump puts diff --git a/Library/Homebrew/utils.rb b/Library/Homebrew/utils.rb index 1380504603..3ae8e11810 100644 --- a/Library/Homebrew/utils.rb +++ b/Library/Homebrew/utils.rb @@ -54,6 +54,11 @@ def onoe error end def ofail error + onoe error + Homebrew.failed = true +end + +def odie error onoe error exit 1 end