rework error handling to show the error for both formula and cask loading
This commit is contained in:
parent
bd2f5c3b32
commit
2a11bcf501
@ -38,12 +38,14 @@ module Homebrew
|
||||
else
|
||||
puts formula.cached_download
|
||||
end
|
||||
rescue FormulaUnavailableError
|
||||
rescue FormulaUnavailableError => fe
|
||||
begin
|
||||
cask = Cask::CaskLoader.load name
|
||||
puts "cask: #{Cask::Cmd::Cache.cached_location(cask)}"
|
||||
rescue Cask::CaskUnavailableError
|
||||
ofail "No available formula or cask with the name \"#{name}\""
|
||||
rescue Cask::CaskUnavailableError => ce
|
||||
odie "No available formula or cask with the name \"#{name}\"\n" \
|
||||
"#{fe.message}\n" \
|
||||
"#{ce.message}\n"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@ -25,20 +25,20 @@ module Homebrew
|
||||
if args.no_named?
|
||||
exec_browser HOMEBREW_WWW
|
||||
else
|
||||
homepages = args.named.flat_map do |ref|
|
||||
[Formulary.factory(ref).homepage]
|
||||
rescue FormulaUnavailableError => e
|
||||
puts e.message
|
||||
homepages = args.named.map do |ref|
|
||||
Formulary.factory(ref).homepage
|
||||
rescue FormulaUnavailableError => fe
|
||||
begin
|
||||
cask = Cask::CaskLoader.load(ref)
|
||||
puts "Found a cask with ref \"#{ref}\" instead."
|
||||
[cask.homepage]
|
||||
rescue Cask::CaskUnavailableError => e
|
||||
puts e.message
|
||||
[]
|
||||
puts "Formula \"#{ref}\" not found. Found a cask instead."
|
||||
cask.homepage
|
||||
rescue Cask::CaskUnavailableError => ce
|
||||
odie "No available formula or cask with the name \"#{name}\"\n" \
|
||||
"#{fe.message}\n" \
|
||||
"#{ce.message}\n"
|
||||
end
|
||||
end
|
||||
exec_browser(*homepages) unless homepages.empty?
|
||||
exec_browser(*homepages)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user