diff --git a/lib/jekyll/configuration.rb b/lib/jekyll/configuration.rb index 196cf587..8dc1807d 100644 --- a/lib/jekyll/configuration.rb +++ b/lib/jekyll/configuration.rb @@ -17,7 +17,9 @@ module Jekyll # Handling Reading "safe" => false, "include" => [".htaccess"], - "exclude" => %w(node_modules vendor), + "exclude" => %w( + node_modules vendor/bundle/ vendor/cache/ vendor/gems/ vendor/ruby/ + ), "keep_files" => [".git", ".svn"], "encoding" => "utf-8", "markdown_ext" => "markdown,mkdown,mkdn,mkd,md", diff --git a/lib/jekyll/entry_filter.rb b/lib/jekyll/entry_filter.rb index 6063607e..5f3431d8 100644 --- a/lib/jekyll/entry_filter.rb +++ b/lib/jekyll/entry_filter.rb @@ -36,8 +36,7 @@ module Jekyll end def included?(entry) - glob_include?(site.include, - entry) + glob_include?(site.include, entry) end def special?(entry) @@ -50,14 +49,14 @@ module Jekyll end def excluded?(entry) - excluded = glob_include?(site.exclude, relative_to_source(entry)) - if excluded - Jekyll.logger.debug( - "EntryFilter:", - "excluded #{relative_to_source(entry)}" - ) + glob_include?(site.exclude, relative_to_source(entry)).tap do |excluded| + if excluded + Jekyll.logger.debug( + "EntryFilter:", + "excluded #{relative_to_source(entry)}" + ) + end end - excluded end # -- diff --git a/test/test_configuration.rb b/test/test_configuration.rb index b0b34cce..696fc3e9 100644 --- a/test/test_configuration.rb +++ b/test/test_configuration.rb @@ -52,6 +52,14 @@ class TestConfiguration < JekyllUnitTest should "exclude node_modules" do assert_includes Configuration.from({})["exclude"], "node_modules" end + + should "exclude ruby vendor directories" do + exclude = Configuration.from({})["exclude"] + assert_includes exclude, "vendor/bundle/" + assert_includes exclude, "vendor/cache/" + assert_includes exclude, "vendor/gems/" + assert_includes exclude, "vendor/ruby/" + end end context "#add_default_collections" do