install, upgrade: run formula installer prelude before fetching
This commit is contained in:
parent
a96e286400
commit
0c3afa5837
@ -218,8 +218,12 @@ class FormulaInstaller
|
||||
raise
|
||||
end
|
||||
|
||||
def check_install_sanity
|
||||
def check_installation_already_attempted
|
||||
raise FormulaInstallationAlreadyAttemptedError, formula if self.class.attempted.include?(formula)
|
||||
end
|
||||
|
||||
def check_install_sanity
|
||||
check_installation_already_attempted
|
||||
|
||||
if force_bottle? && !pour_bottle?
|
||||
raise CannotInstallFormulaError, "--force-bottle passed but #{formula.full_name} has no bottle!"
|
||||
|
||||
@ -291,8 +291,11 @@ module Homebrew
|
||||
)
|
||||
|
||||
begin
|
||||
fi.prelude
|
||||
fi.fetch
|
||||
fi
|
||||
rescue CannotInstallFormulaError => e
|
||||
ofail e.message
|
||||
rescue UnsatisfiedRequirements, DownloadError, ChecksumMismatchError => e
|
||||
ofail "#{f}: #{e}"
|
||||
nil
|
||||
@ -308,7 +311,7 @@ module Homebrew
|
||||
def install_formula(formula_installer)
|
||||
f = formula_installer.formula
|
||||
|
||||
formula_installer.prelude
|
||||
formula_installer.check_installation_already_attempted
|
||||
|
||||
f.print_tap_action
|
||||
|
||||
@ -327,8 +330,6 @@ module Homebrew
|
||||
# We already attempted to install f as part of the dependency tree of
|
||||
# another formula. In that case, don't generate an error, just move on.
|
||||
nil
|
||||
rescue CannotInstallFormulaError => e
|
||||
ofail e.message
|
||||
ensure
|
||||
# Re-link kegs if upgrade fails
|
||||
begin
|
||||
|
||||
@ -58,8 +58,13 @@ module Homebrew
|
||||
quiet: quiet,
|
||||
verbose: verbose,
|
||||
)
|
||||
fi.fetch unless dry_run
|
||||
unless dry_run
|
||||
fi.prelude
|
||||
fi.fetch
|
||||
end
|
||||
fi
|
||||
rescue CannotInstallFormulaError => e
|
||||
ofail e
|
||||
rescue UnsatisfiedRequirements, DownloadError => e
|
||||
ofail "#{formula}: #{e}"
|
||||
nil
|
||||
@ -167,7 +172,7 @@ module Homebrew
|
||||
return
|
||||
end
|
||||
|
||||
formula_installer.prelude
|
||||
formula_installer.check_installation_already_attempted
|
||||
|
||||
print_upgrade_message(formula, formula_installer.options)
|
||||
|
||||
@ -182,8 +187,6 @@ module Homebrew
|
||||
# We already attempted to upgrade f as part of the dependency tree of
|
||||
# another formula. In that case, don't generate an error, just move on.
|
||||
nil
|
||||
rescue CannotInstallFormulaError => e
|
||||
ofail e
|
||||
rescue BuildError => e
|
||||
e.dump(verbose: verbose)
|
||||
puts
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user