Add custom implementations for brew_wrapper
and no_force_brew_wrapper?
This commit is contained in:
parent
b7d8072575
commit
b2d14aff4d
@ -89,8 +89,8 @@ module Homebrew
|
||||
},
|
||||
HOMEBREW_BREW_WRAPPER: {
|
||||
description: "If set, use wrapper to call `brew` rather than auto-detecting it.",
|
||||
# TODO: uncomment line below and remove the line above when odeprecated.
|
||||
# We use backticks to render "Deprecated:" in bold.
|
||||
# TODO: uncomment line below and remove the line above when odeprecated.
|
||||
# description: "`Deprecated:` If set, use wrapper to call `brew` rather than auto-detecting it.",
|
||||
},
|
||||
HOMEBREW_BROWSER: {
|
||||
@ -398,8 +398,8 @@ module Homebrew
|
||||
},
|
||||
HOMEBREW_NO_FORCE_BREW_WRAPPER: {
|
||||
description: "If set, disables `$HOMEBREW_FORCE_BREW_WRAPPER` behaviour, even if set.",
|
||||
# TODO: uncomment line below and remove the line above when odeprecated.
|
||||
# We use backticks to render "Deprecated:" in bold.
|
||||
# TODO: uncomment line below and remove the line above when odeprecated.
|
||||
# description: "`Deprecated:` If set, disables `$HOMEBREW_FORCE_BREW_WRAPPER` behaviour, even if set.",
|
||||
boolean: true,
|
||||
},
|
||||
@ -556,10 +556,23 @@ module Homebrew
|
||||
end
|
||||
|
||||
CUSTOM_IMPLEMENTATIONS = T.let(Set.new([
|
||||
:HOMEBREW_BREW_WRAPPER,
|
||||
:HOMEBREW_MAKE_JOBS,
|
||||
:HOMEBREW_NO_FORCE_BREW_WRAPPER,
|
||||
:HOMEBREW_CASK_OPTS,
|
||||
]).freeze, T::Set[Symbol])
|
||||
|
||||
FALSY_VALUES = T.let(%w[false no off nil 0].freeze, T::Array[String])
|
||||
|
||||
sig { params(env: String, env_value: T.nilable(String)).void }
|
||||
def check_falsy_values(env, env_value)
|
||||
return unless FALSY_VALUES.include?(env_value&.downcase)
|
||||
|
||||
odisabled "#{env}=#{env_value}", <<~EOS.chomp
|
||||
#{env}=1 to enable and #{env}= (an empty value) to disable
|
||||
EOS
|
||||
end
|
||||
|
||||
ENVS.each do |env, hash|
|
||||
# Needs a custom implementation.
|
||||
next if CUSTOM_IMPLEMENTATIONS.include?(env)
|
||||
@ -571,16 +584,10 @@ module Homebrew
|
||||
define_method(method_name) do
|
||||
env_value = ENV.fetch(env, nil)
|
||||
|
||||
# odeprecated "`HOMEBREW_NO_FORCE_BREW_WRAPPER`" if env == "HOMEBREW_NO_FORCE_BREW_WRAPPER"
|
||||
falsy_values = %w[false no off nil 0]
|
||||
if falsy_values.include?(env_value&.downcase)
|
||||
odisabled "#{env}=#{env_value}", <<~EOS.chomp
|
||||
#{env}=1 to enable and #{env}= (an empty value) to disable
|
||||
EOS
|
||||
end
|
||||
check_falsy_values(env, env_value)
|
||||
|
||||
# TODO: Uncomment the remaining part of the line below after the deprecation/disable cycle.
|
||||
env_value.present? # && !falsy_values.include(env_value.downcase)
|
||||
# TODO: Uncomment the remaining part of the line below after `check_falsy_values` has been removed.
|
||||
env_value.present? # && !FALSY_VALUES.include?(env_value.downcase)
|
||||
end
|
||||
elsif hash[:default].present?
|
||||
define_method(method_name) do
|
||||
@ -588,14 +595,30 @@ module Homebrew
|
||||
end
|
||||
else
|
||||
define_method(method_name) do
|
||||
# odeprecated "`HOMEBREW_BREW_WRAPPER`" if env == "HOMEBREW_BREW_WRAPPER"
|
||||
|
||||
ENV[env].presence
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# Needs a custom implementation.
|
||||
sig { returns(T::Boolean) }
|
||||
def no_force_brew_wrapper?
|
||||
# odeprecated "`HOMEBREW_NO_FORCE_BREW_WRAPPER`"
|
||||
env = "HOMEBREW_NO_FORCE_BREW_WRAPPER"
|
||||
env_value = ENV.fetch(env, nil)
|
||||
|
||||
check_falsy_values(env, env_value)
|
||||
|
||||
# TODO: Uncomment the remaining part of the line below after `check_falsy_values` has been removed.
|
||||
env_value.present? # && !FALSY_VALUES.include?(env_value.downcase)
|
||||
end
|
||||
|
||||
sig { returns(T.nilable(String)) }
|
||||
def brew_wrapper
|
||||
# odeprecated "`HOMEBREW_BREW_WRAPPER`"
|
||||
ENV["HOMEBREW_BREW_WRAPPER"].presence
|
||||
end
|
||||
|
||||
sig { returns(String) }
|
||||
def make_jobs
|
||||
jobs = ENV["HOMEBREW_MAKE_JOBS"].to_i
|
||||
|
Loading…
x
Reference in New Issue
Block a user