diff options
| author | Mike McQuaid | 2013-10-29 17:27:36 -0400 |
|---|---|---|
| committer | Mike McQuaid | 2013-10-30 10:48:53 -0700 |
| commit | 868b4f8bea5f04de4c9036c4ca6e3697670225c3 (patch) | |
| tree | 45ded028a345ee7e0f44637a89f84b9bead80c74 /Library | |
| parent | 34d836872f6c84cdbfc4e26543ff464ef750ac7b (diff) | |
| download | brew-868b4f8bea5f04de4c9036c4ca6e3697670225c3.tar.bz2 | |
uses: display requirements.
Closes Homebrew/homebrew#23758.
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/cmd/uses.rb | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/Library/Homebrew/cmd/uses.rb b/Library/Homebrew/cmd/uses.rb index a9012dca5..be8e1609a 100644 --- a/Library/Homebrew/cmd/uses.rb +++ b/Library/Homebrew/cmd/uses.rb @@ -10,20 +10,27 @@ module Homebrew extend self formulae = ARGV.formulae - uses = Formula.select do |f| + uses = [] + Formula.each do |f| + next if ARGV.include? "--installed" and not f.installed? + formulae.all? do |ff| if ARGV.flag? '--recursive' - f.recursive_dependencies.any? { |dep| dep.name == ff.name } + if f.recursive_dependencies.any? { |dep| dep.name == ff.name } + uses << f.to_s + elsif f.recursive_requirements.any? { |req| req.name == ff.name } + uses << ":#{f}" + end else - f.deps.any? { |dep| dep.name == ff.name } + if f.deps.any? { |dep| dep.name == ff.name } + uses << f.to_s + elsif f.requirements.any? { |req| req.name == ff.name } + uses << ":#{f}" + end end end end - if ARGV.include? "--installed" - uses = uses.select { |f| Formula.installed.include? f } - end - - puts_columns uses.map(&:to_s).sort + puts_columns uses end end |
