aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorJack Nagel2013-05-19 18:43:54 -0500
committerJack Nagel2013-05-19 18:47:56 -0500
commit49b5e279c23c56abbabb1fafce79374350bbd8a9 (patch)
treefd569c3951f95cc7182f5e7dbed6848639d64a87 /Library
parent7fa5e80567cc96bc053cc1a68d8d8b50269d01b6 (diff)
downloadhomebrew-49b5e279c23c56abbabb1fafce79374350bbd8a9.tar.bz2
brew-leaves: use Formula.installed
Diffstat (limited to 'Library')
-rwxr-xr-xLibrary/Contributions/cmd/brew-leaves.rb19
1 files changed, 5 insertions, 14 deletions
diff --git a/Library/Contributions/cmd/brew-leaves.rb b/Library/Contributions/cmd/brew-leaves.rb
index 3da55c019..38d023cf7 100755
--- a/Library/Contributions/cmd/brew-leaves.rb
+++ b/Library/Contributions/cmd/brew-leaves.rb
@@ -7,8 +7,6 @@ require 'formula'
def get_used_by(formulae)
used_by = {}
formulae.each do |f|
- next if f.nil? or f.deps.nil?
-
f.deps.each do |dep|
_deps = used_by[dep.to_s] || []
_deps << f.name unless _deps.include? f.name
@@ -19,18 +17,11 @@ def get_used_by(formulae)
return used_by
end
-installed = HOMEBREW_CELLAR.children.select { |pn| pn.directory? }.collect { |pn| pn.basename.to_s }
-installed_formulae = installed.collect do |pn|
- begin
- Formula.factory(pn)
- rescue FormulaUnavailableError
- # Don't complain about directories from DIY installs
- end
-end
-
-deps_graph = get_used_by(installed_formulae)
+installed = Formula.installed
+names = installed.map(&:name)
+deps_graph = get_used_by(installed)
-installed.each do |name|
+names.each do |name|
deps = deps_graph[name] || []
- puts name unless deps.any? { |dep| installed.include? dep.to_s }
+ puts name unless deps.any? { |dep| names.include? dep.to_s }
end