Fix false positive conflicts for static files in a collection (#9141)

Merge pull request 9141
This commit is contained in:
Youssef Boulkaid 2022-10-16 13:48:24 +02:00 committed by GitHub
parent bb851e235d
commit 6903f0b0f4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 0 deletions

View File

@ -360,9 +360,13 @@ module Jekyll
end
def each_site_file
seen_files = []
%w(pages static_files_to_write docs_to_write).each do |type|
send(type).each do |item|
next if seen_files.include?(item)
yield item
seen_files << item
end
end
end

View File

@ -749,5 +749,14 @@ class TestSite < JekyllUnitTest
assert_includes site.static_files.map(&:relative_path), "_methods/extensionless_static_file"
end
should "not be revisited in `Site#each_site_file`" do
site = fixture_site("collections" => { "methods" => { "output" => true } })
site.read
visited_files = []
site.each_site_file { |file| visited_files << file }
assert_equal visited_files.count, visited_files.uniq.count
end
end
end