mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-14 16:09:03 +08:00
dev-cmd/bump: add --auto
flag
This will read from the tap's `.github/autobump.txt` when provided. See discussion at Homebrew/homebrew-core#183126.
This commit is contained in:
parent
1f9bd2de89
commit
07d04dd348
@ -30,6 +30,9 @@ module Homebrew
|
|||||||
description: "Print formulae/casks with fully-qualified names."
|
description: "Print formulae/casks with fully-qualified names."
|
||||||
switch "--no-pull-requests",
|
switch "--no-pull-requests",
|
||||||
description: "Do not retrieve pull requests from GitHub."
|
description: "Do not retrieve pull requests from GitHub."
|
||||||
|
switch "--auto",
|
||||||
|
description: "Read the list of formulae/casks from .github/autobump.txt.",
|
||||||
|
hidden: true
|
||||||
switch "--formula", "--formulae",
|
switch "--formula", "--formulae",
|
||||||
description: "Check only formulae."
|
description: "Check only formulae."
|
||||||
switch "--cask", "--casks",
|
switch "--cask", "--casks",
|
||||||
@ -52,6 +55,7 @@ module Homebrew
|
|||||||
conflicts "--cask", "--formula"
|
conflicts "--cask", "--formula"
|
||||||
conflicts "--tap=", "--installed"
|
conflicts "--tap=", "--installed"
|
||||||
conflicts "--eval-all", "--installed"
|
conflicts "--eval-all", "--installed"
|
||||||
|
conflicts "--installed", "--auto"
|
||||||
conflicts "--no-pull-requests", "--open-pr"
|
conflicts "--no-pull-requests", "--open-pr"
|
||||||
|
|
||||||
named_args [:formula, :cask], without_api: true
|
named_args [:formula, :cask], without_api: true
|
||||||
@ -64,7 +68,22 @@ module Homebrew
|
|||||||
Homebrew.with_no_api_env do
|
Homebrew.with_no_api_env do
|
||||||
eval_all = args.eval_all? || Homebrew::EnvConfig.eval_all?
|
eval_all = args.eval_all? || Homebrew::EnvConfig.eval_all?
|
||||||
|
|
||||||
formulae_and_casks = if args.tap
|
formulae_and_casks = if args.auto?
|
||||||
|
tap_arg = args.tap
|
||||||
|
raise UsageError, "`--tap=` must be passed with `--auto`." if tap_arg.blank?
|
||||||
|
raise UsageError, "`--formula` or `--cask` must be passed with `--auto`." if !args.formula? && !args.cask?
|
||||||
|
|
||||||
|
tap = Tap.fetch(tap_arg)
|
||||||
|
autobump_list = tap.path/".github/autobump.txt"
|
||||||
|
raise UsageError, "No autobump list at .github/autobump.txt found." unless autobump_list.exist?
|
||||||
|
|
||||||
|
autobump_list.readlines(chomp: true).map do |name|
|
||||||
|
qualified_name = "#{tap.name}/#{name}"
|
||||||
|
next Cask::CaskLoader.load(qualified_name) if args.cask?
|
||||||
|
|
||||||
|
Formulary.factory(qualified_name)
|
||||||
|
end
|
||||||
|
elsif args.tap
|
||||||
tap = Tap.fetch(T.must(args.tap))
|
tap = Tap.fetch(T.must(args.tap))
|
||||||
raise UsageError, "`--tap` cannot be used with official taps." if tap.official?
|
raise UsageError, "`--tap` cannot be used with official taps." if tap.official?
|
||||||
|
|
||||||
|
@ -11,6 +11,9 @@ class Homebrew::DevCmd::Bump
|
|||||||
end
|
end
|
||||||
|
|
||||||
class Homebrew::DevCmd::Bump::Args < Homebrew::CLI::Args
|
class Homebrew::DevCmd::Bump::Args < Homebrew::CLI::Args
|
||||||
|
sig { returns(T::Boolean) }
|
||||||
|
def auto?; end
|
||||||
|
|
||||||
sig { returns(T::Boolean) }
|
sig { returns(T::Boolean) }
|
||||||
def cask?; end
|
def cask?; end
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user