diff options
| author | Charlie Sharpsteen | 2011-09-11 12:57:53 -0700 |
|---|---|---|
| committer | Charlie Sharpsteen | 2011-09-16 08:55:38 -0700 |
| commit | 06fbecbeaefbcd82db8e0215b964e30ef3378ff0 (patch) | |
| tree | db106759536b6b2c05fcecd96e61d2e840b33168 | |
| parent | 8c9f595a834b324d53f461f4f9b81bcfc33dcc18 (diff) | |
| download | homebrew-06fbecbeaefbcd82db8e0215b964e30ef3378ff0.tar.bz2 | |
Centralize definition of `rack` in formula.rb
`rack` is a commonly used alias for `formula.prefix.parent`---so common that it
gets defined and used quite a bit. This patch makes `rack` an official method
of the `Formula` class.
| -rwxr-xr-x | Library/Homebrew/build.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/cleanup.rb | 9 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/info.rb | 5 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/uninstall.rb | 7 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/upgrade.rb | 8 | ||||
| -rw-r--r-- | Library/Homebrew/formula.rb | 1 |
6 files changed, 12 insertions, 20 deletions
diff --git a/Library/Homebrew/build.rb b/Library/Homebrew/build.rb index 36c3da268..f704e05ef 100755 --- a/Library/Homebrew/build.rb +++ b/Library/Homebrew/build.rb @@ -86,7 +86,7 @@ def install f rescue Exception if f.prefix.directory? f.prefix.rmtree - f.prefix.parent.rmdir_if_possible + f.rack.rmdir_if_possible end raise end diff --git a/Library/Homebrew/cmd/cleanup.rb b/Library/Homebrew/cmd/cleanup.rb index f5f11599c..0f9f2c3cb 100644 --- a/Library/Homebrew/cmd/cleanup.rb +++ b/Library/Homebrew/cmd/cleanup.rb @@ -23,25 +23,24 @@ module Homebrew extend self def cleanup_formula f f = Formula.factory f - rack = f.prefix.parent # Don't clean up keg-only brews for now. # Formulae link directly to them, so cleaning up old # ones will break already compiled software. if f.keg_only? and not ARGV.force? - opoo "Skipping keg-only #{f.name}" if rack.children.length > 1 + opoo "Skipping keg-only #{f.name}" if f.rack.children.length > 1 return end - if f.installed? and rack.directory? - rack.children.each do |keg| + if f.installed? and f.rack.directory? + f.rack.children.each do |keg| if f.installed_prefix != keg print "Removing #{keg}..." rm_rf keg puts end end - elsif rack.children.length > 1 + elsif f.rack.children.length > 1 # If the cellar only has one version installed, don't complain # that we can't tell which one to keep. opoo "Skipping #{f.name}: most recent version #{f.version} not installed" diff --git a/Library/Homebrew/cmd/info.rb b/Library/Homebrew/cmd/info.rb index 637e849c5..9c950801a 100644 --- a/Library/Homebrew/cmd/info.rb +++ b/Library/Homebrew/cmd/info.rb @@ -50,9 +50,8 @@ module Homebrew extend self puts "Depends on: #{f.deps*', '}" unless f.deps.empty? - rack = f.prefix.parent - if rack.directory? - kegs = rack.children + if f.rack.directory? + kegs = f.rack.children kegs.each do |keg| next if keg.basename.to_s == '.DS_Store' print "#{keg} (#{keg.abv})" diff --git a/Library/Homebrew/cmd/uninstall.rb b/Library/Homebrew/cmd/uninstall.rb index 76c94969a..7392c26b7 100644 --- a/Library/Homebrew/cmd/uninstall.rb +++ b/Library/Homebrew/cmd/uninstall.rb @@ -10,17 +10,16 @@ module Homebrew extend self end else ARGV.formulae.each do |f| - rack = f.prefix.parent - if rack.directory? + if f.rack.directory? puts "Uninstalling #{f}..." - rack.children.each do |keg| + f.rack.children.each do |keg| if keg.directory? keg = Keg.new(keg) keg.unlink keg.rmtree end end - rack.rmtree + f.rack.rmtree end end end diff --git a/Library/Homebrew/cmd/upgrade.rb b/Library/Homebrew/cmd/upgrade.rb index 1303c1973..99fcf6fa0 100644 --- a/Library/Homebrew/cmd/upgrade.rb +++ b/Library/Homebrew/cmd/upgrade.rb @@ -7,12 +7,6 @@ class Fixnum end end -class Formula - def rack - HOMEBREW_CELLAR/name - end -end - module Homebrew extend self def upgrade Homebrew.perform_preinstall_checks @@ -23,7 +17,7 @@ module Homebrew extend self ARGV.formulae.map do |f| raise "#{f} already upgraded" if f.installed? raise "#{f} not installed" unless f.rack.exist? and not f.rack.children.empty? - [f.prefix.parent, f.name, f.version] + [f.rack, f.name, f.version] end end diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb index ca8e489c3..2ecf30758 100644 --- a/Library/Homebrew/formula.rb +++ b/Library/Homebrew/formula.rb @@ -170,6 +170,7 @@ class Formula validate_variable :version HOMEBREW_CELLAR+@name+@version end + def rack; prefix.parent end def bin; prefix+'bin' end def doc; prefix+'share/doc'+name end |
