Because of this messing with the user's path:
https://github.com/Homebrew/brew/blob/
efc02899c851c62c9ce0d15dea9a231575d7d774/bin/brew#L68
brew uses /usr/bin/git over brewed git, even when the former is
problematically old.
There may also be other reasons a user prefers to use brewed git.
There was already a HOMEBREW_FORCE_BREWED_CURL option and a
HOMEBREW_SYSTEM_CURL_TOO_OLD check to set it. This mostly copies those
to implement HOMEBREW_FORCE_BREWED_GIT & HOMEBREW_SYSTEM_GIT_TOO_OLD.
See also: https://github.com/Linuxbrew/brew/issues/736
Rather than reusing `HOMEBREW_NO_AUTO_UPDATE` to indicate that we've
already made a check. This allows `HOMEBREW_NO_AUTO_UPDATE` to be
displayed properly by `brew config`.
- `brew update` should try to install `curl` before `git` on older
versions of Mac OS X where it is needed for accessing modern SSL
certificates.
- We don't need an HTTP mirror for `git` because `curl` will already be
installed before it is downloaded.
- Don't recommend GCC on Mac OS X versions where it can't be built with
the default system compiler.
- Start using the Homebrew `curl` on Mac OS X versions where it is
needed as soon as it is installed.
Move --prefix, --cellar to the top of brew.sh. Timings on master:
brew --prefix > /dev/null 0.05s user 0.03s system 46% cpu 0.165 total
brew --prefix > /dev/null 0.05s user 0.04s system 63% cpu 0.131 total
brew --prefix > /dev/null 0.04s user 0.03s system 72% cpu 0.104 total
brew --prefix > /dev/null 0.04s user 0.03s system 87% cpu 0.080 total
brew --prefix > /dev/null 0.04s user 0.03s system 81% cpu 0.080 total
brew --prefix > /dev/null 0.04s user 0.03s system 84% cpu 0.075 total
brew --prefix > /dev/null 0.04s user 0.03s system 83% cpu 0.080 total
brew --prefix > /dev/null 0.04s user 0.02s system 84% cpu 0.072 total
brew --prefix > /dev/null 0.04s user 0.03s system 86% cpu 0.072 total
brew --prefix > /dev/null 0.04s user 0.03s system 82% cpu 0.075 total
brew --prefix > /dev/null 0.04s user 0.03s system 85% cpu 0.072 total
brew --prefix > /dev/null 0.04s user 0.03s system 84% cpu 0.076 total
brew --prefix > /dev/null 0.04s user 0.03s system 85% cpu 0.074 total
brew --prefix > /dev/null 0.03s user 0.03s system 83% cpu 0.073 total
brew --prefix > /dev/null 0.04s user 0.02s system 83% cpu 0.072 total
brew --prefix > /dev/null 0.03s user 0.03s system 86% cpu 0.068 total
brew --prefix > /dev/null 0.04s user 0.03s system 82% cpu 0.080 total
brew --prefix > /dev/null 0.04s user 0.03s system 84% cpu 0.079 total
brew --prefix > /dev/null 0.04s user 0.02s system 83% cpu 0.070 total
brew --prefix > /dev/null 0.03s user 0.03s system 84% cpu 0.072 total
With the patch applied:
brew --prefix > /dev/null 0.02s user 0.02s system 24% cpu 0.157 total
brew --prefix > /dev/null 0.02s user 0.03s system 53% cpu 0.078 total
brew --prefix > /dev/null 0.02s user 0.02s system 64% cpu 0.056 total
brew --prefix > /dev/null 0.02s user 0.03s system 74% cpu 0.065 total
brew --prefix > /dev/null 0.01s user 0.02s system 73% cpu 0.049 total
brew --prefix > /dev/null 0.01s user 0.02s system 77% cpu 0.050 total
brew --prefix > /dev/null 0.01s user 0.02s system 64% cpu 0.054 total
brew --prefix > /dev/null 0.01s user 0.02s system 77% cpu 0.049 total
brew --prefix > /dev/null 0.01s user 0.02s system 56% cpu 0.061 total
brew --prefix > /dev/null 0.02s user 0.02s system 66% cpu 0.060 total
brew --prefix > /dev/null 0.01s user 0.02s system 62% cpu 0.057 total
brew --prefix > /dev/null 0.01s user 0.02s system 71% cpu 0.052 total
brew --prefix > /dev/null 0.02s user 0.03s system 67% cpu 0.063 total
brew --prefix > /dev/null 0.01s user 0.02s system 70% cpu 0.042 total
brew --prefix > /dev/null 0.02s user 0.02s system 68% cpu 0.056 total
brew --prefix > /dev/null 0.01s user 0.02s system 73% cpu 0.049 total
brew --prefix > /dev/null 0.01s user 0.02s system 62% cpu 0.058 total
brew --prefix > /dev/null 0.02s user 0.02s system 67% cpu 0.058 total
brew --prefix > /dev/null 0.01s user 0.02s system 73% cpu 0.043 total
brew --prefix > /dev/null 0.01s user 0.02s system 65% cpu 0.055 total
Prefer $XDG_CACHE_HOME if defined, falling back to $HOME/.cache.
The Mac cache location is not affected by this change.
Signed-off-by: Bob W. Hogg <rwhogg@linux.com>
If people have `HOMEBREW_RUBY_PATH` set then things explode in a rather
confusing fashion. Instead, run `bundle` for them with the arguments
that they'd want.
Also, move `macho` requires into the module itself; it's a pain having
to do everything for Bundler before requiring `pathname` which is a core
Ruby class.
November 1st 2016 has come and gone so it's time to disable this.
Also, add comments explaining why the things that have been whitelisted
have been (to avoid more being added without good justification).