Declarations of dependencies, options, and resources in the DSL only
apply to specs that have already been initialized. For example, given
this snippet:
url ...
sha1 ...
depends_on 'foo'
devel do
url ...
sha1 ...
end
The dependency 'foo' will be recorded for the stable spec, but not the
devel spec, since it was not initialized prior to the call to
depends_on.
While it is considered best practice to declare all specs (stable,
devel, head, and bottle) prior to other declarations, there is nothing
that enforces this ordering, so when it happens it can be confusing and
hard to debug.
To prevent this, we can initialize all specs up front. This comes with
a performance penalty for commands that load all formulae into memory,
but that is probably outweighed by what we gain in correctness.
Fixes Homebrew/homebrew#23425.
Homebrew
Features, usage and installation instructions are summarized on the homepage.
What Packages Are Available?
- You can browse the Formula directory on GitHub.
- Or type
brew searchfor a list. - Or run
brew serverto browse packages off of a local web server. - Or visit braumeister.org to browse packages online.
More Documentation
brew help or man brew or check our wiki.
Who Are You?
I'm Max Howell and I'm a splendid chap.
License
Code is under the BSD 2 Clause (NetBSD) license.
4.6.25
Latest
Languages
Ruby
92%
Shell
5.2%
Roff
2.1%
HTML
0.5%