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/rubyon macOS 🍻. - Formula installation and upgrades are less likely to require dependencies to be upgraded.
This should reduce “
brew upgrade fooupgraded everything on my system” problems. - Homebrew/homebrew-core and Homebrew/homebrew-cask now store formulae/casks in “sharded” subdirectories for improved
gitand GitHub performance. - Homebrew can be configured with
.envfiles. - Homebrew supports macOS Sonoma.
OS::MacandMacOSusage in formulae on Linux is deprecated. Please guard all uses in formulae withif OS.mac?orif OS.linux?as appropriate.brew audit --new-formulaand--new-caskoptions are deprecated. Please usebrew audit --newinstead.brew postgresql-upgrade-databaseis deprecated. It is not longer needed now that we use versionedpostgresqlformulae. Please usepg_upgradedirectly 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
.pkginstaller is signed (by me!). - Casks support setting multiple download headers
brew list --full-namesproperly 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
rcshell. - Various sharding fixes
- Downloads from the Homebrew API better support
if
curlor system certificates are too old. brew depsno longer passes options to formulae.brew deschas improved handling of--eval-allwith formulae.brew installwill upgrade already installed casks (to be consistent with formulae.)brew pin‘d formulae don’t cause as many warnings or errors.brew setup-rubyis a new command to just install Homebrew’s Ruby, if needed.brew editwill suggest tapping core repositories if untapped.- The macOS
.pkginstaller is a documented installation method. - Formula support
ENV.O3again to allow passing-O3compiler optimisations. brew installsetsPIP_CACHE_DIRto cache more Python files when building bottles or from source.brew auditchecks all relicensed HashiCorp formulae.sshpasshas (finally?) been removed from the new formula deny list.- Formula’s
serviceblocks now support multiple sockets. bootsnapis used more often, speeding up repeatedbrewinvocations.XDG_CACHE_HOMEis 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.