From 2d02c3950f715c17a1b62d73265116097835ed63 Mon Sep 17 00:00:00 2001 From: Adrian Ho Date: Sun, 19 Jan 2025 12:36:37 +0800 Subject: [PATCH 1/2] diagnostic: elide stray filenames in subdirs Usually, the subdirectory name is sufficient info, and the full file list is just noise. This reduces `brew doctor` output clutter, making it easier for user to paste, and maintainers to parse. Before: ``` $ brew doctor [...] Unexpected header files: /usr/local/include/node/cppgc/allocation.h /usr/local/include/node/cppgc/common.h /usr/local/include/node/cppgc/custom-space.h /usr/local/include/node/cppgc/garbage-collected.h /usr/local/include/node/cppgc/heap.h /usr/local/include/node/cppgc/internal/accessors.h /usr/local/include/node/cppgc/internal/api-constants.h /usr/local/include/node/cppgc/internal/compiler-specific.h /usr/local/include/node/cppgc/internal/finalizer-trait.h /usr/local/include/node/cppgc/internal/gc-info.h /usr/local/include/node/cppgc/internal/logging.h /usr/local/include/node/cppgc/internal/persistent-node.h /usr/local/include/node/cppgc/internal/pointer-policies.h /usr/local/include/node/cppgc/internal/prefinalizer-handler.h [about 500 more files] ``` After: ``` $ brew doctor Unexpected header files: /usr/local/include/node/... ``` The full list of stray files can still be viewed with `brew doctor -v`. --- Library/Homebrew/diagnostic.rb | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Library/Homebrew/diagnostic.rb b/Library/Homebrew/diagnostic.rb index c88b0b9412..e391f08b9c 100644 --- a/Library/Homebrew/diagnostic.rb +++ b/Library/Homebrew/diagnostic.rb @@ -188,11 +188,14 @@ module Homebrew files = Dir.chdir(dir) do (Dir.glob(pattern) - Dir.glob(allow_list)) .select { |f| File.file?(f) && !File.symlink?(f) } - .map { |f| File.join(dir, f) } + .map do |f| + f.sub!(%r{/.*}, "/...") unless @verbose + File.join(dir, f) + end end return if files.empty? - inject_file_list(files.sort, message) + inject_file_list(files.sort.uniq, message) end def check_for_stray_dylibs From 872bb926395f75078c33fdb145f687a349f0cb96 Mon Sep 17 00:00:00 2001 From: Adrian Ho Date: Sun, 19 Jan 2025 23:06:46 +0800 Subject: [PATCH 2/2] Update Library/Homebrew/diagnostic.rb Co-authored-by: Mike McQuaid --- Library/Homebrew/diagnostic.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Library/Homebrew/diagnostic.rb b/Library/Homebrew/diagnostic.rb index e391f08b9c..64f7185255 100644 --- a/Library/Homebrew/diagnostic.rb +++ b/Library/Homebrew/diagnostic.rb @@ -189,13 +189,14 @@ module Homebrew (Dir.glob(pattern) - Dir.glob(allow_list)) .select { |f| File.file?(f) && !File.symlink?(f) } .map do |f| - f.sub!(%r{/.*}, "/...") unless @verbose + f.sub!(%r{/.*}, "/*") unless @verbose File.join(dir, f) end + .sort.uniq end return if files.empty? - inject_file_list(files.sort.uniq, message) + inject_file_list(files, message) end def check_for_stray_dylibs