aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorMike McQuaid2013-10-29 17:27:36 -0400
committerMike McQuaid2013-10-30 10:48:53 -0700
commit868b4f8bea5f04de4c9036c4ca6e3697670225c3 (patch)
tree45ded028a345ee7e0f44637a89f84b9bead80c74 /Library
parent34d836872f6c84cdbfc4e26543ff464ef750ac7b (diff)
downloadbrew-868b4f8bea5f04de4c9036c4ca6e3697670225c3.tar.bz2
uses: display requirements.
Closes Homebrew/homebrew#23758.
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/cmd/uses.rb23
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