Skip to content
Snippets Groups Projects
Commit ebedd3d5 authored by Troels Thomsen's avatar Troels Thomsen Committed by Jack Nagel
Browse files

brew-leaves: resolve dependency graph for installed formulae only


Closes Homebrew/homebrew#19870.

Signed-off-by: default avatarJack Nagel <jacknagel@gmail.com>
parent 4276d03f
No related branches found
No related tags found
No related merge requests found
......@@ -4,10 +4,10 @@
require 'formula'
def get_used_by
def get_used_by(formulae)
used_by = {}
Formula.each do |f|
next if f.deps == nil
formulae.each do |f|
next if f.nil? or f.deps.nil?
f.deps.each do |dep|
_deps = used_by[dep.to_s] || []
......@@ -19,8 +19,17 @@ def get_used_by
return used_by
end
deps_graph = get_used_by()
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.each do |name|
deps = deps_graph[name] || []
puts name unless deps.any? { |dep| installed.include? dep.to_s }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment