From 2d155f2d41483869e5906177d04a8986c3c476a2 Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Sun, 13 Apr 2014 16:25:46 +0100 Subject: [PATCH] readall: read formulae that aren't tapped. This will allow the reading and checking of formulae that mirror Homebrew core formulae (e.g. `git` in a tap) and, with the previous exit code changes, is a reasonable check for "are all the formulae in taps updated to the latest core DSL". Closes Homebrew/homebrew#28328. Signed-off-by: Mike McQuaid --- Library/Contributions/cmd/brew-readall.rb | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/Library/Contributions/cmd/brew-readall.rb b/Library/Contributions/cmd/brew-readall.rb index 0f52358961..d0bc4ed22a 100755 --- a/Library/Contributions/cmd/brew-readall.rb +++ b/Library/Contributions/cmd/brew-readall.rb @@ -4,7 +4,23 @@ # or to determine if any current formulae have Ruby issues require 'formula' -Formula.names.each do |n| +require 'cmd/tap' + +formulae = [] +if ARGV.empty? + formulae = Formula.names +else + tap_name = ARGV.first + # Allow use of e.g. homebrew/versions or homebrew-versions + tap_dir = tap_name.reverse.sub('/', '-').reverse + tap = Pathname("#{HOMEBREW_LIBRARY}/Taps/#{tap_dir}") + raise "#{tap} does not exist!" unless tap.exist? + tap.find_formula do |f| + formulae << (tap/f).tap_ref + end +end + +formulae.sort.each do |n| begin Formula.factory(n) rescue Exception => e