From 4db0aa19c1f5f8259de2e1436c2a476f04c2cb1e Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Thu, 21 Aug 2014 15:46:57 +0100 Subject: [PATCH] install: search when formula isn't found. If you do `brew install blah` it currently doesn't search for it. This seems to be unintentional looking at this code as the exception thrown by ARGV.formulae.each is not caught and handled. Instead, let's handle this case and provide a little more usability around our taps. Closes Homebrew/homebrew#31761. Signed-off-by: Mike McQuaid --- Library/Homebrew/cmd/install.rb | 34 ++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/Library/Homebrew/cmd/install.rb b/Library/Homebrew/cmd/install.rb index f0fd9f7666..d0e65542ef 100644 --- a/Library/Homebrew/cmd/install.rb +++ b/Library/Homebrew/cmd/install.rb @@ -24,24 +24,24 @@ module Homebrew end end unless ARGV.force? - ARGV.formulae.each do |f| - # Building head-only without --HEAD is an error - if not ARGV.build_head? and f.stable.nil? - raise CannotInstallFormulaError, <<-EOS.undent - #{f} is a head-only formula - Install with `brew install --HEAD #{f.name}` - EOS - end - - # Building stable-only with --HEAD is an error - if ARGV.build_head? and f.head.nil? - raise CannotInstallFormulaError, "No head is defined for #{f.name}" - end - end - - perform_preinstall_checks - begin + ARGV.formulae.each do |f| + # Building head-only without --HEAD is an error + if not ARGV.build_head? and f.stable.nil? + raise CannotInstallFormulaError, <<-EOS.undent + #{f} is a head-only formula + Install with `brew install --HEAD #{f.name}` + EOS + end + + # Building stable-only with --HEAD is an error + if ARGV.build_head? and f.head.nil? + raise CannotInstallFormulaError, "No head is defined for #{f.name}" + end + end + + perform_preinstall_checks + ARGV.formulae.each { |f| install_formula(f) } rescue FormulaUnavailableError => e ofail e.message