Today, I’d like to announce Homebrew 4.2.0.
The most significant changes since 4.1.0 are some major performance upgrades (e.g. using Ruby 3.1, upgrading fewer dependencies), .env
file configuration and macOS Sonoma support.
Major changes and deprecations since 4.1.0:
- Homebrew now uses and requires Ruby 3.1.
If you do not already have a version provided by your system: we provide
Portable Ruby 3.1.4 that will be installed whenever needed on
Linux x86_64 and macOS Apple Silicon and Intel.
This marks the end of Homebrew using the macOS system Ruby.
Pour one out for our old friend
/usr/bin/ruby
on macOS 🍻. - Formula installation and upgrades are less likely to require dependencies to be upgraded.
This should reduce “
brew upgrade foo
upgraded everything on my system” problems. - Homebrew/homebrew-core and Homebrew/homebrew-cask now store formulae/casks in “sharded” subdirectories for improved
git
and GitHub performance. - Homebrew can be configured with
.env
files. - Homebrew supports macOS Sonoma.
OS::Mac
andMacOS
usage in formulae on Linux is deprecated. Please guard all uses in formulae withif OS.mac?
orif OS.linux?
as appropriate.brew audit --new-formula
and--new-cask
options are deprecated. Please usebrew audit --new
instead.brew postgresql-upgrade-database
is deprecated. It is not longer needed now that we use versionedpostgresql
formulae. Please usepg_upgrade
directly instead.- Casks can be, like formulae, deprecated and disabled.
Relatedly, the use of
discontinued?
in casks is deprecated. - Various other deprecations.
Other changes since 4.1.0 I’d like to highlight are the following:
- Homebrew detects Apple Silicon M3 processors.
- The macOS
.pkg
installer is signed (by me!). - Casks support setting multiple download headers
brew list --full-names
properly output Homebrew organisation names for casks.- Homebrew uses Sorbet for runtime error checking.
- Homebrew is importing parts of ActiveSupport to speed up command execution time.
- Homebrew supports the
rc
shell. - Various sharding fixes
- Downloads from the Homebrew API better support
if
curl
or system certificates are too old. brew deps
no longer passes options to formulae.brew desc
has improved handling of--eval-all
with formulae.brew install
will upgrade already installed casks (to be consistent with formulae.)brew pin
‘d formulae don’t cause as many warnings or errors.brew setup-ruby
is a new command to just install Homebrew’s Ruby, if needed.brew edit
will suggest tapping core repositories if untapped.- The macOS
.pkg
installer is a documented installation method. - Formula support
ENV.O3
again to allow passing-O3
compiler optimisations. brew install
setsPIP_CACHE_DIR
to cache more Python files when building bottles or from source.brew audit
checks all relicensed HashiCorp formulae.sshpass
has (finally?) been removed from the new formula deny list.- Formula’s
service
blocks now support multiple sockets. bootsnap
is used more often, speeding up repeatedbrew
invocations.XDG_CACHE_HOME
is used correctly again for logs and Homebrew’s cache on Linux.
Finally:
- Homebrew accepts donations through GitHub Sponsors and still accepts donations through Patreon. If you can afford it, please consider donating. If you’d rather not use GitHub Sponsors or Patreon (our preferred donation methods), check out the other ways to donate in our README.
Thanks to all our hard-working maintainers, contributors, sponsors and supporters for getting us this far.