Today I’d like to announce Homebrew 1.8.0. The most significant changes since 1.7.0 are official Mojave support, linkage auto-repair on brew upgrade, brew info displaying analytics data and quarantining Cask’s downloads.
Major changes and deprecations since 1.7.0:
- Download strategies unused by Homebrew/homebrew-core have been deprecated
- We no longer provide support for
develspecs in Homebrew/homebrew-core (due to CI overhead) - When a bottle isn’t available for your version of macOS we will use a bottle from an older version instead
- I (Mike McQuaid) will step down as lead maintainer on February 4th when the Homebrew maintainers meet in person for the first time
- Mojave is officially supported (and El Capitan unsupported)
brew upgradeautomatically reinstalls or upgrades formulae with broken linkagebrew shellenvoutputs configuration variables for Homebrew (and was reimplemented in Bash for speed)brew infodisplays analytics data. This is the way that Homebrew maintainers query analytics data so we are using the same data as the community.- JSON is used to marshal child process errors to avoid potential security issues
- Homebrew Cask’s downloads are quarantined
brew extractis a new command to extract old versions of formulae from Git history- Homebrew Cask’s installs report analytics events
brew cask searchandbrew cask cleanupare deprecated in favour ofbrew searchandbrew cleanup
Other changes since 1.7.0 I’d like to highlight are the following:
brew gist-logs --privatecreates private gists- Setting
HOMEBREW_FORCE_HOMEBREW_ON_LINUXdisables using Linuxbrew settings when using Homebrew on Linux brew stylechecks Bash style withshellcheckand uses RuboCop RSpec by defaultbrew cleanupremoves old or unnecessary portable Rubies and linkage cachesbrew linkageuses a JSON cache to increase reliabilitybrew update-resetaccepts a repository argumentbundle install --standaloneis used to handle vendored gems. This is used to use ActiveSupport File.atomic_write, ActiveSupport Hash#deep_merge,String#delete_prefixbackport and ActiveSupport Object#blank? and #present? rather than maintaining our own poor imitations.brew updatefollows GitHub API redirects- Directories that need to be writable are created automatically and checked more thoroughly
brew linkagedata is used to check for multiple simultaneous versioned formulae linkage. This is more permissive than the previous recursive dependency check.brew bundle check --verbosedisplays what software is missing and causing abrew bundle checkto failbrew updateprints a one-time donation request
Finally:
- Many Homebrew maintainers will be attending FOSDEM 2019. Consider coming along and saying hello!
- Homebrew still accepts donations through Patreon. If you can afford it, please consider donating. If you’d rather not use Patreon, 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. Enjoy using Homebrew!
Latest Posts
-
6.0.0
11 Jun 2026
Today, I’m proud to announce Homebrew 6.0.0. The most significant changes since 5.1.0 are a new tap trust security mechanism, the new faster, smaller, default internal...
-
5.1.0
10 Mar 2026
Homebrew 5.1.0 has been released. Homebrew’s most significant changes since 5.0.0 are expanded brew bundle support, brew version-install, new -full formula handling an...
-
5.0.0
12 Nov 2025
Today, I’d like to announce Homebrew 5.0.0. The most significant changes since 4.6.0 are download concurrency by default, official support for Linux ARM64/AArch64, tim...
-
4.6.0
05 Aug 2025
Today, I’d like to announce Homebrew 4.6.0. The most significant changes since 4.5.0 are opt-in concurrent downloads with HOMEBREW_DOWNLOAD_CONCURRENCY, preliminary ma...
-
4.5.0
29 Apr 2025
Today, I’d like to announce Homebrew 4.5.0. The most significant changes since 4.4.0 are major improvements to brew bundle/services, preliminary Linux support for cask...