diff options
| author | Martin Afanasjew | 2015-10-23 00:07:12 +0200 |
|---|---|---|
| committer | Mike McQuaid | 2015-10-23 12:34:44 +0100 |
| commit | 30cad0608ff6c22051b5a1e0f3bf566d643bb673 (patch) | |
| tree | 7f513efa969e9dfd38d1f158cc2e968db6ab5902 /Library | |
| parent | 7c7b7bf97f2ed1a86b4a9edd12744e4d142949c4 (diff) | |
| download | brew-30cad0608ff6c22051b5a1e0f3bf566d643bb673.tar.bz2 | |
os: centralize check for pre-release OS X versions
Provide `OS::Mac.prerelease?` for pre-release checks and use it where
appropriate. This should simplify updating the test once a new OS X
release lands.
This also fixes a bug in `BuildError#dump`, where an empty warning
message was printed on El Capitan after a failed from-source build,
because the check there and the one in `check_for_unsupported_osx` were
out of sync.
Closes Homebrew/homebrew#45257.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/cmd/doctor.rb | 5 | ||||
| -rw-r--r-- | Library/Homebrew/exceptions.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/os/mac.rb | 5 | ||||
| -rw-r--r-- | Library/Homebrew/os/mac/xcode.rb | 2 |
4 files changed, 9 insertions, 5 deletions
diff --git a/Library/Homebrew/cmd/doctor.rb b/Library/Homebrew/cmd/doctor.rb index 302c436cd..686b0b98c 100644 --- a/Library/Homebrew/cmd/doctor.rb +++ b/Library/Homebrew/cmd/doctor.rb @@ -240,7 +240,7 @@ class Checks end def check_for_unsupported_osx - if !ARGV.homebrew_developer? && MacOS.version >= "10.12" then <<-EOS.undent + if !ARGV.homebrew_developer? && OS::Mac.prerelease? then <<-EOS.undent You are using OS X #{MacOS.version}. We do not provide support for this pre-release version. You may encounter build failures or other breakages. @@ -259,8 +259,7 @@ class Checks end end - # TODO: bump version when new OS is released - if MacOS.version >= "10.12" + if OS::Mac.prerelease? def check_xcode_up_to_date if MacOS::Xcode.installed? && MacOS::Xcode.outdated? <<-EOS.undent diff --git a/Library/Homebrew/exceptions.rb b/Library/Homebrew/exceptions.rb index 29cd480d5..adb17fe57 100644 --- a/Library/Homebrew/exceptions.rb +++ b/Library/Homebrew/exceptions.rb @@ -251,7 +251,7 @@ class BuildError < RuntimeError puts issues.map { |i| "#{i["title"]} #{i["html_url"]}" }.join("\n") end - if MacOS.version >= "10.11" + if OS::Mac.prerelease? require "cmd/doctor" opoo Checks.new.check_for_unsupported_osx end diff --git a/Library/Homebrew/os/mac.rb b/Library/Homebrew/os/mac.rb index 3568f7158..e8c2f76bc 100644 --- a/Library/Homebrew/os/mac.rb +++ b/Library/Homebrew/os/mac.rb @@ -22,6 +22,11 @@ module OS @full_version ||= Version.new(`/usr/bin/sw_vers -productVersion`.chomp) end + def prerelease? + # TODO: bump version when new OS is released + version >= "10.12" + end + def cat version.to_sym end diff --git a/Library/Homebrew/os/mac/xcode.rb b/Library/Homebrew/os/mac/xcode.rb index 8a2da48ec..d41dec26d 100644 --- a/Library/Homebrew/os/mac/xcode.rb +++ b/Library/Homebrew/os/mac/xcode.rb @@ -18,7 +18,7 @@ module OS when "10.11" then "7.0.1" else # Default to newest known version of Xcode for unreleased OSX versions. - if MacOS.version > "10.11" + if OS::Mac.prerelease? "7.0.1" else raise "OS X '#{MacOS.version}' is invalid" |
