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
devel
specs 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 upgrade
automatically reinstalls or upgrades formulae with broken linkagebrew shellenv
outputs configuration variables for Homebrew (and was reimplemented in Bash for speed)brew info
displays 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 extract
is a new command to extract old versions of formulae from Git history- Homebrew Cask’s installs report analytics events
brew cask search
andbrew cask cleanup
are deprecated in favour ofbrew search
andbrew cleanup
Other changes since 1.7.0 I’d like to highlight are the following:
brew gist-logs --private
creates private gists- Setting
HOMEBREW_FORCE_HOMEBREW_ON_LINUX
disables using Linuxbrew settings when using Homebrew on Linux brew style
checks Bash style withshellcheck
and uses RuboCop RSpec by defaultbrew cleanup
removes old or unnecessary portable Rubies and linkage cachesbrew linkage
uses a JSON cache to increase reliabilitybrew update-reset
accepts a repository argumentbundle install --standalone
is used to handle vendored gems. This is used to use ActiveSupport File.atomic_write, ActiveSupport Hash#deep_merge,String#delete_prefix
backport and ActiveSupport Object#blank? and #present? rather than maintaining our own poor imitations.brew update
follows GitHub API redirects- Directories that need to be writable are created automatically and checked more thoroughly
brew linkage
data is used to check for multiple simultaneous versioned formulae linkage. This is more permissive than the previous recursive dependency check.brew bundle check --verbose
displays what software is missing and causing abrew bundle check
to failbrew update
prints 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!