brew/Library/Homebrew/cmd/leaves.rb
Mike McQuaid ce9c8c6808 cmd/leaves: handle missing formulae.
We can't get dependencies of unavailable formulae so don't try.

Fixes #3995.
2018-03-29 10:58:01 +01:00

28 lines
570 B
Ruby

#: * `leaves`:
#: Show installed formulae that are not dependencies of another installed formula.
require "formula"
require "tab"
require "set"
module Homebrew
module_function
def leaves
installed = Formula.installed.sort
deps_of_installed = installed.flat_map do |f|
f.runtime_dependencies.map do |dep|
begin
dep.to_formula.full_name
rescue FormulaUnavailableError
dep.name
end
end
end
leaves = installed.map(&:full_name) - deps_of_installed
leaves.each(&method(:puts))
end
end