args: Add field for kegs and unknowns
This commit is contained in:
parent
176c85d42c
commit
cbfea6c125
@ -39,6 +39,7 @@ module Homebrew
|
||||
@formulae_paths = nil
|
||||
@casks = nil
|
||||
@kegs = nil
|
||||
@kegs_and_unknowns = nil
|
||||
|
||||
self[:named_args] = named_args
|
||||
self[:named_args].freeze
|
||||
@ -108,23 +109,42 @@ module Homebrew
|
||||
end
|
||||
|
||||
def kegs
|
||||
@kegs ||= downcased_unique_named.map do |name|
|
||||
resolve_keg name
|
||||
rescue NoSuchKegError => e
|
||||
if (reason = Homebrew::MissingFormula.suggest_command(name, "uninstall"))
|
||||
$stderr.puts reason
|
||||
end
|
||||
raise e
|
||||
end.freeze
|
||||
end
|
||||
|
||||
def kegs_and_unknowns
|
||||
return @kegs_and_unknowns if @kegs_and_unknowns
|
||||
|
||||
kegs = []
|
||||
unknowns = []
|
||||
downcased_unique_named.each do |name|
|
||||
kegs << resolve_keg(name)
|
||||
rescue NoSuchKegError
|
||||
unknowns << name
|
||||
end
|
||||
|
||||
@kegs_and_unknowns = [kegs, unknowns]
|
||||
end
|
||||
|
||||
def resolve_keg(name)
|
||||
require "keg"
|
||||
require "formula"
|
||||
require "missing_formula"
|
||||
|
||||
@kegs ||= downcased_unique_named.map do |name|
|
||||
raise UsageError if name.empty?
|
||||
|
||||
rack = Formulary.to_rack(name.downcase)
|
||||
|
||||
dirs = rack.directory? ? rack.subdirs : []
|
||||
|
||||
if dirs.empty?
|
||||
if (reason = Homebrew::MissingFormula.suggest_command(name, "uninstall"))
|
||||
$stderr.puts reason
|
||||
end
|
||||
raise NoSuchKegError, rack.basename
|
||||
end
|
||||
raise NoSuchKegError, rack.basename if dirs.empty?
|
||||
|
||||
linked_keg_ref = HOMEBREW_LINKED_KEGS/rack.basename
|
||||
opt_prefix = HOMEBREW_PREFIX/"opt/#{rack.basename}"
|
||||
@ -156,7 +176,6 @@ module Homebrew
|
||||
Please delete (with rm -rf!) all but one and then try again.
|
||||
EOS
|
||||
end
|
||||
end.freeze
|
||||
end
|
||||
|
||||
def build_stable?
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user