diff --git a/lib/cask.rb b/lib/cask.rb index f8738d45b069b..fc9f20ddf098d 100644 --- a/lib/cask.rb +++ b/lib/cask.rb @@ -6,6 +6,7 @@ class Cask; end # transitional, for set_up_taps (see below) require 'cmd/update' +require 'rubygems' require 'cask/artifact' require 'cask/audit' @@ -65,8 +66,22 @@ def self.init def self.set_up_taps odebug 'Initializing Taps' + return true if Cask.default_tap.match(%r{test[^/]*\Z}) + # transitional: help with Homebrew's move of Tap dirs, Apr 2014 - Homebrew.send(:rename_taps_dir_if_necessary) + minimum_homebrew_version = '0.9.5' + unless Gem::Version.new(HOMEBREW_VERSION) >= Gem::Version.new(minimum_homebrew_version) + raise CaskError.new <<-EOS.undent + Minimum Homebrew version '#{minimum_homebrew_version}' required. + (Homebrew version #{HOMEBREW_VERSION} was detected.) + Try running "brew update". + EOS + end + begin + Homebrew.send(:rename_taps_dir_if_necessary) + rescue StandardError + opoo %q{Trouble with automatic Tap migration. You may need to run "brew update && brew upgrade brew-cask"} + end # transitional: help with our own move to new GitHub project, May 2014 legacy_user = 'phinze' diff --git a/test/test_helper.rb b/test/test_helper.rb index 163afb655d2db..fc7ba5f51eb35 100644 --- a/test/test_helper.rb +++ b/test/test_helper.rb @@ -38,7 +38,8 @@ # our baby require 'cask' -# look for casks in testcasks by default +# Look for casks in testcasks by default. It is elsewhere required that +# the string "test" appear in the directory name. Cask.default_tap = 'caskroom/homebrew-testcasks' # our own testy caskroom