From 4e50562424e246743b117167c732dc3988f561d2 Mon Sep 17 00:00:00 2001 From: JCount Date: Sun, 5 Mar 2017 14:19:32 -0500 Subject: [PATCH 1/3] audit: whitelist bash-completion@* to use conflicts_with this is necessary because they install conflicting scripts into HOMEBREW_PREFIX/etc/profile.d --- Library/Homebrew/dev-cmd/audit.rb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Library/Homebrew/dev-cmd/audit.rb b/Library/Homebrew/dev-cmd/audit.rb index d18e3b821f..30f39485a7 100644 --- a/Library/Homebrew/dev-cmd/audit.rb +++ b/Library/Homebrew/dev-cmd/audit.rb @@ -532,8 +532,11 @@ class FormulaAuditor end end + versioned_conflicts_whitelist = %w[node@ bash-completion@] + return unless formula.conflicts.any? && formula.versioned_formula? - return if formula.name.start_with? "node@" + versioned_conflicts_whitelist.each { |c| + return if formula.name.start_with? c } problem <<-EOS Versioned formulae should not use `conflicts_with`. Use `keg_only :versioned_formula` instead. From 460c4a3200a9172227d5c9c75c96096b5112582a Mon Sep 17 00:00:00 2001 From: JCount Date: Sun, 5 Mar 2017 15:06:02 -0500 Subject: [PATCH 2/3] audit: deconstruct versioned_conflicts_whitelist using splat --- Library/Homebrew/dev-cmd/audit.rb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Library/Homebrew/dev-cmd/audit.rb b/Library/Homebrew/dev-cmd/audit.rb index 30f39485a7..912b70b03e 100644 --- a/Library/Homebrew/dev-cmd/audit.rb +++ b/Library/Homebrew/dev-cmd/audit.rb @@ -535,8 +535,7 @@ class FormulaAuditor versioned_conflicts_whitelist = %w[node@ bash-completion@] return unless formula.conflicts.any? && formula.versioned_formula? - versioned_conflicts_whitelist.each { |c| - return if formula.name.start_with? c } + return if formula.name.start_with?(*versioned_conflicts_whitelist) problem <<-EOS Versioned formulae should not use `conflicts_with`. Use `keg_only :versioned_formula` instead. From 3db3b08d723e6ec33d62e8f09cf5b349f2f59f02 Mon Sep 17 00:00:00 2001 From: JCount Date: Sun, 5 Mar 2017 15:44:03 -0500 Subject: [PATCH 3/3] audit: freeze versioned_conflicts_whitelist --- Library/Homebrew/dev-cmd/audit.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Library/Homebrew/dev-cmd/audit.rb b/Library/Homebrew/dev-cmd/audit.rb index 912b70b03e..457df5fc7b 100644 --- a/Library/Homebrew/dev-cmd/audit.rb +++ b/Library/Homebrew/dev-cmd/audit.rb @@ -532,7 +532,7 @@ class FormulaAuditor end end - versioned_conflicts_whitelist = %w[node@ bash-completion@] + versioned_conflicts_whitelist = %w[node@ bash-completion@].freeze return unless formula.conflicts.any? && formula.versioned_formula? return if formula.name.start_with?(*versioned_conflicts_whitelist)