diff options
| author | Charlie Sharpsteen | 2011-09-11 13:06:05 -0700 |
|---|---|---|
| committer | Charlie Sharpsteen | 2011-09-16 08:55:38 -0700 |
| commit | 00cd16f866fb341dcbcef6d8333d6bb030f03fee (patch) | |
| tree | 0b5700fc984305dcb947f916fd61667b3e7208e9 /Library/Homebrew | |
| parent | 06fbecbeaefbcd82db8e0215b964e30ef3378ff0 (diff) | |
| download | homebrew-00cd16f866fb341dcbcef6d8333d6bb030f03fee.tar.bz2 | |
Return Formula objects from `outdated_brews`
Previously, `outdated_brews` returned a list of lists---each containing three
components of a Formula object:
- f.rack
- f.name
- f.version
Frequently more information is required which necessitates back-casting from
`name` to a Formula object---simpy returning formula objects removes this step.
Diffstat (limited to 'Library/Homebrew')
| -rw-r--r-- | Library/Homebrew/cmd/outdated.rb | 12 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/upgrade.rb | 13 |
2 files changed, 12 insertions, 13 deletions
diff --git a/Library/Homebrew/cmd/outdated.rb b/Library/Homebrew/cmd/outdated.rb index 37fba0f99..40aa7a470 100644 --- a/Library/Homebrew/cmd/outdated.rb +++ b/Library/Homebrew/cmd/outdated.rb @@ -2,12 +2,12 @@ require 'formula' module Homebrew extend self def outdated - outdated_brews.each do |keg, name, version| + outdated_brews.each do |f| if $stdout.tty? and not ARGV.flag? '--quiet' - versions = keg.cd{ Dir['*'] }.join(', ') - puts "#{name} (#{versions} < #{version})" + versions = f.rack.cd{ Dir['*'] }.join(', ') + puts "#{f.name} (#{versions} < #{f.version})" else - puts name + puts f.name end end end @@ -22,7 +22,7 @@ module Homebrew extend self name = rack.basename.to_s f = Formula.factory name rescue nil - [rack, name, f.version] if f and not f.installed? + f if f and not f.installed? end.compact end -end
\ No newline at end of file +end diff --git a/Library/Homebrew/cmd/upgrade.rb b/Library/Homebrew/cmd/upgrade.rb index 99fcf6fa0..97d32bbf6 100644 --- a/Library/Homebrew/cmd/upgrade.rb +++ b/Library/Homebrew/cmd/upgrade.rb @@ -14,24 +14,23 @@ module Homebrew extend self outdated = if ARGV.named.empty? Homebrew.outdated_brews else - ARGV.formulae.map do |f| + ARGV.formulae.each do |f| raise "#{f} already upgraded" if f.installed? raise "#{f} not installed" unless f.rack.exist? and not f.rack.children.empty? - [f.rack, f.name, f.version] end end if outdated.length > 1 oh1 "Upgrading #{outdated.length} outdated package#{outdated.length.plural_s}, with result:" - puts outdated.map{ |_, name, version| "#{name} #{version}" } * ", " + puts outdated.map{ |f| "#{f.name} #{f.version}" } * ", " end - outdated.each do |rack, name, version| - installer = FormulaInstaller.new(Formula.factory(name)) + outdated.each do |f| + installer = FormulaInstaller.new f installer.show_header = false - oh1 "Upgrading #{name}" + oh1 "Upgrading #{f.name}" installer.install - Keg.new("#{rack}/#{version}").unlink + Keg.new("#{f.rack}/#{f.version}").unlink installer.caveats installer.finish # includes link step end |
