aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXu Cheng2015-12-19 18:47:20 +0800
committerXu Cheng2015-12-19 22:05:30 +0800
commitf72d4f17221e2c313e7076ac0b7b79c0a76018dd (patch)
tree2294e8003831bb872c3d6147b351d4e0fd11a22f
parent430cfbb55729192dc579f333362b490448222ca6 (diff)
downloadbrew-f72d4f17221e2c313e7076ac0b7b79c0a76018dd.tar.bz2
readall: use Tap object to locate alias directory
Let's hide implementation detail on where to find alias directory. This will benefit future core code and formulae separation. Also let `brew readall` check aliases for all taps.
-rw-r--r--Library/Homebrew/cmd/readall.rb25
1 files changed, 16 insertions, 9 deletions
diff --git a/Library/Homebrew/cmd/readall.rb b/Library/Homebrew/cmd/readall.rb
index 141523616..4d74a6f41 100644
--- a/Library/Homebrew/cmd/readall.rb
+++ b/Library/Homebrew/cmd/readall.rb
@@ -33,22 +33,29 @@ module Homebrew
Homebrew.failed = failed
end
- if ARGV.delete("--aliases")
- Pathname.glob("#{HOMEBREW_LIBRARY}/Aliases/*").each do |f|
- next unless f.symlink?
- next if f.file?
- onoe "Broken alias: #{f}"
- Homebrew.failed = true
- end
- end
-
formulae = []
+ alias_dirs = []
if ARGV.named.empty?
formulae = Formula.files
+ alias_dirs = Tap.map(&:alias_dir)
+ alias_dirs.unshift CoreFormulaRepository.instance.alias_dir
else
tap = Tap.fetch(ARGV.named.first)
raise TapUnavailableError, tap.name unless tap.installed?
formulae = tap.formula_files
+ alias_dirs = [tap.alias_dir]
+ end
+
+ if ARGV.delete("--aliases")
+ alias_dirs.each do |alias_dir|
+ next unless alias_dir.directory?
+ Pathname.glob("#{alias_dir}/*").each do |f|
+ next unless f.symlink?
+ next if f.file?
+ onoe "Broken alias: #{f}"
+ Homebrew.failed = true
+ end
+ end
end
formulae.each do |file|