From 0a97cd18a573d718c40d1258281517c6b387cc94 Mon Sep 17 00:00:00 2001 From: hyuraku <32809703+hyuraku@users.noreply.github.com> Date: Thu, 17 Dec 2020 21:14:18 +0900 Subject: [PATCH] set default args --- Library/Homebrew/cli/named_args.rb | 14 ++++++++------ Library/Homebrew/cmd/fetch.rb | 2 +- Library/Homebrew/cmd/home.rb | 2 +- Library/Homebrew/cmd/info.rb | 26 +++++++++++++------------- Library/Homebrew/cmd/install.rb | 2 +- Library/Homebrew/cmd/uninstall.rb | 1 - Library/Homebrew/cmd/upgrade.rb | 2 +- Library/Homebrew/dev-cmd/audit.rb | 2 +- Library/Homebrew/dev-cmd/cat.rb | 2 +- Library/Homebrew/dev-cmd/edit.rb | 2 +- Library/Homebrew/dev-cmd/style.rb | 5 +---- 11 files changed, 29 insertions(+), 31 deletions(-) diff --git a/Library/Homebrew/cli/named_args.rb b/Library/Homebrew/cli/named_args.rb index 7017fd23b7..1c90f6032f 100644 --- a/Library/Homebrew/cli/named_args.rb +++ b/Library/Homebrew/cli/named_args.rb @@ -29,6 +29,8 @@ module Homebrew super(@args) end + attr_reader :parent + def to_casks @to_casks ||= to_formulae_and_casks(only: :cask).freeze end @@ -44,7 +46,7 @@ module Homebrew params(only: T.nilable(Symbol), ignore_unavailable: T.nilable(T::Boolean), method: T.nilable(Symbol)) .returns(T::Array[T.any(Formula, Keg, Cask::Cask)]) end - def to_formulae_and_casks(only: nil, ignore_unavailable: nil, method: nil) + def to_formulae_and_casks(only: parent&.only_formula_or_cask, ignore_unavailable: nil, method: nil) @to_formulae_and_casks ||= {} @to_formulae_and_casks[only] ||= downcased_unique_named.flat_map do |name| load_formula_or_cask(name, only: only, method: method) @@ -53,14 +55,14 @@ module Homebrew end.uniq.freeze end - def to_formulae_to_casks(only: nil, method: nil) + def to_formulae_to_casks(only: parent&.only_formula_or_cask, method: nil) @to_formulae_to_casks ||= {} @to_formulae_to_casks[[method, only]] = to_formulae_and_casks(only: only, method: method) .partition { |o| o.is_a?(Formula) } .map(&:freeze).freeze end - def to_formulae_and_casks_and_unavailable(only: nil, method: nil) + def to_formulae_and_casks_and_unavailable(only: parent&.only_formula_or_cask, method: nil) @to_formulae_casks_unknowns ||= {} @to_formulae_casks_unknowns[method] = downcased_unique_named.map do |name| load_formula_or_cask(name, only: only, method: method) @@ -118,7 +120,7 @@ module Homebrew .freeze end - def to_resolved_formulae_to_casks(only: nil) + def to_resolved_formulae_to_casks(only: parent&.only_formula_or_cask) to_formulae_to_casks(only: only, method: :resolve) end @@ -130,7 +132,7 @@ module Homebrew # If a cask and formula with the same name exist, includes both their paths # unless `only` is specified. sig { params(only: T.nilable(Symbol), recurse_tap: T::Boolean).returns(T::Array[Pathname]) } - def to_paths(only: nil, recurse_tap: false) + def to_paths(only: parent&.only_formula_or_cask, recurse_tap: false) @to_paths ||= {} @to_paths[only] ||= downcased_unique_named.flat_map do |name| if File.exist?(name) @@ -177,7 +179,7 @@ module Homebrew params(only: T.nilable(Symbol), ignore_unavailable: T.nilable(T::Boolean), all_kegs: T.nilable(T::Boolean)) .returns([T::Array[Keg], T::Array[Cask::Cask]]) end - def to_kegs_to_casks(only: nil, ignore_unavailable: nil, all_kegs: nil) + def to_kegs_to_casks(only: parent&.only_formula_or_cask, ignore_unavailable: nil, all_kegs: nil) method = all_kegs ? :kegs : :keg @to_kegs_to_casks ||= {} @to_kegs_to_casks[method] ||= diff --git a/Library/Homebrew/cmd/fetch.rb b/Library/Homebrew/cmd/fetch.rb index 428cf32734..b8358cc2bc 100644 --- a/Library/Homebrew/cmd/fetch.rb +++ b/Library/Homebrew/cmd/fetch.rb @@ -81,7 +81,7 @@ module Homebrew end end else - args.named.to_formulae_and_casks(only: args.only_formula_or_cask) + args.named.to_formulae_and_casks end.uniq puts "Fetching: #{bucket * ", "}" if bucket.size > 1 diff --git a/Library/Homebrew/cmd/home.rb b/Library/Homebrew/cmd/home.rb index d4d86c4f74..89ca716e6b 100644 --- a/Library/Homebrew/cmd/home.rb +++ b/Library/Homebrew/cmd/home.rb @@ -35,7 +35,7 @@ module Homebrew return end - homepages = args.named.to_formulae_and_casks(only: args.only_formula_or_cask).map do |formula_or_cask| + homepages = args.named.to_formulae_and_casks.map do |formula_or_cask| puts "Opening homepage for #{name_of(formula_or_cask)}" formula_or_cask.homepage end diff --git a/Library/Homebrew/cmd/info.rb b/Library/Homebrew/cmd/info.rb index 85a335defe..00d8a5a1b9 100644 --- a/Library/Homebrew/cmd/info.rb +++ b/Library/Homebrew/cmd/info.rb @@ -90,17 +90,17 @@ module Homebrew end end - print_analytics(args: args, only: args.only_formula_or_cask) + print_analytics(args: args) elsif args.json - print_json(args: args, only: args.only_formula_or_cask) + print_json(args: args) elsif args.github? raise FormulaOrCaskUnspecifiedError if args.no_named? - exec_browser(*args.named.to_formulae_and_casks(only: args.only_formula_or_cask).map { |f| github_info(f) }) + exec_browser(*args.named.to_formulae_and_casks.map { |f| github_info(f) }) elsif args.no_named? print_statistics else - print_info(args: args, only: args.only_formula_or_cask) + print_info(args: args) end end @@ -112,14 +112,14 @@ module Homebrew puts "#{count} #{"keg".pluralize(count)}, #{HOMEBREW_CELLAR.dup.abv}" end - sig { params(args: CLI::Args, only: T.nilable(Symbol)).void } - def print_analytics(args:, only: nil) + sig { params(args: CLI::Args).void } + def print_analytics(args:) if args.no_named? Utils::Analytics.output(args: args) return end - args.named.to_formulae_and_casks_and_unavailable(only: args.only_formula_or_cask).each_with_index do |obj, i| + args.named.to_formulae_and_casks_and_unavailable.each_with_index do |obj, i| puts unless i.zero? case obj @@ -135,9 +135,9 @@ module Homebrew end end - sig { params(args: CLI::Args, only: T.nilable(Symbol)).void } - def print_info(args:, only: nil) - args.named.to_formulae_and_casks_and_unavailable(only: args.only_formula_or_cask).each_with_index do |obj, i| + sig { params(args: CLI::Args).void } + def print_info(args:) + args.named.to_formulae_and_casks_and_unavailable.each_with_index do |obj, i| puts unless i.zero? case obj @@ -169,8 +169,8 @@ module Homebrew version_hash[version] end - sig { params(args: CLI::Args, only: T.nilable(Symbol)).void } - def print_json(args:, only: nil) + sig { params(args: CLI::Args).void } + def print_json(args:) raise FormulaOrCaskUnspecifiedError if !(args.all? || args.installed?) && args.no_named? json = case json_version(args.json) @@ -192,7 +192,7 @@ module Homebrew elsif args.installed? [Formula.installed.sort, Cask::Caskroom.casks.sort_by(&:full_name)] else - args.named.to_formulae_to_casks(only: args.only_formula_or_cask) + args.named.to_formulae_to_casks end { diff --git a/Library/Homebrew/cmd/install.rb b/Library/Homebrew/cmd/install.rb index 43815f0e7b..ea4b1cacdd 100644 --- a/Library/Homebrew/cmd/install.rb +++ b/Library/Homebrew/cmd/install.rb @@ -148,7 +148,7 @@ module Homebrew EOS end - formulae, casks = args.named.to_formulae_and_casks(only: args.only_formula_or_cask) + formulae, casks = args.named.to_formulae_and_casks .partition { |formula_or_cask| formula_or_cask.is_a?(Formula) } if casks.any? diff --git a/Library/Homebrew/cmd/uninstall.rb b/Library/Homebrew/cmd/uninstall.rb index 350f7a12f1..179fdc032c 100644 --- a/Library/Homebrew/cmd/uninstall.rb +++ b/Library/Homebrew/cmd/uninstall.rb @@ -48,7 +48,6 @@ module Homebrew args = uninstall_args.parse all_kegs, casks = args.named.to_kegs_to_casks( - only: args.only_formula_or_cask, ignore_unavailable: args.force?, all_kegs: args.force?, ) diff --git a/Library/Homebrew/cmd/upgrade.rb b/Library/Homebrew/cmd/upgrade.rb index 626b0be111..23c9502f57 100644 --- a/Library/Homebrew/cmd/upgrade.rb +++ b/Library/Homebrew/cmd/upgrade.rb @@ -95,7 +95,7 @@ module Homebrew def upgrade args = upgrade_args.parse - formulae, casks = args.named.to_resolved_formulae_to_casks(only: args.only_formula_or_cask) + formulae, casks = args.named.to_resolved_formulae_to_casks # If one or more formulae are specified, but no casks were # specified, we want to make note of that so we don't # try to upgrade all outdated casks. diff --git a/Library/Homebrew/dev-cmd/audit.rb b/Library/Homebrew/dev-cmd/audit.rb index 5589a939fd..47e0f2ba9a 100644 --- a/Library/Homebrew/dev-cmd/audit.rb +++ b/Library/Homebrew/dev-cmd/audit.rb @@ -123,7 +123,7 @@ module Homebrew elsif args.no_named? [Formula, Cask::Cask.to_a] else - args.named.to_formulae_and_casks(only: args.only_formula_or_cask) + args.named.to_formulae_and_casks .partition { |formula_or_cask| formula_or_cask.is_a?(Formula) } end style_files = args.named.to_paths unless skip_style diff --git a/Library/Homebrew/dev-cmd/cat.rb b/Library/Homebrew/dev-cmd/cat.rb index cc465fd46e..3cdb7acb82 100644 --- a/Library/Homebrew/dev-cmd/cat.rb +++ b/Library/Homebrew/dev-cmd/cat.rb @@ -38,6 +38,6 @@ module Homebrew "cat" end - safe_system pager, args.named.to_paths(only: args.only_formula_or_cask).first + safe_system pager, args.named.to_paths.first end end diff --git a/Library/Homebrew/dev-cmd/edit.rb b/Library/Homebrew/dev-cmd/edit.rb index 5bbc17b2e6..0894b3f00b 100644 --- a/Library/Homebrew/dev-cmd/edit.rb +++ b/Library/Homebrew/dev-cmd/edit.rb @@ -39,7 +39,7 @@ module Homebrew EOS end - paths = args.named.to_paths(only: args.only_formula_or_cask).select do |path| + paths = args.named.to_paths.select do |path| next path if path.exist? raise UsageError, "#{path} doesn't exist on disk. " \ diff --git a/Library/Homebrew/dev-cmd/style.rb b/Library/Homebrew/dev-cmd/style.rb index 8e860911d1..d43bd19f9a 100644 --- a/Library/Homebrew/dev-cmd/style.rb +++ b/Library/Homebrew/dev-cmd/style.rb @@ -48,13 +48,10 @@ module Homebrew def style args = style_args.parse - only = :formula if args.formula? && !args.cask? - only = :cask if args.cask? && !args.formula? - target = if args.no_named? nil else - args.named.to_paths(only: only) + args.named.to_paths end only_cops = args.only_cops