739 Commits

Author SHA1 Message Date
Rylan Polster
dda0dc72a7 format note comments 2020-11-16 02:02:52 +01:00
Markus Reiter
da9289eff0 Add more type signatures. 2020-11-13 12:26:36 +01:00
Mike McQuaid
5afff3f3aa
Handle macOS Homebrew on ARM
- Output `brew doctor` and `brew install` messages noting this configuration is (currently) unsupported and encourage use of Rosetta instead
- Output Rosetta 2 usage in `brew config` on ARM (whether in Rosetta 2 or not)
- Check the architecture of (newly installed) dependencies and ensure they are using the correct architecture.
- Don't allow installing macOS Intel Homebrew in macOS ARM Homebrew default prefix (and vice versa
- Actually write out the architecture of dependencies to the tab rather than generating and throwing them away
- Set and document the expected default prefix for macOS Intel Homebrew, macOS ARM Homebrew (`/opt/homebrew`) and Homebrew on Linux

While we're here:
- Don't say Big Sur is a prerelease version but still make it clear we
  don't support it (yet).
- Don't reference non-existent IRC channel
2020-11-12 17:06:47 +00:00
Jonathan Chang
cc3345577f unpack_strategy/zip: widen type of super call 2020-11-11 00:13:28 +11:00
Jonathan Chang
500908ee6f rubocop: fix Lint/NoReturnInBeginEndBlocks 2020-11-10 23:28:31 +11:00
Jonathan Chang
ab7b757400 rubocop: fix Style/NegatedIfElseCondition 2020-11-10 23:28:31 +11:00
Mike McQuaid
9ad37ddc36
Revert "uses_from_macos: fix force_homebrew_on_linux behaviour." 2020-11-09 16:26:09 +00:00
Mike McQuaid
a867e78f62
uses_from_macos: fix force_homebrew_on_linux behaviour.
Otherwise the dependencies are read incorrectly on Linux when we're
trying to analyse Homebrew.
2020-11-09 15:23:35 +00:00
Mike McQuaid
3543d69373
Merge pull request #9010 from MikeMcQuaid/github_actions_big_sur
workflows/tests: use Big Sur.
2020-11-06 15:56:12 +00:00
Mike McQuaid
6b27dcb11c
workflows/tests: use Big Sur.
Migrate GitHub Actions to Big Sur.
2020-11-06 15:11:33 +00:00
EricFromCanada
3768b7a6e9 apidoc: update comment wording, punctuation, formatting 2020-11-06 00:21:02 -05:00
Michka Popoff
084f2e75eb
Merge pull request #8907 from iMichka/onlinux
formula: add on_linux and on_macos blocks
2020-11-03 23:30:37 +01:00
Michka Popoff
8b85ef2e88 formula: add on_linux and on_macos blocks
for install and others
2020-11-03 22:54:07 +01:00
EricFromCanada
212367c1c0 requirements: reword error messages for consistency
also add formatting to download URLs
2020-11-01 15:20:02 -05:00
Jonathan Chang
55dc8bbada Fix strict typecheck errors. 2020-10-29 20:39:49 +11:00
Markus Reiter
ab33bc638d Add type signatures for UnpackStrategy::Zip. 2020-10-20 09:50:21 +02:00
Markus Reiter
61b79318ed Move include Kernel into .rbi files again and split up existing .rbi files. 2020-10-10 19:10:58 +02:00
Markus Reiter
24ae318a3d Move type annotations into files. 2020-10-10 14:59:39 +02:00
Markus Reiter
c2a0ba8e87 Enable rubocop-sorbet. 2020-10-09 16:45:13 +02:00
Mike McQuaid
3923d331de
Fix brew style 2020-09-15 13:39:06 +01:00
Mike McQuaid
f161e56ce0 ENV: check SDK exists when setting up.
Reuse code from `brew doctor` that checks and produces a fatal error
and from `install.rb` that runs it.

Closes #8646
2020-09-11 12:05:22 +01:00
Luthaf
3376646b06 Do not suggest use of deprecated brew cask reinstall 2020-09-04 11:37:37 +02:00
Maxim Belkin
a6d29894d9 cleanup: fix and reuse portable ruby logic.
Align the logic in `cleanup_portable_ruby` with that in `ruby.sh`.

Co-authored-by: Maxim Belkin <maxim.belkin@gmail.com>
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
2020-09-03 09:43:41 +01:00
Mike McQuaid
74d3f0b153 hardware: rename rosetta method. 2020-09-01 14:52:37 +01:00
Misty De Meo
d9135c5a57 CPU: add ability to check for Rosetta
When running within an Intel terminal, `uname -m` and friends return Intel-based
values for compatibility. An Intel shell will also prefer to launch Intel slices of
programs unless the program is ARM-only.

