From f72d4f17221e2c313e7076ac0b7b79c0a76018dd Mon Sep 17 00:00:00 2001 From: Xu Cheng Date: Sat, 19 Dec 2015 18:47:20 +0800 Subject: 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. --- Library/Homebrew/cmd/readall.rb | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) (limited to 'Library') 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| -- cgit v1.2.3