diff --git a/Library/Homebrew/build.rb b/Library/Homebrew/build.rb index 51b20093da..42079473d2 100644 --- a/Library/Homebrew/build.rb +++ b/Library/Homebrew/build.rb @@ -220,7 +220,7 @@ begin trap("INT", old_trap) - formula = args.formulae.first + formula = args.named.to_formulae.first options = Options.create(args.flags_only) build = Build.new(formula, options, args: args) build.install diff --git a/Library/Homebrew/cli/args.rb b/Library/Homebrew/cli/args.rb index 855f50a07b..5c5a5e3e3b 100644 --- a/Library/Homebrew/cli/args.rb +++ b/Library/Homebrew/cli/args.rb @@ -57,38 +57,47 @@ module Homebrew end def formulae + odeprecated "args.formulae", "args.named.formulae" named.to_formulae end def formulae_and_casks + odeprecated "args.formulae_and_casks", "args.named.to_formulae_and_casks" named.to_formulae_and_casks end def resolved_formulae + odeprecated "args.resolved_formulae", "args.named.to_resolved_formulae" named.to_resolved_formulae end def resolved_formulae_casks + odeprecated "args.resolved_formulae_casks", "args.named.to_resolved_formulae_to_casks" named.to_resolved_formulae_to_casks end def formulae_paths + odeprecated "args.formulae_paths", "args.named.to_formulae_paths" named.to_formulae_paths end def casks + odeprecated "args.casks", "args.named.homebrew_tap_cask_names" named.homebrew_tap_cask_names end def loaded_casks + odeprecated "args.loaded_casks", "args.named.to_cask" named.to_casks end def kegs + odeprecated "args.kegs", "args.named.to_kegs" named.to_kegs end def kegs_casks + odeprecated "args.kegs", "args.named.to_kegs_to_casks" named.to_kegs_to_casks end diff --git a/Library/Homebrew/cmd/--cache.rb b/Library/Homebrew/cmd/--cache.rb index aedd583860..240d145dfa 100644 --- a/Library/Homebrew/cmd/--cache.rb +++ b/Library/Homebrew/cmd/--cache.rb @@ -40,11 +40,11 @@ module Homebrew end formulae_or_casks = if args.formula? - args.formulae + args.named.to_formulae elsif args.cask? - args.loaded_casks + args.named.to_casks else - args.formulae_and_casks + args.named.to_formulae_and_casks end formulae_or_casks.each do |formula_or_cask| diff --git a/Library/Homebrew/cmd/--caskroom.rb b/Library/Homebrew/cmd/--caskroom.rb index dba8debb51..a0964ad7ce 100644 --- a/Library/Homebrew/cmd/--caskroom.rb +++ b/Library/Homebrew/cmd/--caskroom.rb @@ -19,10 +19,10 @@ module Homebrew def __caskroom args = __caskroom_args.parse - if args.loaded_casks.blank? + if args.named.to_casks.blank? puts Cask::Caskroom.path else - args.loaded_casks.each do |cask| + args.named.to_casks.each do |cask| puts "#{Cask::Caskroom.path}/#{cask.token}" end end diff --git a/Library/Homebrew/cmd/--cellar.rb b/Library/Homebrew/cmd/--cellar.rb index 7ef1b6fc39..e300df269e 100644 --- a/Library/Homebrew/cmd/--cellar.rb +++ b/Library/Homebrew/cmd/--cellar.rb @@ -25,7 +25,7 @@ module Homebrew if args.no_named? puts HOMEBREW_CELLAR else - puts args.resolved_formulae.map(&:rack) + puts args.named.to_resolved_formulae.map(&:rack) end end end diff --git a/Library/Homebrew/cmd/--env.rb b/Library/Homebrew/cmd/--env.rb index 80319d3053..f25dc0bb06 100644 --- a/Library/Homebrew/cmd/--env.rb +++ b/Library/Homebrew/cmd/--env.rb @@ -30,7 +30,7 @@ module Homebrew args = __env_args.parse ENV.activate_extensions!(env: args.env) - ENV.deps = args.formulae if superenv?(args.env) + ENV.deps = args.named.to_formulae if superenv?(args.env) ENV.setup_build_environment shell = if args.plain? diff --git a/Library/Homebrew/cmd/--prefix.rb b/Library/Homebrew/cmd/--prefix.rb index 82a0b464a8..d6d3ed7b63 100644 --- a/Library/Homebrew/cmd/--prefix.rb +++ b/Library/Homebrew/cmd/--prefix.rb @@ -25,7 +25,7 @@ module Homebrew if args.no_named? puts HOMEBREW_PREFIX else - puts args.resolved_formulae.map { |f| + puts args.named.to_resolved_formulae.map { |f| f.opt_prefix.exist? ? f.opt_prefix : f.installed_prefix } end diff --git a/Library/Homebrew/cmd/deps.rb b/Library/Homebrew/cmd/deps.rb index 34463eb14a..5ca269bbf1 100644 --- a/Library/Homebrew/cmd/deps.rb +++ b/Library/Homebrew/cmd/deps.rb @@ -65,7 +65,7 @@ module Homebrew Formulary.enable_factory_cache! recursive = !args.send("1?") - installed = args.installed? || dependents(args.formulae_and_casks).all?(&:any_version_installed?) + installed = args.installed? || dependents(args.named.to_formulae_and_casks).all?(&:any_version_installed?) @use_runtime_dependencies = installed && recursive && !args.tree? && @@ -76,7 +76,7 @@ module Homebrew if args.tree? dependents = if args.named.present? - sorted_dependents(args.formulae_and_casks) + sorted_dependents(args.named.to_formulae_and_casks) elsif args.installed? sorted_dependents(Formula.installed + Cask::Caskroom.casks) else @@ -89,7 +89,7 @@ module Homebrew puts_deps sorted_dependents(Formula.to_a + Cask::Cask.to_a), recursive: recursive, args: args return elsif !args.no_named? && args.for_each? - puts_deps sorted_dependents(args.formulae_and_casks), recursive: recursive, args: args + puts_deps sorted_dependents(args.named.to_formulae_and_casks), recursive: recursive, args: args return end @@ -100,7 +100,7 @@ module Homebrew return end - dependents = dependents(args.formulae_and_casks) + dependents = dependents(args.named.to_formulae_and_casks) all_deps = deps_for_dependents(dependents, recursive: recursive, args: args, &(args.union? ? :| : :&)) condense_requirements(all_deps, args: args) diff --git a/Library/Homebrew/cmd/desc.rb b/Library/Homebrew/cmd/desc.rb index bd5c669459..5c1e143d21 100644 --- a/Library/Homebrew/cmd/desc.rb +++ b/Library/Homebrew/cmd/desc.rb @@ -47,7 +47,7 @@ module Homebrew results = if search_type.nil? desc = {} - args.formulae.each { |f| desc[f.full_name] = f.desc } + args.named.to_formulae.each { |f| desc[f.full_name] = f.desc } Descriptions.new(desc) else query = args.named.join(" ") diff --git a/Library/Homebrew/cmd/fetch.rb b/Library/Homebrew/cmd/fetch.rb index 93fb6ff6b9..6d306af2b0 100644 --- a/Library/Homebrew/cmd/fetch.rb +++ b/Library/Homebrew/cmd/fetch.rb @@ -50,13 +50,13 @@ module Homebrew if args.deps? bucket = [] - args.formulae.each do |f| + args.named.to_formulae.each do |f| bucket << f bucket.concat f.recursive_dependencies.map(&:to_formula) end bucket.uniq! else - bucket = args.formulae + bucket = args.named.to_formulae end puts "Fetching: #{bucket * ", "}" if bucket.size > 1 diff --git a/Library/Homebrew/cmd/gist-logs.rb b/Library/Homebrew/cmd/gist-logs.rb index b4b49660c1..5a8f5f0d32 100644 --- a/Library/Homebrew/cmd/gist-logs.rb +++ b/Library/Homebrew/cmd/gist-logs.rb @@ -141,6 +141,6 @@ module Homebrew Install.perform_preinstall_checks(all_fatal: true) Install.perform_build_from_source_checks(all_fatal: true) - gistify_logs(args.resolved_formulae.first, args: args) + gistify_logs(args.named.to_resolved_formulae.first, args: args) end end diff --git a/Library/Homebrew/cmd/home.rb b/Library/Homebrew/cmd/home.rb index 318c7ffb02..8d3f2d7b70 100644 --- a/Library/Homebrew/cmd/home.rb +++ b/Library/Homebrew/cmd/home.rb @@ -24,7 +24,7 @@ module Homebrew return end - homepages = args.formulae_and_casks.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 af63c47089..14c87cc102 100644 --- a/Library/Homebrew/cmd/info.rb +++ b/Library/Homebrew/cmd/info.rb @@ -88,7 +88,7 @@ module Homebrew elsif args.github? raise FormulaUnspecifiedError if args.no_named? - exec_browser(*args.formulae.map { |f| github_info(f) }) + exec_browser(*args.named.to_formulae.map { |f| github_info(f) }) else print_info(args: args) end @@ -133,7 +133,7 @@ module Homebrew elsif args.installed? Formula.installed.sort else - args.formulae + args.named.to_formulae end json = ff.map(&:to_hash) puts JSON.generate(json) diff --git a/Library/Homebrew/cmd/install.rb b/Library/Homebrew/cmd/install.rb index efb73358d6..a30d3acce0 100644 --- a/Library/Homebrew/cmd/install.rb +++ b/Library/Homebrew/cmd/install.rb @@ -115,13 +115,13 @@ module Homebrew formulae = [] - unless args.casks.empty? + unless args.named.homebrew_tap_cask_names.empty? cask_args = [] cask_args << "--force" if args.force? cask_args << "--debug" if args.debug? cask_args << "--verbose" if args.verbose? - args.casks.each do |c| + args.named.homebrew_tap_cask_names.each do |c| ohai "brew cask install #{c} #{cask_args.join " "}" system("#{HOMEBREW_PREFIX}/bin/brew", "cask", "install", c, *cask_args) end @@ -131,7 +131,7 @@ module Homebrew # developer tools are available, we need to stop them early on FormulaInstaller.prevent_build_flags(args) - args.formulae.each do |f| + args.named.to_formulae.each do |f| # head-only without --HEAD is an error if !args.HEAD? && f.stable.nil? && f.devel.nil? raise <<~EOS diff --git a/Library/Homebrew/cmd/link.rb b/Library/Homebrew/cmd/link.rb index 412135f55e..2ec520a894 100644 --- a/Library/Homebrew/cmd/link.rb +++ b/Library/Homebrew/cmd/link.rb @@ -37,7 +37,7 @@ module Homebrew verbose: args.verbose?, } - args.kegs.each do |keg| + args.named.to_kegs.each do |keg| keg_only = Formulary.keg_only?(keg.rack) if keg.linked? diff --git a/Library/Homebrew/cmd/list.rb b/Library/Homebrew/cmd/list.rb index 6da7c17e59..435ddc5843 100644 --- a/Library/Homebrew/cmd/list.rb +++ b/Library/Homebrew/cmd/list.rb @@ -89,9 +89,9 @@ module Homebrew safe_system "ls", *ls_args, HOMEBREW_CELLAR end elsif args.verbose? || !$stdout.tty? - system_command! "find", args: args.kegs.map(&:to_s) + %w[-not -type d -print], print_stdout: true + system_command! "find", args: args.named.to_kegs.map(&:to_s) + %w[-not -type d -print], print_stdout: true else - args.kegs.each { |keg| PrettyListing.new keg } + args.named.to_kegs.each { |keg| PrettyListing.new keg } end end @@ -168,7 +168,7 @@ module Homebrew def list_casks(args:) Cask::Cmd::List.list_casks( - *args.loaded_casks, + *args.named.to_casks, one: args.public_send(:'1?'), full_name: args.full_name?, versions: args.versions?, diff --git a/Library/Homebrew/cmd/migrate.rb b/Library/Homebrew/cmd/migrate.rb index c6f12d7831..df28df344a 100644 --- a/Library/Homebrew/cmd/migrate.rb +++ b/Library/Homebrew/cmd/migrate.rb @@ -25,7 +25,7 @@ module Homebrew def migrate args = migrate_args.parse - args.resolved_formulae.each do |f| + args.named.to_resolved_formulae.each do |f| if f.oldname unless (rack = HOMEBREW_CELLAR/f.oldname).exist? && !rack.subdirs.empty? raise NoSuchKegError, f.oldname diff --git a/Library/Homebrew/cmd/missing.rb b/Library/Homebrew/cmd/missing.rb index ee249d5a6e..73909a4229 100644 --- a/Library/Homebrew/cmd/missing.rb +++ b/Library/Homebrew/cmd/missing.rb @@ -31,7 +31,7 @@ module Homebrew ff = if args.no_named? Formula.installed.sort else - args.resolved_formulae.sort + args.named.to_resolved_formulae.sort end ff.each do |f| diff --git a/Library/Homebrew/cmd/options.rb b/Library/Homebrew/cmd/options.rb index cf6c7aaad8..4c796ecd7a 100644 --- a/Library/Homebrew/cmd/options.rb +++ b/Library/Homebrew/cmd/options.rb @@ -54,7 +54,7 @@ module Homebrew elsif args.no_named? raise FormulaUnspecifiedError else - puts_options args.formulae, args: args + puts_options args.named.to_formulae, args: args end end diff --git a/Library/Homebrew/cmd/outdated.rb b/Library/Homebrew/cmd/outdated.rb index 0dda1be8b4..d567d0f418 100644 --- a/Library/Homebrew/cmd/outdated.rb +++ b/Library/Homebrew/cmd/outdated.rb @@ -170,7 +170,7 @@ module Homebrew end def outdated_formulae(args:) - select_outdated((args.resolved_formulae.presence || Formula.installed), args: args).sort + select_outdated((args.named.to_resolved_formulae.presence || Formula.installed), args: args).sort end def outdated_casks(args:) @@ -182,7 +182,7 @@ module Homebrew end def outdated_formulae_casks(args:) - formulae, casks = args.resolved_formulae_casks + formulae, casks = args.named.to_resolved_formulae_to_casks if formulae.blank? && casks.blank? formulae = Formula.installed diff --git a/Library/Homebrew/cmd/pin.rb b/Library/Homebrew/cmd/pin.rb index a86d4a448e..5fab772549 100644 --- a/Library/Homebrew/cmd/pin.rb +++ b/Library/Homebrew/cmd/pin.rb @@ -22,7 +22,7 @@ module Homebrew def pin args = pin_args.parse - args.resolved_formulae.each do |f| + args.named.to_resolved_formulae.each do |f| if f.pinned? opoo "#{f.name} already pinned" elsif !f.pinnable? diff --git a/Library/Homebrew/cmd/postinstall.rb b/Library/Homebrew/cmd/postinstall.rb index a9da23695f..7b0a7220cf 100644 --- a/Library/Homebrew/cmd/postinstall.rb +++ b/Library/Homebrew/cmd/postinstall.rb @@ -22,7 +22,7 @@ module Homebrew def postinstall args = postinstall_args.parse - args.resolved_formulae.each do |f| + args.named.to_resolved_formulae.each do |f| ohai "Postinstalling #{f}" fi = FormulaInstaller.new(f, debug: args.debug?, quiet: args.quiet?, verbose: args.verbose?) fi.post_install diff --git a/Library/Homebrew/cmd/reinstall.rb b/Library/Homebrew/cmd/reinstall.rb index f18f02df65..0c950ba8d1 100644 --- a/Library/Homebrew/cmd/reinstall.rb +++ b/Library/Homebrew/cmd/reinstall.rb @@ -61,7 +61,7 @@ module Homebrew Install.perform_preinstall_checks - resolved_formulae, casks = args.resolved_formulae_casks + resolved_formulae, casks = args.named.to_resolved_formulae_to_casks resolved_formulae.each do |f| if f.pinned? onoe "#{f.full_name} is pinned. You must unpin it to reinstall." diff --git a/Library/Homebrew/cmd/uninstall.rb b/Library/Homebrew/cmd/uninstall.rb index 584b20ceeb..ee65afb1b8 100644 --- a/Library/Homebrew/cmd/uninstall.rb +++ b/Library/Homebrew/cmd/uninstall.rb @@ -49,7 +49,7 @@ module Homebrew end end else - all_kegs, casks = args.kegs_casks + all_kegs, casks = args.named.to_kegs_to_casks kegs_by_rack = all_kegs.group_by(&:rack) end diff --git a/Library/Homebrew/cmd/unlink.rb b/Library/Homebrew/cmd/unlink.rb index 7dfb9d7f7b..b727164827 100644 --- a/Library/Homebrew/cmd/unlink.rb +++ b/Library/Homebrew/cmd/unlink.rb @@ -28,7 +28,7 @@ module Homebrew options = { dry_run: args.dry_run?, verbose: args.verbose? } - args.kegs.each do |keg| + args.named.to_kegs.each do |keg| if args.dry_run? puts "Would remove:" keg.unlink(**options) diff --git a/Library/Homebrew/cmd/unpin.rb b/Library/Homebrew/cmd/unpin.rb index 0a346c967d..8a56ebb6ca 100644 --- a/Library/Homebrew/cmd/unpin.rb +++ b/Library/Homebrew/cmd/unpin.rb @@ -22,7 +22,7 @@ module Homebrew def unpin args = unpin_args.parse - args.resolved_formulae.each do |f| + args.named.to_resolved_formulae.each do |f| if f.pinned? f.unpin elsif !f.pinnable? diff --git a/Library/Homebrew/cmd/upgrade.rb b/Library/Homebrew/cmd/upgrade.rb index 21be88389c..0c32fcbc9d 100644 --- a/Library/Homebrew/cmd/upgrade.rb +++ b/Library/Homebrew/cmd/upgrade.rb @@ -73,7 +73,7 @@ module Homebrew def upgrade args = upgrade_args.parse - formulae, casks = args.resolved_formulae_casks + 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/cmd/uses.rb b/Library/Homebrew/cmd/uses.rb index f0ddcf02a2..d45a2d6cc7 100644 --- a/Library/Homebrew/cmd/uses.rb +++ b/Library/Homebrew/cmd/uses.rb @@ -56,7 +56,7 @@ module Homebrew used_formulae_missing = false used_formulae = begin - args.formulae + args.named.to_formulae rescue FormulaUnavailableError => e opoo e used_formulae_missing = true diff --git a/Library/Homebrew/dev-cmd/audit.rb b/Library/Homebrew/dev-cmd/audit.rb index b70bed455b..075859fb8e 100644 --- a/Library/Homebrew/dev-cmd/audit.rb +++ b/Library/Homebrew/dev-cmd/audit.rb @@ -98,9 +98,9 @@ module Homebrew elsif args.no_named? Formula else - args.resolved_formulae + args.named.to_resolved_formulae end - style_files = args.formulae_paths unless skip_style + style_files = args.named.to_formulae_paths unless skip_style only_cops = args.only_cops except_cops = args.except_cops diff --git a/Library/Homebrew/dev-cmd/bottle.rb b/Library/Homebrew/dev-cmd/bottle.rb index ea1188d085..d41954e2fe 100644 --- a/Library/Homebrew/dev-cmd/bottle.rb +++ b/Library/Homebrew/dev-cmd/bottle.rb @@ -88,7 +88,7 @@ module Homebrew return merge(args: args) if args.merge? ensure_relocation_formulae_installed! unless args.skip_relocation? - args.resolved_formulae.each do |f| + args.named.to_resolved_formulae.each do |f| bottle_formula f, args: args end end diff --git a/Library/Homebrew/dev-cmd/bump-formula-pr.rb b/Library/Homebrew/dev-cmd/bump-formula-pr.rb index 8f842e5082..4789167e99 100644 --- a/Library/Homebrew/dev-cmd/bump-formula-pr.rb +++ b/Library/Homebrew/dev-cmd/bump-formula-pr.rb @@ -123,7 +123,7 @@ module Homebrew # Use the user's browser, too. ENV["BROWSER"] = Homebrew::EnvConfig.browser - formula = args.formulae.first + formula = args.named.to_formulae.first new_url = args.url formula ||= determine_formula_from_url(new_url) if new_url diff --git a/Library/Homebrew/dev-cmd/bump-revision.rb b/Library/Homebrew/dev-cmd/bump-revision.rb index da835ad67e..bfd1812d35 100644 --- a/Library/Homebrew/dev-cmd/bump-revision.rb +++ b/Library/Homebrew/dev-cmd/bump-revision.rb @@ -30,7 +30,7 @@ module Homebrew # user path, too. ENV["PATH"] = ENV["HOMEBREW_PATH"] - args.formulae.each do |formula| + args.named.to_formulae.each do |formula| current_revision = formula.revision if current_revision.zero? diff --git a/Library/Homebrew/dev-cmd/bump.rb b/Library/Homebrew/dev-cmd/bump.rb index fe04da3225..3df802b351 100644 --- a/Library/Homebrew/dev-cmd/bump.rb +++ b/Library/Homebrew/dev-cmd/bump.rb @@ -23,7 +23,7 @@ module Homebrew def bump args = bump_args.parse - requested_formulae = args.formulae.map(&:name) if args.formulae.present? + requested_formulae = args.named.to_formulae.map(&:name) if args.named.to_formulae.present? requested_limit = args.limit.to_i if args.limit.present? diff --git a/Library/Homebrew/dev-cmd/cat.rb b/Library/Homebrew/dev-cmd/cat.rb index 1c3ee81176..4d7ef44a9b 100644 --- a/Library/Homebrew/dev-cmd/cat.rb +++ b/Library/Homebrew/dev-cmd/cat.rb @@ -26,6 +26,6 @@ module Homebrew else "cat" end - safe_system pager, args.formulae_paths.first + safe_system pager, args.named.to_formulae_paths.first end end diff --git a/Library/Homebrew/dev-cmd/edit.rb b/Library/Homebrew/dev-cmd/edit.rb index 7b23a6a20a..698a131ba0 100644 --- a/Library/Homebrew/dev-cmd/edit.rb +++ b/Library/Homebrew/dev-cmd/edit.rb @@ -28,7 +28,7 @@ module Homebrew EOS end - paths = args.formulae_paths.presence + paths = args.named.to_formulae_paths.presence # If no brews are listed, open the project root in an editor. paths ||= [HOMEBREW_REPOSITORY] diff --git a/Library/Homebrew/dev-cmd/formula.rb b/Library/Homebrew/dev-cmd/formula.rb index 664db4c5e0..ef18d85018 100644 --- a/Library/Homebrew/dev-cmd/formula.rb +++ b/Library/Homebrew/dev-cmd/formula.rb @@ -21,6 +21,6 @@ module Homebrew def formula args = formula_args.parse - args.formulae_paths.each(&method(:puts)) + args.named.to_formulae_paths.each(&method(:puts)) end end diff --git a/Library/Homebrew/dev-cmd/linkage.rb b/Library/Homebrew/dev-cmd/linkage.rb index 47258dfab1..a95234a57c 100644 --- a/Library/Homebrew/dev-cmd/linkage.rb +++ b/Library/Homebrew/dev-cmd/linkage.rb @@ -31,10 +31,10 @@ module Homebrew args = linkage_args.parse CacheStoreDatabase.use(:linkage) do |db| - kegs = if args.kegs.empty? + kegs = if args.named.to_kegs.empty? Formula.installed.map(&:opt_or_installed_prefix_keg).reject(&:nil?) else - args.kegs + args.named.to_kegs end kegs.each do |keg| ohai "Checking #{keg.name} linkage" if kegs.size > 1 diff --git a/Library/Homebrew/dev-cmd/mirror.rb b/Library/Homebrew/dev-cmd/mirror.rb index 832707227a..c8dfa5df5c 100644 --- a/Library/Homebrew/dev-cmd/mirror.rb +++ b/Library/Homebrew/dev-cmd/mirror.rb @@ -33,7 +33,7 @@ module Homebrew bintray = Bintray.new(org: bintray_org) - args.formulae.each do |formula| + args.named.to_formulae.each do |formula| mirror_url = bintray.mirror_formula(formula, repo: bintray_repo, publish_package: !args.no_publish?) ohai "Mirrored #{formula.full_name} to #{mirror_url}!" end diff --git a/Library/Homebrew/dev-cmd/style.rb b/Library/Homebrew/dev-cmd/style.rb index 3c05b73778..7ae81cb0fc 100644 --- a/Library/Homebrew/dev-cmd/style.rb +++ b/Library/Homebrew/dev-cmd/style.rb @@ -44,7 +44,7 @@ module Homebrew elsif args.named.any? { |tap| tap.count("/") == 1 } args.named.map { |tap| Tap.fetch(tap).path } else - args.formulae_paths + args.named.to_formulae_paths end only_cops = args.only_cops diff --git a/Library/Homebrew/dev-cmd/test.rb b/Library/Homebrew/dev-cmd/test.rb index 35012774c2..f6bbbbeb2a 100644 --- a/Library/Homebrew/dev-cmd/test.rb +++ b/Library/Homebrew/dev-cmd/test.rb @@ -39,7 +39,7 @@ module Homebrew require "formula_assertions" require "formula_free_port" - args.resolved_formulae.each do |f| + args.named.to_resolved_formulae.each do |f| # Cannot test uninstalled formulae unless f.latest_version_installed? ofail "Testing requires the latest version of #{f.full_name}" diff --git a/Library/Homebrew/dev-cmd/unpack.rb b/Library/Homebrew/dev-cmd/unpack.rb index fbdd7c459e..e4b5dcc486 100644 --- a/Library/Homebrew/dev-cmd/unpack.rb +++ b/Library/Homebrew/dev-cmd/unpack.rb @@ -33,7 +33,7 @@ module Homebrew def unpack args = unpack_args.parse - formulae = args.formulae + formulae = args.named.to_formulae if dir = args.destdir unpack_dir = Pathname.new(dir).expand_path diff --git a/Library/Homebrew/dev-cmd/update-python-resources.rb b/Library/Homebrew/dev-cmd/update-python-resources.rb index d41b77a72d..c5ce307a66 100644 --- a/Library/Homebrew/dev-cmd/update-python-resources.rb +++ b/Library/Homebrew/dev-cmd/update-python-resources.rb @@ -29,7 +29,7 @@ module Homebrew def update_python_resources args = update_python_resources_args.parse - args.formulae.each do |formula| + args.named.to_formulae.each do |formula| PyPI.update_python_resources! formula, args.version, print_only: args.print_only?, silent: args.silent?, ignore_non_pypi_packages: args.ignore_non_pypi_packages? end diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb index 34a2992ab1..17a17eaa54 100644 --- a/Library/Homebrew/formula_installer.rb +++ b/Library/Homebrew/formula_installer.rb @@ -112,7 +112,7 @@ class FormulaInstaller return if build_flags.empty? - all_bottled = args.formulae.all?(&:bottled?) + all_bottled = args.named.to_formulae.all?(&:bottled?) raise BuildFlagsError.new(build_flags, bottled: all_bottled) end diff --git a/Library/Homebrew/postinstall.rb b/Library/Homebrew/postinstall.rb index d6ae171797..5f85cfbb89 100644 --- a/Library/Homebrew/postinstall.rb +++ b/Library/Homebrew/postinstall.rb @@ -16,7 +16,7 @@ begin trap("INT", old_trap) - formula = args.resolved_formulae.first + formula = args.named.to_resolved_formulae.first formula.extend(Debrew::Formula) if args.debug? formula.run_post_install rescue Exception => e # rubocop:disable Lint/RescueException diff --git a/Library/Homebrew/test.rb b/Library/Homebrew/test.rb index a175ca0637..4c2b1455f5 100644 --- a/Library/Homebrew/test.rb +++ b/Library/Homebrew/test.rb @@ -24,7 +24,7 @@ begin trap("INT", old_trap) - formula = args.resolved_formulae.first + formula = args.named.to_resolved_formulae.first formula.extend(Homebrew::Assertions) formula.extend(Homebrew::FreePort) formula.extend(Debrew::Formula) if args.debug? diff --git a/Library/Homebrew/test/cli/named_args_spec.rb b/Library/Homebrew/test/cli/named_args_spec.rb index 9ce8b4fd46..10856882a4 100644 --- a/Library/Homebrew/test/cli/named_args_spec.rb +++ b/Library/Homebrew/test/cli/named_args_spec.rb @@ -10,12 +10,6 @@ describe Homebrew::CLI::NamedArgs do end end - let(:foo_keg) do - path = (HOMEBREW_CELLAR/"foo/1.0").resolved_path - mkdir_p path - Keg.new(path) - end - let(:bar) do formula "bar" do url "https://brew.sh" @@ -23,12 +17,6 @@ describe Homebrew::CLI::NamedArgs do end end - let(:bar_keg) do - path = (HOMEBREW_CELLAR/"bar/1.0").resolved_path - mkdir_p path - Keg.new(path) - end - let(:baz) do Cask::CaskLoader.load(+<<~RUBY) cask "baz" do @@ -44,6 +32,14 @@ describe Homebrew::CLI::NamedArgs do expect(described_class.new("foo", "bar").to_formulae).to eq [foo, bar] end + + it "raises an error when a Formula is unavailable" do + expect { described_class.new("mxcl").to_formulae }.to raise_error FormulaUnavailableError + end + + it "returns an empty array when there are no Formulae" do + expect(described_class.new.to_formulae).to be_empty + end end describe "#to_formulae_and_casks" do @@ -85,26 +81,43 @@ describe Homebrew::CLI::NamedArgs do end describe "#to_kegs" do - it "returns kegs" do - named_args = described_class.new("foo", "bar") - allow(named_args).to receive(:resolve_keg).with("foo").and_return foo_keg - allow(named_args).to receive(:resolve_keg).with("bar").and_return bar_keg + before do + (HOMEBREW_CELLAR/"foo/1.0").mkpath + (HOMEBREW_CELLAR/"bar/1.0").mkpath + end - expect(named_args.to_kegs).to eq [foo_keg, bar_keg] + it "resolves kegs with #resolve_kegs" do + expect(described_class.new("foo", "bar").to_kegs.map(&:name)).to eq ["foo", "bar"] + end + + it "when there are no matching kegs returns an array of Kegs" do + expect(described_class.new.to_kegs).to be_empty end end describe "#to_kegs_to_casks" do + before do + (HOMEBREW_CELLAR/"foo/1.0").mkpath + end + it "returns kegs, as well as casks" do - named_args = described_class.new("foo", "baz") - allow(named_args).to receive(:resolve_keg).and_call_original - allow(named_args).to receive(:resolve_keg).with("foo").and_return foo_keg stub_cask_loader baz, call_original: true - kegs, casks = named_args.to_kegs_to_casks + kegs, casks = described_class.new("foo", "baz").to_kegs_to_casks - expect(kegs).to eq [foo_keg] + expect(kegs.map(&:name)).to eq ["foo"] expect(casks).to eq [baz] end end + + describe "#homebrew_tap_cask_names" do + it "returns an array of casks from homebrew-cask" do + expect(described_class.new("foo", "homebrew/cask/local-caffeine").homebrew_tap_cask_names) + .to eq ["homebrew/cask/local-caffeine"] + end + + it "returns an empty array when there are no matching casks" do + expect(described_class.new("foo").homebrew_tap_cask_names).to be_empty + end + end end diff --git a/Library/Homebrew/test/cli/parser_spec.rb b/Library/Homebrew/test/cli/parser_spec.rb index 4ab19143bf..0b6ce6e427 100644 --- a/Library/Homebrew/test/cli/parser_spec.rb +++ b/Library/Homebrew/test/cli/parser_spec.rb @@ -270,38 +270,6 @@ describe Homebrew::CLI::Parser do expect(args.flags_only).to eq %w[--verbose --foo --bar=value] end - it "#formulae raises an error when a Formula is unavailable" do - args = parser.parse(["mxcl"]) - expect { args.formulae }.to raise_error FormulaUnavailableError - end - - it "#formulae returns an empty array when there are no Formulae" do - args = parser.parse([]) - expect(args.formulae).to be_empty - end - - it "#casks returns an empty array when there are no matching casks" do - args = parser.parse([]) - expect(args.casks).to eq [] - end - - context "kegs" do - before do - keg = HOMEBREW_CELLAR/"mxcl/10.0" - keg.mkpath - end - - it "when there are matching kegs returns an array of Kegs" do - args = parser.parse(["mxcl"]) - expect(args.kegs.length).to eq 1 - end - - it "when there are no matching kegs returns an array of Kegs" do - args = parser.parse([]) - expect(args.kegs).to be_empty - end - end - it "#named returns an array of non-option arguments" do args = parser.parse(["foo", "-v", "-s"]) expect(args.named).to eq ["foo"]