brew/Library/Homebrew/cmd/leaves.rb
Mike McQuaid 3f348286f9
cmd/leaves: handle missing formula.
Use `runtime_formula_dependencies` which does this for us.

Fixes #6827.
2019-12-10 15:44:14 +00:00

30 lines
617 B
Ruby

# frozen_string_literal: true
require "formula"
require "tab"
require "cli/parser"
module Homebrew
module_function
def leaves_args
Homebrew::CLI::Parser.new do
usage_banner <<~EOS
`leaves`
List installed formulae that are not dependencies of another installed formula.
EOS
switch :debug
end
end
def leaves
leaves_args.parse
installed = Formula.installed.sort
deps_of_installed = installed.flat_map(&:runtime_formula_dependencies)
leaves = installed.map(&:full_name) - deps_of_installed.map(&:full_name)
leaves.each(&method(:puts))
end
end