Today I’d like to announce Homebrew 1.2.0. The most significant change since 1.1.0 is that most Homebrew taps (package repositories) in the Homebrew GitHub organisation have been deprecated and the currently buildable software moved into Homebrew/homebrew-core. This will improve the quality and availability of all their software.
Additionally, as Homebrew/homebrew-versions has been moved into Homebrew/homebrew-core Homebrew provides better, official support for different versions. You can read more about this in the dedicated versions document. Please note our goal isn’t to support all versions of all software but to provide some versions and tooling such that you can easily maintain more in your own tap (package repository).
Since 1.1.0 the following deprecations have been made:
env :stdandenv :userpathsin formulaeOS.mac?andOS.linux?in formulaefails_with :llvmin formulae32-bitoptions in formulaego getusage in formulae- formulae dependencies that need built with non-default options
- new formulae that require patches
- language module requirements (e.g.
depends_on "pygments.rb" => :ruby) - Universal options and builds of formulae
brew tapof deprecated, official tapsbrew cask updatecommandbrew linkappsandbrew unlinkappscommands- Various internal APIs on
ENV.and elsewhere
While all the functionality for these deprecations will be supported for the foreseeable future in Homebrew/brew for 3rd-party usage, Homebrew/homebrew-core will be removing the use of these APIs from formulae to improve the user experience.
Since 1.1.0 some new commands are available:
brew cask outdatedshows outdated Casksbrew formulaoutputs the location of a formulabrew update-resetsimplifies cleaning up broken repositories
Some of the other changes since 1.1.0 I’d like to highlight are the following:
brew createuses GitHub metadata to populate fields when creating from a GitHub archivebrew auditprovides--onlyand--exceptflags to allow selectively runningbrew auditmethodsbrew searchuses a single GitHub API call for searching all Homebrew and Caskroom tapsbrew installcreates symlinks inoptfor formulae aliases (such as versioned aliases)brew updatewill symlink shell completions provided by tapsbrew testsruns all cask tests (replacingbrew cask-tests) and all tests use RSpec rather than MiniTest- New download strategies were added for handling private GitHub repositories
- We store (and report to anonymous analytics) whether a package was installed as a dependency or on request. This is returned as part of
brew info --json=v1. This is useful in differentiating between top installed packages based on user demand vs. based on large numbers of dependents. This is also used bybrew bundle dumpandbrew bundle cleanupto handle dependencies more sensibly. - Xcode prerelease warnings have been removed
brew reinstall,upgradeandinstallalways output used optionsbrew tap-newuses our latest Travis CI recommended configuration providing zero-configuration CI for all formulae tapsbrew uninstallnow refuses to uninstall a package if other packages that depend on it are still installed- RuboCop is used for formulae
descaudits and checking the order of methods in formulae rather than requiringbrew auditbe run. This also allows these checks to be run automatically in any editor with RuboCop integration. - Setting
HOMEBREW_ENV_FILTERINGwill filter all custom user environment variables frombrew. Eventually we hope to enable this by default. - Sensitive tokens in the environment are hidden from untrusted 3rd-party code in
brew installandbrew test brew servicesprovides better error reporting using new macOS APIs
And finally:
- A new documentation site is at docs.brew.sh
- A dump of installation, installation on request and build error events is provided on this site
- Homebrew’s mailing list has been deprecated in favour of our Discourse forum
- Homebrew accepts donations through Patreon. If you can afford it, please consider donating.
- Homebrew uses HackerOne for security vulnerability disclosure
- Homebrew’s CI servers are now provided by MacStadium and DigitalOcean. Thanks to Positive Internet for years of friendship, incredible customer support and super reliable hosting.
Thanks to all our hard-working maintainers, contributors, sponsors and supporters for getting us this far. Enjoy using Homebrew!