diff options
| author | Anastasia Sulyagina | 2016-06-22 16:36:17 +0400 |
|---|---|---|
| committer | Mike McQuaid | 2016-06-22 13:36:17 +0100 |
| commit | 2d8b4376dfdb3d319fd262de57c5b5a0ed9bda1b (patch) | |
| tree | ac85ed536e560b38bf6b6809776ecd077f8e5b51 /Library | |
| parent | 6dc72f2679208f34d9d09f547dda5a2ba0714a9f (diff) | |
| download | brew-2d8b4376dfdb3d319fd262de57c5b5a0ed9bda1b.tar.bz2 | |
update-report: migrate formulae to casks. (#375)
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/cmd/update-report.rb | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/Library/Homebrew/cmd/update-report.rb b/Library/Homebrew/cmd/update-report.rb index 7d17056b2..197546966 100644 --- a/Library/Homebrew/cmd/update-report.rb +++ b/Library/Homebrew/cmd/update-report.rb @@ -250,10 +250,26 @@ class Reporter tabs = dir.subdirs.map { |d| Tab.for_keg(Keg.new(d)) } next unless tabs.first.tap == tap # skip if installed formula is not from this tap. new_tap = Tap.fetch(new_tap_name) - new_tap.install unless new_tap.installed? - # update tap for each Tab - tabs.each { |tab| tab.tap = new_tap } - tabs.each(&:write) + # For formulae migrated to cask: Auto-install cask or provide install instructions. + if new_tap_name == "caskroom/cask" + system HOMEBREW_BREW_FILE, "uninstall", name + if new_tap.installed? && (HOMEBREW_REPOSITORY/"Caskroom").directory? + ohai "#{name} has been moved to Homebrew Cask. Installing #{name}..." + system HOMEBREW_BREW_FILE, "uninstall", "--force", name + system HOMEBREW_BREW_FILE, "cask", "install", name + else + ohai "#{name} has been moved to Homebrew Cask.", <<-EOS.undent + To uninstall the formula and install the cask run: + brew uninstall --force #{name} + brew cask install #{name} + EOS + end + else + new_tap.install unless new_tap.installed? + # update tap for each Tab + tabs.each { |tab| tab.tap = new_tap } + tabs.each(&:write) + end end end |
