diff options
| -rw-r--r-- | Library/Homebrew/cmd/upgrade.rb | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/Library/Homebrew/cmd/upgrade.rb b/Library/Homebrew/cmd/upgrade.rb index ff7f43192..8b30ba59c 100644 --- a/Library/Homebrew/cmd/upgrade.rb +++ b/Library/Homebrew/cmd/upgrade.rb @@ -9,15 +9,14 @@ module Homebrew outdated = Homebrew.outdated_brews(Formula.installed) exit 0 if outdated.empty? else - outdated = ARGV.formulae.select do |f| - if f.installed? - onoe "#{f.name}-#{f.installed_version} already installed" - false - elsif not f.rack.directory? or f.rack.subdirs.empty? - onoe "#{f.name} not installed" - false + outdated = Homebrew.outdated_brews(ARGV.formulae) + + (ARGV.formulae - outdated).each do |f| + if f.rack.directory? + version = f.rack.subdirs.map { |d| Keg.new(d).version }.max + onoe "#{f.name} #{version} already installed" else - true + onoe "#{f.name} not installed" end end exit 1 if outdated.empty? |
