Skip to content

Commit

Permalink
Stop following recursive tap migrations.
Browse files Browse the repository at this point in the history
  • Loading branch information
reitermarkus committed Feb 10, 2024
1 parent 73f1629 commit 55149ad
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 8 deletions.
13 changes: 9 additions & 4 deletions Library/Homebrew/cask/cask_loader.rb
Original file line number Diff line number Diff line change
Expand Up @@ -534,10 +534,15 @@ def self.tap_cask_token_type(tapped_token, warn:)
new_tap = Tap.fetch(new_tap_name)
new_tap.ensure_installed!
new_tapped_token = "#{new_tap_name}/#{token}"
token, tap, = tap_cask_token_type(new_tapped_token, warn: false)
old_token = tapped_token
new_token = new_tap.core_cask_tap? ? token : new_tapped_token
type = :migration

if (tapped_token = new_tapped_token)
opoo "Tap migration for #{tapped_token} points to itself, stopping recursion."
else
token, tap, = tap_cask_token_type(new_tapped_token, warn: false)
old_token = tapped_token
new_token = new_tap.core_cask_tap? ? token : new_tapped_token
type = :migration
end
end

opoo "Cask #{old_token} was renamed to #{new_token}." if warn && old_token && new_token
Expand Down
13 changes: 9 additions & 4 deletions Library/Homebrew/formulary.rb
Original file line number Diff line number Diff line change
Expand Up @@ -921,10 +921,15 @@ def self.tap_formula_name_type(tapped_name, warn:)
new_tap = Tap.fetch new_tap_name
new_tap.ensure_installed!
new_tapped_name = "#{new_tap_name}/#{name}"
name, tap, = Formulary.tap_formula_name_type(new_tapped_name, warn: false)
old_name = tapped_name
new_name = new_tap.core_tap? ? name : new_tapped_name
type = :migration

if tapped_name == new_tapped_name
opoo "Tap migration for #{tapped_name} points to itself, stopping recursion."
else
name, tap, = Formulary.tap_formula_name_type(new_tapped_name, warn: false)
old_name = tapped_name
new_name = new_tap.core_tap? ? name : new_tapped_name
type = :migration
end
end

opoo "Formula #{old_name} was renamed to #{new_name}." if warn && old_name && new_name
Expand Down

0 comments on commit 55149ad

Please sign in to comment.