145 Commits

Author SHA1 Message Date
Caleb Xu
a53c92bd7f Cache commands list for faster shell completions 2020-06-18 11:06:31 -04:00
Misty De Meo
0c1cf592b7
Bump minimum OS to Yosemite 2020-06-10 13:08:01 -07:00
Maxim Belkin
5be4682ecb
brew.sh: add an empty line for code readability
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
2020-05-11 07:30:25 -05:00
Maxim Belkin
6455264716
brew.sh: stop if HOMEBREW_GIT_PATH is too old 2020-05-11 07:21:47 -05:00
Maxim Belkin
6ba7ace66a
brew.sh: stop if HOMEBREW_CURL_PATH is too old 2020-05-11 07:17:26 -05:00
Maxim Belkin
6ff307c456
brew.sh: remove unnecessary empty line
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
2020-05-11 05:18:04 -05:00
Maxim Belkin
fe45f68000
brew.sh: check versions of proper cURL and Git
User may specify which cURL and Git to use via
HOMEBREW_CURL_PATH and HOMEBREW_GIT_PATH.
So, let's use these to determine whether we need to use
their vendored alternatives.
2020-05-04 03:16:51 -05:00
Mike McQuaid
3381cbf5c7
Use Homebrew::EnvConfig. 2020-04-07 09:58:26 +01:00
Dawid Dziurla
90b410c2a9
brew.sh: obey HOMEBREW_COLOR 2020-03-31 00:17:42 +02:00
Mike McQuaid
cfe2f5bfda
Merge remote-tracking branch 'origin/master' into add_change_origin_command 2019-12-30 10:39:28 +00:00
Mike McQuaid
355626ac51
Tweak/fix Git remote configuration behaviour. 2019-12-30 10:38:47 +00:00
hyuraku
7501f3d402 check before examine_git_origin 2019-12-19 00:05:20 +09:00
Issy Long
aedfbd4550
Add garden to root execution allow list for Concourse CI containers
- Concourse CI uses `garden` under the hood for its containers.
- Running the Homebrew Docker container for a Concourse job was failing
  with the "can't run as root" error. In the same way as
  bc320ad2291f5ec652d8f4bcf3f7b7ff3c9af3bd, this adds `garden` as one of
  the allowed providers.
2019-12-17 10:31:09 +00:00
hyuraku
bdf493b673 change export two constants timing 2019-12-09 23:08:24 +09:00
Mike McQuaid
bed5297b6c
.github/workflows/tests: run config, doctor.
This should help with debugging why the `brew bundle` tests are now
failing.
2019-12-04 15:35:31 +00:00
hyuraku
e6e0d1128c create new envoronments 2019-12-03 00:45:11 +09:00
EricFromCanada
0242084929 shell commands: colourize messages 2019-11-21 16:18:46 -05:00
Evgenii Terechkov
8bf9bbfd1c
Update brew.sh: hide printf's stderr in numeric()
Avoid #6721 and similar confusing messages during version comparison by hiding printf's stderr (printf woks anyway).
2019-11-11 20:31:59 +07:00
Mike McQuaid
e9aba2efb6
Require and provide portable Ruby 2.6.3. 2019-10-10 15:53:16 +01:00
Mike McQuaid
8ff2e9ae4e
Improve speed of HOMEBREW_AUTO_UPDATE_SECS
This variable allows a user to configure how often `brew update` runs.
With the previous implementation, however, it was still pretty slow as
it would run some of `brew update` even within the timeout. This feels
related to complaints about Homebrew "feeling slow" since we enabled
this. Address this by:

- making `HOMEBREW_AUTO_UPDATE_SECS` behave more like
  `HOMEBREW_NO_AUTO_UPDATE` and entirely skip the invocation of
  `brew update` if the relevant tap (homebrew-core or homebrew-cask
  depending on command invoked) has been checked in the last
  `HOMEBREW_AUTO_UPDATE_SECS`
- Only require/check the update of a single tap rather than every tap
- Increase the default value of `HOMEBREW_AUTO_UPDATE_SECS` from 1m
  to 5m to cut people a bit more slack. We're not updating things
  often enough for 1m not to feel a bit overkill and 5m feels
  appropriate for a Homebrew "session" to only require a single update.
2019-10-03 12:54:34 +01:00
EricFromCanada
dcd8842d9d brew.sh: handle development git version strings 2019-08-07 14:31:20 -04:00
Mike McQuaid
90f6e3988e
brew.sh: tweak USER comment. 2019-07-03 09:38:14 +01:00
Joe Horsnell
19fd56468f Gracefully handle missing USER env var
Prompted by https://github.com/Homebrew/install/pull/213
2019-07-01 17:25:25 +01:00
Tom Forbes
bc320ad229
Support running the Linuxbrew docker image in Kubernetes 2019-05-30 20:06:25 +01:00
Cheng Xu
2e5fbf57af
brew.sh: export HOMEBREW_BOTTLE_DEFAULT_DOMAIN
It is used in `global.rb` and `brew bottle`.

