This repository was archived by the owner on Apr 12, 2025. It is now read-only.
File tree Expand file tree Collapse file tree 6 files changed +56
-2
lines changed Expand file tree Collapse file tree 6 files changed +56
-2
lines changed Original file line number Diff line number Diff line change @@ -19,6 +19,10 @@ Layout/LineEndStringConcatenationIndentation:
1919Lint/EmptyInPattern :
2020 Enabled : false
2121
22+ Metrics/AbcSize :
23+ IgnoredMethods :
24+ - generate # in generator.rb
25+
2226Naming/InclusiveLanguage :
2327 Enabled : false
2428Naming/MemoizedInstanceVariableName :
Original file line number Diff line number Diff line change 1- ## HEAD
1+ ## 0.17.0 / 2022-10-14
22
33### Documentation
44
88
99 * Add Ruby 3.1 to the CI matrix (#365 )
1010
11+ ### Minor Enhancements
12+
13+ * Allow disabling of jekyll-feed while in development (#370 )
14+
1115## 0.16.0 / 2022-01-03
1216
1317### Minor Enhancements
Original file line number Diff line number Diff line change @@ -246,6 +246,16 @@ feed:
246246
247247Note that if you include a tag that is excluded a feed will not be generated for it.
248248
249+ # # Skip development
250+
251+ Use `disable_in_development : true` if you want to turn off feed generation when `jekyll.environment == "development"`,
252+ but don't want to remove the plugin (so you don't accidentally commit the removal). Default value is `false`.
253+
254+ ` ` ` yml
255+ feed:
256+ disable_in_development: true
257+ ` ` `
258+
249259# # Contributing
250260
2512611. Fork it (https://github.com/jekyll/jekyll-feed/fork)
Original file line number Diff line number Diff line change @@ -8,6 +8,10 @@ class Generator < Jekyll::Generator
88 # Main plugin action, called by Jekyll-core
99 def generate ( site )
1010 @site = site
11+ if disabled_in_development?
12+ Jekyll . logger . info "Jekyll Feed:" , "Skipping feed generation in development"
13+ return
14+ end
1115 collections . each do |name , meta |
1216 Jekyll . logger . info "Jekyll Feed:" , "Generating feed for #{ name } "
1317 ( meta [ "categories" ] + [ nil ] ) . each do |category |
@@ -137,5 +141,9 @@ def normalize_posts_meta(hash)
137141 config [ "path" ] ||= hash [ "posts" ] [ "path" ]
138142 hash
139143 end
144+
145+ def disabled_in_development?
146+ config && config [ "disable_in_development" ] && Jekyll . env == "development"
147+ end
140148 end
141149end
Original file line number Diff line number Diff line change 22
33module Jekyll
44 module Feed
5- VERSION = "0.16 .0e"
5+ VERSION = "0.17 .0e"
66 end
77end
Original file line number Diff line number Diff line change 2727 let ( :contents ) { File . read ( dest_dir ( "feed.xml" ) ) }
2828 let ( :context ) { make_context ( :site => site ) }
2929 let ( :feed_meta ) { Liquid ::Template . parse ( "{% feed_meta %}" ) . render! ( context , { } ) }
30+ let ( :jekyll_env ) { "development" }
3031
3132 before ( :each ) do
33+ allow ( Jekyll ) . to receive ( :env ) . and_return ( jekyll_env )
3234 site . process
3335 end
3436
@@ -726,4 +728,30 @@ def to_s
726728 end
727729 end
728730 end
731+
732+ context "with skip_development" do
733+ let ( :overrides ) do
734+ {
735+ "feed" => {
736+ "disable_in_development" => true
737+ } ,
738+ }
739+ end
740+
741+ context "in production environment" do
742+ let ( :jekyll_env ) { "production" }
743+
744+ it "generates a feed as normal" do
745+ expect ( Pathname . new ( dest_dir ( "feed.xml" ) ) ) . to exist
746+ end
747+ end
748+
749+ context "in development environment" do
750+ let ( :jekyll_env ) { "development" }
751+
752+ it "does not generate a feed" do
753+ expect ( Pathname . new ( dest_dir ( "feed.xml" ) ) ) . not_to exist
754+ end
755+ end
756+ end
729757end
You can’t perform that action at this time.
0 commit comments