Formula factory: re-raise certain NameErrors.

Some name errors, such as NoMethodError, represent programming errors.
Re-raise them to get a usable error message.

Closes Homebrew/homebrew#14467.
This commit is contained in:
Adam Vandenberg 2012-08-26 17:06:38 -07:00
parent 757b73e9a9
commit f1d0f7adbb

View File

@ -405,6 +405,10 @@ class Formula
return klass.new(name) if install_type == :from_name
return klass.new(name, path.to_s)
rescue NoMethodError
# This is a programming error in an existing formula, and should not
# have a "no such formula" message.
raise
rescue LoadError, NameError
raise FormulaUnavailableError.new(name)
end