From ffd706d997441744b50f75ca45ceb8bd1caefd76 Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Wed, 29 Mar 2017 11:22:59 +0100 Subject: [PATCH] update-report: more forceful rename migration. Migrate between different taps and delete relevant subdirectories if they can be safely. Also, tweak some naming and use utility methods. --- Library/Homebrew/cmd/update-report.rb | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/Library/Homebrew/cmd/update-report.rb b/Library/Homebrew/cmd/update-report.rb index 4002df75c5..0658907075 100644 --- a/Library/Homebrew/cmd/update-report.rb +++ b/Library/Homebrew/cmd/update-report.rb @@ -502,12 +502,18 @@ class Reporter end def migrate_formula_rename - Formula.installed.map(&:oldname).compact.each do |old_name| - old_name_dir = HOMEBREW_CELLAR/old_name - next if old_name_dir.symlink? - next unless old_name_dir.directory? && !old_name_dir.subdirs.empty? + Formula.installed.each do |formula| + next unless Migrator.needs_migration?(formula) - new_name = tap.formula_renames[old_name] + oldname = formula.oldname + oldname_rack = HOMEBREW_CELLAR/oldname + + if oldname_rack.subdirs.empty? + oldname_rack.rmdir_if_possible + next + end + + new_name = tap.formula_renames[oldname] next unless new_name new_full_name = "#{tap}/#{new_name}" @@ -520,9 +526,8 @@ class Reporter end begin - migrator = Migrator.new(f) + migrator = Migrator.new(f, force: true) migrator.migrate - rescue Migrator::MigratorDifferentTapsError rescue Exception => e onoe e end