* Pull SDK lookup code into a new `locator` class, which caches its
results
* SDKLocator only queries one SDK location, not all SDK locations
* Build a map of all installed SDKs inside that location, instead of
just the requested SDK
* Ask xcrun for --show-sdk-platform-path first so that all SDKs can be
found, instead of asking xcodebuild for a specific SDK
* Add a new `SDK` class, which tracks the version and the prefix; add a
new `MacOS.sdk` method which returns an `SDK` instance instead of a
bare path; MacOS.sdk_path still returns a bare path
Remove duplication, link to the API documentation more often,
tweak wording, add `@UniqMartin` as a maintainer, note `@jacknagel`'s
and `@adamv`'s significant past contributions to Homebrew, delete some
outdated or unneeded documentation, add some missing `Formula` API.
entries and simplify/improve `CONTRIBUTING.md`.
ClosesHomebrew/homebrew#46179.
ClosesHomebrew/homebrew#46618.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
Do a reset to `origin/master` and then stash but don't pop the stash
after running update (unless you were on a branch). This may be mildly
more annoying for Homebrew developers but means it's easier for our
users who don't understand Git (and particularly when they don't
understand that every tap is a separate Git repository).
ClosesHomebrew/homebrew#45825.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
This package is deprecated and no longer used. It can now be found in
the boneyard tap.
ClosesHomebrew/homebrew#46592.
Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
For typical installations where `brew` is not a symbolic link, this
reduces the number of processes that need to be spawned.
ClosesHomebrew/homebrew#46269.
Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
This reduces the number of processes that need to be forked. If
libtool's `config.guess` is to be trusted, there was never another
spelling/capitalization other that `Darwin`.
This very slightly reduces duplication and the risk of inconsistency by
exporting in one branch, but not the other. By putting all the `export`
statements right before the `exec` it is more obvious what is passed on.
While `var=$(<command>)` is perfectly valid and won't create any issues,
it is often surprising for less shell-savvy users. Quoting these cases
like in all other instances makes the code more uniform, helps to avoid
future mistakes, and has no downsides.