Skip to content

Commit 6b6d276

Browse files
authored
Merge pull request #21063 from Homebrew/linkage_tweaks
upgrade: tweak linkage handling.
2 parents 40554a6 + ac8e1bc commit 6b6d276

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

Library/Homebrew/upgrade.rb

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -182,8 +182,6 @@ def dependants(
182182
formulae_to_install = formulae.reject { |f| f.core_formula? && f.versioned_formula? }
183183
return no_dependents if formulae_to_install.empty?
184184

185-
already_broken = check_broken_dependents(formulae_to_install)
186-
187185
# TODO: this should be refactored to use FormulaInstaller new logic
188186
outdated = formulae_to_install.flat_map(&:runtime_installed_formula_dependents)
189187
.uniq
@@ -193,7 +191,7 @@ def dependants(
193191
outdated, skipped = outdated.partition do |dependent|
194192
dependent.bottled? && dependent.deps.map(&:to_formula).all?(&:bottled?)
195193
end
196-
return no_dependents if outdated.blank? && already_broken.blank?
194+
return no_dependents if outdated.blank?
197195

198196
outdated -= formulae_to_install if dry_run
199197
upgradeable = outdated.reject(&:pinned?)
@@ -285,16 +283,18 @@ def upgrade_dependents(deps, formulae,
285283
upgrade_formulae(dependent_installers, dry_run:, verbose:)
286284
end
287285

288-
# Update installed formulae after upgrading
289-
installed_formulae = FormulaInstaller.installed.to_a
286+
# Update non-core installed formulae for linkage checks after upgrading
287+
# Don't need to check core formulae because we do so at CI time.
288+
installed_non_core_formulae = FormulaInstaller.installed.to_a.reject(&:core_formula?)
289+
return if installed_non_core_formulae.blank?
290290

291291
# Assess the dependents tree again now we've upgraded.
292292
unless dry_run
293293
oh1 "Checking for dependents of upgraded formulae..."
294294
puts_no_installed_dependents_check_disable_message_if_not_already!
295295
end
296296

297-
broken_dependents = check_broken_dependents(installed_formulae)
297+
broken_dependents = check_broken_dependents(installed_non_core_formulae)
298298
if broken_dependents.blank?
299299
if dry_run
300300
ohai "No currently broken dependents found!"

0 commit comments

Comments
 (0)