Closes https://github.com/Homebrew/linuxbrew-core/issues/13110.
2019-05-20 15:09:31 +08:00
Mike McQuaid
f76b083b91
Use FrozenStringLiteralComment instead of flag.
Unfortunately we cannot use `--frozen-string-literal` with Ruby 2.3 due
to https://bugs.ruby-lang.org/issues/12031 and our usage of ERB.
2019-04-20 13:25:33 +09:00
Mike McQuaid
86f43f79ee
Enable/fix optional Ruby frozen string literal usage
Combined with https://github.com/Homebrew/homebrew-test-bot/pull/247
this will test Homebrew's use of frozen strings in CI. After this we
will then enable it for Homebrew developers and eventually all Homebrew
users.
2019-04-19 10:30:41 +09:00
Mike McQuaid
9e7b98d3e2
Don't check system Ruby is new enough when unnecessary.
We know this is the case in macOS >=10.13.3 so save a Ruby process call.
2019-04-18 21:42:28 +09:00
Mike McQuaid
ef2e297d3b
Disable RubyGems by default.
This speeds up all Ruby invocations where we don't need RubyGems by
around 10%. Where we do need RubyGems: include it manually.
2019-04-18 17:45:03 +09:00
EricFromCanada
89f0fcedbe whitespace fixes 2019-04-13 21:32:04 -04:00
Mike McQuaid
9f33a9b1be
brew.sh: improve Docker whitelist on Azure pipelines. 2019-03-23 12:38:55 +00:00
Mike McQuaid
c9cdc2537f
brew.sh: don’t always autoupdate with no params.
Only `brew upgrade` and `brew cask upgrade` actually do anything if no additional parameters are specified. As a result, we don’t need to always update in those cases when we’re just showing help output anyway (as has been done for `brew tap`).
2019-03-21 18:04:14 +00:00
Mike McQuaid
fbaa0c35a6
bump-formula-pr: move auto-update to brew.sh
It’s always run anyway but this at least means Homebrew/brew and tap code is all up to date before we start querying any objects.

Fixes #5876.
2019-03-20 11:06:45 +00:00
Mike McQuaid
b3c33d6d51
brew.*: run Bundler immediately when needed.
This is needed to avoid gem conflicts when `global.rb` is loaded for some commands.
2019-02-21 12:56:22 +00:00
Steven Peters
58104ab838 tap: skip auto-update if called with no args 2019-02-18 20:45:26 -08:00
Mike McQuaid
31dd2ee856
brew.sh: allow Docker to run as root. 2019-02-15 10:03:53 +00:00
David
ad4b3b0e7f
Fix printf error on bash launch 2019-01-29 04:10:16 -05:00
Mike McQuaid
1aa8ad09e2
Deprecate macOS versions below Mavericks
And remove all dead/unneeded code.
2019-01-27 12:27:47 +00:00
Mike McQuaid
170c5493a4
Update deprecations
- Add some `odeprecated`
- Make some `odeprecated` now `odisabled`
- Remove `odisabled` code.
- Remove old update migrations
- Remove GCC 4.0 compiler
- Remove Tiger-only code
- Remove 32-bit-only code
- Remove use of LD64
- Remove GCC 4.3 - 4.8 support.
2019-01-08 19:13:46 +00:00
Mike McQuaid
00dbb221b7
brew.sh: make update --preinstall exec.
This means that any new environment variables or changes to `bin/brew`
or `brew.sh` will be used in the new process. This also allows the
removal of various fallbacks from autoupdates from old versions.
2018-12-29 19:06:18 +00:00
Jonathan Chang
f1308332bc brew.sh: set correct log path [Linux] 2018-12-28 12:54:50 -08:00
EricFromCanada
0362e66a26 doctor: use minimum Git version set in brew.sh 2018-10-28 20:13:19 -04:00
EricFromCanada
7aa9956934 brew: check system-provided curl and git on Linux
Set HOMEBREW_FORCE_BREWED_CURL or HOMEBREW_FORCE_BREWED_GIT if the system-provided versions are missing or outdated, causing either to be installed on the next `brew update`.
2018-10-28 20:13:19 -04:00
Mike McQuaid
51af87f85f
Add HOMEBREW_FORCE_HOMEBREW_ON_LINUX
This serves a similar purpose to the HOMEBREW_FORCE_HOMEBREW_ORG
variable but applies to more settings.
2018-10-20 13:58:27 +01:00
Mike McQuaid
4feb851279
Fix brew style shellcheck warnings. 2018-10-07 22:08:59 +01:00
Mike McQuaid
25249f0114
shims/super/cc: detect High Sierra differently.
Don't rely on `RUBY_PLATFORM`'s kernel version as it's the machine that
Ruby was built on (10.5) for portable ruby.
2018-09-20 13:49:10 +01:00
Caleb Xu
25817d3589 Set HOMEBREW_BOTTLE_DEFAULT_DOMAIN based on operating system 2018-09-09 15:29:27 -04:00
Mike McQuaid
25b4d94b5c
Update minimum Git version.
This forces the use of Homebrew's Git on El Capitan and below.
Normally I'd remove the need for this but given we're weeks away from
El Capitan being unsupported it doesn't seem worth the effort to remove
useful functionality. Instead, let's warn about an old Git and
autoinstall Homebrew's Git wherever needed.

Fixes #4818.
2018-09-06 12:38:20 +01:00
William Woodruff
d30557ace6
brew.sh: Export HOMEBREW_GIT
Should have been exported like HOMEBREW_CURL.
2018-08-23 11:50:42 -04:00
William Woodruff
a7816eea6e
brew.sh: Remove whitespace 2018-08-17 15:20:05 -04:00