Companion to https://github.com/Homebrew/brew/pull/7698.
Provide better, `odeprecated` messaging for
`depends_on :macos => :mavericks` and otherwise just fix up the code
that relied on `:mavericks`.
Explain when these various versions should (and should not) be bumped
and provide a method to avoid people having to schlep through the Apple
Developer site unless they really want to.
Also, while we're here, DRY things up and reorder to "newest first".
Xcode >=10.2 is required to build all Swift formulae on macOS >=10.14.4.
Rather than requiring per-formula workarounds
(e.g. Homebrew/homebrew-core#39446) this provides a more stable platform
Homebrew can rely on for building Swift formulae.
Some SDKs return a number higher than the hard-coded `latest_version`
in this file. With the current `==` check, those higher version numbers
are treated as "not the latest". This prevents machines with
higher-versioned SDKs from being able to use Homebrew.
To resolve that problem, this PR changes the check to `>=`, which allows
machines with higher-versioned SDKs to also use Homebrew to install
packages.
The version of CLT package that comes with Xcode 10.1 is 1000.10.44.4,
which could be bumped at a later date since the Software Update is not
reliable at this moment.
Use 124 max line length everywhere. Also, reduce tap max line length to
189 as Homebrew/homebrew-core has that as a maximum now. In future
Homebrew/homebrew-core will also be reduced to 124 maximum line length.
The current regex only matches a single digit for each component of the version (e.g. 9.2). This modifies it to match multiple digits in each component, so that e.g. 10.42 will be matched.
Update all the necessary versions but also cleanup some related
indentation and point the `Xcode.md` document to the code rather than
duplicating it there (which means it sometimes ends up outdated).