Add env to disable Debrew

This commit is contained in:
Bo Anderson 2024-07-24 06:16:18 +01:00
parent 8e8ce4a2f7
commit 93dbb9593d
No known key found for this signature in database
7 changed files with 18 additions and 3 deletions

View File

@ -122,7 +122,7 @@ class Build
} }
with_env(new_env) do with_env(new_env) do
if args.debug? if args.debug? && !Homebrew::EnvConfig.disable_debrew?
require "debrew" require "debrew"
formula.extend(Debrew::Formula) formula.extend(Debrew::Formula)
end end

View File

@ -152,6 +152,10 @@ module Homebrew
"budding) by e.g. turning warnings into errors.", "budding) by e.g. turning warnings into errors.",
boolean: true, boolean: true,
}, },
HOMEBREW_DISABLE_DEBREW: {
description: "If set, the interactive formula debugger available via `--debug` will be disabled.",
boolean: true,
},
HOMEBREW_DISABLE_LOAD_FORMULA: { HOMEBREW_DISABLE_LOAD_FORMULA: {
description: "If set, refuse to load formulae. This is useful when formulae are not trusted (such " \ description: "If set, refuse to load formulae. This is useful when formulae are not trusted (such " \
"as in pull requests).", "as in pull requests).",

View File

@ -21,7 +21,7 @@ begin
trap("INT", old_trap) trap("INT", old_trap)
formula = T.must(args.named.to_resolved_formulae.first) formula = T.must(args.named.to_resolved_formulae.first)
if args.debug? if args.debug? && !Homebrew::EnvConfig.disable_debrew?
require "debrew" require "debrew"
formula.extend(Debrew::Formula) formula.extend(Debrew::Formula)
end end

View File

@ -88,6 +88,9 @@ module Homebrew::EnvConfig
sig { returns(T::Boolean) } sig { returns(T::Boolean) }
def developer?; end def developer?; end
sig { returns(T::Boolean) }
def disable_debrew?; end
sig { returns(T::Boolean) } sig { returns(T::Boolean) }
def disable_load_formula?; end def disable_load_formula?; end

View File

@ -35,7 +35,7 @@ begin
formula = T.must(args.named.to_resolved_formulae.first) formula = T.must(args.named.to_resolved_formulae.first)
formula.extend(Homebrew::Assertions) formula.extend(Homebrew::Assertions)
formula.extend(Homebrew::FreePort) formula.extend(Homebrew::FreePort)
if args.debug? if args.debug? && !Homebrew::EnvConfig.disable_debrew?
require "debrew" require "debrew"
formula.extend(Debrew::Formula) formula.extend(Debrew::Formula)
end end

View File

@ -3691,6 +3691,11 @@ command execution e.g. `$(cat file)`.
: If set, tweak behaviour to be more relevant for Homebrew developers (active or : If set, tweak behaviour to be more relevant for Homebrew developers (active or
budding) by e.g. turning warnings into errors. budding) by e.g. turning warnings into errors.
`HOMEBREW_DISABLE_DEBREW`
: If set, the interactive formula debugger available via `--debug` will be
disabled.
`HOMEBREW_DISABLE_LOAD_FORMULA` `HOMEBREW_DISABLE_LOAD_FORMULA`
: If set, refuse to load formulae. This is useful when formulae are not trusted : If set, refuse to load formulae. This is useful when formulae are not trusted

View File

@ -2395,6 +2395,9 @@ If set, always assume \fB\-\-debug\fP when running commands\.
\fBHOMEBREW_DEVELOPER\fP \fBHOMEBREW_DEVELOPER\fP
If set, tweak behaviour to be more relevant for Homebrew developers (active or budding) by e\.g\. turning warnings into errors\. If set, tweak behaviour to be more relevant for Homebrew developers (active or budding) by e\.g\. turning warnings into errors\.
.TP .TP
\fBHOMEBREW_DISABLE_DEBREW\fP
If set, the interactive formula debugger available via \fB\-\-debug\fP will be disabled\.
.TP
\fBHOMEBREW_DISABLE_LOAD_FORMULA\fP \fBHOMEBREW_DISABLE_LOAD_FORMULA\fP
If set, refuse to load formulae\. This is useful when formulae are not trusted (such as in pull requests)\. If set, refuse to load formulae\. This is useful when formulae are not trusted (such as in pull requests)\.
.TP .TP