dev-cmd/livecheck: use safe navigation on #sort_by
This commit is contained in:
parent
24046c3182
commit
e604cf742b
@ -60,44 +60,45 @@ module Homebrew
|
|||||||
puts ENV["HOMEBREW_LIVECHECK_WATCHLIST"] if ENV["HOMEBREW_LIVECHECK_WATCHLIST"].present?
|
puts ENV["HOMEBREW_LIVECHECK_WATCHLIST"] if ENV["HOMEBREW_LIVECHECK_WATCHLIST"].present?
|
||||||
end
|
end
|
||||||
|
|
||||||
formulae_and_casks_to_check = if args.tap
|
formulae_and_casks_to_check =
|
||||||
tap = Tap.fetch(args.tap)
|
if args.tap
|
||||||
formulae = args.cask? ? [] : tap.formula_files.map { |path| Formulary.factory(path) }
|
tap = Tap.fetch(args.tap)
|
||||||
casks = args.formula? ? [] : tap.cask_files.map { |path| Cask::CaskLoader.load(path) }
|
formulae = args.cask? ? [] : tap.formula_files.map { |path| Formulary.factory(path) }
|
||||||
formulae + casks
|
casks = args.formula? ? [] : tap.cask_files.map { |path| Cask::CaskLoader.load(path) }
|
||||||
elsif args.installed?
|
formulae + casks
|
||||||
formulae = args.cask? ? [] : Formula.installed
|
elsif args.installed?
|
||||||
casks = args.formula? ? [] : Cask::Caskroom.casks
|
formulae = args.cask? ? [] : Formula.installed
|
||||||
formulae + casks
|
casks = args.formula? ? [] : Cask::Caskroom.casks
|
||||||
elsif args.all?
|
formulae + casks
|
||||||
formulae = args.cask? ? [] : Formula.to_a
|
elsif args.all?
|
||||||
casks = args.formula? ? [] : Cask::Cask.to_a
|
formulae = args.cask? ? [] : Formula.to_a
|
||||||
formulae + casks
|
casks = args.formula? ? [] : Cask::Cask.to_a
|
||||||
elsif args.named.present?
|
formulae + casks
|
||||||
if args.formula?
|
elsif args.named.present?
|
||||||
args.named.to_formulae
|
if args.formula?
|
||||||
elsif args.cask?
|
args.named.to_formulae
|
||||||
args.named.to_casks
|
elsif args.cask?
|
||||||
else
|
args.named.to_casks
|
||||||
args.named.to_formulae_and_casks
|
else
|
||||||
end
|
args.named.to_formulae_and_casks
|
||||||
elsif File.exist?(WATCHLIST_PATH)
|
|
||||||
begin
|
|
||||||
names = Pathname.new(WATCHLIST_PATH).read.lines
|
|
||||||
.reject { |line| line.start_with?("#") || line.blank? }
|
|
||||||
.map(&:strip)
|
|
||||||
|
|
||||||
named_args = T.unsafe(CLI::NamedArgs).new(*names)
|
|
||||||
named_args.to_formulae_and_casks.reject do |formula_or_cask|
|
|
||||||
(args.formula? && !formula_or_cask.is_a?(Formula)) ||
|
|
||||||
(args.cask? && !formula_or_cask.is_a?(Cask::Cask))
|
|
||||||
end
|
end
|
||||||
rescue Errno::ENOENT => e
|
elsif File.exist?(WATCHLIST_PATH)
|
||||||
onoe e
|
begin
|
||||||
|
names = Pathname.new(WATCHLIST_PATH).read.lines
|
||||||
|
.reject { |line| line.start_with?("#") || line.blank? }
|
||||||
|
.map(&:strip)
|
||||||
|
|
||||||
|
named_args = T.unsafe(CLI::NamedArgs).new(*names)
|
||||||
|
named_args.to_formulae_and_casks.reject do |formula_or_cask|
|
||||||
|
(args.formula? && !formula_or_cask.is_a?(Formula)) ||
|
||||||
|
(args.cask? && !formula_or_cask.is_a?(Cask::Cask))
|
||||||
|
end
|
||||||
|
rescue Errno::ENOENT => e
|
||||||
|
onoe e
|
||||||
|
end
|
||||||
|
end&.sort_by do |formula_or_cask|
|
||||||
|
formula_or_cask.respond_to?(:token) ? formula_or_cask.token : formula_or_cask.name
|
||||||
end
|
end
|
||||||
end.sort_by do |formula_or_cask|
|
|
||||||
formula_or_cask.respond_to?(:token) ? formula_or_cask.token : formula_or_cask.name
|
|
||||||
end
|
|
||||||
|
|
||||||
raise UsageError, "No formulae or casks to check." if formulae_and_casks_to_check.blank?
|
raise UsageError, "No formulae or casks to check." if formulae_and_casks_to_check.blank?
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user