Merge pull request #20357 from Homebrew/more-extend-kernel-sigs
extend/kernel: tighten type sig for `ensure_formula_installed!`
This commit is contained in:
commit
1fc4225850
@ -354,7 +354,7 @@ module Homebrew
|
||||
end
|
||||
return if gnu_tar_formula.blank?
|
||||
|
||||
ensure_formula_installed!(gnu_tar_formula, reason: "bottling")
|
||||
ensure_formula_installed!(gnu_tar_formula.name, reason: "bottling")
|
||||
|
||||
gnu_tar_formula
|
||||
end
|
||||
|
||||
@ -442,10 +442,10 @@ module Kernel
|
||||
# Ensure the given formula is installed
|
||||
# This is useful for installing a utility formula (e.g. `shellcheck` for `brew style`)
|
||||
sig {
|
||||
params(formula_or_name: T.any(String, Formula), reason: String, latest: T::Boolean, output_to_stderr: T::Boolean,
|
||||
params(formula_name: String, reason: String, latest: T::Boolean, output_to_stderr: T::Boolean,
|
||||
quiet: T::Boolean).returns(Formula)
|
||||
}
|
||||
def ensure_formula_installed!(formula_or_name, reason: "", latest: false,
|
||||
def ensure_formula_installed!(formula_name, reason: "", latest: false,
|
||||
output_to_stderr: true, quiet: false)
|
||||
if output_to_stderr || quiet
|
||||
file = if quiet
|
||||
@ -455,19 +455,14 @@ module Kernel
|
||||
end
|
||||
# Call this method itself with redirected stdout
|
||||
redirect_stdout(file) do
|
||||
return ensure_formula_installed!(formula_or_name, latest:,
|
||||
return ensure_formula_installed!(formula_name, latest:,
|
||||
reason:, output_to_stderr: false)
|
||||
end
|
||||
end
|
||||
|
||||
require "formula"
|
||||
|
||||
formula = if formula_or_name.is_a?(Formula)
|
||||
formula_or_name
|
||||
else
|
||||
Formula[formula_or_name]
|
||||
end
|
||||
|
||||
formula = Formula[formula_name]
|
||||
reason = " for #{reason}" if reason.present?
|
||||
|
||||
unless formula.any_version_installed?
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user