The traditional approach to installing the dependencies of a formula is
the following:
brew install `brew deps formula`
This approach ignores any options that are specified in the parent
formula. This pull request adds a --only-dependencies option to brew
install that installs the dependencies of a formula with optional flags,
but returns before installing the parent formula.
ClosesHomebrew/homebrew#25272.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
This brings a (small) performance improvement as we yield the files as
they are output by fgrep rather than waiting until fgrep is done to do
any work.
`brew doctor` always complains about uncommitted modifications to
Homebrew when you have status.branch=true in your git config, because
the implicit --branch makes `git status -s` always print branch/tracking
info. The --porcelain mode is similar to -s/--short, but ignores most of
the user's config and should remain stable.
The --untracked-files option ensures we'll see untracked files even for
users with status.showUntrackedFiles=no, which is not suppressed by
--porcelain for some reason.
ClosesHomebrew/homebrew#25230.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
10.9 users might have older CLT receipts sitting around, which could
result in bad pkgutil results. For example, before changing this, my
`brew --config` was printing '1.0' (the 10.7 version) instead of
'5.0.1.0.1.1382131676', the actual CLT I had installed.
Every caller of install_names_for loops over the yielded array. Now that
we have separated the dylib id calculation and update, we can eliminate
the need for a separate loop and yield each install name individually.
Rename this method to "each_install_name_for" for clarity.
The dylib id calculation does not use any information gathered in
install_names_for, so we can pull the logic out completely and only
yield the install names.
Since a bad xcode-select path can cause many brew commands to freeze,
it's worth warning users and bailing out as early as possible.
The doctor check wasn't good enough, since the doctor could freeze
before the warning about this was ever printed.
First autocompletes on the names of installed packages and then
autocompletes on available versions for that specific package
ClosesHomebrew/homebrew#25051.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>