From 63ef902ad8f5ecfc849137f24a98dddf5bed055a Mon Sep 17 00:00:00 2001 From: Martin Vassor Date: Sun, 21 Jul 2024 22:00:30 +0100 Subject: [PATCH] Rename no_robots and no_sitemap into generate_robots_txt and generate_sitemap (default to true) --- components/config/src/config/mod.rs | 64 ++++++++++++++----- components/site/src/lib.rs | 4 +- .../getting-started/configuration.md | 8 +-- 3 files changed, 55 insertions(+), 21 deletions(-) diff --git a/components/config/src/config/mod.rs b/components/config/src/config/mod.rs index 467eabec1c..5581d1a483 100644 --- a/components/config/src/config/mod.rs +++ b/components/config/src/config/mod.rs @@ -99,9 +99,9 @@ pub struct Config { /// All user params set in `[extra]` in the config pub extra: HashMap, /// Disable the generation of Sitemap.xml - pub no_sitemap: bool, + pub generate_sitemap: bool, /// Disable the generation of robots.txt - pub no_robots: bool, + pub generate_robots_txt: bool, } #[derive(Serialize)] @@ -121,8 +121,8 @@ pub struct SerializedConfig<'a> { extra: &'a HashMap, markdown: &'a markup::Markdown, search: search::SerializedSearch<'a>, - no_sitemap: bool, - no_robots: bool, + generate_sitemap: bool, + generate_robots_txt: bool, } impl Config { @@ -338,8 +338,8 @@ impl Config { extra: &self.extra, markdown: &self.markdown, search: self.search.serialize(), - no_sitemap: self.no_sitemap, - no_robots: self.no_robots, + generate_sitemap: self.generate_sitemap, + generate_robots_txt: self.generate_robots_txt, } } } @@ -403,8 +403,8 @@ impl Default for Config { search: search::Search::default(), markdown: markup::Markdown::default(), extra: HashMap::new(), - no_sitemap: false, - no_robots: false, + generate_sitemap: true, + generate_robots_txt: true, } } } @@ -1004,33 +1004,67 @@ feed_filename = "test.xml" } #[test] - fn parse_no_sitemap() { + fn parse_generate_sitemap_true() { let config = r#" title = "My Site" base_url = "example.com" -no_sitemap = true +generate_sitemap = true "#; let config = Config::parse(config).unwrap(); - assert!(config.no_sitemap); + assert!(config.generate_sitemap); } #[test] - fn default_no_sitemap_false() { + fn parse_generate_sitemap_false() { let config = r#" title = "My Site" base_url = "example.com" +generate_sitemap = false "#; let config = Config::parse(config).unwrap(); - assert!(!config.no_sitemap); + assert!(!config.generate_sitemap); } #[test] - fn default_no_robots_false() { + fn default_no_sitemap_true() { let config = r#" title = "My Site" base_url = "example.com" "#; let config = Config::parse(config).unwrap(); - assert!(!config.no_robots); + assert!(config.generate_sitemap); + } + + #[test] + fn parse_generate_robots_true() { + let config = r#" +title = "My Site" +base_url = "example.com" +generate_robots_txt = true +"#; + let config = Config::parse(config).unwrap(); + assert!(config.generate_robots_txt); + } + + #[test] + fn parse_generate_robots_false() { + let config = r#" +title = "My Site" +base_url = "example.com" +generate_robots_txt = false +"#; + let config = Config::parse(config).unwrap(); + assert!(!config.generate_robots_txt); + } + + + #[test] + fn default_no_robots_true() { + let config = r#" +title = "My Site" +base_url = "example.com" +"#; + let config = Config::parse(config).unwrap(); + assert!(config.generate_robots_txt); } } diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 27a332dc38..edb4f4e7e2 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -742,7 +742,7 @@ impl Site { start = log_time(start, "Rendered sections"); self.render_orphan_pages()?; start = log_time(start, "Rendered orphan pages"); - if !self.config.no_sitemap { + if self.config.generate_sitemap{ self.render_sitemap()?; start = log_time(start, "Rendered sitemap"); } @@ -771,7 +771,7 @@ impl Site { start = log_time(start, "Rendered themes css"); self.render_404()?; start = log_time(start, "Rendered 404"); - if !self.config.no_robots { + if self.config.generate_robots_txt { self.render_robots()?; start = log_time(start, "Rendered robots.txt"); } diff --git a/docs/content/documentation/getting-started/configuration.md b/docs/content/documentation/getting-started/configuration.md index 5cddfd8619..95eef65a86 100644 --- a/docs/content/documentation/getting-started/configuration.md +++ b/docs/content/documentation/getting-started/configuration.md @@ -100,11 +100,11 @@ taxonomies = [] # content for `default_language`. build_search_index = false -# When set to "true", Sitemap.xml is not generated (default: false) -no_sitemap = false +# When set to "false", Sitemap.xml is not generated (default: true) +generate_sitemap = false -# When set to "true", robots.txt is not generated (default: false) -no_robots = false +# When set to "false", robots.txt is not generated (default: true) +generate_robots_txt = false # Configuration of the Markdown rendering [markdown]