diff options
| author | Mike McQuaid | 2016-09-07 09:11:06 +0100 |
|---|---|---|
| committer | Mike McQuaid | 2016-09-07 09:11:06 +0100 |
| commit | f1cc1265afa43afb9bffba17c9fc18776b62dd99 (patch) | |
| tree | 2718a6f179d31e8e50273bd2fd3f565fae08a3da /Library | |
| parent | 921aa015760a0b85345efd8fb921537499657872 (diff) | |
| download | brew-f1cc1265afa43afb9bffba17c9fc18776b62dd99.tar.bz2 | |
Refactor MacOS check_development_tools usage.
Better use the abstraction layer so e.g. Linux could have similarly
fatal checks for these things.
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/cmd/install.rb | 15 | ||||
| -rw-r--r-- | Library/Homebrew/diagnostic.rb | 7 | ||||
| -rw-r--r-- | Library/Homebrew/extend/os/mac/diagnostic.rb | 17 |
3 files changed, 25 insertions, 14 deletions
diff --git a/Library/Homebrew/cmd/install.rb b/Library/Homebrew/cmd/install.rb index a1df8f459..074f5fbc3 100644 --- a/Library/Homebrew/cmd/install.rb +++ b/Library/Homebrew/cmd/install.rb @@ -223,14 +223,15 @@ module Homebrew def check_development_tools checks = Diagnostic::Checks.new - checks.all_development_tools_checks.each do |check| + all_development_tools_checks = checks.development_tools_checks + + checks.fatal_development_tools_checks + all_development_tools_checks.each do |check| out = checks.send(check) - opoo out unless out.nil? - end - if OS.mac? && MacOS.prerelease? - checks.strict_development_tools_checks.each do |strict_check| - out = checks.send(strict_check) - odie out unless out.nil? + next if out.nil? + if checks.fatal_development_tools_checks.include?(check) + odie out + else + opoo out end end end diff --git a/Library/Homebrew/diagnostic.rb b/Library/Homebrew/diagnostic.rb index 7022987f2..fed971ad7 100644 --- a/Library/Homebrew/diagnostic.rb +++ b/Library/Homebrew/diagnostic.rb @@ -86,12 +86,17 @@ module Homebrew end ############# END HELPERS - def all_development_tools_checks + def development_tools_checks %w[ check_for_installed_developer_tools ] end + def fatal_development_tools_checks + %w[ + ] + end + def check_for_installed_developer_tools return if DevelopmentTools.installed? diff --git a/Library/Homebrew/extend/os/mac/diagnostic.rb b/Library/Homebrew/extend/os/mac/diagnostic.rb index 11d497d60..27ef71d75 100644 --- a/Library/Homebrew/extend/os/mac/diagnostic.rb +++ b/Library/Homebrew/extend/os/mac/diagnostic.rb @@ -1,7 +1,7 @@ module Homebrew module Diagnostic class Checks - def all_development_tools_checks + def development_tools_checks %w[ check_for_unsupported_osx check_for_prerelease_xcode @@ -12,11 +12,16 @@ module Homebrew ] end - def strict_development_tools_checks - %w[ - check_xcode_up_to_date - check_clt_up_to_date - ] + def fatal_development_tools_checks + if MacOS.prerelease? + %w[ + check_xcode_up_to_date + check_clt_up_to_date + ] + else + %w[ + ] + end end def check_for_unsupported_osx |