It's an open question how Homebrew should manage running in Intel mode. Should it
continue to behave as though the Mac is Intel-based, like it does now? Should it
recognize it's ARM-based? Either way, it's useful for us to be able to tell whether
the Mac is running under Rosetta or whether it's a real Intel Mac.
2020-09-01 14:52:37 +01:00
Markus Reiter
129fd33a62
Merge pull request #8452 from reitermarkus/document-bottles
Refactor and document `Bottles`.
2020-08-23 05:30:43 +02:00
Markus Reiter
b90290b18c Refactor and document Bottles. 2020-08-23 04:44:57 +02:00
Markus Reiter
fbf3d807d7
Merge pull request #8449 from reitermarkus/document-system-config
Refactor and document `SystemConfig`.
2020-08-23 04:39:05 +02:00
Markus Reiter
e2c9e6d3c2 Refactor and document SystemConfig. 2020-08-23 04:15:35 +02:00
Dawid Dziurla
ded2927751
Merge pull request #8383 from dawidd6/svn-catalina
extend/os/mac: install svn on catalina and newer
2020-08-20 18:42:34 +02:00
Mike McQuaid
3a91c37e66
Fix RuboCop checks. 2020-08-19 17:12:32 +01:00
Bo Anderson
b338398a8c tab: add built_on & arch information 2020-08-18 15:58:00 +01:00
Dawid Dziurla
dbbc14040d
extend/os/mac: install svn on catalina and newer 2020-08-18 12:50:34 +02:00
Markus Reiter
d50dc2e1bb Refactor and document Homebrew::Diagnostic. 2020-08-14 18:46:43 +02:00
Bo Anderson
30a8df0f91 os/mac/system_config: simplify JVM version parsing 2020-08-11 18:51:36 +01:00
Mike McQuaid
a1dc809f5b
bin/brew: don't filter GitHub Actions variables. 2020-08-07 10:19:00 +01:00
Mike McQuaid
6d9e2d444d
Big Sur fixes
- Make missing SDKs message more clear.
- Always refer to Big Sur as 11.0 (even on Intel).
2020-07-28 16:56:55 +01:00
Markus Reiter
276c570c16 Pass individual args explicitly to ENV extensions. 2020-07-28 02:52:45 +02:00
Markus Reiter
25b3632c4c Pass args to ENV instead of using global args. 2020-07-25 03:57:43 +02:00
Shaun Jackman
9a83e52ae4 HOMEBREW_PROCESSOR is arm64 on Apple Silicon
Utils::Bottles::tag: ARM tag is arm64_big_sur
2020-07-10 10:55:56 -07:00
Shaun Jackman
e18027a1a8 Utils::Bottles::tag: ARM tag is arm_big_sur 2020-07-10 10:54:57 -07:00
Claudia
374c734d9b
Make Hardware.oldest_cpu depend on architecture
Starting with Xcode 12 Beta 2, builds that used to work on Apple Silicon
now break due to `Hardware#oldest_cpu` returning `:nehalem` [1].

This commit is the first in a series of improvements to
`Hardware#oldest_cpu`. It resolves the Xcode 12 Beta 2 issue for now.

[1]: https://github.com/Homebrew/brew/issues/7857#issuecomment-655536261
2020-07-08 20:59:10 +02:00
Mike McQuaid
fa760a2f26
Fix brew style. 2020-07-07 13:12:37 +01:00
Claudia
559d0a91a2
Add CPU family ARMv8.3-A
Darwin 20 adds the CPU family `CPUFAMILY_ARM_VORTEX_TEMPEST`
(aka ARMv8.3-A), which is assigned the identifier of `0x07d34b9f`.

This is relevant for `SystemConfig` in Homebrew.

See also:
https://en.wikipedia.org/wiki/Comparison_of_ARMv8-A_cores
2020-07-06 20:48:46 +02:00
Bo Anderson
9297b18aa6 Add SDK availability diagnostic 2020-07-01 16:07:14 +01:00
Mike McQuaid
b39a3ca02f
os/mac/utils/bottles: support ARM bottles.
This will be eventually needed for Big Sur.
2020-06-24 12:00:56 +01:00
Bo Anderson
9788735eb2
Merge pull request #7809 from Bo98/macos-version-11
os/mac: fix for major versions other than 10
2020-06-23 18:50:58 +01:00
Mike McQuaid
6f1970fd24
Fix more 10.x hardcodings. 2020-06-23 17:10:07 +01:00
Mike McQuaid
11c875d747
macOS Big Sur tweaks
- output warnings when running on ARM
- require Xcode 12
- use 11.0 as the version number
2020-06-23 14:11:05 +01:00
William Woodruff
acbb213977
mac/hardware: cpu: Use ruby-macho's Intel constant 2020-06-22 21:56:39 -04:00