diff options
| author | Jack Nagel | 2013-01-23 00:26:28 -0600 | 
|---|---|---|
| committer | Jack Nagel | 2013-01-26 12:14:48 -0600 | 
| commit | 85a77eb1d0426bed7b2f1ed72c422d846db300df (patch) | |
| tree | 213de69edc337cf59b9c741351431401802612be /Library/Homebrew/cmd/missing.rb | |
| parent | 775184240d039973f3cd0751eb648d8840f70276 (diff) | |
| download | homebrew-85a77eb1d0426bed7b2f1ed72c422d846db300df.tar.bz2 | |
missing: ignore unused optional and recommended deps
Diffstat (limited to 'Library/Homebrew/cmd/missing.rb')
| -rw-r--r-- | Library/Homebrew/cmd/missing.rb | 24 | 
1 files changed, 12 insertions, 12 deletions
| diff --git a/Library/Homebrew/cmd/missing.rb b/Library/Homebrew/cmd/missing.rb index 7f4417081..ea0df4a1d 100644 --- a/Library/Homebrew/cmd/missing.rb +++ b/Library/Homebrew/cmd/missing.rb @@ -1,21 +1,21 @@  require 'formula' +require 'tab'  module Homebrew extend self -  def installed_brews -    formulae = [] -    HOMEBREW_CELLAR.subdirs.each do |rack| -      f = Formula.factory rack.basename.to_s rescue nil -      formulae << f if f and f.rack.exist? and f.rack.subdirs.length > 0 -    end -    formulae -  end -    def missing_deps ff      missing = {}      ff.each do |f| -      missing_deps = f.recursive_deps.uniq.reject do |dep| -          dep.rack.exist? and dep.rack.subdirs.length > 0 +      missing_deps = f.recursive_dependencies do |dependent, dep| +        if dep.optional? || dep.recommended? +          tab = Tab.for_formula(dependent) +          Dependency.prune unless tab.with?(dep.name) +        elsif dep.build? +          Dependency.prune          end +      end + +      missing_deps.map!(&:to_formula) +      missing_deps.reject! { |d| d.rack.exist? && d.rack.subdirs.length > 0 }        unless missing_deps.empty?          yield f.name, missing_deps if block_given? @@ -29,7 +29,7 @@ module Homebrew extend self      return unless HOMEBREW_CELLAR.exist?      ff = if ARGV.named.empty? -      installed_brews +      Formula.installed      else        ARGV.formulae      end | 
