Only optimize for the core tap

This commit is contained in:
apainintheneck 2022-11-17 21:14:48 -08:00
parent c787df5294
commit 2601cc410b
2 changed files with 28 additions and 13 deletions

View File

@ -154,14 +154,17 @@ module Homebrew
end
end
# Check if the formula has been deleted in the last month.
diff_command = ["git", "diff", "--diff-filter=D", "--name-only",
"@{'1 month ago'}", "--", relative_path]
deleted_formula = Utils.popen_read(*diff_command)
# Optimization for the core tap which has many monthly commits
if tap.core_tap?
# Check if the formula has been deleted in the last month.
diff_command = ["git", "diff", "--diff-filter=D", "--name-only",
"@{'1 month ago'}", "--", relative_path]
deleted_formula = Utils.popen_read(*diff_command)
if deleted_formula.blank?
ofail "No previously deleted formula found." unless silent
return
if deleted_formula.blank?
ofail "No previously deleted formula found." unless silent
return
end
end
# Find commit where formula was deleted in the last month.

View File

@ -75,16 +75,28 @@ describe Homebrew::MissingFormula do
end
end
context "with a deleted formula" do
let(:formula) { "homebrew/foo/deleted-formula" }
shared_examples "it detects deleted formulae" do
context "with a deleted formula" do
let(:formula) { "homebrew/foo/deleted-formula" }
it { is_expected.not_to be_nil }
it { is_expected.not_to be_nil }
end
context "with a formula that never existed" do
let(:formula) { "homebrew/foo/missing-formula" }
it { is_expected.to be_nil }
end
end
context "with a formula that never existed" do
let(:formula) { "homebrew/foo/missing-formula" }
include_examples "it detects deleted formulae"
it { is_expected.to be_nil }
describe "on the core tap" do
before do
allow_any_instance_of(Tap).to receive(:core_tap?).and_return(true)
end
include_examples "it detects deleted formulae"
end
end