diff options
Diffstat (limited to 'Library/Homebrew/cmd/outdated.rb')
| -rw-r--r-- | Library/Homebrew/cmd/outdated.rb | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/Library/Homebrew/cmd/outdated.rb b/Library/Homebrew/cmd/outdated.rb index 4cbd8a6c8..01805809e 100644 --- a/Library/Homebrew/cmd/outdated.rb +++ b/Library/Homebrew/cmd/outdated.rb @@ -3,19 +3,20 @@ require 'keg' module Homebrew def outdated - outdated_brews do |f, versions| + formulae = ARGV.formulae.any? ? ARGV.formulae : Formula.installed + + outdated = outdated_brews(formulae) do |f, versions| if ($stdout.tty? || ARGV.verbose?) && !ARGV.flag?("--quiet") puts "#{f.name} (#{versions*', '} < #{f.pkg_version})" else puts f.name end end - Homebrew.failed = ARGV.formulae.any? && outdated_brews.any? + Homebrew.failed = ARGV.formulae.any? && outdated.any? end - def outdated_brews - brews = ARGV.formulae.any? ? ARGV.formulae : Formula.installed - brews.map do |f| + def outdated_brews(formulae) + formulae.map do |f| versions = f.rack.subdirs.map { |d| Keg.new(d).version }.sort! if versions.all? { |version| f.pkg_version > version } yield f, versions if block_given? |
