From 0a5181d6212921d99be73eb48ae02ce1bde85ef5 Mon Sep 17 00:00:00 2001 From: Musee Ullah Date: Tue, 12 Jan 2021 20:02:51 -0600 Subject: [PATCH 001/113] Ensure minified HTML is truncated before converting to String Closes #1304 --- components/utils/src/minify.rs | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/components/utils/src/minify.rs b/components/utils/src/minify.rs index 0073585f..a0513262 100644 --- a/components/utils/src/minify.rs +++ b/components/utils/src/minify.rs @@ -6,8 +6,8 @@ pub fn html(html: String) -> Result { let mut input_bytes = html.as_bytes().to_vec(); match with_friendly_error(&mut input_bytes, cfg) { - Ok(len) => match std::str::from_utf8(&input_bytes) { - Ok(result) => Ok(result[..len].to_string()), + Ok(len) => match std::str::from_utf8(&input_bytes[..len]) { + Ok(result) => Ok(result.to_string()), Err(err) => bail!("Failed to convert bytes to string : {}", err), }, Err(minify_error) => { @@ -47,4 +47,16 @@ mod tests { let res = html(input.to_owned()).unwrap(); assert_eq!(res, expected); } + + // https://github.com/getzola/zola/issues/1304 + #[test] + fn can_minify_multibyte_characters() { + let input = r#" +俺が好きなのはキツネの…ケツねw +ー丁寧なインタネット生活の人より +"#; + let expected = r#"俺が好きなのはキツネの…ケツねw ー丁寧なインタネット生活の人より"#; + let res = html(input.to_owned()).unwrap(); + assert_eq!(res, expected); + } } From 108986ba6b2fc301344bdcd1a8c63c0be798c835 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 9 Jan 2021 14:54:18 +0100 Subject: [PATCH 002/113] Next version --- Cargo.lock | 2 +- Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 5225d59f..fbe36145 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3243,7 +3243,7 @@ dependencies = [ [[package]] name = "zola" -version = "0.13.0" +version = "0.14.0" dependencies = [ "atty", "chrono", diff --git a/Cargo.toml b/Cargo.toml index 5445f5c7..7f813bfe 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zola" -version = "0.13.0" +version = "0.14.0" authors = ["Vincent Prouillet "] edition = "2018" license = "MIT" From 347208f24e1179591345c0f46ee52c822008d22c Mon Sep 17 00:00:00 2001 From: southerntofu Date: Fri, 15 Jan 2021 21:36:07 +0100 Subject: [PATCH 003/113] serve command respects mime types (closes #1308) --- Cargo.lock | 11 +++++++++++ Cargo.toml | 2 ++ src/cmd/serve.rs | 9 +++++++-- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index fbe36145..190754a4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1355,6 +1355,16 @@ version = "0.3.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" +[[package]] +name = "mime_guess" +version = "2.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2684d4c2e97d99848d30b324b00c8fcc7e5c897b7cbb5819b09e7c90e8baf212" +dependencies = [ + "mime", + "unicase", +] + [[package]] name = "minify-html" version = "0.4.1" @@ -3254,6 +3264,7 @@ dependencies = [ "globset", "hyper", "lazy_static", + "mime_guess", "notify", "open", "percent-encoding", diff --git a/Cargo.toml b/Cargo.toml index 7f813bfe..33ec011b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -37,6 +37,8 @@ open = "1.2" globset = "0.4" relative-path = "1" serde_json = "1.0" +# For mimetype detection in serve mode +mime_guess = "2.0" site = { path = "components/site" } errors = { path = "components/errors" } diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index 39ab47f9..122f83d4 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -32,6 +32,7 @@ use hyper::header; use hyper::server::Server; use hyper::service::{make_service_fn, service_fn}; use hyper::{Body, Method, Request, Response, StatusCode}; +use mime_guess::from_path as mimetype_from_path; use chrono::prelude::*; use notify::{watcher, RecursiveMode, Watcher}; @@ -109,7 +110,7 @@ async fn handle_request(req: Request, mut root: PathBuf) -> Result match err.kind() { @@ -125,7 +126,11 @@ async fn handle_request(req: Request, mut root: PathBuf) -> Result contents, }; - Ok(Response::builder().status(StatusCode::OK).body(Body::from(contents)).unwrap()) + Ok(Response::builder() + .status(StatusCode::OK) + .header("Content-Type", mimetype_from_path(&root).first_or_octet_stream().essence_str()) + .body(Body::from(contents)) + .unwrap()) } fn livereload_js() -> Response { From 96fb798a4ac3a3a2ee1b22430775c73fa3ccb204 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sun, 17 Jan 2021 09:41:33 +0100 Subject: [PATCH 004/113] Update test-case --- Cargo.lock | 5 +++-- components/front_matter/Cargo.toml | 6 +----- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 190754a4..c5118b22 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2668,8 +2668,9 @@ dependencies = [ [[package]] name = "test-case" -version = "1.0.0" -source = "git+https://github.com/frondeus/test-case#65b6fb60c69054950a149b64a0a9f042c0e4fd59" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "956044ef122917dde830c19dec5f76d0670329fde4104836d62ebcb14f4865f1" dependencies = [ "cfg-if 1.0.0", "proc-macro2", diff --git a/components/front_matter/Cargo.toml b/components/front_matter/Cargo.toml index c46d3b11..15b8e650 100644 --- a/components/front_matter/Cargo.toml +++ b/components/front_matter/Cargo.toml @@ -18,8 +18,4 @@ errors = { path = "../errors" } utils = { path = "../utils" } [dev-dependencies] -# Remove from git patch when 1.0.1 is released -# https://github.com/frondeus/test-case/issues/62 -# test-case = "1.0" -test-case = { git = "https://github.com/frondeus/test-case" } - +test-case = "1" From 14366dafc649f54b5c4407c0b36505c5180a58d4 Mon Sep 17 00:00:00 2001 From: southerntofu <52931252+southerntofu@users.noreply.github.com> Date: Mon, 18 Jan 2021 08:35:17 +0000 Subject: [PATCH 005/113] Fix fallback to syntax highlighting theme (closes #1309) (#1312) * Highlight fallback from extra syntaxes to the theme (close #1309) * Warning when codeblock language is unknown and cannot be highlighted * page/section path in codeblock language missing warning Co-authored-by: southerntofu --- components/config/src/highlighting.rs | 39 +++++++++++-------- components/rendering/src/markdown.rs | 1 + .../rendering/src/markdown/codeblock.rs | 25 ++++++++---- 3 files changed, 41 insertions(+), 24 deletions(-) diff --git a/components/config/src/highlighting.rs b/components/config/src/highlighting.rs index 2d733d10..bfc0245b 100644 --- a/components/config/src/highlighting.rs +++ b/components/config/src/highlighting.rs @@ -16,29 +16,34 @@ lazy_static! { from_binary(include_bytes!("../../../sublime/themes/all.themedump")); } +pub enum HighlightSource { + Theme, + Extra, + Plain, + NotFound, +} + /// Returns the highlighter and whether it was found in the extra or not -pub fn get_highlighter(language: Option<&str>, config: &Config) -> (HighlightLines<'static>, bool) { +pub fn get_highlighter(language: Option<&str>, config: &Config) -> (HighlightLines<'static>, HighlightSource) { let theme = &THEME_SET.themes[config.highlight_theme()]; - let mut in_extra = false; if let Some(ref lang) = language { - let syntax = if let Some(ref extra) = config.markdown.extra_syntax_set { - let s = extra.find_syntax_by_token(lang); - if s.is_some() { - in_extra = true; + if let Some(ref extra_syntaxes) = config.markdown.extra_syntax_set { + if let Some(syntax) = extra_syntaxes.find_syntax_by_token(lang) { + return (HighlightLines::new(syntax, theme), HighlightSource::Extra); } - s - } else { - // The JS syntax hangs a lot... the TS syntax is probably better anyway. - // https://github.com/getzola/zola/issues/1241 - // https://github.com/getzola/zola/issues/1211 - // https://github.com/getzola/zola/issues/1174 - let hacked_lang = if *lang == "js" || *lang == "javascript" { "ts" } else { lang }; - SYNTAX_SET.find_syntax_by_token(hacked_lang) } - .unwrap_or_else(|| SYNTAX_SET.find_syntax_plain_text()); - (HighlightLines::new(syntax, theme), in_extra) + // The JS syntax hangs a lot... the TS syntax is probably better anyway. + // https://github.com/getzola/zola/issues/1241 + // https://github.com/getzola/zola/issues/1211 + // https://github.com/getzola/zola/issues/1174 + let hacked_lang = if *lang == "js" || *lang == "javascript" { "ts" } else { lang }; + if let Some(syntax) = SYNTAX_SET.find_syntax_by_token(hacked_lang) { + (HighlightLines::new(syntax, theme), HighlightSource::Theme) + } else { + (HighlightLines::new(SYNTAX_SET.find_syntax_plain_text(), theme), HighlightSource::NotFound) + } } else { - (HighlightLines::new(SYNTAX_SET.find_syntax_plain_text(), theme), false) + (HighlightLines::new(SYNTAX_SET.find_syntax_plain_text(), theme), HighlightSource::Plain) } } diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index 760e64be..96bcba4a 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -242,6 +242,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { } impl<'config> CodeBlock<'config> { - pub fn new(fence_info: &str, config: &'config Config, background: IncludeBackground) -> Self { + pub fn new(fence_info: &str, config: &'config Config, background: IncludeBackground, path: Option<&'config str>) -> Self { let fence_info = FenceSettings::new(fence_info); let theme = &THEME_SET.themes[config.highlight_theme()]; - let (highlighter, in_extra) = get_highlighter(fence_info.language, config); + let (highlighter, highlight_source) = get_highlighter(fence_info.language, config); + let extra_syntax_set = match highlight_source { + HighlightSource::Extra => config.markdown.extra_syntax_set.as_ref(), + HighlightSource::NotFound => { + // Language was not found, so it exists (safe unwrap) + let lang = fence_info.language.unwrap(); + if let Some(path) = path { + eprintln!("Warning: Highlight language {} not found in {}", lang, path); + } else { + eprintln!("Warning: Highlight language {} not found", lang); + } + None + }, + _ => None, + }; Self { highlighter, - extra_syntax_set: match in_extra { - true => config.markdown.extra_syntax_set.as_ref(), - false => None, - }, + extra_syntax_set, background, theme, From 6950759eda70391ff76d620c4da812743f7b32e0 Mon Sep 17 00:00:00 2001 From: southerntofu <52931252+southerntofu@users.noreply.github.com> Date: Wed, 20 Jan 2021 08:24:55 +0000 Subject: [PATCH 006/113] Internal links are supported in markdown filter (#1318) * Internal links are resolved in tera markdown filter (close #1296 #1316) * Add a test for internal links in markdown filter Co-authored-by: southerntofu --- CHANGELOG.md | 6 ++++ components/site/src/tpls.rs | 2 +- components/templates/src/filters.rs | 29 ++++++++++++++----- .../documentation/templates/overview.md | 4 +-- 4 files changed, 29 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 876bcc3f..05c2cdaa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## unreleased + +### Features + +- internal links are now resolved in the `markdown` filter in the templates (#1296 #1316) + ## 0.13.0 (2021-01-09) - Enable HTML minification diff --git a/components/site/src/tpls.rs b/components/site/src/tpls.rs index 2b224b57..2e5295ef 100644 --- a/components/site/src/tpls.rs +++ b/components/site/src/tpls.rs @@ -50,7 +50,7 @@ pub fn load_tera(path: &Path, config: &Config) -> Result { /// Adds global fns that are to be available to shortcodes while rendering markdown pub fn register_early_global_fns(site: &mut Site) { - site.tera.register_filter("markdown", filters::MarkdownFilter::new(site.config.clone())); + site.tera.register_filter("markdown", filters::MarkdownFilter::new(site.config.clone(), site.permalinks.clone())); site.tera.register_function( "get_url", diff --git a/components/templates/src/filters.rs b/components/templates/src/filters.rs index c9b6d6cd..731ecfd2 100644 --- a/components/templates/src/filters.rs +++ b/components/templates/src/filters.rs @@ -1,5 +1,6 @@ use std::collections::HashMap; use std::hash::BuildHasher; +use std::borrow::Cow; use base64::{decode, encode}; use config::Config; @@ -9,17 +10,19 @@ use tera::{to_value, try_get_value, Filter as TeraFilter, Result as TeraResult, #[derive(Debug)] pub struct MarkdownFilter { config: Config, + permalinks: HashMap, } impl MarkdownFilter { - pub fn new(config: Config) -> Self { - Self { config } + pub fn new(config: Config, permalinks: HashMap) -> Self { + Self { config, permalinks } } } impl TeraFilter for MarkdownFilter { fn filter(&self, value: &Value, args: &HashMap) -> TeraResult { - let context = RenderContext::from_config(&self.config); + let mut context = RenderContext::from_config(&self.config); + context.permalinks = Cow::Borrowed(&self.permalinks); let s = try_get_value!("markdown", "value", String, value); let inline = match args.get("inline") { Some(val) => try_get_value!("markdown", "inline", bool, val), @@ -69,7 +72,7 @@ mod tests { #[test] fn markdown_filter() { - let result = MarkdownFilter::new(Config::default()) + let result = MarkdownFilter::new(Config::default(), HashMap::new()) .filter(&to_value(&"# Hey").unwrap(), &HashMap::new()); assert!(result.is_ok()); assert_eq!(result.unwrap(), to_value(&"

Hey

\n").unwrap()); @@ -79,7 +82,7 @@ mod tests { fn markdown_filter_inline() { let mut args = HashMap::new(); args.insert("inline".to_string(), to_value(true).unwrap()); - let result = MarkdownFilter::new(Config::default()).filter( + let result = MarkdownFilter::new(Config::default(), HashMap::new()).filter( &to_value(&"Using `map`, `filter`, and `fold` instead of `for`").unwrap(), &args, ); @@ -92,7 +95,7 @@ mod tests { fn markdown_filter_inline_tables() { let mut args = HashMap::new(); args.insert("inline".to_string(), to_value(true).unwrap()); - let result = MarkdownFilter::new(Config::default()).filter( + let result = MarkdownFilter::new(Config::default(), HashMap::new()).filter( &to_value( &r#" |id|author_id| timestamp_created|title |content | @@ -118,16 +121,26 @@ mod tests { let md = "Hello :smile: ..."; let result = - MarkdownFilter::new(config.clone()).filter(&to_value(&md).unwrap(), &HashMap::new()); + MarkdownFilter::new(config.clone(), HashMap::new()).filter(&to_value(&md).unwrap(), &HashMap::new()); assert!(result.is_ok()); assert_eq!(result.unwrap(), to_value(&"

Hello https://google.com 😄 …

\n").unwrap()); let md = "```py\ni=0\n```"; - let result = MarkdownFilter::new(config).filter(&to_value(&md).unwrap(), &HashMap::new()); + let result = MarkdownFilter::new(config, HashMap::new()).filter(&to_value(&md).unwrap(), &HashMap::new()); assert!(result.is_ok()); assert!(result.unwrap().as_str().unwrap().contains("
Hello. Check out my blog!

\n").unwrap()); + } + #[test] fn base64_encode_filter() { // from https://tools.ietf.org/html/rfc4648#section-10 diff --git a/docs/content/documentation/templates/overview.md b/docs/content/documentation/templates/overview.md index 24fc0b5f..5b041980 100644 --- a/docs/content/documentation/templates/overview.md +++ b/docs/content/documentation/templates/overview.md @@ -64,9 +64,7 @@ Zola adds a few filters in addition to [those](https://tera.netlify.com/docs/#fi in Tera. ### markdown -Converts the given variable to HTML using Markdown. This doesn't apply any of the -features that Zola adds to Markdown; for example, internal links and shortcodes won't work. - +Converts the given variable to HTML using Markdown. Shortcodes won't work within this filter. By default, the filter will wrap all text in a paragraph. To disable this behaviour, you can pass `true` to the inline argument: From 92b5b4b3a57384f9f71a9c939d595cbbc0799718 Mon Sep 17 00:00:00 2001 From: David James Date: Wed, 20 Jan 2021 09:35:25 -0500 Subject: [PATCH 007/113] Add sort_by title (#1315) * Add sort_by=title * Remove old comment. * Remove println! debugging * Minor: text spacing * Use lexical_sort crate for sort_by title Co-authored-by: David James --- Cargo.lock | 16 ++++ components/front_matter/src/lib.rs | 2 + components/library/Cargo.toml | 1 + components/library/src/content/page.rs | 4 + components/library/src/content/ser.rs | 12 +++ components/library/src/library.rs | 21 ++++- components/library/src/sorting.rs | 81 ++++++++++++++++++- docs/content/documentation/content/section.md | 31 +++++-- 8 files changed, 157 insertions(+), 11 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c5118b22..6d13072c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -51,6 +51,12 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "any_ascii" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70033777eb8b5124a81a1889416543dddef2de240019b674c81285a2635a7e1e" + [[package]] name = "arrayvec" version = "0.5.2" @@ -1160,6 +1166,15 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "lexical-sort" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c09e4591611e231daf4d4c685a66cb0410cc1e502027a20ae55f2bb9e997207a" +dependencies = [ + "any_ascii", +] + [[package]] name = "libc" version = "0.2.82" @@ -1176,6 +1191,7 @@ dependencies = [ "front_matter", "globset", "lazy_static", + "lexical-sort", "rayon", "regex", "rendering", diff --git a/components/front_matter/src/lib.rs b/components/front_matter/src/lib.rs index 834747b3..5b54fd51 100644 --- a/components/front_matter/src/lib.rs +++ b/components/front_matter/src/lib.rs @@ -46,6 +46,8 @@ impl RawFrontMatter<'_> { pub enum SortBy { /// Most recent to oldest Date, + /// Sort by title + Title, /// Lower weight comes first Weight, /// No sorting diff --git a/components/library/Cargo.toml b/components/library/Cargo.toml index bfc421f4..81799616 100644 --- a/components/library/Cargo.toml +++ b/components/library/Cargo.toml @@ -13,6 +13,7 @@ serde = "1" serde_derive = "1" regex = "1" lazy_static = "1" +lexical-sort = "0.3" front_matter = { path = "../front_matter" } config = { path = "../config" } diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 5e7578b1..c453b87f 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -62,6 +62,10 @@ pub struct Page { pub earlier: Option, /// The later page, for pages sorted by date pub later: Option, + /// The previous page, for pages sorted by title + pub title_prev: Option, + /// The next page, for pages sorted by title + pub title_next: Option, /// The lighter page, for pages sorted by weight pub lighter: Option, /// The heavier page, for pages sorted by weight diff --git a/components/library/src/content/ser.rs b/components/library/src/content/ser.rs index 1f28acd2..cf951b01 100644 --- a/components/library/src/content/ser.rs +++ b/components/library/src/content/ser.rs @@ -92,6 +92,8 @@ pub struct SerializingPage<'a> { heavier: Option>>, earlier: Option>>, later: Option>>, + title_prev: Option>>, + title_next: Option>>, translations: Vec>, } @@ -119,6 +121,12 @@ impl<'a> SerializingPage<'a> { let later = page .later .map(|k| Box::new(Self::from_page_basic(pages.get(k).unwrap(), Some(library)))); + let title_prev = page + .title_prev + .map(|k| Box::new(Self::from_page_basic(pages.get(k).unwrap(), Some(library)))); + let title_next = page + .title_next + .map(|k| Box::new(Self::from_page_basic(pages.get(k).unwrap(), Some(library)))); let ancestors = page .ancestors .iter() @@ -155,6 +163,8 @@ impl<'a> SerializingPage<'a> { heavier, earlier, later, + title_prev, + title_next, translations, } } @@ -217,6 +227,8 @@ impl<'a> SerializingPage<'a> { heavier: None, earlier: None, later: None, + title_prev: None, + title_next: None, translations, } } diff --git a/components/library/src/library.rs b/components/library/src/library.rs index d75b0aa3..553df543 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -6,7 +6,7 @@ use slotmap::{DefaultKey, DenseSlotMap}; use front_matter::SortBy; use crate::content::{Page, Section}; -use crate::sorting::{find_siblings, sort_pages_by_date, sort_pages_by_weight}; +use crate::sorting::{find_siblings, sort_pages_by_date, sort_pages_by_title, sort_pages_by_weight}; use config::Config; // Like vec! but for HashSet @@ -282,6 +282,21 @@ impl Library { sort_pages_by_date(data) } + SortBy::Title => { + let data = section + .pages + .iter() + .map(|k| { + if let Some(page) = self.pages.get(*k) { + (k, page.meta.title.as_deref(), page.permalink.as_ref()) + } else { + unreachable!("Sorting got an unknown page") + } + }) + .collect(); + + sort_pages_by_title(data) + } SortBy::Weight => { let data = section .pages @@ -312,6 +327,10 @@ impl Library { page.earlier = val2; page.later = val1; } + SortBy::Title => { + page.title_prev = val1; + page.title_next = val2; + } SortBy::Weight => { page.lighter = val1; page.heavier = val2; diff --git a/components/library/src/sorting.rs b/components/library/src/sorting.rs index 6213c880..01571e1f 100644 --- a/components/library/src/sorting.rs +++ b/components/library/src/sorting.rs @@ -1,6 +1,7 @@ use std::cmp::Ordering; use chrono::NaiveDateTime; +use lexical_sort::natural_lexical_cmp; use rayon::prelude::*; use slotmap::DefaultKey; @@ -39,6 +40,28 @@ pub fn sort_pages_by_date( (can_be_sorted.iter().map(|p| *p.0).collect(), cannot_be_sorted.iter().map(|p| *p.0).collect()) } +/// Takes a list of (page key, title, permalink) and sort them by title if possible. +/// Uses the a natural lexical comparison as defined by the lexical_sort crate. +/// Pages without title will be put in the unsortable bucket. +/// The permalink is used to break ties. +pub fn sort_pages_by_title( + pages: Vec<(&DefaultKey, Option<&str>, &str)>, +) -> (Vec, Vec) { + let (mut can_be_sorted, cannot_be_sorted): (Vec<_>, Vec<_>) = + pages.into_par_iter().partition(|page| page.1.is_some()); + + can_be_sorted.par_sort_unstable_by(|a, b| { + let ord = natural_lexical_cmp(a.1.unwrap(), b.1.unwrap()); + if ord == Ordering::Equal { + a.2.cmp(&b.2) + } else { + ord + } + }); + + (can_be_sorted.iter().map(|p| *p.0).collect(), cannot_be_sorted.iter().map(|p| *p.0).collect()) +} + /// Takes a list of (page key, weight, permalink) and sort them by weight if possible /// Pages without weight will be put in the unsortable bucket /// The permalink is used to break ties @@ -60,7 +83,8 @@ pub fn sort_pages_by_weight( (can_be_sorted.iter().map(|p| *p.0).collect(), cannot_be_sorted.iter().map(|p| *p.0).collect()) } -/// Find the lighter/heavier and earlier/later pages for all pages having a date/weight +/// Find the lighter/heavier, earlier/later, and title_prev/title_next +/// pages for all pages having a date/weight/title pub fn find_siblings( sorted: &[DefaultKey], ) -> Vec<(DefaultKey, Option, Option)> { @@ -71,12 +95,12 @@ pub fn find_siblings( let mut with_siblings = (*key, None, None); if i > 0 { - // lighter / later + // lighter / later / title_prev with_siblings.1 = Some(sorted[i - 1]); } if i < length - 1 { - // heavier/earlier + // heavier / earlier / title_next with_siblings.2 = Some(sorted[i + 1]); } res.push(with_siblings); @@ -90,7 +114,7 @@ mod tests { use slotmap::DenseSlotMap; use std::path::PathBuf; - use super::{find_siblings, sort_pages_by_date, sort_pages_by_weight}; + use super::{find_siblings, sort_pages_by_date, sort_pages_by_title, sort_pages_by_weight}; use crate::content::Page; use front_matter::PageFrontMatter; @@ -101,6 +125,12 @@ mod tests { Page::new("content/hello.md", front_matter, &PathBuf::new()) } + fn create_page_with_title(title: &str) -> Page { + let mut front_matter = PageFrontMatter::default(); + front_matter.title = Some(title.to_string()); + Page::new("content/hello.md", front_matter, &PathBuf::new()) + } + fn create_page_with_weight(weight: usize) -> Page { let mut front_matter = PageFrontMatter::default(); front_matter.weight = Some(weight); @@ -129,6 +159,49 @@ mod tests { assert_eq!(pages[2], key2); } + #[test] + fn can_sort_by_titles() { + let titles = vec![ + "bagel", + "track_3", + "microkernel", + "métro", + "BART", + "Underground", + "track_13", + "μ-kernel", + "meter", + "track_1", + ]; + let pages: Vec = titles.iter().map( + |title| create_page_with_title(title) + ).collect(); + let mut dense = DenseSlotMap::new(); + let keys: Vec<_> = pages.iter().map( + |p| dense.insert(p) + ).collect(); + let input: Vec<_> = pages.iter().enumerate().map( + |(i, page)| (&keys[i], page.meta.title.as_deref(), page.permalink.as_ref()) + ).collect(); + let (sorted, _) = sort_pages_by_title(input); + // Should be sorted by title + let sorted_titles: Vec<_> = sorted.iter().map( + |key| dense.get(*key).unwrap().meta.title.as_ref().unwrap() + ).collect(); + assert_eq!(sorted_titles, vec![ + "bagel", + "BART", + "μ-kernel", + "meter", + "métro", + "microkernel", + "track_1", + "track_3", + "track_13", + "Underground", + ]); + } + #[test] fn can_sort_by_weight() { let mut dense = DenseSlotMap::new(); diff --git a/docs/content/documentation/content/section.md b/docs/content/documentation/content/section.md index fd9f9916..f7f1d87b 100644 --- a/docs/content/documentation/content/section.md +++ b/docs/content/documentation/content/section.md @@ -19,7 +19,7 @@ Any non-Markdown file in a section directory is added to the `assets` collection Markdown file using relative links. ## Drafting -Just like pages sections can be drafted by setting the `draft` option in the front matter. By default this is not done. When a section is drafted it's descendants like pages, subsections and assets will not be processed unless the `--drafts` flag is passed. Note that even pages that don't have a `draft` status will not be processed if one of their parent sections is drafted. +Just like pages sections can be drafted by setting the `draft` option in the front matter. By default this is not done. When a section is drafted it's descendants like pages, subsections and assets will not be processed unless the `--drafts` flag is passed. Note that even pages that don't have a `draft` status will not be processed if one of their parent sections is drafted. ## Front matter @@ -48,7 +48,7 @@ description = "" # A draft section is only loaded if the `--drafts` flag is passed to `zola build`, `zola serve` or `zola check`. draft = false -# Used to sort pages by "date", "weight" or "none". See below for more information. +# Used to sort pages by "date", "title, "weight", or "none". See below for more information. sort_by = "none" # Used by the parent section to order its subsections. @@ -91,7 +91,7 @@ render = true # Useful for the same reason as `render` but when you don't want a 404 when # landing on the root section page. # Example: redirect_to = "documentation/content/overview" -redirect_to = +redirect_to = # If set to "true", the section will pass its pages on to the parent section. Defaults to `false`. # Useful when the section shouldn't split up the parent section, like @@ -124,6 +124,7 @@ You can also change the pagination path (the word displayed while paginated in t by setting the `paginate_path` variable, which defaults to `page`. ## Sorting + It is very common for Zola templates to iterate over pages or sections to display all pages/sections in a given directory. Consider a very simple example: a `blog` directory with three files: `blog/Post_1.md`, @@ -139,7 +140,7 @@ create a list of links to the posts, a simple template might look like this: This would iterate over the posts in the order specified by the `sort_by` variable set in the `_index.md` page for the corresponding section. The `sort_by` variable can be given one of three values: `date`, -`weight` or `none`. If `sort_by` is not set, the pages will be +`title`, `weight` or `none`. If `sort_by` is not set, the pages will be sorted in the `none` order, which is not intended for sorted content. Any page that is missing the data it needs to be sorted will be ignored and @@ -159,6 +160,20 @@ top of the list) to the oldest (at the bottom of the list). Each page will get `page.earlier` and `page.later` variables that contain the pages with earlier and later dates, respectively. +### `title` +This will sort all pages by their `title` field in natural lexical order, as +defined by `natural_lexical_cmp` in the [lexical-sort] crate. Each page will +get `page.title_prev` and `page.title_next` variables that contain the pages +with previous and next titles, respectively. + +For example, here is a natural lexical ordering: "bachata, BART, bolero, +μ-kernel, meter, Métro, Track-2, Track-3, Track-13, underground". Notice how +special characters and numbers are sorted reasonably. This is better than +the standard sorting: "BART, Métro, Track-13, Track-2, Track-3, bachata, +bolero, meter, underground, μ-kernel". + +[lexical-sort]: https://docs.rs/lexical-sort + ### `weight` This will be sort all pages by their `weight` field, from lightest weight (at the top of the list) to heaviest (at the bottom of the list). Each @@ -172,9 +187,13 @@ pages sorted by weight will be sorted from lightest (at the top) to heaviest (at the bottom); pages sorted by date will be sorted from oldest (at the top) to newest (at the bottom). -`reverse` has no effect on `page.later`/`page.earlier` or `page.heavier`/`page.lighter`. +`reverse` has no effect on: -If the section is paginated the `paginate_reversed=true` in the front matter of the relevant section should be set instead of using the filter. +* `page.later` / `page.earlier`, +* `page.title_prev` / `page.title_next`, or +* `page.heavier` / `page.lighter`. + +If the section is paginated the `paginate_reversed=true` in the front matter of the relevant section should be set instead of using the filter. ## Sorting subsections Sorting sections is a bit less flexible: sections can only be sorted by `weight`, From 15e0ae6699ca345b5868c86024df934a210d8691 Mon Sep 17 00:00:00 2001 From: southerntofu <52931252+southerntofu@users.noreply.github.com> Date: Tue, 2 Feb 2021 19:19:44 +0000 Subject: [PATCH 008/113] load_data() template function takes a `required` boolean flag (closes #1209) (#1306) * load_data() template function takes a `required` boolean flag * Update tests for load_data() * Add test to make sure invalid data always fails in load_data * Better documentation, fixing a few typos Co-authored-by: southerntofu --- .../templates/src/global_fns/load_data.rs | 123 ++++++++++++++---- .../documentation/templates/overview.md | 10 ++ 2 files changed, 109 insertions(+), 24 deletions(-) diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index b50e066e..0f74c648 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -72,11 +72,16 @@ impl OutputFormat { } impl DataSource { + /// Returns Some(DataSource) on success, from optional load_data() path/url arguments + /// Returns an Error when a URL could not be parsed and Ok(None) when the path + /// is missing, so that the load_data() function can decide whether this is an error + /// Note: if the signature of this function changes, please update LoadData::call() + /// so we don't mistakenly unwrap things over there fn from_args( path_arg: Option, url_arg: Option, content_path: &PathBuf, - ) -> Result { + ) -> Result> { if path_arg.is_some() && url_arg.is_some() { return Err(GET_DATA_ARGUMENT_ERROR_MESSAGE.into()); } @@ -84,14 +89,15 @@ impl DataSource { if let Some(path) = path_arg { let full_path = content_path.join(path); if !full_path.exists() { - return Err(format!("{} doesn't exist", full_path.display()).into()); + return Ok(None); } - return Ok(DataSource::Path(full_path)); + return Ok(Some(DataSource::Path(full_path))); } if let Some(url) = url_arg { return Url::parse(&url) .map(DataSource::Url) + .map(|x| Some(x)) .map_err(|e| format!("Failed to parse {} as url: {}", url, e).into()); } @@ -118,16 +124,6 @@ impl Hash for DataSource { } } -fn get_data_source_from_args( - content_path: &PathBuf, - args: &HashMap, -) -> Result { - let path_arg = optional_arg!(String, args.get("path"), GET_DATA_ARGUMENT_ERROR_MESSAGE); - let url_arg = optional_arg!(String, args.get("url"), GET_DATA_ARGUMENT_ERROR_MESSAGE); - - DataSource::from_args(path_arg, url_arg, content_path) -} - fn read_data_file(base_path: &PathBuf, full_path: PathBuf) -> Result { if !is_path_in_directory(&base_path, &full_path) .map_err(|e| format!("Failed to read data file {}: {}", full_path.display(), e))? @@ -194,7 +190,23 @@ impl LoadData { impl TeraFn for LoadData { fn call(&self, args: &HashMap) -> Result { - let data_source = get_data_source_from_args(&self.base_path, &args)?; + let required = if let Some(req) = optional_arg!(bool, args.get("required"), "`load_data`: `required` must be a boolean (true or false)") { req } else { true }; + let path_arg = optional_arg!(String, args.get("path"), GET_DATA_ARGUMENT_ERROR_MESSAGE); + let url_arg = optional_arg!(String, args.get("url"), GET_DATA_ARGUMENT_ERROR_MESSAGE); + let data_source = DataSource::from_args(path_arg.clone(), url_arg, &self.base_path)?; + + // If the file doesn't exist, source is None + match (&data_source, required) { + // If the file was not required, return a Null value to the template + (None, false) => { return Ok(Value::Null); }, + // If the file was required, error + (None, true) => { + // source is None only with path_arg (not URL), so path_arg is safely unwrap + return Err(format!("{} doesn't exist", &self.base_path.join(path_arg.unwrap()).display()).into()); + }, + _ => {}, + } + let data_source = data_source.unwrap(); let file_format = get_output_format_from_args(&args, &data_source)?; let cache_key = data_source.get_cache_key(&file_format); @@ -207,19 +219,29 @@ impl TeraFn for LoadData { let data = match data_source { DataSource::Path(path) => read_data_file(&self.base_path, path), DataSource::Url(url) => { - let response = response_client + match response_client .get(url.as_str()) .header(header::ACCEPT, file_format.as_accept_header()) .send() - .and_then(|res| res.error_for_status()) - .map_err(|e| match e.status() { - Some(status) => format!("Failed to request {}: {}", url, status), - None => format!("Could not get response status for url: {}", url), - })?; - response - .text() - .map_err(|e| format!("Failed to parse response from {}: {:?}", url, e).into()) - } + .and_then(|res| res.error_for_status()) { + Ok(r) => { + r.text() + .map_err(|e| format!("Failed to parse response from {}: {:?}", url, e).into()) + }, + Err(e) => { + if !required { + // HTTP error is discarded (because required=false) and + // Null value is returned to the template + return Ok(Value::Null); + } + Err(match e.status() { + Some(status) => format!("Failed to request {}: {}", url, status), + None => format!("Could not get response status for url: {}", url), + }.into()) + } + } + }, + // Now that we have discarded recoverable errors, we can unwrap the result }?; let result_value: Result = match file_format { @@ -392,6 +414,17 @@ mod tests { assert!(result.unwrap_err().to_string().contains("READMEE.md doesn't exist")); } + #[test] + fn doesnt_fail_when_missing_file_is_not_required() { + let static_fn = LoadData::new(PathBuf::from("../utils")); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("../../../READMEE.md").unwrap()); + args.insert("required".to_string(), to_value(false).unwrap()); + let result = static_fn.call(&args); + assert!(result.is_ok()); + assert_eq!(result.unwrap(), tera::Value::Null); + } + #[test] fn cant_load_outside_content_dir() { let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); @@ -490,6 +523,26 @@ mod tests { ); } + #[test] + fn doesnt_fail_when_request_404s_is_not_required() { + let _m = mock("GET", "/aazeow0kog") + .with_status(404) + .with_header("content-type", "text/plain") + .with_body("Not Found") + .create(); + + let url = format!("{}{}", mockito::server_url(), "/aazeow0kog"); + let static_fn = LoadData::new(PathBuf::new()); + let mut args = HashMap::new(); + args.insert("url".to_string(), to_value(&url).unwrap()); + args.insert("format".to_string(), to_value("json").unwrap()); + args.insert("required".to_string(), to_value(false).unwrap()); + let result = static_fn.call(&args); + assert!(result.is_ok()); + assert_eq!(result.unwrap(), tera::Value::Null); + } + + #[test] fn set_default_user_agent() { let user_agent = concat!(env!("CARGO_PKG_NAME"), "/", env!("CARGO_PKG_VERSION")); @@ -619,6 +672,28 @@ mod tests { } } + #[test] + fn bad_csv_should_result_in_error_even_when_not_required() { + let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("uneven_rows.csv").unwrap()); + args.insert("required".to_string(), to_value(false).unwrap()); + let result = static_fn.call(&args.clone()); + + assert!(result.is_err()); + + let error_kind = result.err().unwrap().kind; + match error_kind { + tera::ErrorKind::Msg(msg) => { + if msg != String::from("Error encountered when parsing csv records") { + panic!("Error message is wrong. Perhaps wrong error is being returned?"); + } + } + _ => panic!("Error encountered was not expected CSV error"), + } + } + + #[test] fn can_load_json() { let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); diff --git a/docs/content/documentation/templates/overview.md b/docs/content/documentation/templates/overview.md index 5b041980..086294d5 100644 --- a/docs/content/documentation/templates/overview.md +++ b/docs/content/documentation/templates/overview.md @@ -210,10 +210,20 @@ As a security precaution, if this file is outside the main site directory, your {% set data = load_data(path="content/blog/story/data.toml") %} ``` +The optional `required` boolean argument can be set to false so that missing data (HTTP error or local file not found) does not produce an error, but returns a null value instead. However, permission issues with a local file and invalid data that could not be parsed to the requested data format will still produce an error even with `required=false`. + +The snippet below outputs the HTML from a Wikipedia page, or "No data found" if the page was not reachable, or did not return a successful HTTP code: + +```jinja2 +{% set data = load_data(path="https://en.wikipedia.org/wiki/Commune_of_Paris", required=false) %} +{% if data %}{{ data | safe }}{% else %}No data found{% endif %} +``` + The optional `format` argument allows you to specify and override which data type is contained within the file specified in the `path` argument. Valid entries are `toml`, `json`, `csv`, `bibtex` or `plain`. If the `format` argument isn't specified, then the path extension is used. + ```jinja2 {% set data = load_data(path="content/blog/story/data.txt", format="json") %} ``` From 8e6c3f4fef786af681fa25b77a5ae5e3f34fba49 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 2 Feb 2021 20:20:39 +0100 Subject: [PATCH 009/113] Update changelog + deps --- CHANGELOG.md | 1 + Cargo.lock | 280 ++++++++++++++--------------- components/link_checker/Cargo.toml | 2 +- components/templates/Cargo.toml | 2 +- 4 files changed, 135 insertions(+), 150 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 05c2cdaa..8c486611 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ ### Features - internal links are now resolved in the `markdown` filter in the templates (#1296 #1316) +- Add a `required` argument to `load_data` so it can be allowed to fail ## 0.13.0 (2021-01-09) diff --git a/Cargo.lock b/Cargo.lock index 6d13072c..0099cb07 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -157,9 +157,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.4.0" +version = "3.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820" +checksum = "099e596ef14349721d9016f6b80dd3419ea1bf289ab9b44df8e4dfd3a005d5d9" [[package]] name = "byte-tools" @@ -181,9 +181,9 @@ checksum = "72feb31ffc86498dacdbd0fcebb56138e7177a8cc5cea4516031d15ae85a742e" [[package]] name = "bytemuck" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41aa2ec95ca3b5c54cf73c91acf06d24f4495d5f1b1c12506ae3483d646177ac" +checksum = "5a4bad0c5981acc24bc09e532f35160f952e35422603f0563cd7a73c2c2e65a0" [[package]] name = "byteorder" @@ -203,9 +203,9 @@ dependencies = [ [[package]] name = "bytes" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad1f8e949d755f9d79112b5bb46938e0ef9d3804a0b16dfab13aafcaa5f0fa72" +checksum = "b700ce4376041dcd0a327fd0097c41095743c4c8af8887265942faf1100bd040" [[package]] name = "cc" @@ -281,9 +281,9 @@ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" [[package]] name = "colored" -version = "1.9.3" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4ffc801dacf156c5854b9df4f425a626539c3a6ef7893cc0c5084a23f0b6c59" +checksum = "b3616f750b84d8f0de8a58bda93e08e2a81ad3f523089b05f1dffecab48c6cbd" dependencies = [ "atty", "lazy_static", @@ -583,9 +583,9 @@ checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" [[package]] name = "filetime" -version = "0.2.13" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c122a393ea57648015bf06fbd3d372378992e86b9ff5a7a497b076a28c79efe" +checksum = "1d34cfa13a63ae058bfa601fe9e313bbdb3746427c1459185464ce0fcf62e1e8" dependencies = [ "cfg-if 1.0.0", "libc", @@ -595,9 +595,9 @@ dependencies = [ [[package]] name = "flate2" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7411863d55df97a419aa64cb4d2f167103ea9d767e2c54a1868b7ac3f6b47129" +checksum = "cd3aec53de10fe96d7d8c565eb17f2c687bb5518a2ec453b5b1252964526abe0" dependencies = [ "cfg-if 1.0.0", "crc32fast", @@ -685,30 +685,30 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.9" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f01c61843314e95f96cc9245702248733a3a3d744e43e2e755e3c7af8348a0a9" +checksum = "f2d31b7ec7efab6eefc7c57233bb10b847986139d88cc2f5a02a1ae6871a1846" dependencies = [ "futures-core", ] [[package]] name = "futures-core" -version = "0.3.9" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db8d3b0917ff63a2a96173133c02818fac4a746b0a57569d3baca9ec0e945e08" +checksum = "79e5145dde8da7d1b3892dad07a9c98fc04bc39892b1ecc9692cf53e2b780a65" [[package]] name = "futures-io" -version = "0.3.9" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e37c1a51b037b80922864b8eed90692c5cd8abd4c71ce49b77146caa47f3253b" +checksum = "28be053525281ad8259d47e4de5de657b25e7bac113458555bb4b70bc6870500" [[package]] name = "futures-macro" -version = "0.3.9" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f8719ca0e1f3c5e34f3efe4570ef2c0610ca6da85ae7990d472e9cbfba13664" +checksum = "c287d25add322d9f9abdcdc5927ca398917996600182178774032e9f8258fedd" dependencies = [ "proc-macro-hack", "proc-macro2", @@ -718,24 +718,24 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.9" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6adabac1290109cfa089f79192fb6244ad2c3f1cc2281f3e1dd987592b71feb" +checksum = "caf5c69029bda2e743fddd0582d1083951d65cc9539aebf8812f36c3491342d6" [[package]] name = "futures-task" -version = "0.3.9" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a92a0843a2ff66823a8f7c77bffe9a09be2b64e533562c412d63075643ec0038" +checksum = "13de07eb8ea81ae445aca7b69f5f7bf15d7bf4912d8ca37d6645c77ae8a58d86" dependencies = [ "once_cell", ] [[package]] name = "futures-util" -version = "0.3.9" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "036a2107cdeb57f6d7322f1b6c363dad67cd63ca3b7d1b925bdf75bd5d96cda9" +checksum = "632a8cd0f2a4b3fdea1657f08bde063848c3bd00f9bbf6e256b8be78802e624b" dependencies = [ "futures-core", "futures-io", @@ -781,13 +781,13 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4060f4657be78b8e766215b02b18a2e862d83745545de804638e2b545e81aee6" +checksum = "c9495705279e7140bf035dde1f6e750c162df8b625267cd52cc44e0b156732c8" dependencies = [ "cfg-if 1.0.0", "libc", - "wasi 0.10.1+wasi-snapshot-preview1", + "wasi 0.10.2+wasi-snapshot-preview1", ] [[package]] @@ -846,7 +846,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6b67e66362108efccd8ac053abafc8b7a8d86a37e6e48fc4f6f7485eb5e9e6a5" dependencies = [ - "bytes 1.0.0", + "bytes 1.0.1", "fnv", "futures-core", "futures-sink", @@ -870,6 +870,12 @@ dependencies = [ "autocfg", ] +[[package]] +name = "hashbrown" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7afe4a420e3fe79967a00898cc1f4db7c8a49a9333a29f8a4bd76a253d5cd04" + [[package]] name = "heck" version = "0.3.2" @@ -881,9 +887,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.1.17" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aca5565f760fb5b220e499d72710ed156fdb74e631659e99377d9ebfbd13ae8" +checksum = "322f4de77956e22ed0e5032c359a0f1273f1f7f0d79bfa3b8ffbc730d7fbcc5c" dependencies = [ "libc", ] @@ -908,7 +914,7 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7245cd7449cc792608c3c8a9eaf69bd4eabbabf802713748fd739c98b82f0747" dependencies = [ - "bytes 1.0.0", + "bytes 1.0.1", "fnv", "itoa", ] @@ -919,15 +925,15 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2861bd27ee074e5ee891e8b539837a9430012e249d7f0ca2d795650f579c1994" dependencies = [ - "bytes 1.0.0", + "bytes 1.0.1", "http", ] [[package]] name = "httparse" -version = "1.3.4" +version = "1.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9" +checksum = "615caabe2c3160b313d52ccc905335f4ed5f10881dd63dc5699d47e90be85691" [[package]] name = "httpdate" @@ -947,7 +953,7 @@ version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "12219dc884514cb4a6a03737f4413c0e01c23a1b059b0156004b23f1e19dccbe" dependencies = [ - "bytes 1.0.0", + "bytes 1.0.1", "futures-channel", "futures-core", "futures-util", @@ -957,7 +963,7 @@ dependencies = [ "httparse", "httpdate", "itoa", - "pin-project 1.0.3", + "pin-project 1.0.4", "socket2", "tokio", "tower-service", @@ -1043,12 +1049,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.5.2" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e47a3566dd4fd4eec714ae6ceabdee0caec795be835c223d92c2d40f1e8cf1c" +checksum = "4fb1fa934250de4de8aef298d81c729a7d33d8c239daa3a7575e6b92bfc7313b" dependencies = [ "autocfg", - "hashbrown", + "hashbrown 0.9.1", ] [[package]] @@ -1064,9 +1070,9 @@ dependencies = [ [[package]] name = "inotify-sys" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4563555856585ab3180a5bf0b2f9f8d301a728462afffc8195b3f5394229c55" +checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" dependencies = [ "libc", ] @@ -1099,7 +1105,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2ca2de723e93727460917d9542f7ae35a74d03d93923f03380a0238d860d137c" dependencies = [ "cedarwood", - "hashbrown", + "hashbrown 0.8.2", "lazy_static", "phf", "phf_codegen", @@ -1108,19 +1114,18 @@ dependencies = [ [[package]] name = "jpeg-decoder" -version = "0.1.20" +version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc797adac5f083b8ff0ca6f6294a999393d76e197c36488e2ef732c4715f6fa3" +checksum = "229d53d58899083193af11e15917b5640cd40b29ff475a1fe4ef725deb02d0f2" dependencies = [ - "byteorder", "rayon", ] [[package]] name = "js-sys" -version = "0.3.46" +version = "0.3.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf3d7383929f7c9c7c2d0fa596f325832df98c3704f2c60553080f7127a58175" +checksum = "5cfb73131c35423a367daf8cbd24100af0d077668c8c2943f0e7dd775fef0f65" dependencies = [ "wasm-bindgen", ] @@ -1177,9 +1182,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.82" +version = "0.2.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89203f3fba0a3795506acaad8ebce3c80c0af93f994d5a1d7a0b1eeb23271929" +checksum = "7ccac4b00700875e6a07c6cde370d44d32fa01c5a65cdd2fca6858c479d28bb3" [[package]] name = "library" @@ -1296,11 +1301,11 @@ checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3" [[package]] name = "log" -version = "0.4.11" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b" +checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" dependencies = [ - "cfg-if 0.1.10", + "cfg-if 1.0.0", ] [[package]] @@ -1479,9 +1484,9 @@ dependencies = [ [[package]] name = "mockito" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36a0eb7e686b49b02c1cb87c14b8e2a05de0d36c6eee0293653d0a875906d499" +checksum = "102f0986ade96028c3227fc14fcbbbee0358ca33b3fedc9a400a97a6f5ad4a6e" dependencies = [ "assert-json-diff", "colored", @@ -1489,10 +1494,10 @@ dependencies = [ "httparse", "lazy_static", "log", - "rand 0.7.3", + "rand 0.8.3", "regex", "serde_json", - "serde_urlencoded 0.6.1", + "serde_urlencoded", ] [[package]] @@ -1825,11 +1830,11 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a83804639aad6ba65345661744708855f9fbcb71176ea8d28d05aeb11d975e7" +checksum = "95b70b68509f17aa2857863b6fa00bf21fc93674c7a8893de2f469f6aa7ca2f2" dependencies = [ - "pin-project-internal 1.0.3", + "pin-project-internal 1.0.4", ] [[package]] @@ -1845,9 +1850,9 @@ dependencies = [ [[package]] name = "pin-project-internal" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7bcc46b8f73443d15bc1c5fecbb315718491fa9187fa483f0e359323cde8b3a" +checksum = "caa25a6393f22ce819b0f50e0be89287292fda8d425be38ee0ca14c4931d9e71" dependencies = [ "proc-macro2", "quote", @@ -1856,9 +1861,9 @@ dependencies = [ [[package]] name = "pin-project-lite" -version = "0.2.2" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6196deb704a4cebec440b7a50d05d55410be7c923caf0447f9d052508b8dca3c" +checksum = "439697af366c49a6d0a010c56a0d97685bc140ce0d377b13a2ea2aa42d64a827" [[package]] name = "pin-utils" @@ -1874,9 +1879,9 @@ checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c" [[package]] name = "plist" -version = "1.0.1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dc57ccf442c7414b790e8e7b72fb4d776a66c7680129360946d9aaa6f5311e9" +checksum = "679104537029ed2287c216bfb942bbf723f48ee98f0aef15611634173a74ef21" dependencies = [ "base64", "chrono", @@ -1942,9 +1947,9 @@ checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" [[package]] name = "proc-macro-nested" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eba180dafb9038b050a4c280019bbedf9f2467b61e5d892dcad585bb57aadc5a" +checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086" [[package]] name = "proc-macro2" @@ -1997,9 +2002,9 @@ dependencies = [ [[package]] name = "rand" -version = "0.8.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c24fcd450d3fa2b592732565aa4f17a27a61c65ece4726353e000939b0edee34" +checksum = "0ef9e7e66b4468674bfcb0c81af8b7fa0bb154fa9f28eb840da5c447baeb8d7e" dependencies = [ "libc", "rand_chacha 0.3.0", @@ -2042,7 +2047,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c026d7df8b298d90ccbbc5190bd04d85e159eaf5576caeacf8741da93ccbd2e5" dependencies = [ - "getrandom 0.2.1", + "getrandom 0.2.2", ] [[package]] @@ -2099,9 +2104,12 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.1.57" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" +checksum = "05ec8ca9416c5ea37062b502703cd7fcb207736bc294f6e0cf367ac6fc234570" +dependencies = [ + "bitflags", +] [[package]] name = "regex" @@ -2180,7 +2188,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fd281b1030aa675fb90aa994d07187645bb3c8fc756ca766e7c3070b439de9de" dependencies = [ "base64", - "bytes 1.0.0", + "bytes 1.0.1", "encoding_rs", "futures-core", "futures-util", @@ -2197,7 +2205,7 @@ dependencies = [ "pin-project-lite", "rustls", "serde", - "serde_urlencoded 0.7.0", + "serde_urlencoded", "tokio", "tokio-rustls", "url", @@ -2210,9 +2218,9 @@ dependencies = [ [[package]] name = "ring" -version = "0.16.19" +version = "0.16.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "024a1e66fea74c66c66624ee5622a7ff0e4b73a13b4f5c326ddb50c708944226" +checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" dependencies = [ "cc", "libc", @@ -2334,18 +2342,18 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.118" +version = "1.0.123" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06c64263859d87aa2eb554587e2d23183398d617427327cf2b3d0ed8c69e4800" +checksum = "92d5161132722baa40d802cc70b15262b98258453e85e5d1d365c757c73869ae" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.118" +version = "1.0.123" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c84d3526699cd55261af4b941e4e725444df67aa4f9e6a3564f18030d12672df" +checksum = "9391c295d64fc0abb2c556bad848f33cb8296276b1ad2677d1ae1ace4f258f31" dependencies = [ "proc-macro2", "quote", @@ -2364,18 +2372,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_urlencoded" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ec5d77e2d4c73717816afac02670d5c4f534ea95ed430442cad02e7a6e32c97" -dependencies = [ - "dtoa", - "itoa", - "serde", - "url", -] - [[package]] name = "serde_urlencoded" version = "0.7.0" @@ -2390,9 +2386,9 @@ dependencies = [ [[package]] name = "serde_yaml" -version = "0.8.15" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "971be8f6e4d4a47163b405a3df70d14359186f9ab0f3a3ec37df144ca1ce089f" +checksum = "bdd2af560da3c1fdc02cb80965289254fc35dff869810061e2d8290ee48848ae" dependencies = [ "dtoa", "linked-hash-map", @@ -2414,9 +2410,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.9.2" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e7aab86fe2149bad8c507606bdb3f4ef5e7b2380eb92350f56122cca72a42a8" +checksum = "fa827a14b29ab7f44778d14a88d3cb76e949c45083f7dbfa507d0cb699dc12de" dependencies = [ "block-buffer 0.9.0", "cfg-if 1.0.0", @@ -2570,9 +2566,9 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.58" +version = "1.0.60" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc60a3d73ea6594cd712d830cc1f0390fd71542d8c8cd24e70cc54cdfd5e05d5" +checksum = "c700597eca8a5a762beb35753ef6b94df201c81cca676604f547495a0d7f0081" dependencies = [ "proc-macro2", "quote", @@ -2603,13 +2599,13 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9" +checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22" dependencies = [ - "cfg-if 0.1.10", + "cfg-if 1.0.0", "libc", - "rand 0.7.3", + "rand 0.8.3", "redox_syscall", "remove_dir_all", "winapi 0.3.9", @@ -2665,7 +2661,7 @@ dependencies = [ "percent-encoding", "pest", "pest_derive", - "rand 0.8.1", + "rand 0.8.3", "regex", "serde", "serde_json", @@ -2706,11 +2702,11 @@ dependencies = [ [[package]] name = "thread_local" -version = "1.1.0" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb9bc092d0d51e76b2b19d9d85534ffc9ec2db959a2523cdae0697e2972cd447" +checksum = "d8208a331e1cb318dd5bd76951d2b8fc48ca38a69f5f4e4af1b6a9f8c6236915" dependencies = [ - "lazy_static", + "once_cell", ] [[package]] @@ -2736,9 +2732,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.1.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccf8dbc19eb42fba10e8feaaec282fb50e2c14b2726d6301dbfeed0f73306a6f" +checksum = "317cca572a0e89c3ce0ca1f1bdc9369547fe318a683418e42ac8f59d14701023" dependencies = [ "tinyvec_macros", ] @@ -2751,12 +2747,12 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.0.1" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d258221f566b6c803c7b4714abadc080172b272090cdc5e244a6d4dd13c3a6bd" +checksum = "6714d663090b6b0acb0fa85841c6d66233d150cdb2602c8f9b8abb03370beb3f" dependencies = [ "autocfg", - "bytes 1.0.0", + "bytes 1.0.1", "libc", "memchr", "mio 0.7.7", @@ -2775,30 +2771,18 @@ dependencies = [ "webpki", ] -[[package]] -name = "tokio-stream" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4cdeb73537e63f98adcd73138af75e3f368ccaecffaa29d7eb61b9f5a440457" -dependencies = [ - "futures-core", - "pin-project-lite", - "tokio", -] - [[package]] name = "tokio-util" -version = "0.6.0" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36135b7e7da911f5f8b9331209f7fab4cc13498f3fff52f72a710c78187e3148" +checksum = "ebb7cb2f00c5ae8df755b252306272cd1790d39728363936e01827e11f0b017b" dependencies = [ - "bytes 1.0.0", + "bytes 1.0.1", "futures-core", "futures-sink", "log", "pin-project-lite", "tokio", - "tokio-stream", ] [[package]] @@ -2812,9 +2796,9 @@ dependencies = [ [[package]] name = "tower-service" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e987b6bf443f4b5b3b6f38704195592cca41c5bb7aedd3c3693c7081f8289860" +checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6" [[package]] name = "tracing" @@ -3048,15 +3032,15 @@ checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" [[package]] name = "wasi" -version = "0.10.1+wasi-snapshot-preview1" +version = "0.10.2+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93c6c3420963c5c64bca373b25e77acb562081b9bb4dd5bb864187742186cea9" +checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" [[package]] name = "wasm-bindgen" -version = "0.2.69" +version = "0.2.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cd364751395ca0f68cafb17666eee36b63077fb5ecd972bbcd74c90c4bf736e" +checksum = "55c0f7123de74f0dab9b7d00fd614e7b19349cd1e2f5252bbe9b1754b59433be" dependencies = [ "cfg-if 1.0.0", "serde", @@ -3066,9 +3050,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.69" +version = "0.2.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1114f89ab1f4106e5b55e688b828c0ab0ea593a1ea7c094b141b14cbaaec2d62" +checksum = "7bc45447f0d4573f3d65720f636bbcc3dd6ce920ed704670118650bcd47764c7" dependencies = [ "bumpalo", "lazy_static", @@ -3081,9 +3065,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.19" +version = "0.4.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fe9756085a84584ee9457a002b7cdfe0bfff169f45d2591d8be1345a6780e35" +checksum = "3de431a2910c86679c34283a33f66f4e4abd7e0aec27b6669060148872aadf94" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -3093,9 +3077,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.69" +version = "0.2.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a6ac8995ead1f084a8dea1e65f194d0973800c7f571f6edd70adf06ecf77084" +checksum = "3b8853882eef39593ad4174dd26fc9865a64e84026d223f63bb2c42affcbba2c" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -3103,9 +3087,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.69" +version = "0.2.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5a48c72f299d80557c7c62e37e7225369ecc0c963964059509fbafe917c7549" +checksum = "4133b5e7f2a531fa413b3a1695e925038a05a71cf67e87dafa295cb645a01385" dependencies = [ "proc-macro2", "quote", @@ -3116,15 +3100,15 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.69" +version = "0.2.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e7811dd7f9398f14cc76efd356f98f03aa30419dea46aa810d71e819fc97158" +checksum = "dd4945e4943ae02d15c13962b38a5b1e81eadd4b71214eee75af64a4d6a4fd64" [[package]] name = "web-sys" -version = "0.3.46" +version = "0.3.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "222b1ef9334f92a21d3fb53dc3fd80f30836959a90f9274a626d7e06315ba3c3" +checksum = "c40dc691fc48003eba817c38da7113c15698142da971298003cac3ef175680b3" dependencies = [ "js-sys", "wasm-bindgen", @@ -3151,9 +3135,9 @@ dependencies = [ [[package]] name = "weezl" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e2bb9fc8309084dd7cd651336673844c1d47f8ef6d2091ec160b27f5c4aa277" +checksum = "4a32b378380f4e9869b22f0b5177c68a5519f03b3454fde0b291455ddbae266c" [[package]] name = "winapi" diff --git a/components/link_checker/Cargo.toml b/components/link_checker/Cargo.toml index 70cfebfb..523484aa 100644 --- a/components/link_checker/Cargo.toml +++ b/components/link_checker/Cargo.toml @@ -16,4 +16,4 @@ default-features = false features = ["blocking", "rustls-tls"] [dev-dependencies] -mockito = "0.28" +mockito = "0.29" diff --git a/components/templates/Cargo.toml b/components/templates/Cargo.toml index e32fb494..09c112c7 100644 --- a/components/templates/Cargo.toml +++ b/components/templates/Cargo.toml @@ -30,4 +30,4 @@ default-features = false features = ["blocking", "rustls-tls"] [dev-dependencies] -mockito = "0.28" +mockito = "0.29" From 34989a8ef6d16ca7f294112285cc72e119c81e62 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 2 Feb 2021 20:48:31 +0100 Subject: [PATCH 010/113] Fix panic in loading Page Closes #1327 --- components/site/src/lib.rs | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 53720e57..edeaedbe 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -247,7 +247,10 @@ impl Site { &self.config, &self.base_path, ) { - Err(_) => continue, + Err(e) => { + println!("Failed to load section: {:?}", e); + continue; + } Ok(sec) => sec, }; @@ -260,8 +263,13 @@ impl Site { self.add_section(section, false)?; } } else { - let page = Page::from_file(path, &self.config, &self.base_path) - .expect("error deserialising page"); + let page = match Page::from_file(path, &self.config, &self.base_path) { + Err(e) => { + println!("Failed to load page: {:?}", e); + continue; + } + Ok(p) => p, + }; // should we skip drafts? if page.meta.draft && !self.include_drafts { From 024144ba786d94ffe8635a197a3be0fa33ec765f Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 2 Feb 2021 20:49:57 +0100 Subject: [PATCH 011/113] cargo fmt --- components/config/src/highlighting.rs | 10 ++- components/library/src/library.rs | 4 +- components/library/src/sorting.rs | 50 +++++++-------- components/rendering/src/markdown.rs | 13 +++- .../rendering/src/markdown/codeblock.rs | 9 ++- components/site/src/tpls.rs | 5 +- components/templates/src/filters.rs | 17 ++++-- .../templates/src/global_fns/load_data.rs | 61 +++++++++++-------- 8 files changed, 108 insertions(+), 61 deletions(-) diff --git a/components/config/src/highlighting.rs b/components/config/src/highlighting.rs index bfc0245b..54f6b8fa 100644 --- a/components/config/src/highlighting.rs +++ b/components/config/src/highlighting.rs @@ -24,7 +24,10 @@ pub enum HighlightSource { } /// Returns the highlighter and whether it was found in the extra or not -pub fn get_highlighter(language: Option<&str>, config: &Config) -> (HighlightLines<'static>, HighlightSource) { +pub fn get_highlighter( + language: Option<&str>, + config: &Config, +) -> (HighlightLines<'static>, HighlightSource) { let theme = &THEME_SET.themes[config.highlight_theme()]; if let Some(ref lang) = language { @@ -41,7 +44,10 @@ pub fn get_highlighter(language: Option<&str>, config: &Config) -> (HighlightLin if let Some(syntax) = SYNTAX_SET.find_syntax_by_token(hacked_lang) { (HighlightLines::new(syntax, theme), HighlightSource::Theme) } else { - (HighlightLines::new(SYNTAX_SET.find_syntax_plain_text(), theme), HighlightSource::NotFound) + ( + HighlightLines::new(SYNTAX_SET.find_syntax_plain_text(), theme), + HighlightSource::NotFound, + ) } } else { (HighlightLines::new(SYNTAX_SET.find_syntax_plain_text(), theme), HighlightSource::Plain) diff --git a/components/library/src/library.rs b/components/library/src/library.rs index 553df543..b933f8b6 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -6,7 +6,9 @@ use slotmap::{DefaultKey, DenseSlotMap}; use front_matter::SortBy; use crate::content::{Page, Section}; -use crate::sorting::{find_siblings, sort_pages_by_date, sort_pages_by_title, sort_pages_by_weight}; +use crate::sorting::{ + find_siblings, sort_pages_by_date, sort_pages_by_title, sort_pages_by_weight, +}; use config::Config; // Like vec! but for HashSet diff --git a/components/library/src/sorting.rs b/components/library/src/sorting.rs index 01571e1f..07dc4a61 100644 --- a/components/library/src/sorting.rs +++ b/components/library/src/sorting.rs @@ -173,33 +173,35 @@ mod tests { "meter", "track_1", ]; - let pages: Vec = titles.iter().map( - |title| create_page_with_title(title) - ).collect(); + let pages: Vec = titles.iter().map(|title| create_page_with_title(title)).collect(); let mut dense = DenseSlotMap::new(); - let keys: Vec<_> = pages.iter().map( - |p| dense.insert(p) - ).collect(); - let input: Vec<_> = pages.iter().enumerate().map( - |(i, page)| (&keys[i], page.meta.title.as_deref(), page.permalink.as_ref()) - ).collect(); + let keys: Vec<_> = pages.iter().map(|p| dense.insert(p)).collect(); + let input: Vec<_> = pages + .iter() + .enumerate() + .map(|(i, page)| (&keys[i], page.meta.title.as_deref(), page.permalink.as_ref())) + .collect(); let (sorted, _) = sort_pages_by_title(input); // Should be sorted by title - let sorted_titles: Vec<_> = sorted.iter().map( - |key| dense.get(*key).unwrap().meta.title.as_ref().unwrap() - ).collect(); - assert_eq!(sorted_titles, vec![ - "bagel", - "BART", - "μ-kernel", - "meter", - "métro", - "microkernel", - "track_1", - "track_3", - "track_13", - "Underground", - ]); + let sorted_titles: Vec<_> = sorted + .iter() + .map(|key| dense.get(*key).unwrap().meta.title.as_ref().unwrap()) + .collect(); + assert_eq!( + sorted_titles, + vec![ + "bagel", + "BART", + "μ-kernel", + "meter", + "métro", + "microkernel", + "track_1", + "track_3", + "track_13", + "Underground", + ] + ); } #[test] diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index 96bcba4a..1b877beb 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -242,7 +242,18 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { } impl<'config> CodeBlock<'config> { - pub fn new(fence_info: &str, config: &'config Config, background: IncludeBackground, path: Option<&'config str>) -> Self { + pub fn new( + fence_info: &str, + config: &'config Config, + background: IncludeBackground, + path: Option<&'config str>, + ) -> Self { let fence_info = FenceSettings::new(fence_info); let theme = &THEME_SET.themes[config.highlight_theme()]; let (highlighter, highlight_source) = get_highlighter(fence_info.language, config); @@ -37,7 +42,7 @@ impl<'config> CodeBlock<'config> { eprintln!("Warning: Highlight language {} not found", lang); } None - }, + } _ => None, }; Self { diff --git a/components/site/src/tpls.rs b/components/site/src/tpls.rs index 2e5295ef..0377695e 100644 --- a/components/site/src/tpls.rs +++ b/components/site/src/tpls.rs @@ -50,7 +50,10 @@ pub fn load_tera(path: &Path, config: &Config) -> Result { /// Adds global fns that are to be available to shortcodes while rendering markdown pub fn register_early_global_fns(site: &mut Site) { - site.tera.register_filter("markdown", filters::MarkdownFilter::new(site.config.clone(), site.permalinks.clone())); + site.tera.register_filter( + "markdown", + filters::MarkdownFilter::new(site.config.clone(), site.permalinks.clone()), + ); site.tera.register_function( "get_url", diff --git a/components/templates/src/filters.rs b/components/templates/src/filters.rs index 731ecfd2..51ecca47 100644 --- a/components/templates/src/filters.rs +++ b/components/templates/src/filters.rs @@ -1,6 +1,6 @@ +use std::borrow::Cow; use std::collections::HashMap; use std::hash::BuildHasher; -use std::borrow::Cow; use base64::{decode, encode}; use config::Config; @@ -120,13 +120,14 @@ mod tests { config.markdown.external_links_target_blank = true; let md = "Hello :smile: ..."; - let result = - MarkdownFilter::new(config.clone(), HashMap::new()).filter(&to_value(&md).unwrap(), &HashMap::new()); + let result = MarkdownFilter::new(config.clone(), HashMap::new()) + .filter(&to_value(&md).unwrap(), &HashMap::new()); assert!(result.is_ok()); assert_eq!(result.unwrap(), to_value(&"

Hello https://google.com 😄 …

\n").unwrap()); let md = "```py\ni=0\n```"; - let result = MarkdownFilter::new(config, HashMap::new()).filter(&to_value(&md).unwrap(), &HashMap::new()); + let result = MarkdownFilter::new(config, HashMap::new()) + .filter(&to_value(&md).unwrap(), &HashMap::new()); assert!(result.is_ok()); assert!(result.unwrap().as_str().unwrap().contains("
Hello. Check out my blog!

\n").unwrap()); + assert_eq!( + result.unwrap(), + to_value(&"

Hello. Check out my blog!

\n").unwrap() + ); } #[test] diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 0f74c648..a5b929fa 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -190,7 +190,15 @@ impl LoadData { impl TeraFn for LoadData { fn call(&self, args: &HashMap) -> Result { - let required = if let Some(req) = optional_arg!(bool, args.get("required"), "`load_data`: `required` must be a boolean (true or false)") { req } else { true }; + let required = if let Some(req) = optional_arg!( + bool, + args.get("required"), + "`load_data`: `required` must be a boolean (true or false)" + ) { + req + } else { + true + }; let path_arg = optional_arg!(String, args.get("path"), GET_DATA_ARGUMENT_ERROR_MESSAGE); let url_arg = optional_arg!(String, args.get("url"), GET_DATA_ARGUMENT_ERROR_MESSAGE); let data_source = DataSource::from_args(path_arg.clone(), url_arg, &self.base_path)?; @@ -198,13 +206,19 @@ impl TeraFn for LoadData { // If the file doesn't exist, source is None match (&data_source, required) { // If the file was not required, return a Null value to the template - (None, false) => { return Ok(Value::Null); }, + (None, false) => { + return Ok(Value::Null); + } // If the file was required, error (None, true) => { // source is None only with path_arg (not URL), so path_arg is safely unwrap - return Err(format!("{} doesn't exist", &self.base_path.join(path_arg.unwrap()).display()).into()); - }, - _ => {}, + return Err(format!( + "{} doesn't exist", + &self.base_path.join(path_arg.unwrap()).display() + ) + .into()); + } + _ => {} } let data_source = data_source.unwrap(); let file_format = get_output_format_from_args(&args, &data_source)?; @@ -223,25 +237,26 @@ impl TeraFn for LoadData { .get(url.as_str()) .header(header::ACCEPT, file_format.as_accept_header()) .send() - .and_then(|res| res.error_for_status()) { - Ok(r) => { - r.text() - .map_err(|e| format!("Failed to parse response from {}: {:?}", url, e).into()) - }, - Err(e) => { - if !required { - // HTTP error is discarded (because required=false) and - // Null value is returned to the template - return Ok(Value::Null); - } - Err(match e.status() { - Some(status) => format!("Failed to request {}: {}", url, status), - None => format!("Could not get response status for url: {}", url), - }.into()) + .and_then(|res| res.error_for_status()) + { + Ok(r) => r.text().map_err(|e| { + format!("Failed to parse response from {}: {:?}", url, e).into() + }), + Err(e) => { + if !required { + // HTTP error is discarded (because required=false) and + // Null value is returned to the template + return Ok(Value::Null); } + Err(match e.status() { + Some(status) => format!("Failed to request {}: {}", url, status), + None => format!("Could not get response status for url: {}", url), + } + .into()) + } } - }, - // Now that we have discarded recoverable errors, we can unwrap the result + } + // Now that we have discarded recoverable errors, we can unwrap the result }?; let result_value: Result = match file_format { @@ -542,7 +557,6 @@ mod tests { assert_eq!(result.unwrap(), tera::Value::Null); } - #[test] fn set_default_user_agent() { let user_agent = concat!(env!("CARGO_PKG_NAME"), "/", env!("CARGO_PKG_VERSION")); @@ -693,7 +707,6 @@ mod tests { } } - #[test] fn can_load_json() { let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); From 3b210d648c3af8e4f256c5c06403012b7871757a Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 2 Feb 2021 20:57:37 +0100 Subject: [PATCH 012/113] Use zola 0.13 for docs --- docs/config.toml | 7 +++++-- docs/content/documentation/content/taxonomies.md | 2 +- netlify.toml | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/docs/config.toml b/docs/config.toml index 62cc309c..1b367f53 100644 --- a/docs/config.toml +++ b/docs/config.toml @@ -3,10 +3,13 @@ title = "Zola" description = "Everything you need to make a static site engine in one binary." compile_sass = true -highlight_code = true insert_anchor_links = true -highlight_theme = "kronuz" build_search_index = true +[markdown] +highlight_code = true +highlight_theme = "kronuz" + + [extra] author = "Vincent Prouillet" diff --git a/docs/content/documentation/content/taxonomies.md b/docs/content/documentation/content/taxonomies.md index 39e78a04..bfef476e 100644 --- a/docs/content/documentation/content/taxonomies.md +++ b/docs/content/documentation/content/taxonomies.md @@ -131,7 +131,7 @@ In a similar manner to how section and pages calculate their output path: The taxonomy pages are then available at the following paths: -```plain +``` $BASE_URL/$NAME/ (taxonomy) $BASE_URL/$NAME/$SLUG (taxonomy entry) ``` diff --git a/netlify.toml b/netlify.toml index d9fb82b4..8074da34 100644 --- a/netlify.toml +++ b/netlify.toml @@ -4,7 +4,7 @@ command = "zola build" [build.environment] - ZOLA_VERSION = "0.11.0" + ZOLA_VERSION = "0.13.0" [context.deploy-preview] command = "zola build --base-url $DEPLOY_PRIME_URL" From cf86e9398602cae63f580d136adc106daa7cfffb Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 2 Feb 2021 21:31:17 +0100 Subject: [PATCH 013/113] Fix dir renaming not picked up by zola serve Fix #1324 --- src/cmd/serve.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index 122f83d4..ad4e9bb8 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -476,9 +476,11 @@ pub fn serve( if is_ignored_file(&site.config.ignored_content_globset, &path) { continue; } - if is_temp_file(&path) || path.is_dir() { + + if path.is_file() && is_temp_file(&path) { continue; } + // We only care about changes in non-empty folders if path.is_dir() && is_folder_empty(&path) { continue; From aa57541c21bc060c7e49b152b30842932b284fc3 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 2 Feb 2021 21:53:36 +0100 Subject: [PATCH 014/113] Force newline after front-matter Closes #1287 --- CHANGELOG.md | 6 +++++- components/front_matter/src/lib.rs | 10 ++++++---- components/library/src/content/page.rs | 4 ++-- components/templates/src/global_fns/load_data.rs | 3 +-- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8c486611..c147c306 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,11 @@ ## unreleased -### Features +### Breaking + +- Newlines are now required after the closing `+++` of front-matter + +### Other - internal links are now resolved in the `markdown` filter in the templates (#1296 #1316) - Add a `required` argument to `load_data` so it can be allowed to fail diff --git a/components/front_matter/src/lib.rs b/components/front_matter/src/lib.rs index 5b54fd51..9397af89 100644 --- a/components/front_matter/src/lib.rs +++ b/components/front_matter/src/lib.rs @@ -15,9 +15,9 @@ pub use section::SectionFrontMatter; lazy_static! { static ref TOML_RE: Regex = - Regex::new(r"^[[:space:]]*\+\+\+(\r?\n(?s).*?(?-s))\+\+\+\r?\n?((?s).*(?-s))$").unwrap(); + Regex::new(r"^[[:space:]]*\+\+\+(\r?\n(?s).*?(?-s))\+\+\+\r?\n((?s).*(?-s))$").unwrap(); static ref YAML_RE: Regex = - Regex::new(r"^[[:space:]]*---(\r?\n(?s).*?(?-s))---\r?\n?((?s).*(?-s))$").unwrap(); + Regex::new(r"^[[:space:]]*---(\r?\n(?s).*?(?-s))---\r?\n((?s).*(?-s))$").unwrap(); } pub enum RawFrontMatter<'a> { @@ -174,13 +174,15 @@ Hello title = "Title" description = "hey there" date = 2002-10-12 -+++"#; "toml")] ++++ +"#; "toml")] #[test_case(r#" --- title: Title description: hey there date: 2002-10-12 ----"#; "yaml")] +--- +"#; "yaml")] fn can_split_content_with_only_frontmatter_valid(content: &str) { let (front_matter, content) = split_page_content(Path::new(""), content).unwrap(); assert_eq!(content, ""); diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index c453b87f..13034158 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -490,7 +490,7 @@ Hello world"#; let mut config = Config::default(); config.slugify.paths = SlugifyStrategy::On; let res = - Page::parse(Path::new(" file with space.md"), "+++\n+++", &config, &PathBuf::new()); + Page::parse(Path::new(" file with space.md"), "+++\n+++\n", &config, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.slug, "file-with-space"); @@ -501,7 +501,7 @@ Hello world"#; fn can_make_path_from_utf8_filename() { let mut config = Config::default(); config.slugify.paths = SlugifyStrategy::Safe; - let res = Page::parse(Path::new("日本.md"), "+++\n++++", &config, &PathBuf::new()); + let res = Page::parse(Path::new("日本.md"), "+++\n+++\n", &config, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.slug, "日本"); diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index a5b929fa..286b63c5 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -255,8 +255,7 @@ impl TeraFn for LoadData { .into()) } } - } - // Now that we have discarded recoverable errors, we can unwrap the result + } // Now that we have discarded recoverable errors, we can unwrap the result }?; let result_value: Result = match file_format { From 53456bd052f0a55cdc8ed80a773f567c8023959a Mon Sep 17 00:00:00 2001 From: southerntofu <52931252+southerntofu@users.noreply.github.com> Date: Thu, 4 Feb 2021 08:54:12 +0000 Subject: [PATCH 015/113] Don't panic for missing highlight theme (close #1299) (#1307) * No panic when markdown.highlight_theme is missing * Better error message for missing theme * Better error messages Co-authored-by: southerntofu --- components/config/src/config/mod.rs | 18 ++++++++---------- components/config/src/lib.rs | 12 +++--------- components/config/src/theme.rs | 12 ++++-------- components/site/src/lib.rs | 4 ++-- components/utils/src/fs.rs | 15 +-------------- 5 files changed, 18 insertions(+), 43 deletions(-) diff --git a/components/config/src/config/mod.rs b/components/config/src/config/mod.rs index 415f215b..a8118c78 100644 --- a/components/config/src/config/mod.rs +++ b/components/config/src/config/mod.rs @@ -16,7 +16,7 @@ use toml::Value as Toml; use crate::highlighting::THEME_SET; use crate::theme::Theme; use errors::{bail, Error, Result}; -use utils::fs::read_file_with_error; +use utils::fs::read_file; // We want a default base url for tests static DEFAULT_BASE_URL: &str = "http://a-website.com"; @@ -124,8 +124,9 @@ impl Config { bail!("A base URL is required in config.toml with key `base_url`"); } - if !THEME_SET.themes.contains_key(&config.highlight_theme) { - bail!("Highlight theme {} not available", config.highlight_theme) + let highlight_theme = config.highlight_theme(); + if !THEME_SET.themes.contains_key(highlight_theme) { + bail!("Highlight theme {} defined in config does not exist.", highlight_theme); } if config.languages.iter().any(|l| l.code == config.default_language) { @@ -169,11 +170,8 @@ impl Config { /// Parses a config file from the given path pub fn from_file>(path: P) -> Result { let path = path.as_ref(); - let file_name = path.file_name().unwrap(); - let content = read_file_with_error( - path, - &format!("No `{:?}` file found. Are you in the right directory?", file_name), - )?; + let content = read_file(path) + .map_err(|e| errors::Error::chain("Failed to load config", e))?; Config::parse(&content) } @@ -270,8 +268,8 @@ impl Config { /// Parse the theme.toml file and merges the extra data from the theme /// with the config extra data - pub fn merge_with_theme(&mut self, path: &PathBuf) -> Result<()> { - let theme = Theme::from_file(path)?; + pub fn merge_with_theme(&mut self, path: &PathBuf, theme_name: &str) -> Result<()> { + let theme = Theme::from_file(path, theme_name)?; self.add_theme_extra(&theme) } diff --git a/components/config/src/lib.rs b/components/config/src/lib.rs index 529a8b4a..f431f232 100644 --- a/components/config/src/lib.rs +++ b/components/config/src/lib.rs @@ -4,18 +4,12 @@ mod theme; pub use crate::config::{ languages::Language, link_checker::LinkChecker, slugify::Slugify, taxonomies::Taxonomy, Config, }; +use errors::Result; use std::path::Path; /// Get and parse the config. /// If it doesn't succeed, exit -pub fn get_config(filename: &Path) -> Config { - match Config::from_file(filename) { - Ok(c) => c, - Err(e) => { - println!("Failed to load {}", filename.display()); - println!("Error: {}", e); - ::std::process::exit(1); - } - } +pub fn get_config(filename: &Path) -> Result { + Config::from_file(filename) } diff --git a/components/config/src/theme.rs b/components/config/src/theme.rs index 6c68401a..5022319b 100644 --- a/components/config/src/theme.rs +++ b/components/config/src/theme.rs @@ -5,7 +5,7 @@ use serde_derive::{Deserialize, Serialize}; use toml::Value as Toml; use errors::{bail, Result}; -use utils::fs::read_file_with_error; +use utils::fs::read_file; /// Holds the data from a `theme.toml` file. /// There are other fields than `extra` in it but Zola @@ -39,13 +39,9 @@ impl Theme { } /// Parses a theme file from the given path - pub fn from_file(path: &PathBuf) -> Result { - let content = read_file_with_error( - path, - "No `theme.toml` file found. \ - Is the `theme` defined in your `config.toml` present in the `themes` directory \ - and does it have a `theme.toml` inside?", - )?; + pub fn from_file(path: &PathBuf, theme_name: &str) -> Result { + let content = read_file(path) + .map_err(|e| errors::Error::chain(format!("Failed to load theme {}", theme_name), e))?; Theme::parse(&content) } } diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index edeaedbe..48932742 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -72,12 +72,12 @@ impl Site { pub fn new, P2: AsRef>(path: P, config_file: P2) -> Result { let path = path.as_ref(); let config_file = config_file.as_ref(); - let mut config = get_config(config_file); + let mut config = get_config(config_file)?; config.load_extra_syntaxes(path)?; if let Some(theme) = config.theme.clone() { // Grab data from the extra section of the theme - config.merge_with_theme(&path.join("themes").join(&theme).join("theme.toml"))?; + config.merge_with_theme(&path.join("themes").join(&theme).join("theme.toml"), &theme)?; } let tera = tpls::load_tera(path, &config)?; diff --git a/components/utils/src/fs.rs b/components/utils/src/fs.rs index a46f6d94..afb7a04e 100644 --- a/components/utils/src/fs.rs +++ b/components/utils/src/fs.rs @@ -49,7 +49,7 @@ pub fn create_directory(path: &Path) -> Result<()> { pub fn read_file(path: &Path) -> Result { let mut content = String::new(); File::open(path) - .map_err(|e| Error::chain(format!("Failed to open '{:?}'", path.display()), e))? + .map_err(|e| Error::chain(format!("Failed to open '{}'", path.display()), e))? .read_to_string(&mut content)?; // Remove utf-8 BOM if any. @@ -60,19 +60,6 @@ pub fn read_file(path: &Path) -> Result { Ok(content) } -/// Return the content of a file, with error handling added. -/// The default error message is overwritten by the message given. -/// That means it is allocating 2 strings, oh well -pub fn read_file_with_error(path: &Path, message: &str) -> Result { - let res = read_file(&path); - if res.is_ok() { - return res; - } - let mut err = Error::msg(message); - err.source = res.unwrap_err().source; - Err(err) -} - /// Looks into the current folder for the path and see if there's anything that is not a .md /// file. Those will be copied next to the rendered .html file pub fn find_related_assets(path: &Path) -> Vec { From a65a2d52c70def075d8b4ed4c57dfd81b1f96ba3 Mon Sep 17 00:00:00 2001 From: Matt Riggott Date: Sat, 6 Feb 2021 15:41:10 +0000 Subject: [PATCH 016/113] Update minify-html dependency to version 0.4.2 (#1340) * Update minify-html dependency to version 0.4.2 Fixes https://github.com/getzola/zola/issues/1300. See also https://github.com/wilsonzlin/minify-html/issues/21 * Update minify-html dependency in Cargo.lock * Add test to check pre whitespace isn't collapsed --- Cargo.lock | 4 ++-- components/utils/Cargo.toml | 2 +- components/utils/src/minify.rs | 31 +++++++++++++++++++++++++++++++ 3 files changed, 34 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0099cb07..3e05b5ae 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1388,9 +1388,9 @@ dependencies = [ [[package]] name = "minify-html" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "345dcbf4663db7d3a78a6e6b6c279c8bb6c32d6365cd98da977d7f7543b6c167" +checksum = "d7af79ea8ac719a1cc299787058518a12018700af7ec7be4b789930526e1a1ab" dependencies = [ "aho-corasick", "lazy_static", diff --git a/components/utils/Cargo.toml b/components/utils/Cargo.toml index 2c2f664e..66bbca8a 100644 --- a/components/utils/Cargo.toml +++ b/components/utils/Cargo.toml @@ -15,7 +15,7 @@ serde_derive = "1" slug = "0.1" percent-encoding = "2" filetime = "0.2.12" -minify-html = "0.4" +minify-html = "0.4.2" errors = { path = "../errors" } diff --git a/components/utils/src/minify.rs b/components/utils/src/minify.rs index a0513262..faab7812 100644 --- a/components/utils/src/minify.rs +++ b/components/utils/src/minify.rs @@ -59,4 +59,35 @@ mod tests { let res = html(input.to_owned()).unwrap(); assert_eq!(res, expected); } + + // https://github.com/getzola/zola/issues/1300 + #[test] + fn can_minify_and_preserve_whitespace_in_pre_elements() { + let input = r#" + + + + + + +
fn main() {
+    println!("Hello, world!");
+    loop {
+      println!("Hello, world!");
+    }
+  }
+  
+ + +"#; + let expected = r#"
fn main() {
+    println!("Hello, world!");
+    loop {
+      println!("Hello, world!");
+    }
+  }
+  
"#; + let res = html(input.to_owned()).unwrap(); + assert_eq!(res, expected); + } } From 3cb61c3bcdb6fad6c43b75d9696c26cbaad3c911 Mon Sep 17 00:00:00 2001 From: Chiu-Hsiang Hsu <2716047+wdv4758h@users.noreply.github.com> Date: Sun, 7 Feb 2021 16:13:03 +0000 Subject: [PATCH 017/113] Support embed YouTube playlist (#1342) --- components/templates/src/builtins/shortcodes/youtube.html | 2 +- docs/content/documentation/content/shortcodes.md | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/components/templates/src/builtins/shortcodes/youtube.html b/components/templates/src/builtins/shortcodes/youtube.html index d1dbf38d..9d910aca 100644 --- a/components/templates/src/builtins/shortcodes/youtube.html +++ b/components/templates/src/builtins/shortcodes/youtube.html @@ -1,3 +1,3 @@
- +
diff --git a/docs/content/documentation/content/shortcodes.md b/docs/content/documentation/content/shortcodes.md index 8deb23c3..72c2834e 100644 --- a/docs/content/documentation/content/shortcodes.md +++ b/docs/content/documentation/content/shortcodes.md @@ -164,6 +164,7 @@ Embed a responsive player for a YouTube video. The arguments are: - `id`: the video id (mandatory) +- `playlist: the playlist id (optional) - `class`: a class to add to the `
` surrounding the iframe - `autoplay`: when set to "true", the video autoplays on load @@ -172,6 +173,8 @@ Usage example: ```md {{/* youtube(id="dQw4w9WgXcQ") */}} +{{/* youtube(id="dQw4w9WgXcQ", playlist="RDdQw4w9WgXcQ") */}} + {{/* youtube(id="dQw4w9WgXcQ", autoplay=true) */}} {{/* youtube(id="dQw4w9WgXcQ", autoplay=true, class="youtube") */}} From d734b1723c4097fe2bf5da1fe6b0f5c0060c6c2d Mon Sep 17 00:00:00 2001 From: Chiu-Hsiang Hsu <2716047+wdv4758h@users.noreply.github.com> Date: Sat, 13 Feb 2021 12:07:01 +0000 Subject: [PATCH 018/113] Fix "serve" subcommand for URL encoded static files (#1351) --- src/cmd/serve.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index ad4e9bb8..25051995 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -109,7 +109,7 @@ async fn handle_request(req: Request, mut root: PathBuf) -> Result Date: Thu, 18 Feb 2021 16:53:40 +0000 Subject: [PATCH 019/113] add force arg long switch to CLI (#1362) --- src/cli.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/cli.rs b/src/cli.rs index ab1321f9..ceef7be3 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -30,6 +30,7 @@ pub fn build_cli() -> App<'static, 'static> { .help("Name of the project. Will create a new directory with that name in the current directory"), Arg::with_name("force") .short("f") + .long("force") .takes_value(false) .help("Force creation of project even if directory is non-empty") ]), From 8eac5a5994c53e4d00bbad6ee9ccc7c706529f6b Mon Sep 17 00:00:00 2001 From: Philip Kristoffersen Date: Thu, 18 Feb 2021 22:30:10 +0100 Subject: [PATCH 020/113] WebP support in resize_image (#1360) * Removing unused webpl * Adding clarification comment * Updating documentation * Adding webp --- Cargo.lock | 36 +++++++++++++- components/imageproc/Cargo.toml | 1 + components/imageproc/src/lib.rs | 47 ++++++++++++++----- components/templates/src/global_fns/mod.rs | 10 ++-- .../content/image-processing/index.md | 3 +- 5 files changed, 77 insertions(+), 20 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 3e05b5ae..e1dd981e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -212,6 +212,9 @@ name = "cc" version = "1.0.66" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c0496836a84f8d0495758516b8621a622beb77c0fed418570e50764093ced48" +dependencies = [ + "jobserver", +] [[package]] name = "cedarwood" @@ -1017,9 +1020,9 @@ dependencies = [ [[package]] name = "image" -version = "0.23.12" +version = "0.23.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ce04077ead78e39ae8610ad26216aed811996b043d47beed5090db674f9e9b5" +checksum = "293f07a1875fa7e9c5897b51aa68b2d8ed8271b87e1a44cb64b9c3d98aabbc0d" dependencies = [ "bytemuck", "byteorder", @@ -1045,6 +1048,7 @@ dependencies = [ "regex", "tera", "utils", + "webp", ] [[package]] @@ -1112,6 +1116,15 @@ dependencies = [ "regex", ] +[[package]] +name = "jobserver" +version = "0.1.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c71313ebb9439f74b00d9d2dcec36440beaf57a6aa0623068441dd7cd81a7f2" +dependencies = [ + "libc", +] + [[package]] name = "jpeg-decoder" version = "0.1.22" @@ -1209,6 +1222,15 @@ dependencies = [ "utils", ] +[[package]] +name = "libwebp-sys" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e70c064738b35a28fd6f991d27c0d9680353641d167ae3702a8228dd8272ef6" +dependencies = [ + "cc", +] + [[package]] name = "lindera" version = "0.3.5" @@ -3114,6 +3136,16 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "webp" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea1f2bd35e46165ef40a7fd74f33f64f2912ad92593fbfc5ec75eb2604cfd7b5" +dependencies = [ + "image", + "libwebp-sys", +] + [[package]] name = "webpki" version = "0.21.4" diff --git a/components/imageproc/Cargo.toml b/components/imageproc/Cargo.toml index b4547978..a24e8a34 100644 --- a/components/imageproc/Cargo.toml +++ b/components/imageproc/Cargo.toml @@ -10,6 +10,7 @@ regex = "1.0" tera = "1" image = "0.23" rayon = "1" +webp="0.1.1" errors = { path = "../errors" } utils = { path = "../utils" } diff --git a/components/imageproc/src/lib.rs b/components/imageproc/src/lib.rs index 0b0a8b48..e0daaf64 100644 --- a/components/imageproc/src/lib.rs +++ b/components/imageproc/src/lib.rs @@ -1,11 +1,11 @@ -use std::collections::hash_map::DefaultHasher; +use std::{collections::hash_map::DefaultHasher, io::Write}; use std::collections::hash_map::Entry as HEntry; use std::collections::HashMap; use std::fs::{self, File}; use std::hash::{Hash, Hasher}; use std::path::{Path, PathBuf}; -use image::imageops::FilterType; +use image::{EncodableLayout, imageops::FilterType}; use image::{GenericImageView, ImageOutputFormat}; use lazy_static::lazy_static; use rayon::prelude::*; @@ -18,7 +18,7 @@ static RESIZED_SUBDIR: &str = "processed_images"; lazy_static! { pub static ref RESIZED_FILENAME: Regex = - Regex::new(r#"([0-9a-f]{16})([0-9a-f]{2})[.](jpg|png)"#).unwrap(); + Regex::new(r#"([0-9a-f]{16})([0-9a-f]{2})[.](jpg|png|webp)"#).unwrap(); } /// Describes the precise kind of a resize operation @@ -132,6 +132,7 @@ impl Hash for ResizeOp { } } } +const DEFAULT_Q_JPG: u8 = 75; /// Thumbnail image format #[derive(Debug, Clone, Copy, PartialEq, Eq)] @@ -140,22 +141,26 @@ pub enum Format { Jpeg(u8), /// PNG Png, + /// WebP, The `u8` argument is WebP quality (in percent), None meaning lossless. + WebP(Option), } impl Format { - pub fn from_args(source: &str, format: &str, quality: u8) -> Result { + pub fn from_args(source: &str, format: &str, quality: Option) -> Result { use Format::*; - - assert!(quality > 0 && quality <= 100, "Jpeg quality must be within the range [1; 100]"); - + if let Some(quality) = quality { + assert!(quality > 0 && quality <= 100, "Quality must be within the range [1; 100]"); + } + let jpg_quality = quality.unwrap_or(DEFAULT_Q_JPG); match format { "auto" => match Self::is_lossy(source) { - Some(true) => Ok(Jpeg(quality)), + Some(true) => Ok(Jpeg(jpg_quality)), Some(false) => Ok(Png), None => Err(format!("Unsupported image file: {}", source).into()), }, - "jpeg" | "jpg" => Ok(Jpeg(quality)), - "png" => Ok(Png), + "jpeg" | "jpg" => Ok(Jpeg(jpg_quality)), + "png" => Ok(Png), + "webp" => Ok(WebP(quality)), _ => Err(format!("Invalid image format: {}", format).into()), } } @@ -170,6 +175,8 @@ impl Format { "png" => Some(false), "gif" => Some(false), "bmp" => Some(false), + // It is assumed that webp is lossless, but it can be both + "webp" => Some(false), _ => None, }) .unwrap_or(None) @@ -182,6 +189,7 @@ impl Format { match *self { Png => "png", Jpeg(_) => "jpg", + WebP(_) => "webp" } } } @@ -193,7 +201,9 @@ impl Hash for Format { let q = match *self { Png => 0, - Jpeg(q) => q, + Jpeg(q) => q, + WebP(None) => 0, + WebP(Some(q)) => q }; hasher.write_u8(q); @@ -232,7 +242,7 @@ impl ImageOp { width: Option, height: Option, format: &str, - quality: u8, + quality: Option, ) -> Result { let op = ResizeOp::from_args(op, width, height)?; let format = Format::from_args(&source, format, quality)?; @@ -303,6 +313,19 @@ impl ImageOp { Format::Jpeg(q) => { img.write_to(&mut f, ImageOutputFormat::Jpeg(q))?; } + Format::WebP(q) => { + let encoder = webp::Encoder::from_image(&img); + let memory = match q { + Some(q) => { + encoder.encode(q as f32 / 100.) + } + None => { + encoder.encode_lossless() + } + }; + let mut bytes = memory.as_bytes(); + f.write_all(&mut bytes)?; + } } Ok(()) diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index fa7bb283..7f4d48d4 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -221,7 +221,6 @@ impl ResizeImage { static DEFAULT_OP: &str = "fill"; static DEFAULT_FMT: &str = "auto"; -const DEFAULT_Q: u8 = 75; impl TeraFn for ResizeImage { fn call(&self, args: &HashMap) -> Result { @@ -248,10 +247,11 @@ impl TeraFn for ResizeImage { .unwrap_or_else(|| DEFAULT_FMT.to_string()); let quality = - optional_arg!(u8, args.get("quality"), "`resize_image`: `quality` must be a number") - .unwrap_or(DEFAULT_Q); - if quality == 0 || quality > 100 { - return Err("`resize_image`: `quality` must be in range 1-100".to_string().into()); + optional_arg!(u8, args.get("quality"), "`resize_image`: `quality` must be a number"); + if let Some(quality) = quality { + if quality == 0 || quality > 100 { + return Err("`resize_image`: `quality` must be in range 1-100".to_string().into()); + } } let mut imageproc = self.imageproc.lock().unwrap(); diff --git a/docs/content/documentation/content/image-processing/index.md b/docs/content/documentation/content/image-processing/index.md index bd860c37..30a4a310 100644 --- a/docs/content/documentation/content/image-processing/index.md +++ b/docs/content/documentation/content/image-processing/index.md @@ -28,10 +28,11 @@ resize_image(path, width, height, op, format, quality) - `"auto"` - `"jpg"` - `"png"` + - `"webp"` The default is `"auto"`, this means that the format is chosen based on input image format. JPEG is chosen for JPEGs and other lossy formats, and PNG is chosen for PNGs and other lossless formats. -- `quality` (_optional_): JPEG quality of the resized image, in percent. Only used when encoding JPEGs; default value is `75`. +- `quality` (_optional_): JPEG or WebP quality of the resized image, in percent. Only used when encoding JPEGs or WebPs; for JPEG default value is `75`, for WebP default is lossless. ### Image processing and return value From 3ba2d3356471590ccf57a51462faab0774933857 Mon Sep 17 00:00:00 2001 From: apiraino Date: Fri, 19 Feb 2021 18:46:36 +0100 Subject: [PATCH 021/113] Copyright date always ending on current year (#1366) --- docs/templates/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/templates/index.html b/docs/templates/index.html index 307ccfe1..5fbdb9bc 100644 --- a/docs/templates/index.html +++ b/docs/templates/index.html @@ -99,7 +99,7 @@ {% endblock content %}
From 6d6df45f2377e2e319a85e40ea37b93b553d3998 Mon Sep 17 00:00:00 2001 From: Hanno Braun Date: Fri, 19 Feb 2021 20:51:08 +0100 Subject: [PATCH 022/113] Make shortcodes work in `markdown` filter (#1358) * Move `load_tera` to `templates` I don't know if this is a good place for it, conceptually. I'm moving it there because I need to use it from `templates`, and `templates` can't depend on `site`, because there's already a dependency in the opposite direction. * Load templates in `markdown` filter This enables the `markdown` filter to handle shortcodes, as long as those shortcodes don't access any context variables. Addresses #1350 * Update documentation of `markdown` filter * Only load templates for `markdown` filter once * Clarify `markdown` filter documentation This is a lightly edited version of what @southerntofu suggested. --- components/site/src/lib.rs | 6 +- components/site/src/tpls.rs | 60 ++++--------------- components/templates/src/filters.rs | 52 ++++++++++------ components/templates/src/lib.rs | 46 +++++++++++++- .../documentation/templates/overview.md | 3 +- 5 files changed, 93 insertions(+), 74 deletions(-) diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 48932742..bc374134 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -20,7 +20,7 @@ use front_matter::InsertAnchor; use library::{find_taxonomies, Library, Page, Paginator, Section, Taxonomy}; use relative_path::RelativePathBuf; use std::time::Instant; -use templates::render_redirect_template; +use templates::{load_tera, render_redirect_template}; use utils::fs::{ copy_directory, copy_file_if_needed, create_directory, create_file, ensure_directory_exists, }; @@ -80,7 +80,7 @@ impl Site { config.merge_with_theme(&path.join("themes").join(&theme).join("theme.toml"), &theme)?; } - let tera = tpls::load_tera(path, &config)?; + let tera = load_tera(path, &config)?; let content_path = path.join("content"); let static_path = path.join("static"); @@ -295,7 +295,7 @@ impl Site { // taxonomy Tera fns are loaded in `register_early_global_fns` // so we do need to populate it first. self.populate_taxonomies()?; - tpls::register_early_global_fns(self); + tpls::register_early_global_fns(self)?; self.populate_sections(); self.render_markdown()?; tpls::register_tera_global_fns(self); diff --git a/components/site/src/tpls.rs b/components/site/src/tpls.rs index 0377695e..19c6f7ff 100644 --- a/components/site/src/tpls.rs +++ b/components/site/src/tpls.rs @@ -1,58 +1,16 @@ -use std::path::Path; - -use tera::Tera; - use crate::Site; -use config::Config; -use errors::{bail, Error, Result}; -use templates::{filters, global_fns, ZOLA_TERA}; -use utils::templates::rewrite_theme_paths; - -pub fn load_tera(path: &Path, config: &Config) -> Result { - let tpl_glob = - format!("{}/{}", path.to_string_lossy().replace("\\", "/"), "templates/**/*.{*ml,md}"); - - // Only parsing as we might be extending templates from themes and that would error - // as we haven't loaded them yet - let mut tera = - Tera::parse(&tpl_glob).map_err(|e| Error::chain("Error parsing templates", e))?; - - if let Some(ref theme) = config.theme { - // Test that the templates folder exist for that theme - let theme_path = path.join("themes").join(&theme); - if !theme_path.join("templates").exists() { - bail!("Theme `{}` is missing a templates folder", theme); - } - - let theme_tpl_glob = format!( - "{}/{}", - path.to_string_lossy().replace("\\", "/"), - format!("themes/{}/templates/**/*.{{*ml,md}}", theme) - ); - let mut tera_theme = Tera::parse(&theme_tpl_glob) - .map_err(|e| Error::chain("Error parsing templates from themes", e))?; - rewrite_theme_paths(&mut tera_theme, &theme); - - if theme_path.join("templates").join("robots.txt").exists() { - tera_theme.add_template_file(theme_path.join("templates").join("robots.txt"), None)?; - } - tera.extend(&tera_theme)?; - } - tera.extend(&ZOLA_TERA)?; - tera.build_inheritance_chains()?; - - if path.join("templates").join("robots.txt").exists() { - tera.add_template_file(path.join("templates").join("robots.txt"), Some("robots.txt"))?; - } - - Ok(tera) -} +use templates::{filters, global_fns}; +use tera::Result as TeraResult; /// Adds global fns that are to be available to shortcodes while rendering markdown -pub fn register_early_global_fns(site: &mut Site) { +pub fn register_early_global_fns(site: &mut Site) -> TeraResult<()> { site.tera.register_filter( "markdown", - filters::MarkdownFilter::new(site.config.clone(), site.permalinks.clone()), + filters::MarkdownFilter::new( + site.base_path.clone(), + site.config.clone(), + site.permalinks.clone(), + )?, ); site.tera.register_function( @@ -87,6 +45,8 @@ pub fn register_early_global_fns(site: &mut Site) { site.content_path.clone(), ]), ); + + Ok(()) } /// Functions filled once we have parsed all the pages/sections only, so not available in shortcodes diff --git a/components/templates/src/filters.rs b/components/templates/src/filters.rs index 51ecca47..5e8575bd 100644 --- a/components/templates/src/filters.rs +++ b/components/templates/src/filters.rs @@ -1,21 +1,27 @@ use std::borrow::Cow; use std::collections::HashMap; use std::hash::BuildHasher; +use std::path::PathBuf; use base64::{decode, encode}; use config::Config; use rendering::{render_content, RenderContext}; -use tera::{to_value, try_get_value, Filter as TeraFilter, Result as TeraResult, Value}; +use tera::{Filter as TeraFilter, Result as TeraResult, Tera, Value, to_value, try_get_value}; + +use crate::load_tera; #[derive(Debug)] pub struct MarkdownFilter { config: Config, permalinks: HashMap, + tera: Tera, } impl MarkdownFilter { - pub fn new(config: Config, permalinks: HashMap) -> Self { - Self { config, permalinks } + pub fn new(path: PathBuf, config: Config, permalinks: HashMap) -> TeraResult { + let tera = load_tera(&path, &config) + .map_err(|err| tera::Error::msg(err))?; + Ok(Self { config, permalinks, tera }) } } @@ -23,6 +29,8 @@ impl TeraFilter for MarkdownFilter { fn filter(&self, value: &Value, args: &HashMap) -> TeraResult { let mut context = RenderContext::from_config(&self.config); context.permalinks = Cow::Borrowed(&self.permalinks); + context.tera = Cow::Borrowed(&self.tera); + let s = try_get_value!("markdown", "value", String, value); let inline = match args.get("inline") { Some(val) => try_get_value!("markdown", "inline", bool, val), @@ -63,7 +71,7 @@ pub fn base64_decode( #[cfg(test)] mod tests { - use std::collections::HashMap; + use std::{collections::HashMap, path::PathBuf}; use tera::{to_value, Filter}; @@ -72,7 +80,8 @@ mod tests { #[test] fn markdown_filter() { - let result = MarkdownFilter::new(Config::default(), HashMap::new()) + let result = MarkdownFilter::new(PathBuf::new(), Config::default(), HashMap::new()) + .unwrap() .filter(&to_value(&"# Hey").unwrap(), &HashMap::new()); assert!(result.is_ok()); assert_eq!(result.unwrap(), to_value(&"

Hey

\n").unwrap()); @@ -82,10 +91,11 @@ mod tests { fn markdown_filter_inline() { let mut args = HashMap::new(); args.insert("inline".to_string(), to_value(true).unwrap()); - let result = MarkdownFilter::new(Config::default(), HashMap::new()).filter( - &to_value(&"Using `map`, `filter`, and `fold` instead of `for`").unwrap(), - &args, - ); + let result = + MarkdownFilter::new(PathBuf::new(), Config::default(), HashMap::new()).unwrap().filter( + &to_value(&"Using `map`, `filter`, and `fold` instead of `for`").unwrap(), + &args, + ); assert!(result.is_ok()); assert_eq!(result.unwrap(), to_value(&"Using map, filter, and fold instead of for").unwrap()); } @@ -95,18 +105,19 @@ mod tests { fn markdown_filter_inline_tables() { let mut args = HashMap::new(); args.insert("inline".to_string(), to_value(true).unwrap()); - let result = MarkdownFilter::new(Config::default(), HashMap::new()).filter( - &to_value( - &r#" + let result = + MarkdownFilter::new(PathBuf::new(), Config::default(), HashMap::new()).unwrap().filter( + &to_value( + &r#" |id|author_id| timestamp_created|title |content | |-:|--------:|-----------------------:|:---------------------|:-----------------| | 1| 1|2018-09-05 08:03:43.141Z|How to train your ORM |Badly written blog| | 2| 1|2018-08-22 13:11:50.050Z|How to bake a nice pie|Badly written blog| "#, - ) - .unwrap(), - &args, - ); + ) + .unwrap(), + &args, + ); assert!(result.is_ok()); assert!(result.unwrap().as_str().unwrap().contains("")); } @@ -120,13 +131,15 @@ mod tests { config.markdown.external_links_target_blank = true; let md = "Hello :smile: ..."; - let result = MarkdownFilter::new(config.clone(), HashMap::new()) + let result = MarkdownFilter::new(PathBuf::new(), config.clone(), HashMap::new()) + .unwrap() .filter(&to_value(&md).unwrap(), &HashMap::new()); assert!(result.is_ok()); assert_eq!(result.unwrap(), to_value(&"

Hello https://google.com 😄 …

\n").unwrap()); let md = "```py\ni=0\n```"; - let result = MarkdownFilter::new(config, HashMap::new()) + let result = MarkdownFilter::new(PathBuf::new(), config, HashMap::new()) + .unwrap() .filter(&to_value(&md).unwrap(), &HashMap::new()); assert!(result.is_ok()); assert!(result.unwrap().as_str().unwrap().contains("
 Result {
     tera.render("internal/alias.html", &context)
         .map_err(|e| Error::chain(format!("Failed to render alias for '{}'", url), e))
 }
+
+pub fn load_tera(path: &Path, config: &Config) -> Result {
+    let tpl_glob =
+        format!("{}/{}", path.to_string_lossy().replace("\\", "/"), "templates/**/*.{*ml,md}");
+
+    // Only parsing as we might be extending templates from themes and that would error
+    // as we haven't loaded them yet
+    let mut tera =
+        Tera::parse(&tpl_glob).map_err(|e| Error::chain("Error parsing templates", e))?;
+
+    if let Some(ref theme) = config.theme {
+        // Test that the templates folder exist for that theme
+        let theme_path = path.join("themes").join(&theme);
+        if !theme_path.join("templates").exists() {
+            bail!("Theme `{}` is missing a templates folder", theme);
+        }
+
+        let theme_tpl_glob = format!(
+            "{}/{}",
+            path.to_string_lossy().replace("\\", "/"),
+            format!("themes/{}/templates/**/*.{{*ml,md}}", theme)
+        );
+        let mut tera_theme = Tera::parse(&theme_tpl_glob)
+            .map_err(|e| Error::chain("Error parsing templates from themes", e))?;
+        rewrite_theme_paths(&mut tera_theme, &theme);
+
+        if theme_path.join("templates").join("robots.txt").exists() {
+            tera_theme.add_template_file(theme_path.join("templates").join("robots.txt"), None)?;
+        }
+        tera.extend(&tera_theme)?;
+    }
+    tera.extend(&ZOLA_TERA)?;
+    tera.build_inheritance_chains()?;
+
+    if path.join("templates").join("robots.txt").exists() {
+        tera.add_template_file(path.join("templates").join("robots.txt"), Some("robots.txt"))?;
+    }
+
+    Ok(tera)
+}
diff --git a/docs/content/documentation/templates/overview.md b/docs/content/documentation/templates/overview.md
index 086294d5..118eeb4d 100644
--- a/docs/content/documentation/templates/overview.md
+++ b/docs/content/documentation/templates/overview.md
@@ -64,7 +64,8 @@ Zola adds a few filters in addition to [those](https://tera.netlify.com/docs/#fi
 in Tera.
 
 ### markdown
-Converts the given variable to HTML using Markdown. Shortcodes won't work within this filter.
+Converts the given variable to HTML using Markdown. Please note that shortcodes evaluated by this filter cannot access the current rendering context. `config` will be available, but accessing `section` or `page` (among others) from a shortcode called within the `markdown` filter will prevent your site from building. See [this discussion](https://github.com/getzola/zola/pull/1358).
+
 By default, the filter will wrap all text in a paragraph. To disable this behaviour, you can
 pass `true` to the inline argument:
 

From d3ab3936de8657ee405693b7ed79790af90a313f Mon Sep 17 00:00:00 2001
From: Skyper 
Date: Sat, 20 Feb 2021 12:31:37 +0000
Subject: [PATCH 023/113] [WIP] Add support for base64-encoded hash values to
 'get_file_hash' (#1339)

* Add support for base64-encoded hash values

The global template function 'get_file_hash' can now return a
base64-encoded hash value when its 'base64' parameter is set to true.

See discussion in #519.

* Fix integrity attribute's value in test site

SRI hash values must be base64-encoded.

* Update documentation about 'get_file_hash'

* Fix 'can_get_hash_for_static_files' unit test
---
 components/site/tests/site.rs                 |  7 +-
 components/templates/src/global_fns/mod.rs    | 84 +++++++++++++++++--
 .../documentation/templates/overview.md       | 18 ++--
 test_site/templates/index.html                |  2 +-
 4 files changed, 96 insertions(+), 15 deletions(-)

diff --git a/components/site/tests/site.rs b/components/site/tests/site.rs
index 1958b25d..178cda04 100644
--- a/components/site/tests/site.rs
+++ b/components/site/tests/site.rs
@@ -761,8 +761,11 @@ fn can_get_hash_for_static_files() {
         "index.html",
         "src=\"https://replace-this-with-your-url.com/scripts/hello.js\""
     ));
-    assert!(file_contains!(public, "index.html",
-        "integrity=\"sha384-01422f31eaa721a6c4ac8c6fa09a27dd9259e0dfcf3c7593d7810d912a9de5ca2f582df978537bcd10f76896db61fbb9\""));
+    assert!(file_contains!(
+        public,
+        "index.html",
+        "integrity=\"sha384-AUIvMeqnIabErIxvoJon3ZJZ4N/PPHWT14ENkSqd5covWC35eFN7zRD3aJbbYfu5\""
+    ));
 }
 
 #[test]
diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs
index 7f4d48d4..8b8fc910 100644
--- a/components/templates/src/global_fns/mod.rs
+++ b/components/templates/src/global_fns/mod.rs
@@ -4,6 +4,7 @@ use std::path::PathBuf;
 use std::sync::{Arc, Mutex, RwLock};
 use std::{fs, io, result};
 
+use base64::encode as encode_b64;
 use sha2::{Digest, Sha256, Sha384, Sha512};
 use svg_metadata as svg;
 use tera::{from_value, to_value, Error, Function as TeraFn, Result, Value};
@@ -95,18 +96,36 @@ fn compute_file_sha256(mut file: fs::File) -> result::Result
     Ok(format!("{:x}", hasher.finalize()))
 }
 
+fn compute_file_sha256_base64(mut file: fs::File) -> result::Result {
+    let mut hasher = Sha256::new();
+    io::copy(&mut file, &mut hasher)?;
+    Ok(format!("{}", encode_b64(hasher.finalize())))
+}
+
 fn compute_file_sha384(mut file: fs::File) -> result::Result {
     let mut hasher = Sha384::new();
     io::copy(&mut file, &mut hasher)?;
     Ok(format!("{:x}", hasher.finalize()))
 }
 
+fn compute_file_sha384_base64(mut file: fs::File) -> result::Result {
+    let mut hasher = Sha384::new();
+    io::copy(&mut file, &mut hasher)?;
+    Ok(format!("{}", encode_b64(hasher.finalize())))
+}
+
 fn compute_file_sha512(mut file: fs::File) -> result::Result {
     let mut hasher = Sha512::new();
     io::copy(&mut file, &mut hasher)?;
     Ok(format!("{:x}", hasher.finalize()))
 }
 
+fn compute_file_sha512_base64(mut file: fs::File) -> result::Result {
+    let mut hasher = Sha512::new();
+    io::copy(&mut file, &mut hasher)?;
+    Ok(format!("{}", encode_b64(hasher.finalize())))
+}
+
 fn file_not_found_err(search_paths: &[PathBuf], url: &str) -> Result {
     Err(format!(
         "file `{}` not found; searched in{}",
@@ -178,6 +197,7 @@ impl GetFileHash {
 }
 
 const DEFAULT_SHA_TYPE: u16 = 384;
+const DEFAULT_BASE64: bool = false;
 
 impl TeraFn for GetFileHash {
     fn call(&self, args: &HashMap) -> Result {
@@ -192,12 +212,21 @@ impl TeraFn for GetFileHash {
             "`get_file_hash`: `sha_type` must be 256, 384 or 512"
         )
         .unwrap_or(DEFAULT_SHA_TYPE);
+        let base64 = optional_arg!(
+            bool,
+            args.get("base64"),
+            "`get_file_hash`: `base64` must be true or false"
+        )
+        .unwrap_or(DEFAULT_BASE64);
 
-        let compute_hash_fn = match sha_type {
-            256 => compute_file_sha256,
-            384 => compute_file_sha384,
-            512 => compute_file_sha512,
-            _ => return Err("`get_file_hash`: `sha_type` must be 256, 384 or 512".into()),
+        let compute_hash_fn = match (sha_type, base64) {
+            (256, true) => compute_file_sha256_base64,
+            (256, false) => compute_file_sha256,
+            (384, true) => compute_file_sha384_base64,
+            (384, false) => compute_file_sha384,
+            (512, true) => compute_file_sha512_base64,
+            (512, false) => compute_file_sha512,
+            _ => return Err("`get_file_hash`: bad arguments".into()),
         };
 
         let hash = open_file(&self.search_paths, &path).and_then(compute_hash_fn);
@@ -819,12 +848,37 @@ title = "A title"
         );
     }
 
+    #[test]
+    fn can_get_file_hash_sha256_base64() {
+        let static_fn = GetFileHash::new(vec![TEST_CONTEXT.static_path.clone()]);
+        let mut args = HashMap::new();
+        args.insert("path".to_string(), to_value("app.css").unwrap());
+        args.insert("sha_type".to_string(), to_value(256).unwrap());
+        args.insert("base64".to_string(), to_value(true).unwrap());
+        assert_eq!(static_fn.call(&args).unwrap(), "Vy5pHcaMP81lOuRjJhvbOPNdxvAXFdnOaHmTGd0ViEA=");
+    }
+
     #[test]
     fn can_get_file_hash_sha384() {
         let static_fn = GetFileHash::new(vec![TEST_CONTEXT.static_path.clone()]);
         let mut args = HashMap::new();
         args.insert("path".to_string(), to_value("app.css").unwrap());
-        assert_eq!(static_fn.call(&args).unwrap(), "141c09bd28899773b772bbe064d8b718fa1d6f2852b7eafd5ed6689d26b74883b79e2e814cd69d5b52ab476aa284c414");
+        assert_eq!(
+            static_fn.call(&args).unwrap(),
+            "141c09bd28899773b772bbe064d8b718fa1d6f2852b7eafd5ed6689d26b74883b79e2e814cd69d5b52ab476aa284c414"
+            );
+    }
+
+    #[test]
+    fn can_get_file_hash_sha384_base64() {
+        let static_fn = GetFileHash::new(vec![TEST_CONTEXT.static_path.clone()]);
+        let mut args = HashMap::new();
+        args.insert("path".to_string(), to_value("app.css").unwrap());
+        args.insert("base64".to_string(), to_value(true).unwrap());
+        assert_eq!(
+            static_fn.call(&args).unwrap(),
+            "FBwJvSiJl3O3crvgZNi3GPodbyhSt+r9XtZonSa3SIO3ni6BTNadW1KrR2qihMQU"
+        );
     }
 
     #[test]
@@ -833,7 +887,23 @@ title = "A title"
         let mut args = HashMap::new();
         args.insert("path".to_string(), to_value("app.css").unwrap());
         args.insert("sha_type".to_string(), to_value(512).unwrap());
-        assert_eq!(static_fn.call(&args).unwrap(), "379dfab35123b9159d9e4e92dc90e2be44cf3c2f7f09b2e2df80a1b219b461de3556c93e1a9ceb3008e999e2d6a54b4f1d65ee9be9be63fa45ec88931623372f");
+        assert_eq!(
+            static_fn.call(&args).unwrap(),
+            "379dfab35123b9159d9e4e92dc90e2be44cf3c2f7f09b2e2df80a1b219b461de3556c93e1a9ceb3008e999e2d6a54b4f1d65ee9be9be63fa45ec88931623372f"
+        );
+    }
+
+    #[test]
+    fn can_get_file_hash_sha512_base64() {
+        let static_fn = GetFileHash::new(vec![TEST_CONTEXT.static_path.clone()]);
+        let mut args = HashMap::new();
+        args.insert("path".to_string(), to_value("app.css").unwrap());
+        args.insert("sha_type".to_string(), to_value(512).unwrap());
+        args.insert("base64".to_string(), to_value(true).unwrap());
+        assert_eq!(
+            static_fn.call(&args).unwrap(),
+            "N536s1EjuRWdnk6S3JDivkTPPC9/CbLi34Chshm0Yd41Vsk+GpzrMAjpmeLWpUtPHWXum+m+Y/pF7IiTFiM3Lw=="
+        );
     }
 
     #[test]
diff --git a/docs/content/documentation/templates/overview.md b/docs/content/documentation/templates/overview.md
index 118eeb4d..f324eb36 100644
--- a/docs/content/documentation/templates/overview.md
+++ b/docs/content/documentation/templates/overview.md
@@ -144,26 +144,34 @@ An example is:
 In the case of non-internal links, you can also add a cachebust of the format `?h=` at the end of a URL
 by passing `cachebust=true` to the `get_url` function.
 
-
 ### `get_file_hash`
 
-Gets the hash digest for a static file. Supported hashes are SHA-256, SHA-384 (default) and SHA-512. Requires `path`. The `sha_type` key is optional and must be one of 256, 384 or 512.
+Returns the hash digest of a static file. Supported hashing algorithms are
+SHA-256, SHA-384 (default) and SHA-512. Requires `path`. The `sha_type`
+parameter is optional and must be one of 256, 384 or 512.
 
 ```jinja2
 {{/* get_file_hash(path="js/app.js", sha_type=256) */}}
 ```
 
-This can be used to implement subresource integrity. Do note that subresource integrity is typically used when using external scripts, which `get_file_hash` does not support.
+The function can also output a base64-encoded hash value when its `base64`
+parameter is set to `true`. This can be used to implement [subresource
+integrity](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity).
 
 ```jinja2
 
+  integrity="sha384-{{ get_file_hash(path="js/app.js", sha_type=384, base64=true) | safe }}">
 ```
 
-Whenever hashing files, whether using `get_file_hash` or `get_url(..., cachebust=true)`, the file is searched for in three places: `static/`, `content/` and the output path (so e.g. compiled SASS can be hashed, too.)
+Do note that subresource integrity is typically used when using external
+scripts, which `get_file_hash` does not support.
 
+Whenever hashing files, whether using `get_file_hash` or `get_url(...,
+cachebust=true)`, the file is searched for in three places: `static/`,
+`content/` and the output path (so e.g. compiled SASS can be hashed, too.)
 
 ### `get_image_metadata`
+
 Gets metadata for an image. This supports common formats like JPEG, PNG, as well as SVG.
 Currently, the only supported keys are `width` and `height`.
 
diff --git a/test_site/templates/index.html b/test_site/templates/index.html
index 9ed72df3..35a24be4 100644
--- a/test_site/templates/index.html
+++ b/test_site/templates/index.html
@@ -14,5 +14,5 @@
 
 {% block script %}
     
+            integrity="sha384-{{ get_file_hash(path="scripts/hello.js", base64=true) | safe }}">
 {% endblock script %}

From 3262f69bb06b619d333aacae7cb0e5abe8d497e5 Mon Sep 17 00:00:00 2001
From: Vincent Prouillet 
Date: Sat, 20 Feb 2021 14:07:36 +0100
Subject: [PATCH 024/113] Single compute_hash fn + cargo fmt

---
 components/config/src/config/mod.rs        |  4 +-
 components/imageproc/src/lib.rs            | 20 +++---
 components/site/src/lib.rs                 |  3 +-
 components/templates/src/filters.rs        | 11 ++--
 components/templates/src/global_fns/mod.rs | 74 +++++++++-------------
 components/templates/src/lib.rs            |  2 +-
 6 files changed, 50 insertions(+), 64 deletions(-)

diff --git a/components/config/src/config/mod.rs b/components/config/src/config/mod.rs
index a8118c78..57682b3b 100644
--- a/components/config/src/config/mod.rs
+++ b/components/config/src/config/mod.rs
@@ -170,8 +170,8 @@ impl Config {
     /// Parses a config file from the given path
     pub fn from_file>(path: P) -> Result {
         let path = path.as_ref();
-        let content = read_file(path)
-            .map_err(|e| errors::Error::chain("Failed to load config", e))?;
+        let content =
+            read_file(path).map_err(|e| errors::Error::chain("Failed to load config", e))?;
         Config::parse(&content)
     }
 
diff --git a/components/imageproc/src/lib.rs b/components/imageproc/src/lib.rs
index e0daaf64..97cad10e 100644
--- a/components/imageproc/src/lib.rs
+++ b/components/imageproc/src/lib.rs
@@ -1,11 +1,11 @@
-use std::{collections::hash_map::DefaultHasher, io::Write};
 use std::collections::hash_map::Entry as HEntry;
 use std::collections::HashMap;
 use std::fs::{self, File};
 use std::hash::{Hash, Hasher};
 use std::path::{Path, PathBuf};
+use std::{collections::hash_map::DefaultHasher, io::Write};
 
-use image::{EncodableLayout, imageops::FilterType};
+use image::{imageops::FilterType, EncodableLayout};
 use image::{GenericImageView, ImageOutputFormat};
 use lazy_static::lazy_static;
 use rayon::prelude::*;
@@ -159,7 +159,7 @@ impl Format {
                 None => Err(format!("Unsupported image file: {}", source).into()),
             },
             "jpeg" | "jpg" => Ok(Jpeg(jpg_quality)),
-            "png" => Ok(Png),            
+            "png" => Ok(Png),
             "webp" => Ok(WebP(quality)),
             _ => Err(format!("Invalid image format: {}", format).into()),
         }
@@ -189,7 +189,7 @@ impl Format {
         match *self {
             Png => "png",
             Jpeg(_) => "jpg",
-            WebP(_) => "webp"
+            WebP(_) => "webp",
         }
     }
 }
@@ -201,9 +201,9 @@ impl Hash for Format {
 
         let q = match *self {
             Png => 0,
-            Jpeg(q) => q,                        
+            Jpeg(q) => q,
             WebP(None) => 0,
-            WebP(Some(q)) => q
+            WebP(Some(q)) => q,
         };
 
         hasher.write_u8(q);
@@ -316,12 +316,8 @@ impl ImageOp {
             Format::WebP(q) => {
                 let encoder = webp::Encoder::from_image(&img);
                 let memory = match q {
-                    Some(q) => {
-                        encoder.encode(q as f32 / 100.)
-                    }
-                    None => {
-                        encoder.encode_lossless()
-                    }
+                    Some(q) => encoder.encode(q as f32 / 100.),
+                    None => encoder.encode_lossless(),
                 };
                 let mut bytes = memory.as_bytes();
                 f.write_all(&mut bytes)?;
diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs
index bc374134..bf15f75f 100644
--- a/components/site/src/lib.rs
+++ b/components/site/src/lib.rs
@@ -77,7 +77,8 @@ impl Site {
 
         if let Some(theme) = config.theme.clone() {
             // Grab data from the extra section of the theme
-            config.merge_with_theme(&path.join("themes").join(&theme).join("theme.toml"), &theme)?;
+            config
+                .merge_with_theme(&path.join("themes").join(&theme).join("theme.toml"), &theme)?;
         }
 
         let tera = load_tera(path, &config)?;
diff --git a/components/templates/src/filters.rs b/components/templates/src/filters.rs
index 5e8575bd..17ccc17c 100644
--- a/components/templates/src/filters.rs
+++ b/components/templates/src/filters.rs
@@ -6,7 +6,7 @@ use std::path::PathBuf;
 use base64::{decode, encode};
 use config::Config;
 use rendering::{render_content, RenderContext};
-use tera::{Filter as TeraFilter, Result as TeraResult, Tera, Value, to_value, try_get_value};
+use tera::{to_value, try_get_value, Filter as TeraFilter, Result as TeraResult, Tera, Value};
 
 use crate::load_tera;
 
@@ -18,9 +18,12 @@ pub struct MarkdownFilter {
 }
 
 impl MarkdownFilter {
-    pub fn new(path: PathBuf, config: Config, permalinks: HashMap) -> TeraResult {
-        let tera = load_tera(&path, &config)
-            .map_err(|err| tera::Error::msg(err))?;
+    pub fn new(
+        path: PathBuf,
+        config: Config,
+        permalinks: HashMap,
+    ) -> TeraResult {
+        let tera = load_tera(&path, &config).map_err(|err| tera::Error::msg(err))?;
         Ok(Self { config, permalinks, tera })
     }
 }
diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs
index 8b8fc910..42b2cbf9 100644
--- a/components/templates/src/global_fns/mod.rs
+++ b/components/templates/src/global_fns/mod.rs
@@ -5,7 +5,7 @@ use std::sync::{Arc, Mutex, RwLock};
 use std::{fs, io, result};
 
 use base64::encode as encode_b64;
-use sha2::{Digest, Sha256, Sha384, Sha512};
+use sha2::{digest, Sha256, Sha384, Sha512};
 use svg_metadata as svg;
 use tera::{from_value, to_value, Error, Function as TeraFn, Result, Value};
 
@@ -90,40 +90,22 @@ fn open_file(search_paths: &[PathBuf], url: &str) -> result::Result result::Result {
-    let mut hasher = Sha256::new();
+fn compute_file_hash(
+    mut file: fs::File,
+    base64: bool,
+) -> result::Result
+where
+    digest::Output: core::fmt::LowerHex,
+    D: std::io::Write,
+{
+    let mut hasher = D::new();
     io::copy(&mut file, &mut hasher)?;
-    Ok(format!("{:x}", hasher.finalize()))
-}
-
-fn compute_file_sha256_base64(mut file: fs::File) -> result::Result {
-    let mut hasher = Sha256::new();
-    io::copy(&mut file, &mut hasher)?;
-    Ok(format!("{}", encode_b64(hasher.finalize())))
-}
-
-fn compute_file_sha384(mut file: fs::File) -> result::Result {
-    let mut hasher = Sha384::new();
-    io::copy(&mut file, &mut hasher)?;
-    Ok(format!("{:x}", hasher.finalize()))
-}
-
-fn compute_file_sha384_base64(mut file: fs::File) -> result::Result {
-    let mut hasher = Sha384::new();
-    io::copy(&mut file, &mut hasher)?;
-    Ok(format!("{}", encode_b64(hasher.finalize())))
-}
-
-fn compute_file_sha512(mut file: fs::File) -> result::Result {
-    let mut hasher = Sha512::new();
-    io::copy(&mut file, &mut hasher)?;
-    Ok(format!("{:x}", hasher.finalize()))
-}
-
-fn compute_file_sha512_base64(mut file: fs::File) -> result::Result {
-    let mut hasher = Sha512::new();
-    io::copy(&mut file, &mut hasher)?;
-    Ok(format!("{}", encode_b64(hasher.finalize())))
+    let val = format!("{:x}", hasher.finalize());
+    if base64 {
+        Ok(encode_b64(val))
+    } else {
+        Ok(val)
+    }
 }
 
 fn file_not_found_err(search_paths: &[PathBuf], url: &str) -> Result {
@@ -174,7 +156,9 @@ impl TeraFn for GetUrl {
             }
 
             if cachebust {
-                match open_file(&self.search_paths, &path).and_then(compute_file_sha256) {
+                match open_file(&self.search_paths, &path)
+                    .and_then(|f| compute_file_hash::(f, false))
+                {
                     Ok(hash) => {
                         permalink = format!("{}?h={}", permalink, hash);
                     }
@@ -219,17 +203,19 @@ impl TeraFn for GetFileHash {
         )
         .unwrap_or(DEFAULT_BASE64);
 
-        let compute_hash_fn = match (sha_type, base64) {
-            (256, true) => compute_file_sha256_base64,
-            (256, false) => compute_file_sha256,
-            (384, true) => compute_file_sha384_base64,
-            (384, false) => compute_file_sha384,
-            (512, true) => compute_file_sha512_base64,
-            (512, false) => compute_file_sha512,
-            _ => return Err("`get_file_hash`: bad arguments".into()),
+        let f = match open_file(&self.search_paths, &path) {
+            Ok(f) => f,
+            Err(e) => {
+                return Err(format!("File {} could not be open {}", path, e).into());
+            }
         };
 
-        let hash = open_file(&self.search_paths, &path).and_then(compute_hash_fn);
+        let hash = match sha_type {
+            256 => compute_file_hash::(f, base64),
+            384 => compute_file_hash::(f, base64),
+            512 => compute_file_hash::(f, base64),
+            _ => return Err("`get_file_hash`: Invalid sha value".into()),
+        };
 
         match hash {
             Ok(digest) => Ok(to_value(digest).unwrap()),
diff --git a/components/templates/src/lib.rs b/components/templates/src/lib.rs
index 5751fe10..d7ff9b84 100644
--- a/components/templates/src/lib.rs
+++ b/components/templates/src/lib.rs
@@ -7,7 +7,7 @@ use config::Config;
 use lazy_static::lazy_static;
 use tera::{Context, Tera};
 
-use errors::{Error, Result, bail};
+use errors::{bail, Error, Result};
 use utils::templates::rewrite_theme_paths;
 
 lazy_static! {

From 5ce082dfada7caa68454fd5c60ae3e40e16a4078 Mon Sep 17 00:00:00 2001
From: apiraino 
Date: Sat, 20 Feb 2021 17:26:46 +0100
Subject: [PATCH 025/113] Add Sourcehut Pages as deployment platform (#1365)

---
 .../documentation/deployment/sourcehut.md     | 53 +++++++++++++++++++
 1 file changed, 53 insertions(+)
 create mode 100644 docs/content/documentation/deployment/sourcehut.md

diff --git a/docs/content/documentation/deployment/sourcehut.md b/docs/content/documentation/deployment/sourcehut.md
new file mode 100644
index 00000000..7f5449f2
--- /dev/null
+++ b/docs/content/documentation/deployment/sourcehut.md
@@ -0,0 +1,53 @@
++++
+title = "Sourcehut Pages"
+weight = 15
++++
+
+Deploying your static Zola website on [Sourcehut Pages][srht] is very simple.
+
+You only need to create a manifest `.build.yml` file in your root folder of your Zola project and push your changes to the Sourcehut git/hg repository. To create your `.build.yml` you can start by [a template][srht-tpl].
+
+Example:
+
+``` yaml
+image: alpine/edge
+packages: [ zola ]
+oauth: pages.sr.ht/PAGES:RW
+environment:
+  site: www.example.org
+sources:
+  - https://git.sr.ht/~your_username/my-website
+tasks:
+  - build: |
+      cd my-website
+      zola build
+  - package: |
+      cd my-website
+      tar -C public -cvz . > ../site.tar.gz
+  - upload: |
+      acurl -f https://pages.sr.ht/publish/$site -Fcontent=@site.tar.gz
+```
+
+This manifest will checkout your code from `sources`, build and upload the generated static files to `site` using a wrapper script around `curl` (called `acurl`, already available in all Sourcehut builds).
+
+From this template you need to customize the variable `site` with the domain that will host your website and `sources` to point to your Sourcehut git/hg public URL (in this example `my-website` is the name of the repository).
+
+Then commit and push your changes:
+
+``` sh
+$ git push
+Enumerating objects: 5, done.
+...
+remote: Build started:
+remote: https://builds.sr.ht/~your_username/job/430625 [.build.yml]
+To git.sr.ht:~your_username/www
+   fbe9afa..59ae556  master -> master
+```
+
+The build job will be automatically triggered. Notice that Sourcehut returns a direct link to the build page.
+
+By default you can use a subdomain of Sourcehut Pages to host your static website (e.g. "your_username.srht.site"). If you want to use a custom domain (e.g. "blog.mydomain.org"), you will need to configure a DNS record to point to the Sourcehut server. Instructions to do this are detailed on [Sourcehut][srht-custom-domain].
+
+[srht]: https://srht.site
+[srht-tpl]: https://git.sr.ht/~sircmpwn/pages.sr.ht-examples
+[srht-custom-domain]: https://srht.site/custom-domains

From 0b94e0917d25bd0ab5db026dc9e22b7dfa4ed2bb Mon Sep 17 00:00:00 2001
From: Vincent Prouillet 
Date: Sun, 21 Feb 2021 08:41:49 +0100
Subject: [PATCH 026/113] Update changelog

---
 CHANGELOG.md | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index c147c306..4fec052d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -10,6 +10,11 @@
 
 - internal links are now resolved in the `markdown` filter in the templates (#1296 #1316)
 - Add a `required` argument to `load_data` so it can be allowed to fail
+- `get_file_hash` now supports returning the base64 encoded hash
+- the `markdown` filter not renders shortcodes
+- Image processing now supports WebP
+- Fix `zola serve` failing for some static files
+- Fix `zola serve` not picking up directory renaming
 
 ## 0.13.0 (2021-01-09)
 

From 2bbd3bd4240b23d581bc7f5b8b2703d5155af631 Mon Sep 17 00:00:00 2001
From: Vincent Prouillet 
Date: Sun, 21 Feb 2021 09:09:02 +0100
Subject: [PATCH 027/113] Fix compute_hash

---
 components/templates/src/global_fns/mod.rs | 18 +++++++-----------
 1 file changed, 7 insertions(+), 11 deletions(-)

diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs
index 42b2cbf9..b0c98b9f 100644
--- a/components/templates/src/global_fns/mod.rs
+++ b/components/templates/src/global_fns/mod.rs
@@ -100,11 +100,10 @@ where
 {
     let mut hasher = D::new();
     io::copy(&mut file, &mut hasher)?;
-    let val = format!("{:x}", hasher.finalize());
     if base64 {
-        Ok(encode_b64(val))
+        Ok(format!("{}", encode_b64(hasher.finalize())))
     } else {
-        Ok(val)
+        Ok(format!("{:x}", hasher.finalize()))
     }
 }
 
@@ -206,7 +205,7 @@ impl TeraFn for GetFileHash {
         let f = match open_file(&self.search_paths, &path) {
             Ok(f) => f,
             Err(e) => {
-                return Err(format!("File {} could not be open {}", path, e).into());
+                return Err(format!("File {} could not be open: {} (searched in {:?})", path, e, self.search_paths).into());
             }
         };
 
@@ -897,12 +896,9 @@ title = "A title"
         let static_fn = GetFileHash::new(vec![TEST_CONTEXT.static_path.clone()]);
         let mut args = HashMap::new();
         args.insert("path".to_string(), to_value("doesnt-exist").unwrap());
-        assert_eq!(
-            format!(
-                "file `doesnt-exist` not found; searched in {}",
-                TEST_CONTEXT.static_path.to_str().unwrap()
-            ),
-            format!("{}", static_fn.call(&args).unwrap_err())
-        );
+        let err = format!("{}", static_fn.call(&args).unwrap_err());
+        println!("{:?}", err);
+
+        assert!(err.contains("File doesnt-exist could not be open"));
     }
 }

From 7fc7ef4720cf85866a7734dca83a152a9d2b2be9 Mon Sep 17 00:00:00 2001
From: Vincent Prouillet 
Date: Mon, 22 Feb 2021 20:39:31 +0100
Subject: [PATCH 028/113] Add tests for slug strategy in filenames with dates

---
 components/library/src/content/page.rs     | 44 ++++++++++++++++++++++
 components/templates/src/global_fns/mod.rs |  6 ++-
 2 files changed, 49 insertions(+), 1 deletion(-)

diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs
index 13034158..cb69dbcf 100644
--- a/components/library/src/content/page.rs
+++ b/components/library/src/content/page.rs
@@ -683,6 +683,26 @@ Hello world
         assert_eq!(page.slug, "hello");
     }
 
+    // https://github.com/getzola/zola/pull/1323#issuecomment-779401063
+    #[test]
+    fn can_get_date_from_short_date_in_filename_respects_slugification_strategy() {
+        let mut config = Config::default();
+        config.slugify.paths = SlugifyStrategy::Off;
+        let content = r#"
++++
++++
+Hello world
+"#
+            .to_string();
+        let res =
+            Page::parse(Path::new("2018-10-08_ こんにちは.md"), &content, &config, &PathBuf::new());
+        assert!(res.is_ok());
+        let page = res.unwrap();
+
+        assert_eq!(page.meta.date, Some("2018-10-08".to_string()));
+        assert_eq!(page.slug, " こんにちは");
+    }
+
     #[test]
     fn can_get_date_from_full_rfc3339_date_in_filename() {
         let config = Config::default();
@@ -705,6 +725,30 @@ Hello world
         assert_eq!(page.slug, "hello");
     }
 
+    // https://github.com/getzola/zola/pull/1323#issuecomment-779401063
+    #[test]
+    fn can_get_date_from_full_rfc3339_date_in_filename_respects_slugification_strategy() {
+        let mut config = Config::default();
+        config.slugify.paths = SlugifyStrategy::Off;
+        let content = r#"
++++
++++
+Hello world
+"#
+            .to_string();
+        let res = Page::parse(
+            Path::new("2018-10-02T15:00:00Z- こんにちは.md"),
+            &content,
+            &config,
+            &PathBuf::new(),
+        );
+        assert!(res.is_ok());
+        let page = res.unwrap();
+
+        assert_eq!(page.meta.date, Some("2018-10-02T15:00:00Z".to_string()));
+        assert_eq!(page.slug, " こんにちは");
+    }
+
     #[test]
     fn frontmatter_date_override_filename_date() {
         let config = Config::default();
diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs
index b0c98b9f..4fe0ccaa 100644
--- a/components/templates/src/global_fns/mod.rs
+++ b/components/templates/src/global_fns/mod.rs
@@ -205,7 +205,11 @@ impl TeraFn for GetFileHash {
         let f = match open_file(&self.search_paths, &path) {
             Ok(f) => f,
             Err(e) => {
-                return Err(format!("File {} could not be open: {} (searched in {:?})", path, e, self.search_paths).into());
+                return Err(format!(
+                    "File {} could not be open: {} (searched in {:?})",
+                    path, e, self.search_paths
+                )
+                .into());
             }
         };
 

From 2a46e07e74e54503f41ea424a38c8c15c7b54f00 Mon Sep 17 00:00:00 2001
From: Vincent Prouillet 
Date: Mon, 22 Feb 2021 21:27:50 +0100
Subject: [PATCH 029/113] Add path to TaxonomyTerm

Closes #1336
---
 CHANGELOG.md                                       |  1 +
 components/library/src/pagination/mod.rs           |  2 ++
 components/library/src/taxonomies/mod.rs           | 14 ++++++++++----
 docs/content/documentation/templates/taxonomies.md |  1 +
 4 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 4fec052d..a632eb32 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -15,6 +15,7 @@
 - Image processing now supports WebP
 - Fix `zola serve` failing for some static files
 - Fix `zola serve` not picking up directory renaming
+- Add `path` to the taxonomy terms to be on par with pages and sections
 
 ## 0.13.0 (2021-01-09)
 
diff --git a/components/library/src/pagination/mod.rs b/components/library/src/pagination/mod.rs
index 37037f44..a5e53a15 100644
--- a/components/library/src/pagination/mod.rs
+++ b/components/library/src/pagination/mod.rs
@@ -413,6 +413,7 @@ mod tests {
         let taxonomy_item = TaxonomyItem {
             name: "Something".to_string(),
             slug: "something".to_string(),
+            path: "/tags/something".to_string(),
             permalink: "https://vincent.is/tags/something/".to_string(),
             pages: library.pages().keys().collect(),
         };
@@ -446,6 +447,7 @@ mod tests {
         let taxonomy_item = TaxonomyItem {
             name: "Something".to_string(),
             slug: "something".to_string(),
+            path: "/some-tags/something/".to_string(),
             permalink: "https://vincent.is/some-tags/something/".to_string(),
             pages: library.pages().keys().collect(),
         };
diff --git a/components/library/src/taxonomies/mod.rs b/components/library/src/taxonomies/mod.rs
index f71d8d95..f4660d1b 100644
--- a/components/library/src/taxonomies/mod.rs
+++ b/components/library/src/taxonomies/mod.rs
@@ -18,6 +18,7 @@ use utils::slugs::slugify_paths;
 pub struct SerializedTaxonomyItem<'a> {
     name: &'a str,
     slug: &'a str,
+    path: &'a str,
     permalink: &'a str,
     pages: Vec>,
 }
@@ -34,6 +35,7 @@ impl<'a> SerializedTaxonomyItem<'a> {
         SerializedTaxonomyItem {
             name: &item.name,
             slug: &item.slug,
+            path: &item.path,
             permalink: &item.permalink,
             pages,
         }
@@ -45,6 +47,7 @@ impl<'a> SerializedTaxonomyItem<'a> {
 pub struct TaxonomyItem {
     pub name: String,
     pub slug: String,
+    pub path: String,
     pub permalink: String,
     pub pages: Vec,
 }
@@ -73,16 +76,17 @@ impl TaxonomyItem {
             .collect();
         let (mut pages, ignored_pages) = sort_pages_by_date(data);
         let item_slug = slugify_paths(name, config.slugify.taxonomies);
-        let permalink = if taxonomy.lang != config.default_language {
-            config.make_permalink(&format!("/{}/{}/{}", taxonomy.lang, taxo_slug, item_slug))
+        let path = if taxonomy.lang != config.default_language {
+            format!("/{}/{}/{}/", taxonomy.lang, taxo_slug, item_slug)
         } else {
-            config.make_permalink(&format!("/{}/{}", taxo_slug, item_slug))
+            format!("/{}/{}/", taxo_slug, item_slug)
         };
+        let permalink = config.make_permalink(&path);
 
         // We still append pages without dates at the end
         pages.extend(ignored_pages);
 
-        TaxonomyItem { name: name.to_string(), permalink, slug: item_slug, pages }
+        TaxonomyItem { name: name.to_string(), permalink, path, slug: item_slug, pages }
     }
 
     pub fn serialize<'a>(&'a self, library: &'a Library) -> SerializedTaxonomyItem<'a> {
@@ -338,6 +342,7 @@ mod tests {
         assert_eq!(tags.items[0].name, "db");
         assert_eq!(tags.items[0].slug, "db");
         assert_eq!(tags.items[0].permalink, "http://a-website.com/tags/db/");
+        assert_eq!(tags.items[0].path, "/tags/db/");
         assert_eq!(tags.items[0].pages.len(), 1);
 
         assert_eq!(tags.items[1].name, "js");
@@ -438,6 +443,7 @@ mod tests {
         assert_eq!(tags.items[1].name, "js");
         assert_eq!(tags.items[1].slug, "js");
         assert_eq!(tags.items[1].permalink, "http://a-website.com/tags/js/");
+        assert_eq!(tags.items[1].path, "/tags/js/");
         assert_eq!(tags.items[1].pages.len(), 2);
 
         assert_eq!(tags.items[2].name, "rust");
diff --git a/docs/content/documentation/templates/taxonomies.md b/docs/content/documentation/templates/taxonomies.md
index 7999957c..e8e41536 100644
--- a/docs/content/documentation/templates/taxonomies.md
+++ b/docs/content/documentation/templates/taxonomies.md
@@ -13,6 +13,7 @@ First, `TaxonomyTerm` has the following fields:
 ```ts
 name: String;
 slug: String;
+path: String;
 permalink: String;
 pages: Array;
 ```

From 51644a79e31a9ffaf54c5447c79c13dbc4171c6e Mon Sep 17 00:00:00 2001
From: Vincent Prouillet 
Date: Sun, 28 Feb 2021 22:30:56 +0100
Subject: [PATCH 030/113] Handle random jetbrains temp files

---
 src/cmd/serve.rs | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs
index 25051995..a063eac5 100644
--- a/src/cmd/serve.rs
+++ b/src/cmd/serve.rs
@@ -468,7 +468,7 @@ pub fn serve(
         match rx.recv() {
             Ok(event) => {
                 let can_do_fast_reload = !matches!(event, Remove(_));
-
+                
                 match event {
                     // Intellij does weird things on edit, chmod is there to count those changes
                     // https://github.com/passcod/notify/issues/150#issuecomment-494912080
@@ -477,7 +477,7 @@ pub fn serve(
                             continue;
                         }
 
-                        if path.is_file() && is_temp_file(&path) {
+                        if is_temp_file(&path) {
                             continue;
                         }
 
@@ -485,7 +485,6 @@ pub fn serve(
                         if path.is_dir() && is_folder_empty(&path) {
                             continue;
                         }
-
                         println!(
                             "Change detected @ {}",
                             Local::now().format("%Y-%m-%d %H:%M:%S").to_string()
@@ -600,7 +599,7 @@ fn is_temp_file(path: &Path) -> bool {
             x if x.ends_with("jb_old___") => true,
             x if x.ends_with("jb_tmp___") => true,
             x if x.ends_with("jb_bak___") => true,
-            // vim
+            // vim & jetbrains
             x if x.ends_with('~') => true,
             _ => {
                 if let Some(filename) = path.file_stem() {

From 9487b6fab8fdf41f62b156a9fd546988c147bbca Mon Sep 17 00:00:00 2001
From: Kristofor Salmin <4795426+kristoforsalmin@users.noreply.github.com>
Date: Thu, 4 Mar 2021 21:51:33 +0300
Subject: [PATCH 031/113] Fix serve command when used with config option
 (#1385)

* Fix serve command when used with config option

* Use current config path instead of extension to detect change kind

* Fix serve command tests
---
 src/cmd/serve.rs | 39 +++++++++++++++++++++++++++++++--------
 1 file changed, 31 insertions(+), 8 deletions(-)

diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs
index a063eac5..99fae64b 100644
--- a/src/cmd/serve.rs
+++ b/src/cmd/serve.rs
@@ -270,10 +270,16 @@ pub fn serve(
         return Err(format!("Cannot start server on address {}.", address).into());
     }
 
+    let config_filename = config_file
+        .file_name()
+        .unwrap()
+        .to_str()
+        .unwrap_or("config.toml");
+
     // An array of (path, bool, bool) where the path should be watched for changes, and the boolean value
     // indicates whether this file/folder must exist for zola serve to operate
     let watch_this = vec![
-        ("config.toml", WatchMode::Required),
+        (config_filename, WatchMode::Required),
         ("content", WatchMode::Required),
         ("sass", WatchMode::Condition(site.config.compile_sass)),
         ("static", WatchMode::Optional),
@@ -491,7 +497,7 @@ pub fn serve(
                         );
 
                         let start = Instant::now();
-                        match detect_change_kind(&root_dir, &path) {
+                        match detect_change_kind(&root_dir, &path, &config_filename) {
                             (ChangeKind::Content, _) => {
                                 console::info(&format!("-> Content changed {}", path.display()));
 
@@ -617,10 +623,13 @@ fn is_temp_file(path: &Path) -> bool {
 
 /// Detect what changed from the given path so we have an idea what needs
 /// to be reloaded
-fn detect_change_kind(pwd: &Path, path: &Path) -> (ChangeKind, PathBuf) {
+fn detect_change_kind(pwd: &Path, path: &Path, config_filename: &str) -> (ChangeKind, PathBuf) {
     let mut partial_path = PathBuf::from("/");
     partial_path.push(path.strip_prefix(pwd).unwrap_or(path));
 
+    let mut partial_config_path = PathBuf::from("/");
+    partial_config_path.push(config_filename);
+
     let change_kind = if partial_path.starts_with("/templates") {
         ChangeKind::Templates
     } else if partial_path.starts_with("/themes") {
@@ -631,7 +640,7 @@ fn detect_change_kind(pwd: &Path, path: &Path) -> (ChangeKind, PathBuf) {
         ChangeKind::StaticFiles
     } else if partial_path.starts_with("/sass") {
         ChangeKind::Sass
-    } else if partial_path == Path::new("/config.toml") {
+    } else if partial_path == partial_config_path {
         ChangeKind::Config
     } else {
         unreachable!("Got a change in an unexpected path: {}", partial_path.display());
@@ -680,36 +689,48 @@ mod tests {
                 (ChangeKind::Templates, PathBuf::from("/templates/hello.html")),
                 Path::new("/home/vincent/site"),
                 Path::new("/home/vincent/site/templates/hello.html"),
+                "config.toml",
             ),
             (
                 (ChangeKind::Themes, PathBuf::from("/themes/hello.html")),
                 Path::new("/home/vincent/site"),
                 Path::new("/home/vincent/site/themes/hello.html"),
+                "config.toml",
             ),
             (
                 (ChangeKind::StaticFiles, PathBuf::from("/static/site.css")),
                 Path::new("/home/vincent/site"),
                 Path::new("/home/vincent/site/static/site.css"),
+                "config.toml",
             ),
             (
                 (ChangeKind::Content, PathBuf::from("/content/posts/hello.md")),
                 Path::new("/home/vincent/site"),
                 Path::new("/home/vincent/site/content/posts/hello.md"),
+                "config.toml",
             ),
             (
                 (ChangeKind::Sass, PathBuf::from("/sass/print.scss")),
                 Path::new("/home/vincent/site"),
                 Path::new("/home/vincent/site/sass/print.scss"),
+                "config.toml",
             ),
             (
                 (ChangeKind::Config, PathBuf::from("/config.toml")),
                 Path::new("/home/vincent/site"),
                 Path::new("/home/vincent/site/config.toml"),
+                "config.toml",
+            ),
+            (
+                (ChangeKind::Config, PathBuf::from("/config.staging.toml")),
+                Path::new("/home/vincent/site"),
+                Path::new("/home/vincent/site/config.staging.toml"),
+                "config.staging.toml",
             ),
         ];
 
-        for (expected, pwd, path) in test_cases {
-            assert_eq!(expected, detect_change_kind(&pwd, &path));
+        for (expected, pwd, path, config_filename) in test_cases {
+            assert_eq!(expected, detect_change_kind(&pwd, &path, &config_filename));
         }
     }
 
@@ -719,7 +740,8 @@ mod tests {
         let expected = (ChangeKind::Templates, PathBuf::from("/templates/hello.html"));
         let pwd = Path::new(r#"C:\\Users\johan\site"#);
         let path = Path::new(r#"C:\\Users\johan\site\templates\hello.html"#);
-        assert_eq!(expected, detect_change_kind(pwd, path));
+        let config_filename = "config.toml";
+        assert_eq!(expected, detect_change_kind(pwd, path, config_filename));
     }
 
     #[test]
@@ -727,6 +749,7 @@ mod tests {
         let expected = (ChangeKind::Templates, PathBuf::from("/templates/hello.html"));
         let pwd = Path::new("/home/johan/site");
         let path = Path::new("templates/hello.html");
-        assert_eq!(expected, detect_change_kind(pwd, path));
+        let config_filename = "config.toml";
+        assert_eq!(expected, detect_change_kind(pwd, path, config_filename));
     }
 }

From 67f9b9499beeb47480a3e4c86272c7e6b7c14356 Mon Sep 17 00:00:00 2001
From: snake66 
Date: Sat, 6 Mar 2021 22:49:04 +0100
Subject: [PATCH 032/113] Fix language specific non-internal urls for get_url.
 (#1381)

* Fix language specific non-internal urls for get_url.

* get_url: PathBuf for URL's don't work on Windows.
---
 components/templates/src/global_fns/mod.rs | 43 ++++++++++++++++++++--
 1 file changed, 40 insertions(+), 3 deletions(-)

diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs
index 4fe0ccaa..7038c157 100644
--- a/components/templates/src/global_fns/mod.rs
+++ b/components/templates/src/global_fns/mod.rs
@@ -149,21 +149,32 @@ impl TeraFn for GetUrl {
             }
         } else {
             // anything else
-            let mut permalink = self.config.make_permalink(&path);
+            let mut segments = vec![];
+
+            if lang != self.config.default_language {
+                segments.push(lang);
+            };
+
+            segments.push(path);
+
+            let path_with_lang = segments.join("/");
+
+            let mut permalink = self.config.make_permalink(&path_with_lang);
             if !trailing_slash && permalink.ends_with('/') {
                 permalink.pop(); // Removes the slash
             }
 
             if cachebust {
-                match open_file(&self.search_paths, &path)
+                match open_file(&self.search_paths, &path_with_lang)
                     .and_then(|f| compute_file_hash::(f, false))
                 {
                     Ok(hash) => {
                         permalink = format!("{}?h={}", permalink, hash);
                     }
-                    Err(_) => return file_not_found_err(&self.search_paths, &path),
+                    Err(_) => return file_not_found_err(&self.search_paths, &path_with_lang),
                 };
             }
+
             Ok(to_value(permalink).unwrap())
         }
     }
@@ -825,6 +836,32 @@ title = "A title"
         );
     }
 
+    #[test]
+    fn can_get_feed_url_with_default_language() {
+        let config = Config::parse(TRANS_CONFIG).unwrap();
+        let static_fn = GetUrl::new(config.clone(), HashMap::new(), vec![TEST_CONTEXT.static_path.clone()]);
+        let mut args = HashMap::new();
+        args.insert("path".to_string(), to_value(config.feed_filename).unwrap());
+        args.insert("lang".to_string(), to_value("fr").unwrap());
+        assert_eq!(
+            static_fn.call(&args).unwrap(),
+            "https://remplace-par-ton-url.fr/atom.xml"
+        );
+    }
+
+    #[test]
+    fn can_get_feed_url_with_other_language() {
+        let config = Config::parse(TRANS_CONFIG).unwrap();
+        let static_fn = GetUrl::new(config.clone(), HashMap::new(), vec![TEST_CONTEXT.static_path.clone()]);
+        let mut args = HashMap::new();
+        args.insert("path".to_string(), to_value(config.feed_filename).unwrap());
+        args.insert("lang".to_string(), to_value("en").unwrap());
+        assert_eq!(
+            static_fn.call(&args).unwrap(),
+            "https://remplace-par-ton-url.fr/en/atom.xml"
+        );
+    }
+
     #[test]
     fn can_get_file_hash_sha256() {
         let static_fn = GetFileHash::new(vec![TEST_CONTEXT.static_path.clone()]);

From 25ef603990f2d7456f247d2fe55f70211df0a833 Mon Sep 17 00:00:00 2001
From: Vincent Prouillet 
Date: Sat, 6 Mar 2021 23:00:56 +0100
Subject: [PATCH 033/113] Error on invalid file/section

---
 components/site/src/lib.rs | 18 +++---------------
 1 file changed, 3 insertions(+), 15 deletions(-)

diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs
index bf15f75f..97704778 100644
--- a/components/site/src/lib.rs
+++ b/components/site/src/lib.rs
@@ -243,17 +243,11 @@ impl Site {
                     .collect::>();
 
                 for index_file in index_files {
-                    let section = match Section::from_file(
+                    let section = Section::from_file(
                         index_file.path(),
                         &self.config,
                         &self.base_path,
-                    ) {
-                        Err(e) => {
-                            println!("Failed to load section: {:?}", e);
-                            continue;
-                        }
-                        Ok(sec) => sec,
-                    };
+                    )?;
 
                     // if the section is drafted we can skip the enitre dir
                     if section.meta.draft && !self.include_drafts {
@@ -264,13 +258,7 @@ impl Site {
                     self.add_section(section, false)?;
                 }
             } else {
-                let page = match Page::from_file(path, &self.config, &self.base_path) {
-                    Err(e) => {
-                        println!("Failed to load page: {:?}", e);
-                        continue;
-                    }
-                    Ok(p) => p,
-                };
+                let page = Page::from_file(path, &self.config, &self.base_path)?;
 
                 // should we skip drafts?
                 if page.meta.draft && !self.include_drafts {

From 5964fc192c5e991859acd12e576a8d156773bd5e Mon Sep 17 00:00:00 2001
From: Marco Tolk 
Date: Thu, 11 Mar 2021 19:47:42 +0100
Subject: [PATCH 034/113] fixes #1401 (#1404)

Co-authored-by: Marco Tolk 
---
 Cargo.lock      |  1 +
 Cargo.toml      |  3 +++
 src/cmd/init.rs | 19 +++++++++----------
 3 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/Cargo.lock b/Cargo.lock
index e1dd981e..959c84fe 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -3302,6 +3302,7 @@ dependencies = [
  "open",
  "percent-encoding",
  "relative-path",
+ "same-file",
  "serde_json",
  "site",
  "termcolor",
diff --git a/Cargo.toml b/Cargo.toml
index 33ec011b..30f897dc 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -45,6 +45,9 @@ errors = { path = "components/errors" }
 front_matter = { path = "components/front_matter" }
 utils = { path = "components/utils" }
 
+[dev-dependencies]
+same-file = "1"
+
 [workspace]
 members = [
     "components/config",
diff --git a/src/cmd/init.rs b/src/cmd/init.rs
index 1a381737..5ce05f17 100644
--- a/src/cmd/init.rs
+++ b/src/cmd/init.rs
@@ -250,16 +250,15 @@ mod tests {
     #[test]
     fn strip_unc_test() {
         let mut dir = temp_dir();
-        dir.push("new_project");
+        dir.push("new_project1");
         if dir.exists() {
             remove_dir_all(&dir).expect("Could not free test directory");
         }
         create_dir(&dir).expect("Could not create test directory");
         if cfg!(target_os = "windows") {
-            assert_eq!(
-                strip_unc(&canonicalize(Path::new(&dir)).unwrap()),
-                "C:\\Users\\VssAdministrator\\AppData\\Local\\Temp\\new_project"
-            )
+			let stripped_path = strip_unc(&canonicalize(Path::new(&dir)).unwrap());
+			assert!(same_file::is_same_file(Path::new(&stripped_path),&dir).unwrap()); 
+            assert!(!stripped_path.starts_with(LOCAL_UNC),"The path was not stripped.");
         } else {
             assert_eq!(
                 strip_unc(&canonicalize(Path::new(&dir)).unwrap()),
@@ -277,15 +276,15 @@ mod tests {
     #[cfg(target_os = "windows")]
     fn strip_unc_required_test() {
         let mut dir = temp_dir();
-        dir.push("new_project");
+        dir.push("new_project2");
         if dir.exists() {
             remove_dir_all(&dir).expect("Could not free test directory");
         }
         create_dir(&dir).expect("Could not create test directory");
-        assert_eq!(
-            canonicalize(Path::new(&dir)).unwrap().to_str().unwrap(),
-            "\\\\?\\C:\\Users\\VssAdministrator\\AppData\\Local\\Temp\\new_project"
-        );
+		
+		let canonicalized_path = canonicalize(Path::new(&dir)).unwrap();
+		assert!(same_file::is_same_file(Path::new(&canonicalized_path),&dir).unwrap());
+        assert!(canonicalized_path.to_str().unwrap().starts_with(LOCAL_UNC));
 
         remove_dir_all(&dir).unwrap();
     }

From 534174ae78e36def4ac3cd98c2c2f0b683870a15 Mon Sep 17 00:00:00 2001
From: Tiago Seabra 
Date: Sun, 14 Mar 2021 08:49:29 +0000
Subject: [PATCH 035/113] feat: add base16-atelierdune-light highlight theme
 (#1406)

* feat: add base16-aterlierdune-light highlight theme

* docs: add base16-atelierdune-light theme to CHANGELOG
---
 CHANGELOG.md                                  |   1 +
 .../getting-started/configuration.md          |   1 +
 sublime/themes/all.themedump                  | Bin 32385 -> 32813 bytes
 .../themes/base16-atelierdune-light.tmTheme   | 549 ++++++++++++++++++
 4 files changed, 551 insertions(+)
 create mode 100644 sublime/themes/base16-atelierdune-light.tmTheme

diff --git a/CHANGELOG.md b/CHANGELOG.md
index a632eb32..2b2188e4 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -16,6 +16,7 @@
 - Fix `zola serve` failing for some static files
 - Fix `zola serve` not picking up directory renaming
 - Add `path` to the taxonomy terms to be on par with pages and sections
+- Add the `base16-aterlierdune-light` syntax highlight theme
 
 ## 0.13.0 (2021-01-09)
 
diff --git a/docs/content/documentation/getting-started/configuration.md b/docs/content/documentation/getting-started/configuration.md
index 71c1de2a..8673dc54 100644
--- a/docs/content/documentation/getting-started/configuration.md
+++ b/docs/content/documentation/getting-started/configuration.md
@@ -193,6 +193,7 @@ Zola currently has the following highlight themes available:
 - [ayu-dark](https://github.com/dempfi/ayu)
 - [ayu-light](https://github.com/dempfi/ayu)
 - [ayu-mirage](https://github.com/dempfi/ayu)
+- [base16-aterlierdune-light](https://atelierbram.github.io/syntax-highlighting/atelier-schemes/dune/)
 - [base16-ocean-dark](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Base16%20Ocean%20Dark)
 - [base16-ocean-light](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Base16%20Ocean%20Light)
 - [bbedit](https://tmtheme-editor.herokuapp.com/#!/editor/theme/BBEdit)
diff --git a/sublime/themes/all.themedump b/sublime/themes/all.themedump
index 6c66c2c2c3d5d705d966ad2703828321ccd2b3df..40aeff7c032ca6464404508d7a101604c66c319a 100644
GIT binary patch
delta 30391
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≧̸bo_*p>5Wp4EBwx
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
C2PftL

diff --git a/sublime/themes/base16-atelierdune-light.tmTheme b/sublime/themes/base16-atelierdune-light.tmTheme
new file mode 100644
index 00000000..87d3353b
--- /dev/null
+++ b/sublime/themes/base16-atelierdune-light.tmTheme
@@ -0,0 +1,549 @@
+
+
+
+
+	author
+	Bram de Haan (http://atelierbram.github.io/syntax-highlighting/atelier-schemes/dune)
+	name
+	Base16 Atelier Dune Light
+	semanticClass
+	base16.atelierdune.light
+	colorSpaceName
+	sRGB
+	gutterSettings
+	
+		background
+		#fefbec
+		divider
+		#fefbec
+		foreground
+		#6e6b5e
+		selectionBackground
+		#fefbec
+		selectionForeground
+		#a6a28c
+	
+	settings
+	
+		
+			settings
+			
+				background
+				#fefbec
+				caret
+				#6e6b5e
+				foreground
+				#6e6b5e
+				invisibles
+				#e8e4cf
+				lineHighlight
+				#99958055
+				selection
+				#e8e4cf
+			
+		
+		
+			name
+			Text
+			scope
+			variable.parameter.function
+			settings
+			
+				foreground
+				#6e6b5e
+			
+		
+		
+			name
+			Comments
+			scope
+			comment, punctuation.definition.comment
+			settings
+			
+				foreground
+				#999580
+			
+		
+		
+			name
+			Punctuation
+			scope
+			punctuation.definition.string, punctuation.definition.variable, punctuation.definition.string, punctuation.definition.parameters, punctuation.definition.string, punctuation.definition.array
+			settings
+			
+				foreground
+				#6e6b5e
+			
+		
+		
+			name
+			Delimiters
+			scope
+			none
+			settings
+			
+				foreground
+				#6e6b5e
+			
+		
+		
+			name
+			Operators
+			scope
+			keyword.operator
+			settings
+			
+				foreground
+				#6e6b5e
+			
+		
+		
+			name
+			Keywords
+			scope
+			keyword
+			settings
+			
+				foreground
+				#b854d4
+			
+		
+		
+			name
+			Variables
+			scope
+			variable
+			settings
+			
+				foreground
+				#d73737
+			
+		
+		
+			name
+			Functions
+			scope
+			entity.name.function, meta.require, support.function.any-method
+			settings
+			
+				foreground
+				#6684e1
+			
+		
+		
+			name
+			Classes
+			scope
+			support.class, entity.name.class, entity.name.type.class
+			settings
+			
+				foreground
+				#b65611
+			
+		
+		
+			name
+			Classes
+			scope
+			meta.class
+			settings
+			
+				foreground
+				#292824
+			
+		
+		
+			name
+			Methods
+			scope
+			keyword.other.special-method
+			settings
+			
+				foreground
+				#6684e1
+			
+		
+		
+			name
+			Storage
+			scope
+			storage
+			settings
+			
+				foreground
+				#b854d4
+			
+		
+		
+			name
+			Support
+			scope
+			support.function
+			settings
+			
+				foreground
+				#1fad83
+			
+		
+		
+			name
+			Strings, Inherited Class
+			scope
+			string, constant.other.symbol, entity.other.inherited-class
+			settings
+			
+				foreground
+				#60ac39
+			
+		
+		
+			name
+			Integers
+			scope
+			constant.numeric
+			settings
+			
+				foreground
+				#b65611
+			
+		
+		
+			name
+			Floats
+			scope
+			none
+			settings
+			
+				foreground
+				#b65611
+			
+		
+		
+			name
+			Boolean
+			scope
+			none
+			settings
+			
+				foreground
+				#b65611
+			
+		
+		
+			name
+			Constants
+			scope
+			constant
+			settings
+			
+				foreground
+				#b65611
+			
+		
+		
+			name
+			Tags
+			scope
+			entity.name.tag
+			settings
+			
+				foreground
+				#d73737
+			
+		
+		
+			name
+			Attributes
+			scope
+			entity.other.attribute-name
+			settings
+			
+				foreground
+				#b65611
+			
+		
+		
+			name
+			Attribute IDs
+			scope
+			entity.other.attribute-name.id, punctuation.definition.entity
+			settings
+			
+				foreground
+				#6684e1
+			
+		
+		
+			name
+			Selector
+			scope
+			meta.selector
+			settings
+			
+				foreground
+				#b854d4
+			
+		
+		
+			name
+			Values
+			scope
+			none
+			settings
+			
+				foreground
+				#b65611
+			
+		
+		
+			name
+			Headings
+			scope
+			markup.heading punctuation.definition.heading, entity.name.section
+			settings
+			
+				fontStyle
+				
+				foreground
+				#6684e1
+			
+		
+		
+			name
+			Units
+			scope
+			keyword.other.unit
+			settings
+			
+				foreground
+				#b65611
+			
+		
+		
+			name
+			Bold
+			scope
+			markup.bold, punctuation.definition.bold
+			settings
+			
+				fontStyle
+				bold
+				foreground
+				#b65611
+			
+		
+		
+			name
+			Italic
+			scope
+			markup.italic, punctuation.definition.italic
+			settings
+			
+				fontStyle
+				italic
+				foreground
+				#b854d4
+			
+		
+		
+			name
+			Code
+			scope
+			markup.raw.inline
+			settings
+			
+				foreground
+				#60ac39
+			
+		
+		
+			name
+			Link Text
+			scope
+			string.other.link
+			settings
+			
+				foreground
+				#d73737
+			
+		
+		
+			name
+			Link Url
+			scope
+			meta.link
+			settings
+			
+				foreground
+				#b65611
+			
+		
+		
+			name
+			Lists
+			scope
+			markup.list
+			settings
+			
+				foreground
+				#d73737
+			
+		
+		
+			name
+			Quotes
+			scope
+			markup.quote
+			settings
+			
+				foreground
+				#b65611
+			
+		
+		
+			name
+			Separator
+			scope
+			meta.separator
+			settings
+			
+				background
+				#e8e4cf
+				foreground
+				#6e6b5e
+			
+		
+		
+			name
+			Inserted
+			scope
+			markup.inserted
+			settings
+			
+				foreground
+				#60ac39
+			
+		
+		
+			name
+			Deleted
+			scope
+			markup.deleted
+			settings
+			
+				foreground
+				#d73737
+			
+		
+		
+			name
+			Changed
+			scope
+			markup.changed
+			settings
+			
+				foreground
+				#b854d4
+			
+		
+		
+			name
+			Colors
+			scope
+			constant.other.color
+			settings
+			
+				foreground
+				#1fad83
+			
+		
+		
+			name
+			Regular Expressions
+			scope
+			string.regexp
+			settings
+			
+				foreground
+				#1fad83
+			
+		
+		
+			name
+			Escape Characters
+			scope
+			constant.character.escape
+			settings
+			
+				foreground
+				#1fad83
+			
+		
+		
+			name
+			Embedded
+			scope
+			punctuation.section.embedded, variable.interpolation
+			settings
+			
+				foreground
+				#d43552
+			
+		
+		
+			name
+			Illegal
+			scope
+			invalid.illegal
+			settings
+			
+				background
+				#d73737
+				foreground
+				#fefbec
+			
+		
+		
+			name
+			Broken
+			scope
+			invalid.broken
+			settings
+			
+				background
+				#b65611
+				foreground
+				#20201d
+			
+		
+		
+			name
+			Deprecated
+			scope
+			invalid.deprecated
+			settings
+			
+				background
+				#d43552
+				foreground
+				#fefbec
+			
+		
+		
+			name
+			Unimplemented
+			scope
+			invalid.unimplemented
+			settings
+			
+				background
+				#a6a28c
+				foreground
+				#20201d
+			
+		
+	
+	uuid
+	f2aa1936-a9d9-40c6-a1db-c64d058b81dd
+
+

From 5b005b48aa39a80670df13db05d20edef3a80a26 Mon Sep 17 00:00:00 2001
From: Bert JW Regeer 
Date: Mon, 15 Mar 2021 00:52:10 -0700
Subject: [PATCH 036/113] Allow frontmatter to have optional newline if no
 content (#1408)

Without content it should be possible to create a file that contains no
newlines after the frontmatter at all, rather than forcing a newline
after the frontmatter.
---
 components/front_matter/src/lib.rs | 32 +++++++++++++++++++++++++++---
 1 file changed, 29 insertions(+), 3 deletions(-)

diff --git a/components/front_matter/src/lib.rs b/components/front_matter/src/lib.rs
index 9397af89..bc7a7cf1 100644
--- a/components/front_matter/src/lib.rs
+++ b/components/front_matter/src/lib.rs
@@ -15,9 +15,10 @@ pub use section::SectionFrontMatter;
 
 lazy_static! {
     static ref TOML_RE: Regex =
-        Regex::new(r"^[[:space:]]*\+\+\+(\r?\n(?s).*?(?-s))\+\+\+\r?\n((?s).*(?-s))$").unwrap();
+        Regex::new(r"^[[:space:]]*\+\+\+(\r?\n(?s).*?(?-s))\+\+\+(?:$|(?:\r?\n((?s).*(?-s))$))")
+            .unwrap();
     static ref YAML_RE: Regex =
-        Regex::new(r"^[[:space:]]*---(\r?\n(?s).*?(?-s))---\r?\n((?s).*(?-s))$").unwrap();
+        Regex::new(r"^[[:space:]]*---(\r?\n(?s).*?(?-s))---(?:$|(?:\r?\n((?s).*(?-s))$))").unwrap();
 }
 
 pub enum RawFrontMatter<'a> {
@@ -82,7 +83,8 @@ fn split_content<'c>(file_path: &Path, content: &'c str) -> Result<(RawFrontMatt
     // caps[1] => front matter
     // caps[2] => content
     let front_matter = caps.get(1).unwrap().as_str();
-    let content = caps.get(2).unwrap().as_str();
+    let content = caps.get(2).map_or("", |m| m.as_str());
+
     if is_toml {
         Ok((RawFrontMatter::Toml(front_matter), content))
     } else {
@@ -183,6 +185,18 @@ description: hey there
 date: 2002-10-12
 ---
 "#; "yaml")]
+    #[test_case(r#"
++++
+title = "Title"
+description = "hey there"
+date = 2002-10-12
++++"#; "toml no newline")]
+    #[test_case(r#"
+---
+title: Title
+description: hey there
+date: 2002-10-12
+---"#; "yaml no newline")]
     fn can_split_content_with_only_frontmatter_valid(content: &str) {
         let (front_matter, content) = split_page_content(Path::new(""), content).unwrap();
         assert_eq!(content, "");
@@ -235,6 +249,12 @@ description = "hey there"
 date = 2002-10-12
 ---"#; "toml unmatched")]
     #[test_case(r#"
++++
+title = "Title"
+description = "hey there"
+date = 2002-10-12
+++++"#; "toml too many pluses")]
+    #[test_case(r#"
 ---
 title: Title
 description: hey there
@@ -245,6 +265,12 @@ title: Title
 description: hey there
 date: 2002-10-12
 +++"#; "yaml unmatched")]
+    #[test_case(r#"
+---
+title: Title
+description: hey there
+date: 2002-10-12
+----"#; "yaml too many dashes")]
     fn errors_if_cannot_locate_frontmatter(content: &str) {
         let res = split_page_content(Path::new(""), content);
         assert!(res.is_err());

From 958ec2a7582f0aee22bd78c20dad4168cd4cb42a Mon Sep 17 00:00:00 2001
From: Jade 
Date: Wed, 17 Mar 2021 01:11:02 -0700
Subject: [PATCH 037/113] Add CORS header (#1382)

I was having an issue with `zola serve` where the browser was not
fetching fonts on account of it not sending a CORS header with the
fonts
---
 src/cmd/serve.rs | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs
index 99fae64b..86762efe 100644
--- a/src/cmd/serve.rs
+++ b/src/cmd/serve.rs
@@ -128,7 +128,11 @@ async fn handle_request(req: Request, mut root: PathBuf) -> Result
Date: Mon, 22 Mar 2021 12:00:25 -0700
Subject: [PATCH 038/113] Feature: allow spaces between dashes in filename for
 page (#1323)

* Allow optional whitespace around dash/underscore in filename

Allow file names that are as follows:

    2021-01-01 - test.md

To be parsed the same as if they were

    2021-01-01-test.md

The slug for both will now just be "test" instead of previously the
first example would have become "2021-01-01-test".

* Add documentation for optional whitespace in filename

* Test that updated regex does not take space after dash
---
 components/library/src/content/page.rs     | 37 +++++++++++++++++++++-
 docs/content/documentation/content/page.md |  4 +--
 2 files changed, 38 insertions(+), 3 deletions(-)

diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs
index cb69dbcf..7774dfcd 100644
--- a/components/library/src/content/page.rs
+++ b/components/library/src/content/page.rs
@@ -25,7 +25,7 @@ lazy_static! {
     // Based on https://regex101.com/r/H2n38Z/1/tests
     // A regex parsing RFC3339 date followed by {_,-}, some characters and ended by .md
     static ref RFC3339_DATE: Regex = Regex::new(
-        r"^(?P(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])(T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9])))?)(_|-)(?P.+$)"
+        r"^(?P(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])(T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9])))?)\s?(_|-)(?P.+$)"
     ).unwrap();
 }
 
@@ -703,6 +703,41 @@ Hello world
         assert_eq!(page.slug, " こんにちは");
     }
 
+    #[test]
+    fn can_get_date_from_filename_with_spaces() {
+        let config = Config::default();
+        let content = r#"
++++
++++
+Hello world
+"#
+            .to_string();
+        let res = Page::parse(Path::new("2018-10-08 - hello.md"), &content, &config, &PathBuf::new());
+        assert!(res.is_ok());
+        let page = res.unwrap();
+
+        assert_eq!(page.meta.date, Some("2018-10-08".to_string()));
+        assert_eq!(page.slug, "hello");
+    }
+
+    #[test]
+    fn can_get_date_from_filename_with_spaces_respects_slugification() {
+        let mut config = Config::default();
+        config.slugify.paths = SlugifyStrategy::Off;
+        let content = r#"
++++
++++
+Hello world
+"#
+            .to_string();
+        let res = Page::parse(Path::new("2018-10-08 - hello.md"), &content, &config, &PathBuf::new());
+        assert!(res.is_ok());
+        let page = res.unwrap();
+
+        assert_eq!(page.meta.date, Some("2018-10-08".to_string()));
+        assert_eq!(page.slug, " hello");
+    }
+
     #[test]
     fn can_get_date_from_full_rfc3339_date_in_filename() {
         let config = Config::default();
diff --git a/docs/content/documentation/content/page.md b/docs/content/documentation/content/page.md
index ac6ac242..faa61ff2 100644
--- a/docs/content/documentation/content/page.md
+++ b/docs/content/documentation/content/page.md
@@ -65,12 +65,12 @@ When the article's output path is not specified in the frontmatter, it is extrac
 - if the filename is `index.md`, its parent folder name (`bar`) is used as output path
 - otherwise, the output path is extracted from `thing` (the filename without the `.md` extension)
 
-If the path found starts with a datetime string (`YYYY-mm-dd` or [a RFC3339 datetime](https://www.ietf.org/rfc/rfc3339.txt)) followed by an underscore (`_`) or a dash (`-`), this date is removed from the output path and will be used as the page date (unless already set in the front-matter). Note that the full RFC3339 datetime contains colons, which is not a valid character in a filename on Windows.
+If the path found starts with a datetime string (`YYYY-mm-dd` or [a RFC3339 datetime](https://www.ietf.org/rfc/rfc3339.txt)) followed by optional whitespace and then an underscore (`_`) or a dash (`-`), this date is removed from the output path and will be used as the page date (unless already set in the front-matter). Note that the full RFC3339 datetime contains colons, which is not a valid character in a filename on Windows.
 
 The output path extracted from the file path is then slugified or not, depending on the `slugify.paths` config, as explained previously.
 
 **Example:**
-The file `content/blog/2018-10-10-hello-world.md` will yield a page at `[base_url]/blog/hello-world`.
+The file `content/blog/2018-10-10-hello-world.md` will yield a page at `[base_url]/blog/hello-world`. With optional whitespace, the file `content/blog/2021-01-23 -hello new world.md` will yield a page at `[base_url]/blog/hello-new-world`
 
 ## Front matter
 

From 341ac3bfbd1d6ab211c03f83e6891785505fc56d Mon Sep 17 00:00:00 2001
From: Vincent Prouillet 
Date: Mon, 22 Mar 2021 20:56:11 +0100
Subject: [PATCH 039/113] Southerntofu bugfix index translations (#1417)

* Translations are also generated for the index page (fix #1332)

* More tests for translations

* Even better error message

* Update page count for test

* Patch to fix Windows tests

By @mtolk

Co-authored-by: southerntofu 
---
 Cargo.lock                                    |   7 +
 components/library/src/library.rs             |  20 +-
 components/site/Cargo.toml                    |   1 +
 components/site/tests/common.rs               | 254 +++++++++++++++++-
 components/site/tests/site_i18n.rs            |  28 +-
 test_site_i18n/content/_index.fr.md           |   5 +
 test_site_i18n/content/_index.md              |   5 +
 .../not-translated-in-default-language.fr.md  |   5 +
 test_site_i18n/templates/index.html           |   4 +
 9 files changed, 317 insertions(+), 12 deletions(-)
 create mode 100644 test_site_i18n/content/_index.fr.md
 create mode 100644 test_site_i18n/content/_index.md
 create mode 100644 test_site_i18n/content/blog/not-translated-in-default-language.fr.md

diff --git a/Cargo.lock b/Cargo.lock
index 959c84fe..5fca5c19 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1754,6 +1754,12 @@ dependencies = [
  "regex",
 ]
 
+[[package]]
+name = "path-slash"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3cacbb3c4ff353b534a67fb8d7524d00229da4cb1dc8c79f4db96e375ab5b619"
+
 [[package]]
 name = "percent-encoding"
 version = "2.1.0"
@@ -2461,6 +2467,7 @@ dependencies = [
  "lazy_static",
  "library",
  "link_checker",
+ "path-slash",
  "rayon",
  "relative-path",
  "sass-rs",
diff --git a/components/library/src/library.rs b/components/library/src/library.rs
index b933f8b6..362ca5e5 100644
--- a/components/library/src/library.rs
+++ b/components/library/src/library.rs
@@ -154,6 +154,16 @@ impl Library {
                     .push(section.file.path.clone());
             }
 
+            // populate translations if necessary
+            if self.is_multilingual {
+                self.translations
+                    .entry(section.file.canonical.clone())
+                    .and_modify(|trans| {
+                        trans.insert(key);
+                    })
+                    .or_insert(set![key]);
+            };
+
             // Index has no ancestors, no need to go through it
             if section.is_index() {
                 ancestors.insert(section.file.path.clone(), vec![]);
@@ -178,15 +188,7 @@ impl Library {
             }
             ancestors.insert(section.file.path.clone(), parents);
 
-            // populate translations if necessary
-            if self.is_multilingual {
-                self.translations
-                    .entry(section.file.canonical.clone())
-                    .and_modify(|trans| {
-                        trans.insert(key);
-                    })
-                    .or_insert(set![key]);
-            };
+
         }
 
         for (key, page) in &mut self.pages {
diff --git a/components/site/Cargo.toml b/components/site/Cargo.toml
index 51fa4907..eb90d9c8 100644
--- a/components/site/Cargo.toml
+++ b/components/site/Cargo.toml
@@ -29,3 +29,4 @@ link_checker = { path = "../link_checker" }
 
 [dev-dependencies]
 tempfile = "3"
+path-slash = "0.1.4"
diff --git a/components/site/tests/common.rs b/components/site/tests/common.rs
index 24431706..a6858a3b 100644
--- a/components/site/tests/common.rs
+++ b/components/site/tests/common.rs
@@ -1,9 +1,11 @@
 #![allow(dead_code)]
 use std::env;
-use std::path::PathBuf;
+use std::path::{PathBuf, Path};
+use std::collections::HashMap;
 
 use site::Site;
 use tempfile::{tempdir, TempDir};
+use path_slash::PathExt;
 
 // 2 helper macros to make all the build testing more bearable
 #[macro_export]
@@ -67,3 +69,253 @@ where
     site.build().expect("Couldn't build the site");
     (site, tmp_dir, public.clone())
 }
+
+/// Finds the unified path (eg. _index.fr.md -> _index.md) and
+/// potential language (if not default) associated with a path
+/// When the path is not a markdown file (.md), None is returned
+/// Strips base_dir from the start of path
+fn find_lang_for(entry: &Path, base_dir: &Path) -> Option<(String, Option)> {
+    let ext = entry.extension();
+    if ext.is_none() {
+        // Not a markdown file (no extension), skip
+        return None;
+    }
+    let ext = ext.unwrap();
+    if ext != "md" {
+        // Not a markdown file, skip
+        return None;
+    }
+    let mut no_ext = entry.to_path_buf();
+    let stem = entry.file_stem().unwrap();
+    // Remove .md
+    no_ext.pop();
+    no_ext.push(stem);
+    if let Some(lang) = no_ext.extension() {
+        let stem = no_ext.file_stem();
+        // Remove lang
+        let mut unified_path = no_ext.clone();
+        unified_path.pop();
+        // Readd stem with .md added
+        unified_path.push(&format!("{}.md", stem.unwrap().to_str().unwrap()));
+        let unified_path_str = match unified_path.strip_prefix(base_dir)  {
+			Ok(path_without_prefix) => {path_without_prefix.to_slash_lossy()}
+			_ => {unified_path.to_slash_lossy()}
+		};
+        return Some((unified_path_str, Some(lang.to_str().unwrap().into())));
+    } else {
+        // No lang, return no_ext directly
+		let mut no_ext_string = match no_ext.strip_prefix(base_dir)  {
+			Ok(path_without_prefix) => {path_without_prefix.to_slash_lossy()}
+			_ => {no_ext.to_slash_lossy()}
+		};
+		no_ext_string.push_str(".md");
+        return Some((no_ext_string, None));
+    }
+}
+
+/// Recursively process a folder to find translations, returning a list of every language
+/// translated for every page found. Translations for the default language are stored as "DEFAULT"
+/// TODO: This implementation does not support files with a dot inside (foo.bar.md where bar is
+/// not a language), because it requires to know what languages are enabled from config, and it's
+/// unclear how to distinguish (and what to do) between disabled language or "legit" dots
+pub fn add_translations_from(dir: &Path, strip: &Path, default: &str) -> HashMap> {
+    let mut expected: HashMap> = HashMap::new();
+    for entry in dir.read_dir().expect("Failed to read dir") {
+        let entry = entry.expect("Failed to read entry").path();
+        if entry.is_dir() {
+            // Recurse
+            expected.extend(add_translations_from(&entry, strip, default));
+        }
+        if let Some((unified_path, lang)) = find_lang_for(&entry, strip) {
+            if let Some(index) = expected.get_mut(&unified_path) {
+                // Insert found lang for rel_path, or DEFAULT otherwise
+                index.push(lang.unwrap_or(default.to_string()));
+            } else {
+                // rel_path is not registered yet, insert it in expected
+                expected.insert(unified_path, vec!(lang.unwrap_or(default.to_string())));
+            }
+        } else {
+            // Not a markdown file, skip
+            continue;
+        }
+    }
+    return expected;
+}
+
+/// Calculate output path for Markdown files
+/// respecting page/section `path` fields, but not aliases (yet)
+/// Returns a mapping of unified Markdown paths -> translations
+pub fn find_expected_translations(name: &str, default_language: &str) -> HashMap> {
+    let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf();
+    path.push(name);
+    path.push("content");
+
+    // Find expected translations from content folder
+    // We remove BASEDIR/content/ from the keys so they match paths in library
+    let mut strip_prefix = path.to_str().unwrap().to_string();
+    strip_prefix.push('/');
+    add_translations_from(&path, &path, default_language)
+}
+
+/// Checks whether a given permalink has a corresponding HTML page in output folder
+pub fn ensure_output_exists(outputdir: &Path, baseurl: &str, link: &str) -> bool {
+    // Remove the baseurl as well as the remaining /, otherwise path will be interpreted
+    // as absolute.
+    let trimmed_url = link.trim_start_matches(baseurl).trim_start_matches('/');
+    let path = outputdir.join(trimmed_url);
+    path.exists()
+}
+
+pub struct Translation {
+    path: String,
+    lang: String,
+    permalink: String,
+}
+
+pub struct Translations {
+    trans: Vec,
+}
+
+impl Translations {
+    pub fn for_path(site: &Site, path: &str) -> Translations {
+        let library = site.library.clone();
+        let library = library.read().unwrap();
+        // WORKAROUND because site.content_path is private
+        let unified_path = if let Some(page) = library.get_page(site.base_path.join("content").join(path)) {
+            page.file.canonical.clone()
+        } else if let Some(section) = library.get_section(site.base_path.join("content").join(path)) {
+            section.file.canonical.clone()
+        } else {
+            panic!("No such page or section: {}", path);
+        };
+
+        let translations = library.translations.get(&unified_path);
+        if translations.is_none() {
+            println!("Page canonical path {} is not in library translations", unified_path.display());
+            panic!("Library error");
+        }
+
+        let translations = translations
+            .unwrap()
+            .iter().map(|key| {
+                // Are we looking for a section? (no file extension here)
+                if unified_path.ends_with("_index") {
+                    //library.get_section_by_key(*key).file.relative.to_string()
+                    let section = library.get_section_by_key(*key);
+                    Translation {
+                        lang: section.lang.clone(),
+                        permalink: section.permalink.clone(),
+                        path: section.file.path.to_str().unwrap().to_string(),
+                    }
+                } else {
+                    let page = library.get_page_by_key(*key);
+                    Translation {
+                        lang: page.lang.clone(),
+                        permalink: page.permalink.clone(),
+                        path: page.file.path.to_str().unwrap().to_string(),
+                    }
+                    //library.get_page_by_key(*key).file.relative.to_string()
+                }
+            }).collect();
+
+        Translations {
+            trans: translations,
+        }
+    }
+
+    pub fn languages(&self) -> Vec {
+        let mut lang: Vec = self.trans.iter().map(|x| x.lang.clone()).collect();
+        lang.sort_unstable();
+        lang
+    }
+
+    pub fn permalinks(&self) -> Vec {
+        let mut links: Vec = self.trans.iter().map(|x| x.permalink.clone()).collect();
+        links.sort_unstable();
+        links
+    }
+
+    pub fn paths(&self) -> Vec {
+        let mut paths: Vec = self.trans.iter().map(|x| x.path.clone()).collect();
+        paths.sort_unstable();
+        paths
+    }
+}
+
+/// Find translations in library for a single path
+fn library_translations_lang_for(site: &Site, path: &str) -> Vec {
+    let library_translations = Translations::for_path(site, path);
+    library_translations.languages()
+}
+
+/// This function takes a list of translations generated by find_expected_translations(),
+/// a site instance, and a path of a page to check that translations are the same on both sides
+pub fn ensure_translations_match(translations: &HashMap>, site: &Site, path: &str) -> bool {
+    let library_page_translations = library_translations_lang_for(site, path);
+
+    if let Some((unified_path, _lang)) = find_lang_for(&PathBuf::from(path), Path::new("")) {
+        if let Some(page_translations) = translations.get(&unified_path) {
+            // We order both claimed translations so we can compare them
+            // library_page_translations is already ordered
+            let mut page_translations = page_translations.clone();
+            page_translations.sort_unstable();
+
+            if page_translations != library_page_translations {
+                // Some translations don't match, print some context
+                // There is a special case where the index page may be autogenerated for a lang
+                // by zola so if we are looking at the index page, library may contain more (not
+                // less) languages than our tests.
+                if unified_path == "_index.md" {
+                    for lang in &page_translations {
+                        if !library_page_translations.contains(lang) {
+                            println!("Library is missing language: {} for page {}", lang, unified_path);
+                            return false;
+                        }
+                    }
+                    // All languages from Markdown were found. We don't care if the library
+                    // auto-generated more.
+                    return true;
+                }
+                println!("Translations don't match for {}:", path);
+                println!("  - library: {:?}", library_page_translations);
+                println!("  - tests: {:?}", page_translations);
+                return false;
+            }
+            // Everything went well
+            return true;
+        } else {
+            // Should never happen because even the default language counts as a translation
+            // Reaching here means either there is a logic error in the tests themselves,
+            // or the permalinks contained a page which does not exist for some reason
+            unreachable!("Translations not found for {}", unified_path);
+        }
+    } else {
+        // None means the page does not end with .md. Only markdown pages should be passed to this function.
+        // Maybe a non-markdown path was found in site's permalinks?
+        unreachable!("{} is not a markdown page (extension not .md)", path);
+    }
+}
+
+/// For a given URL (from the permalinks), find the corresponding output page
+/// and ensure all translation permalinks are linked inside
+pub fn ensure_translations_in_output(site: &Site, path: &str, permalink: &str) -> bool {
+    let library_page_translations = Translations::for_path(site, path);
+    let translations_permalinks = library_page_translations.permalinks();
+
+    let output_path = permalink.trim_start_matches(&site.config.base_url);
+    // Strip leading / so it's not interpreted as an absolute path
+    let output_path = output_path.trim_start_matches('/');
+    // Don't forget to remove / because 
+    let output_path = site.output_path.join(output_path);
+
+    let output = std::fs::read_to_string(&output_path).expect(&format!("Output not found in {}", output_path.display()));
+    
+    for permalink in &translations_permalinks {
+        if !output.contains(permalink) {
+            println!("Page {} has translation {}, but it was not found in output", path, permalink);
+            return false;
+        }
+    }
+
+    return true;
+}
diff --git a/components/site/tests/site_i18n.rs b/components/site/tests/site_i18n.rs
index d4ed0e34..eddbe9a4 100644
--- a/components/site/tests/site_i18n.rs
+++ b/components/site/tests/site_i18n.rs
@@ -2,7 +2,7 @@ mod common;
 
 use std::env;
 
-use common::build_site;
+use common::*;
 use site::Site;
 
 #[test]
@@ -14,7 +14,7 @@ fn can_parse_multilingual_site() {
     site.load().unwrap();
 
     let library = site.library.read().unwrap();
-    assert_eq!(library.pages().len(), 10);
+    assert_eq!(library.pages().len(), 11);
     assert_eq!(library.sections().len(), 6);
 
     // default index sections
@@ -174,3 +174,27 @@ fn can_build_multilingual_site() {
     assert!(file_exists!(public, "search_index.it.js"));
     assert!(!file_exists!(public, "search_index.fr.js"));
 }
+
+#[test]
+fn correct_translations_on_all_pages() {
+    let (site, _tmp_dir, public) = build_site("test_site_i18n");
+
+    assert!(public.exists());
+
+    let translations = find_expected_translations("test_site_i18n", &site.config.default_language);
+
+    for (path, link) in &site.permalinks {
+        // link ends with /, does not add index.html
+        let link = format!("{}index.html", link);
+
+        // Ensure every permalink has produced a HTML page
+        assert!(ensure_output_exists(&public, &site.config.base_url, &link));
+
+        // Ensure translations expected here match with those in the library
+        // TODO: add constructive error message inside the function
+        assert!(ensure_translations_match(&translations, &site, &path));
+
+        // Ensure output file contains all translations URLs
+        assert!(ensure_translations_in_output(&site, &path, &link));
+    }
+}
diff --git a/test_site_i18n/content/_index.fr.md b/test_site_i18n/content/_index.fr.md
new file mode 100644
index 00000000..b7249018
--- /dev/null
+++ b/test_site_i18n/content/_index.fr.md
@@ -0,0 +1,5 @@
++++
+title = "Accueil"
++++
+
+Page d'accueil
diff --git a/test_site_i18n/content/_index.md b/test_site_i18n/content/_index.md
new file mode 100644
index 00000000..814b9a0e
--- /dev/null
+++ b/test_site_i18n/content/_index.md
@@ -0,0 +1,5 @@
++++
+title = "Home"
++++
+
+Homepage
diff --git a/test_site_i18n/content/blog/not-translated-in-default-language.fr.md b/test_site_i18n/content/blog/not-translated-in-default-language.fr.md
new file mode 100644
index 00000000..a918561c
--- /dev/null
+++ b/test_site_i18n/content/blog/not-translated-in-default-language.fr.md
@@ -0,0 +1,5 @@
++++
+title = "Ma page que en français"
++++
+
+Cette page n'est pas traduite dans la langue par défaut (anglais).
diff --git a/test_site_i18n/templates/index.html b/test_site_i18n/templates/index.html
index e1b47f13..1f5e03c9 100644
--- a/test_site_i18n/templates/index.html
+++ b/test_site_i18n/templates/index.html
@@ -2,3 +2,7 @@
     {{page.title}}
 {% endfor %}
 Language: {{lang}}
+
+{% for t in section.translations %}
+Translated in {{t.lang|default(value=config.default_language)}}: {{t.title}} {{t.permalink|safe}}
+{% endfor %}

From ba8939b240f5e1a5e68108bc188b3ac5edc7ef30 Mon Sep 17 00:00:00 2001
From: Bram Neijt 
Date: Wed, 7 Apr 2021 21:47:15 +0200
Subject: [PATCH 040/113] If it's a directory, serve index.html instead (#1426)

---
 src/cmd/serve.rs | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs
index 86762efe..6f040d87 100644
--- a/src/cmd/serve.rs
+++ b/src/cmd/serve.rs
@@ -107,9 +107,16 @@ async fn handle_request(req: Request, mut root: PathBuf) -> Result
Date: Mon, 22 Feb 2021 22:26:19 +0100
Subject: [PATCH 041/113] Enforce unic valid language codes

---
 Cargo.lock                                  | 25 +++++++++++++++++
 components/config/Cargo.toml                |  1 +
 components/config/src/config/languages.rs   | 27 ++++++++++++++----
 components/config/src/config/mod.rs         | 22 +++++++++------
 components/config/src/lib.rs                |  2 +-
 components/library/src/content/file_info.rs | 14 +++++-----
 components/library/src/content/page.rs      |  8 +++---
 components/library/src/content/section.rs   |  8 +++---
 components/library/src/taxonomies/mod.rs    | 16 +++--------
 components/site/src/lib.rs                  | 31 ++++++++-------------
 components/templates/src/global_fns/mod.rs  |  8 +++---
 test_site_i18n/config.toml                  |  9 +++---
 12 files changed, 102 insertions(+), 69 deletions(-)

diff --git a/Cargo.lock b/Cargo.lock
index 5fca5c19..67fa6d4a 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -305,6 +305,7 @@ dependencies = [
  "serde_derive",
  "syntect",
  "toml",
+ "unic-langid",
  "utils",
 ]
 
@@ -2759,6 +2760,12 @@ dependencies = [
  "winapi 0.3.9",
 ]
 
+[[package]]
+name = "tinystr"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "29738eedb4388d9ea620eeab9384884fc3f06f586a2eddb56bedc5885126c7c1"
+
 [[package]]
 name = "tinyvec"
 version = "1.1.1"
@@ -2898,6 +2905,24 @@ version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "80d7ff825a6a654ee85a63e80f92f054f904f21e7d12da4e22f9834a4aaa35bc"
 
+[[package]]
+name = "unic-langid"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "73328fcd730a030bdb19ddf23e192187a6b01cd98be6d3140622a89129459ce5"
+dependencies = [
+ "unic-langid-impl",
+]
+
+[[package]]
+name = "unic-langid-impl"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a4a8eeaf0494862c1404c95ec2f4c33a2acff5076f64314b465e3ddae1b934d"
+dependencies = [
+ "tinystr",
+]
+
 [[package]]
 name = "unic-segment"
 version = "0.9.0"
diff --git a/components/config/Cargo.toml b/components/config/Cargo.toml
index 43bbcddb..97589409 100644
--- a/components/config/Cargo.toml
+++ b/components/config/Cargo.toml
@@ -13,6 +13,7 @@ chrono = "0.4"
 globset = "0.4"
 lazy_static = "1"
 syntect = "4.1"
+unic-langid = "0.9"
 
 errors = { path = "../errors" }
 utils = { path = "../utils" }
diff --git a/components/config/src/config/languages.rs b/components/config/src/config/languages.rs
index dee61ffb..20aaa00e 100644
--- a/components/config/src/config/languages.rs
+++ b/components/config/src/config/languages.rs
@@ -1,16 +1,31 @@
 use std::collections::HashMap;
 
+use errors::{bail, Result};
 use serde_derive::{Deserialize, Serialize};
+use unic_langid::LanguageIdentifier;
 
-#[derive(Clone, Debug, Default, PartialEq, Eq, Serialize, Deserialize)]
+#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
 #[serde(default)]
-pub struct Language {
-    /// The language code
-    pub code: String,
+pub struct LanguageOptions {
     /// Whether to generate a feed for that language, defaults to `false`
-    pub feed: bool,
+    pub generate_feed: bool,
     /// Whether to generate search index for that language, defaults to `false`
-    pub search: bool,
+    pub build_search_index: bool,
+}
+
+impl Default for LanguageOptions {
+    fn default() -> Self {
+        LanguageOptions { generate_feed: false, build_search_index: false }
+    }
 }
 
 pub type TranslateTerm = HashMap;
+
+/// We want to ensure the language codes are valid ones
+pub fn validate_code(code: &str) -> Result<()> {
+    if LanguageIdentifier::from_bytes(code.as_bytes()).is_err() {
+        bail!("Language `{}` is not a valid Unicode Language Identifier (see http://unicode.org/reports/tr35/#Unicode_language_identifier)", code)
+    }
+
+    Ok(())
+}
diff --git a/components/config/src/config/mod.rs b/components/config/src/config/mod.rs
index 57682b3b..70edef14 100644
--- a/components/config/src/config/mod.rs
+++ b/components/config/src/config/mod.rs
@@ -44,7 +44,7 @@ pub struct Config {
     /// The language used in the site. Defaults to "en"
     pub default_language: String,
     /// The list of supported languages outside of the default one
-    pub languages: Vec,
+    pub languages: HashMap,
 
     /// Languages list and translated strings
     ///
@@ -129,10 +129,15 @@ impl Config {
             bail!("Highlight theme {} defined in config does not exist.", highlight_theme);
         }
 
-        if config.languages.iter().any(|l| l.code == config.default_language) {
+        if config.languages.iter().any(|(code, _)| code == &config.default_language) {
             bail!("Default language `{}` should not appear both in `config.default_language` and `config.languages`", config.default_language)
         }
 
+        languages::validate_code(&config.default_language)?;
+        for code in config.languages.keys() {
+            languages::validate_code(&code)?;
+        }
+
         if !config.ignored_content.is_empty() {
             // Convert the file glob strings into a compiled glob set matcher. We want to do this once,
             // at program initialization, rather than for every page, for example. We arrange for the
@@ -280,7 +285,7 @@ impl Config {
 
     /// Returns the codes of all additional languages
     pub fn languages_codes(&self) -> Vec<&str> {
-        self.languages.iter().map(|l| l.code.as_ref()).collect()
+        self.languages.iter().map(|(code, _)| code.as_ref()).collect()
     }
 
     pub fn is_in_build_mode(&self) -> bool {
@@ -362,7 +367,7 @@ impl Default for Config {
             highlight_code: false,
             highlight_theme: "base16-ocean-dark".to_string(),
             default_language: "en".to_string(),
-            languages: Vec::new(),
+            languages: HashMap::new(),
             generate_feed: false,
             feed_limit: None,
             feed_filename: "atom.xml".to_string(),
@@ -671,10 +676,11 @@ anchors = "off"
         let config_str = r#"
 base_url = "https://remplace-par-ton-url.fr"
 default_language = "fr"
-languages = [
-    { code = "fr" },
-    { code = "en" },
-]
+
+[languages.fr]
+
+[languages.en]
+
         "#;
         let config = Config::parse(config_str);
         let err = config.unwrap_err();
diff --git a/components/config/src/lib.rs b/components/config/src/lib.rs
index f431f232..0f5829ac 100644
--- a/components/config/src/lib.rs
+++ b/components/config/src/lib.rs
@@ -2,7 +2,7 @@ mod config;
 pub mod highlighting;
 mod theme;
 pub use crate::config::{
-    languages::Language, link_checker::LinkChecker, slugify::Slugify, taxonomies::Taxonomy, Config,
+    languages::LanguageOptions, link_checker::LinkChecker, slugify::Slugify, taxonomies::Taxonomy, Config,
 };
 use errors::Result;
 
diff --git a/components/library/src/content/file_info.rs b/components/library/src/content/file_info.rs
index 167d6048..d137ecb9 100644
--- a/components/library/src/content/file_info.rs
+++ b/components/library/src/content/file_info.rs
@@ -152,7 +152,7 @@ impl FileInfo {
 mod tests {
     use std::path::{Path, PathBuf};
 
-    use config::{Config, Language};
+    use config::{Config, LanguageOptions};
 
     use super::{find_content_components, FileInfo};
 
@@ -184,7 +184,7 @@ mod tests {
     #[test]
     fn can_find_valid_language_in_page() {
         let mut config = Config::default();
-        config.languages.push(Language { code: String::from("fr"), feed: false, search: false });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let mut file = FileInfo::new_page(
             &Path::new("/home/vincent/code/site/content/posts/tutorials/python.fr.md"),
             &PathBuf::new(),
@@ -197,7 +197,7 @@ mod tests {
     #[test]
     fn can_find_valid_language_with_default_locale() {
         let mut config = Config::default();
-        config.languages.push(Language { code: String::from("fr"), feed: false, search: false });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let mut file = FileInfo::new_page(
             &Path::new("/home/vincent/code/site/content/posts/tutorials/python.en.md"),
             &PathBuf::new(),
@@ -210,7 +210,7 @@ mod tests {
     #[test]
     fn can_find_valid_language_in_page_with_assets() {
         let mut config = Config::default();
-        config.languages.push(Language { code: String::from("fr"), feed: false, search: false });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let mut file = FileInfo::new_page(
             &Path::new("/home/vincent/code/site/content/posts/tutorials/python/index.fr.md"),
             &PathBuf::new(),
@@ -236,7 +236,7 @@ mod tests {
     #[test]
     fn errors_on_unknown_language_in_page_with_i18n_on() {
         let mut config = Config::default();
-        config.languages.push(Language { code: String::from("it"), feed: false, search: false });
+        config.languages.insert("it".to_owned(), LanguageOptions::default());
         let mut file = FileInfo::new_page(
             &Path::new("/home/vincent/code/site/content/posts/tutorials/python.fr.md"),
             &PathBuf::new(),
@@ -248,7 +248,7 @@ mod tests {
     #[test]
     fn can_find_valid_language_in_section() {
         let mut config = Config::default();
-        config.languages.push(Language { code: String::from("fr"), feed: false, search: false });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let mut file = FileInfo::new_section(
             &Path::new("/home/vincent/code/site/content/posts/tutorials/_index.fr.md"),
             &PathBuf::new(),
@@ -275,7 +275,7 @@ mod tests {
     #[test]
     fn correct_canonical_after_find_language() {
         let mut config = Config::default();
-        config.languages.push(Language { code: String::from("fr"), feed: false, search: false });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let mut file = FileInfo::new_page(
             &Path::new("/home/vincent/code/site/content/posts/tutorials/python/index.fr.md"),
             &PathBuf::new(),
diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs
index 7774dfcd..b0e8df85 100644
--- a/components/library/src/content/page.rs
+++ b/components/library/src/content/page.rs
@@ -333,7 +333,7 @@ mod tests {
     use tera::Tera;
 
     use super::Page;
-    use config::{Config, Language};
+    use config::{Config, LanguageOptions};
     use front_matter::InsertAnchor;
     use utils::slugs::SlugifyStrategy;
 
@@ -805,7 +805,7 @@ Hello world
     #[test]
     fn can_specify_language_in_filename() {
         let mut config = Config::default();
-        config.languages.push(Language { code: String::from("fr"), feed: false, search: false });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let content = r#"
 +++
 +++
@@ -822,7 +822,7 @@ Bonjour le monde"#
     #[test]
     fn can_specify_language_in_filename_with_date() {
         let mut config = Config::default();
-        config.languages.push(Language { code: String::from("fr"), feed: false, search: false });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let content = r#"
 +++
 +++
@@ -841,7 +841,7 @@ Bonjour le monde"#
     #[test]
     fn i18n_frontmatter_path_overrides_default_permalink() {
         let mut config = Config::default();
-        config.languages.push(Language { code: String::from("fr"), feed: false, search: false });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let content = r#"
 +++
 path = "bonjour"
diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs
index 299af1a5..00c9024f 100644
--- a/components/library/src/content/section.rs
+++ b/components/library/src/content/section.rs
@@ -254,7 +254,7 @@ mod tests {
     use tempfile::tempdir;
 
     use super::Section;
-    use config::{Config, Language};
+    use config::{Config, LanguageOptions};
 
     #[test]
     fn section_with_assets_gets_right_info() {
@@ -312,7 +312,7 @@ mod tests {
     #[test]
     fn can_specify_language_in_filename() {
         let mut config = Config::default();
-        config.languages.push(Language { code: String::from("fr"), feed: false, search: false });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let content = r#"
 +++
 +++
@@ -334,7 +334,7 @@ Bonjour le monde"#
     #[test]
     fn can_make_links_to_translated_sections_without_double_trailing_slash() {
         let mut config = Config::default();
-        config.languages.push(Language { code: String::from("fr"), feed: false, search: false });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let content = r#"
 +++
 +++
@@ -351,7 +351,7 @@ Bonjour le monde"#
     #[test]
     fn can_make_links_to_translated_subsections_with_trailing_slash() {
         let mut config = Config::default();
-        config.languages.push(Language { code: String::from("fr"), feed: false, search: false });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let content = r#"
 +++
 +++
diff --git a/components/library/src/taxonomies/mod.rs b/components/library/src/taxonomies/mod.rs
index f4660d1b..d3291678 100644
--- a/components/library/src/taxonomies/mod.rs
+++ b/components/library/src/taxonomies/mod.rs
@@ -270,7 +270,7 @@ mod tests {
 
     use crate::content::Page;
     use crate::library::Library;
-    use config::{Config, Language, Slugify, Taxonomy as TaxonomyConfig};
+    use config::{Config, LanguageOptions, Slugify, Taxonomy as TaxonomyConfig};
     use utils::slugs::SlugifyStrategy;
 
     #[test]
@@ -495,7 +495,7 @@ mod tests {
     #[test]
     fn can_make_taxonomies_in_multiple_languages() {
         let mut config = Config::default();
-        config.languages.push(Language { feed: false, code: "fr".to_string(), search: false });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let mut library = Library::new(2, 0, true);
 
         config.taxonomies = vec![
@@ -605,11 +605,7 @@ mod tests {
     fn can_make_utf8_taxonomies() {
         let mut config = Config::default();
         config.slugify.taxonomies = SlugifyStrategy::Safe;
-        config.languages.push(Language {
-            feed: false,
-            code: "fr".to_string(),
-            ..Language::default()
-        });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let mut library = Library::new(2, 0, true);
 
         config.taxonomies = vec![TaxonomyConfig {
@@ -638,11 +634,7 @@ mod tests {
     fn can_make_slugified_taxonomies_in_multiple_languages() {
         let mut config = Config::default();
         config.slugify.taxonomies = SlugifyStrategy::On;
-        config.languages.push(Language {
-            feed: false,
-            code: "fr".to_string(),
-            ..Language::default()
-        });
+        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let mut library = Library::new(2, 0, true);
 
         config.taxonomies = vec![
diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs
index 97704778..bf725abf 100644
--- a/components/site/src/lib.rs
+++ b/components/site/src/lib.rs
@@ -126,11 +126,8 @@ impl Site {
     /// There are one index section for the default language + 1 per language
     fn index_section_paths(&self) -> Vec<(PathBuf, Option)> {
         let mut res = vec![(self.content_path.join("_index.md"), None)];
-        for language in &self.config.languages {
-            res.push((
-                self.content_path.join(format!("_index.{}.md", language.code)),
-                Some(language.code.clone()),
-            ));
+        for code in self.config.languages.keys() {
+            res.push((self.content_path.join(format!("_index.{}.md", code)), Some(code.clone())));
         }
         res
     }
@@ -177,7 +174,7 @@ impl Site {
         // so it's kinda necessecary
         let mut dir_walker = WalkDir::new(format!("{}/{}", base_path, "content/")).into_iter();
         let mut allowed_index_filenames: Vec<_> =
-            self.config.languages.iter().map(|l| format!("_index.{}.md", l.code)).collect();
+            self.config.languages.iter().map(|(code, _)| format!("_index.{}.md", code)).collect();
         allowed_index_filenames.push("_index.md".to_string());
 
         loop {
@@ -228,7 +225,7 @@ impl Site {
                         Ok(f) => {
                             let path_str = f.path().file_name().unwrap().to_str().unwrap();
                             if f.path().is_file()
-                                && allowed_index_filenames.iter().find(|&s| *s == path_str).is_some()
+                                && allowed_index_filenames.iter().any(|s| s == path_str)
                             {
                                 Some(f)
                             } else {
@@ -660,13 +657,13 @@ impl Site {
             start = log_time(start, "Generated feed in default language");
         }
 
-        for lang in &self.config.languages {
-            if !lang.feed {
+        for (code, language) in &self.config.languages {
+            if !language.generate_feed {
                 continue;
             }
             let pages =
-                library.pages_values().iter().filter(|p| p.lang == lang.code).cloned().collect();
-            self.render_feed(pages, Some(&PathBuf::from(lang.code.clone())), &lang.code, |c| c)?;
+                library.pages_values().iter().filter(|p| &p.lang == code).cloned().collect();
+            self.render_feed(pages, Some(&PathBuf::from(code)), &code, |c| c)?;
             start = log_time(start, "Generated feed in other language");
         }
 
@@ -704,17 +701,13 @@ impl Site {
             ),
         )?;
 
-        for language in &self.config.languages {
-            if language.code != self.config.default_language && language.search {
+        for (code, language) in &self.config.languages {
+            if code != &self.config.default_language && language.build_search_index {
                 create_file(
-                    &self.output_path.join(&format!("search_index.{}.js", &language.code)),
+                    &self.output_path.join(&format!("search_index.{}.js", &code)),
                     &format!(
                         "window.searchIndex = {};",
-                        search::build_index(
-                            &language.code,
-                            &self.library.read().unwrap(),
-                            &self.config
-                        )?
+                        search::build_index(&code, &self.library.read().unwrap(), &self.config)?
                     ),
                 )?;
             }
diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs
index 7038c157..fa71cf75 100644
--- a/components/templates/src/global_fns/mod.rs
+++ b/components/templates/src/global_fns/mod.rs
@@ -67,7 +67,7 @@ fn make_path_with_lang(path: String, lang: &str, config: &Config) -> Result
Date: Sat, 6 Mar 2021 23:31:04 +0100
Subject: [PATCH 042/113] Add a LanguageOption for the default language if
 there is none

---
 components/config/src/config/languages.rs   |  6 ++-
 components/config/src/config/mod.rs         | 51 ++++++++++-----------
 components/library/src/content/file_info.rs |  2 +-
 components/site/src/lib.rs                  | 12 ++---
 components/templates/src/global_fns/mod.rs  |  2 +-
 5 files changed, 38 insertions(+), 35 deletions(-)

diff --git a/components/config/src/config/languages.rs b/components/config/src/config/languages.rs
index 20aaa00e..189b71cc 100644
--- a/components/config/src/config/languages.rs
+++ b/components/config/src/config/languages.rs
@@ -7,6 +7,10 @@ use unic_langid::LanguageIdentifier;
 #[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
 #[serde(default)]
 pub struct LanguageOptions {
+    /// Title of the site. Defaults to None
+    pub title: Option,
+    /// Description of the site. Defaults to None
+    pub description: Option,
     /// Whether to generate a feed for that language, defaults to `false`
     pub generate_feed: bool,
     /// Whether to generate search index for that language, defaults to `false`
@@ -15,7 +19,7 @@ pub struct LanguageOptions {
 
 impl Default for LanguageOptions {
     fn default() -> Self {
-        LanguageOptions { generate_feed: false, build_search_index: false }
+        LanguageOptions { title: None, description: None, generate_feed: false, build_search_index: false }
     }
 }
 
diff --git a/components/config/src/config/mod.rs b/components/config/src/config/mod.rs
index 70edef14..3f03d0e7 100644
--- a/components/config/src/config/mod.rs
+++ b/components/config/src/config/mod.rs
@@ -129,15 +129,23 @@ impl Config {
             bail!("Highlight theme {} defined in config does not exist.", highlight_theme);
         }
 
-        if config.languages.iter().any(|(code, _)| code == &config.default_language) {
-            bail!("Default language `{}` should not appear both in `config.default_language` and `config.languages`", config.default_language)
-        }
-
         languages::validate_code(&config.default_language)?;
         for code in config.languages.keys() {
             languages::validate_code(&code)?;
         }
 
+        // We automatically insert a language option for the default language *if* it isn't present
+        // TODO: what to do if there is like an empty dict for the lang? merge it or use the language
+        // TODO: as source of truth?
+        if !config.languages.contains_key(&config.default_language) {
+            config.languages.insert(config.default_language.clone(), languages::LanguageOptions {
+                title: config.title.clone(),
+                description: config.title.clone(),
+                generate_feed: config.generate_feed,
+                build_search_index: config.build_search_index,
+            });
+        }
+
         if !config.ignored_content.is_empty() {
             // Convert the file glob strings into a compiled glob set matcher. We want to do this once,
             // at program initialization, rather than for every page, for example. We arrange for the
@@ -278,14 +286,20 @@ impl Config {
         self.add_theme_extra(&theme)
     }
 
-    /// Is this site using i18n?
-    pub fn is_multilingual(&self) -> bool {
-        !self.languages.is_empty()
+    pub fn other_languages(&self) -> HashMap<&str, &languages::LanguageOptions> {
+        let mut others = HashMap::new();
+        for (k, v) in &self.languages {
+            if k == &self.default_language {
+                continue;
+            }
+            others.insert(k.as_str(), v);
+        }
+        others
     }
 
-    /// Returns the codes of all additional languages
-    pub fn languages_codes(&self) -> Vec<&str> {
-        self.languages.iter().map(|(code, _)| code.as_ref()).collect()
+    /// Is this site using i18n?
+    pub fn is_multilingual(&self) -> bool {
+        !self.other_languages().is_empty()
     }
 
     pub fn is_in_build_mode(&self) -> bool {
@@ -545,6 +559,7 @@ title = "A title"
     #[test]
     fn can_use_present_translation() {
         let config = Config::parse(CONFIG_TRANSLATION).unwrap();
+        assert!(config.languages.contains_key("fr"));
         assert_eq!(config.get_translation("fr", "title").unwrap(), "Un titre");
         assert_eq!(config.get_translation("en", "title").unwrap(), "A title");
     }
@@ -671,22 +686,6 @@ anchors = "off"
         assert_eq!(config.slugify.anchors, SlugifyStrategy::Off);
     }
 
-    #[test]
-    fn error_on_language_set_twice() {
-        let config_str = r#"
-base_url = "https://remplace-par-ton-url.fr"
-default_language = "fr"
-
-[languages.fr]
-
-[languages.en]
-
-        "#;
-        let config = Config::parse(config_str);
-        let err = config.unwrap_err();
-        assert_eq!("Default language `fr` should not appear both in `config.default_language` and `config.languages`", format!("{}", err));
-    }
-
     #[test]
     fn cannot_overwrite_theme_mapping_with_invalid_type() {
         let config_str = r#"
diff --git a/components/library/src/content/file_info.rs b/components/library/src/content/file_info.rs
index d137ecb9..2c6841a5 100644
--- a/components/library/src/content/file_info.rs
+++ b/components/library/src/content/file_info.rs
@@ -136,7 +136,7 @@ impl FileInfo {
 
         // The language code is not present in the config: typo or the user forgot to add it to the
         // config
-        if !config.languages_codes().contains(&parts[1].as_ref()) {
+        if !config.other_languages().contains_key(&parts[1].as_ref()) {
             bail!("File {:?} has a language code of {} which isn't present in the config.toml `languages`", self.path, parts[1]);
         }
 
diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs
index bf725abf..dd3b790a 100644
--- a/components/site/src/lib.rs
+++ b/components/site/src/lib.rs
@@ -124,10 +124,10 @@ impl Site {
 
     /// The index sections are ALWAYS at those paths
     /// There are one index section for the default language + 1 per language
-    fn index_section_paths(&self) -> Vec<(PathBuf, Option)> {
+    fn index_section_paths(&self) -> Vec<(PathBuf, Option<&str>)> {
         let mut res = vec![(self.content_path.join("_index.md"), None)];
-        for code in self.config.languages.keys() {
-            res.push((self.content_path.join(format!("_index.{}.md", code)), Some(code.clone())));
+        for (code, _) in self.config.other_languages() {
+            res.push((self.content_path.join(format!("_index.{}.md", code)), Some(code)));
         }
         res
     }
@@ -174,7 +174,7 @@ impl Site {
         // so it's kinda necessecary
         let mut dir_walker = WalkDir::new(format!("{}/{}", base_path, "content/")).into_iter();
         let mut allowed_index_filenames: Vec<_> =
-            self.config.languages.iter().map(|(code, _)| format!("_index.{}.md", code)).collect();
+            self.config.other_languages().iter().map(|(code, _)| format!("_index.{}.md", code)).collect();
         allowed_index_filenames.push("_index.md".to_string());
 
         loop {
@@ -657,7 +657,7 @@ impl Site {
             start = log_time(start, "Generated feed in default language");
         }
 
-        for (code, language) in &self.config.languages {
+        for (code, language) in &self.config.other_languages() {
             if !language.generate_feed {
                 continue;
             }
@@ -701,7 +701,7 @@ impl Site {
             ),
         )?;
 
-        for (code, language) in &self.config.languages {
+        for (code, language) in &self.config.other_languages() {
             if code != &self.config.default_language && language.build_search_index {
                 create_file(
                     &self.output_path.join(&format!("search_index.{}.js", &code)),
diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs
index fa71cf75..be90716f 100644
--- a/components/templates/src/global_fns/mod.rs
+++ b/components/templates/src/global_fns/mod.rs
@@ -67,7 +67,7 @@ fn make_path_with_lang(path: String, lang: &str, config: &Config) -> Result
Date: Sun, 7 Mar 2021 13:57:41 +0100
Subject: [PATCH 043/113] Move taxonomies to language options dict

---
 CHANGELOG.md                               |   3 +
 components/config/src/config/languages.rs  |  11 +-
 components/config/src/config/mod.rs        |  24 +-
 components/config/src/config/taxonomies.rs |   3 -
 components/config/src/lib.rs               |   3 +-
 components/library/src/pagination/mod.rs   |   4 +-
 components/library/src/taxonomies/mod.rs   | 244 ++++++++-------------
 components/site/src/lib.rs                 |  25 +--
 components/site/tests/site.rs              |   1 -
 components/templates/src/global_fns/mod.rs |  92 ++++----
 src/cmd/serve.rs                           |   8 +-
 test_site_i18n/config.toml                 |   6 +-
 test_site_i18n/templates/tags/list.html    |   2 +-
 13 files changed, 183 insertions(+), 243 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2b2188e4..cfcfd68e 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,6 +5,9 @@
 ### Breaking
 
 - Newlines are now required after the closing `+++` of front-matter
+- i18n rework: languages now have their sections in `config.toml` to set up all their options
+  1. taxonomies don't have a `lang` anymore in the config, you need to declare them in their respective language section
+  2. 
 
 ### Other
 
diff --git a/components/config/src/config/languages.rs b/components/config/src/config/languages.rs
index 189b71cc..a40a916b 100644
--- a/components/config/src/config/languages.rs
+++ b/components/config/src/config/languages.rs
@@ -4,6 +4,8 @@ use errors::{bail, Result};
 use serde_derive::{Deserialize, Serialize};
 use unic_langid::LanguageIdentifier;
 
+use crate::config::taxonomies;
+
 #[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
 #[serde(default)]
 pub struct LanguageOptions {
@@ -15,11 +17,18 @@ pub struct LanguageOptions {
     pub generate_feed: bool,
     /// Whether to generate search index for that language, defaults to `false`
     pub build_search_index: bool,
+    pub taxonomies: Vec,
 }
 
 impl Default for LanguageOptions {
     fn default() -> Self {
-        LanguageOptions { title: None, description: None, generate_feed: false, build_search_index: false }
+        LanguageOptions {
+            title: None,
+            description: None,
+            generate_feed: false,
+            build_search_index: false,
+            taxonomies: Vec::new(),
+        }
     }
 }
 
diff --git a/components/config/src/config/mod.rs b/components/config/src/config/mod.rs
index 3f03d0e7..0f3c26e8 100644
--- a/components/config/src/config/mod.rs
+++ b/components/config/src/config/mod.rs
@@ -138,12 +138,16 @@ impl Config {
         // TODO: what to do if there is like an empty dict for the lang? merge it or use the language
         // TODO: as source of truth?
         if !config.languages.contains_key(&config.default_language) {
-            config.languages.insert(config.default_language.clone(), languages::LanguageOptions {
-                title: config.title.clone(),
-                description: config.title.clone(),
-                generate_feed: config.generate_feed,
-                build_search_index: config.build_search_index,
-            });
+            config.languages.insert(
+                config.default_language.clone(),
+                languages::LanguageOptions {
+                    title: config.title.clone(),
+                    description: config.title.clone(),
+                    generate_feed: config.generate_feed,
+                    build_search_index: config.build_search_index,
+                    taxonomies: config.taxonomies.clone(),
+                },
+            );
         }
 
         if !config.ignored_content.is_empty() {
@@ -164,12 +168,6 @@ impl Config {
                 Some(glob_set_builder.build().expect("Bad ignored_content in config file."));
         }
 
-        for taxonomy in config.taxonomies.iter_mut() {
-            if taxonomy.lang.is_empty() {
-                taxonomy.lang = config.default_language.clone();
-            }
-        }
-
         if config.highlight_code {
             println!("`highlight_code` has been moved to a [markdown] section. Top level `highlight_code` and `highlight_theme` will stop working in 0.14.");
         }
@@ -270,7 +268,7 @@ impl Config {
     fn add_theme_extra(&mut self, theme: &Theme) -> Result<()> {
         for (key, val) in &theme.extra {
             if !self.extra.contains_key(key) {
-                // The key is not overriden in site config, insert it
+                // The key is not overridden in site config, insert it
                 self.extra.insert(key.to_string(), val.clone());
                 continue;
             }
diff --git a/components/config/src/config/taxonomies.rs b/components/config/src/config/taxonomies.rs
index e18f54c6..ac93a7f4 100644
--- a/components/config/src/config/taxonomies.rs
+++ b/components/config/src/config/taxonomies.rs
@@ -11,9 +11,6 @@ pub struct Taxonomy {
     pub paginate_path: Option,
     /// Whether to generate a feed only for each taxonomy term, defaults to false
     pub feed: bool,
-    /// The language for that taxonomy, only used in multilingual sites.
-    /// Defaults to the config `default_language` if not set
-    pub lang: String,
 }
 
 impl Taxonomy {
diff --git a/components/config/src/lib.rs b/components/config/src/lib.rs
index 0f5829ac..4c211540 100644
--- a/components/config/src/lib.rs
+++ b/components/config/src/lib.rs
@@ -2,7 +2,8 @@ mod config;
 pub mod highlighting;
 mod theme;
 pub use crate::config::{
-    languages::LanguageOptions, link_checker::LinkChecker, slugify::Slugify, taxonomies::Taxonomy, Config,
+    languages::LanguageOptions, link_checker::LinkChecker, slugify::Slugify, taxonomies::Taxonomy,
+    Config,
 };
 use errors::Result;
 
diff --git a/components/library/src/pagination/mod.rs b/components/library/src/pagination/mod.rs
index a5e53a15..1287d149 100644
--- a/components/library/src/pagination/mod.rs
+++ b/components/library/src/pagination/mod.rs
@@ -233,7 +233,7 @@ impl<'a> Paginator<'a> {
             PaginationRoot::Taxonomy(t, item) => {
                 context.insert("taxonomy", &t.kind);
                 context.insert("term", &item.serialize(library));
-                context.insert("lang", &t.kind.lang);
+                context.insert("lang", &t.lang);
             }
         };
         context.insert("current_url", &pager.permalink);
@@ -419,6 +419,7 @@ mod tests {
         };
         let taxonomy = Taxonomy {
             kind: taxonomy_def,
+            lang: "en".to_owned(),
             slug: "tags".to_string(),
             items: vec![taxonomy_item.clone()],
         };
@@ -453,6 +454,7 @@ mod tests {
         };
         let taxonomy = Taxonomy {
             kind: taxonomy_def,
+            lang: "en".to_owned(),
             slug: "some-tags".to_string(),
             items: vec![taxonomy_item.clone()],
         };
diff --git a/components/library/src/taxonomies/mod.rs b/components/library/src/taxonomies/mod.rs
index d3291678..6b5eb828 100644
--- a/components/library/src/taxonomies/mod.rs
+++ b/components/library/src/taxonomies/mod.rs
@@ -55,7 +55,7 @@ pub struct TaxonomyItem {
 impl TaxonomyItem {
     pub fn new(
         name: &str,
-        taxonomy: &TaxonomyConfig,
+        lang: &str,
         taxo_slug: &str,
         config: &Config,
         keys: Vec,
@@ -76,8 +76,8 @@ impl TaxonomyItem {
             .collect();
         let (mut pages, ignored_pages) = sort_pages_by_date(data);
         let item_slug = slugify_paths(name, config.slugify.taxonomies);
-        let path = if taxonomy.lang != config.default_language {
-            format!("/{}/{}/{}/", taxonomy.lang, taxo_slug, item_slug)
+        let path = if lang != config.default_language {
+            format!("/{}/{}/{}/", lang, taxo_slug, item_slug)
         } else {
             format!("/{}/{}/", taxo_slug, item_slug)
         };
@@ -107,6 +107,7 @@ impl PartialEq for TaxonomyItem {
 #[derive(Debug, Clone, PartialEq, Serialize)]
 pub struct SerializedTaxonomy<'a> {
     kind: &'a TaxonomyConfig,
+    lang: &'a str,
     items: Vec>,
 }
 
@@ -114,7 +115,7 @@ impl<'a> SerializedTaxonomy<'a> {
     pub fn from_taxonomy(taxonomy: &'a Taxonomy, library: &'a Library) -> Self {
         let items: Vec =
             taxonomy.items.iter().map(|i| SerializedTaxonomyItem::from_item(i, library)).collect();
-        SerializedTaxonomy { kind: &taxonomy.kind, items }
+        SerializedTaxonomy { kind: &taxonomy.kind, lang: &taxonomy.lang, items }
     }
 }
 
@@ -122,6 +123,7 @@ impl<'a> SerializedTaxonomy<'a> {
 #[derive(Debug, Clone, PartialEq)]
 pub struct Taxonomy {
     pub kind: TaxonomyConfig,
+    pub lang: String,
     pub slug: String,
     // this vec is sorted by the count of item
     pub items: Vec,
@@ -130,6 +132,7 @@ pub struct Taxonomy {
 impl Taxonomy {
     fn new(
         kind: TaxonomyConfig,
+        lang: &str,
         config: &Config,
         items: HashMap>,
         library: &Library,
@@ -137,7 +140,7 @@ impl Taxonomy {
         let mut sorted_items = vec![];
         let slug = slugify_paths(&kind.name, config.slugify.taxonomies);
         for (name, pages) in items {
-            sorted_items.push(TaxonomyItem::new(&name, &kind, &slug, config, pages, library));
+            sorted_items.push(TaxonomyItem::new(&name, lang, &slug, config, pages, library));
         }
         //sorted_items.sort_by(|a, b| a.name.cmp(&b.name));
         sorted_items.sort_by(|a, b| match a.slug.cmp(&b.slug) {
@@ -147,7 +150,7 @@ impl Taxonomy {
         });
         sorted_items.dedup_by(|a, b| {
             // custom Eq impl checks for equal permalinks
-            // here we make sure all pages from a get coppied to b
+            // here we make sure all pages from a get copied to b
             // before dedup gets rid of it
             if a == b {
                 b.merge(a.to_owned());
@@ -156,7 +159,7 @@ impl Taxonomy {
                 false
             }
         });
-        Taxonomy { kind, slug, items: sorted_items }
+        Taxonomy { kind, slug, lang: lang.to_owned(), items: sorted_items }
     }
 
     pub fn len(&self) -> usize {
@@ -176,7 +179,7 @@ impl Taxonomy {
     ) -> Result {
         let mut context = Context::new();
         context.insert("config", config);
-        context.insert("lang", &self.kind.lang);
+        context.insert("lang", &self.lang);
         context.insert("term", &SerializedTaxonomyItem::from_item(item, library));
         context.insert("taxonomy", &self.kind);
         context.insert(
@@ -202,7 +205,7 @@ impl Taxonomy {
         let terms: Vec =
             self.items.iter().map(|i| SerializedTaxonomyItem::from_item(i, library)).collect();
         context.insert("terms", &terms);
-        context.insert("lang", &self.kind.lang);
+        context.insert("lang", &self.lang);
         context.insert("taxonomy", &self.kind);
         context.insert("current_url", &config.make_permalink(&self.kind.name));
         context.insert("current_path", &format!("/{}/", self.kind.name));
@@ -219,11 +222,26 @@ impl Taxonomy {
 }
 
 pub fn find_taxonomies(config: &Config, library: &Library) -> Result> {
+    let mut slugs_to_lang = HashMap::new();
+
     let taxonomies_def = {
         let mut m = HashMap::new();
+        // the default language taxonomies
         for t in &config.taxonomies {
             let slug = slugify_paths(&t.name, config.slugify.taxonomies);
-            m.insert(format!("{}-{}", slug, t.lang), t);
+            let key = format!("{}-{}", slug, config.default_language);
+            slugs_to_lang.insert(key.clone(), config.default_language.as_str());
+            m.insert(key, t);
+        }
+
+        // other languages taxonomies
+        for (code, options) in config.other_languages() {
+            for t in &options.taxonomies {
+                let slug = slugify_paths(&t.name, config.slugify.taxonomies);
+                let key = format!("{}-{}", slug, code);
+                slugs_to_lang.insert(key.clone(), code);
+                m.insert(key, t);
+            }
         }
         m
     };
@@ -257,7 +275,13 @@ pub fn find_taxonomies(config: &Config, library: &Library) -> Result {
-                        if x.kind.lang == "en" {
+                        if x.lang == "en" {
                             t = Some(x)
                         }
                     }
@@ -605,14 +593,15 @@ mod tests {
     fn can_make_utf8_taxonomies() {
         let mut config = Config::default();
         config.slugify.taxonomies = SlugifyStrategy::Safe;
-        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let mut library = Library::new(2, 0, true);
 
-        config.taxonomies = vec![TaxonomyConfig {
-            name: "catégories".to_string(),
-            lang: "fr".to_string(),
-            ..TaxonomyConfig::default()
-        }];
+        let french_taxo =
+            vec![TaxonomyConfig { name: "catégories".to_string(), ..TaxonomyConfig::default() }];
+        let lang_options = config::LanguageOptions {
+            taxonomies: french_taxo,
+            ..config::LanguageOptions::default()
+        };
+        config.languages.insert("fr".to_owned(), lang_options);
 
         let mut page = Page::default();
         page.lang = "fr".to_string();
@@ -634,32 +623,21 @@ mod tests {
     fn can_make_slugified_taxonomies_in_multiple_languages() {
         let mut config = Config::default();
         config.slugify.taxonomies = SlugifyStrategy::On;
-        config.languages.insert("fr".to_owned(), LanguageOptions::default());
         let mut library = Library::new(2, 0, true);
 
         config.taxonomies = vec![
-            TaxonomyConfig {
-                name: "categories".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
-            TaxonomyConfig {
-                name: "tags".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
-            TaxonomyConfig {
-                name: "auteurs".to_string(),
-                lang: "fr".to_string(),
-                ..TaxonomyConfig::default()
-            },
-            TaxonomyConfig {
-                name: "tags".to_string(),
-                lang: "fr".to_string(),
-                ..TaxonomyConfig::default()
-            },
+            TaxonomyConfig { name: "categories".to_string(), ..TaxonomyConfig::default() },
+            TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() },
         ];
-
+        let french_taxo = vec![
+            TaxonomyConfig { name: "auteurs".to_string(), ..TaxonomyConfig::default() },
+            TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() },
+        ];
+        let lang_options = config::LanguageOptions {
+            taxonomies: french_taxo,
+            ..config::LanguageOptions::default()
+        };
+        config.languages.insert("fr".to_owned(), lang_options);
         let mut page1 = Page::default();
         let mut taxo_page1 = HashMap::new();
         taxo_page1.insert("tags".to_string(), vec!["rust".to_string(), "db".to_string()]);
@@ -692,7 +670,7 @@ mod tests {
             for x in taxonomies {
                 match x.kind.name.as_ref() {
                     "tags" => {
-                        if x.kind.lang == "en" {
+                        if x.lang == "en" {
                             t = Some(x)
                         }
                     }
@@ -746,26 +724,10 @@ mod tests {
         let mut library = Library::new(2, 0, false);
 
         config.taxonomies = vec![
-            TaxonomyConfig {
-                name: "test-taxonomy".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
-            TaxonomyConfig {
-                name: "test taxonomy".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
-            TaxonomyConfig {
-                name: "test-taxonomy ".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
-            TaxonomyConfig {
-                name: "Test-Taxonomy ".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
+            TaxonomyConfig { name: "test-taxonomy".to_string(), ..TaxonomyConfig::default() },
+            TaxonomyConfig { name: "test taxonomy".to_string(), ..TaxonomyConfig::default() },
+            TaxonomyConfig { name: "test-taxonomy ".to_string(), ..TaxonomyConfig::default() },
+            TaxonomyConfig { name: "Test-Taxonomy ".to_string(), ..TaxonomyConfig::default() },
         ];
 
         let mut page1 = Page::default();
@@ -831,26 +793,10 @@ mod tests {
         let mut library = Library::new(2, 0, false);
 
         config.taxonomies = vec![
-            TaxonomyConfig {
-                name: "test-taxonomy".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
-            TaxonomyConfig {
-                name: "test taxonomy".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
-            TaxonomyConfig {
-                name: "test-taxonomy ".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
-            TaxonomyConfig {
-                name: "Test-Taxonomy ".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
+            TaxonomyConfig { name: "test-taxonomy".to_string(), ..TaxonomyConfig::default() },
+            TaxonomyConfig { name: "test taxonomy".to_string(), ..TaxonomyConfig::default() },
+            TaxonomyConfig { name: "test-taxonomy ".to_string(), ..TaxonomyConfig::default() },
+            TaxonomyConfig { name: "Test-Taxonomy ".to_string(), ..TaxonomyConfig::default() },
         ];
 
         let mut page1 = Page::default();
@@ -909,26 +855,10 @@ mod tests {
         let mut library = Library::new(2, 0, false);
 
         config.taxonomies = vec![
-            TaxonomyConfig {
-                name: "test-taxonomy".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
-            TaxonomyConfig {
-                name: "test taxonomy".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
-            TaxonomyConfig {
-                name: "test-taxonomy ".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
-            TaxonomyConfig {
-                name: "Test-Taxonomy ".to_string(),
-                lang: config.default_language.clone(),
-                ..TaxonomyConfig::default()
-            },
+            TaxonomyConfig { name: "test-taxonomy".to_string(), ..TaxonomyConfig::default() },
+            TaxonomyConfig { name: "test taxonomy".to_string(), ..TaxonomyConfig::default() },
+            TaxonomyConfig { name: "test-taxonomy ".to_string(), ..TaxonomyConfig::default() },
+            TaxonomyConfig { name: "Test-Taxonomy ".to_string(), ..TaxonomyConfig::default() },
         ];
 
         let mut page1 = Page::default();
@@ -964,7 +894,7 @@ mod tests {
         let tax = &taxonomies[0];
 
         // if names are different permalinks should also be different so
-        // the tems are still accessable
+        // the items are still accessible
         for term1 in tax.items.iter() {
             for term2 in tax.items.iter() {
                 assert!(term1.name == term2.name || term1.permalink != term2.permalink);
diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs
index dd3b790a..a3c4c844 100644
--- a/components/site/src/lib.rs
+++ b/components/site/src/lib.rs
@@ -173,8 +173,12 @@ impl Site {
         // which we can only decide to use after we've deserialised the section
         // so it's kinda necessecary
         let mut dir_walker = WalkDir::new(format!("{}/{}", base_path, "content/")).into_iter();
-        let mut allowed_index_filenames: Vec<_> =
-            self.config.other_languages().iter().map(|(code, _)| format!("_index.{}.md", code)).collect();
+        let mut allowed_index_filenames: Vec<_> = self
+            .config
+            .other_languages()
+            .iter()
+            .map(|(code, _)| format!("_index.{}.md", code))
+            .collect();
         allowed_index_filenames.push("_index.md".to_string());
 
         loop {
@@ -240,11 +244,8 @@ impl Site {
                     .collect::>();
 
                 for index_file in index_files {
-                    let section = Section::from_file(
-                        index_file.path(),
-                        &self.config,
-                        &self.base_path,
-                    )?;
+                    let section =
+                        Section::from_file(index_file.path(), &self.config, &self.base_path)?;
 
                     // if the section is drafted we can skip the enitre dir
                     if section.meta.draft && !self.include_drafts {
@@ -794,8 +795,8 @@ impl Site {
         ensure_directory_exists(&self.output_path)?;
 
         let mut components = Vec::new();
-        if taxonomy.kind.lang != self.config.default_language {
-            components.push(taxonomy.kind.lang.as_ref());
+        if taxonomy.lang != self.config.default_language {
+            components.push(taxonomy.lang.as_ref());
         }
 
         components.push(taxonomy.slug.as_ref());
@@ -829,11 +830,7 @@ impl Site {
                     self.render_feed(
                         item.pages.iter().map(|p| library.get_page_by_key(*p)).collect(),
                         Some(&PathBuf::from(format!("{}/{}", taxonomy.slug, item.slug))),
-                        if self.config.is_multilingual() && !taxonomy.kind.lang.is_empty() {
-                            &taxonomy.kind.lang
-                        } else {
-                            &self.config.default_language
-                        },
+                        &taxonomy.lang,
                         |mut context: Context| {
                             context.insert("taxonomy", &taxonomy.kind);
                             context
diff --git a/components/site/tests/site.rs b/components/site/tests/site.rs
index 178cda04..f2160232 100644
--- a/components/site/tests/site.rs
+++ b/components/site/tests/site.rs
@@ -550,7 +550,6 @@ fn can_build_site_with_pagination_for_taxonomy() {
             paginate_by: Some(2),
             paginate_path: None,
             feed: true,
-            lang: site.config.default_language.clone(),
         });
         site.load().unwrap();
         {
diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs
index be90716f..b8615133 100644
--- a/components/templates/src/global_fns/mod.rs
+++ b/components/templates/src/global_fns/mod.rs
@@ -358,7 +358,7 @@ impl GetTaxonomyUrl {
             for item in &taxo.items {
                 items.insert(slugify_paths(&item.name.clone(), slugify), item.permalink.clone());
             }
-            taxonomies.insert(format!("{}-{}", taxo.kind.name, taxo.kind.lang), items);
+            taxonomies.insert(format!("{}-{}", taxo.kind.name, taxo.lang), items);
         }
         Self { taxonomies, default_lang: default_lang.to_string(), slugify }
     }
@@ -476,7 +476,7 @@ impl GetTaxonomy {
     ) -> Self {
         let mut taxonomies = HashMap::new();
         for taxo in all_taxonomies {
-            taxonomies.insert(format!("{}-{}", taxo.kind.name, taxo.kind.lang), taxo);
+            taxonomies.insert(format!("{}-{}", taxo.kind.name, taxo.lang), taxo);
         }
         Self { taxonomies, library, default_lang: default_lang.to_string() }
     }
@@ -587,20 +587,13 @@ mod tests {
     fn can_get_taxonomy() {
         let mut config = Config::default();
         config.slugify.taxonomies = SlugifyStrategy::On;
-        let taxo_config = TaxonomyConfig {
-            name: "tags".to_string(),
-            lang: config.default_language.clone(),
-            ..TaxonomyConfig::default()
-        };
-        let taxo_config_fr = TaxonomyConfig {
-            name: "tags".to_string(),
-            lang: "fr".to_string(),
-            ..TaxonomyConfig::default()
-        };
+        let taxo_config = TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() };
+        let taxo_config_fr =
+            TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() };
         let library = Arc::new(RwLock::new(Library::new(0, 0, false)));
         let tag = TaxonomyItem::new(
             "Programming",
-            &taxo_config,
+            &config.default_language,
             "tags",
             &config,
             vec![],
@@ -608,15 +601,24 @@ mod tests {
         );
         let tag_fr = TaxonomyItem::new(
             "Programmation",
-            &taxo_config_fr,
+            "fr",
             "tags",
             &config,
             vec![],
             &library.read().unwrap(),
         );
-        let tags = Taxonomy { kind: taxo_config, slug: "tags".to_string(), items: vec![tag] };
-        let tags_fr =
-            Taxonomy { kind: taxo_config_fr, slug: "tags".to_string(), items: vec![tag_fr] };
+        let tags = Taxonomy {
+            kind: taxo_config,
+            lang: config.default_language.clone(),
+            slug: "tags".to_string(),
+            items: vec![tag],
+        };
+        let tags_fr = Taxonomy {
+            kind: taxo_config_fr,
+            lang: "fr".to_owned(),
+            slug: "tags".to_string(),
+            items: vec![tag_fr],
+        };
 
         let taxonomies = vec![tags.clone(), tags_fr.clone()];
         let static_fn =
@@ -668,23 +670,31 @@ mod tests {
     fn can_get_taxonomy_url() {
         let mut config = Config::default();
         config.slugify.taxonomies = SlugifyStrategy::On;
-        let taxo_config = TaxonomyConfig {
-            name: "tags".to_string(),
-            lang: config.default_language.clone(),
-            ..TaxonomyConfig::default()
-        };
-        let taxo_config_fr = TaxonomyConfig {
-            name: "tags".to_string(),
-            lang: "fr".to_string(),
-            ..TaxonomyConfig::default()
-        };
+        let taxo_config = TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() };
+        let taxo_config_fr =
+            TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() };
         let library = Library::new(0, 0, false);
-        let tag = TaxonomyItem::new("Programming", &taxo_config, "tags", &config, vec![], &library);
-        let tag_fr =
-            TaxonomyItem::new("Programmation", &taxo_config_fr, "tags", &config, vec![], &library);
-        let tags = Taxonomy { kind: taxo_config, slug: "tags".to_string(), items: vec![tag] };
-        let tags_fr =
-            Taxonomy { kind: taxo_config_fr, slug: "tags".to_string(), items: vec![tag_fr] };
+        let tag = TaxonomyItem::new(
+            "Programming",
+            &config.default_language,
+            "tags",
+            &config,
+            vec![],
+            &library,
+        );
+        let tag_fr = TaxonomyItem::new("Programmation", "fr", "tags", &config, vec![], &library);
+        let tags = Taxonomy {
+            kind: taxo_config,
+            lang: config.default_language.clone(),
+            slug: "tags".to_string(),
+            items: vec![tag],
+        };
+        let tags_fr = Taxonomy {
+            kind: taxo_config_fr,
+            lang: "fr".to_owned(),
+            slug: "tags".to_string(),
+            items: vec![tag_fr],
+        };
 
         let taxonomies = vec![tags.clone(), tags_fr.clone()];
         let static_fn =
@@ -839,27 +849,23 @@ title = "A title"
     #[test]
     fn can_get_feed_url_with_default_language() {
         let config = Config::parse(TRANS_CONFIG).unwrap();
-        let static_fn = GetUrl::new(config.clone(), HashMap::new(), vec![TEST_CONTEXT.static_path.clone()]);
+        let static_fn =
+            GetUrl::new(config.clone(), HashMap::new(), vec![TEST_CONTEXT.static_path.clone()]);
         let mut args = HashMap::new();
         args.insert("path".to_string(), to_value(config.feed_filename).unwrap());
         args.insert("lang".to_string(), to_value("fr").unwrap());
-        assert_eq!(
-            static_fn.call(&args).unwrap(),
-            "https://remplace-par-ton-url.fr/atom.xml"
-        );
+        assert_eq!(static_fn.call(&args).unwrap(), "https://remplace-par-ton-url.fr/atom.xml");
     }
 
     #[test]
     fn can_get_feed_url_with_other_language() {
         let config = Config::parse(TRANS_CONFIG).unwrap();
-        let static_fn = GetUrl::new(config.clone(), HashMap::new(), vec![TEST_CONTEXT.static_path.clone()]);
+        let static_fn =
+            GetUrl::new(config.clone(), HashMap::new(), vec![TEST_CONTEXT.static_path.clone()]);
         let mut args = HashMap::new();
         args.insert("path".to_string(), to_value(config.feed_filename).unwrap());
         args.insert("lang".to_string(), to_value("en").unwrap());
-        assert_eq!(
-            static_fn.call(&args).unwrap(),
-            "https://remplace-par-ton-url.fr/en/atom.xml"
-        );
+        assert_eq!(static_fn.call(&args).unwrap(), "https://remplace-par-ton-url.fr/en/atom.xml");
     }
 
     #[test]
diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs
index 6f040d87..79681f10 100644
--- a/src/cmd/serve.rs
+++ b/src/cmd/serve.rs
@@ -281,11 +281,7 @@ pub fn serve(
         return Err(format!("Cannot start server on address {}.", address).into());
     }
 
-    let config_filename = config_file
-        .file_name()
-        .unwrap()
-        .to_str()
-        .unwrap_or("config.toml");
+    let config_filename = config_file.file_name().unwrap().to_str().unwrap_or("config.toml");
 
     // An array of (path, bool, bool) where the path should be watched for changes, and the boolean value
     // indicates whether this file/folder must exist for zola serve to operate
@@ -485,7 +481,7 @@ pub fn serve(
         match rx.recv() {
             Ok(event) => {
                 let can_do_fast_reload = !matches!(event, Remove(_));
-                
+
                 match event {
                     // Intellij does weird things on edit, chmod is there to count those changes
                     // https://github.com/passcod/notify/issues/150#issuecomment-494912080
diff --git a/test_site_i18n/config.toml b/test_site_i18n/config.toml
index 3f8da069..30f6aaf9 100644
--- a/test_site_i18n/config.toml
+++ b/test_site_i18n/config.toml
@@ -13,13 +13,15 @@ generate_feed = true
 
 taxonomies = [
     {name = "authors", feed = true},
-    {name = "auteurs", lang = "fr"},
     {name = "tags"},
-    {name = "tags", lang = "fr"},
 ]
 
 [languages.fr]
 generate_feed = true
+taxonomies = [
+    {name = "auteurs", lang = "fr"},
+    {name = "tags", lang = "fr"},
+]
 
 [languages.it]
 build_search_index = true
diff --git a/test_site_i18n/templates/tags/list.html b/test_site_i18n/templates/tags/list.html
index 18d6d50d..734bfff0 100644
--- a/test_site_i18n/templates/tags/list.html
+++ b/test_site_i18n/templates/tags/list.html
@@ -1,3 +1,3 @@
 {% for tag in terms %}
-    {{ tag.name }} {{ tag.slug }} {{ tag.pages | length }} {{ taxonomy.lang }}
+    {{ tag.name }} {{ tag.slug }} {{ tag.pages | length }} {{ lang }}
 {% endfor %}

From 0812b603a637a2ea68a06ca143b7561e4a2b3ab0 Mon Sep 17 00:00:00 2001
From: Vincent Prouillet 
Date: Fri, 12 Mar 2021 22:30:33 +0100
Subject: [PATCH 044/113] Remove deprecated config options

---
 components/config/src/config/markup.rs        | 21 ++++-
 components/config/src/config/mod.rs           | 93 +------------------
 components/config/src/highlighting.rs         |  2 +-
 components/config/src/lib.rs                  |  2 +
 components/rendering/src/markdown.rs          |  6 +-
 .../rendering/src/markdown/codeblock.rs       |  2 +-
 components/site/src/lib.rs                    |  2 +-
 7 files changed, 33 insertions(+), 95 deletions(-)

diff --git a/components/config/src/config/markup.rs b/components/config/src/config/markup.rs
index 3feb5cfc..39c686de 100644
--- a/components/config/src/config/markup.rs
+++ b/components/config/src/config/markup.rs
@@ -1,5 +1,9 @@
+use std::path::Path;
+
 use serde_derive::{Deserialize, Serialize};
-use syntect::parsing::SyntaxSet;
+use syntect::parsing::{SyntaxSet, SyntaxSetBuilder};
+
+use errors::Result;
 
 pub const DEFAULT_HIGHLIGHT_THEME: &str = "base16-ocean-dark";
 
@@ -31,6 +35,21 @@ pub struct Markdown {
 }
 
 impl Markdown {
+    /// Attempt to load any extra syntax found in the extra syntaxes of the config
+    pub fn load_extra_syntaxes(&mut self, base_path: &Path) -> Result<()> {
+        if self.extra_syntaxes.is_empty() {
+            return Ok(());
+        }
+
+        let mut ss = SyntaxSetBuilder::new();
+        for dir in &self.extra_syntaxes {
+            ss.add_from_folder(base_path.join(dir), true)?;
+        }
+        self.extra_syntax_set = Some(ss.build());
+
+        Ok(())
+    }
+
     pub fn has_external_link_tweaks(&self) -> bool {
         self.external_links_target_blank
             || self.external_links_no_follow
diff --git a/components/config/src/config/mod.rs b/components/config/src/config/mod.rs
index 0f3c26e8..8fba9079 100644
--- a/components/config/src/config/mod.rs
+++ b/components/config/src/config/mod.rs
@@ -10,7 +10,6 @@ use std::path::{Path, PathBuf};
 
 use globset::{Glob, GlobSet, GlobSetBuilder};
 use serde_derive::{Deserialize, Serialize};
-use syntect::parsing::SyntaxSetBuilder;
 use toml::Value as Toml;
 
 use crate::highlighting::THEME_SET;
@@ -55,12 +54,6 @@ pub struct Config {
     /// key into different language.
     translations: HashMap,
 
-    /// Whether to highlight all code blocks found in markdown files. Defaults to false
-    highlight_code: bool,
-    /// Which themes to use for code highlighting. See Readme for supported themes
-    /// Defaults to "base16-ocean-dark"
-    highlight_theme: String,
-
     /// Whether to generate a feed. Defaults to false.
     pub generate_feed: bool,
     /// The number of articles to include in the feed. Defaults to including all items.
@@ -91,9 +84,6 @@ pub struct Config {
     #[serde(skip_serializing)]
     pub mode: Mode,
 
-    /// A list of directories to search for additional `.sublime-syntax` files in.
-    pub extra_syntaxes: Vec,
-
     pub output_dir: String,
 
     pub link_checker: link_checker::LinkChecker,
@@ -124,9 +114,8 @@ impl Config {
             bail!("A base URL is required in config.toml with key `base_url`");
         }
 
-        let highlight_theme = config.highlight_theme();
-        if !THEME_SET.themes.contains_key(highlight_theme) {
-            bail!("Highlight theme {} defined in config does not exist.", highlight_theme);
+        if !THEME_SET.themes.contains_key(&config.markdown.highlight_theme) {
+            bail!("Highlight theme {} defined in config does not exist.", config.markdown.highlight_theme);
         }
 
         languages::validate_code(&config.default_language)?;
@@ -168,13 +157,6 @@ impl Config {
                 Some(glob_set_builder.build().expect("Bad ignored_content in config file."));
         }
 
-        if config.highlight_code {
-            println!("`highlight_code` has been moved to a [markdown] section. Top level `highlight_code` and `highlight_theme` will stop working in 0.14.");
-        }
-        if !config.extra_syntaxes.is_empty() {
-            println!("`extra_syntaxes` has been moved to a [markdown] section. Top level `extra_syntaxes` will stop working in 0.14.");
-        }
-
         Ok(config)
     }
 
@@ -186,60 +168,6 @@ impl Config {
         Config::parse(&content)
     }
 
-    /// Temporary, while we have the settings in 2 places
-    /// TODO: remove me in 0.14
-    pub fn highlight_code(&self) -> bool {
-        if !self.highlight_code && !self.markdown.highlight_code {
-            return false;
-        }
-
-        if self.highlight_code {
-            true
-        } else {
-            self.markdown.highlight_code
-        }
-    }
-
-    /// Temporary, while we have the settings in 2 places
-    /// TODO: remove me in 0.14
-    pub fn highlight_theme(&self) -> &str {
-        if self.highlight_theme != markup::DEFAULT_HIGHLIGHT_THEME {
-            &self.highlight_theme
-        } else {
-            &self.markdown.highlight_theme
-        }
-    }
-
-    /// TODO: remove me in 0.14
-    pub fn extra_syntaxes(&self) -> Vec {
-        if !self.markdown.extra_syntaxes.is_empty() {
-            return self.markdown.extra_syntaxes.clone();
-        }
-
-        if !self.extra_syntaxes.is_empty() {
-            return self.extra_syntaxes.clone();
-        }
-
-        Vec::new()
-    }
-
-    /// Attempt to load any extra syntax found in the extra syntaxes of the config
-    /// TODO: move to markup.rs in 0.14
-    pub fn load_extra_syntaxes(&mut self, base_path: &Path) -> Result<()> {
-        let extra_syntaxes = self.extra_syntaxes();
-        if extra_syntaxes.is_empty() {
-            return Ok(());
-        }
-
-        let mut ss = SyntaxSetBuilder::new();
-        for dir in &extra_syntaxes {
-            ss.add_from_folder(base_path.join(dir), true)?;
-        }
-        self.markdown.extra_syntax_set = Some(ss.build());
-
-        Ok(())
-    }
-
     /// Makes a url, taking into account that the base url might have a trailing slash
     pub fn make_permalink(&self, path: &str) -> String {
         let trailing_bit =
@@ -284,6 +212,7 @@ impl Config {
         self.add_theme_extra(&theme)
     }
 
+    /// Returns all the languages settings for languages other than the default one
     pub fn other_languages(&self) -> HashMap<&str, &languages::LanguageOptions> {
         let mut others = HashMap::new();
         for (k, v) in &self.languages {
@@ -300,14 +229,6 @@ impl Config {
         !self.other_languages().is_empty()
     }
 
-    pub fn is_in_build_mode(&self) -> bool {
-        self.mode == Mode::Build
-    }
-
-    pub fn is_in_serve_mode(&self) -> bool {
-        self.mode == Mode::Serve
-    }
-
     pub fn is_in_check_mode(&self) -> bool {
         self.mode == Mode::Check
     }
@@ -318,9 +239,8 @@ impl Config {
 
     pub fn enable_check_mode(&mut self) {
         self.mode = Mode::Check;
-        // Disable syntax highlighting since the results won't be used
-        // and this operation can be expensive.
-        self.highlight_code = false;
+        // Disable syntax highlighting since the results won't be used and it is slow
+        self.markdown.highlight_code = false;
     }
 
     pub fn get_translation>(&self, lang: S, key: S) -> Result {
@@ -376,8 +296,6 @@ impl Default for Config {
             title: None,
             description: None,
             theme: None,
-            highlight_code: false,
-            highlight_theme: "base16-ocean-dark".to_string(),
             default_language: "en".to_string(),
             languages: HashMap::new(),
             generate_feed: false,
@@ -392,7 +310,6 @@ impl Default for Config {
             ignored_content: Vec::new(),
             ignored_content_globset: None,
             translations: HashMap::new(),
-            extra_syntaxes: Vec::new(),
             output_dir: "public".to_string(),
             link_checker: link_checker::LinkChecker::default(),
             slugify: slugify::Slugify::default(),
diff --git a/components/config/src/highlighting.rs b/components/config/src/highlighting.rs
index 54f6b8fa..43b0f5ba 100644
--- a/components/config/src/highlighting.rs
+++ b/components/config/src/highlighting.rs
@@ -28,7 +28,7 @@ pub fn get_highlighter(
     language: Option<&str>,
     config: &Config,
 ) -> (HighlightLines<'static>, HighlightSource) {
-    let theme = &THEME_SET.themes[config.highlight_theme()];
+    let theme = &THEME_SET.themes[&config.markdown.highlight_theme];
 
     if let Some(ref lang) = language {
         if let Some(ref extra_syntaxes) = config.markdown.extra_syntax_set {
diff --git a/components/config/src/lib.rs b/components/config/src/lib.rs
index 4c211540..130b88bf 100644
--- a/components/config/src/lib.rs
+++ b/components/config/src/lib.rs
@@ -1,6 +1,8 @@
 mod config;
 pub mod highlighting;
 mod theme;
+
+
 pub use crate::config::{
     languages::LanguageOptions, link_checker::LinkChecker, slugify::Slugify, taxonomies::Taxonomy,
     Config,
diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs
index 1b877beb..731b2c7b 100644
--- a/components/rendering/src/markdown.rs
+++ b/components/rendering/src/markdown.rs
@@ -216,7 +216,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result None,
                         };
 
-                        if !context.config.highlight_code() {
+                        if !context.config.markdown.highlight_code {
                             if let Some(lang) = language {
                                 let html = format!(
                                     r#"
"#,
@@ -227,7 +227,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result".into());
                         }
 
-                        let theme = &THEME_SET.themes[context.config.highlight_theme()];
+                        let theme = &THEME_SET.themes[&context.config.markdown.highlight_theme];
                         match kind {
                             cmark::CodeBlockKind::Indented => (),
                             cmark::CodeBlockKind::Fenced(fence_info) => {
@@ -270,7 +270,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result {
-                        if !context.config.highlight_code() {
+                        if !context.config.markdown.highlight_code {
                             return Event::Html("
\n".into()); } // reset highlight and close the code block diff --git a/components/rendering/src/markdown/codeblock.rs b/components/rendering/src/markdown/codeblock.rs index c681a830..3c3a194c 100644 --- a/components/rendering/src/markdown/codeblock.rs +++ b/components/rendering/src/markdown/codeblock.rs @@ -29,7 +29,7 @@ impl<'config> CodeBlock<'config> { path: Option<&'config str>, ) -> Self { let fence_info = FenceSettings::new(fence_info); - let theme = &THEME_SET.themes[config.highlight_theme()]; + let theme = &THEME_SET.themes[&config.markdown.highlight_theme]; let (highlighter, highlight_source) = get_highlighter(fence_info.language, config); let extra_syntax_set = match highlight_source { HighlightSource::Extra => config.markdown.extra_syntax_set.as_ref(), diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index a3c4c844..42ebd687 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -73,7 +73,7 @@ impl Site { let path = path.as_ref(); let config_file = config_file.as_ref(); let mut config = get_config(config_file)?; - config.load_extra_syntaxes(path)?; + config.markdown.load_extra_syntaxes(path)?; if let Some(theme) = config.theme.clone() { // Grab data from the extra section of the theme From 187bc30f00f85d0ff8539f16b961240aa2b78d9c Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 13 Mar 2021 21:04:01 +0100 Subject: [PATCH 045/113] Serializing lang aware configs --- CHANGELOG.md | 3 +- components/config/src/config/mod.rs | 85 ++- components/config/src/lib.rs | 1 - components/library/src/content/page.rs | 12 +- components/library/src/content/section.rs | 3 +- components/library/src/pagination/mod.rs | 3 +- components/library/src/taxonomies/mod.rs | 4 +- components/rendering/src/context.rs | 3 +- components/rendering/src/shortcode.rs | 9 +- .../rendering/tests/codeblock_hl_lines.rs | 117 ++++- components/rendering/tests/markdown.rs | 496 ++++++++++++++++-- components/site/src/feed.rs | 2 +- components/site/src/lib.rs | 4 +- src/cmd/init.rs | 12 +- 14 files changed, 642 insertions(+), 112 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cfcfd68e..5b75a58b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,8 @@ - Newlines are now required after the closing `+++` of front-matter - i18n rework: languages now have their sections in `config.toml` to set up all their options 1. taxonomies don't have a `lang` anymore in the config, you need to declare them in their respective language section - 2. + 2. the `config` variable in templates has been changed and is now a stripped down language aware version of the previous `config` + object ### Other diff --git a/components/config/src/config/mod.rs b/components/config/src/config/mod.rs index 8fba9079..cbc6511f 100644 --- a/components/config/src/config/mod.rs +++ b/components/config/src/config/mod.rs @@ -20,14 +20,14 @@ use utils::fs::read_file; // We want a default base url for tests static DEFAULT_BASE_URL: &str = "http://a-website.com"; -#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)] +#[derive(Copy, Clone, Debug, PartialEq, Eq, Serialize, Deserialize)] pub enum Mode { Build, Serve, Check, } -#[derive(Clone, Debug, Serialize, Deserialize)] +#[derive(Clone, Debug, Deserialize)] #[serde(default)] pub struct Config { /// Base URL of the site, the only required config argument @@ -87,20 +87,30 @@ pub struct Config { pub output_dir: String, pub link_checker: link_checker::LinkChecker, - /// The setup for which slugification strategies to use for paths, taxonomies and anchors pub slugify: slugify::Slugify, - /// The search config, telling what to include in the search index pub search: search::Search, - /// The config for the Markdown rendering: syntax highlighting and everything pub markdown: markup::Markdown, - /// All user params set in [extra] in the config pub extra: HashMap, } +#[derive(Serialize)] +pub struct SerializedConfig<'a> { + base_url: &'a str, + mode: Mode, + title: &'a Option, + description: &'a Option, + languages: HashMap<&'a String, &'a languages::LanguageOptions>, + translations: &'a HashMap, + generate_feed: bool, + taxonomies: &'a [taxonomies::Taxonomy], + build_search_index: bool, + extra: &'a HashMap, +} + impl Config { /// Parses a string containing TOML to our Config struct /// Any extra parameter will end up in the extra field @@ -115,7 +125,10 @@ impl Config { } if !THEME_SET.themes.contains_key(&config.markdown.highlight_theme) { - bail!("Highlight theme {} defined in config does not exist.", config.markdown.highlight_theme); + bail!( + "Highlight theme {} defined in config does not exist.", + config.markdown.highlight_theme + ); } languages::validate_code(&config.default_language)?; @@ -123,21 +136,7 @@ impl Config { languages::validate_code(&code)?; } - // We automatically insert a language option for the default language *if* it isn't present - // TODO: what to do if there is like an empty dict for the lang? merge it or use the language - // TODO: as source of truth? - if !config.languages.contains_key(&config.default_language) { - config.languages.insert( - config.default_language.clone(), - languages::LanguageOptions { - title: config.title.clone(), - description: config.title.clone(), - generate_feed: config.generate_feed, - build_search_index: config.build_search_index, - taxonomies: config.taxonomies.clone(), - }, - ); - } + config.add_default_language(); if !config.ignored_content.is_empty() { // Convert the file glob strings into a compiled glob set matcher. We want to do this once, @@ -192,6 +191,25 @@ impl Config { } } + /// Adds the default language to the list of languages if not present + fn add_default_language(&mut self) { + // We automatically insert a language option for the default language *if* it isn't present + // TODO: what to do if there is like an empty dict for the lang? merge it or use the language + // TODO: as source of truth? + if !self.languages.contains_key(&self.default_language) { + self.languages.insert( + self.default_language.clone(), + languages::LanguageOptions { + title: self.title.clone(), + description: self.title.clone(), + generate_feed: self.generate_feed, + build_search_index: self.build_search_index, + taxonomies: self.taxonomies.clone(), + }, + ); + } + } + /// Merges the extra data from the theme with the config extra data fn add_theme_extra(&mut self, theme: &Theme) -> Result<()> { for (key, val) in &theme.extra { @@ -259,6 +277,23 @@ impl Config { }) .map(|term| term.to_string()) } + + pub fn serialize(&self, lang: &str) -> SerializedConfig { + let options = &self.languages[lang]; + + SerializedConfig { + base_url: &self.base_url, + mode: self.mode, + title: &options.title, + description: &options.description, + languages: self.languages.iter().filter(|(k, _)| k.as_str() != lang).collect(), + translations: &self.translations, + generate_feed: options.generate_feed, + taxonomies: &options.taxonomies, + build_search_index: self.build_search_index, + extra: &self.extra, + } + } } // merge TOML data that can be a table, or anything else @@ -291,7 +326,7 @@ pub fn merge(into: &mut Toml, from: &Toml) -> Result<()> { impl Default for Config { fn default() -> Config { - Config { + let mut config = Config { base_url: DEFAULT_BASE_URL.to_string(), title: None, description: None, @@ -316,7 +351,9 @@ impl Default for Config { search: search::Search::default(), markdown: markup::Markdown::default(), extra: HashMap::new(), - } + }; + config.add_default_language(); + config } } diff --git a/components/config/src/lib.rs b/components/config/src/lib.rs index 130b88bf..3b5ff501 100644 --- a/components/config/src/lib.rs +++ b/components/config/src/lib.rs @@ -2,7 +2,6 @@ mod config; pub mod highlighting; mod theme; - pub use crate::config::{ languages::LanguageOptions, link_checker::LinkChecker, slugify::Slugify, taxonomies::Taxonomy, Config, diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index b0e8df85..6d8ae36d 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -249,8 +249,14 @@ impl Page { config: &Config, anchor_insert: InsertAnchor, ) -> Result<()> { - let mut context = - RenderContext::new(tera, config, &self.permalink, permalinks, anchor_insert); + let mut context = RenderContext::new( + tera, + config, + &self.lang, + &self.permalink, + permalinks, + anchor_insert, + ); context.tera_context.insert("page", &SerializingPage::from_page_basic(self, None)); @@ -275,7 +281,7 @@ impl Page { }; let mut context = TeraContext::new(); - context.insert("config", config); + context.insert("config", &config.serialize(&self.lang)); context.insert("current_url", &self.permalink); context.insert("current_path", &self.path); context.insert("page", &self.to_serialized(library)); diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index 00c9024f..1b284cca 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -172,6 +172,7 @@ impl Section { let mut context = RenderContext::new( tera, config, + &self.lang, &self.permalink, permalinks, self.meta.insert_anchor_links, @@ -195,7 +196,7 @@ impl Section { let tpl_name = self.get_template_name(); let mut context = TeraContext::new(); - context.insert("config", config); + context.insert("config", &config.serialize(&self.lang)); context.insert("current_url", &self.permalink); context.insert("current_path", &self.path); context.insert("section", &self.to_serialized(library)); diff --git a/components/library/src/pagination/mod.rs b/components/library/src/pagination/mod.rs index 1287d149..e1bf525d 100644 --- a/components/library/src/pagination/mod.rs +++ b/components/library/src/pagination/mod.rs @@ -223,17 +223,18 @@ impl<'a> Paginator<'a> { library: &Library, ) -> Result { let mut context = Context::new(); - context.insert("config", &config); match self.root { PaginationRoot::Section(s) => { context .insert("section", &SerializingSection::from_section_basic(s, Some(library))); context.insert("lang", &s.lang); + context.insert("config", &config.serialize(&s.lang)); } PaginationRoot::Taxonomy(t, item) => { context.insert("taxonomy", &t.kind); context.insert("term", &item.serialize(library)); context.insert("lang", &t.lang); + context.insert("config", &config.serialize(&t.lang)); } }; context.insert("current_url", &pager.permalink); diff --git a/components/library/src/taxonomies/mod.rs b/components/library/src/taxonomies/mod.rs index 6b5eb828..3f34e934 100644 --- a/components/library/src/taxonomies/mod.rs +++ b/components/library/src/taxonomies/mod.rs @@ -178,7 +178,7 @@ impl Taxonomy { library: &Library, ) -> Result { let mut context = Context::new(); - context.insert("config", config); + context.insert("config", &config.serialize(&self.lang)); context.insert("lang", &self.lang); context.insert("term", &SerializedTaxonomyItem::from_item(item, library)); context.insert("taxonomy", &self.kind); @@ -201,7 +201,7 @@ impl Taxonomy { library: &Library, ) -> Result { let mut context = Context::new(); - context.insert("config", config); + context.insert("config", &config.serialize(&self.lang)); let terms: Vec = self.items.iter().map(|i| SerializedTaxonomyItem::from_item(i, library)).collect(); context.insert("terms", &terms); diff --git a/components/rendering/src/context.rs b/components/rendering/src/context.rs index 30249d36..aebdb431 100644 --- a/components/rendering/src/context.rs +++ b/components/rendering/src/context.rs @@ -20,12 +20,13 @@ impl<'a> RenderContext<'a> { pub fn new( tera: &'a Tera, config: &'a Config, + lang: &'a str, current_page_permalink: &'a str, permalinks: &'a HashMap, insert_anchor: InsertAnchor, ) -> RenderContext<'a> { let mut tera_context = Context::new(); - tera_context.insert("config", config); + tera_context.insert("config", &config.serialize(lang)); Self { tera: Cow::Borrowed(tera), tera_context, diff --git a/components/rendering/src/shortcode.rs b/components/rendering/src/shortcode.rs index aece80ee..298b9a4e 100644 --- a/components/rendering/src/shortcode.rs +++ b/components/rendering/src/shortcode.rs @@ -270,7 +270,14 @@ mod tests { fn render_shortcodes(code: &str, tera: &Tera) -> String { let config = Config::default(); let permalinks = HashMap::new(); - let context = RenderContext::new(&tera, &config, "", &permalinks, InsertAnchor::None); + let context = RenderContext::new( + &tera, + &config, + &config.default_language, + "", + &permalinks, + InsertAnchor::None, + ); super::render_shortcodes(code, &context).unwrap() } diff --git a/components/rendering/tests/codeblock_hl_lines.rs b/components/rendering/tests/codeblock_hl_lines.rs index 6f0eb7e4..23db55be 100644 --- a/components/rendering/tests/codeblock_hl_lines.rs +++ b/components/rendering/tests/codeblock_hl_lines.rs @@ -38,7 +38,14 @@ fn hl_lines_simple() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" ```hl_lines=2 @@ -67,7 +74,14 @@ fn hl_lines_in_middle() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" ```hl_lines=2-3 @@ -96,7 +110,14 @@ fn hl_lines_all() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" ```hl_lines=1-4 @@ -123,7 +144,14 @@ fn hl_lines_start_from_one() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" ```hl_lines=1-3 @@ -151,7 +179,14 @@ fn hl_lines_start_from_zero() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" ```hl_lines=0-3 @@ -179,7 +214,14 @@ fn hl_lines_end() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" ```hl_lines=3-4 @@ -207,7 +249,14 @@ fn hl_lines_end_out_of_bounds() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" ```hl_lines=3-4294967295 @@ -235,7 +284,14 @@ fn hl_lines_overlap() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" ```hl_lines=2-3 1-2 @@ -262,7 +318,14 @@ fn hl_lines_multiple() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" ```hl_lines=2-3,hl_lines=1-2 @@ -290,7 +353,14 @@ fn hl_lines_extra_spaces() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" ``` hl_lines = 2 - 3 1 - 2 @@ -318,7 +388,14 @@ fn hl_lines_int_and_range() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" ```hl_lines=1 3-4 @@ -347,7 +424,14 @@ fn hl_lines_single_line_range() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" ```hl_lines=2-2 @@ -376,7 +460,14 @@ fn hl_lines_reverse_range() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" ```hl_lines=3-2 diff --git a/components/rendering/tests/markdown.rs b/components/rendering/tests/markdown.rs index 468ff8ac..0c6296c0 100644 --- a/components/rendering/tests/markdown.rs +++ b/components/rendering/tests/markdown.rs @@ -13,7 +13,14 @@ fn can_do_render_content_simple() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("hello", &context).unwrap(); assert_eq!(res.body, "

hello

\n"); } @@ -24,7 +31,14 @@ fn doesnt_highlight_code_block_with_highlighting_off() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = false; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("```\n$ gutenberg server\n```", &context).unwrap(); assert_eq!(res.body, "
$ gutenberg server\n
\n"); } @@ -35,7 +49,14 @@ fn can_highlight_code_block_no_lang() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("```\n$ gutenberg server\n$ ping\n```", &context).unwrap(); assert_eq!( res.body, @@ -49,7 +70,14 @@ fn can_highlight_code_block_with_lang() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("```python\nlist.append(1)\n```", &context).unwrap(); assert_eq!( res.body, @@ -63,7 +91,14 @@ fn can_higlight_code_block_with_unknown_lang() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = true; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("```yolo\nlist.append(1)\n```", &context).unwrap(); // defaults to plain text assert_eq!( @@ -76,7 +111,14 @@ fn can_higlight_code_block_with_unknown_lang() { fn can_render_shortcode() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" Hello @@ -96,7 +138,14 @@ Hello fn can_render_shortcode_with_markdown_char_in_args_name() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let input = vec!["name", "na_me", "n_a_me", "n1"]; for i in input { let res = @@ -109,7 +158,14 @@ fn can_render_shortcode_with_markdown_char_in_args_name() { fn can_render_shortcode_with_markdown_char_in_args_value() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let input = vec![ "ub36ffWAqgQ-hey", "ub36ffWAqgQ_hey", @@ -139,7 +195,14 @@ fn can_render_body_shortcode_with_markdown_char_in_name() { "
{{ body }} - {{ author}}
", ) .unwrap(); - let context = RenderContext::new(&tera, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(&format!("{{% {}(author=\"Bob\") %}}\nhey\n{{% end %}}", i), &context) @@ -170,7 +233,14 @@ Here is another paragraph. tera.add_raw_template("shortcodes/figure.html", shortcode).unwrap(); let config = Config::default(); - let context = RenderContext::new(&tera, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(markdown_string, &context).unwrap(); @@ -203,7 +273,14 @@ Here is another paragraph. tera.add_raw_template("shortcodes/figure.html", shortcode).unwrap(); let config = Config::default(); - let context = RenderContext::new(&tera, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(markdown_string, &context).unwrap(); @@ -214,7 +291,14 @@ Here is another paragraph. fn can_render_several_shortcode_in_row() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" Hello @@ -249,7 +333,14 @@ fn doesnt_render_ignored_shortcodes() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.highlight_code = false; - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(r#"```{{/* youtube(id="w7Ft2ymGmfc") */}}```"#, &context).unwrap(); assert_eq!(res.body, "

{{ youtube(id="w7Ft2ymGmfc") }}

\n"); } @@ -265,7 +356,14 @@ fn can_render_shortcode_with_body() { .unwrap(); let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&tera, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" @@ -285,7 +383,14 @@ fn errors_rendering_unknown_shortcode() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("{{ hello(flash=true) }}", &context); assert!(res.is_err()); } @@ -296,7 +401,14 @@ fn can_make_valid_relative_link() { permalinks.insert("pages/about.md".to_string(), "https://vincent.is/about".to_string()); let tera_ctx = Tera::default(); let config = Config::default(); - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks, + InsertAnchor::None, + ); let res = render_content( r#"[rel link](@/pages/about.md), [abs link](https://vincent.is/about)"#, &context, @@ -314,7 +426,14 @@ fn can_make_relative_links_with_anchors() { permalinks.insert("pages/about.md".to_string(), "https://vincent.is/about".to_string()); let tera_ctx = Tera::default(); let config = Config::default(); - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks, + InsertAnchor::None, + ); let res = render_content(r#"[rel link](@/pages/about.md#cv)"#, &context).unwrap(); assert!(res.body.contains(r#"

rel link

"#)); @@ -325,7 +444,14 @@ fn errors_relative_link_inexistant() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("[rel link](@/pages/about.md)", &context); assert!(res.is_err()); } @@ -335,7 +461,14 @@ fn can_add_id_to_headings() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(r#"# Hello"#, &context).unwrap(); assert_eq!(res.body, "

Hello

\n"); } @@ -345,7 +478,14 @@ fn can_add_id_to_headings_same_slug() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("# Hello\n# Hello", &context).unwrap(); assert_eq!(res.body, "

Hello

\n

Hello

\n"); } @@ -356,7 +496,14 @@ fn can_add_non_slug_id_to_headings() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.slugify.anchors = SlugifyStrategy::Safe; - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(r#"# L'écologie et vous"#, &context).unwrap(); assert_eq!(res.body, "

L'écologie et vous

\n"); } @@ -366,7 +513,14 @@ fn can_handle_manual_ids_on_headings() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); // Tested things: manual IDs; whitespace flexibility; that automatic IDs avoid collision with // manual IDs; that duplicates are in fact permitted among manual IDs; that any non-plain-text // in the middle of `{#…}` will disrupt it from being acknowledged as a manual ID (that last @@ -403,7 +557,14 @@ fn blank_headings() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("# \n#\n# {#hmm} \n# {#}", &context).unwrap(); assert_eq!( res.body, @@ -415,7 +576,14 @@ fn blank_headings() { fn can_insert_anchor_left() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::Left); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::Left, + ); let res = render_content("# Hello", &context).unwrap(); assert_eq!( res.body, @@ -427,7 +595,14 @@ fn can_insert_anchor_left() { fn can_insert_anchor_right() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::Right); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::Right, + ); let res = render_content("# Hello", &context).unwrap(); assert_eq!( res.body, @@ -439,7 +614,14 @@ fn can_insert_anchor_right() { fn can_insert_anchor_for_multi_heading() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::Right); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::Right, + ); let res = render_content("# Hello\n# World", &context).unwrap(); assert_eq!( res.body, @@ -453,7 +635,14 @@ fn can_insert_anchor_for_multi_heading() { fn can_insert_anchor_with_exclamation_mark() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::Left); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::Left, + ); let res = render_content("# Hello!", &context).unwrap(); assert_eq!( res.body, @@ -466,7 +655,14 @@ fn can_insert_anchor_with_exclamation_mark() { fn can_insert_anchor_with_link() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::Left); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::Left, + ); let res = render_content("## [Rust](https://rust-lang.org)", &context).unwrap(); assert_eq!( res.body, @@ -478,7 +674,14 @@ fn can_insert_anchor_with_link() { fn can_insert_anchor_with_other_special_chars() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::Left); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::Left, + ); let res = render_content("# Hello*_()", &context).unwrap(); assert_eq!( res.body, @@ -493,6 +696,7 @@ fn can_make_toc() { let context = RenderContext::new( &ZOLA_TERA, &config, + &config.default_language, "https://mysite.com/something", &permalinks_ctx, InsertAnchor::Left, @@ -525,6 +729,7 @@ fn can_ignore_tags_in_toc() { let context = RenderContext::new( &ZOLA_TERA, &config, + &config.default_language, "https://mysite.com/something", &permalinks_ctx, InsertAnchor::Left, @@ -558,7 +763,14 @@ fn can_ignore_tags_in_toc() { fn can_understand_backtick_in_titles() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("# `Hello`", &context).unwrap(); assert_eq!(res.body, "

Hello

\n"); } @@ -567,7 +779,14 @@ fn can_understand_backtick_in_titles() { fn can_understand_backtick_in_paragraphs() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("Hello `world`", &context).unwrap(); assert_eq!(res.body, "

Hello world

\n"); } @@ -577,7 +796,14 @@ fn can_understand_backtick_in_paragraphs() { fn can_understand_links_in_heading() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("# [Rust](https://rust-lang.org)", &context).unwrap(); assert_eq!(res.body, "

Rust

\n"); } @@ -586,7 +812,14 @@ fn can_understand_links_in_heading() { fn can_understand_link_with_title_in_heading() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("# [Rust](https://rust-lang.org \"Rust homepage\")", &context).unwrap(); assert_eq!( @@ -599,7 +832,14 @@ fn can_understand_link_with_title_in_heading() { fn can_understand_emphasis_in_heading() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("# *Emphasis* text", &context).unwrap(); assert_eq!(res.body, "

Emphasis text

\n"); } @@ -608,7 +848,14 @@ fn can_understand_emphasis_in_heading() { fn can_understand_strong_in_heading() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("# **Strong** text", &context).unwrap(); assert_eq!(res.body, "

Strong text

\n"); } @@ -617,7 +864,14 @@ fn can_understand_strong_in_heading() { fn can_understand_code_in_heading() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("# `Code` text", &context).unwrap(); assert_eq!(res.body, "

Code text

\n"); } @@ -627,7 +881,14 @@ fn can_understand_code_in_heading() { fn can_understand_footnote_in_heading() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("# text [^1] there\n[^1]: footnote", &context).unwrap(); assert_eq!( res.body, @@ -645,7 +906,14 @@ fn can_make_valid_relative_link_in_heading() { permalinks.insert("pages/about.md".to_string(), "https://vincent.is/about/".to_string()); let tera_ctx = Tera::default(); let config = Config::default(); - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks, + InsertAnchor::None, + ); let res = render_content(r#" # [rel link](@/pages/about.md)"#, &context).unwrap(); assert_eq!( @@ -661,6 +929,7 @@ fn can_make_permalinks_with_colocated_assets_for_link() { let context = RenderContext::new( &ZOLA_TERA, &config, + &config.default_language, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None, @@ -676,6 +945,7 @@ fn can_make_permalinks_with_colocated_assets_for_image() { let context = RenderContext::new( &ZOLA_TERA, &config, + &config.default_language, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None, @@ -694,6 +964,7 @@ fn markdown_doesnt_wrap_html_in_paragraph() { let context = RenderContext::new( &ZOLA_TERA, &config, + &config.default_language, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None, @@ -726,6 +997,7 @@ fn correctly_captures_external_links() { let context = RenderContext::new( &ZOLA_TERA, &config, + &config.default_language, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None, @@ -748,7 +1020,14 @@ fn can_handle_summaries() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content( r#" Hello [My site][world] @@ -796,7 +1075,14 @@ fn doesnt_try_to_highlight_content_from_shortcode() { tera.add_raw_template("shortcodes/figure.html", shortcode).unwrap(); let config = Config::default(); - let context = RenderContext::new(&tera, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(markdown_string, &context).unwrap(); assert_eq!(res.body, expected); @@ -818,7 +1104,14 @@ fn can_emit_newlines_and_whitespace_with_shortcode() { tera.add_raw_template(&format!("shortcodes/{}.html", "preformatted"), shortcode).unwrap(); let config = Config::default(); - let context = RenderContext::new(&tera, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(markdown_string, &context).unwrap(); assert_eq!(res.body, expected); @@ -846,7 +1139,7 @@ fn can_emit_newlines_and_whitespace_with_shortcode() { // // tera.add_raw_template(&format!("shortcodes/{}.html", "alert"), shortcode).unwrap(); // let config = Config::default(); -// let context = RenderContext::new(&tera, &config, "", &permalinks_ctx, InsertAnchor::None); +// let context = RenderContext::new(&tera, &config, &config.default_language, "", &permalinks_ctx, InsertAnchor::None); // // let res = render_content(markdown_string, &context).unwrap(); // assert_eq!(res.body, expected); @@ -870,6 +1163,7 @@ fn leaves_custom_url_scheme_untouched() { let context = RenderContext::new( &tera_ctx, &config, + &config.default_language, "https://vincent.is/", &permalinks_ctx, InsertAnchor::None, @@ -896,6 +1190,7 @@ fn stops_with_an_error_on_an_empty_link() { let context = RenderContext::new( &tera_ctx, &config, + &config.default_language, "https://vincent.is/", &permalinks_ctx, InsertAnchor::None, @@ -943,7 +1238,14 @@ Bla bla"#; tera.add_raw_template("shortcodes/quote.md", shortcode).unwrap(); let config = Config::default(); - let context = RenderContext::new(&tera, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(markdown_string, &context).unwrap(); @@ -973,7 +1275,14 @@ fn can_render_shortcode_body_with_no_invalid_escaping() { tera.add_raw_template("shortcodes/resize_image.html", shortcode).unwrap(); let config = Config::default(); - let context = RenderContext::new(&tera, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(markdown_string, &context).unwrap(); assert_eq!(res.body, expected); @@ -1002,7 +1311,14 @@ fn can_render_commented_out_shortcodes_fine() { tera.add_raw_template("shortcodes/resize_image.html", shortcode).unwrap(); let config = Config::default(); - let context = RenderContext::new(&tera, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(markdown_string, &context).unwrap(); assert_eq!(res.body, expected); @@ -1034,7 +1350,14 @@ Again more text"#; tera.add_raw_template("shortcodes/quote.md", shortcode).unwrap(); let config = Config::default(); - let context = RenderContext::new(&tera, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(markdown_string, &context).unwrap(); assert_eq!(res.body, expected); @@ -1045,7 +1368,14 @@ fn can_render_emoji_alias() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.render_emoji = true; - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("Hello, World! :smile:", &context).unwrap(); assert_eq!(res.body, "

Hello, World! 😄

\n"); } @@ -1054,7 +1384,14 @@ fn can_render_emoji_alias() { fn emoji_aliases_are_ignored_when_disabled_in_config() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("Hello, World! :smile:", &context).unwrap(); assert_eq!(res.body, "

Hello, World! :smile:

\n"); } @@ -1083,7 +1420,14 @@ fn invocation_count_increments_in_shortcode() { tera.add_raw_template("shortcodes/a.html", shortcode_template_a).unwrap(); tera.add_raw_template("shortcodes/b.html", shortcode_template_b).unwrap(); let config = Config::default(); - let context = RenderContext::new(&tera, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &tera, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(markdown_string, &context).unwrap(); assert_eq!(res.body, expected); @@ -1093,7 +1437,14 @@ fn invocation_count_increments_in_shortcode() { fn basic_external_links_unchanged() { let permalinks_ctx = HashMap::new(); let config = Config::default(); - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("", &context).unwrap(); assert_eq!(res.body, "

https://google.com

\n"); } @@ -1103,7 +1454,14 @@ fn can_set_target_blank_for_external_link() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.external_links_target_blank = true; - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("", &context).unwrap(); assert_eq!(res.body, "

https://google.com

\n"); } @@ -1113,7 +1471,14 @@ fn can_set_nofollow_for_external_link() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.external_links_no_follow = true; - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); // Testing href escaping while we're there let res = render_content("", &context).unwrap(); assert_eq!( @@ -1127,7 +1492,14 @@ fn can_set_noreferrer_for_external_link() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.external_links_no_referrer = true; - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("", &context).unwrap(); assert_eq!( res.body, @@ -1142,7 +1514,14 @@ fn can_set_all_options_for_external_link() { config.markdown.external_links_target_blank = true; config.markdown.external_links_no_follow = true; config.markdown.external_links_no_referrer = true; - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content("", &context).unwrap(); assert_eq!(res.body, "

https://google.com

\n"); } @@ -1152,7 +1531,14 @@ fn can_use_smart_punctuation() { let permalinks_ctx = HashMap::new(); let mut config = Config::default(); config.markdown.smart_punctuation = true; - let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let context = RenderContext::new( + &ZOLA_TERA, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); let res = render_content(r#"This -- is "it"..."#, &context).unwrap(); assert_eq!(res.body, "

This – is “it”…

\n"); } diff --git a/components/site/src/feed.rs b/components/site/src/feed.rs index 13c45cdb..f999656a 100644 --- a/components/site/src/feed.rs +++ b/components/site/src/feed.rs @@ -59,7 +59,7 @@ pub fn render_feed( pages.iter().take(num_entries).map(|x| x.to_serialized_basic(&library)).collect::>(); context.insert("pages", &p); - context.insert("config", &site.config); + context.insert("config", &site.config.serialize(lang)); context.insert("lang", lang); let feed_filename = &site.config.feed_filename; diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 42ebd687..a69bf39b 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -760,7 +760,7 @@ impl Site { pub fn render_404(&self) -> Result<()> { ensure_directory_exists(&self.output_path)?; let mut context = Context::new(); - context.insert("config", &self.config); + context.insert("config", &self.config.serialize(&self.config.default_language)); context.insert("lang", &self.config.default_language); let output = render_template("404.html", &self.tera, context, &self.config.theme)?; let content = self.inject_livereload(output); @@ -772,7 +772,7 @@ impl Site { pub fn render_robots(&self) -> Result<()> { ensure_directory_exists(&self.output_path)?; let mut context = Context::new(); - context.insert("config", &self.config); + context.insert("config", &self.config.serialize(&self.config.default_language)); let content = render_template("robots.txt", &self.tera, context, &self.config.theme)?; self.write_content(&[], "robots.txt", content, false)?; Ok(()) diff --git a/src/cmd/init.rs b/src/cmd/init.rs index 5ce05f17..1bc76922 100644 --- a/src/cmd/init.rs +++ b/src/cmd/init.rs @@ -256,9 +256,9 @@ mod tests { } create_dir(&dir).expect("Could not create test directory"); if cfg!(target_os = "windows") { - let stripped_path = strip_unc(&canonicalize(Path::new(&dir)).unwrap()); - assert!(same_file::is_same_file(Path::new(&stripped_path),&dir).unwrap()); - assert!(!stripped_path.starts_with(LOCAL_UNC),"The path was not stripped."); + let stripped_path = strip_unc(&canonicalize(Path::new(&dir)).unwrap()); + assert!(same_file::is_same_file(Path::new(&stripped_path), &dir).unwrap()); + assert!(!stripped_path.starts_with(LOCAL_UNC), "The path was not stripped."); } else { assert_eq!( strip_unc(&canonicalize(Path::new(&dir)).unwrap()), @@ -281,9 +281,9 @@ mod tests { remove_dir_all(&dir).expect("Could not free test directory"); } create_dir(&dir).expect("Could not create test directory"); - - let canonicalized_path = canonicalize(Path::new(&dir)).unwrap(); - assert!(same_file::is_same_file(Path::new(&canonicalized_path),&dir).unwrap()); + + let canonicalized_path = canonicalize(Path::new(&dir)).unwrap(); + assert!(same_file::is_same_file(Path::new(&canonicalized_path), &dir).unwrap()); assert!(canonicalized_path.to_str().unwrap().starts_with(LOCAL_UNC)); remove_dir_all(&dir).unwrap(); From 32433e7d6cfd4e13b3f7c6f1c38b10b984cb8578 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 13 Mar 2021 21:27:17 +0100 Subject: [PATCH 046/113] Lang aware search indices settings --- components/config/src/config/languages.rs | 6 ++- components/config/src/config/mod.rs | 3 +- components/config/src/lib.rs | 4 +- components/search/src/lib.rs | 56 +++++++++++++---------- 4 files changed, 42 insertions(+), 27 deletions(-) diff --git a/components/config/src/config/languages.rs b/components/config/src/config/languages.rs index a40a916b..5defeab9 100644 --- a/components/config/src/config/languages.rs +++ b/components/config/src/config/languages.rs @@ -4,6 +4,7 @@ use errors::{bail, Result}; use serde_derive::{Deserialize, Serialize}; use unic_langid::LanguageIdentifier; +use crate::config::search; use crate::config::taxonomies; #[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)] @@ -15,9 +16,11 @@ pub struct LanguageOptions { pub description: Option, /// Whether to generate a feed for that language, defaults to `false` pub generate_feed: bool, + pub taxonomies: Vec, /// Whether to generate search index for that language, defaults to `false` pub build_search_index: bool, - pub taxonomies: Vec, + /// The search config, telling what to include in the search index for that language + pub search: search::Search, } impl Default for LanguageOptions { @@ -28,6 +31,7 @@ impl Default for LanguageOptions { generate_feed: false, build_search_index: false, taxonomies: Vec::new(), + search: search::Search::default(), } } } diff --git a/components/config/src/config/mod.rs b/components/config/src/config/mod.rs index cbc6511f..863f89ca 100644 --- a/components/config/src/config/mod.rs +++ b/components/config/src/config/mod.rs @@ -205,6 +205,7 @@ impl Config { generate_feed: self.generate_feed, build_search_index: self.build_search_index, taxonomies: self.taxonomies.clone(), + search: self.search.clone(), }, ); } @@ -290,7 +291,7 @@ impl Config { translations: &self.translations, generate_feed: options.generate_feed, taxonomies: &options.taxonomies, - build_search_index: self.build_search_index, + build_search_index: options.build_search_index, extra: &self.extra, } } diff --git a/components/config/src/lib.rs b/components/config/src/lib.rs index 3b5ff501..4f85fde2 100644 --- a/components/config/src/lib.rs +++ b/components/config/src/lib.rs @@ -3,8 +3,8 @@ pub mod highlighting; mod theme; pub use crate::config::{ - languages::LanguageOptions, link_checker::LinkChecker, slugify::Slugify, taxonomies::Taxonomy, - Config, + languages::LanguageOptions, link_checker::LinkChecker, search::Search, slugify::Slugify, + taxonomies::Taxonomy, Config, }; use errors::Result; diff --git a/components/search/src/lib.rs b/components/search/src/lib.rs index c8314e5a..4daaa761 100644 --- a/components/search/src/lib.rs +++ b/components/search/src/lib.rs @@ -3,7 +3,7 @@ use std::collections::{HashMap, HashSet}; use elasticlunr::{Index, Language}; use lazy_static::lazy_static; -use config::Config; +use config::{Config, Search}; use errors::{bail, Result}; use library::{Library, Section}; @@ -26,17 +26,17 @@ lazy_static! { }; } -fn build_fields(config: &Config) -> Vec { +fn build_fields(search_config: &Search) -> Vec { let mut fields = vec![]; - if config.search.include_title { + if search_config.include_title { fields.push("title".to_owned()); } - if config.search.include_description { + if search_config.include_description { fields.push("description".to_owned()); } - if config.search.include_content { + if search_config.include_content { fields.push("body".to_owned()); } @@ -44,24 +44,24 @@ fn build_fields(config: &Config) -> Vec { } fn fill_index( - config: &Config, + search_config: &Search, title: &Option, description: &Option, content: &str, ) -> Vec { let mut row = vec![]; - if config.search.include_title { + if search_config.include_title { row.push(title.clone().unwrap_or_default()); } - if config.search.include_description { + if search_config.include_description { row.push(description.clone().unwrap_or_default()); } - if config.search.include_content { + if search_config.include_content { let body = AMMONIA.clean(&content).to_string(); - if let Some(truncate_len) = config.search.truncate_content_length { + if let Some(truncate_len) = search_config.truncate_content_length { // Not great for unicode // TODO: fix it like the truncate in Tera match body.char_indices().nth(truncate_len) { @@ -87,19 +87,24 @@ pub fn build_index(lang: &str, library: &Library, config: &Config) -> Result Date: Sun, 21 Mar 2021 18:15:38 +0100 Subject: [PATCH 047/113] Nest translations in languages options --- CHANGELOG.md | 2 + Cargo.lock | 376 ++++++++++----------- components/config/src/config/languages.rs | 8 +- components/config/src/config/mod.rs | 52 ++- components/templates/src/global_fns/mod.rs | 13 +- 5 files changed, 218 insertions(+), 233 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5b75a58b..dac812d3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,8 @@ 1. taxonomies don't have a `lang` anymore in the config, you need to declare them in their respective language section 2. the `config` variable in templates has been changed and is now a stripped down language aware version of the previous `config` object + 3. Search settings are now language specific + 4. Translations are now nested in the languages table ### Other diff --git a/Cargo.lock b/Cargo.lock index 67fa6d4a..245db215 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,9 +2,9 @@ # It is not intended for manual editing. [[package]] name = "adler" -version = "0.2.3" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee2a4ec343196209d6594e19543ae87a39f96d5534d7174822a3ad825dd6ed7e" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "adler32" @@ -29,9 +29,9 @@ dependencies = [ [[package]] name = "ammonia" -version = "3.1.0" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89eac85170f4b3fb3dc5e442c1cfb036cb8eecf9dbbd431a161ffad15d90ea3b" +checksum = "1ee7d6eb157f337c5cedc95ddf17f0cbc36d36eb7763c8e0d1c1aeb3722f6279" dependencies = [ "html5ever", "lazy_static", @@ -122,7 +122,7 @@ dependencies = [ "block-padding", "byte-tools", "byteorder", - "generic-array 0.12.3", + "generic-array 0.12.4", ] [[package]] @@ -145,9 +145,9 @@ dependencies = [ [[package]] name = "bstr" -version = "0.2.14" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "473fc6b38233f9af7baa94fb5852dca389e3d95b8e21c8e3719301462c5d9faf" +checksum = "a40b47ad93e1a5404e6c18dec46b628214fee441c70f4ab5d6942142cc268a3d" dependencies = [ "lazy_static", "memchr", @@ -157,9 +157,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.6.0" +version = "3.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "099e596ef14349721d9016f6b80dd3419ea1bf289ab9b44df8e4dfd3a005d5d9" +checksum = "63396b8a4b9de3f4fdfb320ab6080762242f66a8ef174c49d8e19b674db4cdbe" [[package]] name = "byte-tools" @@ -181,15 +181,15 @@ checksum = "72feb31ffc86498dacdbd0fcebb56138e7177a8cc5cea4516031d15ae85a742e" [[package]] name = "bytemuck" -version = "1.5.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a4bad0c5981acc24bc09e532f35160f952e35422603f0563cd7a73c2c2e65a0" +checksum = "bed57e2090563b83ba8f83366628ce535a7584c9afa4c9fc0612a03925c6df58" [[package]] name = "byteorder" -version = "1.4.2" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae44d1a3d5a19df61dd0c8beb138458ac2a53a7ac09eba97d55592540004306b" +checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" [[package]] name = "bytes" @@ -209,9 +209,9 @@ checksum = "b700ce4376041dcd0a327fd0097c41095743c4c8af8887265942faf1100bd040" [[package]] name = "cc" -version = "1.0.66" +version = "1.0.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c0496836a84f8d0495758516b8621a622beb77c0fed418570e50764093ced48" +checksum = "e3c69b077ad434294d3ce9f1f6143a2a4b89a8a2d54ef813d85003a4fd1137fd" dependencies = [ "jobserver", ] @@ -309,12 +309,6 @@ dependencies = [ "utils", ] -[[package]] -name = "const_fn" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28b9d6de7f49e22cf97ad17fc4036ece69300032f45f78f30b4a4482cdc3f4a6" - [[package]] name = "cpuid-bool" version = "0.1.2" @@ -353,12 +347,11 @@ dependencies = [ [[package]] name = "crossbeam-epoch" -version = "0.9.1" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1aaa739f95311c2c7887a76863f500026092fb1dce0161dab577e559ef3569d" +checksum = "2584f639eb95fea8c798496315b297cf81b9b58b6d30ab066a75455333cf4b12" dependencies = [ "cfg-if 1.0.0", - "const_fn", "crossbeam-utils", "lazy_static", "memoffset", @@ -367,9 +360,9 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02d96d1e189ef58269ebe5b97953da3274d83a93af647c2ddd6f9dab28cedb8d" +checksum = "e7e9d99fa91428effe99c5c6d4634cdeba32b8cf784fc428a2a687f61a952c49" dependencies = [ "autocfg", "cfg-if 1.0.0", @@ -378,9 +371,9 @@ dependencies = [ [[package]] name = "csv" -version = "1.1.5" +version = "1.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9d58633299b24b515ac72a3f869f8b91306a3cec616a602843a383acd6f9e97" +checksum = "22813a6dc45b335f9bade10bf7271dc477e81113e89eb251a0bc2a8a81c536e1" dependencies = [ "bstr", "csv-core", @@ -400,9 +393,9 @@ dependencies = [ [[package]] name = "ctrlc" -version = "3.1.7" +version = "3.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b57a92e9749e10f25a171adcebfafe72991d45e7ec2dcb853e8f83d9dafaeb08" +checksum = "c15b8ec3b5755a188c141c1f6a98e76de31b936209bf066b647979e2a84764a9" dependencies = [ "nix", "winapi 0.3.9", @@ -436,7 +429,7 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5" dependencies = [ - "generic-array 0.12.3", + "generic-array 0.12.4", ] [[package]] @@ -468,9 +461,9 @@ checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" [[package]] name = "elasticlunr-rs" -version = "2.3.9" +version = "2.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35622eb004c8f0c5e7e2032815f3314a93df0db30a1ce5c94e62c1ecc81e22b9" +checksum = "2956be6157a27c2155b59ea773612cb200ee239b9a510a622cc7274156a38b3e" dependencies = [ "jieba-rs", "lazy_static", @@ -550,9 +543,9 @@ checksum = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569" [[package]] name = "encoding_rs" -version = "0.8.26" +version = "0.8.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "801bbab217d7f79c0062f4f7205b5d4427c6d1a7bd7aafdd1475f7c59d62b283" +checksum = "80df024fbc5ac80f87dfef0d9f5209a252f2a497f7f42944cff24d8253cac065" dependencies = [ "cfg-if 1.0.0", ] @@ -606,7 +599,7 @@ dependencies = [ "cfg-if 1.0.0", "crc32fast", "libc", - "miniz_oxide 0.4.3", + "miniz_oxide 0.4.4", ] [[package]] @@ -617,9 +610,9 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "form_urlencoded" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ece68d15c92e84fa4f19d3780f1294e5ca82a78a6d515f1efaabcc144688be00" +checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191" dependencies = [ "matches", "percent-encoding", @@ -689,30 +682,30 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.12" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2d31b7ec7efab6eefc7c57233bb10b847986139d88cc2f5a02a1ae6871a1846" +checksum = "8c2dd2df839b57db9ab69c2c9d8f3e8c81984781937fe2807dc6dcf3b2ad2939" dependencies = [ "futures-core", ] [[package]] name = "futures-core" -version = "0.3.12" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79e5145dde8da7d1b3892dad07a9c98fc04bc39892b1ecc9692cf53e2b780a65" +checksum = "15496a72fabf0e62bdc3df11a59a3787429221dd0710ba8ef163d6f7a9112c94" [[package]] name = "futures-io" -version = "0.3.12" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28be053525281ad8259d47e4de5de657b25e7bac113458555bb4b70bc6870500" +checksum = "d71c2c65c57704c32f5241c1223167c2c3294fd34ac020c807ddbe6db287ba59" [[package]] name = "futures-macro" -version = "0.3.12" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c287d25add322d9f9abdcdc5927ca398917996600182178774032e9f8258fedd" +checksum = "ea405816a5139fb39af82c2beb921d52143f556038378d6db21183a5c37fbfb7" dependencies = [ "proc-macro-hack", "proc-macro2", @@ -722,24 +715,21 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.12" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caf5c69029bda2e743fddd0582d1083951d65cc9539aebf8812f36c3491342d6" +checksum = "85754d98985841b7d4f5e8e6fbfa4a4ac847916893ec511a2917ccd8525b8bb3" [[package]] name = "futures-task" -version = "0.3.12" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13de07eb8ea81ae445aca7b69f5f7bf15d7bf4912d8ca37d6645c77ae8a58d86" -dependencies = [ - "once_cell", -] +checksum = "fa189ef211c15ee602667a6fcfe1c1fd9e07d42250d2156382820fba33c9df80" [[package]] name = "futures-util" -version = "0.3.12" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "632a8cd0f2a4b3fdea1657f08bde063848c3bd00f9bbf6e256b8be78802e624b" +checksum = "1812c7ab8aedf8d6f2701a43e1243acdbcc2b36ab26e2ad421eb99ac963d96d1" dependencies = [ "futures-core", "futures-io", @@ -755,9 +745,9 @@ dependencies = [ [[package]] name = "generic-array" -version = "0.12.3" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec" +checksum = "ffdf9f34f1447443d37393cc6c2b8313aebddcd96906caf34e54c68d8e57d7bd" dependencies = [ "typenum", ] @@ -846,9 +836,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b67e66362108efccd8ac053abafc8b7a8d86a37e6e48fc4f6f7485eb5e9e6a5" +checksum = "d832b01df74254fe364568d6ddc294443f61cbec82816b60904303af87efae78" dependencies = [ "bytes 1.0.1", "fnv", @@ -861,7 +851,6 @@ dependencies = [ "tokio", "tokio-util", "tracing", - "tracing-futures", ] [[package]] @@ -925,12 +914,13 @@ dependencies = [ [[package]] name = "http-body" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2861bd27ee074e5ee891e8b539837a9430012e249d7f0ca2d795650f579c1994" +checksum = "5dfb77c123b4e2f72a2069aeae0b4b4949cc7e966df277813fc16347e7549737" dependencies = [ "bytes 1.0.1", "http", + "pin-project-lite", ] [[package]] @@ -953,9 +943,9 @@ checksum = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" [[package]] name = "hyper" -version = "0.14.2" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12219dc884514cb4a6a03737f4413c0e01c23a1b059b0156004b23f1e19dccbe" +checksum = "e8e946c2b1349055e0b72ae281b238baf1a3ea7307c7e9f9d64673bdd9c26ac7" dependencies = [ "bytes 1.0.1", "futures-channel", @@ -967,7 +957,7 @@ dependencies = [ "httparse", "httpdate", "itoa", - "pin-project 1.0.4", + "pin-project", "socket2", "tokio", "tower-service", @@ -992,9 +982,9 @@ dependencies = [ [[package]] name = "idna" -version = "0.2.0" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02e2673c30ee86b5b96a9cb52ad15718aa1f966f5ab9ad54a8b95d5ca33120a9" +checksum = "89829a5d69c23d348314a7ac337fe39173b61149a9864deabd260983aed48c21" dependencies = [ "matches", "unicode-bidi", @@ -1021,9 +1011,9 @@ dependencies = [ [[package]] name = "image" -version = "0.23.13" +version = "0.23.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "293f07a1875fa7e9c5897b51aa68b2d8ed8271b87e1a44cb64b9c3d98aabbc0d" +checksum = "24ffcb7e7244a9bf19d35bf2883b9c080c4ced3c07a9895572178cdb8f13f6a1" dependencies = [ "bytemuck", "byteorder", @@ -1054,9 +1044,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.6.1" +version = "1.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb1fa934250de4de8aef298d81c729a7d33d8c239daa3a7575e6b92bfc7313b" +checksum = "824845a0bf897a9042383849b02c1bc219c2383772efcd5c6f9766fa4b81aef3" dependencies = [ "autocfg", "hashbrown 0.9.1", @@ -1137,9 +1127,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.47" +version = "0.3.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cfb73131c35423a367daf8cbd24100af0d077668c8c2943f0e7dd775fef0f65" +checksum = "dc15e39392125075f60c95ba416f5381ff6c3a948ff02ab12464715adf56c821" dependencies = [ "wasm-bindgen", ] @@ -1174,13 +1164,13 @@ checksum = "73a004f877f468548d8d0ac4977456a249d8fabbdb8416c36db163dfc8f2e8ca" [[package]] name = "lexical-core" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db65c6da02e61f55dae90a0ae427b2a5f6b3e8db09f58d10efab23af92592616" +checksum = "21f866863575d0e1d654fbeeabdc927292fdf862873dc3c96c6f753357e13374" dependencies = [ "arrayvec", "bitflags", - "cfg-if 0.1.10", + "cfg-if 1.0.0", "ryu", "static_assertions", ] @@ -1196,9 +1186,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.85" +version = "0.2.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ccac4b00700875e6a07c6cde370d44d32fa01c5a65cdd2fca6858c479d28bb3" +checksum = "ba4aede83fc3617411dc6993bc8c70919750c1c257c6ca6a502aed6e0e2394ae" [[package]] name = "library" @@ -1411,9 +1401,9 @@ dependencies = [ [[package]] name = "minify-html" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7af79ea8ac719a1cc299787058518a12018700af7ec7be4b789930526e1a1ab" +checksum = "36da88423dea166b1506fb795e61294f47bbb09ceaa619a536a8d237bb2c296d" dependencies = [ "aho-corasick", "lazy_static", @@ -1431,9 +1421,9 @@ dependencies = [ [[package]] name = "miniz_oxide" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f2d26ec3309788e423cfbf68ad1800f061638098d76a83681af979dc4eda19d" +checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b" dependencies = [ "adler", "autocfg", @@ -1460,9 +1450,9 @@ dependencies = [ [[package]] name = "mio" -version = "0.7.7" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e50ae3f04d169fcc9bde0b547d1c205219b7157e07ded9c5aff03e0637cb3ed7" +checksum = "2182a122f3b7f3f5329cb1972cee089ba2459a0a80a56935e6e674f096f8d839" dependencies = [ "libc", "log", @@ -1542,13 +1532,13 @@ checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54" [[package]] name = "nix" -version = "0.18.0" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83450fe6a6142ddd95fb064b746083fc4ef1705fe81f64a64e1d4b39f54a1055" +checksum = "fa9b4819da1bc61c0ea48b63b7bc8604064dd43013e7cc325df098d49cd7c18a" dependencies = [ "bitflags", "cc", - "cfg-if 0.1.10", + "cfg-if 1.0.0", "libc", ] @@ -1699,9 +1689,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.5.2" +version = "1.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13bd41f508810a131401606d54ac32a467c97172d74ba7662562ebba5ad07fa0" +checksum = "af8b08b04175473088b46763e51ee54da5f9a164bc162f615b91bc179dbf15a3" [[package]] name = "onig" @@ -1739,10 +1729,11 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] name = "open" -version = "1.4.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c283bf0114efea9e42f1a60edea9859e8c47528eae09d01df4b29c1e489cc48" +checksum = "a7e9f1bdf15cd1f5a00cc9002a733a6ee6d0ff562491852d59652471c4a389f7" dependencies = [ + "which", "winapi 0.3.9", ] @@ -1850,38 +1841,18 @@ dependencies = [ [[package]] name = "pin-project" -version = "0.4.27" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ffbc8e94b38ea3d2d8ba92aea2983b503cd75d0888d75b86bb37970b5698e15" +checksum = "96fa8ebb90271c4477f144354485b8068bd8f6b78b428b01ba892ca26caf0b63" dependencies = [ - "pin-project-internal 0.4.27", -] - -[[package]] -name = "pin-project" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95b70b68509f17aa2857863b6fa00bf21fc93674c7a8893de2f469f6aa7ca2f2" -dependencies = [ - "pin-project-internal 1.0.4", + "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "0.4.27" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65ad2ae56b6abe3a1ee25f15ee605bacadb9a764edaba9c2bf4103800d4a1895" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "pin-project-internal" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caa25a6393f22ce819b0f50e0be89287292fda8d425be38ee0ca14c4931d9e71" +checksum = "758669ae3558c6f74bd2a18b41f7ac0b5a195aea6639d6a9b5e5d1ad5ba24c0b" dependencies = [ "proc-macro2", "quote", @@ -1890,9 +1861,9 @@ dependencies = [ [[package]] name = "pin-project-lite" -version = "0.2.4" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "439697af366c49a6d0a010c56a0d97685bc140ce0d377b13a2ea2aa42d64a827" +checksum = "dc0e1f259c92177c30a4c9d177246edd0a3568b25756a977d0632cf8fa37e905" [[package]] name = "pin-utils" @@ -2008,9 +1979,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quote" -version = "1.0.8" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "991431c3519a3f36861882da93630ce66b52918dcf1b8e2fd66b397fc96f28df" +checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7" dependencies = [ "proc-macro2", ] @@ -2037,7 +2008,7 @@ checksum = "0ef9e7e66b4468674bfcb0c81af8b7fa0bb154fa9f28eb840da5c447baeb8d7e" dependencies = [ "libc", "rand_chacha 0.3.0", - "rand_core 0.6.1", + "rand_core 0.6.2", "rand_hc 0.3.0", ] @@ -2058,7 +2029,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e12735cf05c9e10bf21534da50a147b924d555dc7a547c42e6bb2d5b6017ae0d" dependencies = [ "ppv-lite86", - "rand_core 0.6.1", + "rand_core 0.6.2", ] [[package]] @@ -2072,9 +2043,9 @@ dependencies = [ [[package]] name = "rand_core" -version = "0.6.1" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c026d7df8b298d90ccbbc5190bd04d85e159eaf5576caeacf8741da93ccbd2e5" +checksum = "34cf66eb183df1c5876e2dcf6b13d57340741e8dc255b48e40a26de954d06ae7" dependencies = [ "getrandom 0.2.2", ] @@ -2094,7 +2065,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73" dependencies = [ - "rand_core 0.6.1", + "rand_core 0.6.2", ] [[package]] @@ -2133,23 +2104,22 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05ec8ca9416c5ea37062b502703cd7fcb207736bc294f6e0cf367ac6fc234570" +checksum = "94341e4e44e24f6b591b59e47a8a027df12e008d73fd5672dbea9cc22f4507d9" dependencies = [ "bitflags", ] [[package]] name = "regex" -version = "1.4.3" +version = "1.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9251239e129e16308e70d853559389de218ac275b515068abc96829d05b948a" +checksum = "957056ecddbeba1b26965114e191d2e8589ce74db242b6ea25fc4062427a5c19" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.6.22", - "thread_local", + "regex-syntax 0.6.23", ] [[package]] @@ -2169,9 +2139,9 @@ checksum = "8e931c58b93d86f080c734bfd2bce7dd0079ae2331235818133c8be7f422e20e" [[package]] name = "regex-syntax" -version = "0.6.22" +version = "0.6.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5eb417147ba9860a96cfe72a0b93bf88fee1744b5636ec99ab20c1aa9376581" +checksum = "24d5f089152e60f62d28b835fbff2cd2e8dc0baf1ac13343bef92ab7eed84548" [[package]] name = "relative-path" @@ -2212,9 +2182,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.11.0" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd281b1030aa675fb90aa994d07187645bb3c8fc756ca766e7c3070b439de9de" +checksum = "bf12057f289428dbf5c591c74bf10392e4a8003f993405a902f20117019022d4" dependencies = [ "base64", "bytes 1.0.1", @@ -2371,18 +2341,18 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.123" +version = "1.0.124" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92d5161132722baa40d802cc70b15262b98258453e85e5d1d365c757c73869ae" +checksum = "bd761ff957cb2a45fbb9ab3da6512de9de55872866160b23c25f1a841e99d29f" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.123" +version = "1.0.124" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9391c295d64fc0abb2c556bad848f33cb8296276b1ad2677d1ae1ace4f258f31" +checksum = "1800f7693e94e186f5e25a28291ae1570da908aff7d97a095dec1e56ff99069b" dependencies = [ "proc-macro2", "quote", @@ -2391,9 +2361,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.61" +version = "1.0.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fceb2595057b6891a4ee808f70054bd2d12f0e97f1cbb78689b59f676df325a" +checksum = "799e97dc9fdae36a5c8b8f2cae9ce2ee9fdce2058c57a93e6099d919fd982f79" dependencies = [ "indexmap", "itoa", @@ -2415,9 +2385,9 @@ dependencies = [ [[package]] name = "serde_yaml" -version = "0.8.16" +version = "0.8.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdd2af560da3c1fdc02cb80965289254fc35dff869810061e2d8290ee48848ae" +checksum = "15654ed4ab61726bf918a39cb8d98a2e2995b002387807fa6ba58fdf7f59bb23" dependencies = [ "dtoa", "linked-hash-map", @@ -2452,9 +2422,9 @@ dependencies = [ [[package]] name = "siphasher" -version = "0.3.3" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa8f3741c7372e75519bd9346068370c9cdaabcc1f9599cbcf2a2719352286b7" +checksum = "cbce6d4507c7e4a3962091436e56e95290cb71fa302d0d270e32130b75fbff27" [[package]] name = "site" @@ -2596,9 +2566,9 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.60" +version = "1.0.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c700597eca8a5a762beb35753ef6b94df201c81cca676604f547495a0d7f0081" +checksum = "3fd9d1e9976102a03c542daa2eff1b43f9d72306342f3f8b3ed5fb8908195d6f" dependencies = [ "proc-macro2", "quote", @@ -2619,7 +2589,7 @@ dependencies = [ "lazycell", "onig", "plist", - "regex-syntax 0.6.22", + "regex-syntax 0.6.23", "serde", "serde_derive", "serde_json", @@ -2679,9 +2649,9 @@ dependencies = [ [[package]] name = "tera" -version = "1.6.1" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac6ab7eacf40937241959d540670f06209c38ceadb62116999db4a950fbf8dc" +checksum = "5cb278a72e426f291faf182cb0e0cb7d20241e8e9881046724ac874a83c62346" dependencies = [ "chrono", "chrono-tz", @@ -2731,10 +2701,30 @@ dependencies = [ ] [[package]] -name = "thread_local" -version = "1.1.2" +name = "thiserror" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8208a331e1cb318dd5bd76951d2b8fc48ca38a69f5f4e4af1b6a9f8c6236915" +checksum = "e0f4a65597094d4483ddaed134f409b2cb7c1beccf25201a9f73c719254fa98e" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7765189610d8241a44529806d6fd1f2e0a08734313a35d5b3a556f92b381f3c0" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "thread_local" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8018d24e04c95ac8790716a5987d0fec4f8b27249ffa0f7d33f1369bdfb88cbd" dependencies = [ "once_cell", ] @@ -2746,7 +2736,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a53f4706d65497df0c4349241deddf35f84cee19c87ed86ea8ca590f4464437" dependencies = [ "jpeg-decoder", - "miniz_oxide 0.4.3", + "miniz_oxide 0.4.4", "weezl", ] @@ -2783,15 +2773,15 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.1.1" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6714d663090b6b0acb0fa85841c6d66233d150cdb2602c8f9b8abb03370beb3f" +checksum = "134af885d758d645f0f0505c9a8b3f9bf8a348fd822e112ab5248138348f1722" dependencies = [ "autocfg", "bytes 1.0.1", "libc", "memchr", - "mio 0.7.7", + "mio 0.7.10", "num_cpus", "pin-project-lite", ] @@ -2809,9 +2799,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.6.3" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebb7cb2f00c5ae8df755b252306272cd1790d39728363936e01827e11f0b017b" +checksum = "5143d049e85af7fbc36f5454d990e62c2df705b3589f123b71f441b6b59f443f" dependencies = [ "bytes 1.0.1", "futures-core", @@ -2838,9 +2828,9 @@ checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6" [[package]] name = "tracing" -version = "0.1.22" +version = "0.1.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f47026cdc4080c07e49b37087de021820269d996f581aac150ef9e5583eefe3" +checksum = "01ebdc2bb4498ab1ab5f5b73c5803825e60199229ccba0698170e3be0e7f959f" dependencies = [ "cfg-if 1.0.0", "pin-project-lite", @@ -2856,16 +2846,6 @@ dependencies = [ "lazy_static", ] -[[package]] -name = "tracing-futures" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab7bb6f14721aa00656086e9335d363c5c8747bae02ebe32ea2c7dece5689b4c" -dependencies = [ - "pin-project 0.4.27", - "tracing", -] - [[package]] name = "try-lock" version = "0.2.3" @@ -2874,9 +2854,9 @@ checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" [[package]] name = "typenum" -version = "1.12.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33" +checksum = "879f6906492a7cd215bfa4cf595b600146ccfac0c79bcbd1f3000162af5e8b06" [[package]] name = "ucd-trie" @@ -2972,9 +2952,9 @@ dependencies = [ [[package]] name = "unicode-normalization" -version = "0.1.16" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a13e63ab62dbe32aeee58d1c5408d35c36c392bba5d9d3142287219721afe606" +checksum = "07fbfce1c8a97d547e8b5334978438d9d6ec8c20e38f56d4a4374d181493eaef" dependencies = [ "tinyvec", ] @@ -3005,9 +2985,9 @@ checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" [[package]] name = "url" -version = "2.2.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5909f2b0817350449ed73e8bcd81c8c3c8d9a7a5d8acba4b27db277f1868976e" +checksum = "9ccd964113622c8e9322cfac19eb1004a07e636c545f325da085d5cdde6f1f8b" dependencies = [ "form_urlencoded", "idna", @@ -3053,9 +3033,9 @@ checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" [[package]] name = "version_check" -version = "0.9.2" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed" +checksum = "5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe" [[package]] name = "walkdir" @@ -3092,9 +3072,9 @@ checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" [[package]] name = "wasm-bindgen" -version = "0.2.70" +version = "0.2.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55c0f7123de74f0dab9b7d00fd614e7b19349cd1e2f5252bbe9b1754b59433be" +checksum = "8fe8f61dba8e5d645a4d8132dc7a0a66861ed5e1045d2c0ed940fab33bac0fbe" dependencies = [ "cfg-if 1.0.0", "serde", @@ -3104,9 +3084,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.70" +version = "0.2.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bc45447f0d4573f3d65720f636bbcc3dd6ce920ed704670118650bcd47764c7" +checksum = "046ceba58ff062da072c7cb4ba5b22a37f00a302483f7e2a6cdc18fedbdc1fd3" dependencies = [ "bumpalo", "lazy_static", @@ -3119,9 +3099,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.20" +version = "0.4.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3de431a2910c86679c34283a33f66f4e4abd7e0aec27b6669060148872aadf94" +checksum = "73157efb9af26fb564bb59a009afd1c7c334a44db171d280690d0c3faaec3468" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -3131,9 +3111,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.70" +version = "0.2.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b8853882eef39593ad4174dd26fc9865a64e84026d223f63bb2c42affcbba2c" +checksum = "0ef9aa01d36cda046f797c57959ff5f3c615c9cc63997a8d545831ec7976819b" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -3141,9 +3121,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.70" +version = "0.2.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4133b5e7f2a531fa413b3a1695e925038a05a71cf67e87dafa295cb645a01385" +checksum = "96eb45c1b2ee33545a813a92dbb53856418bf7eb54ab34f7f7ff1448a5b3735d" dependencies = [ "proc-macro2", "quote", @@ -3154,15 +3134,15 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.70" +version = "0.2.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd4945e4943ae02d15c13962b38a5b1e81eadd4b71214eee75af64a4d6a4fd64" +checksum = "b7148f4696fb4960a346eaa60bbfb42a1ac4ebba21f750f75fc1375b098d5ffa" [[package]] name = "web-sys" -version = "0.3.47" +version = "0.3.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c40dc691fc48003eba817c38da7113c15698142da971298003cac3ef175680b3" +checksum = "59fe19d70f5dacc03f6e46777213facae5ac3801575d56ca6cbd4c93dcd12310" dependencies = [ "js-sys", "wasm-bindgen", @@ -3203,6 +3183,16 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a32b378380f4e9869b22f0b5177c68a5519f03b3454fde0b291455ddbae266c" +[[package]] +name = "which" +version = "4.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87c14ef7e1b8b8ecfc75d5eca37949410046e66f15d185c01d70824f1f8111ef" +dependencies = [ + "libc", + "thiserror", +] + [[package]] name = "winapi" version = "0.2.8" diff --git a/components/config/src/config/languages.rs b/components/config/src/config/languages.rs index 5defeab9..b67ceaca 100644 --- a/components/config/src/config/languages.rs +++ b/components/config/src/config/languages.rs @@ -21,6 +21,11 @@ pub struct LanguageOptions { pub build_search_index: bool, /// The search config, telling what to include in the search index for that language pub search: search::Search, + /// A toml crate `Table` with String key representing term and value + /// another `String` representing its translation. + /// + /// Use `get_translation()` method for translating key into different languages. + pub translations: HashMap, } impl Default for LanguageOptions { @@ -32,12 +37,11 @@ impl Default for LanguageOptions { build_search_index: false, taxonomies: Vec::new(), search: search::Search::default(), + translations: HashMap::new(), } } } -pub type TranslateTerm = HashMap; - /// We want to ensure the language codes are valid ones pub fn validate_code(code: &str) -> Result<()> { if LanguageIdentifier::from_bytes(code.as_bytes()).is_err() { diff --git a/components/config/src/config/mod.rs b/components/config/src/config/mod.rs index 863f89ca..84893f0e 100644 --- a/components/config/src/config/mod.rs +++ b/components/config/src/config/mod.rs @@ -44,15 +44,8 @@ pub struct Config { pub default_language: String, /// The list of supported languages outside of the default one pub languages: HashMap, - - /// Languages list and translated strings - /// - /// The `String` key of `HashMap` is a language name, the value should be toml crate `Table` - /// with String key representing term and value another `String` representing its translation. - /// - /// The attribute is intentionally not public, use `get_translation()` method for translating - /// key into different language. - translations: HashMap, + /// The translations strings for the default language + translations: HashMap, /// Whether to generate a feed. Defaults to false. pub generate_feed: bool, @@ -104,7 +97,6 @@ pub struct SerializedConfig<'a> { title: &'a Option, description: &'a Option, languages: HashMap<&'a String, &'a languages::LanguageOptions>, - translations: &'a HashMap, generate_feed: bool, taxonomies: &'a [taxonomies::Taxonomy], build_search_index: bool, @@ -206,6 +198,7 @@ impl Config { build_search_index: self.build_search_index, taxonomies: self.taxonomies.clone(), search: self.search.clone(), + translations: self.translations.clone(), }, ); } @@ -262,21 +255,21 @@ impl Config { self.markdown.highlight_code = false; } - pub fn get_translation>(&self, lang: S, key: S) -> Result { - let terms = self.translations.get(lang.as_ref()).ok_or_else(|| { - Error::msg(format!("Translation for language '{}' is missing", lang.as_ref())) - })?; - - terms - .get(key.as_ref()) - .ok_or_else(|| { - Error::msg(format!( - "Translation key '{}' for language '{}' is missing", - key.as_ref(), - lang.as_ref() - )) - }) - .map(|term| term.to_string()) + pub fn get_translation(&self, lang: &str, key: &str) -> Result { + if let Some(options) = self.languages.get(lang) { + options + .translations + .get(key) + .ok_or_else(|| { + Error::msg(format!( + "Translation key '{}' for language '{}' is missing", + key, lang + )) + }) + .map(|term| term.to_string()) + } else { + bail!("Language '{}' not found.", lang) + } } pub fn serialize(&self, lang: &str) -> SerializedConfig { @@ -288,7 +281,6 @@ impl Config { title: &options.title, description: &options.description, languages: self.languages.iter().filter(|(k, _)| k.as_str() != lang).collect(), - translations: &self.translations, generate_feed: options.generate_feed, taxonomies: &options.taxonomies, build_search_index: options.build_search_index, @@ -502,12 +494,12 @@ base_url = "https://remplace-par-ton-url.fr" default_language = "fr" [translations] -[translations.fr] title = "Un titre" -[translations.en] +[languages.en] +[languages.en.translations] title = "A title" - "#; +"#; #[test] fn can_use_present_translation() { @@ -522,7 +514,7 @@ title = "A title" let config = Config::parse(CONFIG_TRANSLATION).unwrap(); let error = config.get_translation("absent", "key").unwrap_err(); - assert_eq!("Translation for language 'absent' is missing", format!("{}", error)); + assert_eq!("Language 'absent' not found.", format!("{}", error)); } #[test] diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index b8615133..598ce118 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -39,7 +39,7 @@ impl TeraFn for Trans { let term = self .config - .get_translation(lang, key) + .get_translation(&lang, &key) .map_err(|e| Error::chain("Failed to retrieve term translation", e))?; Ok(to_value(term).unwrap()) @@ -739,16 +739,13 @@ mod tests { base_url = "https://remplace-par-ton-url.fr" default_language = "fr" -[languages] -[languages.en] - [translations] -[translations.fr] title = "Un titre" -[translations.en] -title = "A title" - "#; +[languages] +[languages.en] +[languages.en.translations] +title = "A title" "#; #[test] fn can_translate_a_string() { From 0afd31d660b24e51cd0c656b3aa2c85e5bc759d0 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 31 Mar 2021 10:43:51 +0200 Subject: [PATCH 048/113] cargo fmt --- components/library/src/content/page.rs | 6 +- components/library/src/library.rs | 2 - components/site/tests/common.rs | 77 ++++++++++++++++---------- 3 files changed, 53 insertions(+), 32 deletions(-) diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 6d8ae36d..216de4ce 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -718,7 +718,8 @@ Hello world Hello world "# .to_string(); - let res = Page::parse(Path::new("2018-10-08 - hello.md"), &content, &config, &PathBuf::new()); + let res = + Page::parse(Path::new("2018-10-08 - hello.md"), &content, &config, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); @@ -736,7 +737,8 @@ Hello world Hello world "# .to_string(); - let res = Page::parse(Path::new("2018-10-08 - hello.md"), &content, &config, &PathBuf::new()); + let res = + Page::parse(Path::new("2018-10-08 - hello.md"), &content, &config, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); diff --git a/components/library/src/library.rs b/components/library/src/library.rs index 362ca5e5..817e7e55 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -187,8 +187,6 @@ impl Library { } } ancestors.insert(section.file.path.clone(), parents); - - } for (key, page) in &mut self.pages { diff --git a/components/site/tests/common.rs b/components/site/tests/common.rs index a6858a3b..b76dce44 100644 --- a/components/site/tests/common.rs +++ b/components/site/tests/common.rs @@ -1,11 +1,11 @@ #![allow(dead_code)] -use std::env; -use std::path::{PathBuf, Path}; use std::collections::HashMap; +use std::env; +use std::path::{Path, PathBuf}; +use path_slash::PathExt; use site::Site; use tempfile::{tempdir, TempDir}; -use path_slash::PathExt; // 2 helper macros to make all the build testing more bearable #[macro_export] @@ -97,18 +97,18 @@ fn find_lang_for(entry: &Path, base_dir: &Path) -> Option<(String, Option {path_without_prefix.to_slash_lossy()} - _ => {unified_path.to_slash_lossy()} - }; + let unified_path_str = match unified_path.strip_prefix(base_dir) { + Ok(path_without_prefix) => path_without_prefix.to_slash_lossy(), + _ => unified_path.to_slash_lossy(), + }; return Some((unified_path_str, Some(lang.to_str().unwrap().into()))); } else { // No lang, return no_ext directly - let mut no_ext_string = match no_ext.strip_prefix(base_dir) { - Ok(path_without_prefix) => {path_without_prefix.to_slash_lossy()} - _ => {no_ext.to_slash_lossy()} - }; - no_ext_string.push_str(".md"); + let mut no_ext_string = match no_ext.strip_prefix(base_dir) { + Ok(path_without_prefix) => path_without_prefix.to_slash_lossy(), + _ => no_ext.to_slash_lossy(), + }; + no_ext_string.push_str(".md"); return Some((no_ext_string, None)); } } @@ -118,7 +118,11 @@ fn find_lang_for(entry: &Path, base_dir: &Path) -> Option<(String, Option HashMap> { +pub fn add_translations_from( + dir: &Path, + strip: &Path, + default: &str, +) -> HashMap> { let mut expected: HashMap> = HashMap::new(); for entry in dir.read_dir().expect("Failed to read dir") { let entry = entry.expect("Failed to read entry").path(); @@ -132,7 +136,7 @@ pub fn add_translations_from(dir: &Path, strip: &Path, default: &str) -> HashMap index.push(lang.unwrap_or(default.to_string())); } else { // rel_path is not registered yet, insert it in expected - expected.insert(unified_path, vec!(lang.unwrap_or(default.to_string()))); + expected.insert(unified_path, vec![lang.unwrap_or(default.to_string())]); } } else { // Not a markdown file, skip @@ -145,7 +149,10 @@ pub fn add_translations_from(dir: &Path, strip: &Path, default: &str) -> HashMap /// Calculate output path for Markdown files /// respecting page/section `path` fields, but not aliases (yet) /// Returns a mapping of unified Markdown paths -> translations -pub fn find_expected_translations(name: &str, default_language: &str) -> HashMap> { +pub fn find_expected_translations( + name: &str, + default_language: &str, +) -> HashMap> { let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); path.push(name); path.push("content"); @@ -181,9 +188,12 @@ impl Translations { let library = site.library.clone(); let library = library.read().unwrap(); // WORKAROUND because site.content_path is private - let unified_path = if let Some(page) = library.get_page(site.base_path.join("content").join(path)) { + let unified_path = if let Some(page) = + library.get_page(site.base_path.join("content").join(path)) + { page.file.canonical.clone() - } else if let Some(section) = library.get_section(site.base_path.join("content").join(path)) { + } else if let Some(section) = library.get_section(site.base_path.join("content").join(path)) + { section.file.canonical.clone() } else { panic!("No such page or section: {}", path); @@ -191,13 +201,17 @@ impl Translations { let translations = library.translations.get(&unified_path); if translations.is_none() { - println!("Page canonical path {} is not in library translations", unified_path.display()); + println!( + "Page canonical path {} is not in library translations", + unified_path.display() + ); panic!("Library error"); } let translations = translations .unwrap() - .iter().map(|key| { + .iter() + .map(|key| { // Are we looking for a section? (no file extension here) if unified_path.ends_with("_index") { //library.get_section_by_key(*key).file.relative.to_string() @@ -216,11 +230,10 @@ impl Translations { } //library.get_page_by_key(*key).file.relative.to_string() } - }).collect(); + }) + .collect(); - Translations { - trans: translations, - } + Translations { trans: translations } } pub fn languages(&self) -> Vec { @@ -250,7 +263,11 @@ fn library_translations_lang_for(site: &Site, path: &str) -> Vec { /// This function takes a list of translations generated by find_expected_translations(), /// a site instance, and a path of a page to check that translations are the same on both sides -pub fn ensure_translations_match(translations: &HashMap>, site: &Site, path: &str) -> bool { +pub fn ensure_translations_match( + translations: &HashMap>, + site: &Site, + path: &str, +) -> bool { let library_page_translations = library_translations_lang_for(site, path); if let Some((unified_path, _lang)) = find_lang_for(&PathBuf::from(path), Path::new("")) { @@ -268,7 +285,10 @@ pub fn ensure_translations_match(translations: &HashMap>, si if unified_path == "_index.md" { for lang in &page_translations { if !library_page_translations.contains(lang) { - println!("Library is missing language: {} for page {}", lang, unified_path); + println!( + "Library is missing language: {} for page {}", + lang, unified_path + ); return false; } } @@ -305,11 +325,12 @@ pub fn ensure_translations_in_output(site: &Site, path: &str, permalink: &str) - let output_path = permalink.trim_start_matches(&site.config.base_url); // Strip leading / so it's not interpreted as an absolute path let output_path = output_path.trim_start_matches('/'); - // Don't forget to remove / because + // Don't forget to remove / because let output_path = site.output_path.join(output_path); - let output = std::fs::read_to_string(&output_path).expect(&format!("Output not found in {}", output_path.display())); - + let output = std::fs::read_to_string(&output_path) + .expect(&format!("Output not found in {}", output_path.display())); + for permalink in &translations_permalinks { if !output.contains(permalink) { println!("Page {} has translation {}, but it was not found in output", path, permalink); From fc808f2aa8c2605e7059d05af728f92bfefab235 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 7 Apr 2021 21:14:42 +0200 Subject: [PATCH 049/113] Some clippy fixes --- components/config/src/config/markup.rs | 2 +- components/front_matter/src/lib.rs | 2 -- components/front_matter/src/page.rs | 2 +- components/imageproc/src/lib.rs | 3 +-- components/library/src/library.rs | 4 ++-- src/cmd/init.rs | 3 +-- 6 files changed, 6 insertions(+), 10 deletions(-) diff --git a/components/config/src/config/markup.rs b/components/config/src/config/markup.rs index 39c686de..bb6229ee 100644 --- a/components/config/src/config/markup.rs +++ b/components/config/src/config/markup.rs @@ -59,7 +59,7 @@ impl Markdown { pub fn construct_external_link_tag(&self, url: &str, title: &str) -> String { let mut rel_opts = Vec::new(); let mut target = "".to_owned(); - let title = if title == "" { "".to_owned() } else { format!("title=\"{}\" ", title) }; + let title = if title.is_empty() { "".to_owned() } else { format!("title=\"{}\" ", title) }; if self.external_links_target_blank { // Security risk otherwise diff --git a/components/front_matter/src/lib.rs b/components/front_matter/src/lib.rs index bc7a7cf1..a8e46127 100644 --- a/components/front_matter/src/lib.rs +++ b/components/front_matter/src/lib.rs @@ -3,9 +3,7 @@ use serde_derive::{Deserialize, Serialize}; use errors::{bail, Error, Result}; use regex::Regex; -use serde_yaml; use std::path::Path; -use toml; mod page; mod section; diff --git a/components/front_matter/src/page.rs b/components/front_matter/src/page.rs index da39a5e7..16ac57c9 100644 --- a/components/front_matter/src/page.rs +++ b/components/front_matter/src/page.rs @@ -81,7 +81,7 @@ impl PageFrontMatter { } if let Some(ref path) = f.path { - if path == "" { + if path.is_empty() { bail!("`path` can't be empty if present") } } diff --git a/components/imageproc/src/lib.rs b/components/imageproc/src/lib.rs index 97cad10e..99b6abb9 100644 --- a/components/imageproc/src/lib.rs +++ b/components/imageproc/src/lib.rs @@ -319,8 +319,7 @@ impl ImageOp { Some(q) => encoder.encode(q as f32 / 100.), None => encoder.encode_lossless(), }; - let mut bytes = memory.as_bytes(); - f.write_all(&mut bytes)?; + f.write_all(&memory.as_bytes())?; } } diff --git a/components/library/src/library.rs b/components/library/src/library.rs index 817e7e55..32a708d1 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -84,7 +84,7 @@ impl Library { let file_path = section.file.path.clone(); let rel_path = section.path.clone(); - let mut entries = vec![rel_path.clone()]; + let mut entries = vec![rel_path]; entries.extend(section.meta.aliases.iter().map(|a| a.clone()).collect::>()); self.insert_reverse_aliases(entries, §ion.file.relative); @@ -98,7 +98,7 @@ impl Library { let file_path = page.file.path.clone(); let rel_path = page.path.clone(); - let mut entries = vec![rel_path.clone()]; + let mut entries = vec![rel_path]; entries.extend(page.meta.aliases.iter().map(|a| a.clone()).collect::>()); self.insert_reverse_aliases(entries, &page.file.relative); diff --git a/src/cmd/init.rs b/src/cmd/init.rs index 1bc76922..2fe72aa2 100644 --- a/src/cmd/init.rs +++ b/src/cmd/init.rs @@ -1,6 +1,5 @@ use std::fs::{canonicalize, create_dir}; use std::path::Path; -use std::path::PathBuf; use errors::{bail, Result}; use utils::fs::create_file; @@ -68,7 +67,7 @@ pub fn is_directory_quasi_empty(path: &Path) -> Result { } // Remove the unc part of a windows path -fn strip_unc(path: &PathBuf) -> String { +fn strip_unc(path: &Path) -> String { let path_to_refine = path.to_str().unwrap(); path_to_refine.trim_start_matches(LOCAL_UNC).to_string() } From 421a2512f7d602bd0d4413d72b438e5891c94b86 Mon Sep 17 00:00:00 2001 From: Jason Miller Date: Sun, 18 Apr 2021 11:07:10 +0200 Subject: [PATCH 050/113] Hash collision using the same quality level and incorrect quality for WebP (#1431) * fix: webp quality level mismatch * fix: hash collision using the same image ops Using the same image operations, but for different formats, e.g. `.jpg` and `.webp`, produced the same hash. To differentiate between these, the image extension is added to the hash. --- components/imageproc/src/lib.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/components/imageproc/src/lib.rs b/components/imageproc/src/lib.rs index 99b6abb9..2ce000fe 100644 --- a/components/imageproc/src/lib.rs +++ b/components/imageproc/src/lib.rs @@ -207,6 +207,7 @@ impl Hash for Format { }; hasher.write_u8(q); + hasher.write(self.extension().as_bytes()); } } @@ -316,7 +317,7 @@ impl ImageOp { Format::WebP(q) => { let encoder = webp::Encoder::from_image(&img); let memory = match q { - Some(q) => encoder.encode(q as f32 / 100.), + Some(q) => encoder.encode(q as f32), None => encoder.encode_lossless(), }; f.write_all(&memory.as_bytes())?; From 4f7b96098546331825506c3c05e7c3646d0883f6 Mon Sep 17 00:00:00 2001 From: Songmin Li Date: Mon, 19 Apr 2021 16:33:12 +0800 Subject: [PATCH 051/113] Fix can not build with indexing-zh (#1433) * fix can not build zola with search/indexing-zh feature * fix can not build components/utils after enabled indexing-zh feature error[E0252]: the name `Deserialize` is defined multiple times --> components/utils/src/de.rs:2:5 | 1 | use serde::{Deserialize, Deserializer}; | ----------- previous import of the macro `Deserialize` here 2 | use serde_derive::Deserialize; | ^^^^^^^^^^^^^^^^^^^^^^^^^ `Deserialize` reimported here | = note: `Deserialize` must be defined only once in the macro namespace of this module --- Cargo.lock | 2 +- Cargo.toml | 1 + components/utils/Cargo.toml | 3 +-- components/utils/src/de.rs | 1 - components/utils/src/slugs.rs | 2 +- docs/content/documentation/content/multilingual.md | 4 ++-- 6 files changed, 6 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 245db215..6c72a084 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3016,7 +3016,6 @@ dependencies = [ "minify-html", "percent-encoding", "serde", - "serde_derive", "slug", "tempfile", "tera", @@ -3325,6 +3324,7 @@ dependencies = [ "percent-encoding", "relative-path", "same-file", + "search", "serde_json", "site", "termcolor", diff --git a/Cargo.toml b/Cargo.toml index 30f897dc..6d47846b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -44,6 +44,7 @@ site = { path = "components/site" } errors = { path = "components/errors" } front_matter = { path = "components/front_matter" } utils = { path = "components/utils" } +search = { path = "components/search" } [dev-dependencies] same-file = "1" diff --git a/components/utils/Cargo.toml b/components/utils/Cargo.toml index 66bbca8a..d12e0f1a 100644 --- a/components/utils/Cargo.toml +++ b/components/utils/Cargo.toml @@ -10,8 +10,7 @@ tera = "1" unicode-segmentation = "1.2" walkdir = "2" toml = "0.5" -serde = "1" -serde_derive = "1" +serde = { version = "1.0", features = ["derive"] } slug = "0.1" percent-encoding = "2" filetime = "0.2.12" diff --git a/components/utils/src/de.rs b/components/utils/src/de.rs index e294e92a..568d71ad 100644 --- a/components/utils/src/de.rs +++ b/components/utils/src/de.rs @@ -1,5 +1,4 @@ use serde::{Deserialize, Deserializer}; -use serde_derive::Deserialize; use tera::{Map, Value}; /// Used as an attribute when we want to convert from TOML to a string date diff --git a/components/utils/src/slugs.rs b/components/utils/src/slugs.rs index f4ae57e7..d561f89e 100644 --- a/components/utils/src/slugs.rs +++ b/components/utils/src/slugs.rs @@ -1,4 +1,4 @@ -use serde_derive::{Deserialize, Serialize}; +use serde::{Deserialize, Serialize}; #[derive(Copy, Clone, Debug, PartialEq, Eq, Serialize, Deserialize)] #[serde(rename_all = "lowercase")] diff --git a/docs/content/documentation/content/multilingual.md b/docs/content/documentation/content/multilingual.md index cd697ff5..5c78c84c 100644 --- a/docs/content/documentation/content/multilingual.md +++ b/docs/content/documentation/content/multilingual.md @@ -21,9 +21,9 @@ If you want to use per-language taxonomies, ensure you set the `lang` field in t configuration. Note: By default, Chinese and Japanese search indexing is not included. You can include -the support by building `zola` using `cargo build --features search/indexing-ja search/indexing-zh`. +the support by building `zola` using `cargo build --features search/indexing-ja --features search/indexing-zh`. Please also note that, enabling Chinese indexing will increase the binary size by approximately -5 MB while enabling Japanese indexing will increase the binary size by approximately 70 MB +5 MB while enabling Japanese indexing will increase the binary size by approximately 70 MB due to the incredibly large dictionaries. ## Content From 3346439a32854d5dd4f2ff87465c47fba2407d32 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 21 Apr 2021 19:13:11 +0000 Subject: [PATCH 052/113] rendering: keep track of all internal links (#1424) This updates rendered markdown structures in order to keep track of all internal links, not anymore limiting to only those targeting an explicit anchor fragment. The goal of this rework is to allow building other features, such as backlinks, on top of the existing collection of internal links. --- components/library/src/content/page.rs | 13 ++- components/library/src/content/section.rs | 13 ++- components/rendering/src/markdown.rs | 17 ++-- components/site/src/link_checking.rs | 119 +++++++++++----------- components/utils/src/site.rs | 40 ++++---- 5 files changed, 98 insertions(+), 104 deletions(-) diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 216de4ce..9a37ecc8 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -82,12 +82,11 @@ pub struct Page { pub lang: String, /// Contains all the translated version of that page pub translations: Vec, - /// Contains the internal links that have an anchor: we can only check the anchor - /// after all pages have been built and their ToC compiled. The page itself should exist otherwise - /// it would have errored before getting there - /// (path to markdown, anchor value) - pub internal_links_with_anchors: Vec<(String, String)>, - /// Contains the external links that need to be checked + /// The list of all internal links (as path to markdown file), with optional anchor fragments. + /// We can only check the anchor after all pages have been built and their ToC compiled. + /// The page itself should exist otherwise it would have errored before getting there. + pub internal_links: Vec<(String, Option)>, + /// The list of all links to external webpages. They can be validated by the `link_checker`. pub external_links: Vec, } @@ -268,7 +267,7 @@ impl Page { self.content = res.body; self.toc = res.toc; self.external_links = res.external_links; - self.internal_links_with_anchors = res.internal_links_with_anchors; + self.internal_links = res.internal_links; Ok(()) } diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index 1b284cca..3d4fb6fd 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -56,12 +56,11 @@ pub struct Section { /// The language of that section. Equal to the default lang if the user doesn't setup `languages` in config. /// Corresponds to the lang in the _index.{lang}.md file scheme pub lang: String, - /// Contains the internal links that have an anchor: we can only check the anchor - /// after all pages have been built and their ToC compiled. The page itself should exist otherwise - /// it would have errored before getting there - /// (path to markdown, anchor value) - pub internal_links_with_anchors: Vec<(String, String)>, - /// Contains the external links that need to be checked + /// The list of all internal links (as path to markdown file), with optional anchor fragments. + /// We can only check the anchor after all pages have been built and their ToC compiled. + /// The page itself should exist otherwise it would have errored before getting there. + pub internal_links: Vec<(String, Option)>, + /// The list of all links to external webpages. They can be validated by the `link_checker`. pub external_links: Vec, } @@ -186,7 +185,7 @@ impl Section { self.content = res.body; self.toc = res.toc; self.external_links = res.external_links; - self.internal_links_with_anchors = res.internal_links_with_anchors; + self.internal_links = res.internal_links; Ok(()) } diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index 731b2c7b..5929e1fe 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -26,7 +26,9 @@ pub struct Rendered { pub body: String, pub summary_len: Option, pub toc: Vec, - pub internal_links_with_anchors: Vec<(String, String)>, + /// Links to site-local pages: relative path plus optional anchor target. + pub internal_links: Vec<(String, Option)>, + /// Outgoing links to external webpages (i.e. HTTP(S) targets). pub external_links: Vec, } @@ -93,7 +95,7 @@ fn fix_link( link_type: LinkType, link: &str, context: &RenderContext, - internal_links_with_anchors: &mut Vec<(String, String)>, + internal_links: &mut Vec<(String, Option)>, external_links: &mut Vec, ) -> Result { if link_type == LinkType::Email { @@ -107,10 +109,7 @@ fn fix_link( let result = if link.starts_with("@/") { match resolve_internal_link(&link, &context.permalinks) { Ok(resolved) => { - if resolved.anchor.is_some() { - internal_links_with_anchors - .push((resolved.md_path.unwrap(), resolved.anchor.unwrap())); - } + internal_links.push((resolved.md_path, resolved.anchor)); resolved.permalink } Err(_) => { @@ -175,7 +174,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result = vec![]; let mut headings: Vec = vec![]; - let mut internal_links_with_anchors = Vec::new(); + let mut internal_links = Vec::new(); let mut external_links = Vec::new(); let mut opts = Options::empty(); @@ -294,7 +293,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result fixed_link, @@ -429,7 +428,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result Result<()> { + println!("Checking all internal links with anchors."); let library = site.library.write().expect("Get lock for check_internal_links_with_anchors"); + + // Chain all internal links, from both sections and pages. let page_links = library .pages() .values() .map(|p| { let path = &p.file.path; - p.internal_links_with_anchors.iter().map(move |l| (path.clone(), l)) + p.internal_links.iter().map(move |l| (path.clone(), l)) }) .flatten(); let section_links = library @@ -20,67 +25,46 @@ pub fn check_internal_links_with_anchors(site: &Site) -> Result<()> { .values() .map(|p| { let path = &p.file.path; - p.internal_links_with_anchors.iter().map(move |l| (path.clone(), l)) + p.internal_links.iter().map(move |l| (path.clone(), l)) }) .flatten(); - let all_links = page_links.chain(section_links).collect::>(); + let all_links = page_links.chain(section_links); - if site.config.is_in_check_mode() { - println!("Checking {} internal link(s) with an anchor.", all_links.len()); - } - - if all_links.is_empty() { - return Ok(()); - } - - let mut full_path = site.base_path.clone(); - full_path.push("content"); - - let errors: Vec<_> = all_links - .iter() - .filter_map(|(page_path, (md_path, anchor))| { - // There are a few `expect` here since the presence of the .md file will - // already have been checked in the markdown rendering - let mut p = full_path.clone(); - for part in md_path.split('/') { - p.push(part); - } - if md_path.contains("_index.md") { - let section = library - .get_section(&p) - .expect("Couldn't find section in check_internal_links_with_anchors"); - if section.has_anchor(&anchor) { - None - } else { - Some((page_path, md_path, anchor)) - } - } else { - let page = library - .get_page(&p) - .expect("Couldn't find section in check_internal_links_with_anchors"); - if page.has_anchor(&anchor) { - None - } else { - Some((page_path, md_path, anchor)) - } - } + // Only keep links with anchor fragments, and count them too. + // Bare files have already been checked elsewhere, thus they are not interesting here. + let mut anchors_total = 0usize; + let links_with_anchors = all_links + .filter_map(|(page_path, link)| match link { + (md_path, Some(anchor)) => Some((page_path, md_path, anchor)), + _ => None, }) - .collect(); + .inspect(|_| anchors_total = anchors_total.saturating_add(1)); - if site.config.is_in_check_mode() { - println!( - "> Checked {} internal link(s) with an anchor: {} error(s) found.", - all_links.len(), - errors.len() - ); - } + // Check for targets existence (including anchors), then keep only the faulty + // entries for error reporting purposes. + let missing_targets = links_with_anchors.filter(|(_, md_path, anchor)| { + // There are a few `expect` here since the presence of the .md file will + // already have been checked in the markdown rendering + let mut full_path = site.base_path.clone(); + full_path.push("content"); + for part in md_path.split('/') { + full_path.push(part); + } + if md_path.contains("_index.md") { + let section = library + .get_section(&full_path) + .expect("Couldn't find section in check_internal_links_with_anchors"); + !section.has_anchor(&anchor) + } else { + let page = library + .get_page(&full_path) + .expect("Couldn't find section in check_internal_links_with_anchors"); + !page.has_anchor(&anchor) + } + }); - if errors.is_empty() { - return Ok(()); - } - - let msg = errors - .into_iter() + // Format faulty entries into error messages, and collect them. + let errors = missing_targets .map(|(page_path, md_path, anchor)| { format!( "The anchor in the link `@/{}#{}` in {} does not exist.", @@ -89,9 +73,22 @@ pub fn check_internal_links_with_anchors(site: &Site) -> Result<()> { page_path.to_string_lossy(), ) }) - .collect::>() - .join("\n"); - Err(Error { kind: ErrorKind::Msg(msg), source: None }) + .collect::>(); + + // Finally emit a summary, and return overall anchors-checking result. + match errors.len() { + 0 => { + println!("> Succesfully checked {} internal link(s) with anchors.", anchors_total); + Ok(()) + } + errors_total => { + println!( + "> Checked {} internal link(s) with anchors: {} target(s) missing.", + anchors_total, errors_total, + ); + Err(Error { kind: ErrorKind::Msg(errors.join("\n")), source: None }) + } + } } pub fn check_external_links(site: &Site) -> Result<()> { diff --git a/components/utils/src/site.rs b/components/utils/src/site.rs index 26e0f8ac..d49e559a 100644 --- a/components/utils/src/site.rs +++ b/components/utils/src/site.rs @@ -3,7 +3,7 @@ use std::collections::HashMap; use std::hash::BuildHasher; use unicode_segmentation::UnicodeSegmentation; -use errors::{bail, Result}; +use errors::Result; /// Get word count and estimated reading time pub fn get_reading_analytics(content: &str) -> (usize, usize) { @@ -14,12 +14,15 @@ pub fn get_reading_analytics(content: &str) -> (usize, usize) { (word_count, ((word_count + 199) / 200)) } +/// Result of a successful resolution of an internal link. #[derive(Debug, PartialEq, Clone)] pub struct ResolvedInternalLink { + /// Resolved link target, as absolute URL address. pub permalink: String, - // The 2 fields below are only set when there is an anchor - // as we will need that to check if it exists after the markdown rendering is done - pub md_path: Option, + /// Internal path to the .md file, without the leading `@/`. + pub md_path: String, + /// Optional anchor target. + /// We can check whether it exists only after all the markdown rendering is done. pub anchor: Option, } @@ -36,20 +39,17 @@ pub fn resolve_internal_link( let parts = clean_link.split('#').collect::>(); // If we have slugification turned off, we might end up with some escaped characters so we need // to decode them first - let decoded = &*percent_decode(parts[0].as_bytes()).decode_utf8_lossy(); - match permalinks.get(decoded) { - Some(p) => { - if parts.len() > 1 { - Ok(ResolvedInternalLink { - permalink: format!("{}#{}", p, parts[1]), - md_path: Some(decoded.to_string()), - anchor: Some(parts[1].to_string()), - }) - } else { - Ok(ResolvedInternalLink { permalink: p.to_string(), md_path: None, anchor: None }) - } - } - None => bail!(format!("Relative link {} not found.", link)), + let decoded = percent_decode(parts[0].as_bytes()).decode_utf8_lossy().to_string(); + let target = + permalinks.get(&decoded).ok_or_else(|| format!("Relative link {} not found.", link))?; + if parts.len() > 1 { + Ok(ResolvedInternalLink { + permalink: format!("{}#{}", target, parts[1]), + md_path: decoded, + anchor: Some(parts[1].to_string()), + }) + } else { + Ok(ResolvedInternalLink { permalink: target.to_string(), md_path: decoded, anchor: None }) } } @@ -81,7 +81,7 @@ mod tests { permalinks.insert("pages/about.md".to_string(), "https://vincent.is/about".to_string()); let res = resolve_internal_link("@/pages/about.md#hello", &permalinks).unwrap(); assert_eq!(res.permalink, "https://vincent.is/about#hello"); - assert_eq!(res.md_path, Some("pages/about.md".to_string())); + assert_eq!(res.md_path, "pages/about.md".to_string()); assert_eq!(res.anchor, Some("hello".to_string())); } @@ -94,7 +94,7 @@ mod tests { ); let res = resolve_internal_link("@/pages/about%20space.md#hello", &permalinks).unwrap(); assert_eq!(res.permalink, "https://vincent.is/about%20space/#hello"); - assert_eq!(res.md_path, Some("pages/about space.md".to_string())); + assert_eq!(res.md_path, "pages/about space.md".to_string()); assert_eq!(res.anchor, Some("hello".to_string())); } From 47b920777ab732a0e20de2207127339331a7992a Mon Sep 17 00:00:00 2001 From: Stanislas Date: Wed, 21 Apr 2021 21:13:38 +0200 Subject: [PATCH 053/113] link_checking: prevent rate-limiting (#1421) * link_checking: prevent rate-limiting Fix for https://github.com/getzola/zola/issues/1056. - assign all links for a domain to the same thread - reduce number of threads from 32 to 8 - add sleep between HTTP calls * Add get_link_domain(), use for loops * Do not sleep after last link for domain * Avoid quadratic complexity * remove prints --- Cargo.lock | 1 + components/site/Cargo.toml | 1 + components/site/src/link_checking.rs | 121 ++++++++++++++++++--------- 3 files changed, 84 insertions(+), 39 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6c72a084..b7984b7e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2449,6 +2449,7 @@ dependencies = [ "tempfile", "templates", "tera", + "url", "utils", "walkdir", ] diff --git a/components/site/Cargo.toml b/components/site/Cargo.toml index eb90d9c8..0a69fd43 100644 --- a/components/site/Cargo.toml +++ b/components/site/Cargo.toml @@ -16,6 +16,7 @@ sass-rs = "0.2" lazy_static = "1.1" relative-path = "1" slotmap = "0.4" +url = "2" errors = { path = "../errors" } config = { path = "../config" } diff --git a/components/site/src/link_checking.rs b/components/site/src/link_checking.rs index 46c34389..4774afa2 100644 --- a/components/site/src/link_checking.rs +++ b/components/site/src/link_checking.rs @@ -1,7 +1,11 @@ use rayon::prelude::*; use crate::Site; -use errors::{Error, ErrorKind, Result}; +use core::time; +use errors::{bail, Result}; +use errors::{Error, ErrorKind}; +use std::{collections::HashMap, path::PathBuf, thread}; +use url::Url; /// Check whether all internal links pointing to explicit anchor fragments are valid. /// @@ -91,60 +95,98 @@ pub fn check_internal_links_with_anchors(site: &Site) -> Result<()> { } } +fn get_link_domain(link: &str) -> Result { + return match Url::parse(&link) { + Ok(url) => match url.host_str().map(String::from) { + Some(domain_str) => Ok(domain_str), + None => bail!("could not parse domain `{}` from link", link), + }, + Err(err) => bail!("could not parse domain `{}` from link: `{}`", link, err), + }; +} + pub fn check_external_links(site: &Site) -> Result<()> { let library = site.library.write().expect("Get lock for check_external_links"); - let page_links = library - .pages() - .values() - .map(|p| { - let path = &p.file.path; - p.external_links.iter().map(move |l| (path.clone(), l)) - }) - .flatten(); - let section_links = library - .sections() - .values() - .map(|p| { - let path = &p.file.path; - p.external_links.iter().map(move |l| (path.clone(), l)) - }) - .flatten(); - let all_links = page_links.chain(section_links).collect::>(); + + let mut all_links: Vec<(PathBuf, String, String)> = vec![]; + + for p in library.pages_values().into_iter() { + for external_link in p.clone().external_links.into_iter() { + let domain = get_link_domain(&external_link)?; + all_links.push((p.file.path.clone(), external_link, domain)); + } + } + + for s in library.sections_values().into_iter() { + for external_link in s.clone().external_links.into_iter() { + let domain = get_link_domain(&external_link)?; + all_links.push((s.file.path.clone(), external_link, domain)); + } + } + println!("Checking {} external link(s).", all_links.len()); + let mut links_by_domain: HashMap> = HashMap::new(); + + for link in all_links.iter() { + links_by_domain.entry(link.2.to_string()).or_insert(Vec::new()); + // Insert content path and link under the domain key + links_by_domain + .get_mut(&link.2.to_string()) + .unwrap() + .push((link.0.clone(), link.1.clone())); + } + if all_links.is_empty() { return Ok(()); } // create thread pool with lots of threads so we can fetch - // (almost) all pages simultaneously - let threads = std::cmp::min(all_links.len(), 32); + // (almost) all pages simultaneously, limiting all links for a single + // domain to one thread to avoid rate-limiting + let threads = std::cmp::min(links_by_domain.len(), 8); let pool = rayon::ThreadPoolBuilder::new() .num_threads(threads) .build() .map_err(|e| Error { kind: ErrorKind::Msg(e.to_string()), source: None })?; - let errors: Vec<_> = pool.install(|| { - all_links + let errors = pool.install(|| { + links_by_domain .par_iter() - .filter_map(|(page_path, link)| { - if site - .config - .link_checker - .skip_prefixes - .iter() - .any(|prefix| link.starts_with(prefix)) - { - return None; - } - let res = link_checker::check_url(&link, &site.config.link_checker); - if link_checker::is_valid(&res) { - None - } else { - Some((page_path, link, res)) - } + .map(|(_domain, links)| { + let mut links_to_process = links.len(); + links + .into_iter() + .filter_map(move |(page_path, link)| { + links_to_process -= 1; + + if site + .config + .link_checker + .skip_prefixes + .iter() + .any(|prefix| link.starts_with(prefix)) + { + return None; + } + + let res = link_checker::check_url(&link, &site.config.link_checker); + + if links_to_process > 0 { + // Prevent rate-limiting, wait before next crawl unless we're done with this domain + thread::sleep(time::Duration::from_millis(500)); + } + + if link_checker::is_valid(&res) { + None + } else { + Some((page_path, link, res)) + } + }) + .collect::>() }) - .collect() + .flatten() + .collect::>() }); println!("> Checked {} external link(s): {} error(s) found.", all_links.len(), errors.len()); @@ -165,5 +207,6 @@ pub fn check_external_links(site: &Site) -> Result<()> { }) .collect::>() .join("\n"); + Err(Error { kind: ErrorKind::Msg(msg), source: None }) } From 1bd777f0e5960f074b82a57b3a05880fc8525d89 Mon Sep 17 00:00:00 2001 From: Marco Tolk <995838+mtolk@users.noreply.github.com> Date: Wed, 21 Apr 2021 21:29:47 +0200 Subject: [PATCH 054/113] Add HTTP POST capability to load_data() (#1400) * Fixed failing tests on windows when user is not VssAdministrator. * Fixed windows specific testcases related to \r * Added the ability to perform POST requests to load_data * make tests on windows deal with both \r being there on windows, and \r not being generated as on my personal windows system. * undo earlier commit eaaa8c3ddd65d474161073a6fb80599eea1a9a21 because it fails on azure buildserver * added new arguments to the hash for the cache function. So caching now works as it should * added new arguments to the hash for the cache function. * improved documentation of load_data POST with better example. * added basic derive traits * changed load_data param contenttype to content_type * fixed caching issues that went missing? * format * made code more idiomatic as suggested by keats --- .../templates/src/global_fns/load_data.rs | 325 ++++++++++++++++-- .../documentation/templates/overview.md | 22 ++ 2 files changed, 322 insertions(+), 25 deletions(-) diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 286b63c5..851b1178 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -1,6 +1,7 @@ use utils::de::fix_toml_dates; use utils::fs::{get_file_time, is_path_in_directory, read_file}; +use reqwest::header::{HeaderValue, CONTENT_TYPE}; use reqwest::{blocking::Client, header}; use std::collections::hash_map::DefaultHasher; use std::fmt; @@ -23,6 +24,24 @@ enum DataSource { Path(PathBuf), } +#[derive(Debug, PartialEq, Clone, Copy, Hash)] +enum Method { + Post, + Get, +} + +impl FromStr for Method { + type Err = Error; + + fn from_str(s: &str) -> Result { + match s.to_lowercase().as_ref() { + "post" => Ok(Method::Post), + "get" => Ok(Method::Get), + _ => Err("`load_data` method must either be POST or GET.".into()), + } + } +} + #[derive(Debug)] enum OutputFormat { Toml, @@ -104,9 +123,18 @@ impl DataSource { Err(GET_DATA_ARGUMENT_ERROR_MESSAGE.into()) } - fn get_cache_key(&self, format: &OutputFormat) -> u64 { + fn get_cache_key( + &self, + format: &OutputFormat, + method_arg: Option, + method_post_body: Option, + method_post_contenttype: Option, + ) -> u64 { let mut hasher = DefaultHasher::new(); format.hash(&mut hasher); + method_arg.hash(&mut hasher); + method_post_body.hash(&mut hasher); + method_post_contenttype.hash(&mut hasher); self.hash(&mut hasher); hasher.finish() } @@ -201,6 +229,25 @@ impl TeraFn for LoadData { }; let path_arg = optional_arg!(String, args.get("path"), GET_DATA_ARGUMENT_ERROR_MESSAGE); let url_arg = optional_arg!(String, args.get("url"), GET_DATA_ARGUMENT_ERROR_MESSAGE); + let post_body_arg = + optional_arg!(String, args.get("body"), "`load_data` body must be a string, if set."); + let post_content_type = optional_arg!( + String, + args.get("content_type"), + "`load_data` content_type must be a string, if set." + ); + let method_arg = optional_arg!( + String, + args.get("method"), + "`load_data` method must either be POST or GET." + ); + let method = match method_arg { + Some(ref method_str) => match Method::from_str(&method_str) { + Ok(m) => m, + Err(e) => return Err(e), + }, + _ => Method::Get, + }; let data_source = DataSource::from_args(path_arg.clone(), url_arg, &self.base_path)?; // If the file doesn't exist, source is None @@ -222,7 +269,12 @@ impl TeraFn for LoadData { } let data_source = data_source.unwrap(); let file_format = get_output_format_from_args(&args, &data_source)?; - let cache_key = data_source.get_cache_key(&file_format); + let cache_key = data_source.get_cache_key( + &file_format, + method_arg, + post_body_arg.clone(), + post_content_type.clone(), + ); let mut cache = self.result_cache.lock().expect("result cache lock"); let response_client = self.client.lock().expect("response client lock"); @@ -233,12 +285,40 @@ impl TeraFn for LoadData { let data = match data_source { DataSource::Path(path) => read_data_file(&self.base_path, path), DataSource::Url(url) => { - match response_client - .get(url.as_str()) - .header(header::ACCEPT, file_format.as_accept_header()) - .send() - .and_then(|res| res.error_for_status()) - { + let req = match method { + Method::Get => response_client + .get(url.as_str()) + .header(header::ACCEPT, file_format.as_accept_header()), + Method::Post => { + let mut resp = response_client + .post(url.as_str()) + .header(header::ACCEPT, file_format.as_accept_header()); + match post_content_type { + Some(content_type) => match HeaderValue::from_str(&content_type) { + Ok(c) => { + resp = resp.header(CONTENT_TYPE, c); + } + Err(_) => { + return Err(format!( + "{} is an illegal contenttype", + &content_type + ) + .into()); + } + }, + _ => {} + }; + match post_body_arg { + Some(body) => { + resp = resp.body(body); + } + _ => {} + }; + resp + } + }; + + match req.send().and_then(|res| res.error_for_status()) { Ok(r) => r.text().map_err(|e| { format!("Failed to parse response from {}: {:?}", url, e).into() }), @@ -418,6 +498,106 @@ mod tests { return test_files.join(filename); } + #[test] + fn fails_illegal_method_parameter() { + let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + let mut args = HashMap::new(); + args.insert("url".to_string(), to_value("https://example.com").unwrap()); + args.insert("format".to_string(), to_value("plain").unwrap()); + args.insert("method".to_string(), to_value("illegalmethod").unwrap()); + let result = static_fn.call(&args); + assert!(result.is_err()); + assert!(result + .unwrap_err() + .to_string() + .contains("`load_data` method must either be POST or GET.")); + } + + #[test] + fn can_load_remote_data_using_post_method() { + let _mg = mock("GET", "/kr1zdgbm4y") + .with_header("content-type", "text/plain") + .with_body("GET response") + .expect(0) + .create(); + let _mp = mock("POST", "/kr1zdgbm4y") + .with_header("content-type", "text/plain") + .with_body("POST response") + .create(); + + let url = format!("{}{}", mockito::server_url(), "/kr1zdgbm4y"); + + let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + let mut args = HashMap::new(); + args.insert("url".to_string(), to_value(url).unwrap()); + args.insert("format".to_string(), to_value("plain").unwrap()); + args.insert("method".to_string(), to_value("post").unwrap()); + let result = static_fn.call(&args); + assert!(result.is_ok()); + assert_eq!(result.unwrap(), "POST response"); + _mg.assert(); + _mp.assert(); + } + + #[test] + fn can_load_remote_data_using_post_method_with_content_type_header() { + let _mjson = mock("POST", "/kr1zdgbm4yw") + .match_header("content-type", "application/json") + .with_header("content-type", "application/json") + .with_body("{i_am:'json'}") + .expect(0) + .create(); + let _mtext = mock("POST", "/kr1zdgbm4yw") + .match_header("content-type", "text/plain") + .with_header("content-type", "text/plain") + .with_body("POST response text") + .create(); + + let url = format!("{}{}", mockito::server_url(), "/kr1zdgbm4yw"); + + let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + let mut args = HashMap::new(); + args.insert("url".to_string(), to_value(url).unwrap()); + args.insert("format".to_string(), to_value("plain").unwrap()); + args.insert("method".to_string(), to_value("post").unwrap()); + args.insert("content_type".to_string(), to_value("text/plain").unwrap()); + let result = static_fn.call(&args); + assert!(result.is_ok()); + assert_eq!(result.unwrap(), "POST response text"); + _mjson.assert(); + _mtext.assert(); + } + + #[test] + fn can_load_remote_data_using_post_method_with_body() { + let _mjson = mock("POST", "/kr1zdgbm4y") + .match_body("qwerty") + .with_header("content-type", "application/json") + .with_body("{i_am:'json'}") + .expect(0) + .create(); + let _mtext = mock("POST", "/kr1zdgbm4y") + .match_body("this is a match") + .with_header("content-type", "text/plain") + .with_body("POST response text") + .create(); + + let url = format!("{}{}", mockito::server_url(), "/kr1zdgbm4y"); + + let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + let mut args = HashMap::new(); + args.insert("url".to_string(), to_value(url).unwrap()); + args.insert("format".to_string(), to_value("plain").unwrap()); + args.insert("method".to_string(), to_value("post").unwrap()); + args.insert("content_type".to_string(), to_value("text/plain").unwrap()); + args.insert("body".to_string(), to_value("this is a match").unwrap()); + let result = static_fn.call(&args); + assert!(result.is_ok()); + assert_eq!(result.unwrap(), "POST response text"); + _mjson.assert(); + _mtext.assert(); + } + #[test] fn fails_when_missing_file() { let static_fn = LoadData::new(PathBuf::from("../utils")); @@ -456,10 +636,18 @@ mod tests { #[test] fn calculates_cache_key_for_path() { // We can't test against a fixed value, due to the fact the cache key is built from the absolute path - let cache_key = - DataSource::Path(get_test_file("test.toml")).get_cache_key(&OutputFormat::Toml); - let cache_key_2 = - DataSource::Path(get_test_file("test.toml")).get_cache_key(&OutputFormat::Toml); + let cache_key = DataSource::Path(get_test_file("test.toml")).get_cache_key( + &OutputFormat::Toml, + None, + None, + None, + ); + let cache_key_2 = DataSource::Path(get_test_file("test.toml")).get_cache_key( + &OutputFormat::Toml, + None, + None, + None, + ); assert_eq!(cache_key, cache_key_2); } @@ -471,25 +659,46 @@ mod tests { .create(); let url = format!("{}{}", mockito::server_url(), "/kr1zdgbm4y"); - let cache_key = DataSource::Url(url.parse().unwrap()).get_cache_key(&OutputFormat::Plain); - assert_eq!(cache_key, 425638486551656875); + let cache_key = DataSource::Url(url.parse().unwrap()).get_cache_key( + &OutputFormat::Plain, + None, + None, + None, + ); + assert_eq!(cache_key, 16044537454280534951); } #[test] fn different_cache_key_per_filename() { - let toml_cache_key = - DataSource::Path(get_test_file("test.toml")).get_cache_key(&OutputFormat::Toml); - let json_cache_key = - DataSource::Path(get_test_file("test.json")).get_cache_key(&OutputFormat::Toml); + let toml_cache_key = DataSource::Path(get_test_file("test.toml")).get_cache_key( + &OutputFormat::Toml, + None, + None, + None, + ); + let json_cache_key = DataSource::Path(get_test_file("test.json")).get_cache_key( + &OutputFormat::Toml, + None, + None, + None, + ); assert_ne!(toml_cache_key, json_cache_key); } #[test] fn different_cache_key_per_format() { - let toml_cache_key = - DataSource::Path(get_test_file("test.toml")).get_cache_key(&OutputFormat::Toml); - let json_cache_key = - DataSource::Path(get_test_file("test.toml")).get_cache_key(&OutputFormat::Json); + let toml_cache_key = DataSource::Path(get_test_file("test.toml")).get_cache_key( + &OutputFormat::Toml, + None, + None, + None, + ); + let json_cache_key = DataSource::Path(get_test_file("test.toml")).get_cache_key( + &OutputFormat::Json, + None, + None, + None, + ); assert_ne!(toml_cache_key, json_cache_key); } @@ -609,7 +818,7 @@ mod tests { let result = static_fn.call(&args.clone()).unwrap(); if cfg!(windows) { - assert_eq!(result, ".hello {}\r\n",); + assert_eq!(result.as_str().unwrap().replace("\r\n", "\n"), ".hello {}\n",); } else { assert_eq!(result, ".hello {}\n",); }; @@ -624,7 +833,10 @@ mod tests { let result = static_fn.call(&args.clone()).unwrap(); if cfg!(windows) { - assert_eq!(result, "Number,Title\r\n1,Gutenberg\r\n2,Printing",); + assert_eq!( + result.as_str().unwrap().replace("\r\n", "\n"), + "Number,Title\n1,Gutenberg\n2,Printing", + ); } else { assert_eq!(result, "Number,Title\n1,Gutenberg\n2,Printing",); }; @@ -639,7 +851,7 @@ mod tests { let result = static_fn.call(&args.clone()).unwrap(); if cfg!(windows) { - assert_eq!(result, ".hello {}\r\n",); + assert_eq!(result.as_str().unwrap().replace("\r\n", "\n"), ".hello {}\n",); } else { assert_eq!(result, ".hello {}\n",); }; @@ -724,4 +936,67 @@ mod tests { }) ) } + + #[test] + fn is_load_remote_data_using_post_method_with_different_body_not_cached() { + let _mjson = mock("POST", "/kr1zdgbm4y3") + .with_header("content-type", "application/json") + .with_body("{i_am:'json'}") + .expect(2) + .create(); + let url = format!("{}{}", mockito::server_url(), "/kr1zdgbm4y3"); + + let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + let mut args = HashMap::new(); + args.insert("url".to_string(), to_value(&url).unwrap()); + args.insert("format".to_string(), to_value("plain").unwrap()); + args.insert("method".to_string(), to_value("post").unwrap()); + args.insert("contenttype".to_string(), to_value("text/plain").unwrap()); + args.insert("body".to_string(), to_value("this is a match").unwrap()); + let result = static_fn.call(&args); + assert!(result.is_ok()); + + let mut args2 = HashMap::new(); + args2.insert("url".to_string(), to_value(&url).unwrap()); + args2.insert("format".to_string(), to_value("plain").unwrap()); + args2.insert("method".to_string(), to_value("post").unwrap()); + args2.insert("contenttype".to_string(), to_value("text/plain").unwrap()); + args2.insert("body".to_string(), to_value("this is a match2").unwrap()); + let result2 = static_fn.call(&args2); + assert!(result2.is_ok()); + + _mjson.assert(); + } + + #[test] + fn is_load_remote_data_using_post_method_with_same_body_cached() { + let _mjson = mock("POST", "/kr1zdgbm4y2") + .match_body("this is a match") + .with_header("content-type", "application/json") + .with_body("{i_am:'json'}") + .expect(1) + .create(); + let url = format!("{}{}", mockito::server_url(), "/kr1zdgbm4y2"); + + let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + let mut args = HashMap::new(); + args.insert("url".to_string(), to_value(&url).unwrap()); + args.insert("format".to_string(), to_value("plain").unwrap()); + args.insert("method".to_string(), to_value("post").unwrap()); + args.insert("contenttype".to_string(), to_value("text/plain").unwrap()); + args.insert("body".to_string(), to_value("this is a match").unwrap()); + let result = static_fn.call(&args); + assert!(result.is_ok()); + + let mut args2 = HashMap::new(); + args2.insert("url".to_string(), to_value(&url).unwrap()); + args2.insert("format".to_string(), to_value("plain").unwrap()); + args2.insert("method".to_string(), to_value("post").unwrap()); + args2.insert("contenttype".to_string(), to_value("text/plain").unwrap()); + args2.insert("body".to_string(), to_value("this is a match").unwrap()); + let result2 = static_fn.call(&args2); + assert!(result2.is_ok()); + + _mjson.assert(); + } } diff --git a/docs/content/documentation/templates/overview.md b/docs/content/documentation/templates/overview.md index f324eb36..166bbad1 100644 --- a/docs/content/documentation/templates/overview.md +++ b/docs/content/documentation/templates/overview.md @@ -339,6 +339,28 @@ as below. {{ response }} ``` +When no other parameters are specified the URL will always be retrieved using a HTTP GET request. +Using the parameter `method`, since version 0.14.0, you can also choose to retrieve the URL using a POST request. + +When using `method="POST"` you can also use the parameters `body` and `contenttype`. +The parameter body is the actual contents sent in the POST request. +The parameter contenttype should be the mimetype of the body. + +This example will make a POST request to the kroki service to generate a SVG. + +```jinja2 +{% set postdata = load_data(url="https://kroki.io/blockdiag/svg", format="plain", method="POST" ,content_type="text/plain", body="blockdiag { + 'Doing POST' -> 'using load_data' + 'using load_data' -> 'can generate' -> 'block diagrams'; + 'using load_data' -> is -> 'very easy!'; + + 'Doing POST' [color = 'greenyellow']; + 'block diagrams' [color = 'pink']; + 'very easy!' [color = 'orange']; +}")%} +{{postdata|safe}} +``` + #### Data caching Data file loading and remote requests are cached in memory during the build, so multiple requests aren't made From e92e4f1003e528ce6b11e93c54c7fa10f2241e9a Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 21 Apr 2021 21:43:02 +0200 Subject: [PATCH 055/113] Tweaks to load_data + update deps --- CHANGELOG.md | 2 + Cargo.lock | 309 +++++++----------- Cargo.toml | 5 + components/link_checker/Cargo.toml | 2 +- components/templates/Cargo.toml | 2 +- .../templates/src/global_fns/load_data.rs | 54 ++- .../documentation/templates/overview.md | 4 +- 7 files changed, 153 insertions(+), 225 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index dac812d3..5810f500 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -23,6 +23,8 @@ - Fix `zola serve` not picking up directory renaming - Add `path` to the taxonomy terms to be on par with pages and sections - Add the `base16-aterlierdune-light` syntax highlight theme +- Improve link checking: less concurrency and try to not overload the servers +- Allow using POST for `load_data`, along with a body to POST ## 0.13.0 (2021-01-09) diff --git a/Cargo.lock b/Cargo.lock index b7984b7e..00698a16 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -65,11 +65,10 @@ checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" [[package]] name = "assert-json-diff" -version = "1.1.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4259cbe96513d2f1073027a259fc2ca917feb3026a5a8d984e3628e490255cc0" +checksum = "50f1c3703dd33532d7f0ca049168930e9099ecac238e23cf932f3a69c42f06da" dependencies = [ - "extend", "serde", "serde_json", ] @@ -99,11 +98,10 @@ checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" [[package]] name = "bincode" -version = "1.3.1" +version = "1.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f30d3a39baa26f9651f17b375061f3233dde33424a8b72b0dbe93a68a0bc896d" +checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" dependencies = [ - "byteorder", "serde", ] @@ -326,9 +324,9 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dca26ee1f8d361640700bde38b2c37d8c22b3ce2d360e1fc1c74ea4b0aa7d775" +checksum = "06ed27e177f16d65f0f0c22a213e17c696ace5dd64b14258b52f9417ccb52db4" dependencies = [ "cfg-if 1.0.0", "crossbeam-utils", @@ -393,9 +391,9 @@ dependencies = [ [[package]] name = "ctrlc" -version = "3.1.8" +version = "3.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c15b8ec3b5755a188c141c1f6a98e76de31b936209bf066b647979e2a84764a9" +checksum = "232295399409a8b7ae41276757b5a1cc21032848d42bff2352261f958b3ca29a" dependencies = [ "nix", "winapi 0.3.9", @@ -449,9 +447,9 @@ checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" [[package]] name = "dtoa" -version = "0.4.7" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88d7ed2934d741c6b37e33e3832298e8850b53fd2d2bea03873375596c7cea4e" +checksum = "56899898ce76aaf4a0f24d914c97ea6ed976d42fec6ad33fcbb0a1103e07b2b0" [[package]] name = "either" @@ -461,9 +459,9 @@ checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" [[package]] name = "elasticlunr-rs" -version = "2.3.10" +version = "2.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2956be6157a27c2155b59ea773612cb200ee239b9a510a622cc7274156a38b3e" +checksum = "959fbc9a6ebced545cbe365fdce5e25c6ab7683f2ca4ecc9fb9d0db663bf73d5" dependencies = [ "jieba-rs", "lazy_static", @@ -560,18 +558,6 @@ dependencies = [ "toml", ] -[[package]] -name = "extend" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f47da3a72ec598d9c8937a7ebca8962a5c7a1f28444e38c2b33c771ba3f55f05" -dependencies = [ - "proc-macro-error", - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "fake-simd" version = "0.1.2" @@ -682,30 +668,30 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c2dd2df839b57db9ab69c2c9d8f3e8c81984781937fe2807dc6dcf3b2ad2939" +checksum = "ce79c6a52a299137a6013061e0cf0e688fce5d7f1bc60125f520912fdb29ec25" dependencies = [ "futures-core", ] [[package]] name = "futures-core" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15496a72fabf0e62bdc3df11a59a3787429221dd0710ba8ef163d6f7a9112c94" +checksum = "098cd1c6dda6ca01650f1a37a794245eb73181d0d4d4e955e2f3c37db7af1815" [[package]] name = "futures-io" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71c2c65c57704c32f5241c1223167c2c3294fd34ac020c807ddbe6db287ba59" +checksum = "365a1a1fb30ea1c03a830fdb2158f5236833ac81fa0ad12fe35b29cddc35cb04" [[package]] name = "futures-macro" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea405816a5139fb39af82c2beb921d52143f556038378d6db21183a5c37fbfb7" +checksum = "668c6733a182cd7deb4f1de7ba3bf2120823835b3bcfbeacf7d2c4a773c1bb8b" dependencies = [ "proc-macro-hack", "proc-macro2", @@ -715,21 +701,21 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85754d98985841b7d4f5e8e6fbfa4a4ac847916893ec511a2917ccd8525b8bb3" +checksum = "5c5629433c555de3d82861a7a4e3794a4c40040390907cfbfd7143a92a426c23" [[package]] name = "futures-task" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa189ef211c15ee602667a6fcfe1c1fd9e07d42250d2156382820fba33c9df80" +checksum = "ba7aa51095076f3ba6d9a1f702f74bd05ec65f555d70d2033d55ba8d69f581bc" [[package]] name = "futures-util" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1812c7ab8aedf8d6f2701a43e1243acdbcc2b36ab26e2ad421eb99ac963d96d1" +checksum = "3c144ad54d60f23927f0a6b6d816e4271278b64f005ad65e4e35291d2de9c025" dependencies = [ "futures-core", "futures-io", @@ -796,9 +782,9 @@ dependencies = [ [[package]] name = "gif" -version = "0.11.1" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02efba560f227847cb41463a7395c514d127d4f74fff12ef0137fff1b84b96c4" +checksum = "5a668f699973d0f573d15749b7002a9ac9e1f9c6b220e7b165601334c173d8de" dependencies = [ "color_quant", "weezl", @@ -836,9 +822,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d832b01df74254fe364568d6ddc294443f61cbec82816b60904303af87efae78" +checksum = "fc018e188373e2777d0ef2467ebff62a08e66c3f5857b23c8fbec3018210dc00" dependencies = [ "bytes 1.0.1", "fnv", @@ -903,9 +889,9 @@ dependencies = [ [[package]] name = "http" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7245cd7449cc792608c3c8a9eaf69bd4eabbabf802713748fd739c98b82f0747" +checksum = "527e8c9ac747e28542699a951517aa9a6945af506cd1f2e1b53a576c17b6cc11" dependencies = [ "bytes 1.0.1", "fnv", @@ -925,9 +911,9 @@ dependencies = [ [[package]] name = "httparse" -version = "1.3.5" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "615caabe2c3160b313d52ccc905335f4ed5f10881dd63dc5699d47e90be85691" +checksum = "4a1ce40d6fc9764887c2fdc7305c3dcc429ba11ff981c1509416afd5697e4437" [[package]] name = "httpdate" @@ -943,9 +929,9 @@ checksum = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" [[package]] name = "hyper" -version = "0.14.4" +version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8e946c2b1349055e0b72ae281b238baf1a3ea7307c7e9f9d64673bdd9c26ac7" +checksum = "8bf09f61b52cfcf4c00de50df88ae423d6c02354e385a86341133b5338630ad1" dependencies = [ "bytes 1.0.1", "futures-channel", @@ -982,9 +968,9 @@ dependencies = [ [[package]] name = "idna" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89829a5d69c23d348314a7ac337fe39173b61149a9864deabd260983aed48c21" +checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8" dependencies = [ "matches", "unicode-bidi", @@ -1109,9 +1095,9 @@ dependencies = [ [[package]] name = "jobserver" -version = "0.1.21" +version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c71313ebb9439f74b00d9d2dcec36440beaf57a6aa0623068441dd7cd81a7f2" +checksum = "972f5ae5d1cb9c6ae417789196c803205313edde988685da5e3aae0827b9e7fd" dependencies = [ "libc", ] @@ -1127,9 +1113,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.49" +version = "0.3.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc15e39392125075f60c95ba416f5381ff6c3a948ff02ab12464715adf56c821" +checksum = "2d99f9e3e84b8f67f846ef5b4cbbc3b1c29f6c759fcbce6f01aa0e73d932a24c" dependencies = [ "wasm-bindgen", ] @@ -1164,9 +1150,9 @@ checksum = "73a004f877f468548d8d0ac4977456a249d8fabbdb8416c36db163dfc8f2e8ca" [[package]] name = "lexical-core" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21f866863575d0e1d654fbeeabdc927292fdf862873dc3c96c6f753357e13374" +checksum = "6607c62aa161d23d17a9072cc5da0be67cdfc89d3afb1e8d9c842bebc2525ffe" dependencies = [ "arrayvec", "bitflags", @@ -1186,9 +1172,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.90" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba4aede83fc3617411dc6993bc8c70919750c1c257c6ca6a502aed6e0e2394ae" +checksum = "9385f66bf6105b241aa65a61cb923ef20efc665cb9f9bb50ac2f0c4b7f378d41" [[package]] name = "library" @@ -1335,16 +1321,13 @@ checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d" [[package]] name = "markup5ever" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aae38d669396ca9b707bfc3db254bc382ddb94f57cc5c235f34623a669a01dab" +checksum = "a24f40fb03852d1cdd84330cddcaf98e9ec08a7b7768e952fad3b4cf048ec8fd" dependencies = [ "log", "phf", "phf_codegen", - "serde", - "serde_derive", - "serde_json", "string_cache", "string_cache_codegen", "tendril", @@ -1376,9 +1359,9 @@ checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525" [[package]] name = "memoffset" -version = "0.6.1" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "157b4208e3059a8f9e78d559edc658e13df41410cb3ae03979c83130067fdd87" +checksum = "f83fb6581e8ed1f85fd45c116db8405483899489e38406156c25eb743554361d" dependencies = [ "autocfg", ] @@ -1401,9 +1384,9 @@ dependencies = [ [[package]] name = "minify-html" -version = "0.4.3" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36da88423dea166b1506fb795e61294f47bbb09ceaa619a536a8d237bb2c296d" +checksum = "7fa8fd7a3c8708c45ac106752e7dc157854ebcd4e379ddb0db64fc6c1ef92b6b" dependencies = [ "aho-corasick", "lazy_static", @@ -1450,13 +1433,13 @@ dependencies = [ [[package]] name = "mio" -version = "0.7.10" +version = "0.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2182a122f3b7f3f5329cb1972cee089ba2459a0a80a56935e6e674f096f8d839" +checksum = "cf80d3e903b34e0bd7282b218398aec54e082c840d9baf8339e0080a0c542956" dependencies = [ "libc", "log", - "miow 0.3.6", + "miow 0.3.7", "ntapi", "winapi 0.3.9", ] @@ -1487,19 +1470,18 @@ dependencies = [ [[package]] name = "miow" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a33c1b55807fbed163481b5ba66db4b2fa6cde694a5027be10fb724206c5897" +checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21" dependencies = [ - "socket2", "winapi 0.3.9", ] [[package]] name = "mockito" -version = "0.29.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "102f0986ade96028c3227fc14fcbbbee0358ca33b3fedc9a400a97a6f5ad4a6e" +checksum = "d10030163d67f681db11810bc486df3149e6d91c8b4f3f96fa8b62b546c2cef8" dependencies = [ "assert-json-diff", "colored", @@ -1611,9 +1593,9 @@ dependencies = [ [[package]] name = "notify" -version = "4.0.15" +version = "4.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80ae4a7688d1fab81c5bf19c64fc8db920be8d519ce6336ed4e7efe024724dbd" +checksum = "2599080e87c9bd051ddb11b10074f4da7b1223298df65d4c2ec5bcf309af1533" dependencies = [ "bitflags", "filetime", @@ -1729,9 +1711,9 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] name = "open" -version = "1.6.0" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7e9f1bdf15cd1f5a00cc9002a733a6ee6d0ff562491852d59652471c4a389f7" +checksum = "1711eb4b31ce4ad35b0f316d8dfba4fe5c7ad601c448446d84aae7a896627b20" dependencies = [ "which", "winapi 0.3.9", @@ -1841,18 +1823,18 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.0.5" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96fa8ebb90271c4477f144354485b8068bd8f6b78b428b01ba892ca26caf0b63" +checksum = "c7509cc106041c40a4518d2af7a61530e1eed0e6285296a3d8c5472806ccc4a4" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.0.5" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "758669ae3558c6f74bd2a18b41f7ac0b5a195aea6639d6a9b5e5d1ad5ba24c0b" +checksum = "48c950132583b500556b1efd71d45b319029f2b71518d979fcc208e16b42426f" dependencies = [ "proc-macro2", "quote", @@ -1915,30 +1897,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" -[[package]] -name = "proc-macro-error" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" -dependencies = [ - "proc-macro-error-attr", - "proc-macro2", - "quote", - "syn", - "version_check", -] - -[[package]] -name = "proc-macro-error-attr" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" -dependencies = [ - "proc-macro2", - "quote", - "version_check", -] - [[package]] name = "proc-macro-hack" version = "0.5.19" @@ -1953,9 +1911,9 @@ checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086" [[package]] name = "proc-macro2" -version = "1.0.24" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71" +checksum = "a152013215dca273577e18d2bf00fa862b89b24169fb78c4c95aeb07992c9cec" dependencies = [ "unicode-xid", ] @@ -2104,9 +2062,9 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94341e4e44e24f6b591b59e47a8a027df12e008d73fd5672dbea9cc22f4507d9" +checksum = "8270314b5ccceb518e7e578952f0b72b88222d02e8f77f5ecf7abbb673539041" dependencies = [ "bitflags", ] @@ -2182,9 +2140,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf12057f289428dbf5c591c74bf10392e4a8003f993405a902f20117019022d4" +checksum = "2296f2fac53979e8ccbc4a1136b25dcefd37be9ed7e4a1f6b05a6029c84ff124" dependencies = [ "base64", "bytes 1.0.1", @@ -2251,9 +2209,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.19.0" +version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "064fd21ff87c6e87ed4506e68beb42459caa4a0e2eb144932e6776768556980b" +checksum = "35edb675feee39aec9c99fa5ff985081995a06d594114ae14cbe797ad7b7a6d7" dependencies = [ "base64", "log", @@ -2319,9 +2277,9 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" [[package]] name = "sct" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3042af939fca8c3453b7af0f1c66e533a15a86169e39de2657310ade8f98d3c" +checksum = "b362b83898e0e69f38515b82ee15aa80636befe47c3b6d3d89a911e78fc228ce" dependencies = [ "ring", "untrusted", @@ -2341,18 +2299,18 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.124" +version = "1.0.125" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd761ff957cb2a45fbb9ab3da6512de9de55872866160b23c25f1a841e99d29f" +checksum = "558dc50e1a5a5fa7112ca2ce4effcb321b0300c0d4ccf0776a9f60cd89031171" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.124" +version = "1.0.125" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1800f7693e94e186f5e25a28291ae1570da908aff7d97a095dec1e56ff99069b" +checksum = "b093b7a2bb58203b5da3056c05b4ec1fed827dcfdb37347a8841695263b3d06d" dependencies = [ "proc-macro2", "quote", @@ -2456,9 +2414,9 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" +checksum = "f173ac3d1a7e3b28003f40de0b5ce7fe2710f9b9dc3fc38664cebee46b3b6527" [[package]] name = "slotmap" @@ -2483,11 +2441,10 @@ checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e" [[package]] name = "socket2" -version = "0.3.19" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e" +checksum = "9e3dfc207c526015c632472a77be09cf1b6e46866581aecae5cc38fb4235dea2" dependencies = [ - "cfg-if 1.0.0", "libc", "winapi 0.3.9", ] @@ -2567,9 +2524,9 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.64" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fd9d1e9976102a03c542daa2eff1b43f9d72306342f3f8b3ed5fb8908195d6f" +checksum = "48fe99c6bd8b1cc636890bcc071842de909d902c81ac7dab53ba33c421ab8ffb" dependencies = [ "proc-macro2", "quote", @@ -2650,9 +2607,9 @@ dependencies = [ [[package]] name = "tera" -version = "1.7.0" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cb278a72e426f291faf182cb0e0cb7d20241e8e9881046724ac874a83c62346" +checksum = "2617ab2fb1de8587a988a761692e59895438bebf404725d4f2123251f60bf23e" dependencies = [ "chrono", "chrono-tz", @@ -2701,26 +2658,6 @@ dependencies = [ "unicode-width", ] -[[package]] -name = "thiserror" -version = "1.0.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0f4a65597094d4483ddaed134f409b2cb7c1beccf25201a9f73c719254fa98e" -dependencies = [ - "thiserror-impl", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7765189610d8241a44529806d6fd1f2e0a08734313a35d5b3a556f92b381f3c0" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "thread_local" version = "1.1.3" @@ -2759,9 +2696,9 @@ checksum = "29738eedb4388d9ea620eeab9384884fc3f06f586a2eddb56bedc5885126c7c1" [[package]] name = "tinyvec" -version = "1.1.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "317cca572a0e89c3ce0ca1f1bdc9369547fe318a683418e42ac8f59d14701023" +checksum = "5b5220f05bb7de7f3f53c7c065e1199b3172696fe2db9f9c4d8ad9b4ee74c342" dependencies = [ "tinyvec_macros", ] @@ -2774,15 +2711,15 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "134af885d758d645f0f0505c9a8b3f9bf8a348fd822e112ab5248138348f1722" +checksum = "83f0c8e7c0addab50b663055baf787d0af7f413a46e6e7fb9559a4e4db7137a5" dependencies = [ "autocfg", "bytes 1.0.1", "libc", "memchr", - "mio 0.7.10", + "mio 0.7.11", "num_cpus", "pin-project-lite", ] @@ -2800,9 +2737,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.6.5" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5143d049e85af7fbc36f5454d990e62c2df705b3589f123b71f441b6b59f443f" +checksum = "940a12c99365c31ea8dd9ba04ec1be183ffe4920102bb7122c2f515437601e8e" dependencies = [ "bytes 1.0.1", "futures-core", @@ -2944,9 +2881,9 @@ dependencies = [ [[package]] name = "unicode-bidi" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" +checksum = "eeb8be209bb1c96b7c177c7420d26e04eccacb0eeae6b980e35fcb74678107e0" dependencies = [ "matches", ] @@ -2998,9 +2935,9 @@ dependencies = [ [[package]] name = "utf-8" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05e42f7c18b8f902290b009cde6d651262f956c98bc51bca4cd1d511c9cd85c7" +checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" [[package]] name = "utf8-ranges" @@ -3039,9 +2976,9 @@ checksum = "5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe" [[package]] name = "walkdir" -version = "2.3.1" +version = "2.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "777182bc735b6424e1a57516d35ed72cb8019d85c8c9bf536dccb3445c1a2f7d" +checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" dependencies = [ "same-file", "winapi 0.3.9", @@ -3072,9 +3009,9 @@ checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" [[package]] name = "wasm-bindgen" -version = "0.2.72" +version = "0.2.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fe8f61dba8e5d645a4d8132dc7a0a66861ed5e1045d2c0ed940fab33bac0fbe" +checksum = "83240549659d187488f91f33c0f8547cbfef0b2088bc470c116d1d260ef623d9" dependencies = [ "cfg-if 1.0.0", "serde", @@ -3084,9 +3021,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.72" +version = "0.2.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "046ceba58ff062da072c7cb4ba5b22a37f00a302483f7e2a6cdc18fedbdc1fd3" +checksum = "ae70622411ca953215ca6d06d3ebeb1e915f0f6613e3b495122878d7ebec7dae" dependencies = [ "bumpalo", "lazy_static", @@ -3099,9 +3036,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.22" +version = "0.4.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73157efb9af26fb564bb59a009afd1c7c334a44db171d280690d0c3faaec3468" +checksum = "81b8b767af23de6ac18bf2168b690bed2902743ddf0fb39252e36f9e2bfc63ea" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -3111,9 +3048,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.72" +version = "0.2.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ef9aa01d36cda046f797c57959ff5f3c615c9cc63997a8d545831ec7976819b" +checksum = "3e734d91443f177bfdb41969de821e15c516931c3c3db3d318fa1b68975d0f6f" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -3121,9 +3058,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.72" +version = "0.2.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96eb45c1b2ee33545a813a92dbb53856418bf7eb54ab34f7f7ff1448a5b3735d" +checksum = "d53739ff08c8a68b0fdbcd54c372b8ab800b1449ab3c9d706503bc7dd1621b2c" dependencies = [ "proc-macro2", "quote", @@ -3134,15 +3071,15 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.72" +version = "0.2.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7148f4696fb4960a346eaa60bbfb42a1ac4ebba21f750f75fc1375b098d5ffa" +checksum = "d9a543ae66aa233d14bb765ed9af4a33e81b8b58d1584cf1b47ff8cd0b9e4489" [[package]] name = "web-sys" -version = "0.3.49" +version = "0.3.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59fe19d70f5dacc03f6e46777213facae5ac3801575d56ca6cbd4c93dcd12310" +checksum = "a905d57e488fec8861446d3393670fb50d27a262344013181c2cdf9fff5481be" dependencies = [ "js-sys", "wasm-bindgen", @@ -3170,27 +3107,27 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.21.0" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82015b7e0b8bad8185994674a13a93306bea76cf5a16c5a181382fd3a5ec2376" +checksum = "aabe153544e473b775453675851ecc86863d2a81d786d741f6b76778f2a48940" dependencies = [ "webpki", ] [[package]] name = "weezl" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a32b378380f4e9869b22f0b5177c68a5519f03b3454fde0b291455ddbae266c" +checksum = "d8b77fdfd5a253be4ab714e4ffa3c49caf146b4de743e97510c0656cf90f1e8e" [[package]] name = "which" -version = "4.0.2" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87c14ef7e1b8b8ecfc75d5eca37949410046e66f15d185c01d70824f1f8111ef" +checksum = "b55551e42cbdf2ce2bedd2203d0cc08dba002c27510f86dab6d0ce304cba3dfe" dependencies = [ + "either", "libc", - "thiserror", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 6d47846b..068948ff 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -67,3 +67,8 @@ members = [ [profile.release] lto = true codegen-units = 1 + +[profile.dev] +# Disabling debug info speeds up builds a bunch, +# and we don't rely on it for debugging that much. +debug = 0 diff --git a/components/link_checker/Cargo.toml b/components/link_checker/Cargo.toml index 523484aa..be10bd50 100644 --- a/components/link_checker/Cargo.toml +++ b/components/link_checker/Cargo.toml @@ -16,4 +16,4 @@ default-features = false features = ["blocking", "rustls-tls"] [dev-dependencies] -mockito = "0.29" +mockito = "0.30" diff --git a/components/templates/Cargo.toml b/components/templates/Cargo.toml index 09c112c7..d3e4fe23 100644 --- a/components/templates/Cargo.toml +++ b/components/templates/Cargo.toml @@ -30,4 +30,4 @@ default-features = false features = ["blocking", "rustls-tls"] [dev-dependencies] -mockito = "0.29" +mockito = "0.30" diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 851b1178..189ce537 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -126,15 +126,15 @@ impl DataSource { fn get_cache_key( &self, format: &OutputFormat, - method_arg: Option, - method_post_body: Option, - method_post_contenttype: Option, + method: Method, + post_body: Option, + post_content_type: Option, ) -> u64 { let mut hasher = DefaultHasher::new(); format.hash(&mut hasher); - method_arg.hash(&mut hasher); - method_post_body.hash(&mut hasher); - method_post_contenttype.hash(&mut hasher); + method.hash(&mut hasher); + post_body.hash(&mut hasher); + post_content_type.hash(&mut hasher); self.hash(&mut hasher); hasher.finish() } @@ -271,7 +271,7 @@ impl TeraFn for LoadData { let file_format = get_output_format_from_args(&args, &data_source)?; let cache_key = data_source.get_cache_key( &file_format, - method_arg, + method, post_body_arg.clone(), post_content_type.clone(), ); @@ -300,7 +300,7 @@ impl TeraFn for LoadData { } Err(_) => { return Err(format!( - "{} is an illegal contenttype", + "{} is an illegal content type", &content_type ) .into()); @@ -484,6 +484,7 @@ mod tests { use std::collections::HashMap; use std::path::PathBuf; + use crate::global_fns::load_data::Method; use mockito::mock; use serde_json::json; use tera::{to_value, Function}; @@ -638,47 +639,30 @@ mod tests { // We can't test against a fixed value, due to the fact the cache key is built from the absolute path let cache_key = DataSource::Path(get_test_file("test.toml")).get_cache_key( &OutputFormat::Toml, - None, + Method::Get, None, None, ); let cache_key_2 = DataSource::Path(get_test_file("test.toml")).get_cache_key( &OutputFormat::Toml, - None, + Method::Get, None, None, ); assert_eq!(cache_key, cache_key_2); } - #[test] - fn calculates_cache_key_for_url() { - let _m = mock("GET", "/kr1zdgbm4y") - .with_header("content-type", "text/plain") - .with_body("Test") - .create(); - - let url = format!("{}{}", mockito::server_url(), "/kr1zdgbm4y"); - let cache_key = DataSource::Url(url.parse().unwrap()).get_cache_key( - &OutputFormat::Plain, - None, - None, - None, - ); - assert_eq!(cache_key, 16044537454280534951); - } - #[test] fn different_cache_key_per_filename() { let toml_cache_key = DataSource::Path(get_test_file("test.toml")).get_cache_key( &OutputFormat::Toml, - None, + Method::Get, None, None, ); let json_cache_key = DataSource::Path(get_test_file("test.json")).get_cache_key( &OutputFormat::Toml, - None, + Method::Get, None, None, ); @@ -689,13 +673,13 @@ mod tests { fn different_cache_key_per_format() { let toml_cache_key = DataSource::Path(get_test_file("test.toml")).get_cache_key( &OutputFormat::Toml, - None, + Method::Get, None, None, ); let json_cache_key = DataSource::Path(get_test_file("test.toml")).get_cache_key( &OutputFormat::Json, - None, + Method::Get, None, None, ); @@ -951,7 +935,7 @@ mod tests { args.insert("url".to_string(), to_value(&url).unwrap()); args.insert("format".to_string(), to_value("plain").unwrap()); args.insert("method".to_string(), to_value("post").unwrap()); - args.insert("contenttype".to_string(), to_value("text/plain").unwrap()); + args.insert("content_type".to_string(), to_value("text/plain").unwrap()); args.insert("body".to_string(), to_value("this is a match").unwrap()); let result = static_fn.call(&args); assert!(result.is_ok()); @@ -960,7 +944,7 @@ mod tests { args2.insert("url".to_string(), to_value(&url).unwrap()); args2.insert("format".to_string(), to_value("plain").unwrap()); args2.insert("method".to_string(), to_value("post").unwrap()); - args2.insert("contenttype".to_string(), to_value("text/plain").unwrap()); + args2.insert("content_type".to_string(), to_value("text/plain").unwrap()); args2.insert("body".to_string(), to_value("this is a match2").unwrap()); let result2 = static_fn.call(&args2); assert!(result2.is_ok()); @@ -983,7 +967,7 @@ mod tests { args.insert("url".to_string(), to_value(&url).unwrap()); args.insert("format".to_string(), to_value("plain").unwrap()); args.insert("method".to_string(), to_value("post").unwrap()); - args.insert("contenttype".to_string(), to_value("text/plain").unwrap()); + args.insert("content_type".to_string(), to_value("text/plain").unwrap()); args.insert("body".to_string(), to_value("this is a match").unwrap()); let result = static_fn.call(&args); assert!(result.is_ok()); @@ -992,7 +976,7 @@ mod tests { args2.insert("url".to_string(), to_value(&url).unwrap()); args2.insert("format".to_string(), to_value("plain").unwrap()); args2.insert("method".to_string(), to_value("post").unwrap()); - args2.insert("contenttype".to_string(), to_value("text/plain").unwrap()); + args2.insert("content_type".to_string(), to_value("text/plain").unwrap()); args2.insert("body".to_string(), to_value("this is a match").unwrap()); let result2 = static_fn.call(&args2); assert!(result2.is_ok()); diff --git a/docs/content/documentation/templates/overview.md b/docs/content/documentation/templates/overview.md index 166bbad1..db17018d 100644 --- a/docs/content/documentation/templates/overview.md +++ b/docs/content/documentation/templates/overview.md @@ -342,9 +342,9 @@ as below. When no other parameters are specified the URL will always be retrieved using a HTTP GET request. Using the parameter `method`, since version 0.14.0, you can also choose to retrieve the URL using a POST request. -When using `method="POST"` you can also use the parameters `body` and `contenttype`. +When using `method="POST"` you can also use the parameters `body` and `content_type`. The parameter body is the actual contents sent in the POST request. -The parameter contenttype should be the mimetype of the body. +The parameter `content_type` should be the mimetype of the body. This example will make a POST request to the kroki service to generate a SVG. From 4f6528cf37bc325f6b50caddb61f479b5ebd71b4 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 26 Apr 2021 09:23:28 +0200 Subject: [PATCH 056/113] Allow whitespace on the same line as closing front-matter chars --- components/front_matter/src/lib.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/components/front_matter/src/lib.rs b/components/front_matter/src/lib.rs index a8e46127..e343e649 100644 --- a/components/front_matter/src/lib.rs +++ b/components/front_matter/src/lib.rs @@ -13,10 +13,10 @@ pub use section::SectionFrontMatter; lazy_static! { static ref TOML_RE: Regex = - Regex::new(r"^[[:space:]]*\+\+\+(\r?\n(?s).*?(?-s))\+\+\+(?:$|(?:\r?\n((?s).*(?-s))$))") + Regex::new(r"^[[:space:]]*\+\+\+(\r?\n(?s).*?(?-s))\+\+\+[[:space:]]*(?:$|(?:\r?\n((?s).*(?-s))$))") .unwrap(); static ref YAML_RE: Regex = - Regex::new(r"^[[:space:]]*---(\r?\n(?s).*?(?-s))---(?:$|(?:\r?\n((?s).*(?-s))$))").unwrap(); + Regex::new(r"^[[:space:]]*---(\r?\n(?s).*?(?-s))---[[:space:]]*(?:$|(?:\r?\n((?s).*(?-s))$))").unwrap(); } pub enum RawFrontMatter<'a> { From 80843cdeffae41daa43da7c2b6af968ab95cf3c0 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 26 Apr 2021 09:24:24 +0200 Subject: [PATCH 057/113] u16 for anchor levels Closes #1436 --- components/rendering/src/markdown.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index 5929e1fe..e4760332 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -51,7 +51,7 @@ impl HeadingRef { // for example an article could have several titles named Example // We add a counter after the slug if the slug is already present, which // means we will have example, example-1, example-2 etc -fn find_anchor(anchors: &[String], name: String, level: u8) -> String { +fn find_anchor(anchors: &[String], name: String, level: u16) -> String { if level == 0 && !anchors.contains(&name) { return name; } From 84fb2f30f32815b112b71a937ce277cfd7d36e1e Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 5 May 2021 19:35:57 +0200 Subject: [PATCH 058/113] Mention WSL2 filesystem From #1440 --- docs/content/documentation/getting-started/cli-usage.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/content/documentation/getting-started/cli-usage.md b/docs/content/documentation/getting-started/cli-usage.md index 1cc25ddc..b7b9d3d1 100644 --- a/docs/content/documentation/getting-started/cli-usage.md +++ b/docs/content/documentation/getting-started/cli-usage.md @@ -91,12 +91,11 @@ $ zola serve --open ``` The serve command will watch all your content and provide live reload without -a hard refresh if possible. +a hard refresh if possible. If you are using WSL2 on Windows, make sure to store the website on the WSL file system. Some changes cannot be handled automatically and thus live reload may not always work. If you fail to see your change or get an error, try restarting `zola serve`. - You can also point to a config file other than `config.toml` like so (note that the position of the `config` option is important): ```bash From 10c1739c62c5ff45b5625e130128dc4e2b428d65 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 5 May 2021 21:36:56 +0200 Subject: [PATCH 059/113] Update pinned MSRV --- Cargo.lock | 92 +++++++++---------- azure-pipelines.yml | 2 +- .../getting-started/installation.md | 2 +- 3 files changed, 48 insertions(+), 48 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 00698a16..c317d575 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -20,9 +20,9 @@ checksum = "e8fd72866655d1904d6b0997d0b07ba561047d070fbe29de039031c641b61217" [[package]] name = "aho-corasick" -version = "0.7.15" +version = "0.7.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7404febffaa47dac81aa44dba71523c9d069b1bdc50a77db41195149e17f68e5" +checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f" dependencies = [ "memchr", ] @@ -143,9 +143,9 @@ dependencies = [ [[package]] name = "bstr" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a40b47ad93e1a5404e6c18dec46b628214fee441c70f4ab5d6942142cc268a3d" +checksum = "90682c8d613ad3373e66de8c6411e0ae2ab2571e879d2efbf73558cc66f21279" dependencies = [ "lazy_static", "memchr", @@ -308,10 +308,10 @@ dependencies = [ ] [[package]] -name = "cpuid-bool" -version = "0.1.2" +name = "cpufeatures" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8aebca1129a03dc6dc2b127edd729435bbc4a37e1d5f4d7513165089ceb02634" +checksum = "5cd5a7748210e7ec1a9696610b1015e6e31fbf58f77a160801f124bd1c36592a" [[package]] name = "crc32fast" @@ -345,9 +345,9 @@ dependencies = [ [[package]] name = "crossbeam-epoch" -version = "0.9.3" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2584f639eb95fea8c798496315b297cf81b9b58b6d30ab066a75455333cf4b12" +checksum = "52fb27eab85b17fbb9f6fd667089e07d6a2eb8743d02639ee7f6a7a7729c9c94" dependencies = [ "cfg-if 1.0.0", "crossbeam-utils", @@ -358,9 +358,9 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7e9d99fa91428effe99c5c6d4634cdeba32b8cf784fc428a2a687f61a952c49" +checksum = "4feb231f0d4d6af81aed15928e58ecf5816aa62a2393e2c82f46973e92a9a278" dependencies = [ "autocfg", "cfg-if 1.0.0", @@ -822,9 +822,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc018e188373e2777d0ef2467ebff62a08e66c3f5857b23c8fbec3018210dc00" +checksum = "825343c4eef0b63f541f8903f395dc5beb362a979b5799a84062527ef1e37726" dependencies = [ "bytes 1.0.1", "fnv", @@ -917,9 +917,9 @@ checksum = "4a1ce40d6fc9764887c2fdc7305c3dcc429ba11ff981c1509416afd5697e4437" [[package]] name = "httpdate" -version = "0.3.2" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "494b4d60369511e7dea41cf646832512a94e542f68bb9c49e54518e0f468eb47" +checksum = "05842d0d43232b23ccb7060ecb0f0626922c21f30012e97b767b30afd4a5d4b9" [[package]] name = "humansize" @@ -929,9 +929,9 @@ checksum = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" [[package]] name = "hyper" -version = "0.14.5" +version = "0.14.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bf09f61b52cfcf4c00de50df88ae423d6c02354e385a86341133b5338630ad1" +checksum = "1e5f105c494081baa3bf9e200b279e27ec1623895cd504c7dbef8d0b080fcf54" dependencies = [ "bytes 1.0.1", "futures-channel", @@ -1172,9 +1172,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.93" +version = "0.2.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9385f66bf6105b241aa65a61cb923ef20efc665cb9f9bb50ac2f0c4b7f378d41" +checksum = "18794a8ad5b29321f790b55d93dfba91e125cb1a9edbd4f8e3150acc771c1a5e" [[package]] name = "library" @@ -1353,9 +1353,9 @@ checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" [[package]] name = "memchr" -version = "2.3.4" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525" +checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc" [[package]] name = "memoffset" @@ -2062,22 +2062,22 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.2.6" +version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8270314b5ccceb518e7e578952f0b72b88222d02e8f77f5ecf7abbb673539041" +checksum = "742739e41cd49414de871ea5e549afb7e2a3ac77b589bcbebe8c82fab37147fc" dependencies = [ "bitflags", ] [[package]] name = "regex" -version = "1.4.5" +version = "1.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "957056ecddbeba1b26965114e191d2e8589ce74db242b6ea25fc4062427a5c19" +checksum = "ce5f1ceb7f74abbce32601642fcf8e8508a8a8991e0621c7d750295b9095702b" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.6.23", + "regex-syntax 0.6.25", ] [[package]] @@ -2097,15 +2097,15 @@ checksum = "8e931c58b93d86f080c734bfd2bce7dd0079ae2331235818133c8be7f422e20e" [[package]] name = "regex-syntax" -version = "0.6.23" +version = "0.6.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d5f089152e60f62d28b835fbff2cd2e8dc0baf1ac13343bef92ab7eed84548" +checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b" [[package]] name = "relative-path" -version = "1.3.2" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65aff7c83039e88c1c0b4bedf8dfa93d6ec84d5fc2945b37c1fa4186f46c5f94" +checksum = "a479d53d7eed831f3c92ca79c61002d5987e21417d528296832f802bca532380" [[package]] name = "remove_dir_all" @@ -2367,13 +2367,13 @@ dependencies = [ [[package]] name = "sha2" -version = "0.9.3" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa827a14b29ab7f44778d14a88d3cb76e949c45083f7dbfa507d0cb699dc12de" +checksum = "d8f6b75b17576b792bef0db1bcc4b8b8bcdf9506744cf34b974195487af6cff2" dependencies = [ "block-buffer 0.9.0", "cfg-if 1.0.0", - "cpuid-bool", + "cpufeatures", "digest 0.9.0", "opaque-debug 0.3.0", ] @@ -2524,9 +2524,9 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.69" +version = "1.0.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48fe99c6bd8b1cc636890bcc071842de909d902c81ac7dab53ba33c421ab8ffb" +checksum = "a1e8cdbefb79a9a5a65e0db8b47b723ee907b7c7f8496c76a1770b5c310bab82" dependencies = [ "proc-macro2", "quote", @@ -2547,7 +2547,7 @@ dependencies = [ "lazycell", "onig", "plist", - "regex-syntax 0.6.23", + "regex-syntax 0.6.25", "serde", "serde_derive", "serde_json", @@ -2607,9 +2607,9 @@ dependencies = [ [[package]] name = "tera" -version = "1.7.1" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2617ab2fb1de8587a988a761692e59895438bebf404725d4f2123251f60bf23e" +checksum = "b64b021b8d3ab1f59ceae9e6cd1c26c8e7ce0322a9ebfff6c0e22b3b66938935" dependencies = [ "chrono", "chrono-tz", @@ -2766,9 +2766,9 @@ checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6" [[package]] name = "tracing" -version = "0.1.25" +version = "0.1.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01ebdc2bb4498ab1ab5f5b73c5803825e60199229ccba0698170e3be0e7f959f" +checksum = "09adeb8c97449311ccd28a427f96fb563e7fd31aabf994189879d9da2394b89d" dependencies = [ "cfg-if 1.0.0", "pin-project-lite", @@ -2777,9 +2777,9 @@ dependencies = [ [[package]] name = "tracing-core" -version = "0.1.17" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f50de3927f93d202783f4513cda820ab47ef17f624b03c096e86ef00c67e6b5f" +checksum = "a9ff14f98b1a4b289c6248a023c1c2fa1491062964e9fed67ab29c4e4da4a052" dependencies = [ "lazy_static", ] @@ -2911,9 +2911,9 @@ checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" [[package]] name = "unicode-xid" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564" +checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" [[package]] name = "untrusted" @@ -3087,9 +3087,9 @@ dependencies = [ [[package]] name = "webp" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea1f2bd35e46165ef40a7fd74f33f64f2912ad92593fbfc5ec75eb2604cfd7b5" +checksum = "9d5036becfc554b3177bc655503a1ce26a34c9257edcb1ae2e18900341f943d4" dependencies = [ "image", "libwebp-sys", diff --git a/azure-pipelines.yml b/azure-pipelines.yml index a43732b4..6e14da3c 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -21,7 +21,7 @@ stages: rustup_toolchain: stable linux-pinned: imageName: 'ubuntu-20.04' - rustup_toolchain: 1.45.2 + rustup_toolchain: 1.46.0 pool: vmImage: $(imageName) steps: diff --git a/docs/content/documentation/getting-started/installation.md b/docs/content/documentation/getting-started/installation.md index 0f09748b..a0f48495 100644 --- a/docs/content/documentation/getting-started/installation.md +++ b/docs/content/documentation/getting-started/installation.md @@ -77,7 +77,7 @@ $ choco install zola Zola does not work in PowerShell ISE. ## From source -To build Zola from source, you will need to have Git, [Rust (at least 1.45) and Cargo](https://www.rust-lang.org/) +To build Zola from source, you will need to have Git, [Rust (at least 1.46) and Cargo](https://www.rust-lang.org/) installed. You will also need to meet additional dependencies to compile [libsass](https://github.com/sass/libsass): - OSX, Linux and other Unix-like operating systems: `make` (`gmake` on BSDs), `g++`, `libssl-dev` From b2adfae4bc1bc31628d33aa15a188f8a783363a0 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 5 May 2021 21:55:29 +0200 Subject: [PATCH 060/113] Add Zig highlighting Closes #1370 --- .gitmodules | 3 +++ CONTRIBUTING.md | 2 +- .../content/syntax-highlighting.md | 2 ++ sublime/syntaxes/extra/sublime-zig-language | 1 + sublime/syntaxes/newlines.packdump | Bin 614774 -> 616851 bytes 5 files changed, 7 insertions(+), 1 deletion(-) create mode 160000 sublime/syntaxes/extra/sublime-zig-language diff --git a/.gitmodules b/.gitmodules index 5b033dde..cd1bbfc7 100644 --- a/.gitmodules +++ b/.gitmodules @@ -70,3 +70,6 @@ [submodule "sublime/syntaxes/extra/sublime-clojure"] path = sublime/syntaxes/extra/sublime-clojure url = https://github.com/tonsky/sublime-clojure.git +[submodule "sublime/syntaxes/extra/sublime-zig-language"] + path = sublime/syntaxes/extra/sublime-zig-language + url = https://github.com/ziglang/sublime-zig-language.git diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6a9fdbe1..2997c0c2 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -35,7 +35,7 @@ Tools > Developer > New Syntax from ... and put it at the root of `sublime_synta You can also add a submodule to the repository of the wanted syntax: ```bash -$ cd sublime/syntaxes +$ cd sublime/syntaxes/extra $ git submodule add https://github.com/elm-community/SublimeElmLanguageSupport ``` diff --git a/docs/content/documentation/content/syntax-highlighting.md b/docs/content/documentation/content/syntax-highlighting.md index 1dde1c32..e35241b1 100644 --- a/docs/content/documentation/content/syntax-highlighting.md +++ b/docs/content/documentation/content/syntax-highlighting.md @@ -35,6 +35,7 @@ Here is a full list of supported languages and their short names: - C -> ["c", "h"] - C# -> ["cs", "csx"] - C++ -> ["C", "c++", "cc", "cp", "cpp", "cxx", "h", "h++", "hh", "hpp", "hxx", "inl", "ipp"] +- Clojure -> ["clj", "cljc", "cljs", "edn"] - ClojureC -> ["boot", "clj", "cljc", "cljs", "cljx"] - CMake -> ["CMakeLists.txt", "cmake"] - CMake C Header -> ["h.in"] @@ -143,6 +144,7 @@ Here is a full list of supported languages and their short names: - VimL -> ["vim"] - XML -> ["dtml", "opml", "rng", "rss", "svg", "tld", "xml", "xsd", "xslt"] - YAML -> ["sublime-syntax", "yaml", "yml"] +- Zig -> ["zig"] ``` Note: due to some issues with the JavaScript syntax, the TypeScript syntax will be used instead. diff --git a/sublime/syntaxes/extra/sublime-zig-language b/sublime/syntaxes/extra/sublime-zig-language new file mode 160000 index 00000000..9d208381 --- /dev/null +++ b/sublime/syntaxes/extra/sublime-zig-language @@ -0,0 +1 @@ +Subproject commit 9d2083815742ed703b07a25ad3573bec1214d554 diff --git a/sublime/syntaxes/newlines.packdump b/sublime/syntaxes/newlines.packdump index 646806bafc64d09d46fcfe9cd9a61c214c11b5cc..259015aebc936f1cdad3a20f7bd3d48f8c63a0d3 100644 GIT binary patch delta 495856 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%0Do}VTyO2!y;}r&?~%Fc`G*$~ulv5?SeS1hv%?Y> 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 z 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℘`UjSr1XafD> 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

Hello world

\n".to_string())); } + #[test] + fn strips_footnotes_in_summary() { + let config = Config::default(); + let content = r#" ++++ ++++ +This page has footnotes, here's one. [^1] + + + +And here's another. [^2] + +[^1]: This is the first footnote. + +[^2]: This is the second footnote."# + .to_string(); + let res = Page::parse(Path::new("hello.md"), &content, &config, &PathBuf::new()); + assert!(res.is_ok()); + let mut page = res.unwrap(); + page.render_markdown(&HashMap::default(), &Tera::default(), &config, InsertAnchor::None) + .unwrap(); + assert_eq!( + page.summary, + Some("

This page has footnotes, here\'s one.

\n".to_string()) + ); + } + #[test] fn page_with_assets_gets_right_info() { let tmp_dir = tempdir().expect("create temp dir"); From 1fab9c664d984d3be04237713c9179809d8fe6ad Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sun, 9 May 2021 15:57:44 +0200 Subject: [PATCH 062/113] Update slotmap + handle in memory XML content type in zola serve Second part of #1308 --- Cargo.lock | 26 ++++++++++++++++---------- components/library/Cargo.toml | 2 +- components/site/Cargo.toml | 2 +- src/cmd/serve.rs | 16 +++++++++++++--- 4 files changed, 31 insertions(+), 15 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c317d575..c2d913cd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -309,9 +309,12 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cd5a7748210e7ec1a9696610b1015e6e31fbf58f77a160801f124bd1c36592a" +checksum = "dec1028182c380cc45a2e2c5ec841134f2dfd0f8f5f0a5bcd68004f81b5efdf4" +dependencies = [ + "libc", +] [[package]] name = "crc32fast" @@ -900,9 +903,9 @@ dependencies = [ [[package]] name = "http-body" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfb77c123b4e2f72a2069aeae0b4b4949cc7e966df277813fc16347e7549737" +checksum = "60daa14be0e0786db0f03a9e57cb404c9d756eed2b6c62b9ea98ec5743ec75a9" dependencies = [ "bytes 1.0.1", "http", @@ -2071,9 +2074,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.5.3" +version = "1.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce5f1ceb7f74abbce32601642fcf8e8508a8a8991e0621c7d750295b9095702b" +checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461" dependencies = [ "aho-corasick", "memchr", @@ -2420,9 +2423,12 @@ checksum = "f173ac3d1a7e3b28003f40de0b5ce7fe2710f9b9dc3fc38664cebee46b3b6527" [[package]] name = "slotmap" -version = "0.4.0" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c46a3482db8f247956e464d783693ece164ca056e6e67563ee5505bdb86452cd" +checksum = "585cd5dffe4e9e06f6dfdf66708b70aca3f781bed561f4f667b2d9c0d4559e36" +dependencies = [ + "version_check", +] [[package]] name = "slug" @@ -2923,9 +2929,9 @@ checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" [[package]] name = "url" -version = "2.2.1" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ccd964113622c8e9322cfac19eb1004a07e636c545f325da085d5cdde6f1f8b" +checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c" dependencies = [ "form_urlencoded", "idna", diff --git a/components/library/Cargo.toml b/components/library/Cargo.toml index 81799616..bfaac903 100644 --- a/components/library/Cargo.toml +++ b/components/library/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Vincent Prouillet "] edition = "2018" [dependencies] -slotmap = "0.4" +slotmap = "1" rayon = "1" chrono = { version = "0.4", features = ["serde"] } tera = "1" diff --git a/components/site/Cargo.toml b/components/site/Cargo.toml index 0a69fd43..7ab0bb42 100644 --- a/components/site/Cargo.toml +++ b/components/site/Cargo.toml @@ -15,7 +15,7 @@ serde_derive = "1" sass-rs = "0.2" lazy_static = "1.1" relative-path = "1" -slotmap = "0.4" +slotmap = "1" url = "2" errors = { path = "../errors" } diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index 79681f10..724aff56 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -93,7 +93,7 @@ async fn handle_request(req: Request, mut root: PathBuf) -> Result Response { .expect("Could not build livereload.js response") } -fn in_memory_html(content: &str) -> Response { +fn in_memory_content(path: &RelativePathBuf, content: &str) -> Response { + let content_type = match path.extension() { + Some(ext) => { + match ext { + "xml" => "text/xml", + "json" => "application/json", + _ => "text/html", + } + }, + None => "text/html", + }; Response::builder() - .header(header::CONTENT_TYPE, "text/html") + .header(header::CONTENT_TYPE, content_type) .status(StatusCode::OK) .body(content.to_owned().into()) .expect("Could not build HTML response") From 5df6e034c43f0e389d33662b6e099ac7b7bd8eb9 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sun, 9 May 2021 23:03:19 +0200 Subject: [PATCH 063/113] Update MSRV --- azure-pipelines.yml | 2 +- docs/content/documentation/getting-started/installation.md | 2 +- snapcraft.yaml | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 6e14da3c..fdcbefcd 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -21,7 +21,7 @@ stages: rustup_toolchain: stable linux-pinned: imageName: 'ubuntu-20.04' - rustup_toolchain: 1.46.0 + rustup_toolchain: 1.49.0 pool: vmImage: $(imageName) steps: diff --git a/docs/content/documentation/getting-started/installation.md b/docs/content/documentation/getting-started/installation.md index a0f48495..509813a1 100644 --- a/docs/content/documentation/getting-started/installation.md +++ b/docs/content/documentation/getting-started/installation.md @@ -77,7 +77,7 @@ $ choco install zola Zola does not work in PowerShell ISE. ## From source -To build Zola from source, you will need to have Git, [Rust (at least 1.46) and Cargo](https://www.rust-lang.org/) +To build Zola from source, you will need to have Git, [Rust (at least 1.49) and Cargo](https://www.rust-lang.org/) installed. You will also need to meet additional dependencies to compile [libsass](https://github.com/sass/libsass): - OSX, Linux and other Unix-like operating systems: `make` (`gmake` on BSDs), `g++`, `libssl-dev` diff --git a/snapcraft.yaml b/snapcraft.yaml index 64adfd67..64c5b6e4 100644 --- a/snapcraft.yaml +++ b/snapcraft.yaml @@ -1,5 +1,5 @@ name: zola -version: 0.13.0 +version: 0.14.0 summary: A fast static site generator in a single binary with everything built-in. description: | A fast static site generator in a single binary with everything built-in. @@ -21,7 +21,7 @@ parts: zola: source-type: git source: https://github.com/getzola/zola.git - source-tag: v0.13.0 + source-tag: v0.14.0 plugin: rust rust-channel: stable build-packages: From dec5a8563c0a0db3516a04962ada717664da59d0 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sun, 9 May 2021 23:19:55 +0200 Subject: [PATCH 064/113] Fix language in rss.xml Closes #1442 --- components/templates/src/builtins/rss.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/templates/src/builtins/rss.xml b/components/templates/src/builtins/rss.xml index 4eeffdde..d68302b5 100644 --- a/components/templates/src/builtins/rss.xml +++ b/components/templates/src/builtins/rss.xml @@ -14,7 +14,7 @@ {{ config.description }} Zola - {{ config.default_language }} + {{ lang }} {{ last_updated | date(format="%a, %d %b %Y %H:%M:%S %z") }} {%- for page in pages %} From 5365efebb3bec1c71ccfcda192b49ca8e97c6509 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 10 May 2021 22:09:36 +0200 Subject: [PATCH 065/113] Add protobuf syntax highlighting --- .gitmodules | 3 +++ CHANGELOG.md | 2 +- .../content/syntax-highlighting.md | 2 ++ .../extra/protobuf-syntax-highlighting | 1 + sublime/syntaxes/newlines.packdump | Bin 616851 -> 620113 bytes 5 files changed, 7 insertions(+), 1 deletion(-) create mode 160000 sublime/syntaxes/extra/protobuf-syntax-highlighting diff --git a/.gitmodules b/.gitmodules index cd1bbfc7..aba5d052 100644 --- a/.gitmodules +++ b/.gitmodules @@ -73,3 +73,6 @@ [submodule "sublime/syntaxes/extra/sublime-zig-language"] path = sublime/syntaxes/extra/sublime-zig-language url = https://github.com/ziglang/sublime-zig-language.git +[submodule "sublime/syntaxes/extra/protobuf-syntax-highlighting"] + path = sublime/syntaxes/extra/protobuf-syntax-highlighting + url = https://github.com/VcamX/protobuf-syntax-highlighting.git diff --git a/CHANGELOG.md b/CHANGELOG.md index ac3a5220..65743edb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,7 +25,7 @@ - Add the `base16-aterlierdune-light` syntax highlight theme - Improve link checking: less concurrency and try to not overload the servers - Allow using POST for `load_data`, along with a body to POST and allow it to fail -- Add Zig syntax highlighting +- Add Zig and Protobuf syntax highlighting - Footnotes links are now stripped from summaries - they were not linking to anything. ## 0.13.0 (2021-01-09) diff --git a/docs/content/documentation/content/syntax-highlighting.md b/docs/content/documentation/content/syntax-highlighting.md index e35241b1..6e0e5fa6 100644 --- a/docs/content/documentation/content/syntax-highlighting.md +++ b/docs/content/documentation/content/syntax-highlighting.md @@ -113,6 +113,8 @@ Here is a full list of supported languages and their short names: - PHP -> ["php", "php3", "php4", "php5", "php7", "phps", "phpt", "phtml"] - Plain Text -> ["txt"] - PowerShell -> ["ps1", "psd1", "psm1"] +- Protocol Buffer -> ["proto", "protodevel"] +- Protocol Buffer (TEXT) -> ["pb.txt", "pbtxt", "proto.text", "prototxt", "textpb"] - PureScript -> ["purs"] - Python -> ["SConscript", "SConstruct", "Sconstruct", "Snakefile", "bazel", "bzl", "cpy", "gyp", "gypi", "pxd", "pxd.in", "pxi", "pxi.in", "py", "py3", "pyi", "pyw", "pyx", "pyx.in", "rpy", "sconstruct", "vpy", "wscript"] - R -> ["R", "Rprofile", "r"] diff --git a/sublime/syntaxes/extra/protobuf-syntax-highlighting b/sublime/syntaxes/extra/protobuf-syntax-highlighting new file mode 160000 index 00000000..726e21d7 --- /dev/null +++ b/sublime/syntaxes/extra/protobuf-syntax-highlighting @@ -0,0 +1 @@ +Subproject commit 726e21d74dac23cbb036f2fbbd626decdc954060 diff --git a/sublime/syntaxes/newlines.packdump b/sublime/syntaxes/newlines.packdump index 259015aebc936f1cdad3a20f7bd3d48f8c63a0d3..14f7026990a76656e645aee8e3107349f9df46b2 100644 GIT binary patch delta 506616 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
N_Y0d9I~kFPE`)90zE4 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

RW> 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

  • SepzR(We|X}YD}d&0f3=Pv%;v=LJi~~&p=NuO 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

    -<#rxt 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 delta 503322 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

  • KU1O7VAT1&N2AzZx&qYUutH7#WtHoZ(B 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%0An$Xqra&)4$4~5AM#`*H<{D#^s7rZ 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≧f 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

    safbngex`1b|2RKka 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 IAOFT?I53LV0{{R3 delta 493855 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 From fecc3cf148cff6d934118366a770a67e83849fe8 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 8 May 2021 23:27:03 +0200 Subject: [PATCH 061/113] Strip footnotes link from summaries Closes #1282 --- CHANGELOG.md | 6 +++-- components/front_matter/src/lib.rs | 13 ++++++---- components/library/src/content/page.rs | 35 +++++++++++++++++++++++++- 3 files changed, 46 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5810f500..ac3a5220 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Changelog -## unreleased +## 0.14.0 (unreleased) ### Breaking @@ -24,7 +24,9 @@ - Add `path` to the taxonomy terms to be on par with pages and sections - Add the `base16-aterlierdune-light` syntax highlight theme - Improve link checking: less concurrency and try to not overload the servers -- Allow using POST for `load_data`, along with a body to POST +- Allow using POST for `load_data`, along with a body to POST and allow it to fail +- Add Zig syntax highlighting +- Footnotes links are now stripped from summaries - they were not linking to anything. ## 0.13.0 (2021-01-09) diff --git a/components/front_matter/src/lib.rs b/components/front_matter/src/lib.rs index e343e649..12dd4393 100644 --- a/components/front_matter/src/lib.rs +++ b/components/front_matter/src/lib.rs @@ -12,11 +12,14 @@ pub use page::PageFrontMatter; pub use section::SectionFrontMatter; lazy_static! { - static ref TOML_RE: Regex = - Regex::new(r"^[[:space:]]*\+\+\+(\r?\n(?s).*?(?-s))\+\+\+[[:space:]]*(?:$|(?:\r?\n((?s).*(?-s))$))") - .unwrap(); - static ref YAML_RE: Regex = - Regex::new(r"^[[:space:]]*---(\r?\n(?s).*?(?-s))---[[:space:]]*(?:$|(?:\r?\n((?s).*(?-s))$))").unwrap(); + static ref TOML_RE: Regex = Regex::new( + r"^[[:space:]]*\+\+\+(\r?\n(?s).*?(?-s))\+\+\+[[:space:]]*(?:$|(?:\r?\n((?s).*(?-s))$))" + ) + .unwrap(); + static ref YAML_RE: Regex = Regex::new( + r"^[[:space:]]*---(\r?\n(?s).*?(?-s))---[[:space:]]*(?:$|(?:\r?\n((?s).*(?-s))$))" + ) + .unwrap(); } pub enum RawFrontMatter<'a> { diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 9a37ecc8..b131e07f 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -27,6 +27,8 @@ lazy_static! { static ref RFC3339_DATE: Regex = Regex::new( r"^(?P(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])(T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9])))?)\s?(_|-)(?P.+$)" ).unwrap(); + + static ref FOOTNOTES_RE: Regex = Regex::new(r"\s*.*?").unwrap(); } #[derive(Clone, Debug, Default, PartialEq)] @@ -263,7 +265,11 @@ impl Page { Error::chain(format!("Failed to render content of {}", self.file.path.display()), e) })?; - self.summary = res.summary_len.map(|l| res.body[0..l].to_owned()); + self.summary = if let Some(s) = res.summary_len.map(|l| &res.body[0..l]) { + Some(FOOTNOTES_RE.replace(s, "").into_owned()) + } else { + None + }; self.content = res.body; self.toc = res.toc; self.external_links = res.external_links; @@ -530,6 +536,33 @@ Hello world assert_eq!(page.summary, Some("

    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

    sSK?%+e}R>I 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:_ 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

    HueOi%E}gk{P>A`zvPl0AQJx`4)-~x9KJZ~ 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

    *Ywe?#7T#^0smAa^ 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 jx6>PI5yQ>5^lbhiGISO%Y<|HfuGp*5i- From b244bcdfbbb0abf982504a6aee7ed630f77acaf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois?= Date: Fri, 14 May 2021 20:25:13 +0200 Subject: [PATCH 066/113] Hide lines in code block (#1453) * hide lines * test hide ines * add documentation * fix test * factor shared code with hl_lines --- .../rendering/src/markdown/codeblock.rs | 42 ++++++++++++- components/rendering/src/markdown/fence.rs | 31 +++++++--- .../rendering/tests/codeblock_hide_lines.rs | 61 +++++++++++++++++++ .../content/syntax-highlighting.md | 38 +++++++++++- 4 files changed, 163 insertions(+), 9 deletions(-) create mode 100644 components/rendering/tests/codeblock_hide_lines.rs diff --git a/components/rendering/src/markdown/codeblock.rs b/components/rendering/src/markdown/codeblock.rs index 3c3a194c..a4dec6a9 100644 --- a/components/rendering/src/markdown/codeblock.rs +++ b/components/rendering/src/markdown/codeblock.rs @@ -17,6 +17,8 @@ pub struct CodeBlock<'config> { /// List of ranges of lines to highlight. highlight_lines: Vec, + /// List of ranges of lines to hide. + hide_lines: Vec, /// The number of lines in the code block being processed. num_lines: usize, } @@ -52,6 +54,7 @@ impl<'config> CodeBlock<'config> { theme, highlight_lines: fence_info.highlight_lines, + hide_lines: fence_info.hide_lines, num_lines: 0, } } @@ -77,6 +80,9 @@ impl<'config> CodeBlock<'config> { let hl_lines = self.get_highlighted_lines(); color_highlighted_lines(&mut highlighted, &hl_lines, hl_background); + let hide_lines = self.get_hidden_lines(); + let highlighted = hide_hidden_lines(highlighted, &hide_lines); + styled_line_to_highlighted_html(&highlighted, self.background) } @@ -94,8 +100,16 @@ impl<'config> CodeBlock<'config> { } fn get_highlighted_lines(&self) -> HashSet { + self.ranges_to_lines(&self.highlight_lines) + } + + fn get_hidden_lines(&self) -> HashSet { + self.ranges_to_lines(&self.hide_lines) + } + + fn ranges_to_lines(&self, range: &Vec) -> HashSet { let mut lines = HashSet::new(); - for range in &self.highlight_lines { + for range in range { for line in range.from..=min(range.to, self.num_lines) { // Ranges are one-indexed lines.insert(line.saturating_sub(1)); @@ -196,3 +210,29 @@ fn color_highlighted_lines(data: &mut [(Style, &str)], lines: &HashSet, b } } } + +fn hide_hidden_lines<'a>( + data: Vec<(Style, &'a str)>, + lines: &HashSet, +) -> Vec<(Style, &'a str)> { + if lines.is_empty() { + return data; + } + + let mut current_line = 0; + + let mut to_keep = Vec::new(); + + for item in data { + if !lines.contains(¤t_line) { + to_keep.push(item); + } + + // We split the lines such that every newline is at the end of an item. + if item.1.ends_with('\n') { + current_line += 1; + } + } + + to_keep +} diff --git a/components/rendering/src/markdown/fence.rs b/components/rendering/src/markdown/fence.rs index e41b73a0..23bd8040 100644 --- a/components/rendering/src/markdown/fence.rs +++ b/components/rendering/src/markdown/fence.rs @@ -28,16 +28,23 @@ pub struct FenceSettings<'a> { pub language: Option<&'a str>, pub line_numbers: bool, pub highlight_lines: Vec, + pub hide_lines: Vec, } impl<'a> FenceSettings<'a> { pub fn new(fence_info: &'a str) -> Self { - let mut me = Self { language: None, line_numbers: false, highlight_lines: Vec::new() }; + let mut me = Self { + language: None, + line_numbers: false, + highlight_lines: Vec::new(), + hide_lines: Vec::new(), + }; for token in FenceIter::new(fence_info) { match token { FenceToken::Language(lang) => me.language = Some(lang), FenceToken::EnableLineNumbers => me.line_numbers = true, FenceToken::HighlightLines(lines) => me.highlight_lines.extend(lines), + FenceToken::HideLines(lines) => me.hide_lines.extend(lines), } } @@ -50,6 +57,7 @@ enum FenceToken<'a> { Language(&'a str), EnableLineNumbers, HighlightLines(Vec), + HideLines(Vec), } struct FenceIter<'a> { @@ -59,6 +67,16 @@ impl<'a> FenceIter<'a> { fn new(fence_info: &'a str) -> Self { Self { split: fence_info.split(',') } } + + fn parse_ranges(token: Option<&str>) -> Vec { + let mut ranges = Vec::new(); + for range in token.unwrap_or("").split(' ') { + if let Some(range) = Range::parse(range) { + ranges.push(range); + } + } + ranges + } } impl<'a> Iterator for FenceIter<'a> { @@ -73,14 +91,13 @@ impl<'a> Iterator for FenceIter<'a> { "" => continue, "linenos" => return Some(FenceToken::EnableLineNumbers), "hl_lines" => { - let mut ranges = Vec::new(); - for range in tok_split.next().unwrap_or("").split(' ') { - if let Some(range) = Range::parse(range) { - ranges.push(range); - } - } + let ranges = Self::parse_ranges(tok_split.next()); return Some(FenceToken::HighlightLines(ranges)); } + "hide_lines" => { + let ranges = Self::parse_ranges(tok_split.next()); + return Some(FenceToken::HideLines(ranges)); + } lang => { return Some(FenceToken::Language(lang)); } diff --git a/components/rendering/tests/codeblock_hide_lines.rs b/components/rendering/tests/codeblock_hide_lines.rs new file mode 100644 index 00000000..bd8412a1 --- /dev/null +++ b/components/rendering/tests/codeblock_hide_lines.rs @@ -0,0 +1,61 @@ +use std::collections::HashMap; + +use tera::Tera; + +use config::Config; +use front_matter::InsertAnchor; +use rendering::{render_content, RenderContext}; + +macro_rules! colored_html_line { + ( $s:expr ) => {{ + let mut result = "".to_string(); + result.push_str($s); + result.push_str("\n"); + result + }}; +} + +macro_rules! colored_html { + ( $($s:expr),* $(,)* ) => {{ + let mut result = "

    \n".to_string();
    +        $(
    +            result.push_str(colored_html_line!($s).as_str());
    +        )*
    +        result.push_str("
    "); + result + }}; +} + +#[test] +fn hide_lines_simple() { + let tera_ctx = Tera::default(); + let permalinks_ctx = HashMap::new(); + let mut config = Config::default(); + config.markdown.highlight_code = true; + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); + let res = render_content( + r#" +```hide_lines=2 +foo +bar +baz +bat +``` + "#, + &context, + ) + .unwrap(); + assert_eq!( + res.body, + colored_html!( + "foo\nbaz\nbat", + ) + ); +} diff --git a/docs/content/documentation/content/syntax-highlighting.md b/docs/content/documentation/content/syntax-highlighting.md index 6e0e5fa6..2e63f206 100644 --- a/docs/content/documentation/content/syntax-highlighting.md +++ b/docs/content/documentation/content/syntax-highlighting.md @@ -150,7 +150,6 @@ Here is a full list of supported languages and their short names: ``` Note: due to some issues with the JavaScript syntax, the TypeScript syntax will be used instead. -If If you want to highlight a language not on this list, please open an issue or a pull request on the [Zola repo](https://github.com/getzola/zola). Alternatively, the `extra_syntaxes` configuration option can be used to add additional syntax files. @@ -173,3 +172,40 @@ If your site source is laid out as follows: ``` you would set your `extra_syntaxes` to `["syntaxes", "syntaxes/Sublime-Language1"]` to load `lang1.sublime-syntax` and `lang2.sublime-syntax`. + +## Annotations + +You can use additional annotations to customize how code blocks are displayed: + +- `linenos` to enable line numbering. +````md + +```rust,linenos +use highlighter::highlight; +let code = "..."; +highlight(code); +``` + +```` +- `hl_lines` to highlight lines. You must specify a list of ranges of lines to highlight, +separated by ` `. Ranges are 1-indexed. +````md + +```rust,hl_lines=3 +use highlighter::highlight; +let code = "..."; +highlight(code); +``` + +```` +- `hide_lines` to hide lines. You must specify a list of ranges of lines to hide, +separated by ` `. Ranges are 1-indexed. +````md + +```rust,hide_lines=1-2 +use highlighter::highlight; +let code = "..."; +highlight(code); +``` + +```` From f8c6ea2b00d4e889a0654ca7c12de2254db574d6 Mon Sep 17 00:00:00 2001 From: Waffle Lapkin Date: Sat, 15 May 2021 21:16:55 +0300 Subject: [PATCH 067/113] Add new sorting: UpdateDate that sorts by `meta.updated`. (#1452) * Add new sorting: UpdateDate that sorts by `meta.updated`. * Use `max(created, updated)` for sort-by-update-date This prevents created but never updated articles from appearing at the end/not appearing at all. --- components/front_matter/src/lib.rs | 2 + components/front_matter/src/page.rs | 12 +++++ components/library/src/content/page.rs | 4 ++ components/library/src/content/ser.rs | 12 +++++ components/library/src/library.rs | 68 +++++++++++++------------- 5 files changed, 63 insertions(+), 35 deletions(-) diff --git a/components/front_matter/src/lib.rs b/components/front_matter/src/lib.rs index 12dd4393..ddfcd2b6 100644 --- a/components/front_matter/src/lib.rs +++ b/components/front_matter/src/lib.rs @@ -48,6 +48,8 @@ impl RawFrontMatter<'_> { pub enum SortBy { /// Most recent to oldest Date, + /// Most recent to oldest + UpdateDate, /// Sort by title Title, /// Lower weight comes first diff --git a/components/front_matter/src/page.rs b/components/front_matter/src/page.rs index 16ac57c9..d331521b 100644 --- a/components/front_matter/src/page.rs +++ b/components/front_matter/src/page.rs @@ -20,6 +20,12 @@ pub struct PageFrontMatter { /// Updated date #[serde(default, deserialize_with = "from_toml_datetime")] pub updated: Option, + /// Chrono converted update datatime + #[serde(default, skip_deserializing)] + pub updated_datetime: Option, + /// The converted update datetime into a (year, month, day) tuple + #[serde(default, skip_deserializing)] + pub updated_datetime_tuple: Option<(i32, u32, u32)>, /// Date if we want to order pages (ie blog post) #[serde(default, deserialize_with = "from_toml_datetime")] pub date: Option, @@ -107,6 +113,10 @@ impl PageFrontMatter { pub fn date_to_datetime(&mut self) { self.datetime = self.date.as_ref().map(|s| s.as_ref()).and_then(parse_datetime); self.datetime_tuple = self.datetime.map(|dt| (dt.year(), dt.month(), dt.day())); + + self.updated_datetime = self.updated.as_ref().map(|s| s.as_ref()).and_then(parse_datetime); + self.updated_datetime_tuple = + self.updated_datetime.map(|dt| (dt.year(), dt.month(), dt.day())); } pub fn weight(&self) -> usize { @@ -120,6 +130,8 @@ impl Default for PageFrontMatter { title: None, description: None, updated: None, + updated_datetime: None, + updated_datetime_tuple: None, date: None, datetime: None, datetime_tuple: None, diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index b131e07f..9f5e2667 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -60,6 +60,10 @@ pub struct Page { /// When is found in the text, will take the content up to that part /// as summary pub summary: Option, + /// The earlier updated page, for pages sorted by updated date + pub earlier_updated: Option, + /// The later updated page, for pages sorted by updated date + pub later_updated: Option, /// The earlier page, for pages sorted by date pub earlier: Option, /// The later page, for pages sorted by date diff --git a/components/library/src/content/ser.rs b/components/library/src/content/ser.rs index cf951b01..8d4a077b 100644 --- a/components/library/src/content/ser.rs +++ b/components/library/src/content/ser.rs @@ -90,6 +90,8 @@ pub struct SerializingPage<'a> { lang: &'a str, lighter: Option>>, heavier: Option>>, + earlier_updated: Option>>, + later_updated: Option>>, earlier: Option>>, later: Option>>, title_prev: Option>>, @@ -115,6 +117,12 @@ impl<'a> SerializingPage<'a> { let heavier = page .heavier .map(|k| Box::new(Self::from_page_basic(pages.get(k).unwrap(), Some(library)))); + let earlier_updated = page + .earlier_updated + .map(|k| Box::new(Self::from_page_basic(pages.get(k).unwrap(), Some(library)))); + let later_updated = page + .later_updated + .map(|k| Box::new(Self::from_page_basic(pages.get(k).unwrap(), Some(library)))); let earlier = page .earlier .map(|k| Box::new(Self::from_page_basic(pages.get(k).unwrap(), Some(library)))); @@ -161,6 +169,8 @@ impl<'a> SerializingPage<'a> { lang: &page.lang, lighter, heavier, + earlier_updated, + later_updated, earlier, later, title_prev, @@ -225,6 +235,8 @@ impl<'a> SerializingPage<'a> { lang: &page.lang, lighter: None, heavier: None, + earlier_updated: None, + later_updated: None, earlier: None, later: None, title_prev: None, diff --git a/components/library/src/library.rs b/components/library/src/library.rs index 32a708d1..0a76952b 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -3,13 +3,12 @@ use std::path::{Path, PathBuf}; use slotmap::{DefaultKey, DenseSlotMap}; -use front_matter::SortBy; - use crate::content::{Page, Section}; use crate::sorting::{ find_siblings, sort_pages_by_date, sort_pages_by_title, sort_pages_by_weight, }; use config::Config; +use front_matter::{PageFrontMatter, SortBy}; // Like vec! but for HashSet macro_rules! set { @@ -265,52 +264,47 @@ impl Library { /// Sort all sections pages according to sorting method given /// Pages that cannot be sorted are set to the section.ignored_pages instead pub fn sort_sections_pages(&mut self) { + fn get_data<'a, T>( + section: &'a Section, + pages: &'a DenseSlotMap, + field: impl Fn(&'a PageFrontMatter) -> Option, + ) -> Vec<(&'a DefaultKey, Option, &'a str)> { + section + .pages + .iter() + .map(|k| { + if let Some(page) = pages.get(*k) { + (k, field(&page.meta), page.permalink.as_ref()) + } else { + unreachable!("Sorting got an unknown page") + } + }) + .collect() + } + let mut updates = HashMap::new(); for (key, section) in &self.sections { let (sorted_pages, cannot_be_sorted_pages) = match section.meta.sort_by { SortBy::None => continue, SortBy::Date => { - let data = section - .pages - .iter() - .map(|k| { - if let Some(page) = self.pages.get(*k) { - (k, page.meta.datetime, page.permalink.as_ref()) - } else { - unreachable!("Sorting got an unknown page") - } - }) - .collect(); + let data = get_data(section, &self.pages, |meta| meta.datetime); + + sort_pages_by_date(data) + } + SortBy::UpdateDate => { + let data = get_data(section, &self.pages, |meta| { + std::cmp::max(meta.datetime, meta.updated_datetime) + }); sort_pages_by_date(data) } SortBy::Title => { - let data = section - .pages - .iter() - .map(|k| { - if let Some(page) = self.pages.get(*k) { - (k, page.meta.title.as_deref(), page.permalink.as_ref()) - } else { - unreachable!("Sorting got an unknown page") - } - }) - .collect(); + let data = get_data(section, &self.pages, |meta| meta.title.as_deref()); sort_pages_by_title(data) } SortBy::Weight => { - let data = section - .pages - .iter() - .map(|k| { - if let Some(page) = self.pages.get(*k) { - (k, page.meta.weight, page.permalink.as_ref()) - } else { - unreachable!("Sorting got an unknown page") - } - }) - .collect(); + let data = get_data(section, &self.pages, |meta| meta.weight); sort_pages_by_weight(data) } @@ -329,6 +323,10 @@ impl Library { page.earlier = val2; page.later = val1; } + SortBy::UpdateDate => { + page.earlier_updated = val2; + page.later_updated = val1; + } SortBy::Title => { page.title_prev = val1; page.title_next = val2; From 22c29fe936681b8cad141482dbfc001c43a7f82e Mon Sep 17 00:00:00 2001 From: Eric Scouten Date: Mon, 17 May 2021 13:05:22 -0700 Subject: [PATCH 068/113] Fix race condition in generating next/previous page references when using transparent mode. (#1456) --- components/library/src/library.rs | 56 ++++++++++++++++++------------- 1 file changed, 33 insertions(+), 23 deletions(-) diff --git a/components/library/src/library.rs b/components/library/src/library.rs index 0a76952b..02ec3600 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -313,32 +313,42 @@ impl Library { } for (key, (sorted, cannot_be_sorted, sort_by)) in updates { - // Find sibling between sorted pages first - let with_siblings = find_siblings(&sorted); + let section_is_transparent = if let Some(section) = self.sections.get(key) { + section.meta.transparent + } else { + false + }; - for (k2, val1, val2) in with_siblings { - if let Some(page) = self.pages.get_mut(k2) { - match sort_by { - SortBy::Date => { - page.earlier = val2; - page.later = val1; + if !section_is_transparent { + // Find sibling between sorted pages first + let with_siblings = find_siblings(&sorted); + + for (k2, val1, val2) in with_siblings { + if let Some(page) = self.pages.get_mut(k2) { + match sort_by { + SortBy::Date => { + page.earlier = val2; + page.later = val1; + } + SortBy::UpdateDate => { + page.earlier_updated = val2; + page.later_updated = val1; + } + SortBy::Title => { + page.title_prev = val1; + page.title_next = val2; + } + SortBy::Weight => { + page.lighter = val1; + page.heavier = val2; + } + SortBy::None => { + unreachable!("Impossible to find siblings in SortBy::None") + } } - SortBy::UpdateDate => { - page.earlier_updated = val2; - page.later_updated = val1; - } - SortBy::Title => { - page.title_prev = val1; - page.title_next = val2; - } - SortBy::Weight => { - page.lighter = val1; - page.heavier = val2; - } - SortBy::None => unreachable!("Impossible to find siblings in SortBy::None"), + } else { + unreachable!("Sorting got an unknown page") } - } else { - unreachable!("Sorting got an unknown page") } } From 4140ab7207c4d0e78423cda5c2ea1fb461c2ea3f Mon Sep 17 00:00:00 2001 From: Avinash Sonawane Date: Fri, 21 May 2021 15:43:41 +0000 Subject: [PATCH 069/113] Specify default output directory (#1464) --- src/cli.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/cli.rs b/src/cli.rs index ceef7be3..5708da45 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -46,7 +46,7 @@ pub fn build_cli() -> App<'static, 'static> { .short("o") .long("output-dir") .takes_value(true) - .help("Outputs the generated site in the given path"), + .help("Outputs the generated site in the given path (by default 'public' dir in project root)"), Arg::with_name("drafts") .long("drafts") .takes_value(false) @@ -69,7 +69,7 @@ pub fn build_cli() -> App<'static, 'static> { .short("o") .long("output-dir") .takes_value(true) - .help("Outputs the generated site in the given path"), + .help("Outputs the generated site in the given path (by default 'public' dir in project root)"), Arg::with_name("base_url") .short("u") .long("base-url") From 70675ff71022f0642c4751b2864da249937405f0 Mon Sep 17 00:00:00 2001 From: Avinash Sonawane Date: Sun, 23 May 2021 11:57:49 +0000 Subject: [PATCH 070/113] Make sure that -i, -p and -u options take mandatory arguments (#1474) --- src/cli.rs | 11 +++++------ src/main.rs | 4 ++-- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/cli.rs b/src/cli.rs index 5708da45..eb59c5fd 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -58,13 +58,13 @@ pub fn build_cli() -> App<'static, 'static> { Arg::with_name("interface") .short("i") .long("interface") - .default_value("127.0.0.1") - .help("Interface to bind on"), + .takes_value(true) + .help("Interface to bind on (default: 127.0.0.1)"), Arg::with_name("port") .short("p") .long("port") - .default_value("1111") - .help("Which port to use"), + .takes_value(true) + .help("Which port to use (default: 1111)"), Arg::with_name("output_dir") .short("o") .long("output-dir") @@ -73,9 +73,8 @@ pub fn build_cli() -> App<'static, 'static> { Arg::with_name("base_url") .short("u") .long("base-url") - .default_value("127.0.0.1") .takes_value(true) - .help("Changes the base_url"), + .help("Changes the base_url (default: 127.0.0.1)"), Arg::with_name("drafts") .long("drafts") .takes_value(false) diff --git a/src/main.rs b/src/main.rs index 7bff8282..925d36d3 100644 --- a/src/main.rs +++ b/src/main.rs @@ -54,7 +54,7 @@ fn main() { } ("serve", Some(matches)) => { let interface = matches.value_of("interface").unwrap_or("127.0.0.1"); - let mut port: u16 = match matches.value_of("port").unwrap().parse() { + let mut port: u16 = match matches.value_of("port").unwrap_or("1111").parse() { Ok(x) => x, Err(_) => { console::error("The request port needs to be an integer"); @@ -80,7 +80,7 @@ fn main() { } } let output_dir = matches.value_of("output_dir").map(|output_dir| Path::new(output_dir)); - let base_url = matches.value_of("base_url").unwrap(); + let base_url = matches.value_of("base_url").unwrap_or("127.0.0.1"); console::info("Building site..."); match cmd::serve( &root_dir, From ca4b5d5c45b106d89fa34abd8cdf11ff0a7e91ed Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sun, 23 May 2021 14:01:56 +0200 Subject: [PATCH 071/113] Remove unused option Closes #1477 --- docs/config.toml | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/config.toml b/docs/config.toml index 1b367f53..293911f5 100644 --- a/docs/config.toml +++ b/docs/config.toml @@ -3,7 +3,6 @@ title = "Zola" description = "Everything you need to make a static site engine in one binary." compile_sass = true -insert_anchor_links = true build_search_index = true [markdown] From c393deddd3c69b8b2d2b60773fc778c3eafb7eec Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sun, 23 May 2021 14:19:09 +0200 Subject: [PATCH 072/113] Better description for output-dir of zola serve --- src/cli.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cli.rs b/src/cli.rs index eb59c5fd..e6d6332f 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -69,7 +69,7 @@ pub fn build_cli() -> App<'static, 'static> { .short("o") .long("output-dir") .takes_value(true) - .help("Outputs the generated site in the given path (by default 'public' dir in project root)"), + .help("Outputs assets of the generated site in the given path (by default 'public' dir in project root). HTML/XML will be stored in memory."), Arg::with_name("base_url") .short("u") .long("base-url") From fe79798b0f34ee8b332771199ad4111141a56fe5 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sun, 23 May 2021 18:08:17 +0200 Subject: [PATCH 073/113] Remove unused code + rustfmt --- Cargo.lock | 128 +++++++++--------- components/library/src/content/file_info.rs | 2 +- components/library/src/library.rs | 32 +---- .../rendering/tests/codeblock_hide_lines.rs | 7 +- src/cmd/serve.rs | 10 +- 5 files changed, 73 insertions(+), 106 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c2d913cd..9f29bca9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -309,9 +309,9 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.1.1" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dec1028182c380cc45a2e2c5ec841134f2dfd0f8f5f0a5bcd68004f81b5efdf4" +checksum = "ed00c67cb5d0a7d64a44f6ad2668db7e7530311dd53ea79bcd4fb022c64911c8" dependencies = [ "libc", ] @@ -671,31 +671,32 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce79c6a52a299137a6013061e0cf0e688fce5d7f1bc60125f520912fdb29ec25" +checksum = "e682a68b29a882df0545c143dc3646daefe80ba479bcdede94d5a703de2871e2" dependencies = [ "futures-core", ] [[package]] name = "futures-core" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "098cd1c6dda6ca01650f1a37a794245eb73181d0d4d4e955e2f3c37db7af1815" +checksum = "0402f765d8a89a26043b889b26ce3c4679d268fa6bb22cd7c6aad98340e179d1" [[package]] name = "futures-io" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "365a1a1fb30ea1c03a830fdb2158f5236833ac81fa0ad12fe35b29cddc35cb04" +checksum = "acc499defb3b348f8d8f3f66415835a9131856ff7714bf10dadfc4ec4bdb29a1" [[package]] name = "futures-macro" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "668c6733a182cd7deb4f1de7ba3bf2120823835b3bcfbeacf7d2c4a773c1bb8b" +checksum = "a4c40298486cdf52cc00cd6d6987892ba502c7656a16a4192a9992b1ccedd121" dependencies = [ + "autocfg", "proc-macro-hack", "proc-macro2", "quote", @@ -704,22 +705,23 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c5629433c555de3d82861a7a4e3794a4c40040390907cfbfd7143a92a426c23" +checksum = "a57bead0ceff0d6dde8f465ecd96c9338121bb7717d3e7b108059531870c4282" [[package]] name = "futures-task" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba7aa51095076f3ba6d9a1f702f74bd05ec65f555d70d2033d55ba8d69f581bc" +checksum = "8a16bef9fc1a4dddb5bee51c989e3fbba26569cbb0e31f5b303c184e3dd33dae" [[package]] name = "futures-util" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c144ad54d60f23927f0a6b6d816e4271278b64f005ad65e4e35291d2de9c025" +checksum = "feb5c238d27e2bf94ffdfd27b2c29e3df4a68c4193bb6427384259e2bf191967" dependencies = [ + "autocfg", "futures-core", "futures-io", "futures-macro", @@ -764,9 +766,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9495705279e7140bf035dde1f6e750c162df8b625267cd52cc44e0b156732c8" +checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753" dependencies = [ "cfg-if 1.0.0", "libc", @@ -914,9 +916,9 @@ dependencies = [ [[package]] name = "httparse" -version = "1.4.0" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a1ce40d6fc9764887c2fdc7305c3dcc429ba11ff981c1509416afd5697e4437" +checksum = "f3a87b616e37e93c22fb19bcd386f02f3af5ea98a25670ad0fce773de23c5e68" [[package]] name = "httpdate" @@ -926,9 +928,9 @@ checksum = "05842d0d43232b23ccb7060ecb0f0626922c21f30012e97b767b30afd4a5d4b9" [[package]] name = "humansize" -version = "1.1.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" +checksum = "02296996cb8796d7c6e3bc2d9211b7802812d36999a51bb754123ead7d37d026" [[package]] name = "hyper" @@ -1116,9 +1118,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.50" +version = "0.3.51" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d99f9e3e84b8f67f846ef5b4cbbc3b1c29f6c759fcbce6f01aa0e73d932a24c" +checksum = "83bdfbace3a0e81a4253f73b49e960b053e396a11012cbd49b9b74d6a2b67062" dependencies = [ "wasm-bindgen", ] @@ -1387,9 +1389,9 @@ dependencies = [ [[package]] name = "minify-html" -version = "0.4.10" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fa8fd7a3c8708c45ac106752e7dc157854ebcd4e379ddb0db64fc6c1ef92b6b" +checksum = "ee59033f9253bab9ec605e58b6a9f9ac22548346cbc88927194a7f56527b541b" dependencies = [ "aho-corasick", "lazy_static", @@ -1596,9 +1598,9 @@ dependencies = [ [[package]] name = "notify" -version = "4.0.16" +version = "4.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2599080e87c9bd051ddb11b10074f4da7b1223298df65d4c2ec5bcf309af1533" +checksum = "ae03c8c853dba7bfd23e571ff0cff7bc9dceb40a4cd684cd1681824183f45257" dependencies = [ "bitflags", "filetime", @@ -1914,9 +1916,9 @@ checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086" [[package]] name = "proc-macro2" -version = "1.0.26" +version = "1.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a152013215dca273577e18d2bf00fa862b89b24169fb78c4c95aeb07992c9cec" +checksum = "f0d8caf72986c1a598726adc988bb5984792ef84f5ee5aa50209145ee8077038" dependencies = [ "unicode-xid", ] @@ -2008,7 +2010,7 @@ version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34cf66eb183df1c5876e2dcf6b13d57340741e8dc255b48e40a26de954d06ae7" dependencies = [ - "getrandom 0.2.2", + "getrandom 0.2.3", ] [[package]] @@ -2040,9 +2042,9 @@ dependencies = [ [[package]] name = "rayon" -version = "1.5.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b0d8e0819fadc20c74ea8373106ead0600e3a67ef1fe8da56e39b9ae7275674" +checksum = "c06aca804d41dbc8ba42dfd964f0d01334eceb64314b9ecf7c5fad5188a06d90" dependencies = [ "autocfg", "crossbeam-deque", @@ -2052,9 +2054,9 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.9.0" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ab346ac5921dc62ffa9f89b7a773907511cdfa5490c572ae9be1be33e8afa4a" +checksum = "d78120e2c850279833f1dd3582f730c4ab53ed95aeaaaa862a2a5c71b1656d8e" dependencies = [ "crossbeam-channel", "crossbeam-deque", @@ -2302,18 +2304,18 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.125" +version = "1.0.126" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "558dc50e1a5a5fa7112ca2ce4effcb321b0300c0d4ccf0776a9f60cd89031171" +checksum = "ec7505abeacaec74ae4778d9d9328fe5a5d04253220a85c4ee022239fc996d03" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.125" +version = "1.0.126" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b093b7a2bb58203b5da3056c05b4ec1fed827dcfdb37347a8841695263b3d06d" +checksum = "963a7dbc9895aeac7ac90e74f34a5d5261828f79df35cbed41e10189d3804d43" dependencies = [ "proc-macro2", "quote", @@ -2370,9 +2372,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.9.4" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8f6b75b17576b792bef0db1bcc4b8b8bcdf9506744cf34b974195487af6cff2" +checksum = "b362ae5752fd2137731f9fa25fd4d9058af34666ca1966fb969119cc35719f12" dependencies = [ "block-buffer 0.9.0", "cfg-if 1.0.0", @@ -2613,9 +2615,9 @@ dependencies = [ [[package]] name = "tera" -version = "1.8.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b64b021b8d3ab1f59ceae9e6cd1c26c8e7ce0322a9ebfff6c0e22b3b66938935" +checksum = "81060acb882480c8793782eb96bc86f5c83d2fc7175ad46c375c6956ef7afa62" dependencies = [ "chrono", "chrono-tz", @@ -2717,9 +2719,9 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83f0c8e7c0addab50b663055baf787d0af7f413a46e6e7fb9559a4e4db7137a5" +checksum = "bd3076b5c8cc18138b8f8814895c11eb4de37114a5d127bafdc5e55798ceef37" dependencies = [ "autocfg", "bytes 1.0.1", @@ -2743,9 +2745,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.6.6" +version = "0.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "940a12c99365c31ea8dd9ba04ec1be183ffe4920102bb7122c2f515437601e8e" +checksum = "1caa0b0c8d94a049db56b5acf8cba99dc0623aab1b26d5b5f5e2d945846b3592" dependencies = [ "bytes 1.0.1", "futures-core", @@ -3015,9 +3017,9 @@ checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" [[package]] name = "wasm-bindgen" -version = "0.2.73" +version = "0.2.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83240549659d187488f91f33c0f8547cbfef0b2088bc470c116d1d260ef623d9" +checksum = "d54ee1d4ed486f78874278e63e4069fc1ab9f6a18ca492076ffb90c5eb2997fd" dependencies = [ "cfg-if 1.0.0", "serde", @@ -3027,9 +3029,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.73" +version = "0.2.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae70622411ca953215ca6d06d3ebeb1e915f0f6613e3b495122878d7ebec7dae" +checksum = "3b33f6a0694ccfea53d94db8b2ed1c3a8a4c86dd936b13b9f0a15ec4a451b900" dependencies = [ "bumpalo", "lazy_static", @@ -3042,9 +3044,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.23" +version = "0.4.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81b8b767af23de6ac18bf2168b690bed2902743ddf0fb39252e36f9e2bfc63ea" +checksum = "5fba7978c679d53ce2d0ac80c8c175840feb849a161664365d1287b41f2e67f1" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -3054,9 +3056,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.73" +version = "0.2.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e734d91443f177bfdb41969de821e15c516931c3c3db3d318fa1b68975d0f6f" +checksum = "088169ca61430fe1e58b8096c24975251700e7b1f6fd91cc9d59b04fb9b18bd4" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -3064,9 +3066,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.73" +version = "0.2.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d53739ff08c8a68b0fdbcd54c372b8ab800b1449ab3c9d706503bc7dd1621b2c" +checksum = "be2241542ff3d9f241f5e2cb6dd09b37efe786df8851c54957683a49f0987a97" dependencies = [ "proc-macro2", "quote", @@ -3077,15 +3079,15 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.73" +version = "0.2.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9a543ae66aa233d14bb765ed9af4a33e81b8b58d1584cf1b47ff8cd0b9e4489" +checksum = "d7cff876b8f18eed75a66cf49b65e7f967cb354a7aa16003fb55dbfd25b44b4f" [[package]] name = "web-sys" -version = "0.3.50" +version = "0.3.51" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a905d57e488fec8861446d3393670fb50d27a262344013181c2cdf9fff5481be" +checksum = "e828417b379f3df7111d3a2a9e5753706cae29c41f7c4029ee9fd77f3e09e582" dependencies = [ "js-sys", "wasm-bindgen", @@ -3093,9 +3095,9 @@ dependencies = [ [[package]] name = "webp" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d5036becfc554b3177bc655503a1ce26a34c9257edcb1ae2e18900341f943d4" +checksum = "6a598dd8197b16c7569e231619b668380aefe9352daf1d503c3eea7b38fddba3" dependencies = [ "image", "libwebp-sys", diff --git a/components/library/src/content/file_info.rs b/components/library/src/content/file_info.rs index 2c6841a5..2260e7f7 100644 --- a/components/library/src/content/file_info.rs +++ b/components/library/src/content/file_info.rs @@ -173,7 +173,7 @@ mod tests { } #[test] - fn doesnt_fail_with_multiple_content_directories() { + fn doesnt_fail_with_multiple_content_directories_in_path() { let file = FileInfo::new_page( &Path::new("/home/vincent/code/content/site/content/posts/tutorials/python/index.md"), &PathBuf::from("/home/vincent/code/content/site"), diff --git a/components/library/src/library.rs b/components/library/src/library.rs index 02ec3600..4b4cee61 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -371,22 +371,7 @@ impl Library { .collect() } - /// Find the parent section & all grandparents section that have transparent=true - /// Only used in rebuild. - pub fn find_parent_sections>(&self, path: P) -> Vec<&Section> { - let mut parents = vec![]; - let page = self.get_page(path.as_ref()).unwrap(); - for ancestor in page.ancestors.iter().rev() { - let section = self.get_section_by_key(*ancestor); - if parents.is_empty() || section.meta.transparent { - parents.push(section); - } - } - - parents - } - - /// Only used in tests + /// Used in integration tests pub fn get_section_key>(&self, path: P) -> Option<&DefaultKey> { self.paths_to_sections.get(path.as_ref()) } @@ -395,6 +380,7 @@ impl Library { self.sections.get(self.paths_to_sections.get(path.as_ref()).cloned().unwrap_or_default()) } + /// Used in integration tests pub fn get_section_mut>(&mut self, path: P) -> Option<&mut Section> { self.sections .get_mut(self.paths_to_sections.get(path.as_ref()).cloned().unwrap_or_default()) @@ -404,10 +390,6 @@ impl Library { self.sections.get(key).unwrap() } - pub fn get_section_mut_by_key(&mut self, key: DefaultKey) -> &mut Section { - self.sections.get_mut(key).unwrap() - } - pub fn get_section_path_by_key(&self, key: DefaultKey) -> &str { &self.get_section_by_key(key).file.relative } @@ -420,10 +402,6 @@ impl Library { self.pages.get(key).unwrap() } - pub fn get_page_mut_by_key(&mut self, key: DefaultKey) -> &mut Page { - self.pages.get_mut(key).unwrap() - } - pub fn remove_section>(&mut self, path: P) -> Option
    { if let Some(k) = self.paths_to_sections.remove(path.as_ref()) { self.sections.remove(k) @@ -440,16 +418,10 @@ impl Library { } } - /// Used in rebuild, to check if we know it already pub fn contains_section>(&self, path: P) -> bool { self.paths_to_sections.contains_key(path.as_ref()) } - /// Used in rebuild, to check if we know it already - pub fn contains_page>(&self, path: P) -> bool { - self.paths_to_pages.contains_key(path.as_ref()) - } - /// This will check every section/page paths + the aliases and ensure none of them /// are colliding. /// Returns (path colliding, [list of files causing that collision]) diff --git a/components/rendering/tests/codeblock_hide_lines.rs b/components/rendering/tests/codeblock_hide_lines.rs index bd8412a1..308f2f14 100644 --- a/components/rendering/tests/codeblock_hide_lines.rs +++ b/components/rendering/tests/codeblock_hide_lines.rs @@ -52,10 +52,5 @@ bat &context, ) .unwrap(); - assert_eq!( - res.body, - colored_html!( - "foo\nbaz\nbat", - ) - ); + assert_eq!(res.body, colored_html!("foo\nbaz\nbat",)); } diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index 724aff56..69539915 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -154,12 +154,10 @@ fn livereload_js() -> Response { fn in_memory_content(path: &RelativePathBuf, content: &str) -> Response { let content_type = match path.extension() { - Some(ext) => { - match ext { - "xml" => "text/xml", - "json" => "application/json", - _ => "text/html", - } + Some(ext) => match ext { + "xml" => "text/xml", + "json" => "application/json", + _ => "text/html", }, None => "text/html", }; From c38d9e56c8e99d61260878db1ae0283711ee5f79 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sun, 23 May 2021 18:19:18 +0200 Subject: [PATCH 074/113] Do not clone ancestors when serializing --- components/library/src/content/ser.rs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/components/library/src/content/ser.rs b/components/library/src/content/ser.rs index 8d4a077b..83ab4964 100644 --- a/components/library/src/content/ser.rs +++ b/components/library/src/content/ser.rs @@ -69,7 +69,7 @@ pub struct SerializingPage<'a> { content: &'a str, permalink: &'a str, slug: &'a str, - ancestors: Vec, + ancestors: Vec<&'a str>, title: &'a Option, description: &'a Option, updated: &'a Option, @@ -138,7 +138,7 @@ impl<'a> SerializingPage<'a> { let ancestors = page .ancestors .iter() - .map(|k| library.get_section_by_key(*k).file.relative.clone()) + .map(|k| library.get_section_by_key(*k).file.relative.as_str()) .collect(); let translations = TranslatedContent::find_all_pages(page, library); @@ -197,7 +197,7 @@ impl<'a> SerializingPage<'a> { let ancestors = if let Some(ref lib) = library { page.ancestors .iter() - .map(|k| lib.get_section_by_key(*k).file.relative.clone()) + .map(|k| lib.get_section_by_key(*k).file.relative.as_str()) .collect() } else { vec![] @@ -251,7 +251,7 @@ pub struct SerializingSection<'a> { relative_path: &'a str, content: &'a str, permalink: &'a str, - ancestors: Vec, + ancestors: Vec<&'a str>, title: &'a Option, description: &'a Option, extra: &'a Map, @@ -283,7 +283,7 @@ impl<'a> SerializingSection<'a> { let ancestors = section .ancestors .iter() - .map(|k| library.get_section_by_key(*k).file.relative.clone()) + .map(|k| library.get_section_by_key(*k).file.relative.as_str()) .collect(); let translations = TranslatedContent::find_all_sections(section, library); @@ -317,7 +317,7 @@ impl<'a> SerializingSection<'a> { ancestors = section .ancestors .iter() - .map(|k| lib.get_section_by_key(*k).file.relative.clone()) + .map(|k| lib.get_section_by_key(*k).file.relative.as_str()) .collect(); translations = TranslatedContent::find_all_sections(section, lib); subsections = From aaa4f4e872475610c6b15d318afef84d24e6d03b Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 24 May 2021 08:20:28 +0200 Subject: [PATCH 075/113] Fix highlighting --- .../content/syntax-highlighting.md | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/docs/content/documentation/content/syntax-highlighting.md b/docs/content/documentation/content/syntax-highlighting.md index 2e63f206..4df89131 100644 --- a/docs/content/documentation/content/syntax-highlighting.md +++ b/docs/content/documentation/content/syntax-highlighting.md @@ -9,12 +9,10 @@ need to enable it in the [configuration](@/documentation/getting-started/configu Once this is done, Zola will automatically highlight all code blocks in your content. A code block in Markdown looks like the following: -````md - +```` ```rust let highlight = true; ``` - ```` You can replace `rust` with another language or not put anything to get the text @@ -178,34 +176,33 @@ you would set your `extra_syntaxes` to `["syntaxes", "syntaxes/Sublime-Language1 You can use additional annotations to customize how code blocks are displayed: - `linenos` to enable line numbering. -````md +```` ```rust,linenos use highlighter::highlight; let code = "..."; highlight(code); ``` - ```` + - `hl_lines` to highlight lines. You must specify a list of ranges of lines to highlight, separated by ` `. Ranges are 1-indexed. -````md - + +```` ```rust,hl_lines=3 use highlighter::highlight; let code = "..."; highlight(code); ``` - ```` + - `hide_lines` to hide lines. You must specify a list of ranges of lines to hide, separated by ` `. Ranges are 1-indexed. -````md - + +```` ```rust,hide_lines=1-2 use highlighter::highlight; let code = "..."; highlight(code); ``` - ```` From 4c22996e11c32c3486af907a2947c508785dbb33 Mon Sep 17 00:00:00 2001 From: Avinash Sonawane Date: Mon, 31 May 2021 07:20:39 +0000 Subject: [PATCH 076/113] Fix typos (#1505) --- components/config/src/config/mod.rs | 2 +- components/site/src/link_checking.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/components/config/src/config/mod.rs b/components/config/src/config/mod.rs index 84893f0e..b1cad9b1 100644 --- a/components/config/src/config/mod.rs +++ b/components/config/src/config/mod.rs @@ -477,7 +477,7 @@ truc = "default" assert_eq!(extra["hello"].as_str().unwrap(), "world".to_string()); assert_eq!(extra["a_value"].as_integer().unwrap(), 10); assert_eq!(extra["sub"]["foo"].as_str().unwrap(), "bar".to_string()); - assert_eq!(extra["sub"].get("truc").expect("The whole extra.sub table was overriden by theme data, discarding extra.sub.truc").as_str().unwrap(), "default".to_string()); + assert_eq!(extra["sub"].get("truc").expect("The whole extra.sub table was overridden by theme data, discarding extra.sub.truc").as_str().unwrap(), "default".to_string()); assert_eq!(extra["sub"]["sub"]["foo"].as_str().unwrap(), "bar".to_string()); assert_eq!( extra["sub"]["sub"] diff --git a/components/site/src/link_checking.rs b/components/site/src/link_checking.rs index 4774afa2..ddf8207c 100644 --- a/components/site/src/link_checking.rs +++ b/components/site/src/link_checking.rs @@ -82,7 +82,7 @@ pub fn check_internal_links_with_anchors(site: &Site) -> Result<()> { // Finally emit a summary, and return overall anchors-checking result. match errors.len() { 0 => { - println!("> Succesfully checked {} internal link(s) with anchors.", anchors_total); + println!("> Successfully checked {} internal link(s) with anchors.", anchors_total); Ok(()) } errors_total => { From 16c123aa2089f4aba2825e83eb7dd7e15335b590 Mon Sep 17 00:00:00 2001 From: Tim Schumacher Date: Wed, 2 Jun 2021 09:18:39 +0200 Subject: [PATCH 077/113] Include path in the search index with include_path (#1509) --- Cargo.lock | 45 ++++++------ components/config/src/config/search.rs | 3 + components/search/src/lib.rs | 69 +++++++++++++++++-- .../getting-started/configuration.md | 2 + 4 files changed, 89 insertions(+), 30 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 9f29bca9..cec75dda 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -155,9 +155,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.6.1" +version = "3.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63396b8a4b9de3f4fdfb320ab6080762242f66a8ef174c49d8e19b674db4cdbe" +checksum = "9c59e7af012c713f529e7a3ee57ce9b31ddd858d4b512923602f74608b009631" [[package]] name = "byte-tools" @@ -207,9 +207,9 @@ checksum = "b700ce4376041dcd0a327fd0097c41095743c4c8af8887265942faf1100bd040" [[package]] name = "cc" -version = "1.0.67" +version = "1.0.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3c69b077ad434294d3ce9f1f6143a2a4b89a8a2d54ef813d85003a4fd1137fd" +checksum = "4a72c244c1ff497a746a7e1fb3d14bd08420ecda70c8f25c7112f2781652d787" dependencies = [ "jobserver", ] @@ -348,9 +348,9 @@ dependencies = [ [[package]] name = "crossbeam-epoch" -version = "0.9.4" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52fb27eab85b17fbb9f6fd667089e07d6a2eb8743d02639ee7f6a7a7729c9c94" +checksum = "4ec02e091aa634e2c3ada4a392989e7c3116673ef0ac5b72232439094d73b7fd" dependencies = [ "cfg-if 1.0.0", "crossbeam-utils", @@ -361,11 +361,10 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.4" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4feb231f0d4d6af81aed15928e58ecf5816aa62a2393e2c82f46973e92a9a278" +checksum = "d82cfc11ce7f2c3faef78d8a684447b40d503d9681acebed6cb728d45940c4db" dependencies = [ - "autocfg", "cfg-if 1.0.0", "lazy_static", ] @@ -462,9 +461,9 @@ checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" [[package]] name = "elasticlunr-rs" -version = "2.3.11" +version = "2.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "959fbc9a6ebced545cbe365fdce5e25c6ab7683f2ca4ecc9fb9d0db663bf73d5" +checksum = "2f8cf73b19a7aece6942f5745a2fc1ae3c8b0533569707d596b5d6baa7d6c600" dependencies = [ "jieba-rs", "lazy_static", @@ -922,9 +921,9 @@ checksum = "f3a87b616e37e93c22fb19bcd386f02f3af5ea98a25670ad0fce773de23c5e68" [[package]] name = "httpdate" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05842d0d43232b23ccb7060ecb0f0626922c21f30012e97b767b30afd4a5d4b9" +checksum = "6456b8a6c8f33fee7d958fcd1b60d55b11940a79e63ae87013e6d22e26034440" [[package]] name = "humansize" @@ -934,9 +933,9 @@ checksum = "02296996cb8796d7c6e3bc2d9211b7802812d36999a51bb754123ead7d37d026" [[package]] name = "hyper" -version = "0.14.7" +version = "0.14.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e5f105c494081baa3bf9e200b279e27ec1623895cd504c7dbef8d0b080fcf54" +checksum = "d3f71a7eea53a3f8257a7b4795373ff886397178cd634430ea94e12d7fe4fe34" dependencies = [ "bytes 1.0.1", "futures-channel", @@ -1177,9 +1176,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.94" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18794a8ad5b29321f790b55d93dfba91e125cb1a9edbd4f8e3150acc771c1a5e" +checksum = "789da6d93f1b866ffe175afc5322a4d76c038605a1c3319bb57b06967ca98a36" [[package]] name = "library" @@ -1364,9 +1363,9 @@ checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc" [[package]] name = "memoffset" -version = "0.6.3" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f83fb6581e8ed1f85fd45c116db8405483899489e38406156c25eb743554361d" +checksum = "59accc507f1338036a0477ef61afdae33cde60840f4dfe481319ce3ad116ddf9" dependencies = [ "autocfg", ] @@ -2719,9 +2718,9 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.6.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd3076b5c8cc18138b8f8814895c11eb4de37114a5d127bafdc5e55798ceef37" +checksum = "0a38d31d7831c6ed7aad00aa4c12d9375fd225a6dd77da1d25b707346319a975" dependencies = [ "autocfg", "bytes 1.0.1", @@ -2898,9 +2897,9 @@ dependencies = [ [[package]] name = "unicode-normalization" -version = "0.1.17" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07fbfce1c8a97d547e8b5334978438d9d6ec8c20e38f56d4a4374d181493eaef" +checksum = "33717dca7ac877f497014e10d73f3acf948c342bee31b5ca7892faf94ccc6b49" dependencies = [ "tinyvec", ] diff --git a/components/config/src/config/search.rs b/components/config/src/config/search.rs index 82d46c7a..71ff325d 100644 --- a/components/config/src/config/search.rs +++ b/components/config/src/config/search.rs @@ -13,6 +13,8 @@ pub struct Search { /// Includes the description in the search index. When the site becomes too large, you can switch /// to that instead. `false` by default pub include_description: bool, + /// Include the path of the page in the search index. `false` by default. + pub include_path: bool, } impl Default for Search { @@ -21,6 +23,7 @@ impl Default for Search { include_title: true, include_content: true, include_description: false, + include_path: false, truncate_content_length: None, } } diff --git a/components/search/src/lib.rs b/components/search/src/lib.rs index 4daaa761..a91f9587 100644 --- a/components/search/src/lib.rs +++ b/components/search/src/lib.rs @@ -1,6 +1,8 @@ use std::collections::{HashMap, HashSet}; use elasticlunr::{Index, Language}; +use elasticlunr::pipeline; +use elasticlunr::pipeline::TokenizerFn; use lazy_static::lazy_static; use config::{Config, Search}; @@ -36,6 +38,10 @@ fn build_fields(search_config: &Search) -> Vec { fields.push("description".to_owned()); } + if search_config.include_path { + fields.push("path".to_owned()); + } + if search_config.include_content { fields.push("body".to_owned()); } @@ -43,10 +49,46 @@ fn build_fields(search_config: &Search) -> Vec { fields } +fn path_tokenizer(text: &str) -> Vec { + text.split(|c: char| c.is_whitespace() || c == '-' || c == '/') + .filter(|s| !s.is_empty()) + .map(|s| s.trim().to_lowercase()) + .collect() +} + +fn build_tokenizers(search_config: &Search, language: Language) -> Vec { + let text_tokenizer = match language { + #[cfg(feature = "indexing-zh")] + Language::Chinese => pipeline::tokenize_chinese, + #[cfg(feature = "indexing-ja")] + Language::Japanese => pipeline::tokenize_japanese, + _ => pipeline::tokenize, + }; + let mut tokenizers: Vec = vec![]; + if search_config.include_title { + tokenizers.push(text_tokenizer); + } + + if search_config.include_description { + tokenizers.push(text_tokenizer); + } + + if search_config.include_path { + tokenizers.push(path_tokenizer); + } + + if search_config.include_content { + tokenizers.push(text_tokenizer); + } + + tokenizers +} + fn fill_index( search_config: &Search, title: &Option, description: &Option, + path: &str, content: &str, ) -> Vec { let mut row = vec![]; @@ -59,6 +101,10 @@ fn fill_index( row.push(description.clone().unwrap_or_default()); } + if search_config.include_path { + row.push(path.to_string()); + } + if search_config.include_content { let body = AMMONIA.clean(&content).to_string(); if let Some(truncate_len) = search_config.truncate_content_length { @@ -90,9 +136,11 @@ pub fn build_index(lang: &str, library: &Library, config: &Config) -> Result, ) { if !section.meta.in_search_index { return; @@ -111,14 +160,16 @@ fn add_section_to_index( // Don't index redirecting sections if section.meta.redirect_to.is_none() { - index.add_doc( + index.add_doc_with_tokenizers( §ion.permalink, &fill_index( search_config, §ion.meta.title, §ion.meta.description, + §ion.path, §ion.content, ), + tokenizers.clone(), ); } @@ -128,9 +179,10 @@ fn add_section_to_index( continue; } - index.add_doc( + index.add_doc_with_tokenizers( &page.permalink, - &fill_index(search_config, &page.meta.title, &page.meta.description, &page.content), + &fill_index(search_config, &page.meta.title, &page.meta.description, &page.path, &page.content), + tokenizers.clone(), ); } } @@ -166,9 +218,10 @@ mod tests { let config = Config::default(); let title = Some("A title".to_string()); let description = Some("A description".to_string()); + let path = "/a/page/".to_string(); let content = "Some content".to_string(); - let res = fill_index(&config.search, &title, &description, &content); + let res = fill_index(&config.search, &title, &description, &path, &content); assert_eq!(res.len(), 2); assert_eq!(res[0], title.unwrap()); assert_eq!(res[1], content); @@ -180,9 +233,10 @@ mod tests { config.search.include_description = true; let title = Some("A title".to_string()); let description = Some("A description".to_string()); + let path = "/a/page/".to_string(); let content = "Some content".to_string(); - let res = fill_index(&config.search, &title, &description, &content); + let res = fill_index(&config.search, &title, &description, &path, &content); assert_eq!(res.len(), 3); assert_eq!(res[0], title.unwrap()); assert_eq!(res[1], description.unwrap()); @@ -195,9 +249,10 @@ mod tests { config.search.truncate_content_length = Some(5); let title = Some("A title".to_string()); let description = Some("A description".to_string()); + let path = "/a/page/".to_string(); let content = "Some content".to_string(); - let res = fill_index(&config.search, &title, &description, &content); + let res = fill_index(&config.search, &title, &description, &path, &content); assert_eq!(res.len(), 2); assert_eq!(res[0], title.unwrap()); assert_eq!(res[1], content[..5]); diff --git a/docs/content/documentation/getting-started/configuration.md b/docs/content/documentation/getting-started/configuration.md index 8673dc54..7d4a4332 100644 --- a/docs/content/documentation/getting-started/configuration.md +++ b/docs/content/documentation/getting-started/configuration.md @@ -151,6 +151,8 @@ build_search_index = false include_title = true # Whether to include the description of the page/section in the index include_description = false +# Whether to include the path of the page/section in the index +include_path = false # Whether to include the rendered content of the page/section in the index include_content = true # At which character to truncate the content to. Useful if you have a lot of pages and the index would From 2289b2f55a90f4ad76eb5c72d99189e7197f0643 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 2 Jun 2021 21:46:19 +0200 Subject: [PATCH 078/113] Fix config loading Closes #1512 --- components/config/src/config/mod.rs | 16 ++- components/library/src/content/page.rs | 18 +-- components/rendering/src/shortcode.rs | 2 +- .../rendering/tests/codeblock_hide_lines.rs | 2 +- .../rendering/tests/codeblock_hl_lines.rs | 26 ++-- components/rendering/tests/markdown.rs | 126 +++++++++--------- components/search/src/lib.rs | 18 ++- 7 files changed, 110 insertions(+), 98 deletions(-) diff --git a/components/config/src/config/mod.rs b/components/config/src/config/mod.rs index b1cad9b1..19971e68 100644 --- a/components/config/src/config/mod.rs +++ b/components/config/src/config/mod.rs @@ -151,6 +151,12 @@ impl Config { Ok(config) } + pub fn default_for_test() -> Self { + let mut config = Config::default(); + config.add_default_language(); + config + } + /// Parses a config file from the given path pub fn from_file>(path: P) -> Result { let path = path.as_ref(); @@ -184,7 +190,7 @@ impl Config { } /// Adds the default language to the list of languages if not present - fn add_default_language(&mut self) { + pub fn add_default_language(&mut self) { // We automatically insert a language option for the default language *if* it isn't present // TODO: what to do if there is like an empty dict for the lang? merge it or use the language // TODO: as source of truth? @@ -193,7 +199,7 @@ impl Config { self.default_language.clone(), languages::LanguageOptions { title: self.title.clone(), - description: self.title.clone(), + description: self.description.clone(), generate_feed: self.generate_feed, build_search_index: self.build_search_index, taxonomies: self.taxonomies.clone(), @@ -319,7 +325,7 @@ pub fn merge(into: &mut Toml, from: &Toml) -> Result<()> { impl Default for Config { fn default() -> Config { - let mut config = Config { + Config { base_url: DEFAULT_BASE_URL.to_string(), title: None, description: None, @@ -344,9 +350,7 @@ impl Default for Config { search: search::Search::default(), markdown: markup::Markdown::default(), extra: HashMap::new(), - }; - config.add_default_language(); - config + } } } diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 9f5e2667..d0937187 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -353,7 +353,8 @@ mod tests { use utils::slugs::SlugifyStrategy; #[test] - fn test_can_parse_a_valid_page() { + fn can_parse_a_valid_page() { + let config = Config::default_for_test(); let content = r#" +++ title = "Hello" @@ -361,16 +362,11 @@ description = "hey there" slug = "hello-world" +++ Hello world"#; - let res = Page::parse(Path::new("post.md"), content, &Config::default(), &PathBuf::new()); + let res = Page::parse(Path::new("post.md"), content, &config, &PathBuf::new()); assert!(res.is_ok()); let mut page = res.unwrap(); - page.render_markdown( - &HashMap::default(), - &Tera::default(), - &Config::default(), - InsertAnchor::None, - ) - .unwrap(); + page.render_markdown(&HashMap::default(), &Tera::default(), &config, InsertAnchor::None) + .unwrap(); assert_eq!(page.meta.title.unwrap(), "Hello".to_string()); assert_eq!(page.meta.slug.unwrap(), "hello-world".to_string()); @@ -525,7 +521,7 @@ Hello world"#; #[test] fn can_specify_summary() { - let config = Config::default(); + let config = Config::default_for_test(); let content = r#" +++ +++ @@ -542,7 +538,7 @@ Hello world #[test] fn strips_footnotes_in_summary() { - let config = Config::default(); + let config = Config::default_for_test(); let content = r#" +++ +++ diff --git a/components/rendering/src/shortcode.rs b/components/rendering/src/shortcode.rs index 298b9a4e..43124455 100644 --- a/components/rendering/src/shortcode.rs +++ b/components/rendering/src/shortcode.rs @@ -268,7 +268,7 @@ mod tests { } fn render_shortcodes(code: &str, tera: &Tera) -> String { - let config = Config::default(); + let config = Config::default_for_test(); let permalinks = HashMap::new(); let context = RenderContext::new( &tera, diff --git a/components/rendering/tests/codeblock_hide_lines.rs b/components/rendering/tests/codeblock_hide_lines.rs index 308f2f14..c753c429 100644 --- a/components/rendering/tests/codeblock_hide_lines.rs +++ b/components/rendering/tests/codeblock_hide_lines.rs @@ -30,7 +30,7 @@ macro_rules! colored_html { fn hide_lines_simple() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, diff --git a/components/rendering/tests/codeblock_hl_lines.rs b/components/rendering/tests/codeblock_hl_lines.rs index 23db55be..ef4e5f2f 100644 --- a/components/rendering/tests/codeblock_hl_lines.rs +++ b/components/rendering/tests/codeblock_hl_lines.rs @@ -36,7 +36,7 @@ macro_rules! colored_html { fn hl_lines_simple() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -72,7 +72,7 @@ baz fn hl_lines_in_middle() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -108,7 +108,7 @@ baz fn hl_lines_all() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -142,7 +142,7 @@ baz fn hl_lines_start_from_one() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -177,7 +177,7 @@ baz fn hl_lines_start_from_zero() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -212,7 +212,7 @@ baz fn hl_lines_end() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -247,7 +247,7 @@ baz fn hl_lines_end_out_of_bounds() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -282,7 +282,7 @@ baz fn hl_lines_overlap() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -316,7 +316,7 @@ baz fn hl_lines_multiple() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -351,7 +351,7 @@ baz fn hl_lines_extra_spaces() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -386,7 +386,7 @@ baz fn hl_lines_int_and_range() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -422,7 +422,7 @@ baz fn hl_lines_single_line_range() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -458,7 +458,7 @@ baz fn hl_lines_reverse_range() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, diff --git a/components/rendering/tests/markdown.rs b/components/rendering/tests/markdown.rs index 0c6296c0..98765f56 100644 --- a/components/rendering/tests/markdown.rs +++ b/components/rendering/tests/markdown.rs @@ -12,7 +12,7 @@ use utils::slugs::SlugifyStrategy; fn can_do_render_content_simple() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera_ctx, &config, @@ -29,7 +29,7 @@ fn can_do_render_content_simple() { fn doesnt_highlight_code_block_with_highlighting_off() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = false; let context = RenderContext::new( &tera_ctx, @@ -47,7 +47,7 @@ fn doesnt_highlight_code_block_with_highlighting_off() { fn can_highlight_code_block_no_lang() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -68,7 +68,7 @@ fn can_highlight_code_block_no_lang() { fn can_highlight_code_block_with_lang() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -89,7 +89,7 @@ fn can_highlight_code_block_with_lang() { fn can_higlight_code_block_with_unknown_lang() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, @@ -110,7 +110,7 @@ fn can_higlight_code_block_with_unknown_lang() { #[test] fn can_render_shortcode() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -137,7 +137,7 @@ Hello #[test] fn can_render_shortcode_with_markdown_char_in_args_name() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -157,7 +157,7 @@ fn can_render_shortcode_with_markdown_char_in_args_name() { #[test] fn can_render_shortcode_with_markdown_char_in_args_value() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -187,7 +187,7 @@ fn can_render_body_shortcode_with_markdown_char_in_name() { let mut tera = Tera::default(); tera.extend(&ZOLA_TERA).unwrap(); let input = vec!["quo_te", "qu_o_te"]; - let config = Config::default(); + let config = Config::default_for_test(); for i in input { tera.add_raw_template( @@ -232,7 +232,7 @@ Here is another paragraph. "; tera.add_raw_template("shortcodes/figure.html", shortcode).unwrap(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera, &config, @@ -272,7 +272,7 @@ Here is another paragraph. "; tera.add_raw_template("shortcodes/figure.html", shortcode).unwrap(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera, &config, @@ -290,7 +290,7 @@ Here is another paragraph. #[test] fn can_render_several_shortcode_in_row() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -331,7 +331,7 @@ Hello #[test] fn doesnt_render_ignored_shortcodes() { let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.highlight_code = false; let context = RenderContext::new( &ZOLA_TERA, @@ -355,7 +355,7 @@ fn can_render_shortcode_with_body() { ) .unwrap(); let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera, &config, @@ -382,7 +382,7 @@ A quote fn errors_rendering_unknown_shortcode() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera_ctx, &config, @@ -400,7 +400,7 @@ fn can_make_valid_relative_link() { let mut permalinks = HashMap::new(); permalinks.insert("pages/about.md".to_string(), "https://vincent.is/about".to_string()); let tera_ctx = Tera::default(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera_ctx, &config, @@ -425,7 +425,7 @@ fn can_make_relative_links_with_anchors() { let mut permalinks = HashMap::new(); permalinks.insert("pages/about.md".to_string(), "https://vincent.is/about".to_string()); let tera_ctx = Tera::default(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera_ctx, &config, @@ -443,7 +443,7 @@ fn can_make_relative_links_with_anchors() { fn errors_relative_link_inexistant() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera_ctx, &config, @@ -460,7 +460,7 @@ fn errors_relative_link_inexistant() { fn can_add_id_to_headings() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera_ctx, &config, @@ -477,7 +477,7 @@ fn can_add_id_to_headings() { fn can_add_id_to_headings_same_slug() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera_ctx, &config, @@ -494,7 +494,7 @@ fn can_add_id_to_headings_same_slug() { fn can_add_non_slug_id_to_headings() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.slugify.anchors = SlugifyStrategy::Safe; let context = RenderContext::new( &tera_ctx, @@ -512,7 +512,7 @@ fn can_add_non_slug_id_to_headings() { fn can_handle_manual_ids_on_headings() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera_ctx, &config, @@ -556,7 +556,7 @@ fn can_handle_manual_ids_on_headings() { fn blank_headings() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera_ctx, &config, @@ -575,7 +575,7 @@ fn blank_headings() { #[test] fn can_insert_anchor_left() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -594,7 +594,7 @@ fn can_insert_anchor_left() { #[test] fn can_insert_anchor_right() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -613,7 +613,7 @@ fn can_insert_anchor_right() { #[test] fn can_insert_anchor_for_multi_heading() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -634,7 +634,7 @@ fn can_insert_anchor_for_multi_heading() { #[test] fn can_insert_anchor_with_exclamation_mark() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -654,7 +654,7 @@ fn can_insert_anchor_with_exclamation_mark() { #[test] fn can_insert_anchor_with_link() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -673,7 +673,7 @@ fn can_insert_anchor_with_link() { #[test] fn can_insert_anchor_with_other_special_chars() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -692,7 +692,7 @@ fn can_insert_anchor_with_other_special_chars() { #[test] fn can_make_toc() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -725,7 +725,7 @@ fn can_make_toc() { #[test] fn can_ignore_tags_in_toc() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -762,7 +762,7 @@ fn can_ignore_tags_in_toc() { #[test] fn can_understand_backtick_in_titles() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -778,7 +778,7 @@ fn can_understand_backtick_in_titles() { #[test] fn can_understand_backtick_in_paragraphs() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -795,7 +795,7 @@ fn can_understand_backtick_in_paragraphs() { #[test] fn can_understand_links_in_heading() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -811,7 +811,7 @@ fn can_understand_links_in_heading() { #[test] fn can_understand_link_with_title_in_heading() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -831,7 +831,7 @@ fn can_understand_link_with_title_in_heading() { #[test] fn can_understand_emphasis_in_heading() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -847,7 +847,7 @@ fn can_understand_emphasis_in_heading() { #[test] fn can_understand_strong_in_heading() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -863,7 +863,7 @@ fn can_understand_strong_in_heading() { #[test] fn can_understand_code_in_heading() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -880,7 +880,7 @@ fn can_understand_code_in_heading() { #[test] fn can_understand_footnote_in_heading() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -905,7 +905,7 @@ fn can_make_valid_relative_link_in_heading() { let mut permalinks = HashMap::new(); permalinks.insert("pages/about.md".to_string(), "https://vincent.is/about/".to_string()); let tera_ctx = Tera::default(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera_ctx, &config, @@ -925,7 +925,7 @@ fn can_make_valid_relative_link_in_heading() { #[test] fn can_make_permalinks_with_colocated_assets_for_link() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -941,7 +941,7 @@ fn can_make_permalinks_with_colocated_assets_for_link() { #[test] fn can_make_permalinks_with_colocated_assets_for_image() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -960,7 +960,7 @@ fn can_make_permalinks_with_colocated_assets_for_image() { #[test] fn markdown_doesnt_wrap_html_in_paragraph() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -993,7 +993,7 @@ Some text #[test] fn correctly_captures_external_links() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -1019,7 +1019,7 @@ Email: fn can_handle_summaries() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera_ctx, &config, @@ -1074,7 +1074,7 @@ fn doesnt_try_to_highlight_content_from_shortcode() { let expected = "
    \n \n \"Some\n \n\n
    Some spheres.
    \n
    "; tera.add_raw_template("shortcodes/figure.html", shortcode).unwrap(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera, &config, @@ -1103,7 +1103,7 @@ fn can_emit_newlines_and_whitespace_with_shortcode() { let expected = "
    \nHello\n    \n    Zola\n   \n  !\n
    "; tera.add_raw_template(&format!("shortcodes/{}.html", "preformatted"), shortcode).unwrap(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera, &config, @@ -1138,7 +1138,7 @@ fn can_emit_newlines_and_whitespace_with_shortcode() { // let expected = r#"

    ["multi", "ple", "lines"]

    "#; // // tera.add_raw_template(&format!("shortcodes/{}.html", "alert"), shortcode).unwrap(); -// let config = Config::default(); +// let config = Config::default_for_test(); // let context = RenderContext::new(&tera, &config, &config.default_language, "", &permalinks_ctx, InsertAnchor::None); // // let res = render_content(markdown_string, &context).unwrap(); @@ -1157,7 +1157,7 @@ fn leaves_custom_url_scheme_untouched() { "#; let tera_ctx = Tera::default(); - let config = Config::default(); + let config = Config::default_for_test(); let permalinks_ctx = HashMap::new(); let context = RenderContext::new( @@ -1184,7 +1184,7 @@ fn stops_with_an_error_on_an_empty_link() { let content = r#"[some link]()"#; let tera_ctx = Tera::default(); - let config = Config::default(); + let config = Config::default_for_test(); let permalinks_ctx = HashMap::new(); let context = RenderContext::new( @@ -1237,7 +1237,7 @@ Bla bla"#; "#; tera.add_raw_template("shortcodes/quote.md", shortcode).unwrap(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera, &config, @@ -1274,7 +1274,7 @@ fn can_render_shortcode_body_with_no_invalid_escaping() { let expected = "\n \n \n

    (click for full size)

    \n
    "; tera.add_raw_template("shortcodes/resize_image.html", shortcode).unwrap(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera, &config, @@ -1310,7 +1310,7 @@ fn can_render_commented_out_shortcodes_fine() { let expected = ""; tera.add_raw_template("shortcodes/resize_image.html", shortcode).unwrap(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera, &config, @@ -1349,7 +1349,7 @@ Again more text"#; "#; tera.add_raw_template("shortcodes/quote.md", shortcode).unwrap(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera, &config, @@ -1366,7 +1366,7 @@ Again more text"#; #[test] fn can_render_emoji_alias() { let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.render_emoji = true; let context = RenderContext::new( &ZOLA_TERA, @@ -1383,7 +1383,7 @@ fn can_render_emoji_alias() { #[test] fn emoji_aliases_are_ignored_when_disabled_in_config() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -1419,7 +1419,7 @@ fn invocation_count_increments_in_shortcode() { tera.add_raw_template("shortcodes/a.html", shortcode_template_a).unwrap(); tera.add_raw_template("shortcodes/b.html", shortcode_template_b).unwrap(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &tera, &config, @@ -1436,7 +1436,7 @@ fn invocation_count_increments_in_shortcode() { #[test] fn basic_external_links_unchanged() { let permalinks_ctx = HashMap::new(); - let config = Config::default(); + let config = Config::default_for_test(); let context = RenderContext::new( &ZOLA_TERA, &config, @@ -1452,7 +1452,7 @@ fn basic_external_links_unchanged() { #[test] fn can_set_target_blank_for_external_link() { let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.external_links_target_blank = true; let context = RenderContext::new( &ZOLA_TERA, @@ -1469,7 +1469,7 @@ fn can_set_target_blank_for_external_link() { #[test] fn can_set_nofollow_for_external_link() { let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.external_links_no_follow = true; let context = RenderContext::new( &ZOLA_TERA, @@ -1490,7 +1490,7 @@ fn can_set_nofollow_for_external_link() { #[test] fn can_set_noreferrer_for_external_link() { let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.external_links_no_referrer = true; let context = RenderContext::new( &ZOLA_TERA, @@ -1510,7 +1510,7 @@ fn can_set_noreferrer_for_external_link() { #[test] fn can_set_all_options_for_external_link() { let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.external_links_target_blank = true; config.markdown.external_links_no_follow = true; config.markdown.external_links_no_referrer = true; @@ -1529,7 +1529,7 @@ fn can_set_all_options_for_external_link() { #[test] fn can_use_smart_punctuation() { let permalinks_ctx = HashMap::new(); - let mut config = Config::default(); + let mut config = Config::default_for_test(); config.markdown.smart_punctuation = true; let context = RenderContext::new( &ZOLA_TERA, diff --git a/components/search/src/lib.rs b/components/search/src/lib.rs index a91f9587..58e39a30 100644 --- a/components/search/src/lib.rs +++ b/components/search/src/lib.rs @@ -1,8 +1,8 @@ use std::collections::{HashMap, HashSet}; -use elasticlunr::{Index, Language}; use elasticlunr::pipeline; use elasticlunr::pipeline::TokenizerFn; +use elasticlunr::{Index, Language}; use lazy_static::lazy_static; use config::{Config, Search}; @@ -140,7 +140,13 @@ pub fn build_index(lang: &str, library: &Library, config: &Config) -> Result Date: Mon, 7 Jun 2021 21:00:00 +0200 Subject: [PATCH 079/113] Clear SITE_CONTENT on full reload --- src/cmd/serve.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index 69539915..53bcfcfa 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -228,6 +228,8 @@ fn create_new_site( include_drafts: bool, ws_port: Option, ) -> Result<(Site, String)> { + SITE_CONTENT.write().unwrap().clear(); + let mut site = Site::new(root_dir, config_file)?; let base_address = format!("{}:{}", base_url, interface_port); From a97779567e64d5257d67e1f91d0c15c24e657467 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 11 May 2021 18:05:00 +0200 Subject: [PATCH 080/113] Split Tera functions in several files --- .../templates/src/global_fns/content.rs | 324 +++++++++++++ components/templates/src/global_fns/images.rs | 120 +++++ components/templates/src/global_fns/mod.rs | 426 +----------------- 3 files changed, 448 insertions(+), 422 deletions(-) create mode 100644 components/templates/src/global_fns/content.rs create mode 100644 components/templates/src/global_fns/images.rs diff --git a/components/templates/src/global_fns/content.rs b/components/templates/src/global_fns/content.rs new file mode 100644 index 00000000..91f2387f --- /dev/null +++ b/components/templates/src/global_fns/content.rs @@ -0,0 +1,324 @@ +use library::{Library, Taxonomy}; +use std::collections::HashMap; +use std::path::PathBuf; +use std::sync::{Arc, RwLock}; +use tera::{from_value, to_value, Function as TeraFn, Result, Value}; +use utils::slugs::{slugify_paths, SlugifyStrategy}; + +#[derive(Debug)] +pub struct GetTaxonomyUrl { + taxonomies: HashMap>, + default_lang: String, + slugify: SlugifyStrategy, +} + +impl GetTaxonomyUrl { + pub fn new(default_lang: &str, all_taxonomies: &[Taxonomy], slugify: SlugifyStrategy) -> Self { + let mut taxonomies = HashMap::new(); + for taxo in all_taxonomies { + let mut items = HashMap::new(); + for item in &taxo.items { + items.insert(slugify_paths(&item.name.clone(), slugify), item.permalink.clone()); + } + taxonomies.insert(format!("{}-{}", taxo.kind.name, taxo.lang), items); + } + Self { taxonomies, default_lang: default_lang.to_string(), slugify } + } +} +impl TeraFn for GetTaxonomyUrl { + fn call(&self, args: &HashMap) -> Result { + let kind = required_arg!( + String, + args.get("kind"), + "`get_taxonomy_url` requires a `kind` argument with a string value" + ); + let name = required_arg!( + String, + args.get("name"), + "`get_taxonomy_url` requires a `name` argument with a string value" + ); + let lang = + optional_arg!(String, args.get("lang"), "`get_taxonomy`: `lang` must be a string") + .unwrap_or_else(|| self.default_lang.clone()); + + let container = match self.taxonomies.get(&format!("{}-{}", kind, lang)) { + Some(c) => c, + None => { + return Err(format!( + "`get_taxonomy_url` received an unknown taxonomy as kind: {}", + kind + ) + .into()); + } + }; + + if let Some(permalink) = container.get(&slugify_paths(&name, self.slugify)) { + return Ok(to_value(permalink).unwrap()); + } + + Err(format!("`get_taxonomy_url`: couldn't find `{}` in `{}` taxonomy", name, kind).into()) + } +} + +#[derive(Debug)] +pub struct GetPage { + base_path: PathBuf, + library: Arc>, +} +impl GetPage { + pub fn new(base_path: PathBuf, library: Arc>) -> Self { + Self { base_path: base_path.join("content"), library } + } +} +impl TeraFn for GetPage { + fn call(&self, args: &HashMap) -> Result { + let path = required_arg!( + String, + args.get("path"), + "`get_page` requires a `path` argument with a string value" + ); + let full_path = self.base_path.join(&path); + let library = self.library.read().unwrap(); + match library.get_page(&full_path) { + Some(p) => Ok(to_value(p.to_serialized(&library)).unwrap()), + None => Err(format!("Page `{}` not found.", path).into()), + } + } +} + +#[derive(Debug)] +pub struct GetSection { + base_path: PathBuf, + library: Arc>, +} +impl GetSection { + pub fn new(base_path: PathBuf, library: Arc>) -> Self { + Self { base_path: base_path.join("content"), library } + } +} +impl TeraFn for GetSection { + fn call(&self, args: &HashMap) -> Result { + let path = required_arg!( + String, + args.get("path"), + "`get_section` requires a `path` argument with a string value" + ); + + let metadata_only = args + .get("metadata_only") + .map_or(false, |c| from_value::(c.clone()).unwrap_or(false)); + + let full_path = self.base_path.join(&path); + let library = self.library.read().unwrap(); + + match library.get_section(&full_path) { + Some(s) => { + if metadata_only { + Ok(to_value(s.to_serialized_basic(&library)).unwrap()) + } else { + Ok(to_value(s.to_serialized(&library)).unwrap()) + } + } + None => Err(format!("Section `{}` not found.", path).into()), + } + } +} + +#[derive(Debug)] +pub struct GetTaxonomy { + library: Arc>, + taxonomies: HashMap, + default_lang: String, +} +impl GetTaxonomy { + pub fn new( + default_lang: &str, + all_taxonomies: Vec, + library: Arc>, + ) -> Self { + let mut taxonomies = HashMap::new(); + for taxo in all_taxonomies { + taxonomies.insert(format!("{}-{}", taxo.kind.name, taxo.lang), taxo); + } + Self { taxonomies, library, default_lang: default_lang.to_string() } + } +} +impl TeraFn for GetTaxonomy { + fn call(&self, args: &HashMap) -> Result { + let kind = required_arg!( + String, + args.get("kind"), + "`get_taxonomy` requires a `kind` argument with a string value" + ); + + let lang = + optional_arg!(String, args.get("lang"), "`get_taxonomy`: `lang` must be a string") + .unwrap_or_else(|| self.default_lang.clone()); + + match self.taxonomies.get(&format!("{}-{}", kind, lang)) { + Some(t) => Ok(to_value(t.to_serialized(&self.library.read().unwrap())).unwrap()), + None => { + Err(format!("`get_taxonomy` received an unknown taxonomy as kind: {}", kind).into()) + } + } + } +} + +#[cfg(test)] +mod tests { + use super::*; + use config::{Config, Taxonomy as TaxonomyConfig}; + use library::TaxonomyItem; + + #[test] + fn can_get_taxonomy() { + let mut config = Config::default(); + config.slugify.taxonomies = SlugifyStrategy::On; + let taxo_config = TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; + let taxo_config_fr = + TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; + let library = Arc::new(RwLock::new(Library::new(0, 0, false))); + let tag = TaxonomyItem::new( + "Programming", + &config.default_language, + "tags", + &config, + vec![], + &library.read().unwrap(), + ); + let tag_fr = TaxonomyItem::new( + "Programmation", + "fr", + "tags", + &config, + vec![], + &library.read().unwrap(), + ); + let tags = Taxonomy { + kind: taxo_config, + lang: config.default_language.clone(), + slug: "tags".to_string(), + items: vec![tag], + }; + let tags_fr = Taxonomy { + kind: taxo_config_fr, + lang: "fr".to_owned(), + slug: "tags".to_string(), + items: vec![tag_fr], + }; + + let taxonomies = vec![tags.clone(), tags_fr.clone()]; + let static_fn = + GetTaxonomy::new(&config.default_language, taxonomies.clone(), library.clone()); + // can find it correctly + let mut args = HashMap::new(); + args.insert("kind".to_string(), to_value("tags").unwrap()); + let res = static_fn.call(&args).unwrap(); + let res_obj = res.as_object().unwrap(); + assert_eq!(res_obj["kind"], to_value(tags.kind).unwrap()); + assert_eq!(res_obj["items"].clone().as_array().unwrap().len(), 1); + assert_eq!( + res_obj["items"].clone().as_array().unwrap()[0].clone().as_object().unwrap()["name"], + Value::String("Programming".to_string()) + ); + assert_eq!( + res_obj["items"].clone().as_array().unwrap()[0].clone().as_object().unwrap()["slug"], + Value::String("programming".to_string()) + ); + assert_eq!( + res_obj["items"].clone().as_array().unwrap()[0].clone().as_object().unwrap() + ["permalink"], + Value::String("http://a-website.com/tags/programming/".to_string()) + ); + assert_eq!( + res_obj["items"].clone().as_array().unwrap()[0].clone().as_object().unwrap()["pages"], + Value::Array(vec![]) + ); + // Works with other languages as well + let mut args = HashMap::new(); + args.insert("kind".to_string(), to_value("tags").unwrap()); + args.insert("lang".to_string(), to_value("fr").unwrap()); + let res = static_fn.call(&args).unwrap(); + let res_obj = res.as_object().unwrap(); + assert_eq!(res_obj["kind"], to_value(tags_fr.kind).unwrap()); + assert_eq!(res_obj["items"].clone().as_array().unwrap().len(), 1); + assert_eq!( + res_obj["items"].clone().as_array().unwrap()[0].clone().as_object().unwrap()["name"], + Value::String("Programmation".to_string()) + ); + + // and errors if it can't find it + let mut args = HashMap::new(); + args.insert("kind".to_string(), to_value("something-else").unwrap()); + assert!(static_fn.call(&args).is_err()); + } + + #[test] + fn can_get_taxonomy_url() { + let mut config = Config::default(); + config.slugify.taxonomies = SlugifyStrategy::On; + let taxo_config = TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; + let taxo_config_fr = + TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; + let library = Library::new(0, 0, false); + let tag = TaxonomyItem::new( + "Programming", + &config.default_language, + "tags", + &config, + vec![], + &library, + ); + let tag_fr = TaxonomyItem::new("Programmation", "fr", "tags", &config, vec![], &library); + let tags = Taxonomy { + kind: taxo_config, + lang: config.default_language.clone(), + slug: "tags".to_string(), + items: vec![tag], + }; + let tags_fr = Taxonomy { + kind: taxo_config_fr, + lang: "fr".to_owned(), + slug: "tags".to_string(), + items: vec![tag_fr], + }; + + let taxonomies = vec![tags.clone(), tags_fr.clone()]; + let static_fn = + GetTaxonomyUrl::new(&config.default_language, &taxonomies, config.slugify.taxonomies); + + // can find it correctly + let mut args = HashMap::new(); + args.insert("kind".to_string(), to_value("tags").unwrap()); + args.insert("name".to_string(), to_value("Programming").unwrap()); + assert_eq!( + static_fn.call(&args).unwrap(), + to_value("http://a-website.com/tags/programming/").unwrap() + ); + + // can find it correctly with inconsistent capitalisation + let mut args = HashMap::new(); + args.insert("kind".to_string(), to_value("tags").unwrap()); + args.insert("name".to_string(), to_value("programming").unwrap()); + assert_eq!( + static_fn.call(&args).unwrap(), + to_value("http://a-website.com/tags/programming/").unwrap() + ); + + // works with other languages + let mut args = HashMap::new(); + args.insert("kind".to_string(), to_value("tags").unwrap()); + args.insert("name".to_string(), to_value("Programmation").unwrap()); + args.insert("lang".to_string(), to_value("fr").unwrap()); + assert_eq!( + static_fn.call(&args).unwrap(), + to_value("http://a-website.com/fr/tags/programmation/").unwrap() + ); + + // and errors if it can't find it + let mut args = HashMap::new(); + args.insert("kind".to_string(), to_value("tags").unwrap()); + args.insert("name".to_string(), to_value("random").unwrap()); + assert!(static_fn.call(&args).is_err()); + } +} diff --git a/components/templates/src/global_fns/images.rs b/components/templates/src/global_fns/images.rs new file mode 100644 index 00000000..d225ecdb --- /dev/null +++ b/components/templates/src/global_fns/images.rs @@ -0,0 +1,120 @@ +use std::collections::HashMap; +use std::ffi::OsStr; +use std::path::PathBuf; +use std::sync::{Arc, Mutex}; + +use image::GenericImageView; +use svg_metadata as svg; +use tera::{from_value, to_value, Error, Function as TeraFn, Result, Value}; + +#[derive(Debug)] +pub struct ResizeImage { + imageproc: Arc>, +} +impl ResizeImage { + pub fn new(imageproc: Arc>) -> Self { + Self { imageproc } + } +} + +static DEFAULT_OP: &str = "fill"; +static DEFAULT_FMT: &str = "auto"; + +impl TeraFn for ResizeImage { + fn call(&self, args: &HashMap) -> Result { + let path = required_arg!( + String, + args.get("path"), + "`resize_image` requires a `path` argument with a string value" + ); + let width = optional_arg!( + u32, + args.get("width"), + "`resize_image`: `width` must be a non-negative integer" + ); + let height = optional_arg!( + u32, + args.get("height"), + "`resize_image`: `height` must be a non-negative integer" + ); + let op = optional_arg!(String, args.get("op"), "`resize_image`: `op` must be a string") + .unwrap_or_else(|| DEFAULT_OP.to_string()); + + let format = + optional_arg!(String, args.get("format"), "`resize_image`: `format` must be a string") + .unwrap_or_else(|| DEFAULT_FMT.to_string()); + + let quality = + optional_arg!(u8, args.get("quality"), "`resize_image`: `quality` must be a number"); + if let Some(quality) = quality { + if quality == 0 || quality > 100 { + return Err("`resize_image`: `quality` must be in range 1-100".to_string().into()); + } + } + + let mut imageproc = self.imageproc.lock().unwrap(); + if !imageproc.source_exists(&path) { + return Err(format!("`resize_image`: Cannot find path: {}", path).into()); + } + + let imageop = imageproc::ImageOp::from_args(path, &op, width, height, &format, quality) + .map_err(|e| format!("`resize_image`: {}", e))?; + let url = imageproc.insert(imageop); + + to_value(url).map_err(|err| err.into()) + } +} + +#[derive(Debug)] +pub struct GetImageMeta { + content_path: PathBuf, +} + +impl GetImageMeta { + pub fn new(content_path: PathBuf) -> Self { + Self { content_path } + } +} + +impl TeraFn for GetImageMeta { + fn call(&self, args: &HashMap) -> Result { + let path = required_arg!( + String, + args.get("path"), + "`get_image_metadata` requires a `path` argument with a string value" + ); + let src_path = self.content_path.join(&path); + if !src_path.exists() { + return Err(format!("`get_image_metadata`: Cannot find path: {}", path).into()); + } + let (height, width) = image_dimensions(&src_path)?; + let mut map = tera::Map::new(); + map.insert(String::from("height"), Value::Number(tera::Number::from(height))); + map.insert(String::from("width"), Value::Number(tera::Number::from(width))); + Ok(Value::Object(map)) + } +} + +// Try to read the image dimensions for a given image +fn image_dimensions(path: &PathBuf) -> Result<(u32, u32)> { + if let Some("svg") = path.extension().and_then(OsStr::to_str) { + let img = svg::Metadata::parse_file(&path) + .map_err(|e| Error::chain(format!("Failed to process SVG: {}", path.display()), e))?; + match (img.height(), img.width(), img.view_box()) { + (Some(h), Some(w), _) => Ok((h as u32, w as u32)), + (_, _, Some(view_box)) => Ok((view_box.height as u32, view_box.width as u32)), + _ => Err("Invalid dimensions: SVG width/height and viewbox not set.".into()), + } + } else { + let img = image::open(&path) + .map_err(|e| Error::chain(format!("Failed to process image: {}", path.display()), e))?; + Ok((img.height(), img.width())) + } +} + +#[cfg(test)] +mod tests { + use super::*; + + // TODO +} diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index 598ce118..363f60ad 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -1,25 +1,23 @@ use std::collections::HashMap; -use std::ffi::OsStr; use std::path::PathBuf; -use std::sync::{Arc, Mutex, RwLock}; use std::{fs, io, result}; use base64::encode as encode_b64; use sha2::{digest, Sha256, Sha384, Sha512}; -use svg_metadata as svg; use tera::{from_value, to_value, Error, Function as TeraFn, Result, Value}; use config::Config; -use image::GenericImageView; -use library::{Library, Taxonomy}; use utils::site::resolve_internal_link; -use utils::slugs::{slugify_paths, SlugifyStrategy}; #[macro_use] mod macros; +mod content; +mod images; mod load_data; +pub use self::content::{GetPage, GetSection, GetTaxonomy, GetTaxonomyUrl}; +pub use self::images::{GetImageMeta, ResizeImage}; pub use self::load_data::LoadData; #[derive(Debug)] @@ -238,270 +236,6 @@ impl TeraFn for GetFileHash { } } -#[derive(Debug)] -pub struct ResizeImage { - imageproc: Arc>, -} -impl ResizeImage { - pub fn new(imageproc: Arc>) -> Self { - Self { imageproc } - } -} - -static DEFAULT_OP: &str = "fill"; -static DEFAULT_FMT: &str = "auto"; - -impl TeraFn for ResizeImage { - fn call(&self, args: &HashMap) -> Result { - let path = required_arg!( - String, - args.get("path"), - "`resize_image` requires a `path` argument with a string value" - ); - let width = optional_arg!( - u32, - args.get("width"), - "`resize_image`: `width` must be a non-negative integer" - ); - let height = optional_arg!( - u32, - args.get("height"), - "`resize_image`: `height` must be a non-negative integer" - ); - let op = optional_arg!(String, args.get("op"), "`resize_image`: `op` must be a string") - .unwrap_or_else(|| DEFAULT_OP.to_string()); - - let format = - optional_arg!(String, args.get("format"), "`resize_image`: `format` must be a string") - .unwrap_or_else(|| DEFAULT_FMT.to_string()); - - let quality = - optional_arg!(u8, args.get("quality"), "`resize_image`: `quality` must be a number"); - if let Some(quality) = quality { - if quality == 0 || quality > 100 { - return Err("`resize_image`: `quality` must be in range 1-100".to_string().into()); - } - } - - let mut imageproc = self.imageproc.lock().unwrap(); - if !imageproc.source_exists(&path) { - return Err(format!("`resize_image`: Cannot find path: {}", path).into()); - } - - let imageop = imageproc::ImageOp::from_args(path, &op, width, height, &format, quality) - .map_err(|e| format!("`resize_image`: {}", e))?; - let url = imageproc.insert(imageop); - - to_value(url).map_err(|err| err.into()) - } -} - -#[derive(Debug)] -pub struct GetImageMeta { - content_path: PathBuf, -} - -impl GetImageMeta { - pub fn new(content_path: PathBuf) -> Self { - Self { content_path } - } -} - -impl TeraFn for GetImageMeta { - fn call(&self, args: &HashMap) -> Result { - let path = required_arg!( - String, - args.get("path"), - "`get_image_metadata` requires a `path` argument with a string value" - ); - let src_path = self.content_path.join(&path); - if !src_path.exists() { - return Err(format!("`get_image_metadata`: Cannot find path: {}", path).into()); - } - let (height, width) = image_dimensions(&src_path)?; - let mut map = tera::Map::new(); - map.insert(String::from("height"), Value::Number(tera::Number::from(height))); - map.insert(String::from("width"), Value::Number(tera::Number::from(width))); - Ok(Value::Object(map)) - } -} - -// Try to read the image dimensions for a given image -fn image_dimensions(path: &PathBuf) -> Result<(u32, u32)> { - if let Some("svg") = path.extension().and_then(OsStr::to_str) { - let img = svg::Metadata::parse_file(&path) - .map_err(|e| Error::chain(format!("Failed to process SVG: {}", path.display()), e))?; - match (img.height(), img.width(), img.view_box()) { - (Some(h), Some(w), _) => Ok((h as u32, w as u32)), - (_, _, Some(view_box)) => Ok((view_box.height as u32, view_box.width as u32)), - _ => Err("Invalid dimensions: SVG width/height and viewbox not set.".into()), - } - } else { - let img = image::open(&path) - .map_err(|e| Error::chain(format!("Failed to process image: {}", path.display()), e))?; - Ok((img.height(), img.width())) - } -} - -#[derive(Debug)] -pub struct GetTaxonomyUrl { - taxonomies: HashMap>, - default_lang: String, - slugify: SlugifyStrategy, -} - -impl GetTaxonomyUrl { - pub fn new(default_lang: &str, all_taxonomies: &[Taxonomy], slugify: SlugifyStrategy) -> Self { - let mut taxonomies = HashMap::new(); - for taxo in all_taxonomies { - let mut items = HashMap::new(); - for item in &taxo.items { - items.insert(slugify_paths(&item.name.clone(), slugify), item.permalink.clone()); - } - taxonomies.insert(format!("{}-{}", taxo.kind.name, taxo.lang), items); - } - Self { taxonomies, default_lang: default_lang.to_string(), slugify } - } -} -impl TeraFn for GetTaxonomyUrl { - fn call(&self, args: &HashMap) -> Result { - let kind = required_arg!( - String, - args.get("kind"), - "`get_taxonomy_url` requires a `kind` argument with a string value" - ); - let name = required_arg!( - String, - args.get("name"), - "`get_taxonomy_url` requires a `name` argument with a string value" - ); - let lang = - optional_arg!(String, args.get("lang"), "`get_taxonomy`: `lang` must be a string") - .unwrap_or_else(|| self.default_lang.clone()); - - let container = match self.taxonomies.get(&format!("{}-{}", kind, lang)) { - Some(c) => c, - None => { - return Err(format!( - "`get_taxonomy_url` received an unknown taxonomy as kind: {}", - kind - ) - .into()); - } - }; - - if let Some(permalink) = container.get(&slugify_paths(&name, self.slugify)) { - return Ok(to_value(permalink).unwrap()); - } - - Err(format!("`get_taxonomy_url`: couldn't find `{}` in `{}` taxonomy", name, kind).into()) - } -} - -#[derive(Debug)] -pub struct GetPage { - base_path: PathBuf, - library: Arc>, -} -impl GetPage { - pub fn new(base_path: PathBuf, library: Arc>) -> Self { - Self { base_path: base_path.join("content"), library } - } -} -impl TeraFn for GetPage { - fn call(&self, args: &HashMap) -> Result { - let path = required_arg!( - String, - args.get("path"), - "`get_page` requires a `path` argument with a string value" - ); - let full_path = self.base_path.join(&path); - let library = self.library.read().unwrap(); - match library.get_page(&full_path) { - Some(p) => Ok(to_value(p.to_serialized(&library)).unwrap()), - None => Err(format!("Page `{}` not found.", path).into()), - } - } -} - -#[derive(Debug)] -pub struct GetSection { - base_path: PathBuf, - library: Arc>, -} -impl GetSection { - pub fn new(base_path: PathBuf, library: Arc>) -> Self { - Self { base_path: base_path.join("content"), library } - } -} -impl TeraFn for GetSection { - fn call(&self, args: &HashMap) -> Result { - let path = required_arg!( - String, - args.get("path"), - "`get_section` requires a `path` argument with a string value" - ); - - let metadata_only = args - .get("metadata_only") - .map_or(false, |c| from_value::(c.clone()).unwrap_or(false)); - - let full_path = self.base_path.join(&path); - let library = self.library.read().unwrap(); - - match library.get_section(&full_path) { - Some(s) => { - if metadata_only { - Ok(to_value(s.to_serialized_basic(&library)).unwrap()) - } else { - Ok(to_value(s.to_serialized(&library)).unwrap()) - } - } - None => Err(format!("Section `{}` not found.", path).into()), - } - } -} - -#[derive(Debug)] -pub struct GetTaxonomy { - library: Arc>, - taxonomies: HashMap, - default_lang: String, -} -impl GetTaxonomy { - pub fn new( - default_lang: &str, - all_taxonomies: Vec, - library: Arc>, - ) -> Self { - let mut taxonomies = HashMap::new(); - for taxo in all_taxonomies { - taxonomies.insert(format!("{}-{}", taxo.kind.name, taxo.lang), taxo); - } - Self { taxonomies, library, default_lang: default_lang.to_string() } - } -} -impl TeraFn for GetTaxonomy { - fn call(&self, args: &HashMap) -> Result { - let kind = required_arg!( - String, - args.get("kind"), - "`get_taxonomy` requires a `kind` argument with a string value" - ); - - let lang = - optional_arg!(String, args.get("lang"), "`get_taxonomy`: `lang` must be a string") - .unwrap_or_else(|| self.default_lang.clone()); - - match self.taxonomies.get(&format!("{}-{}", kind, lang)) { - Some(t) => Ok(to_value(t.to_serialized(&self.library.read().unwrap())).unwrap()), - None => { - Err(format!("`get_taxonomy` received an unknown taxonomy as kind: {}", kind).into()) - } - } - } -} - #[cfg(test)] mod tests { use super::{GetFileHash, GetTaxonomy, GetTaxonomyUrl, GetUrl, Trans}; @@ -583,158 +317,6 @@ mod tests { assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css"); } - #[test] - fn can_get_taxonomy() { - let mut config = Config::default(); - config.slugify.taxonomies = SlugifyStrategy::On; - let taxo_config = TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; - let taxo_config_fr = - TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; - let library = Arc::new(RwLock::new(Library::new(0, 0, false))); - let tag = TaxonomyItem::new( - "Programming", - &config.default_language, - "tags", - &config, - vec![], - &library.read().unwrap(), - ); - let tag_fr = TaxonomyItem::new( - "Programmation", - "fr", - "tags", - &config, - vec![], - &library.read().unwrap(), - ); - let tags = Taxonomy { - kind: taxo_config, - lang: config.default_language.clone(), - slug: "tags".to_string(), - items: vec![tag], - }; - let tags_fr = Taxonomy { - kind: taxo_config_fr, - lang: "fr".to_owned(), - slug: "tags".to_string(), - items: vec![tag_fr], - }; - - let taxonomies = vec![tags.clone(), tags_fr.clone()]; - let static_fn = - GetTaxonomy::new(&config.default_language, taxonomies.clone(), library.clone()); - // can find it correctly - let mut args = HashMap::new(); - args.insert("kind".to_string(), to_value("tags").unwrap()); - let res = static_fn.call(&args).unwrap(); - let res_obj = res.as_object().unwrap(); - assert_eq!(res_obj["kind"], to_value(tags.kind).unwrap()); - assert_eq!(res_obj["items"].clone().as_array().unwrap().len(), 1); - assert_eq!( - res_obj["items"].clone().as_array().unwrap()[0].clone().as_object().unwrap()["name"], - Value::String("Programming".to_string()) - ); - assert_eq!( - res_obj["items"].clone().as_array().unwrap()[0].clone().as_object().unwrap()["slug"], - Value::String("programming".to_string()) - ); - assert_eq!( - res_obj["items"].clone().as_array().unwrap()[0].clone().as_object().unwrap() - ["permalink"], - Value::String("http://a-website.com/tags/programming/".to_string()) - ); - assert_eq!( - res_obj["items"].clone().as_array().unwrap()[0].clone().as_object().unwrap()["pages"], - Value::Array(vec![]) - ); - // Works with other languages as well - let mut args = HashMap::new(); - args.insert("kind".to_string(), to_value("tags").unwrap()); - args.insert("lang".to_string(), to_value("fr").unwrap()); - let res = static_fn.call(&args).unwrap(); - let res_obj = res.as_object().unwrap(); - assert_eq!(res_obj["kind"], to_value(tags_fr.kind).unwrap()); - assert_eq!(res_obj["items"].clone().as_array().unwrap().len(), 1); - assert_eq!( - res_obj["items"].clone().as_array().unwrap()[0].clone().as_object().unwrap()["name"], - Value::String("Programmation".to_string()) - ); - - // and errors if it can't find it - let mut args = HashMap::new(); - args.insert("kind".to_string(), to_value("something-else").unwrap()); - assert!(static_fn.call(&args).is_err()); - } - - #[test] - fn can_get_taxonomy_url() { - let mut config = Config::default(); - config.slugify.taxonomies = SlugifyStrategy::On; - let taxo_config = TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; - let taxo_config_fr = - TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; - let library = Library::new(0, 0, false); - let tag = TaxonomyItem::new( - "Programming", - &config.default_language, - "tags", - &config, - vec![], - &library, - ); - let tag_fr = TaxonomyItem::new("Programmation", "fr", "tags", &config, vec![], &library); - let tags = Taxonomy { - kind: taxo_config, - lang: config.default_language.clone(), - slug: "tags".to_string(), - items: vec![tag], - }; - let tags_fr = Taxonomy { - kind: taxo_config_fr, - lang: "fr".to_owned(), - slug: "tags".to_string(), - items: vec![tag_fr], - }; - - let taxonomies = vec![tags.clone(), tags_fr.clone()]; - let static_fn = - GetTaxonomyUrl::new(&config.default_language, &taxonomies, config.slugify.taxonomies); - - // can find it correctly - let mut args = HashMap::new(); - args.insert("kind".to_string(), to_value("tags").unwrap()); - args.insert("name".to_string(), to_value("Programming").unwrap()); - assert_eq!( - static_fn.call(&args).unwrap(), - to_value("http://a-website.com/tags/programming/").unwrap() - ); - - // can find it correctly with inconsistent capitalisation - let mut args = HashMap::new(); - args.insert("kind".to_string(), to_value("tags").unwrap()); - args.insert("name".to_string(), to_value("programming").unwrap()); - assert_eq!( - static_fn.call(&args).unwrap(), - to_value("http://a-website.com/tags/programming/").unwrap() - ); - - // works with other languages - let mut args = HashMap::new(); - args.insert("kind".to_string(), to_value("tags").unwrap()); - args.insert("name".to_string(), to_value("Programmation").unwrap()); - args.insert("lang".to_string(), to_value("fr").unwrap()); - assert_eq!( - static_fn.call(&args).unwrap(), - to_value("http://a-website.com/fr/tags/programmation/").unwrap() - ); - - // and errors if it can't find it - let mut args = HashMap::new(); - args.insert("kind".to_string(), to_value("tags").unwrap()); - args.insert("name".to_string(), to_value("random").unwrap()); - assert!(static_fn.call(&args).is_err()); - } - const TRANS_CONFIG: &str = r#" base_url = "https://remplace-par-ton-url.fr" default_language = "fr" From b0937fa5b78fa927febdb94f6f6b568249663623 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 11 May 2021 18:28:01 +0200 Subject: [PATCH 081/113] Some more cleanup --- Cargo.lock | 1 + components/templates/Cargo.toml | 1 + components/templates/src/global_fns/i18n.rs | 83 ++++++++++ components/templates/src/global_fns/mod.rs | 171 +++++--------------- 4 files changed, 129 insertions(+), 127 deletions(-) create mode 100644 components/templates/src/global_fns/i18n.rs diff --git a/Cargo.lock b/Cargo.lock index cec75dda..d7b834f5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2595,6 +2595,7 @@ dependencies = [ "serde_json", "sha2", "svg_metadata", + "tempfile", "tera", "toml", "url", diff --git a/components/templates/Cargo.toml b/components/templates/Cargo.toml index d3e4fe23..8baca786 100644 --- a/components/templates/Cargo.toml +++ b/components/templates/Cargo.toml @@ -31,3 +31,4 @@ features = ["blocking", "rustls-tls"] [dev-dependencies] mockito = "0.30" +tempfile = "3" diff --git a/components/templates/src/global_fns/i18n.rs b/components/templates/src/global_fns/i18n.rs new file mode 100644 index 00000000..b1bf76d1 --- /dev/null +++ b/components/templates/src/global_fns/i18n.rs @@ -0,0 +1,83 @@ +use tera::{from_value, to_value, Error, Function as TeraFn, Result, Value}; + +use config::Config; +use std::collections::HashMap; + +#[derive(Debug)] +pub struct Trans { + config: Config, +} +impl Trans { + pub fn new(config: Config) -> Self { + Self { config } + } +} +impl TeraFn for Trans { + fn call(&self, args: &HashMap) -> Result { + let key = required_arg!(String, args.get("key"), "`trans` requires a `key` argument."); + let lang = optional_arg!(String, args.get("lang"), "`trans`: `lang` must be a string.") + .unwrap_or_else(|| self.config.default_language.clone()); + + let term = self + .config + .get_translation(&lang, &key) + .map_err(|e| Error::chain("Failed to retrieve term translation", e))?; + + Ok(to_value(term).unwrap()) + } +} + +#[cfg(test)] +mod tests { + use super::*; + + const TRANS_CONFIG: &str = r#" +base_url = "https://remplace-par-ton-url.fr" +default_language = "fr" + +[translations] +title = "Un titre" + +[languages] +[languages.en] +[languages.en.translations] +title = "A title" "#; + + #[test] + fn can_translate_a_string() { + let config = Config::parse(TRANS_CONFIG).unwrap(); + let static_fn = Trans::new(config); + let mut args = HashMap::new(); + + args.insert("key".to_string(), to_value("title").unwrap()); + assert_eq!(static_fn.call(&args).unwrap(), "Un titre"); + + args.insert("lang".to_string(), to_value("en").unwrap()); + assert_eq!(static_fn.call(&args).unwrap(), "A title"); + + args.insert("lang".to_string(), to_value("fr").unwrap()); + assert_eq!(static_fn.call(&args).unwrap(), "Un titre"); + } + + #[test] + fn error_on_absent_translation_lang() { + let mut args = HashMap::new(); + args.insert("lang".to_string(), to_value("absent").unwrap()); + args.insert("key".to_string(), to_value("title").unwrap()); + + let config = Config::parse(TRANS_CONFIG).unwrap(); + let error = Trans::new(config).call(&args).unwrap_err(); + assert_eq!("Failed to retrieve term translation", format!("{}", error)); + } + + #[test] + fn error_on_absent_translation_key() { + let mut args = HashMap::new(); + args.insert("lang".to_string(), to_value("en").unwrap()); + args.insert("key".to_string(), to_value("absent").unwrap()); + + let config = Config::parse(TRANS_CONFIG).unwrap(); + let error = Trans::new(config).call(&args).unwrap_err(); + assert_eq!("Failed to retrieve term translation", format!("{}", error)); + } +} diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index 363f60ad..12638923 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -4,7 +4,7 @@ use std::{fs, io, result}; use base64::encode as encode_b64; use sha2::{digest, Sha256, Sha384, Sha512}; -use tera::{from_value, to_value, Error, Function as TeraFn, Result, Value}; +use tera::{from_value, to_value, Function as TeraFn, Result, Value}; use config::Config; use utils::site::resolve_internal_link; @@ -13,37 +13,15 @@ use utils::site::resolve_internal_link; mod macros; mod content; +mod i18n; mod images; mod load_data; pub use self::content::{GetPage, GetSection, GetTaxonomy, GetTaxonomyUrl}; +pub use self::i18n::Trans; pub use self::images::{GetImageMeta, ResizeImage}; pub use self::load_data::LoadData; -#[derive(Debug)] -pub struct Trans { - config: Config, -} -impl Trans { - pub fn new(config: Config) -> Self { - Self { config } - } -} -impl TeraFn for Trans { - fn call(&self, args: &HashMap) -> Result { - let key = required_arg!(String, args.get("key"), "`trans` requires a `key` argument."); - let lang = optional_arg!(String, args.get("lang"), "`trans`: `lang` must be a string.") - .unwrap_or_else(|| self.config.default_language.clone()); - - let term = self - .config - .get_translation(&lang, &key) - .map_err(|e| Error::chain("Failed to retrieve term translation", e))?; - - Ok(to_value(term).unwrap()) - } -} - #[derive(Debug)] pub struct GetUrl { config: Config, @@ -238,49 +216,38 @@ impl TeraFn for GetFileHash { #[cfg(test)] mod tests { - use super::{GetFileHash, GetTaxonomy, GetTaxonomyUrl, GetUrl, Trans}; + use super::{GetFileHash, GetUrl}; use std::collections::HashMap; - use std::env::temp_dir; - use std::fs::remove_dir_all; - use std::path::PathBuf; - use std::sync::{Arc, RwLock}; - use lazy_static::lazy_static; + use tempfile::{tempdir, TempDir}; + use tera::{to_value, Function}; - use tera::{to_value, Function, Value}; + use config::Config; + use utils::fs::create_file; - use config::{Config, Taxonomy as TaxonomyConfig}; - use library::{Library, Taxonomy, TaxonomyItem}; - use utils::fs::{create_directory, create_file}; - use utils::slugs::SlugifyStrategy; - - struct TestContext { - static_path: PathBuf, - } - impl TestContext { - fn setup() -> Self { - let dir = temp_dir().join("static"); - create_directory(&dir).expect("Could not create test directory"); - create_file(&dir.join("app.css"), "// Hello world!") - .expect("Could not create test content (app.css)"); - Self { static_path: dir } - } - } - impl Drop for TestContext { - fn drop(&mut self) { - remove_dir_all(&self.static_path).expect("Could not free test directory"); - } + fn create_temp_dir() -> TempDir { + let dir = tempdir().unwrap(); + create_file(&dir.path().join("app.css"), "// Hello world!").expect("Failed to create file"); + dir } - lazy_static! { - static ref TEST_CONTEXT: TestContext = TestContext::setup(); - } + const CONFIG_DATA: &str = r#" +base_url = "https://remplace-par-ton-url.fr" +default_language = "fr" + +[translations] +title = "Un titre" + +[languages.en] +[languages.en.translations] +title = "A title" +"#; #[test] fn can_add_cachebust_to_url() { let config = Config::default(); - let static_fn = GetUrl::new(config, HashMap::new(), vec![TEST_CONTEXT.static_path.clone()]); + let static_fn = GetUrl::new(config, HashMap::new(), vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); args.insert("cachebust".to_string(), to_value(true).unwrap()); @@ -290,7 +257,7 @@ mod tests { #[test] fn can_add_trailing_slashes() { let config = Config::default(); - let static_fn = GetUrl::new(config, HashMap::new(), vec![TEST_CONTEXT.static_path.clone()]); + let static_fn = GetUrl::new(config, HashMap::new(), vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); args.insert("trailing_slash".to_string(), to_value(true).unwrap()); @@ -300,7 +267,7 @@ mod tests { #[test] fn can_add_slashes_and_cachebust() { let config = Config::default(); - let static_fn = GetUrl::new(config, HashMap::new(), vec![TEST_CONTEXT.static_path.clone()]); + let static_fn = GetUrl::new(config, HashMap::new(), vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); args.insert("trailing_slash".to_string(), to_value(true).unwrap()); @@ -311,66 +278,16 @@ mod tests { #[test] fn can_link_to_some_static_file() { let config = Config::default(); - let static_fn = GetUrl::new(config, HashMap::new(), vec![TEST_CONTEXT.static_path.clone()]); + let static_fn = GetUrl::new(config, HashMap::new(), vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css"); } - const TRANS_CONFIG: &str = r#" -base_url = "https://remplace-par-ton-url.fr" -default_language = "fr" - -[translations] -title = "Un titre" - -[languages] -[languages.en] -[languages.en.translations] -title = "A title" "#; - - #[test] - fn can_translate_a_string() { - let config = Config::parse(TRANS_CONFIG).unwrap(); - let static_fn = Trans::new(config); - let mut args = HashMap::new(); - - args.insert("key".to_string(), to_value("title").unwrap()); - assert_eq!(static_fn.call(&args).unwrap(), "Un titre"); - - args.insert("lang".to_string(), to_value("en").unwrap()); - assert_eq!(static_fn.call(&args).unwrap(), "A title"); - - args.insert("lang".to_string(), to_value("fr").unwrap()); - assert_eq!(static_fn.call(&args).unwrap(), "Un titre"); - } - - #[test] - fn error_on_absent_translation_lang() { - let mut args = HashMap::new(); - args.insert("lang".to_string(), to_value("absent").unwrap()); - args.insert("key".to_string(), to_value("title").unwrap()); - - let config = Config::parse(TRANS_CONFIG).unwrap(); - let error = Trans::new(config).call(&args).unwrap_err(); - assert_eq!("Failed to retrieve term translation", format!("{}", error)); - } - - #[test] - fn error_on_absent_translation_key() { - let mut args = HashMap::new(); - args.insert("lang".to_string(), to_value("en").unwrap()); - args.insert("key".to_string(), to_value("absent").unwrap()); - - let config = Config::parse(TRANS_CONFIG).unwrap(); - let error = Trans::new(config).call(&args).unwrap_err(); - assert_eq!("Failed to retrieve term translation", format!("{}", error)); - } - #[test] fn error_when_language_not_available() { - let config = Config::parse(TRANS_CONFIG).unwrap(); - let static_fn = GetUrl::new(config, HashMap::new(), vec![TEST_CONTEXT.static_path.clone()]); + let config = Config::parse(CONFIG_DATA).unwrap(); + let static_fn = GetUrl::new(config, HashMap::new(), vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("@/a_section/a_page.md").unwrap()); args.insert("lang".to_string(), to_value("it").unwrap()); @@ -383,7 +300,7 @@ title = "A title" "#; #[test] fn can_get_url_with_default_language() { - let config = Config::parse(TRANS_CONFIG).unwrap(); + let config = Config::parse(CONFIG_DATA).unwrap(); let mut permalinks = HashMap::new(); permalinks.insert( "a_section/a_page.md".to_string(), @@ -393,7 +310,7 @@ title = "A title" "#; "a_section/a_page.en.md".to_string(), "https://remplace-par-ton-url.fr/en/a_section/a_page/".to_string(), ); - let static_fn = GetUrl::new(config, permalinks, vec![TEST_CONTEXT.static_path.clone()]); + let static_fn = GetUrl::new(config, permalinks, vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("@/a_section/a_page.md").unwrap()); args.insert("lang".to_string(), to_value("fr").unwrap()); @@ -405,7 +322,7 @@ title = "A title" "#; #[test] fn can_get_url_with_other_language() { - let config = Config::parse(TRANS_CONFIG).unwrap(); + let config = Config::parse(CONFIG_DATA).unwrap(); let mut permalinks = HashMap::new(); permalinks.insert( "a_section/a_page.md".to_string(), @@ -415,7 +332,7 @@ title = "A title" "#; "a_section/a_page.en.md".to_string(), "https://remplace-par-ton-url.fr/en/a_section/a_page/".to_string(), ); - let static_fn = GetUrl::new(config, permalinks, vec![TEST_CONTEXT.static_path.clone()]); + let static_fn = GetUrl::new(config, permalinks, vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("@/a_section/a_page.md").unwrap()); args.insert("lang".to_string(), to_value("en").unwrap()); @@ -427,9 +344,9 @@ title = "A title" "#; #[test] fn can_get_feed_url_with_default_language() { - let config = Config::parse(TRANS_CONFIG).unwrap(); + let config = Config::parse(CONFIG_DATA).unwrap(); let static_fn = - GetUrl::new(config.clone(), HashMap::new(), vec![TEST_CONTEXT.static_path.clone()]); + GetUrl::new(config.clone(), HashMap::new(), vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value(config.feed_filename).unwrap()); args.insert("lang".to_string(), to_value("fr").unwrap()); @@ -438,9 +355,9 @@ title = "A title" "#; #[test] fn can_get_feed_url_with_other_language() { - let config = Config::parse(TRANS_CONFIG).unwrap(); + let config = Config::parse(CONFIG_DATA).unwrap(); let static_fn = - GetUrl::new(config.clone(), HashMap::new(), vec![TEST_CONTEXT.static_path.clone()]); + GetUrl::new(config.clone(), HashMap::new(), vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value(config.feed_filename).unwrap()); args.insert("lang".to_string(), to_value("en").unwrap()); @@ -449,7 +366,7 @@ title = "A title" "#; #[test] fn can_get_file_hash_sha256() { - let static_fn = GetFileHash::new(vec![TEST_CONTEXT.static_path.clone()]); + let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); args.insert("sha_type".to_string(), to_value(256).unwrap()); @@ -461,7 +378,7 @@ title = "A title" "#; #[test] fn can_get_file_hash_sha256_base64() { - let static_fn = GetFileHash::new(vec![TEST_CONTEXT.static_path.clone()]); + let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); args.insert("sha_type".to_string(), to_value(256).unwrap()); @@ -471,7 +388,7 @@ title = "A title" "#; #[test] fn can_get_file_hash_sha384() { - let static_fn = GetFileHash::new(vec![TEST_CONTEXT.static_path.clone()]); + let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); assert_eq!( @@ -482,7 +399,7 @@ title = "A title" "#; #[test] fn can_get_file_hash_sha384_base64() { - let static_fn = GetFileHash::new(vec![TEST_CONTEXT.static_path.clone()]); + let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); args.insert("base64".to_string(), to_value(true).unwrap()); @@ -494,7 +411,7 @@ title = "A title" "#; #[test] fn can_get_file_hash_sha512() { - let static_fn = GetFileHash::new(vec![TEST_CONTEXT.static_path.clone()]); + let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); args.insert("sha_type".to_string(), to_value(512).unwrap()); @@ -506,7 +423,7 @@ title = "A title" "#; #[test] fn can_get_file_hash_sha512_base64() { - let static_fn = GetFileHash::new(vec![TEST_CONTEXT.static_path.clone()]); + let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); args.insert("sha_type".to_string(), to_value(512).unwrap()); @@ -519,7 +436,7 @@ title = "A title" "#; #[test] fn error_when_file_not_found_for_hash() { - let static_fn = GetFileHash::new(vec![TEST_CONTEXT.static_path.clone()]); + let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("doesnt-exist").unwrap()); let err = format!("{}", static_fn.call(&args).unwrap_err()); From 7fb99eaa44f387fadf744354c605f0cfcc582800 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 12 May 2021 21:07:18 +0200 Subject: [PATCH 082/113] Revamp the images template functions --- CHANGELOG.md | 1 + Cargo.lock | 3 + components/imageproc/Cargo.toml | 3 +- components/imageproc/src/lib.rs | 99 +++---- components/library/src/content/mod.rs | 62 +++++ components/library/src/content/page.rs | 30 +-- components/library/src/content/section.rs | 28 +- components/site/src/lib.rs | 7 +- components/site/src/tpls.rs | 8 +- components/templates/Cargo.toml | 4 +- components/templates/gutenberg.jpg | Bin 0 -> 47783 bytes components/templates/src/global_fns/images.rs | 242 +++++++++++++++--- components/templates/src/global_fns/mod.rs | 2 +- components/utils/src/fs.rs | 43 +--- 14 files changed, 336 insertions(+), 196 deletions(-) create mode 100644 components/templates/gutenberg.jpg diff --git a/CHANGELOG.md b/CHANGELOG.md index 65743edb..1c035759 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ ### Breaking - Newlines are now required after the closing `+++` of front-matter +- `resize_image` now returns a map: `{url, static_path}` instead of just the URL so you can follow up with other functions - i18n rework: languages now have their sections in `config.toml` to set up all their options 1. taxonomies don't have a `lang` anymore in the config, you need to declare them in their respective language section 2. the `config` variable in templates has been changed and is now a stripped down language aware version of the previous `config` diff --git a/Cargo.lock b/Cargo.lock index d7b834f5..6e9b889f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1022,6 +1022,7 @@ dependencies = [ name = "imageproc" version = "0.1.0" dependencies = [ + "config", "errors", "image", "lazy_static", @@ -2592,6 +2593,8 @@ dependencies = [ "nom-bibtex", "rendering", "reqwest", + "serde", + "serde_derive", "serde_json", "sha2", "svg_metadata", diff --git a/components/imageproc/Cargo.toml b/components/imageproc/Cargo.toml index a24e8a34..70a9af1a 100644 --- a/components/imageproc/Cargo.toml +++ b/components/imageproc/Cargo.toml @@ -10,7 +10,8 @@ regex = "1.0" tera = "1" image = "0.23" rayon = "1" -webp="0.1.1" +webp = "0.1.1" errors = { path = "../errors" } utils = { path = "../utils" } +config = { path = "../config" } diff --git a/components/imageproc/src/lib.rs b/components/imageproc/src/lib.rs index 2ce000fe..4e04f033 100644 --- a/components/imageproc/src/lib.rs +++ b/components/imageproc/src/lib.rs @@ -11,10 +11,12 @@ use lazy_static::lazy_static; use rayon::prelude::*; use regex::Regex; +use config::Config; use errors::{Error, Result}; use utils::fs as ufs; static RESIZED_SUBDIR: &str = "processed_images"; +const DEFAULT_Q_JPG: u8 = 75; lazy_static! { pub static ref RESIZED_FILENAME: Regex = @@ -51,14 +53,12 @@ impl ResizeOp { match op { "fit_width" => { if width.is_none() { - return Err("op=\"fit_width\" requires a `width` argument".to_string().into()); + return Err("op=\"fit_width\" requires a `width` argument".into()); } } "fit_height" => { if height.is_none() { - return Err("op=\"fit_height\" requires a `height` argument" - .to_string() - .into()); + return Err("op=\"fit_height\" requires a `height` argument".into()); } } "scale" | "fit" | "fill" => { @@ -132,8 +132,6 @@ impl Hash for ResizeOp { } } } -const DEFAULT_Q_JPG: u8 = 75; - /// Thumbnail image format #[derive(Debug, Clone, Copy, PartialEq, Eq)] pub enum Format { @@ -215,6 +213,7 @@ impl Hash for Format { #[derive(Debug, PartialEq, Eq)] pub struct ImageOp { source: String, + input_path: PathBuf, op: ResizeOp, format: Format, /// Hash of the above parameters @@ -227,18 +226,9 @@ pub struct ImageOp { } impl ImageOp { - pub fn new(source: String, op: ResizeOp, format: Format) -> ImageOp { - let mut hasher = DefaultHasher::new(); - hasher.write(source.as_ref()); - op.hash(&mut hasher); - format.hash(&mut hasher); - let hash = hasher.finish(); - - ImageOp { source, op, format, hash, collision_id: 0 } - } - pub fn from_args( source: String, + input_path: PathBuf, op: &str, width: Option, height: Option, @@ -247,18 +237,24 @@ impl ImageOp { ) -> Result { let op = ResizeOp::from_args(op, width, height)?; let format = Format::from_args(&source, format, quality)?; - Ok(Self::new(source, op, format)) + + let mut hasher = DefaultHasher::new(); + hasher.write(source.as_ref()); + op.hash(&mut hasher); + format.hash(&mut hasher); + let hash = hasher.finish(); + + Ok(ImageOp { source, input_path, op, format, hash, collision_id: 0 }) } - fn perform(&self, content_path: &Path, target_path: &Path) -> Result<()> { + fn perform(&self, target_path: &Path) -> Result<()> { use ResizeOp::*; - let src_path = content_path.join(&self.source); - if !ufs::file_stale(&src_path, target_path) { + if !ufs::file_stale(&self.input_path, target_path) { return Ok(()); } - let mut img = image::open(&src_path)?; + let mut img = image::open(&self.input_path)?; let (img_w, img_h) = img.dimensions(); const RESIZE_FILTER: FilterType = FilterType::Lanczos3; @@ -266,8 +262,8 @@ impl ImageOp { let img = match self.op { Scale(w, h) => img.resize_exact(w, h, RESIZE_FILTER), - FitWidth(w) => img.resize(w, u32::max_value(), RESIZE_FILTER), - FitHeight(h) => img.resize(u32::max_value(), h, RESIZE_FILTER), + FitWidth(w) => img.resize(w, u32::MAX, RESIZE_FILTER), + FitHeight(h) => img.resize(u32::MAX, h, RESIZE_FILTER), Fit(w, h) => { if img_w > w || img_h > h { img.resize(w, h, RESIZE_FILTER) @@ -328,14 +324,15 @@ impl ImageOp { } } -/// A strcture into which image operations can be enqueued and then performed. +/// A struct into which image operations can be enqueued and then performed. /// All output is written in a subdirectory in `static_path`, /// taking care of file stale status based on timestamps and possible hash collisions. #[derive(Debug)] pub struct Processor { - content_path: PathBuf, - resized_path: PathBuf, - resized_url: String, + /// The base path of the Zola site + base_path: PathBuf, + base_url: String, + output_dir: PathBuf, /// A map of a ImageOps by their stored hash. /// Note that this cannot be a HashSet, because hashset handles collisions and we don't want that, /// we need to be aware of and handle collisions ourselves. @@ -345,30 +342,18 @@ pub struct Processor { } impl Processor { - pub fn new(content_path: PathBuf, static_path: &Path, base_url: &str) -> Processor { + pub fn new(base_path: PathBuf, config: &Config) -> Processor { Processor { - content_path, - resized_path: static_path.join(RESIZED_SUBDIR), - resized_url: Self::resized_url(base_url), + output_dir: base_path.join("static").join(RESIZED_SUBDIR), + base_url: config.make_permalink(RESIZED_SUBDIR), + base_path, img_ops: HashMap::new(), img_ops_collisions: Vec::new(), } } - fn resized_url(base_url: &str) -> String { - if base_url.ends_with('/') { - format!("{}{}", base_url, RESIZED_SUBDIR) - } else { - format!("{}/{}", base_url, RESIZED_SUBDIR) - } - } - - pub fn set_base_url(&mut self, base_url: &str) { - self.resized_url = Self::resized_url(base_url); - } - - pub fn source_exists(&self, source: &str) -> bool { - self.content_path.join(source).exists() + pub fn set_base_url(&mut self, config: &Config) { + self.base_url = config.make_permalink(RESIZED_SUBDIR); } pub fn num_img_ops(&self) -> usize { @@ -427,25 +412,25 @@ impl Processor { format!("{:016x}{:02x}.{}", hash, collision_id, format.extension()) } - fn op_url(&self, hash: u64, collision_id: u32, format: Format) -> String { - format!("{}/{}", &self.resized_url, Self::op_filename(hash, collision_id, format)) - } - - pub fn insert(&mut self, img_op: ImageOp) -> String { + /// Adds the given operation to the queue but do not process it immediately. + /// Returns (path in static folder, final URL). + pub fn insert(&mut self, img_op: ImageOp) -> (PathBuf, String) { let hash = img_op.hash; let format = img_op.format; let collision_id = self.insert_with_collisions(img_op); - self.op_url(hash, collision_id, format) + let filename = Self::op_filename(hash, collision_id, format); + let url = format!("{}{}", self.base_url, filename); + (Path::new("static").join(RESIZED_SUBDIR).join(filename), url) } pub fn prune(&self) -> Result<()> { // Do not create folders if they don't exist - if !self.resized_path.exists() { + if !self.output_dir.exists() { return Ok(()); } - ufs::ensure_directory_exists(&self.resized_path)?; - let entries = fs::read_dir(&self.resized_path)?; + ufs::ensure_directory_exists(&self.output_dir)?; + let entries = fs::read_dir(&self.output_dir)?; for entry in entries { let entry_path = entry?.path(); if entry_path.is_file() { @@ -466,15 +451,15 @@ impl Processor { pub fn do_process(&mut self) -> Result<()> { if !self.img_ops.is_empty() { - ufs::ensure_directory_exists(&self.resized_path)?; + ufs::ensure_directory_exists(&self.output_dir)?; } self.img_ops .par_iter() .map(|(hash, op)| { let target = - self.resized_path.join(Self::op_filename(*hash, op.collision_id, op.format)); - op.perform(&self.content_path, &target) + self.output_dir.join(Self::op_filename(*hash, op.collision_id, op.format)); + op.perform(&target) .map_err(|e| Error::chain(format!("Failed to process image: {}", op.source), e)) }) .collect::>() diff --git a/components/library/src/content/mod.rs b/components/library/src/content/mod.rs index dc00271b..161a1ab9 100644 --- a/components/library/src/content/mod.rs +++ b/components/library/src/content/mod.rs @@ -3,11 +3,15 @@ mod page; mod section; mod ser; +use std::fs::read_dir; +use std::path::{Path, PathBuf}; + pub use self::file_info::FileInfo; pub use self::page::Page; pub use self::section::Section; pub use self::ser::{SerializingPage, SerializingSection}; +use config::Config; use rendering::Heading; pub fn has_anchor(headings: &[Heading], anchor: &str) -> bool { @@ -23,9 +27,67 @@ pub fn has_anchor(headings: &[Heading], anchor: &str) -> bool { false } +/// Looks into the current folder for the path and see if there's anything that is not a .md +/// file. Those will be copied next to the rendered .html file +pub fn find_related_assets(path: &Path, config: &Config) -> Vec { + let mut assets = vec![]; + + for entry in read_dir(path).unwrap().filter_map(std::result::Result::ok) { + let entry_path = entry.path(); + if entry_path.is_file() { + match entry_path.extension() { + Some(e) => match e.to_str() { + Some("md") => continue, + _ => assets.push(entry_path.to_path_buf()), + }, + None => continue, + } + } + } + + if let Some(ref globset) = config.ignored_content_globset { + // `find_related_assets` only scans the immediate directory (it is not recursive) so our + // filtering only needs to work against the file_name component, not the full suffix. If + // `find_related_assets` was changed to also return files in subdirectories, we could + // use `PathBuf.strip_prefix` to remove the parent directory and then glob-filter + // against the remaining path. Note that the current behaviour effectively means that + // the `ignored_content` setting in the config file is limited to single-file glob + // patterns (no "**" patterns). + assets = assets + .into_iter() + .filter(|path| match path.file_name() { + None => false, + Some(file) => !globset.is_match(file), + }) + .collect(); + } + + assets +} + #[cfg(test)] mod tests { use super::*; + use std::fs::File; + + use config::Config; + use tempfile::tempdir; + + #[test] + fn can_find_related_assets() { + let tmp_dir = tempdir().expect("create temp dir"); + File::create(tmp_dir.path().join("index.md")).unwrap(); + File::create(tmp_dir.path().join("example.js")).unwrap(); + File::create(tmp_dir.path().join("graph.jpg")).unwrap(); + File::create(tmp_dir.path().join("fail.png")).unwrap(); + + let assets = find_related_assets(tmp_dir.path(), &Config::default()); + assert_eq!(assets.len(), 3); + assert_eq!(assets.iter().filter(|p| p.extension().unwrap() != "md").count(), 3); + assert_eq!(assets.iter().filter(|p| p.file_name().unwrap() == "example.js").count(), 1); + assert_eq!(assets.iter().filter(|p| p.file_name().unwrap() == "graph.jpg").count(), 1); + assert_eq!(assets.iter().filter(|p| p.file_name().unwrap() == "fail.png").count(), 1); + } #[test] fn can_find_anchor_at_root() { diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index d0937187..9fa4c2a1 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -12,14 +12,14 @@ use config::Config; use errors::{Error, Result}; use front_matter::{split_page_content, InsertAnchor, PageFrontMatter}; use rendering::{render_content, Heading, RenderContext}; -use utils::fs::{find_related_assets, read_file}; use utils::site::get_reading_analytics; +use utils::slugs::slugify_paths; use utils::templates::render_template; use crate::content::file_info::FileInfo; -use crate::content::has_anchor; use crate::content::ser::SerializingPage; -use utils::slugs::slugify_paths; +use crate::content::{find_related_assets, has_anchor}; +use utils::fs::read_file; lazy_static! { // Based on https://regex101.com/r/H2n38Z/1/tests @@ -43,7 +43,7 @@ pub struct Page { pub raw_content: String, /// All the non-md files we found next to the .md file pub assets: Vec, - /// All the non-md files we found next to the .md file as string for use in templates + /// All the non-md files we found next to the .md file pub serialized_assets: Vec, /// The HTML rendered of the page pub content: String, @@ -216,27 +216,7 @@ impl Page { if page.file.name == "index" { let parent_dir = path.parent().unwrap(); - let assets = find_related_assets(parent_dir); - - if let Some(ref globset) = config.ignored_content_globset { - // `find_related_assets` only scans the immediate directory (it is not recursive) so our - // filtering only needs to work against the file_name component, not the full suffix. If - // `find_related_assets` was changed to also return files in subdirectories, we could - // use `PathBuf.strip_prefix` to remove the parent directory and then glob-filter - // against the remaining path. Note that the current behaviour effectively means that - // the `ignored_content` setting in the config file is limited to single-file glob - // patterns (no "**" patterns). - page.assets = assets - .into_iter() - .filter(|path| match path.file_name() { - None => false, - Some(file) => !globset.is_match(file), - }) - .collect(); - } else { - page.assets = assets; - } - + page.assets = find_related_assets(parent_dir, config); page.serialized_assets = page.serialize_assets(&base_path); } else { page.assets = vec![]; diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index 3d4fb6fd..a2d693ad 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -8,13 +8,13 @@ use config::Config; use errors::{Error, Result}; use front_matter::{split_section_content, SectionFrontMatter}; use rendering::{render_content, Heading, RenderContext}; -use utils::fs::{find_related_assets, read_file}; +use utils::fs::read_file; use utils::site::get_reading_analytics; use utils::templates::render_template; use crate::content::file_info::FileInfo; -use crate::content::has_anchor; use crate::content::ser::SerializingSection; +use crate::content::{find_related_assets, has_anchor}; use crate::library::Library; // Default is used to create a default index section if there is no _index.md in the root content directory @@ -36,7 +36,7 @@ pub struct Section { pub content: String, /// All the non-md files we found next to the .md file pub assets: Vec, - /// All the non-md files we found next to the .md file as string for use in templates + /// All the non-md files we found next to the .md file as string pub serialized_assets: Vec, /// All direct pages of that section pub pages: Vec, @@ -122,27 +122,7 @@ impl Section { let mut section = Section::parse(path, &content, config, base_path)?; let parent_dir = path.parent().unwrap(); - let assets = find_related_assets(parent_dir); - - if let Some(ref globset) = config.ignored_content_globset { - // `find_related_assets` only scans the immediate directory (it is not recursive) so our - // filtering only needs to work against the file_name component, not the full suffix. If - // `find_related_assets` was changed to also return files in subdirectories, we could - // use `PathBuf.strip_prefix` to remove the parent directory and then glob-filter - // against the remaining path. Note that the current behaviour effectively means that - // the `ignored_content` setting in the config file is limited to single-file glob - // patterns (no "**" patterns). - section.assets = assets - .into_iter() - .filter(|path| match path.file_name() { - None => false, - Some(file) => !globset.is_match(file), - }) - .collect(); - } else { - section.assets = assets; - } - + section.assets = find_related_assets(parent_dir, config); section.serialized_assets = section.serialize_assets(); Ok(section) diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index a69bf39b..37d8c32c 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -85,8 +85,7 @@ impl Site { let content_path = path.join("content"); let static_path = path.join("static"); - let imageproc = - imageproc::Processor::new(content_path.clone(), &static_path, &config.base_url); + let imageproc = imageproc::Processor::new(path.to_path_buf(), &config); let output_path = path.join(config.output_dir.clone()); let site = Site { @@ -152,9 +151,9 @@ impl Site { } pub fn set_base_url(&mut self, base_url: String) { - let mut imageproc = self.imageproc.lock().expect("Couldn't lock imageproc (set_base_url)"); - imageproc.set_base_url(&base_url); self.config.base_url = base_url; + let mut imageproc = self.imageproc.lock().expect("Couldn't lock imageproc (set_base_url)"); + imageproc.set_base_url(&self.config); } pub fn set_output_path>(&mut self, path: P) { diff --git a/components/site/src/tpls.rs b/components/site/src/tpls.rs index 19c6f7ff..0c3ec9d8 100644 --- a/components/site/src/tpls.rs +++ b/components/site/src/tpls.rs @@ -21,11 +21,13 @@ pub fn register_early_global_fns(site: &mut Site) -> TeraResult<()> { vec![site.static_path.clone(), site.output_path.clone(), site.content_path.clone()], ), ); - site.tera - .register_function("resize_image", global_fns::ResizeImage::new(site.imageproc.clone())); + site.tera.register_function( + "resize_image", + global_fns::ResizeImage::new(site.base_path.clone(), site.imageproc.clone()), + ); site.tera.register_function( "get_image_metadata", - global_fns::GetImageMeta::new(site.content_path.clone()), + global_fns::GetImageMetadata::new(site.base_path.clone()), ); site.tera.register_function("load_data", global_fns::LoadData::new(site.base_path.clone())); site.tera.register_function("trans", global_fns::Trans::new(site.config.clone())); diff --git a/components/templates/Cargo.toml b/components/templates/Cargo.toml index 8baca786..385c1e97 100644 --- a/components/templates/Cargo.toml +++ b/components/templates/Cargo.toml @@ -11,7 +11,9 @@ lazy_static = "1" toml = "0.5" csv = "1" image = "0.23" -serde_json = "1.0" +serde = "1" +serde_json = "1" +serde_derive = "1" sha2 = "0.9" url = "2" nom-bibtex = "0.3" diff --git a/components/templates/gutenberg.jpg b/components/templates/gutenberg.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0b031e9c78bdc01bb9fc56755343eb14919a28a3 GIT binary patch literal 47783 zcmbSyWmFtN*X9fZ3~qto4uN37VQ@llC-~s*8r&gh(7}R3NRZ&}?oMzIFgU^8Ki=Iv z-=4F-cK3GGudc3hpVL*hZ{6qVmxY&g0FIoLtP}tU1Ohx?FTl$(Kmq_lK=@C4HN@A3 zgo1>Gh=_y+1|y?jpkZL3qoJc?V&UOnV&P(;qvO2A!F_{IKtOp9l}10RKOe z070+MAR?h6A)(@9qGRI!Kif+u02c-53uFNSX#fbgKoBnQr58X6005C*z5S2F|I2^~ zuRbD!QBcv)UkB9T01$v65CS6TKVH9%_Ite#K*UADqvjAtexqs(rg6sS3`)pDq5W9Z zMWFWQl#a{9B^VX$Eg=yx3H>_;#`jFzJiL7T5CMr#l2Xz#vT~o*H8i!fb#zV5%q=Xf ztZiJsxVd|HdU=O@4GjyAh>U_ICMBn&eossPk^l2oL19tx@9LV`y84F3rsnRR-oE~U z!J*-)>6zKN`Gv)$jZOI0_Rj9!{=wP##pTuY&F$U&e{cZ-p#KT$zmfePxNu)_As`}x z5W)Y!1w`<8?I2u4Bx(+1JaJX9vGW@m&L9;0j|q8IU8uBNYNrGyE`QM8(s6IlpZy2g z|3LPC2Q2vi3)z1I``@^h02m

    &pY-0z?6)%xV6M&fEcJ=nn(mT<|17yMO?$dw*{( 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%0ARGaEEY-J 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 kY@jx z4Vk;0+A{m6DYcIn&!Dc9XqMLT7$V-0DQLoj+b0L=J5UFayT=(2%C8)mD$BQNKmiI4 z+~>D!t#MLSLg zN6dTUpQ+}6Ig54*H*MV+P$VF721ar3^{-0smyFX)&@UEvU+n?B`)OW2T0-$*bJ%i8 zA5UuY=>YR0QUMA;0F3eeNvpRFIh6B_661%Uqmc-0RP>sMy~08#zs7DB+N=l~0V2c-aXzAdsM;^I49 z&?K%VjX)}@gv%xa4&bmKfE}xux4#xvD9BZripb+>JFs6I_rcqd?^Y()ZtipoQ6mH9 zB$+tr^OMJ=a)Rza*v|+~2WkM?g744Y6q9*_7z)IW2VsiJxzbB9mfv)o9Ij6se}z2C zV|Cg9BclP&Us{OD?#c5N+&SCEXacnUa7L0qT?6EwQdf-e&q2?%OQp^bDo3~!kT6i# z`HuwqWMCY63a2X>nU(q5y9d7m)~ZV69hu>nDf(i7J1A~a`Su2y3yGi44y1)v%9Hqg z#s{_yHt$jUEwH>ken3=hA|$MdT1oLFhZlWq|t89y*$rHRkhv#qvU=@(DsB(j!VJcA{AbnX0I zah^W80Ihp?(O^0d>ZE@2IUHl5`hFE!-pXA{@*xUulyS9t@lTRNJZ|m*B%hZYb@Z$D za(#l;gdi!BCU$P;Zq@_oo^e1L`f^)nF~IOizfzR!TaB5HA&>!I;>!X?>|ke(e(g*7 zC7Mxr`@z3sq|C~svh3qlU(c|TVL%Yw->, } + impl ResizeImage { - pub fn new(imageproc: Arc>) -> Self { - Self { imageproc } + pub fn new(base_path: PathBuf, imageproc: Arc>) -> Self { + let search_paths = + [base_path.join("static").to_path_buf(), base_path.join("content").to_path_buf()]; + Self { base_path, imageproc, search_paths } } } @@ -22,7 +37,7 @@ static DEFAULT_FMT: &str = "auto"; impl TeraFn for ResizeImage { fn call(&self, args: &HashMap) -> Result { - let path = required_arg!( + let mut path = required_arg!( String, args.get("path"), "`resize_image` requires a `path` argument with a string value" @@ -53,45 +68,38 @@ impl TeraFn for ResizeImage { } let mut imageproc = self.imageproc.lock().unwrap(); - if !imageproc.source_exists(&path) { + if path.starts_with("@/") { + path = path.replace("@/", "content/"); + } + + let mut file_path = self.base_path.join(&path); + let mut file_exists = file_path.exists(); + if !file_exists { + // we need to search in both search folders now + for dir in &self.search_paths { + let p = dir.join(&path); + if p.exists() { + file_path = p; + file_exists = true; + break; + } + } + } + + if !file_exists { return Err(format!("`resize_image`: Cannot find path: {}", path).into()); } - let imageop = imageproc::ImageOp::from_args(path, &op, width, height, &format, quality) - .map_err(|e| format!("`resize_image`: {}", e))?; - let url = imageproc.insert(imageop); + let imageop = + imageproc::ImageOp::from_args(path, file_path, &op, width, height, &format, quality) + .map_err(|e| format!("`resize_image`: {}", e))?; + let (static_path, url) = imageproc.insert(imageop); - to_value(url).map_err(|err| err.into()) - } -} - -#[derive(Debug)] -pub struct GetImageMeta { - content_path: PathBuf, -} - -impl GetImageMeta { - pub fn new(content_path: PathBuf) -> Self { - Self { content_path } - } -} - -impl TeraFn for GetImageMeta { - fn call(&self, args: &HashMap) -> Result { - let path = required_arg!( - String, - args.get("path"), - "`get_image_metadata` requires a `path` argument with a string value" - ); - let src_path = self.content_path.join(&path); - if !src_path.exists() { - return Err(format!("`get_image_metadata`: Cannot find path: {}", path).into()); - } - let (height, width) = image_dimensions(&src_path)?; - let mut map = tera::Map::new(); - map.insert(String::from("height"), Value::Number(tera::Number::from(height))); - map.insert(String::from("width"), Value::Number(tera::Number::from(width))); - Ok(Value::Object(map)) + to_value(ResizeImageResponse { + static_path: static_path.to_string_lossy().into_owned(), + url, + }) + .map_err(|err| err.into()) } } @@ -112,9 +120,163 @@ fn image_dimensions(path: &PathBuf) -> Result<(u32, u32)> { } } +#[derive(Debug)] +pub struct GetImageMetadata { + /// The base path of the Zola site + base_path: PathBuf, +} + +impl GetImageMetadata { + pub fn new(base_path: PathBuf) -> Self { + Self { base_path } + } +} + +impl TeraFn for GetImageMetadata { + fn call(&self, args: &HashMap) -> Result { + let mut path = required_arg!( + String, + args.get("path"), + "`get_image_metadata` requires a `path` argument with a string value" + ); + if path.starts_with("@/") { + path = path.replace("@/", "content/"); + } + let src_path = self.base_path.join(&path); + if !src_path.exists() { + return Err(format!("`get_image_metadata`: Cannot find path: {}", path).into()); + } + let (height, width) = image_dimensions(&src_path)?; + let mut map = tera::Map::new(); + map.insert(String::from("height"), Value::Number(tera::Number::from(height))); + map.insert(String::from("width"), Value::Number(tera::Number::from(width))); + Ok(Value::Object(map)) + } +} + #[cfg(test)] mod tests { - use super::*; + use super::{GetImageMetadata, ResizeImage}; - // TODO + use std::collections::HashMap; + use std::fs::{copy, create_dir_all}; + + use config::Config; + use std::sync::{Arc, Mutex}; + use tempfile::{tempdir, TempDir}; + use tera::{to_value, Function}; + + fn create_dir_with_image() -> TempDir { + let dir = tempdir().unwrap(); + create_dir_all(dir.path().join("content").join("gallery")).unwrap(); + create_dir_all(dir.path().join("static")).unwrap(); + copy("gutenberg.jpg", dir.path().join("content").join("gutenberg.jpg")).unwrap(); + copy("gutenberg.jpg", dir.path().join("content").join("gallery").join("asset.jpg")) + .unwrap(); + copy("gutenberg.jpg", dir.path().join("static").join("gutenberg.jpg")).unwrap(); + dir + } + + // https://github.com/getzola/zola/issues/788 + // https://github.com/getzola/zola/issues/1035 + #[test] + fn can_resize_image() { + let dir = create_dir_with_image(); + let imageproc = imageproc::Processor::new(dir.path().to_path_buf(), &Config::default()); + + let static_fn = ResizeImage::new(dir.path().to_path_buf(), Arc::new(Mutex::new(imageproc))); + let mut args = HashMap::new(); + args.insert("height".to_string(), to_value(40).unwrap()); + args.insert("width".to_string(), to_value(40).unwrap()); + + // hashing is stable based on filename and params so we can compare with hashes + + // 1. resizing an image in static + args.insert("path".to_string(), to_value("static/gutenberg.jpg").unwrap()); + let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); + assert_eq!( + data["static_path"], + to_value("static/processed_images/e49f5bd23ec5007c00.jpg").unwrap() + ); + assert_eq!( + data["url"], + to_value("http://a-website.com/processed_images/e49f5bd23ec5007c00.jpg").unwrap() + ); + + // 2. resizing an image in content with a relative path + args.insert("path".to_string(), to_value("content/gutenberg.jpg").unwrap()); + let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); + assert_eq!( + data["static_path"], + to_value("static/processed_images/32454a1e0243976c00.jpg").unwrap() + ); + assert_eq!( + data["url"], + to_value("http://a-website.com/processed_images/32454a1e0243976c00.jpg").unwrap() + ); + + // 3. resizing an image in content starting with `@/` + args.insert("path".to_string(), to_value("@/gutenberg.jpg").unwrap()); + let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); + assert_eq!( + data["static_path"], + to_value("static/processed_images/32454a1e0243976c00.jpg").unwrap() + ); + assert_eq!( + data["url"], + to_value("http://a-website.com/processed_images/32454a1e0243976c00.jpg").unwrap() + ); + + // 4. resizing an image with a relative path not starting with static or content + args.insert("path".to_string(), to_value("gallery/asset.jpg").unwrap()); + let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); + assert_eq!( + data["static_path"], + to_value("static/processed_images/c8aaba7b0593a60b00.jpg").unwrap() + ); + assert_eq!( + data["url"], + to_value("http://a-website.com/processed_images/c8aaba7b0593a60b00.jpg").unwrap() + ); + + // 5. resizing with an absolute path + args.insert("path".to_string(), to_value("/content/gutenberg.jpg").unwrap()); + assert!(static_fn.call(&args).is_err()); + } + + // TODO: consider https://github.com/getzola/zola/issues/1161 + #[test] + fn can_get_image_metadata() { + let dir = create_dir_with_image(); + + let static_fn = GetImageMetadata::new(dir.path().to_path_buf()); + + // Let's test a few scenarii + let mut args = HashMap::new(); + + // 1. a call to something in `static` with a relative path + args.insert("path".to_string(), to_value("static/gutenberg.jpg").unwrap()); + let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); + assert_eq!(data["height"], to_value(380).unwrap()); + assert_eq!(data["width"], to_value(300).unwrap()); + + // 2. a call to something in `static` with an absolute path is not handled currently + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("/static/gutenberg.jpg").unwrap()); + assert!(static_fn.call(&args).is_err()); + + // 3. a call to something in `content` with a relative path + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("content/gutenberg.jpg").unwrap()); + let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); + assert_eq!(data["height"], to_value(380).unwrap()); + assert_eq!(data["width"], to_value(300).unwrap()); + + // 4. a call to something in `content` with a @/ path corresponds to + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("@/gutenberg.jpg").unwrap()); + let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); + assert_eq!(data["height"], to_value(380).unwrap()); + assert_eq!(data["width"], to_value(300).unwrap()); + } } diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index 12638923..9ee87d11 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -19,7 +19,7 @@ mod load_data; pub use self::content::{GetPage, GetSection, GetTaxonomy, GetTaxonomyUrl}; pub use self::i18n::Trans; -pub use self::images::{GetImageMeta, ResizeImage}; +pub use self::images::{GetImageMetadata, ResizeImage}; pub use self::load_data::LoadData; #[derive(Debug)] diff --git a/components/utils/src/fs.rs b/components/utils/src/fs.rs index afb7a04e..81d07605 100644 --- a/components/utils/src/fs.rs +++ b/components/utils/src/fs.rs @@ -1,5 +1,5 @@ use filetime::{set_file_mtime, FileTime}; -use std::fs::{copy, create_dir_all, metadata, read_dir, File}; +use std::fs::{copy, create_dir_all, metadata, File}; use std::io::prelude::*; use std::path::{Path, PathBuf}; use std::time::SystemTime; @@ -60,27 +60,6 @@ pub fn read_file(path: &Path) -> Result { Ok(content) } -/// Looks into the current folder for the path and see if there's anything that is not a .md -/// file. Those will be copied next to the rendered .html file -pub fn find_related_assets(path: &Path) -> Vec { - let mut assets = vec![]; - - for entry in read_dir(path).unwrap().filter_map(std::result::Result::ok) { - let entry_path = entry.path(); - if entry_path.is_file() { - match entry_path.extension() { - Some(e) => match e.to_str() { - Some("md") => continue, - _ => assets.push(entry_path.to_path_buf()), - }, - None => continue, - } - } - } - - assets -} - /// Copy a file but takes into account where to start the copy as /// there might be folders we need to create on the way. pub fn copy_file(src: &Path, dest: &PathBuf, base_path: &PathBuf, hard_link: bool) -> Result<()> { @@ -204,25 +183,9 @@ mod tests { use std::path::PathBuf; use std::str::FromStr; - use tempfile::{tempdir, tempdir_in}; + use tempfile::tempdir_in; - use super::{copy_file, find_related_assets}; - - #[test] - fn can_find_related_assets() { - let tmp_dir = tempdir().expect("create temp dir"); - File::create(tmp_dir.path().join("index.md")).unwrap(); - File::create(tmp_dir.path().join("example.js")).unwrap(); - File::create(tmp_dir.path().join("graph.jpg")).unwrap(); - File::create(tmp_dir.path().join("fail.png")).unwrap(); - - let assets = find_related_assets(tmp_dir.path()); - assert_eq!(assets.len(), 3); - assert_eq!(assets.iter().filter(|p| p.extension().unwrap() != "md").count(), 3); - assert_eq!(assets.iter().filter(|p| p.file_name().unwrap() == "example.js").count(), 1); - assert_eq!(assets.iter().filter(|p| p.file_name().unwrap() == "graph.jpg").count(), 1); - assert_eq!(assets.iter().filter(|p| p.file_name().unwrap() == "fail.png").count(), 1); - } + use super::copy_file; #[test] fn test_copy_file_timestamp_preserved() { From 7154e9054294edc4fbad601058155a76dd229bd6 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 12 May 2021 22:39:15 +0200 Subject: [PATCH 083/113] Update load_data --- components/templates/src/filters.rs | 2 +- components/templates/src/global_fns/images.rs | 56 ++-- .../templates/src/global_fns/load_data.rs | 239 +++++++++--------- components/templates/src/global_fns/mod.rs | 39 ++- 4 files changed, 182 insertions(+), 154 deletions(-) diff --git a/components/templates/src/filters.rs b/components/templates/src/filters.rs index 17ccc17c..0e465540 100644 --- a/components/templates/src/filters.rs +++ b/components/templates/src/filters.rs @@ -23,7 +23,7 @@ impl MarkdownFilter { config: Config, permalinks: HashMap, ) -> TeraResult { - let tera = load_tera(&path, &config).map_err(|err| tera::Error::msg(err))?; + let tera = load_tera(&path, &config).map_err(tera::Error::msg)?; Ok(Self { config, permalinks, tera }) } } diff --git a/components/templates/src/global_fns/images.rs b/components/templates/src/global_fns/images.rs index ca85d839..ee46a7c7 100644 --- a/components/templates/src/global_fns/images.rs +++ b/components/templates/src/global_fns/images.rs @@ -1,8 +1,9 @@ use std::collections::HashMap; use std::ffi::OsStr; -use std::path::PathBuf; +use std::path::{Path, PathBuf}; use std::sync::{Arc, Mutex}; +use crate::global_fns::search_for_file; use image::GenericImageView; use serde_derive::{Deserialize, Serialize}; use svg_metadata as svg; @@ -20,15 +21,12 @@ struct ResizeImageResponse { pub struct ResizeImage { /// The base path of the Zola site base_path: PathBuf, - search_paths: [PathBuf; 2], imageproc: Arc>, } impl ResizeImage { pub fn new(base_path: PathBuf, imageproc: Arc>) -> Self { - let search_paths = - [base_path.join("static").to_path_buf(), base_path.join("content").to_path_buf()]; - Self { base_path, imageproc, search_paths } + Self { base_path, imageproc } } } @@ -37,7 +35,7 @@ static DEFAULT_FMT: &str = "auto"; impl TeraFn for ResizeImage { fn call(&self, args: &HashMap) -> Result { - let mut path = required_arg!( + let path = required_arg!( String, args.get("path"), "`resize_image` requires a `path` argument with a string value" @@ -68,27 +66,12 @@ impl TeraFn for ResizeImage { } let mut imageproc = self.imageproc.lock().unwrap(); - if path.starts_with("@/") { - path = path.replace("@/", "content/"); - } - - let mut file_path = self.base_path.join(&path); - let mut file_exists = file_path.exists(); - if !file_exists { - // we need to search in both search folders now - for dir in &self.search_paths { - let p = dir.join(&path); - if p.exists() { - file_path = p; - file_exists = true; - break; - } + let file_path = match search_for_file(&self.base_path, &path) { + Some(f) => f, + None => { + return Err(format!("`resize_image`: Cannot find path: {}", path).into()); } - } - - if !file_exists { - return Err(format!("`resize_image`: Cannot find path: {}", path).into()); - } + }; let imageop = imageproc::ImageOp::from_args(path, file_path, &op, width, height, &format, quality) @@ -104,7 +87,7 @@ impl TeraFn for ResizeImage { } // Try to read the image dimensions for a given image -fn image_dimensions(path: &PathBuf) -> Result<(u32, u32)> { +fn image_dimensions(path: &Path) -> Result<(u32, u32)> { if let Some("svg") = path.extension().and_then(OsStr::to_str) { let img = svg::Metadata::parse_file(&path) .map_err(|e| Error::chain(format!("Failed to process SVG: {}", path.display()), e))?; @@ -134,18 +117,17 @@ impl GetImageMetadata { impl TeraFn for GetImageMetadata { fn call(&self, args: &HashMap) -> Result { - let mut path = required_arg!( + let path = required_arg!( String, args.get("path"), "`get_image_metadata` requires a `path` argument with a string value" ); - if path.starts_with("@/") { - path = path.replace("@/", "content/"); - } - let src_path = self.base_path.join(&path); - if !src_path.exists() { - return Err(format!("`get_image_metadata`: Cannot find path: {}", path).into()); - } + let src_path = match search_for_file(&self.base_path, &path) { + Some(f) => f, + None => { + return Err(format!("`resize_image`: Cannot find path: {}", path).into()); + } + }; let (height, width) = image_dimensions(&src_path)?; let mut map = tera::Map::new(); map.insert(String::from("height"), Value::Number(tera::Number::from(height))); @@ -220,11 +202,11 @@ mod tests { let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); assert_eq!( data["static_path"], - to_value("static/processed_images/32454a1e0243976c00.jpg").unwrap() + to_value("static/processed_images/074e171855ee541800.jpg").unwrap() ); assert_eq!( data["url"], - to_value("http://a-website.com/processed_images/32454a1e0243976c00.jpg").unwrap() + to_value("http://a-website.com/processed_images/074e171855ee541800.jpg").unwrap() ); // 4. resizing an image with a relative path not starting with static or content diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 189ce537..6d003fc0 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -4,7 +4,6 @@ use utils::fs::{get_file_time, is_path_in_directory, read_file}; use reqwest::header::{HeaderValue, CONTENT_TYPE}; use reqwest::{blocking::Client, header}; use std::collections::hash_map::DefaultHasher; -use std::fmt; use std::hash::{Hash, Hasher}; use std::str::FromStr; use url::Url; @@ -12,6 +11,7 @@ use url::Url; use std::path::PathBuf; use std::sync::{Arc, Mutex}; +use crate::global_fns::search_for_file; use csv::Reader; use std::collections::HashMap; use tera::{from_value, to_value, Error, Function as TeraFn, Map, Result, Value}; @@ -19,11 +19,6 @@ use tera::{from_value, to_value, Error, Function as TeraFn, Map, Result, Value}; static GET_DATA_ARGUMENT_ERROR_MESSAGE: &str = "`load_data`: requires EITHER a `path` or `url` argument"; -enum DataSource { - Url(Url), - Path(PathBuf), -} - #[derive(Debug, PartialEq, Clone, Copy, Hash)] enum Method { Post, @@ -42,7 +37,7 @@ impl FromStr for Method { } } -#[derive(Debug)] +#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)] enum OutputFormat { Toml, Json, @@ -51,23 +46,11 @@ enum OutputFormat { Plain, } -impl fmt::Display for OutputFormat { - fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { - fmt::Debug::fmt(self, f) - } -} - -impl Hash for OutputFormat { - fn hash(&self, state: &mut H) { - self.to_string().hash(state); - } -} - impl FromStr for OutputFormat { type Err = Error; fn from_str(output_format: &str) -> Result { - match output_format { + match output_format.to_lowercase().as_ref() { "toml" => Ok(OutputFormat::Toml), "csv" => Ok(OutputFormat::Csv), "json" => Ok(OutputFormat::Json), @@ -90,6 +73,12 @@ impl OutputFormat { } } +#[derive(Debug, PartialEq, Eq)] +enum DataSource { + Url(Url), + Path(PathBuf), +} + impl DataSource { /// Returns Some(DataSource) on success, from optional load_data() path/url arguments /// Returns an Error when a URL could not be parsed and Ok(None) when the path @@ -99,18 +88,17 @@ impl DataSource { fn from_args( path_arg: Option, url_arg: Option, - content_path: &PathBuf, + base_path: &PathBuf, ) -> Result> { if path_arg.is_some() && url_arg.is_some() { return Err(GET_DATA_ARGUMENT_ERROR_MESSAGE.into()); } if let Some(path) = path_arg { - let full_path = content_path.join(path); - if !full_path.exists() { - return Ok(None); - } - return Ok(Some(DataSource::Path(full_path))); + return match search_for_file(&base_path, &path) { + Some(f) => Ok(Some(DataSource::Path(f))), + None => Ok(None), + }; } if let Some(url) = url_arg { @@ -127,8 +115,8 @@ impl DataSource { &self, format: &OutputFormat, method: Method, - post_body: Option, - post_content_type: Option, + post_body: &Option, + post_content_type: &Option, ) -> u64 { let mut hasher = DefaultHasher::new(); format.hash(&mut hasher); @@ -152,47 +140,38 @@ impl Hash for DataSource { } } -fn read_data_file(base_path: &PathBuf, full_path: PathBuf) -> Result { +fn read_local_data_file(base_path: &PathBuf, full_path: PathBuf) -> Result { if !is_path_in_directory(&base_path, &full_path) .map_err(|e| format!("Failed to read data file {}: {}", full_path.display(), e))? { return Err(format!( - "{} is not inside the base site directory {}", - full_path.display(), - base_path.display() + "{:?} is not inside the base site directory {:?}", + full_path, base_path ) .into()); } - read_file(&full_path).map_err(|e| { - format!("`load_data`: error {} loading file {}", full_path.to_str().unwrap(), e).into() - }) + + read_file(&full_path) + .map_err(|e| format!("`load_data`: error reading file {:?}: {}", full_path, e).into()) } fn get_output_format_from_args( - args: &HashMap, + format_arg: Option, data_source: &DataSource, ) -> Result { - let format_arg = optional_arg!( - String, - args.get("format"), - "`load_data`: `format` needs to be an argument with a string value, being one of the supported `load_data` file types (csv, json, toml, bibtex, plain)" - ); - if let Some(format) = format_arg { - if format == "plain" { - return Ok(OutputFormat::Plain); - } return OutputFormat::from_str(&format); } - let from_extension = if let DataSource::Path(path) = data_source { - path.extension().map(|extension| extension.to_str().unwrap()).unwrap_or_else(|| "plain") + if let DataSource::Path(path) = data_source { + match path.extension().and_then(|e| e.to_str()) { + Some(ext) => OutputFormat::from_str(ext).or(Ok(OutputFormat::Plain)), + None => Ok(OutputFormat::Plain), + } } else { - "plain" - }; - - // Always default to Plain if we don't know what it is - OutputFormat::from_str(from_extension).or(Ok(OutputFormat::Plain)) + // Always default to Plain if we don't know what it is + Ok(OutputFormat::Plain) + } } /// A Tera function to load data from a file or from a URL @@ -218,17 +197,22 @@ impl LoadData { impl TeraFn for LoadData { fn call(&self, args: &HashMap) -> Result { - let required = if let Some(req) = optional_arg!( + // Either a local path or a URL + let path_arg = optional_arg!(String, args.get("path"), GET_DATA_ARGUMENT_ERROR_MESSAGE); + let url_arg = optional_arg!(String, args.get("url"), GET_DATA_ARGUMENT_ERROR_MESSAGE); + // Optional general params + let format_arg = optional_arg!( + String, + args.get("format"), + "`load_data`: `format` needs to be an argument with a string value, being one of the supported `load_data` file types (csv, json, toml, bibtex, plain)" + ); + let required = optional_arg!( bool, args.get("required"), "`load_data`: `required` must be a boolean (true or false)" - ) { - req - } else { - true - }; - let path_arg = optional_arg!(String, args.get("path"), GET_DATA_ARGUMENT_ERROR_MESSAGE); - let url_arg = optional_arg!(String, args.get("url"), GET_DATA_ARGUMENT_ERROR_MESSAGE); + ) + .unwrap_or(true); + // Remote URL parameters only let post_body_arg = optional_arg!(String, args.get("body"), "`load_data` body must be a string, if set."); let post_content_type = optional_arg!( @@ -241,6 +225,7 @@ impl TeraFn for LoadData { args.get("method"), "`load_data` method must either be POST or GET." ); + let method = match method_arg { Some(ref method_str) => match Method::from_str(&method_str) { Ok(m) => m, @@ -248,43 +233,39 @@ impl TeraFn for LoadData { }, _ => Method::Get, }; - let data_source = DataSource::from_args(path_arg.clone(), url_arg, &self.base_path)?; // If the file doesn't exist, source is None - match (&data_source, required) { - // If the file was not required, return a Null value to the template - (None, false) => { - return Ok(Value::Null); - } - // If the file was required, error - (None, true) => { - // source is None only with path_arg (not URL), so path_arg is safely unwrap - return Err(format!( - "{} doesn't exist", - &self.base_path.join(path_arg.unwrap()).display() - ) - .into()); - } - _ => {} - } - let data_source = data_source.unwrap(); - let file_format = get_output_format_from_args(&args, &data_source)?; - let cache_key = data_source.get_cache_key( - &file_format, - method, - post_body_arg.clone(), - post_content_type.clone(), - ); + let data_source = + match (DataSource::from_args(path_arg.clone(), url_arg, &self.base_path)?, required) { + // If the file was not required, return a Null value to the template + (None, false) => { + return Ok(Value::Null); + } + // If the file was required, error + (None, true) => { + // source is None only with path_arg (not URL), so path_arg is safely unwrap + return Err(format!( + "{} doesn't exist", + &self.base_path.join(path_arg.unwrap()).display() + ) + .into()); + } + (Some(data_source), _) => data_source, + }; + + let file_format = get_output_format_from_args(format_arg, &data_source)?; + let cache_key = + data_source.get_cache_key(&file_format, method, &post_body_arg, &post_content_type); let mut cache = self.result_cache.lock().expect("result cache lock"); - let response_client = self.client.lock().expect("response client lock"); if let Some(cached_result) = cache.get(&cache_key) { return Ok(cached_result.clone()); } let data = match data_source { - DataSource::Path(path) => read_data_file(&self.base_path, path), + DataSource::Path(path) => read_local_data_file(&self.base_path, path), DataSource::Url(url) => { + let response_client = self.client.lock().expect("response client lock"); let req = match method { Method::Get => response_client .get(url.as_str()) @@ -308,12 +289,9 @@ impl TeraFn for LoadData { }, _ => {} }; - match post_body_arg { - Some(body) => { - resp = resp.body(body); - } - _ => {} - }; + if let Some(body) = post_body_arg { + resp = resp.body(body); + } resp } }; @@ -335,7 +313,7 @@ impl TeraFn for LoadData { .into()) } } - } // Now that we have discarded recoverable errors, we can unwrap the result + } }?; let result_value: Result = match file_format { @@ -368,7 +346,7 @@ fn load_toml(toml_data: String) -> Result { match toml_value { Value::Object(m) => Ok(fix_toml_dates(m)), - _ => unreachable!("Loaded something other than a TOML object"), + _ => Err("Loaded something other than a TOML object".into()), } } @@ -436,11 +414,11 @@ fn load_csv(csv_data: String) -> Result { let mut csv_map = Map::new(); { - let hdrs = reader.headers().map_err(|e| { + let headers = reader.headers().map_err(|e| { format!("'load_data': {} - unable to read CSV header line (line 1) for CSV file", e) })?; - let headers_array = hdrs.iter().map(|v| Value::String(v.to_string())).collect(); + let headers_array = headers.iter().map(|v| Value::String(v.to_string())).collect(); csv_map.insert(String::from("headers"), Value::Array(headers_array)); } @@ -487,6 +465,8 @@ mod tests { use crate::global_fns::load_data::Method; use mockito::mock; use serde_json::json; + use std::fs::{copy, create_dir_all}; + use tempfile::tempdir; use tera::{to_value, Function}; // NOTE: HTTP mock paths below are randomly generated to avoid name @@ -621,17 +601,47 @@ mod tests { } #[test] - fn cant_load_outside_content_dir() { + fn can_handle_various_local_file_locations() { + let dir = tempdir().unwrap(); + create_dir_all(dir.path().join("content").join("gallery")).unwrap(); + create_dir_all(dir.path().join("static")).unwrap(); + copy(get_test_file("test.css"), dir.path().join("content").join("test.css")).unwrap(); + copy(get_test_file("test.css"), dir.path().join("content").join("gallery").join("new.css")) + .unwrap(); + copy(get_test_file("test.css"), dir.path().join("static").join("test.css")).unwrap(); + + let static_fn = LoadData::new(dir.path().to_path_buf()); + let mut args = HashMap::new(); + + // 1. relative path in `static` + args.insert("path".to_string(), to_value("static/test.css").unwrap()); + let data = static_fn.call(&args).unwrap().as_str().unwrap().to_string(); + assert_eq!(data, ".hello {}\n"); + + // 2. relative path in `content` + args.insert("path".to_string(), to_value("content/test.css").unwrap()); + let data = static_fn.call(&args).unwrap().as_str().unwrap().to_string(); + assert_eq!(data, ".hello {}\n"); + + // 3. path starting with @/ + args.insert("path".to_string(), to_value("@/test.css").unwrap()); + let data = static_fn.call(&args).unwrap().as_str().unwrap().to_string(); + assert_eq!(data, ".hello {}\n"); + + // 4. absolute path does not work + args.insert("path".to_string(), to_value("/test.css").unwrap()); + assert!(static_fn.call(&args).is_err()); + } + + #[test] + fn cannot_load_outside_content_dir() { let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("../../README.md").unwrap()); args.insert("format".to_string(), to_value("plain").unwrap()); let result = static_fn.call(&args); assert!(result.is_err()); - assert!(result - .unwrap_err() - .to_string() - .contains("README.md is not inside the base site directory")); + assert!(result.unwrap_err().to_string().contains("is not inside the base site directory")); } #[test] @@ -640,14 +650,14 @@ mod tests { let cache_key = DataSource::Path(get_test_file("test.toml")).get_cache_key( &OutputFormat::Toml, Method::Get, - None, - None, + &None, + &None, ); let cache_key_2 = DataSource::Path(get_test_file("test.toml")).get_cache_key( &OutputFormat::Toml, Method::Get, - None, - None, + &None, + &None, ); assert_eq!(cache_key, cache_key_2); } @@ -657,14 +667,14 @@ mod tests { let toml_cache_key = DataSource::Path(get_test_file("test.toml")).get_cache_key( &OutputFormat::Toml, Method::Get, - None, - None, + &None, + &None, ); let json_cache_key = DataSource::Path(get_test_file("test.json")).get_cache_key( &OutputFormat::Toml, Method::Get, - None, - None, + &None, + &None, ); assert_ne!(toml_cache_key, json_cache_key); } @@ -674,14 +684,14 @@ mod tests { let toml_cache_key = DataSource::Path(get_test_file("test.toml")).get_cache_key( &OutputFormat::Toml, Method::Get, - None, - None, + &None, + &None, ); let json_cache_key = DataSource::Path(get_test_file("test.toml")).get_cache_key( &OutputFormat::Json, Method::Get, - None, - None, + &None, + &None, ); assert_ne!(toml_cache_key, json_cache_key); } @@ -800,6 +810,7 @@ mod tests { let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.css").unwrap()); let result = static_fn.call(&args.clone()).unwrap(); + println!("{:?}", result); if cfg!(windows) { assert_eq!(result.as_str().unwrap().replace("\r\n", "\n"), ".hello {}\n",); diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index 9ee87d11..e7514fd4 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -1,5 +1,6 @@ +use std::borrow::Cow; use std::collections::HashMap; -use std::path::PathBuf; +use std::path::{Path, PathBuf}; use std::{fs, io, result}; use base64::encode as encode_b64; @@ -22,6 +23,40 @@ pub use self::i18n::Trans; pub use self::images::{GetImageMetadata, ResizeImage}; pub use self::load_data::LoadData; +/// This is used by a few Tera functions to search for files on the filesystem. +/// This does try to find the file in 3 different spots: +/// 1. base_path + path +/// 2. base_path + static + path +/// 3. base_path + content + path +pub fn search_for_file(base_path: &Path, path: &str) -> Option { + let search_paths = [base_path.join("static"), base_path.join("content")]; + let actual_path = if path.starts_with("@/") { + Cow::Owned(path.replace("@/", "content/")) + } else { + Cow::Borrowed(path) + }; + let mut file_path = base_path.join(&*actual_path); + let mut file_exists = file_path.exists(); + + if !file_exists { + // we need to search in both search folders now + for dir in &search_paths { + let p = dir.join(&*actual_path); + if p.exists() { + file_path = p; + file_exists = true; + break; + } + } + } + + if file_exists { + Some(file_path) + } else { + None + } +} + #[derive(Debug)] pub struct GetUrl { config: Config, @@ -77,7 +112,7 @@ where let mut hasher = D::new(); io::copy(&mut file, &mut hasher)?; if base64 { - Ok(format!("{}", encode_b64(hasher.finalize()))) + Ok(encode_b64(hasher.finalize())) } else { Ok(format!("{:x}", hasher.finalize())) } From 9e0cac6d4d1623918f63e08848b9a7a219621289 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 13 May 2021 22:20:47 +0200 Subject: [PATCH 084/113] Cleanup of get_url and get_file_hash --- CHANGELOG.md | 4 +- components/site/src/tpls.rs | 12 +- components/templates/src/global_fns/files.rs | 435 ++++++++++++++++ .../templates/src/global_fns/helpers.rs | 36 ++ components/templates/src/global_fns/images.rs | 5 +- .../templates/src/global_fns/load_data.rs | 44 +- components/templates/src/global_fns/mod.rs | 473 +----------------- test_site/themes/sample/templates/index.html | 2 +- 8 files changed, 505 insertions(+), 506 deletions(-) create mode 100644 components/templates/src/global_fns/files.rs create mode 100644 components/templates/src/global_fns/helpers.rs diff --git a/CHANGELOG.md b/CHANGELOG.md index 1c035759..02a0f0e3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,9 @@ ### Breaking - Newlines are now required after the closing `+++` of front-matter -- `resize_image` now returns a map: `{url, static_path}` instead of just the URL so you can follow up with other functions +- `resize_image` now returns a map: `{url, static_path}` instead of just the URL so you can follow up with other functions +- `get_file_hash` now has the `base64` option set to `true` by default (from `false`) since it's mainly used for integrity hashes which are base64 +- `get_url` does not automatically strip leading `/` from paths anymore - i18n rework: languages now have their sections in `config.toml` to set up all their options 1. taxonomies don't have a `lang` anymore in the config, you need to declare them in their respective language section 2. the `config` variable in templates has been changed and is now a stripped down language aware version of the previous `config` diff --git a/components/site/src/tpls.rs b/components/site/src/tpls.rs index 0c3ec9d8..5b66731b 100644 --- a/components/site/src/tpls.rs +++ b/components/site/src/tpls.rs @@ -16,9 +16,9 @@ pub fn register_early_global_fns(site: &mut Site) -> TeraResult<()> { site.tera.register_function( "get_url", global_fns::GetUrl::new( + site.base_path.clone(), site.config.clone(), site.permalinks.clone(), - vec![site.static_path.clone(), site.output_path.clone(), site.content_path.clone()], ), ); site.tera.register_function( @@ -39,14 +39,8 @@ pub fn register_early_global_fns(site: &mut Site) -> TeraResult<()> { site.config.slugify.taxonomies, ), ); - site.tera.register_function( - "get_file_hash", - global_fns::GetFileHash::new(vec![ - site.static_path.clone(), - site.output_path.clone(), - site.content_path.clone(), - ]), - ); + site.tera + .register_function("get_file_hash", global_fns::GetFileHash::new(site.base_path.clone())); Ok(()) } diff --git a/components/templates/src/global_fns/files.rs b/components/templates/src/global_fns/files.rs new file mode 100644 index 00000000..914883e4 --- /dev/null +++ b/components/templates/src/global_fns/files.rs @@ -0,0 +1,435 @@ +use std::collections::HashMap; +use std::path::PathBuf; +use std::{fs, io, result}; + +use base64::encode as encode_b64; +use sha2::{digest, Sha256, Sha384, Sha512}; +use tera::{from_value, to_value, Function as TeraFn, Result, Value}; +use config::Config; +use utils::site::resolve_internal_link; +use crate::global_fns::helpers::search_for_file; + + +fn compute_file_hash( + mut file: fs::File, + as_base64: bool, +) -> result::Result +where + digest::Output: core::fmt::LowerHex, + D: std::io::Write, +{ + let mut hasher = D::new(); + io::copy(&mut file, &mut hasher)?; + println!("base64: {}", as_base64); + if as_base64 { + Ok(encode_b64(hasher.finalize())) + } else { + Ok(format!("{:x}", hasher.finalize())) + } +} + +#[derive(Debug)] +pub struct GetUrl { + base_path: PathBuf, + config: Config, + permalinks: HashMap, +} + +impl GetUrl { + pub fn new(base_path: PathBuf, config: Config, permalinks: HashMap) -> Self { + Self { base_path, config, permalinks } + } +} + +fn make_path_with_lang(path: String, lang: &str, config: &Config) -> Result { + if lang == config.default_language { + return Ok(path); + } + + if !config.other_languages().contains_key(lang) { + return Err( + format!("`{}` is not an authorized language (check config.languages).", lang).into() + ); + } + + let mut split_path: Vec = path.split('.').map(String::from).collect(); + let ilast = split_path.len() - 1; + split_path[ilast] = format!("{}.{}", lang, split_path[ilast]); + Ok(split_path.join(".")) +} + +impl TeraFn for GetUrl { + fn call(&self, args: &HashMap) -> Result { + let path = required_arg!( + String, + args.get("path"), + "`get_url` requires a `path` argument with a string value" + ); + let cachebust = optional_arg!( + bool, + args.get("cachebust"), + "`get_url`: `cachebust` must be a boolean (true or false)" + ) + .unwrap_or(false); + let trailing_slash = optional_arg!( + bool, + args.get("trailing_slash"), + "`get_url`: `trailing_slash` must be a boolean (true or false)" + ) + .unwrap_or(false); + let lang = optional_arg!(String, args.get("lang"), "`get_url`: `lang` must be a string.") + .unwrap_or_else(|| self.config.default_language.clone()); + + // TODO: handle rss files with langs + // https://zola.discourse.group/t/rss-and-languages-do-not-work/878 + // TODO: clean up everything + // if it starts with @/, resolve it as an internal link + if path.starts_with("@/") { + let path_with_lang = match make_path_with_lang(path, &lang, &self.config) { + Ok(x) => x, + Err(e) => return Err(e), + }; + + match resolve_internal_link(&path_with_lang, &self.permalinks) { + Ok(resolved) => Ok(to_value(resolved.permalink).unwrap()), + Err(_) => { + Err(format!("Could not resolve URL for link `{}` not found.", path_with_lang) + .into()) + } + } + } else { + // anything else + let mut segments = vec![]; + + if lang != self.config.default_language { + segments.push(lang); + }; + + segments.push(path); + + let path_with_lang = segments.join("/"); + + let mut permalink = self.config.make_permalink(&path_with_lang); + if !trailing_slash && permalink.ends_with('/') { + permalink.pop(); // Removes the slash + } + + if cachebust { + match search_for_file(&self.base_path, &path_with_lang) + .and_then(|p| fs::File::open(&p).ok()) + .and_then(|f| compute_file_hash::(f, false).ok()) + { + Some(hash) => { + permalink = format!("{}?h={}", permalink, hash); + } + None => { + return Err(format!("Could not find or open file {}", path_with_lang).into()) + } + }; + } + + Ok(to_value(permalink).unwrap()) + } + } +} + +#[derive(Debug)] +pub struct GetFileHash { + base_path: PathBuf, +} +impl GetFileHash { + pub fn new(base_path: PathBuf) -> Self { + Self { base_path } + } +} + +impl TeraFn for GetFileHash { + fn call(&self, args: &HashMap) -> Result { + let path = required_arg!( + String, + args.get("path"), + "`get_file_hash` requires a `path` argument with a string value" + ); + let sha_type = optional_arg!( + u16, + args.get("sha_type"), + "`get_file_hash`: `sha_type` must be 256, 384 or 512" + ) + .unwrap_or(384); + let base64 = optional_arg!( + bool, + args.get("base64"), + "`get_file_hash`: `base64` must be true or false" + ) + .unwrap_or(true); + + let file_path = match search_for_file(&self.base_path, &path) { + Some(f) => f, + None => { + return Err(format!("`get_file_hash`: Cannot find file: {}", path).into()); + } + }; + + let f = match std::fs::File::open(file_path) { + Ok(f) => f, + Err(e) => { + return Err(format!("File {} could not be open: {}", path, e).into()); + } + }; + + let hash = match sha_type { + 256 => compute_file_hash::(f, base64), + 384 => compute_file_hash::(f, base64), + 512 => compute_file_hash::(f, base64), + _ => return Err("`get_file_hash`: Invalid sha value".into()), + }; + + match hash { + Ok(digest) => Ok(to_value(digest).unwrap()), + Err(_) => Err("`get_file_hash`: could no compute hash".into()), + } + } +} + +#[cfg(test)] +mod tests { + use super::{GetFileHash, GetUrl}; + + use std::collections::HashMap; + + use tempfile::{tempdir, TempDir}; + use tera::{to_value, Function}; + + use config::Config; + use utils::fs::create_file; + + fn create_temp_dir() -> TempDir { + let dir = tempdir().unwrap(); + create_file(&dir.path().join("app.css"), "// Hello world!").expect("Failed to create file"); + dir + } + + const CONFIG_DATA: &str = r#" +base_url = "https://remplace-par-ton-url.fr" +default_language = "fr" + +[translations] +title = "Un titre" + +[languages.en] +[languages.en.translations] +title = "A title" +"#; + + #[test] + fn can_add_cachebust_to_url() { + let dir = create_temp_dir(); + let static_fn = GetUrl::new(dir.path().to_path_buf(), Config::default(), HashMap::new()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("app.css").unwrap()); + args.insert("cachebust".to_string(), to_value(true).unwrap()); + assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css?h=572e691dc68c3fcd653ae463261bdb38f35dc6f01715d9ce68799319dd158840"); + } + + #[test] + fn can_add_trailing_slashes() { + let dir = create_temp_dir(); + let static_fn = GetUrl::new(dir.path().to_path_buf(), Config::default(), HashMap::new()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("app.css").unwrap()); + args.insert("trailing_slash".to_string(), to_value(true).unwrap()); + assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css/"); + } + + #[test] + fn can_add_slashes_and_cachebust() { + let dir = create_temp_dir(); + let static_fn = GetUrl::new(dir.path().to_path_buf(), Config::default(), HashMap::new()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("app.css").unwrap()); + args.insert("trailing_slash".to_string(), to_value(true).unwrap()); + args.insert("cachebust".to_string(), to_value(true).unwrap()); + assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css/?h=572e691dc68c3fcd653ae463261bdb38f35dc6f01715d9ce68799319dd158840"); + } + + #[test] + fn can_link_to_some_static_file() { + let dir = create_temp_dir(); + let static_fn = GetUrl::new(dir.path().to_path_buf(), Config::default(), HashMap::new()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("app.css").unwrap()); + assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css"); + } + + #[test] + fn error_when_language_not_available() { + let config = Config::parse(CONFIG_DATA).unwrap(); + let dir = create_temp_dir(); + let static_fn = GetUrl::new(dir.path().to_path_buf(), config, HashMap::new()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("@/a_section/a_page.md").unwrap()); + args.insert("lang".to_string(), to_value("it").unwrap()); + let err = static_fn.call(&args).unwrap_err(); + assert_eq!( + "`it` is not an authorized language (check config.languages).", + format!("{}", err) + ); + } + + #[test] + fn can_get_url_with_default_language() { + let mut permalinks = HashMap::new(); + permalinks.insert( + "a_section/a_page.md".to_string(), + "https://remplace-par-ton-url.fr/a_section/a_page/".to_string(), + ); + permalinks.insert( + "a_section/a_page.en.md".to_string(), + "https://remplace-par-ton-url.fr/en/a_section/a_page/".to_string(), + ); + let config = Config::parse(CONFIG_DATA).unwrap(); + let dir = create_temp_dir(); + let static_fn = GetUrl::new(dir.path().to_path_buf(), config, permalinks); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("@/a_section/a_page.md").unwrap()); + args.insert("lang".to_string(), to_value("fr").unwrap()); + assert_eq!( + static_fn.call(&args).unwrap(), + "https://remplace-par-ton-url.fr/a_section/a_page/" + ); + } + + #[test] + fn can_get_url_with_other_language() { + let config = Config::parse(CONFIG_DATA).unwrap(); + let mut permalinks = HashMap::new(); + permalinks.insert( + "a_section/a_page.md".to_string(), + "https://remplace-par-ton-url.fr/a_section/a_page/".to_string(), + ); + permalinks.insert( + "a_section/a_page.en.md".to_string(), + "https://remplace-par-ton-url.fr/en/a_section/a_page/".to_string(), + ); + let dir = create_temp_dir(); + let static_fn = GetUrl::new(dir.path().to_path_buf(), config, permalinks); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("@/a_section/a_page.md").unwrap()); + args.insert("lang".to_string(), to_value("en").unwrap()); + assert_eq!( + static_fn.call(&args).unwrap(), + "https://remplace-par-ton-url.fr/en/a_section/a_page/" + ); + } + + #[test] + fn can_get_feed_url_with_default_language() { + let config = Config::parse(CONFIG_DATA).unwrap(); + let dir = create_temp_dir(); + let static_fn = GetUrl::new(dir.path().to_path_buf(), config.clone(), HashMap::new()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value(config.feed_filename).unwrap()); + args.insert("lang".to_string(), to_value("fr").unwrap()); + assert_eq!(static_fn.call(&args).unwrap(), "https://remplace-par-ton-url.fr/atom.xml"); + } + + #[test] + fn can_get_feed_url_with_other_language() { + let config = Config::parse(CONFIG_DATA).unwrap(); + let dir = create_temp_dir(); + let static_fn = GetUrl::new(dir.path().to_path_buf(), config.clone(), HashMap::new()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value(config.feed_filename).unwrap()); + args.insert("lang".to_string(), to_value("en").unwrap()); + assert_eq!(static_fn.call(&args).unwrap(), "https://remplace-par-ton-url.fr/en/atom.xml"); + } + + #[test] + fn can_get_file_hash_sha256_no_base64() { + let dir = create_temp_dir(); + let static_fn = GetFileHash::new(dir.into_path()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("app.css").unwrap()); + args.insert("sha_type".to_string(), to_value(256).unwrap()); + args.insert("base64".to_string(), to_value(false).unwrap()); + assert_eq!( + static_fn.call(&args).unwrap(), + "572e691dc68c3fcd653ae463261bdb38f35dc6f01715d9ce68799319dd158840" + ); + } + + #[test] + fn can_get_file_hash_sha256_base64() { + let dir = create_temp_dir(); + let static_fn = GetFileHash::new(dir.into_path()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("app.css").unwrap()); + args.insert("sha_type".to_string(), to_value(256).unwrap()); + args.insert("base64".to_string(), to_value(true).unwrap()); + assert_eq!(static_fn.call(&args).unwrap(), "Vy5pHcaMP81lOuRjJhvbOPNdxvAXFdnOaHmTGd0ViEA="); + } + + #[test] + fn can_get_file_hash_sha384_no_base64() { + let dir = create_temp_dir(); + let static_fn = GetFileHash::new(dir.into_path()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("app.css").unwrap()); + args.insert("base64".to_string(), to_value(false).unwrap()); + assert_eq!( + static_fn.call(&args).unwrap(), + "141c09bd28899773b772bbe064d8b718fa1d6f2852b7eafd5ed6689d26b74883b79e2e814cd69d5b52ab476aa284c414" + ); + } + + #[test] + fn can_get_file_hash_sha384() { + let dir = create_temp_dir(); + let static_fn = GetFileHash::new(dir.into_path()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("app.css").unwrap()); + assert_eq!( + static_fn.call(&args).unwrap(), + "FBwJvSiJl3O3crvgZNi3GPodbyhSt+r9XtZonSa3SIO3ni6BTNadW1KrR2qihMQU" + ); + } + + #[test] + fn can_get_file_hash_sha512_no_base64() { + let dir = create_temp_dir(); + let static_fn = GetFileHash::new(dir.into_path()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("app.css").unwrap()); + args.insert("sha_type".to_string(), to_value(512).unwrap()); + args.insert("base64".to_string(), to_value(false).unwrap()); + assert_eq!( + static_fn.call(&args).unwrap(), + "379dfab35123b9159d9e4e92dc90e2be44cf3c2f7f09b2e2df80a1b219b461de3556c93e1a9ceb3008e999e2d6a54b4f1d65ee9be9be63fa45ec88931623372f" + ); + } + + #[test] + fn can_get_file_hash_sha512() { + let dir = create_temp_dir(); + let static_fn = GetFileHash::new(dir.into_path()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("app.css").unwrap()); + args.insert("sha_type".to_string(), to_value(512).unwrap()); + assert_eq!( + static_fn.call(&args).unwrap(), + "N536s1EjuRWdnk6S3JDivkTPPC9/CbLi34Chshm0Yd41Vsk+GpzrMAjpmeLWpUtPHWXum+m+Y/pF7IiTFiM3Lw==" + ); + } + + #[test] + fn error_when_file_not_found_for_hash() { + let dir = create_temp_dir(); + let static_fn = GetFileHash::new(dir.into_path()); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("doesnt-exist").unwrap()); + let err = format!("{}", static_fn.call(&args).unwrap_err()); + println!("{:?}", err); + + assert!(err.contains("Cannot find file")); + } +} diff --git a/components/templates/src/global_fns/helpers.rs b/components/templates/src/global_fns/helpers.rs new file mode 100644 index 00000000..4ea5c26f --- /dev/null +++ b/components/templates/src/global_fns/helpers.rs @@ -0,0 +1,36 @@ +use std::borrow::Cow; +use std::path::{Path, PathBuf}; + +/// This is used by a few Tera functions to search for files on the filesystem. +/// This does try to find the file in 3 different spots: +/// 1. base_path + path +/// 2. base_path + static + path +/// 3. base_path + content + path +pub fn search_for_file(base_path: &Path, path: &str) -> Option { + let search_paths = [base_path.join("static"), base_path.join("content")]; + let actual_path = if path.starts_with("@/") { + Cow::Owned(path.replace("@/", "content/")) + } else { + Cow::Borrowed(path) + }; + let mut file_path = base_path.join(&*actual_path); + let mut file_exists = file_path.exists(); + + if !file_exists { + // we need to search in both search folders now + for dir in &search_paths { + let p = dir.join(&*actual_path); + if p.exists() { + file_path = p; + file_exists = true; + break; + } + } + } + + if file_exists { + Some(file_path) + } else { + None + } +} diff --git a/components/templates/src/global_fns/images.rs b/components/templates/src/global_fns/images.rs index ee46a7c7..1058c568 100644 --- a/components/templates/src/global_fns/images.rs +++ b/components/templates/src/global_fns/images.rs @@ -3,12 +3,13 @@ use std::ffi::OsStr; use std::path::{Path, PathBuf}; use std::sync::{Arc, Mutex}; -use crate::global_fns::search_for_file; use image::GenericImageView; use serde_derive::{Deserialize, Serialize}; use svg_metadata as svg; use tera::{from_value, to_value, Error, Function as TeraFn, Result, Value}; +use crate::global_fns::helpers::search_for_file; + #[derive(Debug, Serialize, Deserialize)] struct ResizeImageResponse { /// The final URL for that asset @@ -69,7 +70,7 @@ impl TeraFn for ResizeImage { let file_path = match search_for_file(&self.base_path, &path) { Some(f) => f, None => { - return Err(format!("`resize_image`: Cannot find path: {}", path).into()); + return Err(format!("`resize_image`: Cannot find file: {}", path).into()); } }; diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 6d003fc0..55695fac 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -1,20 +1,19 @@ +use std::collections::hash_map::DefaultHasher; +use std::collections::HashMap; +use std::hash::{Hash, Hasher}; +use std::path::{Path, PathBuf}; +use std::str::FromStr; +use std::sync::{Arc, Mutex}; + +use csv::Reader; +use reqwest::header::{HeaderValue, CONTENT_TYPE}; +use reqwest::{blocking::Client, header}; +use tera::{from_value, to_value, Error, Function as TeraFn, Map, Result, Value}; +use url::Url; use utils::de::fix_toml_dates; use utils::fs::{get_file_time, is_path_in_directory, read_file}; -use reqwest::header::{HeaderValue, CONTENT_TYPE}; -use reqwest::{blocking::Client, header}; -use std::collections::hash_map::DefaultHasher; -use std::hash::{Hash, Hasher}; -use std::str::FromStr; -use url::Url; - -use std::path::PathBuf; -use std::sync::{Arc, Mutex}; - -use crate::global_fns::search_for_file; -use csv::Reader; -use std::collections::HashMap; -use tera::{from_value, to_value, Error, Function as TeraFn, Map, Result, Value}; +use crate::global_fns::helpers::search_for_file; static GET_DATA_ARGUMENT_ERROR_MESSAGE: &str = "`load_data`: requires EITHER a `path` or `url` argument"; @@ -73,7 +72,7 @@ impl OutputFormat { } } -#[derive(Debug, PartialEq, Eq)] +#[derive(Debug)] enum DataSource { Url(Url), Path(PathBuf), @@ -88,7 +87,7 @@ impl DataSource { fn from_args( path_arg: Option, url_arg: Option, - base_path: &PathBuf, + base_path: &Path, ) -> Result> { if path_arg.is_some() && url_arg.is_some() { return Err(GET_DATA_ARGUMENT_ERROR_MESSAGE.into()); @@ -104,7 +103,7 @@ impl DataSource { if let Some(url) = url_arg { return Url::parse(&url) .map(DataSource::Url) - .map(|x| Some(x)) + .map(Some) .map_err(|e| format!("Failed to parse {} as url: {}", url, e).into()); } @@ -140,7 +139,7 @@ impl Hash for DataSource { } } -fn read_local_data_file(base_path: &PathBuf, full_path: PathBuf) -> Result { +fn read_local_data_file(base_path: &Path, full_path: PathBuf) -> Result { if !is_path_in_directory(&base_path, &full_path) .map_err(|e| format!("Failed to read data file {}: {}", full_path.display(), e))? { @@ -274,8 +273,8 @@ impl TeraFn for LoadData { let mut resp = response_client .post(url.as_str()) .header(header::ACCEPT, file_format.as_accept_header()); - match post_content_type { - Some(content_type) => match HeaderValue::from_str(&content_type) { + if let Some(content_type) = post_content_type { + match HeaderValue::from_str(&content_type) { Ok(c) => { resp = resp.header(CONTENT_TYPE, c); } @@ -286,9 +285,8 @@ impl TeraFn for LoadData { ) .into()); } - }, - _ => {} - }; + } + } if let Some(body) = post_body_arg { resp = resp.body(body); } diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index e7514fd4..e817ba93 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -1,482 +1,15 @@ -use std::borrow::Cow; -use std::collections::HashMap; -use std::path::{Path, PathBuf}; -use std::{fs, io, result}; - -use base64::encode as encode_b64; -use sha2::{digest, Sha256, Sha384, Sha512}; -use tera::{from_value, to_value, Function as TeraFn, Result, Value}; - -use config::Config; -use utils::site::resolve_internal_link; - #[macro_use] mod macros; mod content; +mod files; +mod helpers; mod i18n; mod images; mod load_data; pub use self::content::{GetPage, GetSection, GetTaxonomy, GetTaxonomyUrl}; +pub use self::files::{GetFileHash, GetUrl}; pub use self::i18n::Trans; pub use self::images::{GetImageMetadata, ResizeImage}; pub use self::load_data::LoadData; - -/// This is used by a few Tera functions to search for files on the filesystem. -/// This does try to find the file in 3 different spots: -/// 1. base_path + path -/// 2. base_path + static + path -/// 3. base_path + content + path -pub fn search_for_file(base_path: &Path, path: &str) -> Option { - let search_paths = [base_path.join("static"), base_path.join("content")]; - let actual_path = if path.starts_with("@/") { - Cow::Owned(path.replace("@/", "content/")) - } else { - Cow::Borrowed(path) - }; - let mut file_path = base_path.join(&*actual_path); - let mut file_exists = file_path.exists(); - - if !file_exists { - // we need to search in both search folders now - for dir in &search_paths { - let p = dir.join(&*actual_path); - if p.exists() { - file_path = p; - file_exists = true; - break; - } - } - } - - if file_exists { - Some(file_path) - } else { - None - } -} - -#[derive(Debug)] -pub struct GetUrl { - config: Config, - permalinks: HashMap, - search_paths: Vec, -} -impl GetUrl { - pub fn new( - config: Config, - permalinks: HashMap, - search_paths: Vec, - ) -> Self { - Self { config, permalinks, search_paths } - } -} - -fn make_path_with_lang(path: String, lang: &str, config: &Config) -> Result { - if lang == config.default_language { - return Ok(path); - } - - if !config.other_languages().contains_key(lang) { - return Err( - format!("`{}` is not an authorized language (check config.languages).", lang).into() - ); - } - - let mut splitted_path: Vec = path.split('.').map(String::from).collect(); - let ilast = splitted_path.len() - 1; - splitted_path[ilast] = format!("{}.{}", lang, splitted_path[ilast]); - Ok(splitted_path.join(".")) -} - -fn open_file(search_paths: &[PathBuf], url: &str) -> result::Result { - let cleaned_url = url.trim_start_matches("@/").trim_start_matches('/'); - for base_path in search_paths { - match fs::File::open(base_path.join(cleaned_url)) { - Ok(f) => return Ok(f), - Err(_) => continue, - }; - } - Err(io::Error::from(io::ErrorKind::NotFound)) -} - -fn compute_file_hash( - mut file: fs::File, - base64: bool, -) -> result::Result -where - digest::Output: core::fmt::LowerHex, - D: std::io::Write, -{ - let mut hasher = D::new(); - io::copy(&mut file, &mut hasher)?; - if base64 { - Ok(encode_b64(hasher.finalize())) - } else { - Ok(format!("{:x}", hasher.finalize())) - } -} - -fn file_not_found_err(search_paths: &[PathBuf], url: &str) -> Result { - Err(format!( - "file `{}` not found; searched in{}", - url, - search_paths.iter().fold(String::new(), |acc, arg| acc + " " + arg.to_str().unwrap()) - ) - .into()) -} - -impl TeraFn for GetUrl { - fn call(&self, args: &HashMap) -> Result { - let cachebust = - args.get("cachebust").map_or(false, |c| from_value::(c.clone()).unwrap_or(false)); - - let trailing_slash = args - .get("trailing_slash") - .map_or(false, |c| from_value::(c.clone()).unwrap_or(false)); - - let path = required_arg!( - String, - args.get("path"), - "`get_url` requires a `path` argument with a string value" - ); - - let lang = optional_arg!(String, args.get("lang"), "`get_url`: `lang` must be a string.") - .unwrap_or_else(|| self.config.default_language.clone()); - - if path.starts_with("@/") { - let path_with_lang = match make_path_with_lang(path, &lang, &self.config) { - Ok(x) => x, - Err(e) => return Err(e), - }; - - match resolve_internal_link(&path_with_lang, &self.permalinks) { - Ok(resolved) => Ok(to_value(resolved.permalink).unwrap()), - Err(_) => { - Err(format!("Could not resolve URL for link `{}` not found.", path_with_lang) - .into()) - } - } - } else { - // anything else - let mut segments = vec![]; - - if lang != self.config.default_language { - segments.push(lang); - }; - - segments.push(path); - - let path_with_lang = segments.join("/"); - - let mut permalink = self.config.make_permalink(&path_with_lang); - if !trailing_slash && permalink.ends_with('/') { - permalink.pop(); // Removes the slash - } - - if cachebust { - match open_file(&self.search_paths, &path_with_lang) - .and_then(|f| compute_file_hash::(f, false)) - { - Ok(hash) => { - permalink = format!("{}?h={}", permalink, hash); - } - Err(_) => return file_not_found_err(&self.search_paths, &path_with_lang), - }; - } - - Ok(to_value(permalink).unwrap()) - } - } -} - -#[derive(Debug)] -pub struct GetFileHash { - search_paths: Vec, -} -impl GetFileHash { - pub fn new(search_paths: Vec) -> Self { - Self { search_paths } - } -} - -const DEFAULT_SHA_TYPE: u16 = 384; -const DEFAULT_BASE64: bool = false; - -impl TeraFn for GetFileHash { - fn call(&self, args: &HashMap) -> Result { - let path = required_arg!( - String, - args.get("path"), - "`get_file_hash` requires a `path` argument with a string value" - ); - let sha_type = optional_arg!( - u16, - args.get("sha_type"), - "`get_file_hash`: `sha_type` must be 256, 384 or 512" - ) - .unwrap_or(DEFAULT_SHA_TYPE); - let base64 = optional_arg!( - bool, - args.get("base64"), - "`get_file_hash`: `base64` must be true or false" - ) - .unwrap_or(DEFAULT_BASE64); - - let f = match open_file(&self.search_paths, &path) { - Ok(f) => f, - Err(e) => { - return Err(format!( - "File {} could not be open: {} (searched in {:?})", - path, e, self.search_paths - ) - .into()); - } - }; - - let hash = match sha_type { - 256 => compute_file_hash::(f, base64), - 384 => compute_file_hash::(f, base64), - 512 => compute_file_hash::(f, base64), - _ => return Err("`get_file_hash`: Invalid sha value".into()), - }; - - match hash { - Ok(digest) => Ok(to_value(digest).unwrap()), - Err(_) => file_not_found_err(&self.search_paths, &path), - } - } -} - -#[cfg(test)] -mod tests { - use super::{GetFileHash, GetUrl}; - - use std::collections::HashMap; - - use tempfile::{tempdir, TempDir}; - use tera::{to_value, Function}; - - use config::Config; - use utils::fs::create_file; - - fn create_temp_dir() -> TempDir { - let dir = tempdir().unwrap(); - create_file(&dir.path().join("app.css"), "// Hello world!").expect("Failed to create file"); - dir - } - - const CONFIG_DATA: &str = r#" -base_url = "https://remplace-par-ton-url.fr" -default_language = "fr" - -[translations] -title = "Un titre" - -[languages.en] -[languages.en.translations] -title = "A title" -"#; - - #[test] - fn can_add_cachebust_to_url() { - let config = Config::default(); - let static_fn = GetUrl::new(config, HashMap::new(), vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("app.css").unwrap()); - args.insert("cachebust".to_string(), to_value(true).unwrap()); - assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css?h=572e691dc68c3fcd653ae463261bdb38f35dc6f01715d9ce68799319dd158840"); - } - - #[test] - fn can_add_trailing_slashes() { - let config = Config::default(); - let static_fn = GetUrl::new(config, HashMap::new(), vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("app.css").unwrap()); - args.insert("trailing_slash".to_string(), to_value(true).unwrap()); - assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css/"); - } - - #[test] - fn can_add_slashes_and_cachebust() { - let config = Config::default(); - let static_fn = GetUrl::new(config, HashMap::new(), vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("app.css").unwrap()); - args.insert("trailing_slash".to_string(), to_value(true).unwrap()); - args.insert("cachebust".to_string(), to_value(true).unwrap()); - assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css/?h=572e691dc68c3fcd653ae463261bdb38f35dc6f01715d9ce68799319dd158840"); - } - - #[test] - fn can_link_to_some_static_file() { - let config = Config::default(); - let static_fn = GetUrl::new(config, HashMap::new(), vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("app.css").unwrap()); - assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css"); - } - - #[test] - fn error_when_language_not_available() { - let config = Config::parse(CONFIG_DATA).unwrap(); - let static_fn = GetUrl::new(config, HashMap::new(), vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("@/a_section/a_page.md").unwrap()); - args.insert("lang".to_string(), to_value("it").unwrap()); - let err = static_fn.call(&args).unwrap_err(); - assert_eq!( - "`it` is not an authorized language (check config.languages).", - format!("{}", err) - ); - } - - #[test] - fn can_get_url_with_default_language() { - let config = Config::parse(CONFIG_DATA).unwrap(); - let mut permalinks = HashMap::new(); - permalinks.insert( - "a_section/a_page.md".to_string(), - "https://remplace-par-ton-url.fr/a_section/a_page/".to_string(), - ); - permalinks.insert( - "a_section/a_page.en.md".to_string(), - "https://remplace-par-ton-url.fr/en/a_section/a_page/".to_string(), - ); - let static_fn = GetUrl::new(config, permalinks, vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("@/a_section/a_page.md").unwrap()); - args.insert("lang".to_string(), to_value("fr").unwrap()); - assert_eq!( - static_fn.call(&args).unwrap(), - "https://remplace-par-ton-url.fr/a_section/a_page/" - ); - } - - #[test] - fn can_get_url_with_other_language() { - let config = Config::parse(CONFIG_DATA).unwrap(); - let mut permalinks = HashMap::new(); - permalinks.insert( - "a_section/a_page.md".to_string(), - "https://remplace-par-ton-url.fr/a_section/a_page/".to_string(), - ); - permalinks.insert( - "a_section/a_page.en.md".to_string(), - "https://remplace-par-ton-url.fr/en/a_section/a_page/".to_string(), - ); - let static_fn = GetUrl::new(config, permalinks, vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("@/a_section/a_page.md").unwrap()); - args.insert("lang".to_string(), to_value("en").unwrap()); - assert_eq!( - static_fn.call(&args).unwrap(), - "https://remplace-par-ton-url.fr/en/a_section/a_page/" - ); - } - - #[test] - fn can_get_feed_url_with_default_language() { - let config = Config::parse(CONFIG_DATA).unwrap(); - let static_fn = - GetUrl::new(config.clone(), HashMap::new(), vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value(config.feed_filename).unwrap()); - args.insert("lang".to_string(), to_value("fr").unwrap()); - assert_eq!(static_fn.call(&args).unwrap(), "https://remplace-par-ton-url.fr/atom.xml"); - } - - #[test] - fn can_get_feed_url_with_other_language() { - let config = Config::parse(CONFIG_DATA).unwrap(); - let static_fn = - GetUrl::new(config.clone(), HashMap::new(), vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value(config.feed_filename).unwrap()); - args.insert("lang".to_string(), to_value("en").unwrap()); - assert_eq!(static_fn.call(&args).unwrap(), "https://remplace-par-ton-url.fr/en/atom.xml"); - } - - #[test] - fn can_get_file_hash_sha256() { - let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("app.css").unwrap()); - args.insert("sha_type".to_string(), to_value(256).unwrap()); - assert_eq!( - static_fn.call(&args).unwrap(), - "572e691dc68c3fcd653ae463261bdb38f35dc6f01715d9ce68799319dd158840" - ); - } - - #[test] - fn can_get_file_hash_sha256_base64() { - let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("app.css").unwrap()); - args.insert("sha_type".to_string(), to_value(256).unwrap()); - args.insert("base64".to_string(), to_value(true).unwrap()); - assert_eq!(static_fn.call(&args).unwrap(), "Vy5pHcaMP81lOuRjJhvbOPNdxvAXFdnOaHmTGd0ViEA="); - } - - #[test] - fn can_get_file_hash_sha384() { - let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("app.css").unwrap()); - assert_eq!( - static_fn.call(&args).unwrap(), - "141c09bd28899773b772bbe064d8b718fa1d6f2852b7eafd5ed6689d26b74883b79e2e814cd69d5b52ab476aa284c414" - ); - } - - #[test] - fn can_get_file_hash_sha384_base64() { - let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("app.css").unwrap()); - args.insert("base64".to_string(), to_value(true).unwrap()); - assert_eq!( - static_fn.call(&args).unwrap(), - "FBwJvSiJl3O3crvgZNi3GPodbyhSt+r9XtZonSa3SIO3ni6BTNadW1KrR2qihMQU" - ); - } - - #[test] - fn can_get_file_hash_sha512() { - let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("app.css").unwrap()); - args.insert("sha_type".to_string(), to_value(512).unwrap()); - assert_eq!( - static_fn.call(&args).unwrap(), - "379dfab35123b9159d9e4e92dc90e2be44cf3c2f7f09b2e2df80a1b219b461de3556c93e1a9ceb3008e999e2d6a54b4f1d65ee9be9be63fa45ec88931623372f" - ); - } - - #[test] - fn can_get_file_hash_sha512_base64() { - let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("app.css").unwrap()); - args.insert("sha_type".to_string(), to_value(512).unwrap()); - args.insert("base64".to_string(), to_value(true).unwrap()); - assert_eq!( - static_fn.call(&args).unwrap(), - "N536s1EjuRWdnk6S3JDivkTPPC9/CbLi34Chshm0Yd41Vsk+GpzrMAjpmeLWpUtPHWXum+m+Y/pF7IiTFiM3Lw==" - ); - } - - #[test] - fn error_when_file_not_found_for_hash() { - let static_fn = GetFileHash::new(vec![create_temp_dir().into_path()]); - let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("doesnt-exist").unwrap()); - let err = format!("{}", static_fn.call(&args).unwrap_err()); - println!("{:?}", err); - - assert!(err.contains("File doesnt-exist could not be open")); - } -} diff --git a/test_site/themes/sample/templates/index.html b/test_site/themes/sample/templates/index.html index e0a8d28d..bd1dabfa 100644 --- a/test_site/themes/sample/templates/index.html +++ b/test_site/themes/sample/templates/index.html @@ -7,7 +7,7 @@ - + {{ config.title }} From a736d33afb119df8caccb0959c4a73a87ed6ad9e Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sun, 16 May 2021 19:59:56 +0200 Subject: [PATCH 085/113] Fix tests on Windows --- components/templates/src/global_fns/files.rs | 5 ++--- components/templates/src/global_fns/images.rs | 11 +++++++---- components/templates/src/global_fns/load_data.rs | 7 ++++--- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/components/templates/src/global_fns/files.rs b/components/templates/src/global_fns/files.rs index 914883e4..3c33d027 100644 --- a/components/templates/src/global_fns/files.rs +++ b/components/templates/src/global_fns/files.rs @@ -2,13 +2,12 @@ use std::collections::HashMap; use std::path::PathBuf; use std::{fs, io, result}; +use crate::global_fns::helpers::search_for_file; use base64::encode as encode_b64; +use config::Config; use sha2::{digest, Sha256, Sha384, Sha512}; use tera::{from_value, to_value, Function as TeraFn, Result, Value}; -use config::Config; use utils::site::resolve_internal_link; -use crate::global_fns::helpers::search_for_file; - fn compute_file_hash( mut file: fs::File, diff --git a/components/templates/src/global_fns/images.rs b/components/templates/src/global_fns/images.rs index 1058c568..5773d755 100644 --- a/components/templates/src/global_fns/images.rs +++ b/components/templates/src/global_fns/images.rs @@ -145,6 +145,7 @@ mod tests { use std::fs::{copy, create_dir_all}; use config::Config; + use std::path::Path; use std::sync::{Arc, Mutex}; use tempfile::{tempdir, TempDir}; use tera::{to_value, Function}; @@ -177,9 +178,11 @@ mod tests { // 1. resizing an image in static args.insert("path".to_string(), to_value("static/gutenberg.jpg").unwrap()); let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); + let static_path = Path::new("static").join("processed_images"); + assert_eq!( data["static_path"], - to_value("static/processed_images/e49f5bd23ec5007c00.jpg").unwrap() + to_value(&format!("{}", static_path.join("e49f5bd23ec5007c00.jpg").display())).unwrap() ); assert_eq!( data["url"], @@ -191,7 +194,7 @@ mod tests { let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); assert_eq!( data["static_path"], - to_value("static/processed_images/32454a1e0243976c00.jpg").unwrap() + to_value(&format!("{}", static_path.join("32454a1e0243976c00.jpg").display())).unwrap() ); assert_eq!( data["url"], @@ -203,7 +206,7 @@ mod tests { let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); assert_eq!( data["static_path"], - to_value("static/processed_images/074e171855ee541800.jpg").unwrap() + to_value(&format!("{}", static_path.join("074e171855ee541800.jpg").display())).unwrap() ); assert_eq!( data["url"], @@ -215,7 +218,7 @@ mod tests { let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); assert_eq!( data["static_path"], - to_value("static/processed_images/c8aaba7b0593a60b00.jpg").unwrap() + to_value(&format!("{}", static_path.join("c8aaba7b0593a60b00.jpg").display())).unwrap() ); assert_eq!( data["url"], diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 55695fac..7992b695 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -610,21 +610,22 @@ mod tests { let static_fn = LoadData::new(dir.path().to_path_buf()); let mut args = HashMap::new(); + let val = if cfg!(windows) { ".hello {}\r\n" } else { ".hello {}\n" }; // 1. relative path in `static` args.insert("path".to_string(), to_value("static/test.css").unwrap()); let data = static_fn.call(&args).unwrap().as_str().unwrap().to_string(); - assert_eq!(data, ".hello {}\n"); + assert_eq!(data, val); // 2. relative path in `content` args.insert("path".to_string(), to_value("content/test.css").unwrap()); let data = static_fn.call(&args).unwrap().as_str().unwrap().to_string(); - assert_eq!(data, ".hello {}\n"); + assert_eq!(data, val); // 3. path starting with @/ args.insert("path".to_string(), to_value("@/test.css").unwrap()); let data = static_fn.call(&args).unwrap().as_str().unwrap().to_string(); - assert_eq!(data, ".hello {}\n"); + assert_eq!(data, val); // 4. absolute path does not work args.insert("path".to_string(), to_value("/test.css").unwrap()); From ae916eb6c5347ed3e202a3180b54d2fe43e75a46 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 17 May 2021 20:26:50 +0200 Subject: [PATCH 086/113] Some more tweaks --- CHANGELOG.md | 4 +++- components/templates/src/global_fns/content.rs | 4 ++++ components/templates/src/global_fns/files.rs | 4 ++++ components/templates/src/global_fns/helpers.rs | 1 + components/templates/src/global_fns/images.rs | 10 ++++++++++ 5 files changed, 22 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 02a0f0e3..80ec6cce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ ### Breaking - Newlines are now required after the closing `+++` of front-matter -- `resize_image` now returns a map: `{url, static_path}` instead of just the URL so you can follow up with other functions +- `resize_image` now returns an object: `{url, static_path}` instead of just the URL so you can follow up with other functions on the new file if needed - `get_file_hash` now has the `base64` option set to `true` by default (from `false`) since it's mainly used for integrity hashes which are base64 - `get_url` does not automatically strip leading `/` from paths anymore - i18n rework: languages now have their sections in `config.toml` to set up all their options @@ -30,6 +30,8 @@ - Allow using POST for `load_data`, along with a body to POST and allow it to fail - Add Zig and Protobuf syntax highlighting - Footnotes links are now stripped from summaries - they were not linking to anything. +- `get_url` and `get_taxonomy_url` are now marked as safe, no need to call `| safe` on their output +- Add `allow_missing` optional argument to `get_image_metadata` to not error if the file is not found ## 0.13.0 (2021-01-09) diff --git a/components/templates/src/global_fns/content.rs b/components/templates/src/global_fns/content.rs index 91f2387f..688465a0 100644 --- a/components/templates/src/global_fns/content.rs +++ b/components/templates/src/global_fns/content.rs @@ -58,6 +58,10 @@ impl TeraFn for GetTaxonomyUrl { Err(format!("`get_taxonomy_url`: couldn't find `{}` in `{}` taxonomy", name, kind).into()) } + + fn is_safe(&self) -> bool { + true + } } #[derive(Debug)] diff --git a/components/templates/src/global_fns/files.rs b/components/templates/src/global_fns/files.rs index 3c33d027..34ece031 100644 --- a/components/templates/src/global_fns/files.rs +++ b/components/templates/src/global_fns/files.rs @@ -130,6 +130,10 @@ impl TeraFn for GetUrl { Ok(to_value(permalink).unwrap()) } } + + fn is_safe(&self) -> bool { + true + } } #[derive(Debug)] diff --git a/components/templates/src/global_fns/helpers.rs b/components/templates/src/global_fns/helpers.rs index 4ea5c26f..836c0e67 100644 --- a/components/templates/src/global_fns/helpers.rs +++ b/components/templates/src/global_fns/helpers.rs @@ -6,6 +6,7 @@ use std::path::{Path, PathBuf}; /// 1. base_path + path /// 2. base_path + static + path /// 3. base_path + content + path +/// A path starting with @/ will replace it with `content/` pub fn search_for_file(base_path: &Path, path: &str) -> Option { let search_paths = [base_path.join("static"), base_path.join("content")]; let actual_path = if path.starts_with("@/") { diff --git a/components/templates/src/global_fns/images.rs b/components/templates/src/global_fns/images.rs index 5773d755..c851cec4 100644 --- a/components/templates/src/global_fns/images.rs +++ b/components/templates/src/global_fns/images.rs @@ -123,9 +123,19 @@ impl TeraFn for GetImageMetadata { args.get("path"), "`get_image_metadata` requires a `path` argument with a string value" ); + let allow_missing = optional_arg!( + bool, + args.get("allow_missing"), + "`get_image_metadata`: `allow_missing` must be a boolean (true or false)" + ) + .unwrap_or(false); let src_path = match search_for_file(&self.base_path, &path) { Some(f) => f, None => { + if allow_missing { + println!("Image at path {} could not be found or loaded", path); + return Ok(Value::Null); + } return Err(format!("`resize_image`: Cannot find path: {}", path).into()); } }; From 009d10521026c30f9f7adb048a9e63ab26b4fca3 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 3 Jun 2021 21:00:44 +0200 Subject: [PATCH 087/113] Automatically trim `/` on Tera fn calls dealing with files --- .../templates/src/global_fns/helpers.rs | 5 +-- components/templates/src/global_fns/images.rs | 32 ++++++++++++------- .../templates/src/global_fns/load_data.rs | 11 ++++--- 3 files changed, 29 insertions(+), 19 deletions(-) diff --git a/components/templates/src/global_fns/helpers.rs b/components/templates/src/global_fns/helpers.rs index 836c0e67..2e8cb459 100644 --- a/components/templates/src/global_fns/helpers.rs +++ b/components/templates/src/global_fns/helpers.rs @@ -6,13 +6,14 @@ use std::path::{Path, PathBuf}; /// 1. base_path + path /// 2. base_path + static + path /// 3. base_path + content + path -/// A path starting with @/ will replace it with `content/` +/// A path starting with @/ will replace it with `content/` and a path starting with `/` will have +/// it removed. pub fn search_for_file(base_path: &Path, path: &str) -> Option { let search_paths = [base_path.join("static"), base_path.join("content")]; let actual_path = if path.starts_with("@/") { Cow::Owned(path.replace("@/", "content/")) } else { - Cow::Borrowed(path) + Cow::Borrowed(path.trim_start_matches('/')) }; let mut file_path = base_path.join(&*actual_path); let mut file_exists = file_path.exists(); diff --git a/components/templates/src/global_fns/images.rs b/components/templates/src/global_fns/images.rs index c851cec4..254db728 100644 --- a/components/templates/src/global_fns/images.rs +++ b/components/templates/src/global_fns/images.rs @@ -211,19 +211,29 @@ mod tests { to_value("http://a-website.com/processed_images/32454a1e0243976c00.jpg").unwrap() ); - // 3. resizing an image in content starting with `@/` - args.insert("path".to_string(), to_value("@/gutenberg.jpg").unwrap()); - let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); + // 3. resizing with an absolute path is the same as the above + args.insert("path".to_string(), to_value("/content/gutenberg.jpg").unwrap()); assert_eq!( data["static_path"], - to_value(&format!("{}", static_path.join("074e171855ee541800.jpg").display())).unwrap() + to_value(&format!("{}", static_path.join("32454a1e0243976c00.jpg").display())).unwrap() ); assert_eq!( data["url"], - to_value("http://a-website.com/processed_images/074e171855ee541800.jpg").unwrap() + to_value("http://a-website.com/processed_images/32454a1e0243976c00.jpg").unwrap() ); - // 4. resizing an image with a relative path not starting with static or content + // 4. resizing an image in content starting with `@/` is the same as 2 and 3 + args.insert("path".to_string(), to_value("@/gutenberg.jpg").unwrap()); + assert_eq!( + data["static_path"], + to_value(&format!("{}", static_path.join("32454a1e0243976c00.jpg").display())).unwrap() + ); + assert_eq!( + data["url"], + to_value("http://a-website.com/processed_images/32454a1e0243976c00.jpg").unwrap() + ); + + // 5. resizing an image with a relative path not starting with static or content args.insert("path".to_string(), to_value("gallery/asset.jpg").unwrap()); let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); assert_eq!( @@ -234,10 +244,6 @@ mod tests { data["url"], to_value("http://a-website.com/processed_images/c8aaba7b0593a60b00.jpg").unwrap() ); - - // 5. resizing with an absolute path - args.insert("path".to_string(), to_value("/content/gutenberg.jpg").unwrap()); - assert!(static_fn.call(&args).is_err()); } // TODO: consider https://github.com/getzola/zola/issues/1161 @@ -256,10 +262,12 @@ mod tests { assert_eq!(data["height"], to_value(380).unwrap()); assert_eq!(data["width"], to_value(300).unwrap()); - // 2. a call to something in `static` with an absolute path is not handled currently + // 2. a call to something in `static` with an absolute path is handled currently the same as the above let mut args = HashMap::new(); args.insert("path".to_string(), to_value("/static/gutenberg.jpg").unwrap()); - assert!(static_fn.call(&args).is_err()); + let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); + assert_eq!(data["height"], to_value(380).unwrap()); + assert_eq!(data["width"], to_value(300).unwrap()); // 3. a call to something in `content` with a relative path let mut args = HashMap::new(); diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 7992b695..d24e9e86 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -622,14 +622,15 @@ mod tests { let data = static_fn.call(&args).unwrap().as_str().unwrap().to_string(); assert_eq!(data, val); - // 3. path starting with @/ - args.insert("path".to_string(), to_value("@/test.css").unwrap()); + // 3. absolute path is the same + args.insert("path".to_string(), to_value("/content/test.css").unwrap()); let data = static_fn.call(&args).unwrap().as_str().unwrap().to_string(); assert_eq!(data, val); - // 4. absolute path does not work - args.insert("path".to_string(), to_value("/test.css").unwrap()); - assert!(static_fn.call(&args).is_err()); + // 4. path starting with @/ + args.insert("path".to_string(), to_value("@/test.css").unwrap()); + let data = static_fn.call(&args).unwrap().as_str().unwrap().to_string(); + assert_eq!(data, val); } #[test] From 9145af6b3e98f9e2f01200ce73f17eccedbec922 Mon Sep 17 00:00:00 2001 From: Vojtech Kral Date: Tue, 8 Jun 2021 09:38:29 +0200 Subject: [PATCH 088/113] imageproc things for paths refactor (#1484) * Move image loading code used by get_image_metadata from templates to imageproc * resize_image: Compute image resize op beforehand and return metadata to caller * get_image_metdata: Use a serializable response struct * imageproc: Add integration tests * imageproc: Assume webp is lossy * get_image_metadata: Use webp crate for decoding WebP, image is still not very good at it * imageproc: Test read_image_dimensions in integration tests * imageproc: Rename read_image_dimensions() as read_image_metadata() * imageproc: Fix a regression in hash computation * imageproc: Don't hardcode hashes in integration tests, pattern match them instead * imageproc: Style fixes * imageproc: Fix integration tests on Windows (hopefully) --- Cargo.lock | 6 +- components/imageproc/Cargo.toml | 7 + components/imageproc/src/lib.rs | 390 ++++++++++++------ components/imageproc/tests/resize_image.rs | 161 ++++++++ components/imageproc/tests/test_imgs/jpg.jpg | Bin 0 -> 47783 bytes components/imageproc/tests/test_imgs/png.png | Bin 0 -> 123368 bytes components/imageproc/tests/test_imgs/svg.svg | 56 +++ .../imageproc/tests/test_imgs/webp.webp | Bin 0 -> 9828 bytes components/templates/Cargo.toml | 2 - components/templates/src/global_fns/images.rs | 77 +--- 10 files changed, 520 insertions(+), 179 deletions(-) create mode 100644 components/imageproc/tests/resize_image.rs create mode 100644 components/imageproc/tests/test_imgs/jpg.jpg create mode 100644 components/imageproc/tests/test_imgs/png.png create mode 100644 components/imageproc/tests/test_imgs/svg.svg create mode 100644 components/imageproc/tests/test_imgs/webp.webp diff --git a/Cargo.lock b/Cargo.lock index 6e9b889f..e3fa6bd4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1028,6 +1028,10 @@ dependencies = [ "lazy_static", "rayon", "regex", + "serde", + "serde_json", + "site", + "svg_metadata", "tera", "utils", "webp", @@ -2585,7 +2589,6 @@ dependencies = [ "config", "csv", "errors", - "image", "imageproc", "lazy_static", "library", @@ -2597,7 +2600,6 @@ dependencies = [ "serde_derive", "serde_json", "sha2", - "svg_metadata", "tempfile", "tera", "toml", diff --git a/components/imageproc/Cargo.toml b/components/imageproc/Cargo.toml index 70a9af1a..8b11f1e0 100644 --- a/components/imageproc/Cargo.toml +++ b/components/imageproc/Cargo.toml @@ -11,7 +11,14 @@ tera = "1" image = "0.23" rayon = "1" webp = "0.1.1" +serde = { version = "1", features = ["derive"] } +svg_metadata = "0.4.1" errors = { path = "../errors" } utils = { path = "../utils" } config = { path = "../config" } + +[dev-dependencies] +# TODO: prune +serde_json = "1" +site = { path = "../site" } diff --git a/components/imageproc/src/lib.rs b/components/imageproc/src/lib.rs index 4e04f033..4bb0dded 100644 --- a/components/imageproc/src/lib.rs +++ b/components/imageproc/src/lib.rs @@ -1,15 +1,21 @@ use std::collections::hash_map::Entry as HEntry; use std::collections::HashMap; +use std::error::Error as StdError; +use std::ffi::OsStr; use std::fs::{self, File}; use std::hash::{Hash, Hasher}; use std::path::{Path, PathBuf}; use std::{collections::hash_map::DefaultHasher, io::Write}; +use image::error::ImageResult; +use image::io::Reader as ImgReader; use image::{imageops::FilterType, EncodableLayout}; -use image::{GenericImageView, ImageOutputFormat}; +use image::{ImageFormat, ImageOutputFormat}; use lazy_static::lazy_static; use rayon::prelude::*; use regex::Regex; +use serde::{Deserialize, Serialize}; +use svg_metadata::Metadata as SvgMetadata; use config::Config; use errors::{Error, Result}; @@ -23,9 +29,34 @@ lazy_static! { Regex::new(r#"([0-9a-f]{16})([0-9a-f]{2})[.](jpg|png|webp)"#).unwrap(); } -/// Describes the precise kind of a resize operation +/// Size and format read cheaply with `image`'s `Reader`. +#[derive(Debug)] +struct ImageMeta { + size: (u32, u32), + format: Option, +} + +impl ImageMeta { + fn read(path: &Path) -> ImageResult { + let reader = ImgReader::open(path).and_then(ImgReader::with_guessed_format)?; + let format = reader.format(); + let size = reader.into_dimensions()?; + + Ok(Self { size, format }) + } + + fn is_lossy(&self) -> bool { + use ImageFormat::*; + + // We assume lossy by default / if unknown format + let format = self.format.unwrap_or(Jpeg); + !matches!(format, Png | Pnm | Tiff | Tga | Bmp | Ico | Hdr | Farbfeld) + } +} + +/// De-serialized & sanitized arguments of `resize_image` #[derive(Debug, Clone, Copy, PartialEq, Eq)] -pub enum ResizeOp { +pub enum ResizeArgs { /// A simple scale operation that doesn't take aspect ratio into account Scale(u32, u32), /// Scales the image to a specified width with height computed such @@ -45,9 +76,9 @@ pub enum ResizeOp { Fill(u32, u32), } -impl ResizeOp { - pub fn from_args(op: &str, width: Option, height: Option) -> Result { - use ResizeOp::*; +impl ResizeArgs { + pub fn from_args(op: &str, width: Option, height: Option) -> Result { + use ResizeArgs::*; // Validate args: match op { @@ -80,58 +111,87 @@ impl ResizeOp { _ => unreachable!(), }) } +} - pub fn width(self) -> Option { - use ResizeOp::*; +/// Contains image crop/resize instructions for use by `Processor` +/// +/// The `Processor` applies `crop` first, if any, and then `resize`, if any. +#[derive(Clone, PartialEq, Eq, Hash, Default, Debug)] +struct ResizeOp { + crop: Option<(u32, u32, u32, u32)>, // x, y, w, h + resize: Option<(u32, u32)>, // w, h +} - match self { - Scale(w, _) => Some(w), - FitWidth(w) => Some(w), - FitHeight(_) => None, - Fit(w, _) => Some(w), - Fill(w, _) => Some(w), +impl ResizeOp { + fn new(args: ResizeArgs, (orig_w, orig_h): (u32, u32)) -> Self { + use ResizeArgs::*; + + let res = ResizeOp::default(); + + match args { + Scale(w, h) => res.resize((w, h)), + FitWidth(w) => { + let h = (orig_h as u64 * w as u64) / orig_w as u64; + res.resize((w, h as u32)) + } + FitHeight(h) => { + let w = (orig_w as u64 * h as u64) / orig_h as u64; + res.resize((w as u32, h)) + } + Fit(w, h) => { + let orig_w_h = orig_w as u64 * h as u64; + let orig_h_w = orig_h as u64 * w as u64; + + if orig_w_h > orig_h_w { + Self::new(FitWidth(w), (orig_w, orig_h)) + } else { + Self::new(FitHeight(h), (orig_w, orig_h)) + } + } + Fill(w, h) => { + const RATIO_EPSILLION: f32 = 0.1; + + let factor_w = orig_w as f32 / w as f32; + let factor_h = orig_h as f32 / h as f32; + + if (factor_w - factor_h).abs() <= RATIO_EPSILLION { + // If the horizontal and vertical factor is very similar, + // that means the aspect is similar enough that there's not much point + // in cropping, so just perform a simple scale in this case. + res.resize((w, h)) + } else { + // We perform the fill such that a crop is performed first + // and then resize_exact can be used, which should be cheaper than + // resizing and then cropping (smaller number of pixels to resize). + let (crop_w, crop_h) = if factor_w < factor_h { + (orig_w, (factor_w * h as f32).round() as u32) + } else { + ((factor_h * w as f32).round() as u32, orig_h) + }; + + let (offset_w, offset_h) = if factor_w < factor_h { + (0, (orig_h - crop_h) / 2) + } else { + ((orig_w - crop_w) / 2, 0) + }; + + res.crop((offset_w, offset_h, crop_w, crop_h)).resize((w, h)) + } + } } } - pub fn height(self) -> Option { - use ResizeOp::*; + fn crop(mut self, crop: (u32, u32, u32, u32)) -> Self { + self.crop = Some(crop); + self + } - match self { - Scale(_, h) => Some(h), - FitWidth(_) => None, - FitHeight(h) => Some(h), - Fit(_, h) => Some(h), - Fill(_, h) => Some(h), - } + fn resize(mut self, size: (u32, u32)) -> Self { + self.resize = Some(size); + self } } -impl From for u8 { - fn from(op: ResizeOp) -> u8 { - use ResizeOp::*; - - match op { - Scale(_, _) => 1, - FitWidth(_) => 2, - FitHeight(_) => 3, - Fit(_, _) => 4, - Fill(_, _) => 5, - } - } -} - -#[allow(clippy::derive_hash_xor_eq)] -impl Hash for ResizeOp { - fn hash(&self, hasher: &mut H) { - hasher.write_u8(u8::from(*self)); - if let Some(w) = self.width() { - hasher.write_u32(w); - } - if let Some(h) = self.height() { - hasher.write_u32(h); - } - } -} /// Thumbnail image format #[derive(Debug, Clone, Copy, PartialEq, Eq)] pub enum Format { @@ -144,21 +204,23 @@ pub enum Format { } impl Format { - pub fn from_args(source: &str, format: &str, quality: Option) -> Result { + fn from_args(meta: &ImageMeta, format: &str, quality: Option) -> Result { use Format::*; if let Some(quality) = quality { assert!(quality > 0 && quality <= 100, "Quality must be within the range [1; 100]"); } let jpg_quality = quality.unwrap_or(DEFAULT_Q_JPG); match format { - "auto" => match Self::is_lossy(source) { - Some(true) => Ok(Jpeg(jpg_quality)), - Some(false) => Ok(Png), - None => Err(format!("Unsupported image file: {}", source).into()), - }, + "auto" => { + if meta.is_lossy() { + Ok(Jpeg(jpg_quality)) + } else { + Ok(Png) + } + } "jpeg" | "jpg" => Ok(Jpeg(jpg_quality)), "png" => Ok(Png), - "webp" => Ok(WebP(quality)), + "webp" => Ok(WebP(quality)), // FIXME: this is undoc'd _ => Err(format!("Invalid image format: {}", format).into()), } } @@ -173,8 +235,8 @@ impl Format { "png" => Some(false), "gif" => Some(false), "bmp" => Some(false), - // It is assumed that webp is lossless, but it can be both - "webp" => Some(false), + // It is assumed that webp is lossy, but it can be both + "webp" => Some(true), _ => None, }) .unwrap_or(None) @@ -212,7 +274,10 @@ impl Hash for Format { /// Holds all data needed to perform a resize operation #[derive(Debug, PartialEq, Eq)] pub struct ImageOp { - source: String, + /// This is the source input path string as passed in the template, we need this to compute the hash. + /// Hashing the resolved `input_path` would include the absolute path to the image + /// with all filesystem components. + input_src: String, input_path: PathBuf, op: ResizeOp, format: Format, @@ -226,79 +291,32 @@ pub struct ImageOp { } impl ImageOp { - pub fn from_args( - source: String, - input_path: PathBuf, - op: &str, - width: Option, - height: Option, - format: &str, - quality: Option, - ) -> Result { - let op = ResizeOp::from_args(op, width, height)?; - let format = Format::from_args(&source, format, quality)?; + const RESIZE_FILTER: FilterType = FilterType::Lanczos3; + fn new(input_src: String, input_path: PathBuf, op: ResizeOp, format: Format) -> ImageOp { let mut hasher = DefaultHasher::new(); - hasher.write(source.as_ref()); + hasher.write(input_src.as_ref()); op.hash(&mut hasher); format.hash(&mut hasher); let hash = hasher.finish(); - Ok(ImageOp { source, input_path, op, format, hash, collision_id: 0 }) + ImageOp { input_src, input_path, op, format, hash, collision_id: 0 } } fn perform(&self, target_path: &Path) -> Result<()> { - use ResizeOp::*; - if !ufs::file_stale(&self.input_path, target_path) { return Ok(()); } let mut img = image::open(&self.input_path)?; - let (img_w, img_h) = img.dimensions(); - const RESIZE_FILTER: FilterType = FilterType::Lanczos3; - const RATIO_EPSILLION: f32 = 0.1; - - let img = match self.op { - Scale(w, h) => img.resize_exact(w, h, RESIZE_FILTER), - FitWidth(w) => img.resize(w, u32::MAX, RESIZE_FILTER), - FitHeight(h) => img.resize(u32::MAX, h, RESIZE_FILTER), - Fit(w, h) => { - if img_w > w || img_h > h { - img.resize(w, h, RESIZE_FILTER) - } else { - img - } - } - Fill(w, h) => { - let factor_w = img_w as f32 / w as f32; - let factor_h = img_h as f32 / h as f32; - - if (factor_w - factor_h).abs() <= RATIO_EPSILLION { - // If the horizontal and vertical factor is very similar, - // that means the aspect is similar enough that there's not much point - // in cropping, so just perform a simple scale in this case. - img.resize_exact(w, h, RESIZE_FILTER) - } else { - // We perform the fill such that a crop is performed first - // and then resize_exact can be used, which should be cheaper than - // resizing and then cropping (smaller number of pixels to resize). - let (crop_w, crop_h) = if factor_w < factor_h { - (img_w, (factor_w * h as f32).round() as u32) - } else { - ((factor_h * w as f32).round() as u32, img_h) - }; - - let (offset_w, offset_h) = if factor_w < factor_h { - (0, (img_h - crop_h) / 2) - } else { - ((img_w - crop_w) / 2, 0) - }; - - img.crop(offset_w, offset_h, crop_w, crop_h).resize_exact(w, h, RESIZE_FILTER) - } - } + let img = match self.op.crop { + Some((x, y, w, h)) => img.crop(x, y, w, h), + None => img, + }; + let img = match self.op.resize { + Some((w, h)) => img.resize_exact(w, h, Self::RESIZE_FILTER), + None => img, }; let mut f = File::create(target_path)?; @@ -324,6 +342,33 @@ impl ImageOp { } } +// FIXME: Explain this in the doc +#[derive(Debug, Serialize, Deserialize, PartialEq, Eq)] +pub struct EnqueueResponse { + /// The final URL for that asset + pub url: String, + /// The path to the static asset generated + pub static_path: String, + /// New image width + pub width: u32, + /// New image height + pub height: u32, + /// Original image width + pub orig_width: u32, + /// Original image height + pub orig_height: u32, +} + +impl EnqueueResponse { + fn new(url: String, static_path: PathBuf, meta: &ImageMeta, op: &ResizeOp) -> Self { + let static_path = static_path.to_string_lossy().into_owned(); + let (width, height) = op.resize.unwrap_or(meta.size); + let (orig_width, orig_height) = meta.size; + + Self { url, static_path, width, height, orig_width, orig_height } + } +} + /// A struct into which image operations can be enqueued and then performed. /// All output is written in a subdirectory in `static_path`, /// taking care of file stale status based on timestamps and possible hash collisions. @@ -360,6 +405,29 @@ impl Processor { self.img_ops.len() + self.img_ops_collisions.len() } + pub fn enqueue( + &mut self, + input_src: String, + input_path: PathBuf, + op: &str, + width: Option, + height: Option, + format: &str, + quality: Option, + ) -> Result { + let meta = ImageMeta::read(&input_path).map_err(|e| { + Error::chain(format!("Failed to read image: {}", input_path.display()), e) + })?; + + let args = ResizeArgs::from_args(op, width, height)?; + let op = ResizeOp::new(args, meta.size); + let format = Format::from_args(&meta, format, quality)?; + let img_op = ImageOp::new(input_src, input_path, op.clone(), format); + let (static_path, url) = self.insert(img_op); + + Ok(EnqueueResponse::new(url, static_path, &meta, &op)) + } + fn insert_with_collisions(&mut self, mut img_op: ImageOp) -> u32 { match self.img_ops.entry(img_op.hash) { HEntry::Occupied(entry) => { @@ -414,7 +482,7 @@ impl Processor { /// Adds the given operation to the queue but do not process it immediately. /// Returns (path in static folder, final URL). - pub fn insert(&mut self, img_op: ImageOp) -> (PathBuf, String) { + fn insert(&mut self, img_op: ImageOp) -> (PathBuf, String) { let hash = img_op.hash; let format = img_op.format; let collision_id = self.insert_with_collisions(img_op); @@ -423,6 +491,7 @@ impl Processor { (Path::new("static").join(RESIZED_SUBDIR).join(filename), url) } + /// Remove stale processed images in the output directory pub fn prune(&self) -> Result<()> { // Do not create folders if they don't exist if !self.output_dir.exists() { @@ -449,6 +518,7 @@ impl Processor { Ok(()) } + /// Run the enqueued image operations pub fn do_process(&mut self) -> Result<()> { if !self.img_ops.is_empty() { ufs::ensure_directory_exists(&self.output_dir)?; @@ -459,9 +529,89 @@ impl Processor { .map(|(hash, op)| { let target = self.output_dir.join(Self::op_filename(*hash, op.collision_id, op.format)); - op.perform(&target) - .map_err(|e| Error::chain(format!("Failed to process image: {}", op.source), e)) + op.perform(&target).map_err(|e| { + Error::chain(format!("Failed to process image: {}", op.input_path.display()), e) + }) }) .collect::>() } } + +#[derive(Debug, Serialize, Eq, PartialEq)] +pub struct ImageMetaResponse { + pub width: u32, + pub height: u32, + pub format: Option<&'static str>, +} + +impl ImageMetaResponse { + pub fn new_svg(width: u32, height: u32) -> Self { + Self { width, height, format: Some("svg") } + } +} + +impl From for ImageMetaResponse { + fn from(im: ImageMeta) -> Self { + Self { + width: im.size.0, + height: im.size.1, + format: im.format.and_then(|f| f.extensions_str().get(0)).map(|&f| f), + } + } +} + +impl From for ImageMetaResponse { + fn from(img: webp::WebPImage) -> Self { + Self { width: img.width(), height: img.height(), format: Some("webp") } + } +} + +/// Read image dimensions (cheaply), used in `get_image_metadata()`, supports SVG +pub fn read_image_metadata>(path: P) -> Result { + let path = path.as_ref(); + let ext = path.extension().and_then(OsStr::to_str).unwrap_or("").to_lowercase(); + + let error = |e: Box| { + Error::chain(format!("Failed to read image: {}", path.display()), e) + }; + + match ext.as_str() { + "svg" => { + let img = SvgMetadata::parse_file(&path).map_err(|e| error(e.into()))?; + match (img.height(), img.width(), img.view_box()) { + (Some(h), Some(w), _) => Ok((h, w)), + (_, _, Some(view_box)) => Ok((view_box.height, view_box.width)), + _ => Err("Invalid dimensions: SVG width/height and viewbox not set.".into()), + } + .map(|(h, w)| ImageMetaResponse::new_svg(h as u32, w as u32)) + } + "webp" => { + // Unfortunatelly we have to load the entire image here, unlike with the others :| + let data = fs::read(path).map_err(|e| error(e.into()))?; + let decoder = webp::Decoder::new(&data[..]); + decoder + .decode() + .map(ImageMetaResponse::from) + .ok_or_else(|| Error::msg(format!("Failed to decode WebP image: {}", path.display()))) + } + _ => ImageMeta::read(path).map(ImageMetaResponse::from).map_err(|e| error(e.into())), + } +} + +/// Assert that `address` matches `prefix` + RESIZED_FILENAME regex + "." + `extension`, +/// this is useful in test so that we don't need to hardcode hash, which is annoying. +pub fn assert_processed_path_matches(path: &str, prefix: &str, extension: &str) { + let filename = path + .strip_prefix(prefix) + .unwrap_or_else(|| panic!("Path `{}` doesn't start with `{}`", path, prefix)); + + let suffix = format!(".{}", extension); + assert!(filename.ends_with(&suffix), "Path `{}` doesn't end with `{}`", path, suffix); + + assert!( + RESIZED_FILENAME.is_match_at(filename, 0), + "In path `{}`, file stem `{}` doesn't match the RESIZED_FILENAME regex", + path, + filename + ); +} diff --git a/components/imageproc/tests/resize_image.rs b/components/imageproc/tests/resize_image.rs new file mode 100644 index 00000000..c19cf1f4 --- /dev/null +++ b/components/imageproc/tests/resize_image.rs @@ -0,0 +1,161 @@ +use std::env; +use std::path::{PathBuf, MAIN_SEPARATOR as SLASH}; + +use lazy_static::lazy_static; + +use config::Config; +use imageproc::{assert_processed_path_matches, ImageMetaResponse, Processor}; +use utils::fs as ufs; + +static CONFIG: &str = r#" +title = "imageproc integration tests" +base_url = "https://example.com" +compile_sass = false +build_search_index = false + +[markdown] +highlight_code = false +"#; + + +lazy_static! { + static ref TEST_IMGS: PathBuf = + [env!("CARGO_MANIFEST_DIR"), "tests", "test_imgs"].iter().collect(); + static ref TMPDIR: PathBuf = { + let tmpdir = option_env!("CARGO_TARGET_TMPDIR").map(PathBuf::from).unwrap_or_else(|| { + env::current_exe().unwrap().parent().unwrap().parent().unwrap().join("tmpdir") + }); + ufs::ensure_directory_exists(&tmpdir).unwrap(); + tmpdir + }; + static ref PROCESSED_PREFIX: String = format!("static{0}processed_images{0}", SLASH); +} + +fn image_op_test( + source_img: &str, + op: &str, + width: Option, + height: Option, + format: &str, + expect_ext: &str, + expect_width: u32, + expect_height: u32, + orig_width: u32, + orig_height: u32, +) { + let source_path = TEST_IMGS.join(source_img); + + let config = Config::parse(&CONFIG).unwrap(); + let mut proc = Processor::new(TMPDIR.clone(), &config); + + let resp = + proc.enqueue(source_img.into(), source_path, op, width, height, format, None).unwrap(); + assert_processed_path_matches(&resp.url, "https://example.com/processed_images/", expect_ext); + assert_processed_path_matches(&resp.static_path, PROCESSED_PREFIX.as_str(), expect_ext); + assert_eq!(resp.width, expect_width); + assert_eq!(resp.height, expect_height); + assert_eq!(resp.orig_width, orig_width); + assert_eq!(resp.orig_height, orig_height); + + proc.do_process().unwrap(); + + let processed_path = PathBuf::from(&resp.static_path); + let processed_size = imageproc::read_image_metadata(&TMPDIR.join(processed_path)) + .map(|meta| (meta.width, meta.height)) + .unwrap(); + assert_eq!(processed_size, (expect_width, expect_height)); +} + +fn image_meta_test(source_img: &str) -> ImageMetaResponse { + let source_path = TEST_IMGS.join(source_img); + imageproc::read_image_metadata(&source_path).unwrap() +} + +#[test] +fn resize_image_scale() { + image_op_test("jpg.jpg", "scale", Some(150), Some(150), "auto", "jpg", 150, 150, 300, 380); +} + +#[test] +fn resize_image_fit_width() { + image_op_test("jpg.jpg", "fit_width", Some(150), None, "auto", "jpg", 150, 190, 300, 380); +} + +#[test] +fn resize_image_fit_height() { + image_op_test("webp.webp", "fit_height", None, Some(190), "auto", "jpg", 150, 190, 300, 380); +} + +#[test] +fn resize_image_fit1() { + image_op_test("jpg.jpg", "fit", Some(150), Some(200), "auto", "jpg", 150, 190, 300, 380); +} + +#[test] +fn resize_image_fit2() { + image_op_test("jpg.jpg", "fit", Some(160), Some(180), "auto", "jpg", 142, 180, 300, 380); +} + +#[test] +fn resize_image_fill1() { + image_op_test("jpg.jpg", "fill", Some(100), Some(200), "auto", "jpg", 100, 200, 300, 380); +} + +#[test] +fn resize_image_fill2() { + image_op_test("jpg.jpg", "fill", Some(200), Some(100), "auto", "jpg", 200, 100, 300, 380); +} + +#[test] +fn resize_image_png_png() { + image_op_test("png.png", "scale", Some(150), Some(150), "auto", "png", 150, 150, 300, 380); +} + +#[test] +fn resize_image_png_jpg() { + image_op_test("png.png", "scale", Some(150), Some(150), "jpg", "jpg", 150, 150, 300, 380); +} + +#[test] +fn resize_image_png_webp() { + image_op_test("png.png", "scale", Some(150), Some(150), "webp", "webp", 150, 150, 300, 380); +} + +#[test] +fn resize_image_webp_jpg() { + image_op_test("webp.webp", "scale", Some(150), Some(150), "auto", "jpg", 150, 150, 300, 380); +} + +#[test] +fn read_image_metadata_jpg() { + assert_eq!( + image_meta_test("jpg.jpg"), + ImageMetaResponse { width: 300, height: 380, format: Some("jpg") } + ); +} + +#[test] +fn read_image_metadata_png() { + assert_eq!( + image_meta_test("png.png"), + ImageMetaResponse { width: 300, height: 380, format: Some("png") } + ); +} + +#[test] +fn read_image_metadata_svg() { + assert_eq!( + image_meta_test("svg.svg"), + ImageMetaResponse { width: 300, height: 300, format: Some("svg") } + ); +} + +#[test] +fn read_image_metadata_webp() { + assert_eq!( + image_meta_test("webp.webp"), + ImageMetaResponse { width: 300, height: 380, format: Some("webp") } + ); +} + +// TODO: Test that hash remains the same if physical path is changed diff --git a/components/imageproc/tests/test_imgs/jpg.jpg b/components/imageproc/tests/test_imgs/jpg.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0b031e9c78bdc01bb9fc56755343eb14919a28a3 GIT binary patch literal 47783 zcmbSyWmFtN*X9fZ3~qto4uN37VQ@llC-~s*8r&gh(7}R3NRZ&}?oMzIFgU^8Ki=Iv z-=4F-cK3GGudc3hpVL*hZ{6qVmxY&g0FIoLtP}tU1Ohx?FTl$(Kmq_lK=@C4HN@A3 zgo1>Gh=_y+1|y?jpkZL3qoJc?V&UOnV&P(;qvO2A!F_{IKtOp9l}10RKOe z070+MAR?h6A)(@9qGRI!Kif+u02c-53uFNSX#fbgKoBnQr58X6005C*z5S2F|I2^~ zuRbD!QBcv)UkB9T01$v65CS6TKVH9%_Ite#K*UADqvjAtexqs(rg6sS3`)pDq5W9Z zMWFWQl#a{9B^VX$Eg=yx3H>_;#`jFzJiL7T5CMr#l2Xz#vT~o*H8i!fb#zV5%q=Xf ztZiJsxVd|HdU=O@4GjyAh>U_ICMBn&eossPk^l2oL19tx@9LV`y84F3rsnRR-oE~U z!J*-)>6zKN`Gv)$jZOI0_Rj9!{=wP##pTuY&F$U&e{cZ-p#KT$zmfePxNu)_As`}x z5W)Y!1w`<8?I2u4Bx(+1JaJX9vGW@m&L9;0j|q8IU8uBNYNrGyE`QM8(s6IlpZy2g z|3LPC2Q2vi3)z1I``@^h02m

    &pY-0z?6)%xV6M&fEcJ=nn(mT<|17yMO?$dw*{( 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%0ARGaEEY-J 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 kY@jx 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 z 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

    tV7IiHiQs%AXx~Z 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 SUSuQ+{?XGm(#qGc4E%o!ocRj? literal 0 HcmV?d00001 diff --git a/components/imageproc/tests/test_imgs/svg.svg b/components/imageproc/tests/test_imgs/svg.svg new file mode 100644 index 00000000..0c078163 --- /dev/null +++ b/components/imageproc/tests/test_imgs/svg.svg @@ -0,0 +1,56 @@ + + + SVG Logo + Designed for the SVG Logo Contest in 2006 by Harvey Rayner, and adopted by W3C in 2009. It is available under the Creative Commons license for those who have an SVG product or who are using SVG on their site. + + + + + SVG Logo + 14-08-2009 + + W3C + Harvey Rayner, designer + + See document description + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/components/imageproc/tests/test_imgs/webp.webp b/components/imageproc/tests/test_imgs/webp.webp new file mode 100644 index 0000000000000000000000000000000000000000..a58d420635c30fc08155f8b15c3737cc838be5b8 GIT binary patch literal 9828 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 K;H_F9fB*nhAR Result<(u32, u32)> { - if let Some("svg") = path.extension().and_then(OsStr::to_str) { - let img = svg::Metadata::parse_file(&path) - .map_err(|e| Error::chain(format!("Failed to process SVG: {}", path.display()), e))?; - match (img.height(), img.width(), img.view_box()) { - (Some(h), Some(w), _) => Ok((h as u32, w as u32)), - (_, _, Some(view_box)) => Ok((view_box.height as u32, view_box.width as u32)), - _ => Err("Invalid dimensions: SVG width/height and viewbox not set.".into()), - } - } else { - let img = image::open(&path) - .map_err(|e| Error::chain(format!("Failed to process image: {}", path.display()), e))?; - Ok((img.height(), img.width())) + to_value(response).map_err(Into::into) } } @@ -139,11 +105,10 @@ impl TeraFn for GetImageMetadata { return Err(format!("`resize_image`: Cannot find path: {}", path).into()); } }; - let (height, width) = image_dimensions(&src_path)?; - let mut map = tera::Map::new(); - map.insert(String::from("height"), Value::Number(tera::Number::from(height))); - map.insert(String::from("width"), Value::Number(tera::Number::from(width))); - Ok(Value::Object(map)) + + let response = imageproc::read_image_metadata(&src_path) + .map_err(|e| format!("`resize_image`: {}", e))?; + to_value(response).map_err(Into::into) } } @@ -190,13 +155,15 @@ mod tests { let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); let static_path = Path::new("static").join("processed_images"); + // TODO: Use `assert_processed_path_matches()` from imageproc so that hashes don't need to be hardcoded + assert_eq!( data["static_path"], - to_value(&format!("{}", static_path.join("e49f5bd23ec5007c00.jpg").display())).unwrap() + to_value(&format!("{}", static_path.join("6a89d6483cdc5f7700.jpg").display())).unwrap() ); assert_eq!( data["url"], - to_value("http://a-website.com/processed_images/e49f5bd23ec5007c00.jpg").unwrap() + to_value("http://a-website.com/processed_images/6a89d6483cdc5f7700.jpg").unwrap() ); // 2. resizing an image in content with a relative path @@ -204,33 +171,33 @@ mod tests { let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); assert_eq!( data["static_path"], - to_value(&format!("{}", static_path.join("32454a1e0243976c00.jpg").display())).unwrap() + to_value(&format!("{}", static_path.join("202d9263f4dbc95900.jpg").display())).unwrap() ); assert_eq!( data["url"], - to_value("http://a-website.com/processed_images/32454a1e0243976c00.jpg").unwrap() + to_value("http://a-website.com/processed_images/202d9263f4dbc95900.jpg").unwrap() ); // 3. resizing with an absolute path is the same as the above args.insert("path".to_string(), to_value("/content/gutenberg.jpg").unwrap()); assert_eq!( data["static_path"], - to_value(&format!("{}", static_path.join("32454a1e0243976c00.jpg").display())).unwrap() + to_value(&format!("{}", static_path.join("202d9263f4dbc95900.jpg").display())).unwrap() ); assert_eq!( data["url"], - to_value("http://a-website.com/processed_images/32454a1e0243976c00.jpg").unwrap() + to_value("http://a-website.com/processed_images/202d9263f4dbc95900.jpg").unwrap() ); // 4. resizing an image in content starting with `@/` is the same as 2 and 3 args.insert("path".to_string(), to_value("@/gutenberg.jpg").unwrap()); assert_eq!( data["static_path"], - to_value(&format!("{}", static_path.join("32454a1e0243976c00.jpg").display())).unwrap() + to_value(&format!("{}", static_path.join("202d9263f4dbc95900.jpg").display())).unwrap() ); assert_eq!( data["url"], - to_value("http://a-website.com/processed_images/32454a1e0243976c00.jpg").unwrap() + to_value("http://a-website.com/processed_images/202d9263f4dbc95900.jpg").unwrap() ); // 5. resizing an image with a relative path not starting with static or content @@ -238,11 +205,11 @@ mod tests { let data = static_fn.call(&args).unwrap().as_object().unwrap().clone(); assert_eq!( data["static_path"], - to_value(&format!("{}", static_path.join("c8aaba7b0593a60b00.jpg").display())).unwrap() + to_value(&format!("{}", static_path.join("6296a3c153f701be00.jpg").display())).unwrap() ); assert_eq!( data["url"], - to_value("http://a-website.com/processed_images/c8aaba7b0593a60b00.jpg").unwrap() + to_value("http://a-website.com/processed_images/6296a3c153f701be00.jpg").unwrap() ); } From 38ddb1c4d130dec27affe64a9a22a8f12eb0dc99 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 9 Jun 2021 14:14:01 +0200 Subject: [PATCH 089/113] cargo fmt --- components/imageproc/src/lib.rs | 9 ++++----- components/imageproc/tests/resize_image.rs | 1 - 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/components/imageproc/src/lib.rs b/components/imageproc/src/lib.rs index 4bb0dded..4d6328a4 100644 --- a/components/imageproc/src/lib.rs +++ b/components/imageproc/src/lib.rs @@ -555,7 +555,7 @@ impl From for ImageMetaResponse { Self { width: im.size.0, height: im.size.1, - format: im.format.and_then(|f| f.extensions_str().get(0)).map(|&f| f), + format: im.format.and_then(|f| f.extensions_str().get(0)).copied(), } } } @@ -589,10 +589,9 @@ pub fn read_image_metadata>(path: P) -> Result // Unfortunatelly we have to load the entire image here, unlike with the others :| let data = fs::read(path).map_err(|e| error(e.into()))?; let decoder = webp::Decoder::new(&data[..]); - decoder - .decode() - .map(ImageMetaResponse::from) - .ok_or_else(|| Error::msg(format!("Failed to decode WebP image: {}", path.display()))) + decoder.decode().map(ImageMetaResponse::from).ok_or_else(|| { + Error::msg(format!("Failed to decode WebP image: {}", path.display())) + }) } _ => ImageMeta::read(path).map(ImageMetaResponse::from).map_err(|e| error(e.into())), } diff --git a/components/imageproc/tests/resize_image.rs b/components/imageproc/tests/resize_image.rs index c19cf1f4..0e0e8f37 100644 --- a/components/imageproc/tests/resize_image.rs +++ b/components/imageproc/tests/resize_image.rs @@ -17,7 +17,6 @@ build_search_index = false highlight_code = false "#; - lazy_static! { static ref TEST_IMGS: PathBuf = [env!("CARGO_MANIFEST_DIR"), "tests", "test_imgs"].iter().collect(); From 0975b674c507fa0032edcbcef366a635954c843e Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 9 Jun 2021 14:55:13 +0200 Subject: [PATCH 090/113] Hash imageproc on unified path --- components/templates/src/global_fns/files.rs | 4 +-- .../templates/src/global_fns/helpers.rs | 5 ++-- components/templates/src/global_fns/images.rs | 28 ++++++------------- .../templates/src/global_fns/load_data.rs | 2 +- 4 files changed, 14 insertions(+), 25 deletions(-) diff --git a/components/templates/src/global_fns/files.rs b/components/templates/src/global_fns/files.rs index 34ece031..a379b044 100644 --- a/components/templates/src/global_fns/files.rs +++ b/components/templates/src/global_fns/files.rs @@ -115,7 +115,7 @@ impl TeraFn for GetUrl { if cachebust { match search_for_file(&self.base_path, &path_with_lang) - .and_then(|p| fs::File::open(&p).ok()) + .and_then(|(p, _)| fs::File::open(&p).ok()) .and_then(|f| compute_file_hash::(f, false).ok()) { Some(hash) => { @@ -167,7 +167,7 @@ impl TeraFn for GetFileHash { .unwrap_or(true); let file_path = match search_for_file(&self.base_path, &path) { - Some(f) => f, + Some((f, _)) => f, None => { return Err(format!("`get_file_hash`: Cannot find file: {}", path).into()); } diff --git a/components/templates/src/global_fns/helpers.rs b/components/templates/src/global_fns/helpers.rs index 2e8cb459..1a1f2a85 100644 --- a/components/templates/src/global_fns/helpers.rs +++ b/components/templates/src/global_fns/helpers.rs @@ -8,7 +8,8 @@ use std::path::{Path, PathBuf}; /// 3. base_path + content + path /// A path starting with @/ will replace it with `content/` and a path starting with `/` will have /// it removed. -pub fn search_for_file(base_path: &Path, path: &str) -> Option { +/// It also returns the unified path so it can be used as unique hash for a given file. +pub fn search_for_file(base_path: &Path, path: &str) -> Option<(PathBuf, String)> { let search_paths = [base_path.join("static"), base_path.join("content")]; let actual_path = if path.starts_with("@/") { Cow::Owned(path.replace("@/", "content/")) @@ -31,7 +32,7 @@ pub fn search_for_file(base_path: &Path, path: &str) -> Option { } if file_exists { - Some(file_path) + Some((file_path, actual_path.into_owned())) } else { None } diff --git a/components/templates/src/global_fns/images.rs b/components/templates/src/global_fns/images.rs index dbe428bd..0cdd87e3 100644 --- a/components/templates/src/global_fns/images.rs +++ b/components/templates/src/global_fns/images.rs @@ -55,7 +55,7 @@ impl TeraFn for ResizeImage { } let mut imageproc = self.imageproc.lock().unwrap(); - let file_path = match search_for_file(&self.base_path, &path) { + let (file_path, unified_path) = match search_for_file(&self.base_path, &path) { Some(f) => f, None => { return Err(format!("`resize_image`: Cannot find file: {}", path).into()); @@ -63,7 +63,7 @@ impl TeraFn for ResizeImage { }; let response = imageproc - .enqueue(path, file_path, &op, width, height, &format, quality) + .enqueue(unified_path, file_path, &op, width, height, &format, quality) .map_err(|e| format!("`resize_image`: {}", e))?; to_value(response).map_err(Into::into) @@ -95,8 +95,8 @@ impl TeraFn for GetImageMetadata { "`get_image_metadata`: `allow_missing` must be a boolean (true or false)" ) .unwrap_or(false); - let src_path = match search_for_file(&self.base_path, &path) { - Some(f) => f, + let (src_path, _) = match search_for_file(&self.base_path, &path) { + Some((f, p)) => (f, p), None => { if allow_missing { println!("Image at path {} could not be found or loaded", path); @@ -180,25 +180,13 @@ mod tests { // 3. resizing with an absolute path is the same as the above args.insert("path".to_string(), to_value("/content/gutenberg.jpg").unwrap()); - assert_eq!( - data["static_path"], - to_value(&format!("{}", static_path.join("202d9263f4dbc95900.jpg").display())).unwrap() - ); - assert_eq!( - data["url"], - to_value("http://a-website.com/processed_images/202d9263f4dbc95900.jpg").unwrap() - ); + let data2 = static_fn.call(&args).unwrap().as_object().unwrap().clone(); + assert_eq!(data, data2); // 4. resizing an image in content starting with `@/` is the same as 2 and 3 args.insert("path".to_string(), to_value("@/gutenberg.jpg").unwrap()); - assert_eq!( - data["static_path"], - to_value(&format!("{}", static_path.join("202d9263f4dbc95900.jpg").display())).unwrap() - ); - assert_eq!( - data["url"], - to_value("http://a-website.com/processed_images/202d9263f4dbc95900.jpg").unwrap() - ); + let data2 = static_fn.call(&args).unwrap().as_object().unwrap().clone(); + assert_eq!(data, data2); // 5. resizing an image with a relative path not starting with static or content args.insert("path".to_string(), to_value("gallery/asset.jpg").unwrap()); diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index d24e9e86..5478fd7a 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -95,7 +95,7 @@ impl DataSource { if let Some(path) = path_arg { return match search_for_file(&base_path, &path) { - Some(f) => Ok(Some(DataSource::Path(f))), + Some((f, _)) => Ok(Some(DataSource::Path(f))), None => Ok(None), }; } From 1bf5cd7bf83e6aaaa5ed7253a4c793471c73d41f Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 11 Jun 2021 21:14:45 +0200 Subject: [PATCH 091/113] Update docs + sandbox files --- CHANGELOG.md | 9 +- components/templates/src/global_fns/files.rs | 29 +-- .../templates/src/global_fns/helpers.rs | 15 +- components/templates/src/global_fns/images.rs | 11 +- .../templates/src/global_fns/load_data.rs | 60 +++--- .../documentation/templates/overview.md | 175 ++++++++++-------- 6 files changed, 169 insertions(+), 130 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 80ec6cce..c71244cd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,14 +6,19 @@ - Newlines are now required after the closing `+++` of front-matter - `resize_image` now returns an object: `{url, static_path}` instead of just the URL so you can follow up with other functions on the new file if needed -- `get_file_hash` now has the `base64` option set to `true` by default (from `false`) since it's mainly used for integrity hashes which are base64 -- `get_url` does not automatically strip leading `/` from paths anymore +- `get_file_hash` now has the `base64` option set to `true` by default (from `false`) since it's mainly used for integrity hashes which are base64 - i18n rework: languages now have their sections in `config.toml` to set up all their options 1. taxonomies don't have a `lang` anymore in the config, you need to declare them in their respective language section 2. the `config` variable in templates has been changed and is now a stripped down language aware version of the previous `config` object 3. Search settings are now language specific 4. Translations are now nested in the languages table +- Paths unification: + 1. `get_url` does not load automatically from the `static` folder anymore + 2. New path resolving logic for all on-disk files: replace `@/` by `content/`, trim leading `/` and + search in $BASE_DIR + $path, $BASE_DIR + static + $path and $BASE_DIR + content + $path + 3. `get_file_hash` now returns base64 encoded hash by default + 4. all functions working on files can now only load files in the Zola directory ### Other diff --git a/components/templates/src/global_fns/files.rs b/components/templates/src/global_fns/files.rs index a379b044..0fefe229 100644 --- a/components/templates/src/global_fns/files.rs +++ b/components/templates/src/global_fns/files.rs @@ -19,7 +19,6 @@ where { let mut hasher = D::new(); io::copy(&mut file, &mut hasher)?; - println!("base64: {}", as_base64); if as_base64 { Ok(encode_b64(hasher.finalize())) } else { @@ -79,9 +78,6 @@ impl TeraFn for GetUrl { let lang = optional_arg!(String, args.get("lang"), "`get_url`: `lang` must be a string.") .unwrap_or_else(|| self.config.default_language.clone()); - // TODO: handle rss files with langs - // https://zola.discourse.group/t/rss-and-languages-do-not-work/878 - // TODO: clean up everything // if it starts with @/, resolve it as an internal link if path.starts_with("@/") { let path_with_lang = match make_path_with_lang(path, &lang, &self.config) { @@ -91,10 +87,11 @@ impl TeraFn for GetUrl { match resolve_internal_link(&path_with_lang, &self.permalinks) { Ok(resolved) => Ok(to_value(resolved.permalink).unwrap()), - Err(_) => { - Err(format!("Could not resolve URL for link `{}` not found.", path_with_lang) - .into()) - } + Err(_) => Err(format!( + "`get_url`: could not resolve URL for link `{}` not found.", + path_with_lang + ) + .into()), } } else { // anything else @@ -115,6 +112,7 @@ impl TeraFn for GetUrl { if cachebust { match search_for_file(&self.base_path, &path_with_lang) + .map_err(|e| format!("`get_url`: {}", e))? .and_then(|(p, _)| fs::File::open(&p).ok()) .and_then(|f| compute_file_hash::(f, false).ok()) { @@ -122,7 +120,11 @@ impl TeraFn for GetUrl { permalink = format!("{}?h={}", permalink, hash); } None => { - return Err(format!("Could not find or open file {}", path_with_lang).into()) + return Err(format!( + "`get_url`: Could not find or open file {}", + path_with_lang + ) + .into()) } }; } @@ -166,7 +168,9 @@ impl TeraFn for GetFileHash { ) .unwrap_or(true); - let file_path = match search_for_file(&self.base_path, &path) { + let file_path = match search_for_file(&self.base_path, &path) + .map_err(|e| format!("`get_file_hash`: {}", e))? + { Some((f, _)) => f, None => { return Err(format!("`get_file_hash`: Cannot find file: {}", path).into()); @@ -262,6 +266,10 @@ title = "A title" let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css"); + + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("/app.css").unwrap()); + assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css"); } #[test] @@ -431,7 +439,6 @@ title = "A title" let mut args = HashMap::new(); args.insert("path".to_string(), to_value("doesnt-exist").unwrap()); let err = format!("{}", static_fn.call(&args).unwrap_err()); - println!("{:?}", err); assert!(err.contains("Cannot find file")); } diff --git a/components/templates/src/global_fns/helpers.rs b/components/templates/src/global_fns/helpers.rs index 1a1f2a85..f835ebef 100644 --- a/components/templates/src/global_fns/helpers.rs +++ b/components/templates/src/global_fns/helpers.rs @@ -1,6 +1,9 @@ use std::borrow::Cow; use std::path::{Path, PathBuf}; +use errors::{bail, Result}; +use utils::fs::is_path_in_directory; + /// This is used by a few Tera functions to search for files on the filesystem. /// This does try to find the file in 3 different spots: /// 1. base_path + path @@ -9,16 +12,22 @@ use std::path::{Path, PathBuf}; /// A path starting with @/ will replace it with `content/` and a path starting with `/` will have /// it removed. /// It also returns the unified path so it can be used as unique hash for a given file. -pub fn search_for_file(base_path: &Path, path: &str) -> Option<(PathBuf, String)> { +/// It will error if the file is not contained in the Zola directory. +pub fn search_for_file(base_path: &Path, path: &str) -> Result> { let search_paths = [base_path.join("static"), base_path.join("content")]; let actual_path = if path.starts_with("@/") { Cow::Owned(path.replace("@/", "content/")) } else { Cow::Borrowed(path.trim_start_matches('/')) }; + let mut file_path = base_path.join(&*actual_path); let mut file_exists = file_path.exists(); + if file_exists && !is_path_in_directory(base_path, &file_path)? { + bail!("{:?} is not inside the base site directory {:?}", path, base_path); + } + if !file_exists { // we need to search in both search folders now for dir in &search_paths { @@ -32,8 +41,8 @@ pub fn search_for_file(base_path: &Path, path: &str) -> Option<(PathBuf, String) } if file_exists { - Some((file_path, actual_path.into_owned())) + Ok(Some((file_path, actual_path.into_owned()))) } else { - None + Ok(None) } } diff --git a/components/templates/src/global_fns/images.rs b/components/templates/src/global_fns/images.rs index 0cdd87e3..9695ea92 100644 --- a/components/templates/src/global_fns/images.rs +++ b/components/templates/src/global_fns/images.rs @@ -55,7 +55,9 @@ impl TeraFn for ResizeImage { } let mut imageproc = self.imageproc.lock().unwrap(); - let (file_path, unified_path) = match search_for_file(&self.base_path, &path) { + let (file_path, unified_path) = match search_for_file(&self.base_path, &path) + .map_err(|e| format!("`resize_image`: {}", e))? + { Some(f) => f, None => { return Err(format!("`resize_image`: Cannot find file: {}", path).into()); @@ -95,14 +97,15 @@ impl TeraFn for GetImageMetadata { "`get_image_metadata`: `allow_missing` must be a boolean (true or false)" ) .unwrap_or(false); - let (src_path, _) = match search_for_file(&self.base_path, &path) { + let (src_path, _) = match search_for_file(&self.base_path, &path) + .map_err(|e| format!("`get_image_metadata`: {}", e))? + { Some((f, p)) => (f, p), None => { if allow_missing { - println!("Image at path {} could not be found or loaded", path); return Ok(Value::Null); } - return Err(format!("`resize_image`: Cannot find path: {}", path).into()); + return Err(format!("`get_image_metadata`: Cannot find path: {}", path).into()); } }; diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 5478fd7a..bb6f238c 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -11,7 +11,7 @@ use reqwest::{blocking::Client, header}; use tera::{from_value, to_value, Error, Function as TeraFn, Map, Result, Value}; use url::Url; use utils::de::fix_toml_dates; -use utils::fs::{get_file_time, is_path_in_directory, read_file}; +use utils::fs::{get_file_time, read_file}; use crate::global_fns::helpers::search_for_file; @@ -94,7 +94,9 @@ impl DataSource { } if let Some(path) = path_arg { - return match search_for_file(&base_path, &path) { + return match search_for_file(&base_path, &path) + .map_err(|e| format!("`load_data`: {}", e))? + { Some((f, _)) => Ok(Some(DataSource::Path(f))), None => Ok(None), }; @@ -104,7 +106,7 @@ impl DataSource { return Url::parse(&url) .map(DataSource::Url) .map(Some) - .map_err(|e| format!("Failed to parse {} as url: {}", url, e).into()); + .map_err(|e| format!("`load_data`: Failed to parse {} as url: {}", url, e).into()); } Err(GET_DATA_ARGUMENT_ERROR_MESSAGE.into()) @@ -139,21 +141,6 @@ impl Hash for DataSource { } } -fn read_local_data_file(base_path: &Path, full_path: PathBuf) -> Result { - if !is_path_in_directory(&base_path, &full_path) - .map_err(|e| format!("Failed to read data file {}: {}", full_path.display(), e))? - { - return Err(format!( - "{:?} is not inside the base site directory {:?}", - full_path, base_path - ) - .into()); - } - - read_file(&full_path) - .map_err(|e| format!("`load_data`: error reading file {:?}: {}", full_path, e).into()) -} - fn get_output_format_from_args( format_arg: Option, data_source: &DataSource, @@ -235,21 +222,24 @@ impl TeraFn for LoadData { // If the file doesn't exist, source is None let data_source = - match (DataSource::from_args(path_arg.clone(), url_arg, &self.base_path)?, required) { + match (DataSource::from_args(path_arg.clone(), url_arg, &self.base_path), required) { // If the file was not required, return a Null value to the template - (None, false) => { + (Ok(None), false) | (Err(_), false) => { return Ok(Value::Null); } + (Err(e), true) => { + return Err(e); + } // If the file was required, error - (None, true) => { + (Ok(None), true) => { // source is None only with path_arg (not URL), so path_arg is safely unwrap return Err(format!( - "{} doesn't exist", + "`load_data`: {} doesn't exist", &self.base_path.join(path_arg.unwrap()).display() ) .into()); } - (Some(data_source), _) => data_source, + (Ok(Some(data_source)), _) => data_source, }; let file_format = get_output_format_from_args(format_arg, &data_source)?; @@ -262,7 +252,8 @@ impl TeraFn for LoadData { } let data = match data_source { - DataSource::Path(path) => read_local_data_file(&self.base_path, path), + DataSource::Path(path) => read_file(&path) + .map_err(|e| format!("`load_data`: error reading file {:?}: {}", path, e)), DataSource::Url(url) => { let response_client = self.client.lock().expect("response client lock"); let req = match method { @@ -280,7 +271,7 @@ impl TeraFn for LoadData { } Err(_) => { return Err(format!( - "{} is an illegal content type", + "`load_data`: {} is an illegal content type", &content_type ) .into()); @@ -296,7 +287,7 @@ impl TeraFn for LoadData { match req.send().and_then(|res| res.error_for_status()) { Ok(r) => r.text().map_err(|e| { - format!("Failed to parse response from {}: {:?}", url, e).into() + format!("`load_data`: Failed to parse response from {}: {:?}", url, e) }), Err(e) => { if !required { @@ -305,10 +296,14 @@ impl TeraFn for LoadData { return Ok(Value::Null); } Err(match e.status() { - Some(status) => format!("Failed to request {}: {}", url, status), - None => format!("Could not get response status for url: {}", url), - } - .into()) + Some(status) => { + format!("`load_data`: Failed to request {}: {}", url, status) + } + None => format!( + "`load_data`: Could not get response status for url: {}", + url + ), + }) } } } @@ -634,13 +629,14 @@ mod tests { } #[test] - fn cannot_load_outside_content_dir() { + fn cannot_load_outside_base_dir() { let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("../../README.md").unwrap()); args.insert("format".to_string(), to_value("plain").unwrap()); let result = static_fn.call(&args); assert!(result.is_err()); + println!("{:?} {:?}", std::env::current_dir(), result); assert!(result.unwrap_err().to_string().contains("is not inside the base site directory")); } @@ -736,7 +732,7 @@ mod tests { assert!(result.is_err()); assert_eq!( result.unwrap_err().to_string(), - format!("Failed to request {}: 404 Not Found", url) + format!("`load_data`: Failed to request {}: 404 Not Found", url) ); } diff --git a/docs/content/documentation/templates/overview.md b/docs/content/documentation/templates/overview.md index db17018d..ef3e3a1d 100644 --- a/docs/content/documentation/templates/overview.md +++ b/docs/content/documentation/templates/overview.md @@ -82,21 +82,36 @@ Encode the variable to base64. Decode the variable from base64. -## Built-in global functions +## Built-in functions -Zola adds a few global functions to [those in Tera](https://tera.netlify.com/docs#built-in-functions) +Zola adds a few Tera functions to [those built-in in Tera](https://tera.netlify.com/docs#built-in-functions) to make it easier to develop complex sites. +### File searching logic +For functions that are searching for a file on disk other than through `get_page` and `get_section`, the following +logic applies. + +1. The base directory is the Zola root directory, where the `config.toml` is +2. For the given path: if it starts with `@/`, replace that with `content/` instead and trim any leading `/` +3. Search in the following 3 locations in this order, returning the first where the file exists: + a. $base_directory + $path + b. $base_directory + "static/" + $path + c. $base_directory + "content/" + $path + +In practice this means that `@/some/image.jpg`, `/content/some/image.jpg` and `content/some/image.jpg` will point to the +same thing. + +It will error if the path is outside the Zola directory. ### `get_page` -Takes a path to an `.md` file and returns the associated page. +Takes a path to an `.md` file and returns the associated page. The base path is the `content` directory. ```jinja2 {% set page = get_page(path="blog/page2.md") %} ``` ### `get_section` -Takes a path to an `_index.md` file and returns the associated section. +Takes a path to an `_index.md` file and returns the associated section. The base path is the `content` directory. ```jinja2 {% set section = get_section(path="blog/_index.md") %} @@ -108,78 +123,6 @@ If you only need the metadata of the section, you can pass `metadata_only=true` {% set section = get_section(path="blog/_index.md", metadata_only=true) %} ``` -### `get_url` -Gets the permalink for the given path. -If the path starts with `@/`, it will be treated as an internal -link like the ones used in Markdown, starting from the root `content` directory. - -```jinja2 -{% set url = get_url(path="@/blog/_index.md") %} -``` - -It accepts an optional parameter `lang` in order to compute a *language-aware URL* in multilingual websites. Assuming `config.base_url` is `"http://example.com"`, the following snippet will: - -- return `"http://example.com/blog/"` if `config.default_language` is `"en"` -- return `"http://example.com/en/blog/"` if `config.default_language` is **not** `"en"` and `"en"` appears in `config.languages` -- fail otherwise, with the error message `"'en' is not an authorized language (check config.languages)."` - -```jinja2 -{% set url = get_url(path="@/blog/_index.md", lang="en") %} -``` - -This can also be used to get the permalinks for static assets, for example if -we want to link to the file that is located at `static/css/app.css`: - -```jinja2 -{{/* get_url(path="css/app.css") */}} -``` - -By default, assets will not have a trailing slash. You can force one by passing `trailing_slash=true` to the `get_url` function. -An example is: - -```jinja2 -{{/* get_url(path="css/app.css", trailing_slash=true) */}} -``` - -In the case of non-internal links, you can also add a cachebust of the format `?h=` at the end of a URL -by passing `cachebust=true` to the `get_url` function. - -### `get_file_hash` - -Returns the hash digest of a static file. Supported hashing algorithms are -SHA-256, SHA-384 (default) and SHA-512. Requires `path`. The `sha_type` -parameter is optional and must be one of 256, 384 or 512. - -```jinja2 -{{/* get_file_hash(path="js/app.js", sha_type=256) */}} -``` - -The function can also output a base64-encoded hash value when its `base64` -parameter is set to `true`. This can be used to implement [subresource -integrity](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity). - -```jinja2 - -``` - -Do note that subresource integrity is typically used when using external -scripts, which `get_file_hash` does not support. - -Whenever hashing files, whether using `get_file_hash` or `get_url(..., -cachebust=true)`, the file is searched for in three places: `static/`, -`content/` and the output path (so e.g. compiled SASS can be hashed, too.) - -### `get_image_metadata` - -Gets metadata for an image. This supports common formats like JPEG, PNG, as well as SVG. -Currently, the only supported keys are `width` and `height`. - -```jinja2 - {% set meta = get_image_metadata(path="...") %} - Our image is {{ meta.width }}x{{ meta.height }} -``` - ### `get_taxonomy_url` Gets the permalink for the taxonomy item found. @@ -208,12 +151,88 @@ items: Array; See the [Taxonomies documentation](@/documentation/templates/taxonomies.md) for a full documentation of those types. +### `get_url` +Gets the permalink for the given path. +If the path starts with `@/`, it will be treated as an internal link like the ones used in Markdown, +starting from the root `content` directory as well as validated. + +```jinja2 +{% set url = get_url(path="@/blog/_index.md") %} +``` + +It accepts an optional parameter `lang` in order to compute a *language-aware URL* in multilingual websites. Assuming `config.base_url` is `"http://example.com"`, the following snippet will: + +- return `"http://example.com/blog/"` if `config.default_language` is `"en"` +- return `"http://example.com/en/blog/"` if `config.default_language` is **not** `"en"` and `"en"` appears in `config.languages` +- fail otherwise, with the error message `"'en' is not an authorized language (check config.languages)."` + +```jinja2 +{% set url = get_url(path="@/blog/_index.md", lang="en") %} +``` + +This can also be used to get the permalinks for static assets, for example if +we want to link to the file that is located at `static/css/app.css`: + +```jinja2 +{{/* get_url(path="static/css/app.css") */}} +``` + +By default, assets will not have a trailing slash. You can force one by passing `trailing_slash=true` to the `get_url` function. +An example is: + +```jinja2 +{{/* get_url(path="static/css/app.css", trailing_slash=true) */}} +``` + +In the case of non-internal links, you can also add a cachebust of the format `?h=` at the end of a URL +by passing `cachebust=true` to the `get_url` function. In this case, the path will need to resolve to an actual file. +See [File Searching Logic](@/documentation/templates/overview.md#file-searching-logic) for details. + +### `get_file_hash` + +Returns the hash digest (SHA-256, SHA-384 or SHA-512) of a file. + +It can take the following arguments: +- `path`: mandatory, see [File Searching Logic](@/documentation/templates/overview.md#file-searching-logic) for details +- `sha_type`: optional, one of `256`, `384` or `512`, defaults to `384` +- `base64`: optional, `true` or `false`, defaults to `true`. Whether to encode the hash as base64 + +```jinja2 +{{/* get_file_hash(path="static/js/app.js", sha_type=256) */}} +``` + +The function can also output a base64-encoded hash value when its `base64` +parameter is set to `true`. This can be used to implement [subresource +integrity](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity). + +```jinja2 + +``` + +Do note that subresource integrity is typically used when using external scripts, which `get_file_hash` does not support. + +### `get_image_metadata` + +Gets metadata for an image. This supports common formats like JPEG, PNG, WebP, BMP, GIF as well as SVG. + +It can take the following arguments: + +- `path`: mandatory, see [File Searching Logic](@/documentation/templates/overview.md#file-searching-logic) for details +- `allow_missing`: optional, `true` or `false`, defaults to `false`. Whether a missing file should raise an error or not. + +The method returns a map containing `width`, `height` and `format` (the lowercased value as string). + +```jinja2 + {% set meta = get_image_metadata(path="...") %} + Our image (.{{meta.format}}) has format is {{ meta.width }}x{{ meta.height }} +``` + ### `load_data` Loads data from a file or URL. Supported file types include *toml*, *json*, *csv* and *bibtex*. Any other file type will be loaded as plain text. -The `path` argument specifies the path to the data file relative to your base directory, where your `config.toml` is. -As a security precaution, if this file is outside the main site directory, your site will fail to build. +The `path` argument specifies the path to the data file, according to the [File Searching Logic](@/documentation/templates/overview.md#file-searching-logic). ```jinja2 {% set data = load_data(path="content/blog/story/data.toml") %} From c0a0df4fe9cbc2650b9dc5a59132cdbdca29d776 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 11 Jun 2021 23:39:48 +0200 Subject: [PATCH 092/113] Update resize_image docs --- CHANGELOG.md | 1 + .../content/image-processing/index.md | 20 ++++++++++++++++--- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c71244cd..76fbae35 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,7 @@ search in $BASE_DIR + $path, $BASE_DIR + static + $path and $BASE_DIR + content + $path 3. `get_file_hash` now returns base64 encoded hash by default 4. all functions working on files can now only load files in the Zola directory + 5. `resize_image` return value has changed ### Other diff --git a/docs/content/documentation/content/image-processing/index.md b/docs/content/documentation/content/image-processing/index.md index 30a4a310..4936f261 100644 --- a/docs/content/documentation/content/image-processing/index.md +++ b/docs/content/documentation/content/image-processing/index.md @@ -44,10 +44,24 @@ static/processed_images/ The filename of each resized image is a hash of the function arguments, which means that once an image is resized in a certain way, it will be stored in the above directory and will not -need to be resized again during subsequent builds (unless the image itself, the dimensions, or other arguments are changed). -Therefore, if you have a large number of images, they will only need to be resized once. +need to be resized again during subsequent builds (unless the image itself, the dimensions, or other arguments have changed). -The function returns a full URL to the resized image. +The function returns an object with the following schema: + +``` +/// The final URL for that asset +url: String, +/// The path to the static asset generated +static_path: String, +/// New image width +width: u32, +/// New image height +height: u32, +/// Original image width +orig_width: u32, +/// Original image height +orig_height: u32, +``` ## Resize operations From a8acf2cab793b6a2156f362c81c59362e9b49add Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 14 Jun 2021 20:06:57 +0200 Subject: [PATCH 093/113] Cache get_image_metadata result --- components/templates/src/global_fns/images.rs | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/components/templates/src/global_fns/images.rs b/components/templates/src/global_fns/images.rs index 9695ea92..395ffa5f 100644 --- a/components/templates/src/global_fns/images.rs +++ b/components/templates/src/global_fns/images.rs @@ -76,11 +76,12 @@ impl TeraFn for ResizeImage { pub struct GetImageMetadata { /// The base path of the Zola site base_path: PathBuf, + result_cache: Arc>>, } impl GetImageMetadata { pub fn new(base_path: PathBuf) -> Self { - Self { base_path } + Self { base_path, result_cache: Arc::new(Mutex::new(HashMap::new())) } } } @@ -97,7 +98,8 @@ impl TeraFn for GetImageMetadata { "`get_image_metadata`: `allow_missing` must be a boolean (true or false)" ) .unwrap_or(false); - let (src_path, _) = match search_for_file(&self.base_path, &path) + + let (src_path, unified_path) = match search_for_file(&self.base_path, &path) .map_err(|e| format!("`get_image_metadata`: {}", e))? { Some((f, p)) => (f, p), @@ -109,9 +111,17 @@ impl TeraFn for GetImageMetadata { } }; + let mut cache = self.result_cache.lock().expect("result cache lock"); + if let Some(cached_result) = cache.get(&unified_path) { + return Ok(cached_result.clone()); + } + let response = imageproc::read_image_metadata(&src_path) .map_err(|e| format!("`resize_image`: {}", e))?; - to_value(response).map_err(Into::into) + let out = to_value(response).unwrap(); + cache.insert(unified_path, out.clone()); + + Ok(out) } } From 1e6768b18d23cdac290311b1cedbcf131decc4fe Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 24 Jun 2021 08:37:25 +0200 Subject: [PATCH 094/113] Remove search index for themes --- docs/content/themes/_index.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/content/themes/_index.md b/docs/content/themes/_index.md index 5aa2e7b5..28fdf9f1 100644 --- a/docs/content/themes/_index.md +++ b/docs/content/themes/_index.md @@ -2,5 +2,6 @@ +++ template = "themes.html" sort_by = "date" +in_search_index = false +++ \ No newline at end of file From c49d62cd1e495d2332add434bb8cb1c5107470ad Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 24 Jun 2021 21:59:41 +0200 Subject: [PATCH 095/113] Update deps --- Cargo.lock | 160 +++++++++++++++++++++++------------------------------ 1 file changed, 69 insertions(+), 91 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e3fa6bd4..bcaef05f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -179,9 +179,9 @@ checksum = "72feb31ffc86498dacdbd0fcebb56138e7177a8cc5cea4516031d15ae85a742e" [[package]] name = "bytemuck" -version = "1.5.1" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bed57e2090563b83ba8f83366628ce535a7584c9afa4c9fc0612a03925c6df58" +checksum = "9966d2ab714d0f785dbac0a0396251a35280aeb42413281617d0209ab4898435" [[package]] name = "byteorder" @@ -309,9 +309,9 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed00c67cb5d0a7d64a44f6ad2668db7e7530311dd53ea79bcd4fb022c64911c8" +checksum = "66c99696f6c9dd7f35d486b9d04d7e6e202aa3e8c40d553f2fdf5e7e0c6a71ef" dependencies = [ "libc", ] @@ -461,9 +461,9 @@ checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" [[package]] name = "elasticlunr-rs" -version = "2.3.12" +version = "2.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f8cf73b19a7aece6942f5745a2fc1ae3c8b0533569707d596b5d6baa7d6c600" +checksum = "515a402b5acb08002194dd926065be7733003bb37ac0f030dfd39160028238e1" dependencies = [ "jieba-rs", "lazy_static", @@ -802,9 +802,9 @@ checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574" [[package]] name = "globset" -version = "0.4.6" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c152169ef1e421390738366d2f796655fec62621dabbd0fd476f905934061e4a" +checksum = "10463d9ff00a2a068db14231982f5132edebad0d7660cd956a1c30292dbcbfbd" dependencies = [ "aho-corasick", "bstr", @@ -861,18 +861,18 @@ checksum = "d7afe4a420e3fe79967a00898cc1f4db7c8a49a9333a29f8a4bd76a253d5cd04" [[package]] name = "heck" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87cbf45460356b7deeb5e3415b5563308c0a9b057c85e12b06ad551f98d0a6ac" +checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" dependencies = [ "unicode-segmentation", ] [[package]] name = "hermit-abi" -version = "0.1.18" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322f4de77956e22ed0e5032c359a0f1273f1f7f0d79bfa3b8ffbc730d7fbcc5c" +checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" dependencies = [ "libc", ] @@ -933,9 +933,9 @@ checksum = "02296996cb8796d7c6e3bc2d9211b7802812d36999a51bb754123ead7d37d026" [[package]] name = "hyper" -version = "0.14.8" +version = "0.14.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3f71a7eea53a3f8257a7b4795373ff886397178cd634430ea94e12d7fe4fe34" +checksum = "07d6baa1b441335f3ce5098ac421fb6547c46dda735ca1bc6d0153c838f9dd83" dependencies = [ "bytes 1.0.1", "futures-channel", @@ -947,7 +947,7 @@ dependencies = [ "httparse", "httpdate", "itoa", - "pin-project", + "pin-project-lite", "socket2", "tokio", "tower-service", @@ -983,9 +983,9 @@ dependencies = [ [[package]] name = "ignore" -version = "0.4.17" +version = "0.4.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b287fb45c60bb826a0dc68ff08742b9d88a2fea13d6e0c286b3172065aaf878c" +checksum = "713f1b139373f96a2e0ce3ac931cd01ee973c3c5dd7c40c0c2efe96ad2b6751d" dependencies = [ "crossbeam-utils", "globset", @@ -1078,9 +1078,9 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.3.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47be2f14c678be2fdcab04ab1171db51b2762ce6f0a8ee87c8dd4a04ed216135" +checksum = "68f2d64f2edebec4ce84ad108148e67e1064789bee435edc5b60ad398714a3a9" [[package]] name = "itoa" @@ -1181,9 +1181,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "789da6d93f1b866ffe175afc5322a4d76c038605a1c3319bb57b06967ca98a36" +checksum = "12b8adadd720df158f4d70dfe7ccc6adb0472d7c55ca83445f6a5ab3e36f8fb6" [[package]] name = "library" @@ -1442,9 +1442,9 @@ dependencies = [ [[package]] name = "mio" -version = "0.7.11" +version = "0.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf80d3e903b34e0bd7282b218398aec54e082c840d9baf8339e0080a0c542956" +checksum = "8c2bdb6314ec10835cd3293dd268473a835c02b7b352e788be788b3c6ca6bb16" dependencies = [ "libc", "log", @@ -1498,7 +1498,7 @@ dependencies = [ "httparse", "lazy_static", "log", - "rand 0.8.3", + "rand 0.8.4", "regex", "serde_json", "serde_urlencoded", @@ -1680,15 +1680,15 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.7.2" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af8b08b04175473088b46763e51ee54da5f9a164bc162f615b91bc179dbf15a3" +checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56" [[package]] name = "onig" -version = "6.1.1" +version = "6.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30b46fd9edbc018f0be4e366c24c46db44fac49cd01c039ae85308088b089dd5" +checksum = "b16fd3c0e73b516af509c13c4ba76ec0c987ce20d78b38cff356b8d01fc6a6c0" dependencies = [ "bitflags", "lazy_static", @@ -1698,9 +1698,9 @@ dependencies = [ [[package]] name = "onig_sys" -version = "69.6.0" +version = "69.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed063c96cf4c0f2e5d09324409d158b38a0a85a7b90fbd68c8cad75c495d5775" +checksum = "9fd9442a09e4fbd08d196ddf419b2c79a43c3a46c800320cc841d45c2449a240" dependencies = [ "cc", "pkg-config", @@ -1830,26 +1830,6 @@ dependencies = [ "siphasher", ] -[[package]] -name = "pin-project" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7509cc106041c40a4518d2af7a61530e1eed0e6285296a3d8c5472806ccc4a4" -dependencies = [ - "pin-project-internal", -] - -[[package]] -name = "pin-project-internal" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48c950132583b500556b1efd71d45b319029f2b71518d979fcc208e16b42426f" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "pin-project-lite" version = "0.2.6" @@ -1969,14 +1949,14 @@ dependencies = [ [[package]] name = "rand" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ef9e7e66b4468674bfcb0c81af8b7fa0bb154fa9f28eb840da5c447baeb8d7e" +checksum = "2e7573632e6454cf6b99d7aac4ccca54be06da05aca2ef7423d22d27d4d4bcd8" dependencies = [ "libc", - "rand_chacha 0.3.0", - "rand_core 0.6.2", - "rand_hc 0.3.0", + "rand_chacha 0.3.1", + "rand_core 0.6.3", + "rand_hc 0.3.1", ] [[package]] @@ -1991,12 +1971,12 @@ dependencies = [ [[package]] name = "rand_chacha" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e12735cf05c9e10bf21534da50a147b924d555dc7a547c42e6bb2d5b6017ae0d" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core 0.6.2", + "rand_core 0.6.3", ] [[package]] @@ -2010,9 +1990,9 @@ dependencies = [ [[package]] name = "rand_core" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34cf66eb183df1c5876e2dcf6b13d57340741e8dc255b48e40a26de954d06ae7" +checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7" dependencies = [ "getrandom 0.2.3", ] @@ -2028,11 +2008,11 @@ dependencies = [ [[package]] name = "rand_hc" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73" +checksum = "d51e9f596de227fda2ea6c84607f5558e196eeaf43c986b724ba4fb8fdf497e7" dependencies = [ - "rand_core 0.6.2", + "rand_core 0.6.3", ] [[package]] @@ -2071,9 +2051,9 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.2.8" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "742739e41cd49414de871ea5e549afb7e2a3ac77b589bcbebe8c82fab37147fc" +checksum = "5ab49abadf3f9e1c4bc499e8845e152ad87d2ad2d30371841171169e9d75feee" dependencies = [ "bitflags", ] @@ -2091,12 +2071,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae1ded71d66a4a97f5e961fd0cb25a5f366a42a41570d16a763a69c092c26ae4" -dependencies = [ - "byteorder", -] +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" [[package]] name = "regex-syntax" @@ -2149,9 +2126,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.11.3" +version = "0.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2296f2fac53979e8ccbc4a1136b25dcefd37be9ed7e4a1f6b05a6029c84ff124" +checksum = "246e9f61b9bb77df069a947682be06e31ac43ea37862e244a69f177694ea6d22" dependencies = [ "base64", "bytes 1.0.1", @@ -2262,9 +2239,9 @@ dependencies = [ [[package]] name = "sass-sys" -version = "0.4.21" +version = "0.4.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0df9ac0fd0b8d62a99b9948094dcd56c441e3e10bf49f9b12da40b2183804908" +checksum = "933bca23b402377f0ab71e79732a826deffc748013746ac3314f6abc7f9fc51c" dependencies = [ "cc", "libc", @@ -2506,15 +2483,15 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" [[package]] name = "strum" -version = "0.18.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57bd81eb48f4c437cadc685403cad539345bf703d78e63707418431cecd4522b" +checksum = "aaf86bbcfd1fa9670b7a129f64fc0c9fcbbfe4f1bc4210e9e98fe71ffc12cde2" [[package]] name = "strum_macros" -version = "0.18.0" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87c85aa3f8ea653bfd3ddf25f7ee357ee4d204731f6aa9ad04002306f6e2774c" +checksum = "d06aaeeee809dbc59eb4556183dd927df67db1540de5be8d3ec0b6636358a5ec" dependencies = [ "heck", "proc-macro2", @@ -2536,9 +2513,9 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.72" +version = "1.0.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1e8cdbefb79a9a5a65e0db8b47b723ee907b7c7f8496c76a1770b5c310bab82" +checksum = "f71489ff30030d2ae598524f61326b902466f72a0fb1a8564c001cc63425bcc7" dependencies = [ "proc-macro2", "quote", @@ -2575,7 +2552,7 @@ checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22" dependencies = [ "cfg-if 1.0.0", "libc", - "rand 0.8.3", + "rand 0.8.4", "redox_syscall", "remove_dir_all", "winapi 0.3.9", @@ -2620,9 +2597,9 @@ dependencies = [ [[package]] name = "tera" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81060acb882480c8793782eb96bc86f5c83d2fc7175ad46c375c6956ef7afa62" +checksum = "03b6d9027cef72979d3436123f940cb372d5db2ae8afd328c482e8da7ff23aca" dependencies = [ "chrono", "chrono-tz", @@ -2632,7 +2609,7 @@ dependencies = [ "percent-encoding", "pest", "pest_derive", - "rand 0.8.3", + "rand 0.8.4", "regex", "serde", "serde_json", @@ -2724,17 +2701,18 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.6.1" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a38d31d7831c6ed7aad00aa4c12d9375fd225a6dd77da1d25b707346319a975" +checksum = "5fb2ed024293bb19f7a5dc54fe83bf86532a44c12a2bb8ba40d64a4509395ca2" dependencies = [ "autocfg", "bytes 1.0.1", "libc", "memchr", - "mio 0.7.11", + "mio 0.7.13", "num_cpus", "pin-project-lite", + "winapi 0.3.9", ] [[package]] @@ -2903,9 +2881,9 @@ dependencies = [ [[package]] name = "unicode-normalization" -version = "0.1.18" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33717dca7ac877f497014e10d73f3acf948c342bee31b5ca7892faf94ccc6b49" +checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9" dependencies = [ "tinyvec", ] @@ -3243,9 +3221,9 @@ dependencies = [ [[package]] name = "xmlparser" -version = "0.13.3" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "114ba2b24d2167ef6d67d7d04c8cc86522b87f490025f39f0303b7db5bf5e3d8" +checksum = "2a6276d307d1ce52a96deb8729b78ae34ee25bf9c4a7bd6ecb7885dc54f25b25" [[package]] name = "yaml-rust" From 8e9b779fc60bfdf28b3879e0f86993d511588b68 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 24 Jun 2021 22:03:32 +0200 Subject: [PATCH 096/113] Mention lang for get_taxonomy Closes #1517 --- docs/content/documentation/templates/overview.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/content/documentation/templates/overview.md b/docs/content/documentation/templates/overview.md index ef3e3a1d..e886c5bd 100644 --- a/docs/content/documentation/templates/overview.md +++ b/docs/content/documentation/templates/overview.md @@ -149,6 +149,8 @@ kind: TaxonomyConfig; items: Array; ``` +`lang` (optional) default to `config.default_language` in config.toml + See the [Taxonomies documentation](@/documentation/templates/taxonomies.md) for a full documentation of those types. ### `get_url` From e62664b4ff067aca4771122139854b4326a803e5 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 24 Jun 2021 22:22:49 +0200 Subject: [PATCH 097/113] Unify {page,section}.assets Closes #1510 --- CHANGELOG.md | 1 + components/library/src/content/page.rs | 3 ++- components/library/src/content/section.rs | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 76fbae35..e14db44b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ 3. `get_file_hash` now returns base64 encoded hash by default 4. all functions working on files can now only load files in the Zola directory 5. `resize_image` return value has changed + 6. `page.assets` now start with a `/` to match `section.assets` and other paths ### Other diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 9fa4c2a1..852156a4 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -299,7 +299,7 @@ impl Page { .to_path_buf(); path }) - .map(|path| path.to_string_lossy().to_string()) + .map(|path| format!("/{}", path.display())) .collect() } @@ -567,6 +567,7 @@ And here's another. [^2] assert_eq!(page.file.parent, path.join("content").join("posts")); assert_eq!(page.slug, "with-assets"); assert_eq!(page.assets.len(), 3); + assert!(section.serialized_assets[0].starts_with('/')); assert_eq!(page.permalink, "http://a-website.com/posts/with-assets/"); } diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index a2d693ad..b7bafa46 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -197,7 +197,7 @@ impl Section { .iter() .filter_map(|asset| asset.file_name()) .filter_map(|filename| filename.to_str()) - .map(|filename| self.path.clone() + filename) + .map(|filename| format!("{}{}", self.path, filename)) .collect() } @@ -258,6 +258,7 @@ mod tests { assert!(res.is_ok()); let section = res.unwrap(); assert_eq!(section.assets.len(), 3); + assert!(section.serialized_assets[0].starts_with('/')); assert_eq!(section.permalink, "http://a-website.com/posts/with-assets/"); } From 0cd1ea9537375bff23bb14d833c8a7e430923eef Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 24 Jun 2021 22:36:51 +0200 Subject: [PATCH 098/113] Avoid panic on invalid addr --- src/cmd/serve.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index 53bcfcfa..8c06b257 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -286,7 +286,10 @@ pub fn serve( console::report_elapsed_time(start); // Stop right there if we can't bind to the address - let bind_address: SocketAddrV4 = address.parse().unwrap(); + let bind_address: SocketAddrV4 = match address.parse() { + Ok(a) => a, + Err(_) => return Err(format!("Invalid address: {}.", address).into()) + }; if (TcpListener::bind(&bind_address)).is_err() { return Err(format!("Cannot start server on address {}.", address).into()); } From 545e76681862c3332d63a66df4f87a99704361e9 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 24 Jun 2021 23:12:04 +0200 Subject: [PATCH 099/113] Allow functions to look into current theme static folder Closes #1416 --- components/site/src/tpls.rs | 19 +++- components/templates/src/global_fns/files.rs | 23 ++--- .../templates/src/global_fns/helpers.rs | 12 ++- components/templates/src/global_fns/images.rs | 43 +++++++-- .../templates/src/global_fns/load_data.rs | 94 ++++++++++--------- .../documentation/templates/overview.md | 3 +- src/cmd/serve.rs | 2 +- 7 files changed, 123 insertions(+), 73 deletions(-) diff --git a/components/site/src/tpls.rs b/components/site/src/tpls.rs index 5b66731b..f4daee70 100644 --- a/components/site/src/tpls.rs +++ b/components/site/src/tpls.rs @@ -23,13 +23,20 @@ pub fn register_early_global_fns(site: &mut Site) -> TeraResult<()> { ); site.tera.register_function( "resize_image", - global_fns::ResizeImage::new(site.base_path.clone(), site.imageproc.clone()), + global_fns::ResizeImage::new( + site.base_path.clone(), + site.imageproc.clone(), + site.config.theme.clone(), + ), ); site.tera.register_function( "get_image_metadata", - global_fns::GetImageMetadata::new(site.base_path.clone()), + global_fns::GetImageMetadata::new(site.base_path.clone(), site.config.theme.clone()), + ); + site.tera.register_function( + "load_data", + global_fns::LoadData::new(site.base_path.clone(), site.config.theme.clone()), ); - site.tera.register_function("load_data", global_fns::LoadData::new(site.base_path.clone())); site.tera.register_function("trans", global_fns::Trans::new(site.config.clone())); site.tera.register_function( "get_taxonomy_url", @@ -39,8 +46,10 @@ pub fn register_early_global_fns(site: &mut Site) -> TeraResult<()> { site.config.slugify.taxonomies, ), ); - site.tera - .register_function("get_file_hash", global_fns::GetFileHash::new(site.base_path.clone())); + site.tera.register_function( + "get_file_hash", + global_fns::GetFileHash::new(site.base_path.clone(), site.config.theme.clone()), + ); Ok(()) } diff --git a/components/templates/src/global_fns/files.rs b/components/templates/src/global_fns/files.rs index 0fefe229..ba05b121 100644 --- a/components/templates/src/global_fns/files.rs +++ b/components/templates/src/global_fns/files.rs @@ -111,7 +111,7 @@ impl TeraFn for GetUrl { } if cachebust { - match search_for_file(&self.base_path, &path_with_lang) + match search_for_file(&self.base_path, &path_with_lang, &self.config.theme) .map_err(|e| format!("`get_url`: {}", e))? .and_then(|(p, _)| fs::File::open(&p).ok()) .and_then(|f| compute_file_hash::(f, false).ok()) @@ -141,10 +141,11 @@ impl TeraFn for GetUrl { #[derive(Debug)] pub struct GetFileHash { base_path: PathBuf, + theme: Option, } impl GetFileHash { - pub fn new(base_path: PathBuf) -> Self { - Self { base_path } + pub fn new(base_path: PathBuf, theme: Option) -> Self { + Self { base_path, theme } } } @@ -168,7 +169,7 @@ impl TeraFn for GetFileHash { ) .unwrap_or(true); - let file_path = match search_for_file(&self.base_path, &path) + let file_path = match search_for_file(&self.base_path, &path, &self.theme) .map_err(|e| format!("`get_file_hash`: {}", e))? { Some((f, _)) => f, @@ -358,7 +359,7 @@ title = "A title" #[test] fn can_get_file_hash_sha256_no_base64() { let dir = create_temp_dir(); - let static_fn = GetFileHash::new(dir.into_path()); + let static_fn = GetFileHash::new(dir.into_path(), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); args.insert("sha_type".to_string(), to_value(256).unwrap()); @@ -372,7 +373,7 @@ title = "A title" #[test] fn can_get_file_hash_sha256_base64() { let dir = create_temp_dir(); - let static_fn = GetFileHash::new(dir.into_path()); + let static_fn = GetFileHash::new(dir.into_path(), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); args.insert("sha_type".to_string(), to_value(256).unwrap()); @@ -383,7 +384,7 @@ title = "A title" #[test] fn can_get_file_hash_sha384_no_base64() { let dir = create_temp_dir(); - let static_fn = GetFileHash::new(dir.into_path()); + let static_fn = GetFileHash::new(dir.into_path(), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); args.insert("base64".to_string(), to_value(false).unwrap()); @@ -396,7 +397,7 @@ title = "A title" #[test] fn can_get_file_hash_sha384() { let dir = create_temp_dir(); - let static_fn = GetFileHash::new(dir.into_path()); + let static_fn = GetFileHash::new(dir.into_path(), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); assert_eq!( @@ -408,7 +409,7 @@ title = "A title" #[test] fn can_get_file_hash_sha512_no_base64() { let dir = create_temp_dir(); - let static_fn = GetFileHash::new(dir.into_path()); + let static_fn = GetFileHash::new(dir.into_path(), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); args.insert("sha_type".to_string(), to_value(512).unwrap()); @@ -422,7 +423,7 @@ title = "A title" #[test] fn can_get_file_hash_sha512() { let dir = create_temp_dir(); - let static_fn = GetFileHash::new(dir.into_path()); + let static_fn = GetFileHash::new(dir.into_path(), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); args.insert("sha_type".to_string(), to_value(512).unwrap()); @@ -435,7 +436,7 @@ title = "A title" #[test] fn error_when_file_not_found_for_hash() { let dir = create_temp_dir(); - let static_fn = GetFileHash::new(dir.into_path()); + let static_fn = GetFileHash::new(dir.into_path(), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("doesnt-exist").unwrap()); let err = format!("{}", static_fn.call(&args).unwrap_err()); diff --git a/components/templates/src/global_fns/helpers.rs b/components/templates/src/global_fns/helpers.rs index f835ebef..d5cf0ae1 100644 --- a/components/templates/src/global_fns/helpers.rs +++ b/components/templates/src/global_fns/helpers.rs @@ -9,12 +9,20 @@ use utils::fs::is_path_in_directory; /// 1. base_path + path /// 2. base_path + static + path /// 3. base_path + content + path +/// 4. base_path + themes + {current_theme} + static + path /// A path starting with @/ will replace it with `content/` and a path starting with `/` will have /// it removed. /// It also returns the unified path so it can be used as unique hash for a given file. /// It will error if the file is not contained in the Zola directory. -pub fn search_for_file(base_path: &Path, path: &str) -> Result> { - let search_paths = [base_path.join("static"), base_path.join("content")]; +pub fn search_for_file( + base_path: &Path, + path: &str, + theme: &Option, +) -> Result> { + let mut search_paths = vec![base_path.join("static"), base_path.join("content")]; + if let Some(t) = theme { + search_paths.push(base_path.join("themes").join(t).join("static")); + } let actual_path = if path.starts_with("@/") { Cow::Owned(path.replace("@/", "content/")) } else { diff --git a/components/templates/src/global_fns/images.rs b/components/templates/src/global_fns/images.rs index 395ffa5f..6c5392b4 100644 --- a/components/templates/src/global_fns/images.rs +++ b/components/templates/src/global_fns/images.rs @@ -10,12 +10,17 @@ use crate::global_fns::helpers::search_for_file; pub struct ResizeImage { /// The base path of the Zola site base_path: PathBuf, + theme: Option, imageproc: Arc>, } impl ResizeImage { - pub fn new(base_path: PathBuf, imageproc: Arc>) -> Self { - Self { base_path, imageproc } + pub fn new( + base_path: PathBuf, + imageproc: Arc>, + theme: Option, + ) -> Self { + Self { base_path, imageproc, theme } } } @@ -55,7 +60,7 @@ impl TeraFn for ResizeImage { } let mut imageproc = self.imageproc.lock().unwrap(); - let (file_path, unified_path) = match search_for_file(&self.base_path, &path) + let (file_path, unified_path) = match search_for_file(&self.base_path, &path, &self.theme) .map_err(|e| format!("`resize_image`: {}", e))? { Some(f) => f, @@ -76,12 +81,13 @@ impl TeraFn for ResizeImage { pub struct GetImageMetadata { /// The base path of the Zola site base_path: PathBuf, + theme: Option, result_cache: Arc>>, } impl GetImageMetadata { - pub fn new(base_path: PathBuf) -> Self { - Self { base_path, result_cache: Arc::new(Mutex::new(HashMap::new())) } + pub fn new(base_path: PathBuf, theme: Option) -> Self { + Self { base_path, result_cache: Arc::new(Mutex::new(HashMap::new())), theme } } } @@ -99,7 +105,7 @@ impl TeraFn for GetImageMetadata { ) .unwrap_or(false); - let (src_path, unified_path) = match search_for_file(&self.base_path, &path) + let (src_path, unified_path) = match search_for_file(&self.base_path, &path, &self.theme) .map_err(|e| format!("`get_image_metadata`: {}", e))? { Some((f, p)) => (f, p), @@ -142,10 +148,16 @@ mod tests { let dir = tempdir().unwrap(); create_dir_all(dir.path().join("content").join("gallery")).unwrap(); create_dir_all(dir.path().join("static")).unwrap(); + create_dir_all(dir.path().join("themes").join("name").join("static")).unwrap(); copy("gutenberg.jpg", dir.path().join("content").join("gutenberg.jpg")).unwrap(); copy("gutenberg.jpg", dir.path().join("content").join("gallery").join("asset.jpg")) .unwrap(); copy("gutenberg.jpg", dir.path().join("static").join("gutenberg.jpg")).unwrap(); + copy( + "gutenberg.jpg", + dir.path().join("themes").join("name").join("static").join("in-theme.jpg"), + ) + .unwrap(); dir } @@ -156,7 +168,11 @@ mod tests { let dir = create_dir_with_image(); let imageproc = imageproc::Processor::new(dir.path().to_path_buf(), &Config::default()); - let static_fn = ResizeImage::new(dir.path().to_path_buf(), Arc::new(Mutex::new(imageproc))); + let static_fn = ResizeImage::new( + dir.path().to_path_buf(), + Arc::new(Mutex::new(imageproc)), + Some("name".to_owned()), + ); let mut args = HashMap::new(); args.insert("height".to_string(), to_value(40).unwrap()); args.insert("width".to_string(), to_value(40).unwrap()); @@ -212,6 +228,17 @@ mod tests { data["url"], to_value("http://a-website.com/processed_images/6296a3c153f701be00.jpg").unwrap() ); + + // 6. Looking up a file in the theme + args.insert("path".to_string(), to_value("in-theme.jpg").unwrap()); + assert_eq!( + data["static_path"], + to_value(&format!("{}", static_path.join("6296a3c153f701be00.jpg").display())).unwrap() + ); + assert_eq!( + data["url"], + to_value("http://a-website.com/processed_images/6296a3c153f701be00.jpg").unwrap() + ); } // TODO: consider https://github.com/getzola/zola/issues/1161 @@ -219,7 +246,7 @@ mod tests { fn can_get_image_metadata() { let dir = create_dir_with_image(); - let static_fn = GetImageMetadata::new(dir.path().to_path_buf()); + let static_fn = GetImageMetadata::new(dir.path().to_path_buf(), None); // Let's test a few scenarii let mut args = HashMap::new(); diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index bb6f238c..d3f17d49 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -88,13 +88,14 @@ impl DataSource { path_arg: Option, url_arg: Option, base_path: &Path, + theme: &Option, ) -> Result> { if path_arg.is_some() && url_arg.is_some() { return Err(GET_DATA_ARGUMENT_ERROR_MESSAGE.into()); } if let Some(path) = path_arg { - return match search_for_file(&base_path, &path) + return match search_for_file(&base_path, &path, &theme) .map_err(|e| format!("`load_data`: {}", e))? { Some((f, _)) => Ok(Some(DataSource::Path(f))), @@ -165,11 +166,12 @@ fn get_output_format_from_args( #[derive(Debug)] pub struct LoadData { base_path: PathBuf, + theme: Option, client: Arc>, result_cache: Arc>>, } impl LoadData { - pub fn new(base_path: PathBuf) -> Self { + pub fn new(base_path: PathBuf, theme: Option) -> Self { let client = Arc::new(Mutex::new( Client::builder() .user_agent(concat!(env!("CARGO_PKG_NAME"), "/", env!("CARGO_PKG_VERSION"))) @@ -177,7 +179,7 @@ impl LoadData { .expect("reqwest client build"), )); let result_cache = Arc::new(Mutex::new(HashMap::new())); - Self { base_path, client, result_cache } + Self { base_path, client, result_cache, theme } } } @@ -221,26 +223,28 @@ impl TeraFn for LoadData { }; // If the file doesn't exist, source is None - let data_source = - match (DataSource::from_args(path_arg.clone(), url_arg, &self.base_path), required) { - // If the file was not required, return a Null value to the template - (Ok(None), false) | (Err(_), false) => { - return Ok(Value::Null); - } - (Err(e), true) => { - return Err(e); - } - // If the file was required, error - (Ok(None), true) => { - // source is None only with path_arg (not URL), so path_arg is safely unwrap - return Err(format!( - "`load_data`: {} doesn't exist", - &self.base_path.join(path_arg.unwrap()).display() - ) - .into()); - } - (Ok(Some(data_source)), _) => data_source, - }; + let data_source = match ( + DataSource::from_args(path_arg.clone(), url_arg, &self.base_path, &self.theme), + required, + ) { + // If the file was not required, return a Null value to the template + (Ok(None), false) | (Err(_), false) => { + return Ok(Value::Null); + } + (Err(e), true) => { + return Err(e); + } + // If the file was required, error + (Ok(None), true) => { + // source is None only with path_arg (not URL), so path_arg is safely unwrap + return Err(format!( + "`load_data`: {} doesn't exist", + &self.base_path.join(path_arg.unwrap()).display() + ) + .into()); + } + (Ok(Some(data_source)), _) => data_source, + }; let file_format = get_output_format_from_args(format_arg, &data_source)?; let cache_key = @@ -474,7 +478,7 @@ mod tests { #[test] fn fails_illegal_method_parameter() { - let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils")), None); let mut args = HashMap::new(); args.insert("url".to_string(), to_value("https://example.com").unwrap()); args.insert("format".to_string(), to_value("plain").unwrap()); @@ -501,7 +505,7 @@ mod tests { let url = format!("{}{}", mockito::server_url(), "/kr1zdgbm4y"); - let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils")), None); let mut args = HashMap::new(); args.insert("url".to_string(), to_value(url).unwrap()); args.insert("format".to_string(), to_value("plain").unwrap()); @@ -529,7 +533,7 @@ mod tests { let url = format!("{}{}", mockito::server_url(), "/kr1zdgbm4yw"); - let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils")), None); let mut args = HashMap::new(); args.insert("url".to_string(), to_value(url).unwrap()); args.insert("format".to_string(), to_value("plain").unwrap()); @@ -558,7 +562,7 @@ mod tests { let url = format!("{}{}", mockito::server_url(), "/kr1zdgbm4y"); - let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils")), None); let mut args = HashMap::new(); args.insert("url".to_string(), to_value(url).unwrap()); args.insert("format".to_string(), to_value("plain").unwrap()); @@ -574,7 +578,7 @@ mod tests { #[test] fn fails_when_missing_file() { - let static_fn = LoadData::new(PathBuf::from("../utils")); + let static_fn = LoadData::new(PathBuf::from("../utils"), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("../../../READMEE.md").unwrap()); let result = static_fn.call(&args); @@ -584,7 +588,7 @@ mod tests { #[test] fn doesnt_fail_when_missing_file_is_not_required() { - let static_fn = LoadData::new(PathBuf::from("../utils")); + let static_fn = LoadData::new(PathBuf::from("../utils"), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("../../../READMEE.md").unwrap()); args.insert("required".to_string(), to_value(false).unwrap()); @@ -603,7 +607,7 @@ mod tests { .unwrap(); copy(get_test_file("test.css"), dir.path().join("static").join("test.css")).unwrap(); - let static_fn = LoadData::new(dir.path().to_path_buf()); + let static_fn = LoadData::new(dir.path().to_path_buf(), None); let mut args = HashMap::new(); let val = if cfg!(windows) { ".hello {}\r\n" } else { ".hello {}\n" }; @@ -630,7 +634,7 @@ mod tests { #[test] fn cannot_load_outside_base_dir() { - let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils")), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("../../README.md").unwrap()); args.insert("format".to_string(), to_value("plain").unwrap()); @@ -707,7 +711,7 @@ mod tests { .create(); let url = format!("{}{}", mockito::server_url(), "/zpydpkjj67"); - let static_fn = LoadData::new(PathBuf::new()); + let static_fn = LoadData::new(PathBuf::new(), None); let mut args = HashMap::new(); args.insert("url".to_string(), to_value(&url).unwrap()); args.insert("format".to_string(), to_value("json").unwrap()); @@ -724,7 +728,7 @@ mod tests { .create(); let url = format!("{}{}", mockito::server_url(), "/aazeow0kog"); - let static_fn = LoadData::new(PathBuf::new()); + let static_fn = LoadData::new(PathBuf::new(), None); let mut args = HashMap::new(); args.insert("url".to_string(), to_value(&url).unwrap()); args.insert("format".to_string(), to_value("json").unwrap()); @@ -745,7 +749,7 @@ mod tests { .create(); let url = format!("{}{}", mockito::server_url(), "/aazeow0kog"); - let static_fn = LoadData::new(PathBuf::new()); + let static_fn = LoadData::new(PathBuf::new(), None); let mut args = HashMap::new(); args.insert("url".to_string(), to_value(&url).unwrap()); args.insert("format".to_string(), to_value("json").unwrap()); @@ -772,7 +776,7 @@ mod tests { .create(); let url = format!("{}{}", mockito::server_url(), "/chu8aizahBiy"); - let static_fn = LoadData::new(PathBuf::new()); + let static_fn = LoadData::new(PathBuf::new(), None); let mut args = HashMap::new(); args.insert("url".to_string(), to_value(&url).unwrap()); args.insert("format".to_string(), to_value("json").unwrap()); @@ -782,7 +786,7 @@ mod tests { #[test] fn can_load_toml() { - let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); + let static_fn = LoadData::new(PathBuf::from("../utils/test-files"), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.toml").unwrap()); let result = static_fn.call(&args.clone()).unwrap(); @@ -802,7 +806,7 @@ mod tests { #[test] fn unknown_extension_defaults_to_plain() { - let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); + let static_fn = LoadData::new(PathBuf::from("../utils/test-files"), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.css").unwrap()); let result = static_fn.call(&args.clone()).unwrap(); @@ -817,7 +821,7 @@ mod tests { #[test] fn can_override_known_extension_with_format() { - let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); + let static_fn = LoadData::new(PathBuf::from("../utils/test-files"), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.csv").unwrap()); args.insert("format".to_string(), to_value("plain").unwrap()); @@ -835,7 +839,7 @@ mod tests { #[test] fn will_use_format_on_unknown_extension() { - let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); + let static_fn = LoadData::new(PathBuf::from("../utils/test-files"), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.css").unwrap()); args.insert("format".to_string(), to_value("plain").unwrap()); @@ -850,7 +854,7 @@ mod tests { #[test] fn can_load_csv() { - let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); + let static_fn = LoadData::new(PathBuf::from("../utils/test-files"), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.csv").unwrap()); let result = static_fn.call(&args.clone()).unwrap(); @@ -870,7 +874,7 @@ mod tests { // Test points to bad csv file with uneven row lengths #[test] fn bad_csv_should_result_in_error() { - let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); + let static_fn = LoadData::new(PathBuf::from("../utils/test-files"), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("uneven_rows.csv").unwrap()); let result = static_fn.call(&args.clone()); @@ -890,7 +894,7 @@ mod tests { #[test] fn bad_csv_should_result_in_error_even_when_not_required() { - let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); + let static_fn = LoadData::new(PathBuf::from("../utils/test-files"), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("uneven_rows.csv").unwrap()); args.insert("required".to_string(), to_value(false).unwrap()); @@ -911,7 +915,7 @@ mod tests { #[test] fn can_load_json() { - let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); + let static_fn = LoadData::new(PathBuf::from("../utils/test-files"), None); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.json").unwrap()); let result = static_fn.call(&args.clone()).unwrap(); @@ -937,7 +941,7 @@ mod tests { .create(); let url = format!("{}{}", mockito::server_url(), "/kr1zdgbm4y3"); - let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils")), None); let mut args = HashMap::new(); args.insert("url".to_string(), to_value(&url).unwrap()); args.insert("format".to_string(), to_value("plain").unwrap()); @@ -969,7 +973,7 @@ mod tests { .create(); let url = format!("{}{}", mockito::server_url(), "/kr1zdgbm4y2"); - let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + let static_fn = LoadData::new(PathBuf::from(PathBuf::from("../utils")), None); let mut args = HashMap::new(); args.insert("url".to_string(), to_value(&url).unwrap()); args.insert("format".to_string(), to_value("plain").unwrap()); diff --git a/docs/content/documentation/templates/overview.md b/docs/content/documentation/templates/overview.md index e886c5bd..6223b7bf 100644 --- a/docs/content/documentation/templates/overview.md +++ b/docs/content/documentation/templates/overview.md @@ -93,10 +93,11 @@ logic applies. 1. The base directory is the Zola root directory, where the `config.toml` is 2. For the given path: if it starts with `@/`, replace that with `content/` instead and trim any leading `/` -3. Search in the following 3 locations in this order, returning the first where the file exists: +3. Search in the following 3 or 4 locations in this order, returning the first where the file exists: a. $base_directory + $path b. $base_directory + "static/" + $path c. $base_directory + "content/" + $path + d. $base_directory + "themes" + $theme + "static/" + $path only if using a theme In practice this means that `@/some/image.jpg`, `/content/some/image.jpg` and `content/some/image.jpg` will point to the same thing. diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index 8c06b257..d40fbe7e 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -288,7 +288,7 @@ pub fn serve( // Stop right there if we can't bind to the address let bind_address: SocketAddrV4 = match address.parse() { Ok(a) => a, - Err(_) => return Err(format!("Invalid address: {}.", address).into()) + Err(_) => return Err(format!("Invalid address: {}.", address).into()), }; if (TcpListener::bind(&bind_address)).is_err() { return Err(format!("Cannot start server on address {}.", address).into()); From 0a7692ad85152a870fe5ed5cc2c24d681a1c7f72 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 24 Jun 2021 23:28:48 +0200 Subject: [PATCH 100/113] Exclude self from translation list for page/section Closes #1410 --- components/library/src/content/ser.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/components/library/src/content/ser.rs b/components/library/src/content/ser.rs index 83ab4964..53a2d571 100644 --- a/components/library/src/content/ser.rs +++ b/components/library/src/content/ser.rs @@ -33,6 +33,9 @@ impl<'a> TranslatedContent<'a> { .iter() { let other = library.get_section_by_key(*key); + if other.permalink == section.permalink { + continue; + } translations.push(TranslatedContent { lang: &other.lang, permalink: &other.permalink, @@ -51,6 +54,9 @@ impl<'a> TranslatedContent<'a> { library.translations.get(&page.file.canonical).or(Some(&HashSet::new())).unwrap().iter() { let other = library.get_page_by_key(*key); + if other.permalink == page.permalink { + continue; + } translations.push(TranslatedContent { lang: &other.lang, permalink: &other.permalink, From 93900fb6232f6d3e944e7ab5758824ca8ce36554 Mon Sep 17 00:00:00 2001 From: Marshall Bowers Date: Fri, 25 Jun 2021 04:07:52 -0400 Subject: [PATCH 101/113] Add `num_format` filter (#1460) * Add `num_format` filter for displaying formatted numbers * Register the filter * Update docs * Make `locale` argument required * Revert "Make `locale` argument required" This reverts commit 9cdbf285915f0257d1b9157572588b0ce6698a44. * Pull the default locale from the site config * Add note about defaults to the docs * Add missing borrow --- Cargo.lock | 28 ++++++- components/site/src/tpls.rs | 4 + components/templates/Cargo.toml | 1 + components/templates/src/filters.rs | 77 ++++++++++++++++++- .../documentation/templates/overview.md | 16 ++++ 5 files changed, 123 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index bcaef05f..c7713075 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -57,6 +57,15 @@ version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "70033777eb8b5124a81a1889416543dddef2de240019b674c81285a2635a7e1e" +[[package]] +name = "arrayvec" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd9fd44efafa8690358b7408d253adf110036b88f55672a933f01d616ad9b1b9" +dependencies = [ + "nodrop", +] + [[package]] name = "arrayvec" version = "0.5.2" @@ -1163,7 +1172,7 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6607c62aa161d23d17a9072cc5da0be67cdfc89d3afb1e8d9c842bebc2525ffe" dependencies = [ - "arrayvec", + "arrayvec 0.5.2", "bitflags", "cfg-if 1.0.0", "ryu", @@ -1533,6 +1542,12 @@ dependencies = [ "libc", ] +[[package]] +name = "nodrop" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb" + [[package]] name = "nom" version = "5.1.2" @@ -1627,6 +1642,16 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "num-format" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bafe4179722c2894288ee77a9f044f02811c86af699344c498b0840c698a2465" +dependencies = [ + "arrayvec 0.4.12", + "itoa", +] + [[package]] name = "num-integer" version = "0.1.44" @@ -2571,6 +2596,7 @@ dependencies = [ "library", "mockito", "nom-bibtex", + "num-format", "rendering", "reqwest", "serde", diff --git a/components/site/src/tpls.rs b/components/site/src/tpls.rs index f4daee70..7b4a1409 100644 --- a/components/site/src/tpls.rs +++ b/components/site/src/tpls.rs @@ -12,6 +12,10 @@ pub fn register_early_global_fns(site: &mut Site) -> TeraResult<()> { site.permalinks.clone(), )?, ); + site.tera.register_filter( + "num_format", + filters::NumFormatFilter::new(&site.config.default_language), + ); site.tera.register_function( "get_url", diff --git a/components/templates/Cargo.toml b/components/templates/Cargo.toml index da64f4a0..66260818 100644 --- a/components/templates/Cargo.toml +++ b/components/templates/Cargo.toml @@ -16,6 +16,7 @@ serde_derive = "1" sha2 = "0.9" url = "2" nom-bibtex = "0.3" +num-format = "0.4" errors = { path = "../errors" } utils = { path = "../utils" } diff --git a/components/templates/src/filters.rs b/components/templates/src/filters.rs index 0e465540..3595cde0 100644 --- a/components/templates/src/filters.rs +++ b/components/templates/src/filters.rs @@ -6,7 +6,10 @@ use std::path::PathBuf; use base64::{decode, encode}; use config::Config; use rendering::{render_content, RenderContext}; -use tera::{to_value, try_get_value, Filter as TeraFilter, Result as TeraResult, Tera, Value}; +use tera::{ + to_value, try_get_value, Error as TeraError, Filter as TeraFilter, Result as TeraResult, Tera, + Value, +}; use crate::load_tera; @@ -72,13 +75,43 @@ pub fn base64_decode( Ok(to_value(&String::from_utf8(decode(s.as_bytes()).unwrap()).unwrap()).unwrap()) } +#[derive(Debug)] +pub struct NumFormatFilter { + default_language: String, +} + +impl NumFormatFilter { + pub fn new>(default_language: S) -> Self { + Self { default_language: default_language.into() } + } +} + +impl TeraFilter for NumFormatFilter { + fn filter(&self, value: &Value, args: &HashMap) -> TeraResult { + use num_format::{Locale, ToFormattedString}; + + let num = try_get_value!("num_format", "value", i64, value); + let locale = match args.get("locale") { + Some(locale) => try_get_value!("num_format", "locale", String, locale), + None => self.default_language.clone(), + }; + let locale = Locale::from_name(&locale).map_err(|_| { + TeraError::msg(format!( + "Filter `num_format` was called with an invalid `locale` argument: `{}`.", + locale + )) + })?; + Ok(to_value(num.to_formatted_string(&locale)).unwrap()) + } +} + #[cfg(test)] mod tests { use std::{collections::HashMap, path::PathBuf}; use tera::{to_value, Filter}; - use super::{base64_decode, base64_encode, MarkdownFilter}; + use super::{base64_decode, base64_encode, MarkdownFilter, NumFormatFilter}; use config::Config; #[test] @@ -201,4 +234,44 @@ mod tests { assert_eq!(result.unwrap(), to_value(expected).unwrap()); } } + + #[test] + fn num_format_filter() { + let tests = vec![ + (100, "100"), + (1_000, "1,000"), + (10_000, "10,000"), + (100_000, "100,000"), + (1_000_000, "1,000,000"), + ]; + + for (input, expected) in tests { + let args = HashMap::new(); + let result = NumFormatFilter::new("en").filter(&to_value(input).unwrap(), &args); + let result = dbg!(result); + assert!(result.is_ok()); + assert_eq!(result.unwrap(), to_value(expected).unwrap()); + } + } + + #[test] + fn num_format_filter_with_locale() { + let tests = vec![ + ("en", 1_000_000, "1,000,000"), + ("en-IN", 1_000_000, "10,00,000"), + // Note: + // U+202F is the "NARROW NO-BREAK SPACE" code point. + // When displayed to the screen, it looks like a space. + ("fr", 1_000_000, "1\u{202f}000\u{202f}000"), + ]; + + for (locale, input, expected) in tests { + let mut args = HashMap::new(); + args.insert("locale".to_string(), to_value(locale).unwrap()); + let result = NumFormatFilter::new("en").filter(&to_value(input).unwrap(), &args); + let result = dbg!(result); + assert!(result.is_ok()); + assert_eq!(result.unwrap(), to_value(expected).unwrap()); + } + } } diff --git a/docs/content/documentation/templates/overview.md b/docs/content/documentation/templates/overview.md index 6223b7bf..79ae66de 100644 --- a/docs/content/documentation/templates/overview.md +++ b/docs/content/documentation/templates/overview.md @@ -81,6 +81,22 @@ Encode the variable to base64. ### base64_decode Decode the variable from base64. +### num_format +Format a number into its string representation. + +```jinja2 +{{ 1000000 | num_format }} + +``` + +By default this will format the number using the locale set by `config.default_language` in config.toml. + +To format a number for a specific locale, you can use the `locale` argument and pass the name of the desired locale: + +```jinja2 +{{ 1000000 | num_format(locale="en-IN") }} + +``` ## Built-in functions From 06bee578a07ea69b19722a2bfeebc9b950ffb8b4 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 25 Jun 2021 10:09:55 +0200 Subject: [PATCH 102/113] Revert "Exclude self from translation list for page/section" This reverts commit 0a7692ad85152a870fe5ed5cc2c24d681a1c7f72. --- components/library/src/content/ser.rs | 6 ------ 1 file changed, 6 deletions(-) diff --git a/components/library/src/content/ser.rs b/components/library/src/content/ser.rs index 53a2d571..83ab4964 100644 --- a/components/library/src/content/ser.rs +++ b/components/library/src/content/ser.rs @@ -33,9 +33,6 @@ impl<'a> TranslatedContent<'a> { .iter() { let other = library.get_section_by_key(*key); - if other.permalink == section.permalink { - continue; - } translations.push(TranslatedContent { lang: &other.lang, permalink: &other.permalink, @@ -54,9 +51,6 @@ impl<'a> TranslatedContent<'a> { library.translations.get(&page.file.canonical).or(Some(&HashSet::new())).unwrap().iter() { let other = library.get_page_by_key(*key); - if other.permalink == page.permalink { - continue; - } translations.push(TranslatedContent { lang: &other.lang, permalink: &other.permalink, From 3e1a9346043cd7fbc437a57e7a5179b33f452593 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 25 Jun 2021 10:12:05 +0200 Subject: [PATCH 103/113] Fix tests and add note about translations --- components/library/src/content/page.rs | 2 +- docs/content/documentation/templates/pages-sections.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 852156a4..7f04609f 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -567,7 +567,7 @@ And here's another. [^2] assert_eq!(page.file.parent, path.join("content").join("posts")); assert_eq!(page.slug, "with-assets"); assert_eq!(page.assets.len(), 3); - assert!(section.serialized_assets[0].starts_with('/')); + assert!(page.serialized_assets[0].starts_with('/')); assert_eq!(page.permalink, "http://a-website.com/posts/with-assets/"); } diff --git a/docs/content/documentation/templates/pages-sections.md b/docs/content/documentation/templates/pages-sections.md index ec550ed5..866caf06 100644 --- a/docs/content/documentation/templates/pages-sections.md +++ b/docs/content/documentation/templates/pages-sections.md @@ -57,7 +57,7 @@ ancestors: Array; relative_path: String; // The language for the page if there is one. Default to the config `default_language` lang: String; -// Information about all the available languages for that content +// Information about all the available languages for that content, including the current page translations: Array; ``` From ee85300303d674e48326cd23f14b6e6b0c2af737 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 29 Jun 2021 22:24:33 +0200 Subject: [PATCH 104/113] Mention load_data only works with utf-8 Closes #1539 --- Cargo.lock | 26 +++++++++---------- .../documentation/templates/overview.md | 2 +- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c7713075..d6b4ea83 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -864,9 +864,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.9.1" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7afe4a420e3fe79967a00898cc1f4db7c8a49a9333a29f8a4bd76a253d5cd04" +checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" [[package]] name = "heck" @@ -1048,12 +1048,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.6.2" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "824845a0bf897a9042383849b02c1bc219c2383772efcd5c6f9766fa4b81aef3" +checksum = "bc633605454125dec4b66843673f01c7df2b89479b32e0ed634e43a91cff62a5" dependencies = [ "autocfg", - "hashbrown 0.9.1", + "hashbrown 0.11.2", ] [[package]] @@ -1857,9 +1857,9 @@ dependencies = [ [[package]] name = "pin-project-lite" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc0e1f259c92177c30a4c9d177246edd0a3568b25756a977d0632cf8fa37e905" +checksum = "8d31d11c69a6b52a174b42bdc0c30e5e11670f90788b2c471c31c1d17d449443" [[package]] name = "pin-utils" @@ -2623,9 +2623,9 @@ dependencies = [ [[package]] name = "tera" -version = "1.11.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03b6d9027cef72979d3436123f940cb372d5db2ae8afd328c482e8da7ff23aca" +checksum = "7571541dff0e57eaa2e931249f0d7489eb2b24b6b105546f8c2f1a47f15aaa3a" dependencies = [ "chrono", "chrono-tz", @@ -2654,9 +2654,9 @@ dependencies = [ [[package]] name = "test-case" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "956044ef122917dde830c19dec5f76d0670329fde4104836d62ebcb14f4865f1" +checksum = "3b114ece25254e97bf48dd4bfc2a12bad0647adacfe4cae1247a9ca6ad302cec" dependencies = [ "cfg-if 1.0.0", "proc-macro2", @@ -3247,9 +3247,9 @@ dependencies = [ [[package]] name = "xmlparser" -version = "0.13.4" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a6276d307d1ce52a96deb8729b78ae34ee25bf9c4a7bd6ecb7885dc54f25b25" +checksum = "114ba2b24d2167ef6d67d7d04c8cc86522b87f490025f39f0303b7db5bf5e3d8" [[package]] name = "yaml-rust" diff --git a/docs/content/documentation/templates/overview.md b/docs/content/documentation/templates/overview.md index 79ae66de..2b2521c1 100644 --- a/docs/content/documentation/templates/overview.md +++ b/docs/content/documentation/templates/overview.md @@ -248,7 +248,7 @@ The method returns a map containing `width`, `height` and `format` (the lowercas ``` ### `load_data` -Loads data from a file or URL. Supported file types include *toml*, *json*, *csv* and *bibtex*. +Loads data from a file or URL. Supported file types include *toml*, *json*, *csv* and *bibtex* and only supports UTF-8 encoding. Any other file type will be loaded as plain text. The `path` argument specifies the path to the data file, according to the [File Searching Logic](@/documentation/templates/overview.md#file-searching-logic). From 96e28ddd5cde53fb3d2020027d0cf15eef8a4a6f Mon Sep 17 00:00:00 2001 From: Avinash Sonawane Date: Wed, 7 Jul 2021 09:08:37 +0000 Subject: [PATCH 105/113] Docs: Fix resize_image and gallery shortcodes (#1543) --- .../content/image-processing/index.md | 19 +++++++++++-------- docs/templates/shortcodes/gallery.html | 7 +++++-- docs/templates/shortcodes/resize_image.html | 3 ++- 3 files changed, 18 insertions(+), 11 deletions(-) diff --git a/docs/content/documentation/content/image-processing/index.md b/docs/content/documentation/content/image-processing/index.md index 4936f261..3b702474 100644 --- a/docs/content/documentation/content/image-processing/index.md +++ b/docs/content/documentation/content/image-processing/index.md @@ -127,7 +127,8 @@ but it can be used in Markdown using [shortcodes](@/documentation/content/shortc The examples above were generated using a shortcode file named `resize_image.html` with this content: ```jinja2 - +{% set image = resize_image(path=path, width=width, height=height, op=op) %} + ``` ## Creating picture galleries @@ -143,14 +144,16 @@ This can be used in shortcodes. For example, we can create a very simple html-on picture gallery with the following shortcode named `gallery.html`: ```jinja2 -{% for asset in page.assets %} - {% if asset is matching("[.](jpg|png)$") %} - - +

    ``` As you can notice, we didn't specify an `op` argument, which means that it'll default to `"fill"`. Similarly, diff --git a/docs/templates/shortcodes/gallery.html b/docs/templates/shortcodes/gallery.html index 91a75f48..d171d849 100644 --- a/docs/templates/shortcodes/gallery.html +++ b/docs/templates/shortcodes/gallery.html @@ -1,7 +1,10 @@ +
    {% for asset in page.assets -%} {%- if asset is matching("[.](jpg|png)$") -%} - - + {% set image = resize_image(path=asset, width=240, height=180) %} + + {%- endif %} {%- endfor %} +
    diff --git a/docs/templates/shortcodes/resize_image.html b/docs/templates/shortcodes/resize_image.html index f33bc3b5..c225d2e2 100644 --- a/docs/templates/shortcodes/resize_image.html +++ b/docs/templates/shortcodes/resize_image.html @@ -1 +1,2 @@ - +{% set image = resize_image(path=path, width=width, height=height, op=op) %} + From 6f22132b8da3c6de8fcd3cfb6f61872a21476756 Mon Sep 17 00:00:00 2001 From: Vojtech Kral Date: Wed, 7 Jul 2021 11:15:37 +0200 Subject: [PATCH 106/113] imgproc: Don't upscale images in the Fit op, fix a bug in comment in #1542 (#1545) * imgproc: Don't upscale images in the Fit op, fix #1542 * imgproc: Remove FIXMEs that have been addressed --- components/imageproc/src/lib.rs | 7 +++++-- components/imageproc/tests/resize_image.rs | 5 +++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/components/imageproc/src/lib.rs b/components/imageproc/src/lib.rs index 4d6328a4..fedd98ac 100644 --- a/components/imageproc/src/lib.rs +++ b/components/imageproc/src/lib.rs @@ -139,6 +139,10 @@ impl ResizeOp { res.resize((w as u32, h)) } Fit(w, h) => { + if orig_w <= w && orig_h <= h { + return res; // ie. no-op + } + let orig_w_h = orig_w as u64 * h as u64; let orig_h_w = orig_h as u64 * w as u64; @@ -220,7 +224,7 @@ impl Format { } "jpeg" | "jpg" => Ok(Jpeg(jpg_quality)), "png" => Ok(Png), - "webp" => Ok(WebP(quality)), // FIXME: this is undoc'd + "webp" => Ok(WebP(quality)), _ => Err(format!("Invalid image format: {}", format).into()), } } @@ -342,7 +346,6 @@ impl ImageOp { } } -// FIXME: Explain this in the doc #[derive(Debug, Serialize, Deserialize, PartialEq, Eq)] pub struct EnqueueResponse { /// The final URL for that asset diff --git a/components/imageproc/tests/resize_image.rs b/components/imageproc/tests/resize_image.rs index 0e0e8f37..7fbfe21f 100644 --- a/components/imageproc/tests/resize_image.rs +++ b/components/imageproc/tests/resize_image.rs @@ -95,6 +95,11 @@ fn resize_image_fit2() { image_op_test("jpg.jpg", "fit", Some(160), Some(180), "auto", "jpg", 142, 180, 300, 380); } +#[test] +fn resize_image_fit3() { + image_op_test("jpg.jpg", "fit", Some(400), Some(400), "auto", "jpg", 300, 380, 300, 380); +} + #[test] fn resize_image_fill1() { image_op_test("jpg.jpg", "fill", Some(100), Some(200), "auto", "jpg", 100, 200, 300, 380); From 98b110ba14aa20b117df17643aad61bb72240bd5 Mon Sep 17 00:00:00 2001 From: David Ed Mellum Date: Wed, 7 Jul 2021 19:44:10 +0200 Subject: [PATCH 107/113] Add support for Norwegian search (#1547) --- components/search/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/search/Cargo.toml b/components/search/Cargo.toml index 04326df0..bb01dcc9 100644 --- a/components/search/Cargo.toml +++ b/components/search/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Vincent Prouillet "] edition = "2018" [dependencies] -elasticlunr-rs = {version = "2", default-features = false, features = ["da", "de", "du", "es", "fi", "fr", "it", "pt", "ro", "ru", "sv", "tr"] } +elasticlunr-rs = {version = "2", default-features = false, features = ["da", "no", "de", "du", "es", "fi", "fr", "it", "pt", "ro", "ru", "sv", "tr"] } ammonia = "3" lazy_static = "1" From 57705aa82eaf10df72ad9495dcb56f3e6fbb8890 Mon Sep 17 00:00:00 2001 From: Bert JW Regeer Date: Fri, 9 Jul 2021 23:43:22 -0700 Subject: [PATCH 108/113] Add permalink to Taxonomy (#1516) * Add permalink to Taxonomy * Document permalink addition to TaxonomyConfig --- components/library/src/pagination/mod.rs | 2 ++ components/library/src/taxonomies/mod.rs | 18 ++++++++++++++++-- components/templates/src/global_fns/content.rs | 4 ++++ .../documentation/templates/taxonomies.md | 1 + 4 files changed, 23 insertions(+), 2 deletions(-) diff --git a/components/library/src/pagination/mod.rs b/components/library/src/pagination/mod.rs index e1bf525d..16f017a2 100644 --- a/components/library/src/pagination/mod.rs +++ b/components/library/src/pagination/mod.rs @@ -422,6 +422,7 @@ mod tests { kind: taxonomy_def, lang: "en".to_owned(), slug: "tags".to_string(), + permalink: "/tags/".to_string(), items: vec![taxonomy_item.clone()], }; let paginator = Paginator::from_taxonomy(&taxonomy, &taxonomy_item, &library); @@ -457,6 +458,7 @@ mod tests { kind: taxonomy_def, lang: "en".to_owned(), slug: "some-tags".to_string(), + permalink: "/some-tags/".to_string(), items: vec![taxonomy_item.clone()], }; let paginator = Paginator::from_taxonomy(&taxonomy, &taxonomy_item, &library); diff --git a/components/library/src/taxonomies/mod.rs b/components/library/src/taxonomies/mod.rs index 3f34e934..c919bc3d 100644 --- a/components/library/src/taxonomies/mod.rs +++ b/components/library/src/taxonomies/mod.rs @@ -108,6 +108,7 @@ impl PartialEq for TaxonomyItem { pub struct SerializedTaxonomy<'a> { kind: &'a TaxonomyConfig, lang: &'a str, + permalink: &'a str, items: Vec>, } @@ -115,7 +116,12 @@ impl<'a> SerializedTaxonomy<'a> { pub fn from_taxonomy(taxonomy: &'a Taxonomy, library: &'a Library) -> Self { let items: Vec = taxonomy.items.iter().map(|i| SerializedTaxonomyItem::from_item(i, library)).collect(); - SerializedTaxonomy { kind: &taxonomy.kind, lang: &taxonomy.lang, items } + SerializedTaxonomy { + kind: &taxonomy.kind, + lang: &taxonomy.lang, + permalink: &taxonomy.permalink, + items, + } } } @@ -125,6 +131,7 @@ pub struct Taxonomy { pub kind: TaxonomyConfig, pub lang: String, pub slug: String, + pub permalink: String, // this vec is sorted by the count of item pub items: Vec, } @@ -159,7 +166,14 @@ impl Taxonomy { false } }); - Taxonomy { kind, slug, lang: lang.to_owned(), items: sorted_items } + let path = if lang != config.default_language { + format!("/{}/{}/", lang, slug) + } else { + format!("/{}/", slug) + }; + let permalink = config.make_permalink(&path); + + Taxonomy { kind, slug, lang: lang.to_owned(), permalink, items: sorted_items } } pub fn len(&self) -> usize { diff --git a/components/templates/src/global_fns/content.rs b/components/templates/src/global_fns/content.rs index 688465a0..5ae1f3ca 100644 --- a/components/templates/src/global_fns/content.rs +++ b/components/templates/src/global_fns/content.rs @@ -202,12 +202,14 @@ mod tests { kind: taxo_config, lang: config.default_language.clone(), slug: "tags".to_string(), + permalink: "/tags/".to_string(), items: vec![tag], }; let tags_fr = Taxonomy { kind: taxo_config_fr, lang: "fr".to_owned(), slug: "tags".to_string(), + permalink: "/fr/tags/".to_string(), items: vec![tag_fr], }; @@ -278,12 +280,14 @@ mod tests { kind: taxo_config, lang: config.default_language.clone(), slug: "tags".to_string(), + permalink: "/tags/".to_string(), items: vec![tag], }; let tags_fr = Taxonomy { kind: taxo_config_fr, lang: "fr".to_owned(), slug: "tags".to_string(), + permalink: "/fr/tags/".to_string(), items: vec![tag_fr], }; diff --git a/docs/content/documentation/templates/taxonomies.md b/docs/content/documentation/templates/taxonomies.md index e8e41536..c8302877 100644 --- a/docs/content/documentation/templates/taxonomies.md +++ b/docs/content/documentation/templates/taxonomies.md @@ -26,6 +26,7 @@ paginate_by: Number?; paginate_path: String?; feed: Bool; lang: String; +permalink: String; ``` From 4a87689cfb226a26f3dde672098714b3292a8fca Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 10 Jul 2021 08:49:44 +0200 Subject: [PATCH 109/113] Add class based syntax higlighting + line numbers (#1531) * Add class based syntax higlighting + line numbers * Use fork of syntect for now * Fix tests * Fix diff background on inline highlighter Co-authored-by: evan-brass --- .gitignore | 1 + Cargo.lock | 5 +- components/config/Cargo.toml | 3 +- components/config/src/config/languages.rs | 4 + components/config/src/config/markup.rs | 20 +- components/config/src/config/mod.rs | 15 +- components/config/src/highlighting.rs | 74 ++++-- components/errors/Cargo.toml | 3 +- components/rendering/Cargo.toml | 3 +- .../src/{markdown => codeblock}/fence.rs | 55 ++-- .../rendering/src/codeblock/highlight.rs | 226 +++++++++++++++++ components/rendering/src/codeblock/mod.rs | 186 ++++++++++++++ components/rendering/src/lib.rs | 1 + components/rendering/src/markdown.rs | 108 ++------ .../rendering/src/markdown/codeblock.rs | 238 ------------------ .../rendering/tests/codeblock_hide_lines.rs | 8 +- .../rendering/tests/codeblock_hl_lines.rs | 62 +++-- .../rendering/tests/codeblock_linenos.rs | 97 +++++++ components/rendering/tests/markdown.rs | 6 +- components/site/src/lib.rs | 18 +- components/templates/src/filters.rs | 2 +- docs/config.toml | 5 + .../content/syntax-highlighting.md | 149 ++++++++++- docs/sass/_base.scss | 20 ++ docs/sass/site.scss | 3 + 25 files changed, 907 insertions(+), 405 deletions(-) rename components/rendering/src/{markdown => codeblock}/fence.rs (65%) create mode 100644 components/rendering/src/codeblock/highlight.rs create mode 100644 components/rendering/src/codeblock/mod.rs delete mode 100644 components/rendering/src/markdown/codeblock.rs create mode 100644 components/rendering/tests/codeblock_linenos.rs diff --git a/.gitignore b/.gitignore index 4d71ae82..6a3a0eca 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ target test_site/public test_site_i18n/public docs/public +docs/out small-blog medium-blog diff --git a/Cargo.lock b/Cargo.lock index d6b4ea83..5ddfeba7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2549,9 +2549,8 @@ dependencies = [ [[package]] name = "syntect" -version = "4.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bfac2b23b4d049dc9a89353b4e06bbc85a8f42020cccbe5409a115cf19031e5" +version = "5.0.0" +source = "git+https://github.com/Keats/syntect.git?branch=scopestack#6b36f5eb406d57e57ddb6eb51df3a5e36e52c955" dependencies = [ "bincode", "bitflags", diff --git a/components/config/Cargo.toml b/components/config/Cargo.toml index 97589409..d55ef73f 100644 --- a/components/config/Cargo.toml +++ b/components/config/Cargo.toml @@ -12,7 +12,8 @@ serde_derive = "1" chrono = "0.4" globset = "0.4" lazy_static = "1" -syntect = "4.1" +# TODO: go back to version 4/5 once https://github.com/trishume/syntect/pull/337 is merged +syntect = { git = "https://github.com/Keats/syntect.git", branch = "scopestack" } unic-langid = "0.9" errors = { path = "../errors" } diff --git a/components/config/src/config/languages.rs b/components/config/src/config/languages.rs index b67ceaca..9c532b4f 100644 --- a/components/config/src/config/languages.rs +++ b/components/config/src/config/languages.rs @@ -16,6 +16,9 @@ pub struct LanguageOptions { pub description: Option, /// Whether to generate a feed for that language, defaults to `false` pub generate_feed: bool, + /// The filename to use for feeds. Used to find the template, too. + /// Defaults to "atom.xml", with "rss.xml" also having a template provided out of the box. + pub feed_filename: String, pub taxonomies: Vec, /// Whether to generate search index for that language, defaults to `false` pub build_search_index: bool, @@ -34,6 +37,7 @@ impl Default for LanguageOptions { title: None, description: None, generate_feed: false, + feed_filename: String::new(), build_search_index: false, taxonomies: Vec::new(), search: search::Search::default(), diff --git a/components/config/src/config/markup.rs b/components/config/src/config/markup.rs index bb6229ee..b6fa0e2d 100644 --- a/components/config/src/config/markup.rs +++ b/components/config/src/config/markup.rs @@ -7,6 +7,21 @@ use errors::Result; pub const DEFAULT_HIGHLIGHT_THEME: &str = "base16-ocean-dark"; +#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)] +#[serde(default)] +pub struct ThemeCss { + /// Which theme are we generating the CSS from + pub theme: String, + /// In which file are we going to output the CSS + pub filename: String, +} + +impl Default for ThemeCss { + fn default() -> ThemeCss { + ThemeCss { theme: String::new(), filename: String::new() } + } +} + #[derive(Clone, Debug, Serialize, Deserialize)] #[serde(default)] pub struct Markdown { @@ -15,6 +30,8 @@ pub struct Markdown { /// Which themes to use for code highlighting. See Readme for supported themes /// Defaults to "base16-ocean-dark" pub highlight_theme: String, + /// Generate CSS files for Themes out of syntect + pub highlight_themes_css: Vec, /// Whether to render emoji aliases (e.g.: :smile: => 😄) in the markdown files pub render_emoji: bool, /// Whether external links are to be opened in a new tab @@ -87,12 +104,13 @@ impl Default for Markdown { Markdown { highlight_code: false, highlight_theme: DEFAULT_HIGHLIGHT_THEME.to_owned(), + highlight_themes_css: Vec::new(), render_emoji: false, external_links_target_blank: false, external_links_no_follow: false, external_links_no_referrer: false, smart_punctuation: false, - extra_syntaxes: vec![], + extra_syntaxes: Vec::new(), extra_syntax_set: None, } } diff --git a/components/config/src/config/mod.rs b/components/config/src/config/mod.rs index 19971e68..19faa036 100644 --- a/components/config/src/config/mod.rs +++ b/components/config/src/config/mod.rs @@ -98,6 +98,7 @@ pub struct SerializedConfig<'a> { description: &'a Option, languages: HashMap<&'a String, &'a languages::LanguageOptions>, generate_feed: bool, + feed_filename: &'a str, taxonomies: &'a [taxonomies::Taxonomy], build_search_index: bool, extra: &'a HashMap, @@ -116,11 +117,13 @@ impl Config { bail!("A base URL is required in config.toml with key `base_url`"); } - if !THEME_SET.themes.contains_key(&config.markdown.highlight_theme) { - bail!( - "Highlight theme {} defined in config does not exist.", - config.markdown.highlight_theme - ); + if config.markdown.highlight_theme != "css" { + if !THEME_SET.themes.contains_key(&config.markdown.highlight_theme) { + bail!( + "Highlight theme {} defined in config does not exist.", + config.markdown.highlight_theme + ); + } } languages::validate_code(&config.default_language)?; @@ -201,6 +204,7 @@ impl Config { title: self.title.clone(), description: self.description.clone(), generate_feed: self.generate_feed, + feed_filename: self.feed_filename.clone(), build_search_index: self.build_search_index, taxonomies: self.taxonomies.clone(), search: self.search.clone(), @@ -288,6 +292,7 @@ impl Config { description: &options.description, languages: self.languages.iter().filter(|(k, _)| k.as_str() != lang).collect(), generate_feed: options.generate_feed, + feed_filename: &options.feed_filename, taxonomies: &options.taxonomies, build_search_index: options.build_search_index, extra: &self.extra, diff --git a/components/config/src/highlighting.rs b/components/config/src/highlighting.rs index 43b0f5ba..08cbe85e 100644 --- a/components/config/src/highlighting.rs +++ b/components/config/src/highlighting.rs @@ -1,10 +1,10 @@ use lazy_static::lazy_static; use syntect::dumps::from_binary; -use syntect::easy::HighlightLines; -use syntect::highlighting::ThemeSet; -use syntect::parsing::SyntaxSet; +use syntect::highlighting::{Theme, ThemeSet}; +use syntect::parsing::{SyntaxReference, SyntaxSet}; use crate::config::Config; +use syntect::html::{css_for_theme_with_class_style, ClassStyle}; lazy_static! { pub static ref SYNTAX_SET: SyntaxSet = { @@ -16,24 +16,47 @@ lazy_static! { from_binary(include_bytes!("../../../sublime/themes/all.themedump")); } +pub const CLASS_STYLE: ClassStyle = ClassStyle::SpacedPrefixed { prefix: "z-" }; + +#[derive(Clone, Debug, PartialEq, Eq)] pub enum HighlightSource { - Theme, + /// One of the built-in Zola syntaxes + BuiltIn, + /// Found in the extra syntaxes Extra, + /// No language specified Plain, + /// We didn't find the language in built-in and extra syntaxes NotFound, } -/// Returns the highlighter and whether it was found in the extra or not -pub fn get_highlighter( - language: Option<&str>, - config: &Config, -) -> (HighlightLines<'static>, HighlightSource) { - let theme = &THEME_SET.themes[&config.markdown.highlight_theme]; +pub struct SyntaxAndTheme<'config> { + pub syntax: &'config SyntaxReference, + pub syntax_set: &'config SyntaxSet, + /// None if highlighting via CSS + pub theme: Option<&'config Theme>, + pub source: HighlightSource, +} + +pub fn resolve_syntax_and_theme<'config>( + language: Option<&'_ str>, + config: &'config Config, +) -> SyntaxAndTheme<'config> { + let theme = if config.markdown.highlight_theme != "css" { + Some(&THEME_SET.themes[&config.markdown.highlight_theme]) + } else { + None + }; if let Some(ref lang) = language { if let Some(ref extra_syntaxes) = config.markdown.extra_syntax_set { if let Some(syntax) = extra_syntaxes.find_syntax_by_token(lang) { - return (HighlightLines::new(syntax, theme), HighlightSource::Extra); + return SyntaxAndTheme { + syntax, + syntax_set: extra_syntaxes, + theme, + source: HighlightSource::Extra, + }; } } // The JS syntax hangs a lot... the TS syntax is probably better anyway. @@ -42,14 +65,31 @@ pub fn get_highlighter( // https://github.com/getzola/zola/issues/1174 let hacked_lang = if *lang == "js" || *lang == "javascript" { "ts" } else { lang }; if let Some(syntax) = SYNTAX_SET.find_syntax_by_token(hacked_lang) { - (HighlightLines::new(syntax, theme), HighlightSource::Theme) + SyntaxAndTheme { + syntax, + syntax_set: &SYNTAX_SET as &SyntaxSet, + theme, + source: HighlightSource::BuiltIn, + } } else { - ( - HighlightLines::new(SYNTAX_SET.find_syntax_plain_text(), theme), - HighlightSource::NotFound, - ) + SyntaxAndTheme { + syntax: SYNTAX_SET.find_syntax_plain_text(), + syntax_set: &SYNTAX_SET as &SyntaxSet, + theme, + source: HighlightSource::NotFound, + } } } else { - (HighlightLines::new(SYNTAX_SET.find_syntax_plain_text(), theme), HighlightSource::Plain) + SyntaxAndTheme { + syntax: SYNTAX_SET.find_syntax_plain_text(), + syntax_set: &SYNTAX_SET as &SyntaxSet, + theme, + source: HighlightSource::Plain, + } } } + +pub fn export_theme_css(theme_name: &str) -> String { + let theme = &THEME_SET.themes[theme_name]; + css_for_theme_with_class_style(theme, CLASS_STYLE) +} diff --git a/components/errors/Cargo.toml b/components/errors/Cargo.toml index 2539432a..2786bd0a 100644 --- a/components/errors/Cargo.toml +++ b/components/errors/Cargo.toml @@ -8,4 +8,5 @@ edition = "2018" tera = "1" toml = "0.5" image = "0.23" -syntect = "4.4" +# TODO: go back to version 4/5 once https://github.com/trishume/syntect/pull/337 is merged +syntect = { git = "https://github.com/Keats/syntect.git", branch = "scopestack" } diff --git a/components/rendering/Cargo.toml b/components/rendering/Cargo.toml index a8496aa0..ce065c7a 100644 --- a/components/rendering/Cargo.toml +++ b/components/rendering/Cargo.toml @@ -7,7 +7,8 @@ include = ["src/**/*"] [dependencies] tera = { version = "1", features = ["preserve_order"] } -syntect = "4.1" +# TODO: go back to version 4/5 once https://github.com/trishume/syntect/pull/337 is merged +syntect = { git = "https://github.com/Keats/syntect.git", branch = "scopestack" } pulldown-cmark = { version = "0.8", default-features = false } serde = "1" serde_derive = "1" diff --git a/components/rendering/src/markdown/fence.rs b/components/rendering/src/codeblock/fence.rs similarity index 65% rename from components/rendering/src/markdown/fence.rs rename to components/rendering/src/codeblock/fence.rs index 23bd8040..3658ce54 100644 --- a/components/rendering/src/markdown/fence.rs +++ b/components/rendering/src/codeblock/fence.rs @@ -1,24 +1,18 @@ -#[derive(Copy, Clone, Debug)] -pub struct Range { - pub from: usize, - pub to: usize, -} +use std::ops::RangeInclusive; -impl Range { - fn parse(s: &str) -> Option { - match s.find('-') { - Some(dash) => { - let mut from = s[..dash].parse().ok()?; - let mut to = s[dash + 1..].parse().ok()?; - if to < from { - std::mem::swap(&mut from, &mut to); - } - Some(Range { from, to }) - } - None => { - let val = s.parse().ok()?; - Some(Range { from: val, to: val }) +fn parse_range(s: &str) -> Option> { + match s.find('-') { + Some(dash) => { + let mut from = s[..dash].parse().ok()?; + let mut to = s[dash + 1..].parse().ok()?; + if to < from { + std::mem::swap(&mut from, &mut to); } + Some(from..=to) + } + None => { + let val = s.parse().ok()?; + Some(val..=val) } } } @@ -27,14 +21,17 @@ impl Range { pub struct FenceSettings<'a> { pub language: Option<&'a str>, pub line_numbers: bool, - pub highlight_lines: Vec, - pub hide_lines: Vec, + pub line_number_start: usize, + pub highlight_lines: Vec>, + pub hide_lines: Vec>, } + impl<'a> FenceSettings<'a> { pub fn new(fence_info: &'a str) -> Self { let mut me = Self { language: None, line_numbers: false, + line_number_start: 1, highlight_lines: Vec::new(), hide_lines: Vec::new(), }; @@ -43,6 +40,7 @@ impl<'a> FenceSettings<'a> { match token { FenceToken::Language(lang) => me.language = Some(lang), FenceToken::EnableLineNumbers => me.line_numbers = true, + FenceToken::InitialLineNumber(l) => me.line_number_start = l, FenceToken::HighlightLines(lines) => me.highlight_lines.extend(lines), FenceToken::HideLines(lines) => me.hide_lines.extend(lines), } @@ -56,22 +54,24 @@ impl<'a> FenceSettings<'a> { enum FenceToken<'a> { Language(&'a str), EnableLineNumbers, - HighlightLines(Vec), - HideLines(Vec), + InitialLineNumber(usize), + HighlightLines(Vec>), + HideLines(Vec>), } struct FenceIter<'a> { split: std::str::Split<'a, char>, } + impl<'a> FenceIter<'a> { fn new(fence_info: &'a str) -> Self { Self { split: fence_info.split(',') } } - fn parse_ranges(token: Option<&str>) -> Vec { + fn parse_ranges(token: Option<&str>) -> Vec> { let mut ranges = Vec::new(); for range in token.unwrap_or("").split(' ') { - if let Some(range) = Range::parse(range) { + if let Some(range) = parse_range(range) { ranges.push(range); } } @@ -89,6 +89,11 @@ impl<'a> Iterator for FenceIter<'a> { let mut tok_split = tok.split('='); match tok_split.next().unwrap_or("").trim() { "" => continue, + "linenostart" => { + if let Some(l) = tok_split.next().and_then(|s| s.parse().ok()) { + return Some(FenceToken::InitialLineNumber(l)); + } + } "linenos" => return Some(FenceToken::EnableLineNumbers), "hl_lines" => { let ranges = Self::parse_ranges(tok_split.next()); diff --git a/components/rendering/src/codeblock/highlight.rs b/components/rendering/src/codeblock/highlight.rs new file mode 100644 index 00000000..fa14820b --- /dev/null +++ b/components/rendering/src/codeblock/highlight.rs @@ -0,0 +1,226 @@ +use std::fmt::Write; + +use config::highlighting::{SyntaxAndTheme, CLASS_STYLE}; +use syntect::easy::HighlightLines; +use syntect::highlighting::{Color, Theme}; +use syntect::html::{ + styled_line_to_highlighted_html, tokens_to_classed_spans, ClassStyle, IncludeBackground, +}; +use syntect::parsing::{ParseState, ScopeStack, SyntaxReference, SyntaxSet}; + +/// Not public, but from syntect::html +fn write_css_color(s: &mut String, c: Color) { + if c.a != 0xFF { + write!(s, "#{:02x}{:02x}{:02x}{:02x}", c.r, c.g, c.b, c.a).unwrap(); + } else { + write!(s, "#{:02x}{:02x}{:02x}", c.r, c.g, c.b).unwrap(); + } +} + +pub(crate) struct ClassHighlighter<'config> { + syntax_set: &'config SyntaxSet, + open_spans: isize, + parse_state: ParseState, + scope_stack: ScopeStack, +} + +impl<'config> ClassHighlighter<'config> { + pub fn new(syntax: &'config SyntaxReference, syntax_set: &'config SyntaxSet) -> Self { + let parse_state = ParseState::new(syntax); + Self { syntax_set, open_spans: 0, parse_state, scope_stack: ScopeStack::new() } + } + + /// Parse the line of code and update the internal HTML buffer with tagged HTML + /// + /// *Note:* This function requires `line` to include a newline at the end and + /// also use of the `load_defaults_newlines` version of the syntaxes. + pub fn highlight_line(&mut self, line: &str) -> String { + debug_assert!(line.ends_with("\n")); + let parsed_line = self.parse_state.parse_line(line, &self.syntax_set); + let (formatted_line, delta) = tokens_to_classed_spans( + line, + parsed_line.as_slice(), + CLASS_STYLE, + &mut self.scope_stack, + ); + self.open_spans += delta; + formatted_line + } + + /// Close all open `` tags and return the finished HTML string + pub fn finalize(&mut self) -> String { + let mut html = String::with_capacity((self.open_spans * 7) as usize); + for _ in 0..self.open_spans { + html.push_str(""); + } + html + } +} + +pub(crate) struct InlineHighlighter<'config> { + theme: &'config Theme, + fg_color: String, + bg_color: Color, + syntax_set: &'config SyntaxSet, + h: HighlightLines<'config>, +} + +impl<'config> InlineHighlighter<'config> { + pub fn new( + syntax: &'config SyntaxReference, + syntax_set: &'config SyntaxSet, + theme: &'config Theme, + ) -> Self { + let h = HighlightLines::new(syntax, theme); + let mut color = String::new(); + write_css_color(&mut color, theme.settings.foreground.unwrap_or(Color::BLACK)); + let fg_color = format!(r#" style="color:{};""#, color); + let bg_color = theme.settings.background.unwrap_or(Color::WHITE); + Self { theme, fg_color, bg_color, syntax_set, h } + } + + pub fn highlight_line(&mut self, line: &str) -> String { + let regions = self.h.highlight(line, &self.syntax_set); + // TODO: add a param like `IncludeBackground` for `IncludeForeground` in syntect + let highlighted = styled_line_to_highlighted_html(®ions, IncludeBackground::IfDifferent(self.bg_color)); + highlighted.replace(&self.fg_color, "") + } +} + +pub(crate) enum SyntaxHighlighter<'config> { + Inlined(InlineHighlighter<'config>), + Classed(ClassHighlighter<'config>), + /// We might not want highlighting but we want line numbers or to hide some lines + NoHighlight, +} + +impl<'config> SyntaxHighlighter<'config> { + pub fn new(highlight_code: bool, s: SyntaxAndTheme<'config>) -> Self { + if highlight_code { + if let Some(theme) = s.theme { + SyntaxHighlighter::Inlined(InlineHighlighter::new(s.syntax, s.syntax_set, theme)) + } else { + SyntaxHighlighter::Classed(ClassHighlighter::new(s.syntax, s.syntax_set)) + } + } else { + SyntaxHighlighter::NoHighlight + } + } + + pub fn highlight_line(&mut self, line: &str) -> String { + use SyntaxHighlighter::*; + + match self { + Inlined(h) => h.highlight_line(line), + Classed(h) => h.highlight_line(line), + NoHighlight => line.to_owned(), + } + } + + pub fn finalize(&mut self) -> Option { + use SyntaxHighlighter::*; + + match self { + Inlined(_) | NoHighlight => None, + Classed(h) => Some(h.finalize()), + } + } + + /// Inlined needs to set the background/foreground colour on
    +    pub fn pre_style(&self) -> Option {
    +        use SyntaxHighlighter::*;
    +
    +        match self {
    +            Classed(_) | NoHighlight => None,
    +            Inlined(h) => {
    +                let mut styles = String::from("background-color:");
    +                write_css_color(&mut styles, h.theme.settings.background.unwrap_or(Color::WHITE));
    +                styles.push_str(";color:");
    +                write_css_color(&mut styles, h.theme.settings.foreground.unwrap_or(Color::BLACK));
    +                styles.push(';');
    +                Some(styles)
    +            }
    +        }
    +    }
    +
    +    /// Classed needs to set a class on the pre
    +    pub fn pre_class(&self) -> Option {
    +        use SyntaxHighlighter::*;
    +
    +        match self {
    +            Classed(_) => {
    +                if let ClassStyle::SpacedPrefixed { prefix } = CLASS_STYLE {
    +                    Some(format!("{}code", prefix))
    +                } else {
    +                    unreachable!()
    +                }
    +            }
    +            Inlined(_) | NoHighlight => None,
    +        }
    +    }
    +
    +    /// Inlined needs to set the background/foreground colour
    +    pub fn mark_style(&self) -> Option {
    +        use SyntaxHighlighter::*;
    +
    +        match self {
    +            Classed(_) | NoHighlight => None,
    +            Inlined(h) => {
    +                let mut styles = String::from("background-color:");
    +                write_css_color(
    +                    &mut styles,
    +                    h.theme.settings.line_highlight.unwrap_or(Color { r: 255, g: 255, b: 0, a: 0 }),
    +                );
    +                styles.push_str(";");
    +                Some(styles)
    +            }
    +        }
    +    }
    +}
    +
    +#[cfg(test)]
    +mod tests {
    +    use super::*;
    +    use config::highlighting::resolve_syntax_and_theme;
    +    use config::Config;
    +    use syntect::util::LinesWithEndings;
    +
    +    #[test]
    +    fn can_highlight_with_classes() {
    +        let mut config = Config::default();
    +        config.markdown.highlight_code = true;
    +        let code = "import zen\nz = x + y\nprint('hello')\n";
    +        let syntax_and_theme = resolve_syntax_and_theme(Some("py"), &config);
    +        let mut highlighter =
    +            ClassHighlighter::new(syntax_and_theme.syntax, syntax_and_theme.syntax_set);
    +        let mut out = String::new();
    +        for line in LinesWithEndings::from(&code) {
    +            out.push_str(&highlighter.highlight_line(line));
    +        }
    +        out.push_str(&highlighter.finalize());
    +
    +        assert!(out.starts_with(""));
    +        assert!(out.contains("z-"));
    +    }
    +
    +    #[test]
    +    fn can_highlight_inline() {
    +        let mut config = Config::default();
    +        config.markdown.highlight_code = true;
    +        let code = "import zen\nz = x + y\nprint('hello')\n";
    +        let syntax_and_theme = resolve_syntax_and_theme(Some("py"), &config);
    +        let mut highlighter = InlineHighlighter::new(
    +            syntax_and_theme.syntax,
    +            syntax_and_theme.syntax_set,
    +            syntax_and_theme.theme.unwrap(),
    +        );
    +        let mut out = String::new();
    +        for line in LinesWithEndings::from(&code) {
    +            out.push_str(&highlighter.highlight_line(line));
    +        }
    +
    +        assert!(out.starts_with(r#""));
    +    }
    +}
    diff --git a/components/rendering/src/codeblock/mod.rs b/components/rendering/src/codeblock/mod.rs
    new file mode 100644
    index 00000000..14be20e3
    --- /dev/null
    +++ b/components/rendering/src/codeblock/mod.rs
    @@ -0,0 +1,186 @@
    +mod fence;
    +mod highlight;
    +
    +use std::ops::RangeInclusive;
    +
    +use syntect::util::LinesWithEndings;
    +
    +use crate::codeblock::highlight::SyntaxHighlighter;
    +use config::highlighting::{resolve_syntax_and_theme, HighlightSource};
    +use config::Config;
    +pub(crate) use fence::FenceSettings;
    +
    +fn opening_html(
    +    language: Option<&str>,
    +    pre_style: Option,
    +    pre_class: Option,
    +    line_numbers: bool,
    +) -> String {
    +    let mut html = String::from("');
    +    html
    +}
    +
    +pub struct CodeBlock<'config> {
    +    highlighter: SyntaxHighlighter<'config>,
    +    // fence options
    +    line_numbers: bool,
    +    line_number_start: usize,
    +    highlight_lines: Vec>,
    +    hide_lines: Vec>,
    +}
    +
    +impl<'config> CodeBlock<'config> {
    +    pub fn new<'fence_info>(
    +        fence: FenceSettings<'fence_info>,
    +        config: &'config Config,
    +        // path to the current file if there is one, to point where the error is
    +        path: Option<&'config str>,
    +    ) -> (Self, String) {
    +        let syntax_and_theme = resolve_syntax_and_theme(fence.language, config);
    +        if syntax_and_theme.source == HighlightSource::NotFound {
    +            let lang = fence.language.unwrap();
    +            if let Some(p) = path {
    +                eprintln!("Warning: Highlight language {} not found in {}", lang, p);
    +            } else {
    +                eprintln!("Warning: Highlight language {} not found", lang);
    +            }
    +        }
    +        let highlighter = SyntaxHighlighter::new(config.markdown.highlight_code, syntax_and_theme);
    +
    +        let html_start = opening_html(
    +            fence.language,
    +            highlighter.pre_style(),
    +            highlighter.pre_class(),
    +            fence.line_numbers,
    +        );
    +        (
    +            Self {
    +                highlighter,
    +                line_numbers: fence.line_numbers,
    +                line_number_start: fence.line_number_start,
    +                highlight_lines: fence.highlight_lines,
    +                hide_lines: fence.hide_lines,
    +            },
    +            html_start,
    +        )
    +    }
    +
    +    pub fn highlight(&mut self, content: &str) -> String {
    +        let mut buffer = String::new();
    +        let mark_style = self.highlighter.mark_style();
    +
    +        if self.line_numbers {
    +            buffer.push_str("");
    +        }
    +
    +        // syntect leaking here in this file
    +        for (i, line) in LinesWithEndings::from(&content).enumerate() {
    +            let one_indexed = i + 1;
    +            // first do we need to skip that line?
    +            let mut skip = false;
    +            for range in &self.hide_lines {
    +                if range.contains(&one_indexed) {
    +                    skip = true;
    +                    break;
    +                }
    +            }
    +            if skip {
    +                continue;
    +            }
    +
    +            // Next is it supposed to be higlighted?
    +            let mut is_higlighted = false;
    +            for range in &self.highlight_lines {
    +                if range.contains(&one_indexed) {
    +                    is_higlighted = true;
    +                }
    +            }
    +
    +            if self.line_numbers {
    +                buffer.push_str("
    "); + let num = format!("{}", self.line_number_start + i); + if is_higlighted { + buffer.push_str(""); + } else { + buffer.push_str(">") + } + buffer.push_str(&num); + buffer.push_str(""); + } else { + buffer.push_str(&num); + } + buffer.push_str(""); + } + + let highlighted_line = self.highlighter.highlight_line(line); + if is_higlighted { + buffer.push_str(""); + } else { + buffer.push_str(">") + } + buffer.push_str(&highlighted_line); + buffer.push_str(""); + } else { + buffer.push_str(&highlighted_line); + } + } + + if let Some(rest) = self.highlighter.finalize() { + buffer.push_str(&rest); + } + + if self.line_numbers { + buffer.push_str("
    "); + } + + buffer + } +} diff --git a/components/rendering/src/lib.rs b/components/rendering/src/lib.rs index 36c1f61d..c4e4fe03 100644 --- a/components/rendering/src/lib.rs +++ b/components/rendering/src/lib.rs @@ -1,3 +1,4 @@ +mod codeblock; mod context; mod markdown; mod shortcode; diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index e4760332..35ca6262 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -1,11 +1,9 @@ use lazy_static::lazy_static; use pulldown_cmark as cmark; use regex::Regex; -use syntect::html::{start_highlighted_html_snippet, IncludeBackground}; use crate::context::RenderContext; use crate::table_of_contents::{make_table_of_contents, Heading}; -use config::highlighting::THEME_SET; use errors::{Error, Result}; use front_matter::InsertAnchor; use utils::site::resolve_internal_link; @@ -13,10 +11,7 @@ use utils::slugs::slugify_anchors; use utils::vec::InsertMany; use self::cmark::{Event, LinkType, Options, Parser, Tag}; - -mod codeblock; -mod fence; -use self::codeblock::CodeBlock; +use crate::codeblock::{CodeBlock, FenceSettings}; const CONTINUE_READING: &str = ""; const ANCHOR_LINK_TEMPLATE: &str = "anchor-link.html"; @@ -32,7 +27,7 @@ pub struct Rendered { pub external_links: Vec, } -// tracks a heading in a slice of pulldown-cmark events +/// Tracks a heading in a slice of pulldown-cmark events #[derive(Debug)] struct HeadingRef { start_idx: usize, @@ -64,13 +59,13 @@ fn find_anchor(anchors: &[String], name: String, level: u16) -> String { find_anchor(anchors, name, level + 1) } -// Returns whether the given string starts with a schema. -// -// Although there exists [a list of registered URI schemes][uri-schemes], a link may use arbitrary, -// private schemes. This function checks if the given string starts with something that just looks -// like a scheme, i.e., a case-insensitive identifier followed by a colon. -// -// [uri-schemes]: https://www.iana.org/assignments/uri-schemes/uri-schemes.xhtml +/// Returns whether the given string starts with a schema. +/// +/// Although there exists [a list of registered URI schemes][uri-schemes], a link may use arbitrary, +/// private schemes. This function checks if the given string starts with something that just looks +/// like a scheme, i.e., a case-insensitive identifier followed by a colon. +/// +/// [uri-schemes]: https://www.iana.org/assignments/uri-schemes/uri-schemes.xhtml fn starts_with_schema(s: &str) -> bool { lazy_static! { static ref PATTERN: Regex = Regex::new(r"^[0-9A-Za-z\-]+:").unwrap(); @@ -79,14 +74,14 @@ fn starts_with_schema(s: &str) -> bool { PATTERN.is_match(s) } -// Colocated asset links refers to the files in the same directory, -// there it should be a filename only +/// Colocated asset links refers to the files in the same directory, +/// there it should be a filename only fn is_colocated_asset_link(link: &str) -> bool { !link.contains('/') // http://, ftp://, ../ etc && !starts_with_schema(link) } -// Returns whether a link starts with an HTTP(s) scheme. +/// Returns whether a link starts with an HTTP(s) scheme. fn is_external_link(link: &str) -> bool { link.starts_with("http:") || link.starts_with("https:") } @@ -165,12 +160,17 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result = None; + let mut code_block: Option = None; let mut inserted_anchors: Vec = vec![]; let mut headings: Vec = vec![]; @@ -195,7 +195,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { // if we are in the middle of a highlighted code block - if let Some(ref mut code_block) = highlighter { + if let Some(ref mut code_block) = code_block { let html = code_block.highlight(&text); Event::Html(html.into()) } else if context.config.markdown.render_emoji { @@ -207,74 +207,20 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { - let language = match kind { + let fence = match kind { cmark::CodeBlockKind::Fenced(fence_info) => { - let fence_info = fence::FenceSettings::new(fence_info); - fence_info.language + FenceSettings::new(fence_info) } - _ => None, + _ => FenceSettings::new(""), }; - - if !context.config.markdown.highlight_code { - if let Some(lang) = language { - let html = format!( - r#"
    "#,
    -                                    lang, lang
    -                                );
    -                                return Event::Html(html.into());
    -                            }
    -                            return Event::Html("
    ".into());
    -                        }
    -
    -                        let theme = &THEME_SET.themes[&context.config.markdown.highlight_theme];
    -                        match kind {
    -                            cmark::CodeBlockKind::Indented => (),
    -                            cmark::CodeBlockKind::Fenced(fence_info) => {
    -                                // This selects the background color the same way that
    -                                // start_coloured_html_snippet does
    -                                let color = theme
    -                                    .settings
    -                                    .background
    -                                    .unwrap_or(::syntect::highlighting::Color::WHITE);
    -
    -                                highlighter = Some(CodeBlock::new(
    -                                    fence_info,
    -                                    &context.config,
    -                                    IncludeBackground::IfDifferent(color),
    -                                    context
    -                                        .tera_context
    -                                        .get("page")
    -                                        .or(context.tera_context.get("section"))
    -                                        .map(|x| {
    -                                            x.as_object()
    -                                                .unwrap()
    -                                                .get("relative_path")
    -                                                .unwrap()
    -                                                .as_str()
    -                                                .unwrap()
    -                                        }),
    -                                ));
    -                            }
    -                        };
    -                        let snippet = start_highlighted_html_snippet(theme);
    -                        let mut html = snippet.0;
    -                        if let Some(lang) = language {
    -                            html.push_str(&format!(
    -                                r#""#,
    -                                lang, lang
    -                            ));
    -                        } else {
    -                            html.push_str("");
    -                        }
    -                        Event::Html(html.into())
    +                        let (block, begin) = CodeBlock::new(fence, &context.config, path);
    +                        code_block = Some(block);
    +                        Event::Html(begin.into())
                         }
                         Event::End(Tag::CodeBlock(_)) => {
    -                        if !context.config.markdown.highlight_code {
    -                            return Event::Html("
    \n".into()); - } // reset highlight and close the code block - highlighter = None; - Event::Html("
    ".into()) + code_block = None; + Event::Html("
    \n".into()) } Event::Start(Tag::Image(link_type, src, title)) => { if is_colocated_asset_link(&src) { diff --git a/components/rendering/src/markdown/codeblock.rs b/components/rendering/src/markdown/codeblock.rs deleted file mode 100644 index a4dec6a9..00000000 --- a/components/rendering/src/markdown/codeblock.rs +++ /dev/null @@ -1,238 +0,0 @@ -use config::highlighting::{get_highlighter, HighlightSource, SYNTAX_SET, THEME_SET}; -use config::Config; -use std::cmp::min; -use std::collections::HashSet; -use syntect::easy::HighlightLines; -use syntect::highlighting::{Color, Style, Theme}; -use syntect::html::{styled_line_to_highlighted_html, IncludeBackground}; -use syntect::parsing::SyntaxSet; - -use super::fence::{FenceSettings, Range}; - -pub struct CodeBlock<'config> { - highlighter: HighlightLines<'static>, - extra_syntax_set: Option<&'config SyntaxSet>, - background: IncludeBackground, - theme: &'static Theme, - - /// List of ranges of lines to highlight. - highlight_lines: Vec, - /// List of ranges of lines to hide. - hide_lines: Vec, - /// The number of lines in the code block being processed. - num_lines: usize, -} - -impl<'config> CodeBlock<'config> { - pub fn new( - fence_info: &str, - config: &'config Config, - background: IncludeBackground, - path: Option<&'config str>, - ) -> Self { - let fence_info = FenceSettings::new(fence_info); - let theme = &THEME_SET.themes[&config.markdown.highlight_theme]; - let (highlighter, highlight_source) = get_highlighter(fence_info.language, config); - let extra_syntax_set = match highlight_source { - HighlightSource::Extra => config.markdown.extra_syntax_set.as_ref(), - HighlightSource::NotFound => { - // Language was not found, so it exists (safe unwrap) - let lang = fence_info.language.unwrap(); - if let Some(path) = path { - eprintln!("Warning: Highlight language {} not found in {}", lang, path); - } else { - eprintln!("Warning: Highlight language {} not found", lang); - } - None - } - _ => None, - }; - Self { - highlighter, - extra_syntax_set, - background, - theme, - - highlight_lines: fence_info.highlight_lines, - hide_lines: fence_info.hide_lines, - num_lines: 0, - } - } - - pub fn highlight(&mut self, text: &str) -> String { - let highlighted = - self.highlighter.highlight(text, self.extra_syntax_set.unwrap_or(&SYNTAX_SET)); - let line_boundaries = self.find_line_boundaries(&highlighted); - - // First we make sure that `highlighted` is split at every line - // boundary. The `styled_line_to_highlighted_html` function will - // merge split items with identical styles, so this is not a - // problem. - // - // Note that this invalidates the values in `line_boundaries`. - // The `perform_split` function takes it by value to ensure that - // we don't use it later. - let mut highlighted = perform_split(&highlighted, line_boundaries); - - let hl_background = - self.theme.settings.line_highlight.unwrap_or(Color { r: 255, g: 255, b: 0, a: 0 }); - - let hl_lines = self.get_highlighted_lines(); - color_highlighted_lines(&mut highlighted, &hl_lines, hl_background); - - let hide_lines = self.get_hidden_lines(); - let highlighted = hide_hidden_lines(highlighted, &hide_lines); - - styled_line_to_highlighted_html(&highlighted, self.background) - } - - fn find_line_boundaries(&mut self, styled: &[(Style, &str)]) -> Vec { - let mut boundaries = Vec::new(); - for (vec_idx, (_style, s)) in styled.iter().enumerate() { - for (str_idx, character) in s.char_indices() { - if character == '\n' { - boundaries.push(StyledIdx { vec_idx, str_idx }); - } - } - } - self.num_lines = boundaries.len() + 1; - boundaries - } - - fn get_highlighted_lines(&self) -> HashSet { - self.ranges_to_lines(&self.highlight_lines) - } - - fn get_hidden_lines(&self) -> HashSet { - self.ranges_to_lines(&self.hide_lines) - } - - fn ranges_to_lines(&self, range: &Vec) -> HashSet { - let mut lines = HashSet::new(); - for range in range { - for line in range.from..=min(range.to, self.num_lines) { - // Ranges are one-indexed - lines.insert(line.saturating_sub(1)); - } - } - lines - } -} - -/// This is an index of a character in a `&[(Style, &'b str)]`. The `vec_idx` is the -/// index in the slice, and `str_idx` is the byte index of the character in the -/// corresponding string slice. -/// -/// The `Ord` impl on this type sorts lexiographically on `vec_idx`, and then `str_idx`. -#[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord)] -struct StyledIdx { - vec_idx: usize, - str_idx: usize, -} - -/// This is a utility used by `perform_split`. If the `vec_idx` in the `StyledIdx` is -/// equal to the provided value, return the `str_idx`, otherwise return `None`. -fn get_str_idx_if_vec_idx_is(idx: Option<&StyledIdx>, vec_idx: usize) -> Option { - match idx { - Some(idx) if idx.vec_idx == vec_idx => Some(idx.str_idx), - _ => None, - } -} - -/// This function assumes that `line_boundaries` is sorted according to the `Ord` impl on -/// the `StyledIdx` type. -fn perform_split<'b>( - split: &[(Style, &'b str)], - line_boundaries: Vec, -) -> Vec<(Style, &'b str)> { - let mut result = Vec::new(); - - let mut idxs_iter = line_boundaries.into_iter().peekable(); - - for (split_idx, item) in split.iter().enumerate() { - let mut last_split = 0; - - // Since `line_boundaries` is sorted, we know that any remaining indexes in - // `idxs_iter` have `vec_idx >= split_idx`, and that if there are any with - // `vec_idx == split_idx`, they will be first. - // - // Using the `get_str_idx_if_vec_idx_is` utility, this loop will keep consuming - // indexes from `idxs_iter` as long as `vec_idx == split_idx` holds. Once - // `vec_idx` becomes larger than `split_idx`, the loop will finish without - // consuming that index. - // - // If `idxs_iter` is empty, or there are no indexes with `vec_idx == split_idx`, - // the loop does nothing. - while let Some(str_idx) = get_str_idx_if_vec_idx_is(idxs_iter.peek(), split_idx) { - // Consume the value we just peeked. - idxs_iter.next(); - - // This consumes the index to split at. We add one to include the newline - // together with its own line, rather than as the first character in the next - // line. - let split_at = min(str_idx + 1, item.1.len()); - - // This will fail if `line_boundaries` is not sorted. - debug_assert!(split_at >= last_split); - - // Skip splitting if the string slice would be empty. - if last_split != split_at { - result.push((item.0, &item.1[last_split..split_at])); - last_split = split_at; - } - } - - // Now append the remainder. If the current item was not split, this will - // append the entire item. - if last_split != item.1.len() { - result.push((item.0, &item.1[last_split..])); - } - } - - result -} - -fn color_highlighted_lines(data: &mut [(Style, &str)], lines: &HashSet, background: Color) { - if lines.is_empty() { - return; - } - - let mut current_line = 0; - - for item in data { - if lines.contains(¤t_line) { - item.0.background = background; - } - - // We split the lines such that every newline is at the end of an item. - if item.1.ends_with('\n') { - current_line += 1; - } - } -} - -fn hide_hidden_lines<'a>( - data: Vec<(Style, &'a str)>, - lines: &HashSet, -) -> Vec<(Style, &'a str)> { - if lines.is_empty() { - return data; - } - - let mut current_line = 0; - - let mut to_keep = Vec::new(); - - for item in data { - if !lines.contains(¤t_line) { - to_keep.push(item); - } - - // We split the lines such that every newline is at the end of an item. - if item.1.ends_with('\n') { - current_line += 1; - } - } - - to_keep -} diff --git a/components/rendering/tests/codeblock_hide_lines.rs b/components/rendering/tests/codeblock_hide_lines.rs index c753c429..72a2f8dc 100644 --- a/components/rendering/tests/codeblock_hide_lines.rs +++ b/components/rendering/tests/codeblock_hide_lines.rs @@ -8,7 +8,7 @@ use rendering::{render_content, RenderContext}; macro_rules! colored_html_line { ( $s:expr ) => {{ - let mut result = "".to_string(); + let mut result = "".to_string(); result.push_str($s); result.push_str("\n"); result @@ -17,11 +17,11 @@ macro_rules! colored_html_line { macro_rules! colored_html { ( $($s:expr),* $(,)* ) => {{ - let mut result = "
    \n".to_string();
    +        let mut result = "
    ".to_string();
             $(
                 result.push_str(colored_html_line!($s).as_str());
             )*
    -        result.push_str("
    "); + result.push_str("
    \n"); result }}; } @@ -52,5 +52,5 @@ bat &context, ) .unwrap(); - assert_eq!(res.body, colored_html!("foo\nbaz\nbat",)); + assert_eq!(res.body, colored_html!("foo", "baz", "bat")); } diff --git a/components/rendering/tests/codeblock_hl_lines.rs b/components/rendering/tests/codeblock_hl_lines.rs index ef4e5f2f..e002a065 100644 --- a/components/rendering/tests/codeblock_hl_lines.rs +++ b/components/rendering/tests/codeblock_hl_lines.rs @@ -8,26 +8,28 @@ use rendering::{render_content, RenderContext}; macro_rules! colored_html_line { ( @no $s:expr ) => {{ - let mut result = "".to_string(); + let mut result = "".to_string(); result.push_str($s); result.push_str("\n"); result }}; ( @hl $s:expr ) => {{ - let mut result = "".to_string(); + let mut result = "".to_string(); + result.push_str(""); result.push_str($s); result.push_str("\n"); + result.push_str(""); result }}; } macro_rules! colored_html { ( $(@$kind:tt $s:expr),* $(,)* ) => {{ - let mut result = "
    \n".to_string();
    +        let mut result = "
    ".to_string();
             $(
                 result.push_str(colored_html_line!(@$kind $s).as_str());
             )*
    -        result.push_str("
    "); + result.push_str("
    \n"); result }}; } @@ -63,7 +65,8 @@ baz colored_html!( @no "foo", @hl "bar", - @no "bar\nbaz", + @no "bar", + @no "baz", ) ); } @@ -98,7 +101,8 @@ baz res.body, colored_html!( @no "foo", - @hl "bar\nbar", + @hl "bar", + @hl "bar", @no "baz", ) ); @@ -133,7 +137,10 @@ baz assert_eq!( res.body, colored_html!( - @hl "foo\nbar\nbar\nbaz", + @hl "foo", + @hl "bar", + @hl "bar", + @hl "baz", ) ); } @@ -167,7 +174,9 @@ baz assert_eq!( res.body, colored_html!( - @hl "foo\nbar\nbar", + @hl "foo", + @hl "bar", + @hl "bar", @no "baz", ) ); @@ -202,7 +211,9 @@ baz assert_eq!( res.body, colored_html!( - @hl "foo\nbar\nbar", + @hl "foo", + @hl "bar", + @hl "bar", @no "baz", ) ); @@ -237,8 +248,10 @@ baz assert_eq!( res.body, colored_html!( - @no "foo\nbar", - @hl "bar\nbaz", + @no "foo", + @no "bar", + @hl "bar", + @hl "baz", ) ); } @@ -272,8 +285,10 @@ baz assert_eq!( res.body, colored_html!( - @no "foo\nbar", - @hl "bar\nbaz", + @no "foo", + @no "bar", + @hl "bar", + @hl "baz", ) ); } @@ -307,7 +322,9 @@ baz assert_eq!( res.body, colored_html!( - @hl "foo\nbar\nbar", + @hl "foo", + @hl "bar", + @hl "bar", @no "baz", ) ); @@ -341,7 +358,9 @@ baz assert_eq!( res.body, colored_html!( - @hl "foo\nbar\nbar", + @hl "foo", + @hl "bar", + @hl "bar", @no "baz", ) ); @@ -376,7 +395,9 @@ baz assert_eq!( res.body, colored_html!( - @hl "foo\nbar\nbar", + @hl "foo", + @hl "bar", + @hl "bar", @no "baz", ) ); @@ -413,7 +434,8 @@ baz colored_html!( @hl "foo", @no "bar", - @hl "bar\nbaz", + @hl "bar", + @hl "baz", ) ); } @@ -449,7 +471,8 @@ baz colored_html!( @no "foo", @hl "bar", - @no "bar\nbaz", + @no "bar", + @no "baz", ) ); } @@ -484,7 +507,8 @@ baz res.body, colored_html!( @no "foo", - @hl "bar\nbar", + @hl "bar", + @hl "bar", @no "baz", ) ); diff --git a/components/rendering/tests/codeblock_linenos.rs b/components/rendering/tests/codeblock_linenos.rs new file mode 100644 index 00000000..4315fba8 --- /dev/null +++ b/components/rendering/tests/codeblock_linenos.rs @@ -0,0 +1,97 @@ +use std::collections::HashMap; + +use tera::Tera; + +use config::Config; +use front_matter::InsertAnchor; +use rendering::{render_content, RenderContext}; + +#[test] +fn can_add_line_numbers() { + let tera_ctx = Tera::default(); + let permalinks_ctx = HashMap::new(); + let mut config = Config::default_for_test(); + config.markdown.highlight_code = true; + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); + let res = render_content( + r#" +```linenos +foo +bar +``` + "#, + &context, + ) + .unwrap(); + assert_eq!( + res.body, + "
    1foo\n
    2bar\n
    \n" + ); +} + +#[test] +fn can_add_line_numbers_with_linenostart() { + let tera_ctx = Tera::default(); + let permalinks_ctx = HashMap::new(); + let mut config = Config::default_for_test(); + config.markdown.highlight_code = true; + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); + let res = render_content( + r#" +```linenos, linenostart=40 +foo +bar +``` + "#, + &context, + ) + .unwrap(); + assert_eq!( + res.body, + "
    40foo\n
    41bar\n
    \n" + ); +} + +#[test] +fn can_add_line_numbers_with_highlight() { + let tera_ctx = Tera::default(); + let permalinks_ctx = HashMap::new(); + let mut config = Config::default_for_test(); + config.markdown.highlight_code = true; + let context = RenderContext::new( + &tera_ctx, + &config, + &config.default_language, + "", + &permalinks_ctx, + InsertAnchor::None, + ); + let res = render_content( + r#" +```linenos, hl_lines=2 +foo +bar +``` + "#, + &context, + ) + .unwrap(); + assert_eq!( + res.body, + "
    1foo\n
    2bar\n
    \n" + ); +} diff --git a/components/rendering/tests/markdown.rs b/components/rendering/tests/markdown.rs index 98765f56..2818598f 100644 --- a/components/rendering/tests/markdown.rs +++ b/components/rendering/tests/markdown.rs @@ -60,7 +60,7 @@ fn can_highlight_code_block_no_lang() { let res = render_content("```\n$ gutenberg server\n$ ping\n```", &context).unwrap(); assert_eq!( res.body, - "
    \n$ gutenberg server\n$ ping\n
    " + "
    $ gutenberg server\n$ ping\n
    \n" ); } @@ -81,7 +81,7 @@ fn can_highlight_code_block_with_lang() { let res = render_content("```python\nlist.append(1)\n```", &context).unwrap(); assert_eq!( res.body, - "
    \nlist.append(1)\n
    " + "
    list.append(1)\n
    \n" ); } @@ -103,7 +103,7 @@ fn can_higlight_code_block_with_unknown_lang() { // defaults to plain text assert_eq!( res.body, - "
    \nlist.append(1)\n
    " + "
    list.append(1)\n
    \n" ); } diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 37d8c32c..c4171761 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -14,6 +14,7 @@ use rayon::prelude::*; use tera::{Context, Tera}; use walkdir::{DirEntry, WalkDir}; +use config::highlighting::export_theme_css; use config::{get_config, Config}; use errors::{bail, Error, Result}; use front_matter::InsertAnchor; @@ -666,7 +667,8 @@ impl Site { self.render_feed(pages, Some(&PathBuf::from(code)), &code, |c| c)?; start = log_time(start, "Generated feed in other language"); } - + self.render_themes_css()?; + start = log_time(start, "Rendered themes css"); self.render_404()?; start = log_time(start, "Rendered 404"); self.render_robots()?; @@ -684,6 +686,20 @@ impl Site { Ok(()) } + pub fn render_themes_css(&self) -> Result<()> { + ensure_directory_exists(&self.static_path)?; + + for t in &self.config.markdown.highlight_themes_css { + let p = self.static_path.join(&t.filename); + if !p.exists() { + let content = export_theme_css(&t.theme); + create_file(&p, &content)?; + } + } + + Ok(()) + } + pub fn build_search_index(&self) -> Result<()> { ensure_directory_exists(&self.output_path)?; // TODO: add those to the SITE_CONTENT map diff --git a/components/templates/src/filters.rs b/components/templates/src/filters.rs index 3595cde0..806feffe 100644 --- a/components/templates/src/filters.rs +++ b/components/templates/src/filters.rs @@ -178,7 +178,7 @@ mod tests { .unwrap() .filter(&to_value(&md).unwrap(), &HashMap::new()); assert!(result.is_ok()); - assert!(result.unwrap().as_str().unwrap().contains("
    +    
    +        let
    +         highlight = 
    +        true
    +        ;
    +    
    +  
    +
    +``` + +This is nice, because your page will load faster if everything is in one file. +But if you would like to have the user choose a theme from a +list, or use different color schemes for dark/light color schemes, you need a +different solution. + +If you use the special `css` color scheme + +```toml +highlight_theme = "css" +``` + +you get CSS class definitions, instead. + +```html +
    +    
    +        
    +            let highlight
    +            =
    +            true
    +            ;
    +        
    +    
    +
    +``` + +Zola can output a css file for a theme in the `static` directory using the `highlighting_themes_css` option. + +```toml +highlight_themes_css = [ + { theme = "base16-ocean-dark", filename = "syntax-theme-dark.css" }, + { theme = "base16-ocean-light", filename = "syntax-theme-light.css" }, +] +``` + +You can then support light and dark mode like so: + +```css +@import url("syntax-theme-dark.css") (prefers-color-scheme: dark); +@import url("syntax-theme-light.css") (prefers-color-scheme: light); +``` + + ## Annotations You can use additional annotations to customize how code blocks are displayed: @@ -185,18 +258,28 @@ highlight(code); ``` ```` -- `hl_lines` to highlight lines. You must specify a list of ranges of lines to highlight, -separated by ` `. Ranges are 1-indexed. +- `linenostart` to specify the number for the first line (defaults to 1) ```` -```rust,hl_lines=3 +```rust,linenos,linenostart=20 use highlighter::highlight; let code = "..."; highlight(code); ``` ```` -- `hide_lines` to hide lines. You must specify a list of ranges of lines to hide, +- `hl_lines` to highlight lines. You must specify a list of inclusive ranges of lines to highlight, +separated by whitespaces. Ranges are 1-indexed and `linenostart` doesn't influence the values, it always refers to the codeblock line number. + +```` +```rust,hl_lines=1 3-5 9 +use highlighter::highlight; +let code = "..."; +highlight(code); +``` +```` + +- `hide_lines` to hide lines. You must specify a list of inclusive ranges of lines to hide, separated by ` `. Ranges are 1-indexed. ```` @@ -206,3 +289,61 @@ let code = "..."; highlight(code); ``` ```` + +## Styling codeblocks + +Depending on the annotations used, some codeblocks will be hard to read without any CSS. We recommend using the following +snippet in your sites: + +```scss +pre { + padding: 1rem; + overflow: auto; +} +// The line numbers already provide some kind of left/right padding +pre[data-linenos] { + padding: 1rem 0; +} +pre table td { + padding: 0; +} +// The line number cells +pre table td:nth-of-type(1) { + text-align: center; + user-select: none; +} +pre mark { + // If you want your highlights to take the full width. + display: block; + // The default background colour of a mark is bright yellow + background-color: rgba(254, 252, 232, 0.9); +} +pre table { + width: 100%; + border-collapse: collapse; +} +``` + +This snippet makes the highlighting work on the full width and ensures that a user can copy the content without +selecting the line numbers. Obviously you will probably need to adjust it to fit your site style. + +Here's an example with all the options used: `scss, linenos, linenostart=10, hl_lines=3-4 8-9, hide_lines=2 7` with the +snippet above. + +```scss, linenos, linenostart=10, hl_lines=3-4 8-9, hide_lines=2 7 +pre mark { + // If you want your highlights to take the full width. + display: block; + color: currentcolor; +} +pre table td:nth-of-type(1) { + // Select a colour matching your theme + color: #6b6b6b; + font-style: italic; +} +``` + +Line 2 and 7 are comments that are not shown in the final output. + +When line numbers are active, the code block is turned into a table with one row and two cells. The first cell contains the line number and the second cell contains the code. +Highlights are done via the `` HTML tag. When a line with line number is highlighted two `` tags are created: one around the line number(s) and one around the code. diff --git a/docs/sass/_base.scss b/docs/sass/_base.scss index a6c7e48b..7e812ffd 100644 --- a/docs/sass/_base.scss +++ b/docs/sass/_base.scss @@ -82,6 +82,26 @@ pre { padding: 1rem; overflow: auto; } +pre[data-linenos] { + padding: 1rem 0; +} +pre mark { + // If you want your highlights to take the full width. + display: block; + // The default background colour of a mark is bright yellow + background-color: rgba(254, 252, 232, 0.9); +} +pre table { + width: 100%; + border-collapse: collapse; +} +pre table td { + padding: 0; +} +pre table td:nth-of-type(1) { + text-align: center; + user-select: none; +} p code, li code { background-color: #f5f5f5; diff --git a/docs/sass/site.scss b/docs/sass/site.scss index a9e5129c..968b24be 100644 --- a/docs/sass/site.scss +++ b/docs/sass/site.scss @@ -17,3 +17,6 @@ $link-color: #007CBC; @import "docs"; @import "themes"; @import "search"; + +//@import url("syntax-theme-dark.css") (prefers-color-scheme: dark); +//@import url("syntax-theme-light.css") (prefers-color-scheme: light); From 8c3ce7d7fbc0d585d4cbf27598ac7dfe5acd96f1 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 10 Jul 2021 08:58:51 +0200 Subject: [PATCH 110/113] Update changelog --- CHANGELOG.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e14db44b..24738050 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,10 +24,10 @@ ### Other -- internal links are now resolved in the `markdown` filter in the templates (#1296 #1316) +- Internal links are now resolved in the `markdown` filter in the templates (#1296 #1316) - Add a `required` argument to `load_data` so it can be allowed to fail - `get_file_hash` now supports returning the base64 encoded hash -- the `markdown` filter not renders shortcodes +- The `markdown` filter not renders shortcodes - Image processing now supports WebP - Fix `zola serve` failing for some static files - Fix `zola serve` not picking up directory renaming @@ -39,6 +39,13 @@ - Footnotes links are now stripped from summaries - they were not linking to anything. - `get_url` and `get_taxonomy_url` are now marked as safe, no need to call `| safe` on their output - Add `allow_missing` optional argument to `get_image_metadata` to not error if the file is not found +- Add `permalink` to `Taxonomy` in templates +- Syntax highlighting improvements, see documentation for details on each + 1. Add CSS class based syntax highlighting + 2. Allow hiding specific lines + 3. Allow showing line numbers + + ## 0.13.0 (2021-01-09) From c0895b62f9bcea1cb896f50d9c5a4d7971dd4497 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sun, 18 Jul 2021 13:55:27 +0200 Subject: [PATCH 111/113] Update deps --- CHANGELOG.md | 2 +- Cargo.lock | 56 +++++++++++++++++++++++++--------------------------- 2 files changed, 28 insertions(+), 30 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 24738050..66db08e2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Changelog -## 0.14.0 (unreleased) +## 0.14.0 (2021-07-18) ### Breaking diff --git a/Cargo.lock b/Cargo.lock index 5ddfeba7..17496d28 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,5 +1,7 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. +version = 3 + [[package]] name = "adler" version = "1.0.2" @@ -29,9 +31,9 @@ dependencies = [ [[package]] name = "ammonia" -version = "3.1.1" +version = "3.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ee7d6eb157f337c5cedc95ddf17f0cbc36d36eb7763c8e0d1c1aeb3722f6279" +checksum = "2e445c26125ff80316eaea16e812d717b147b82a68682bd4730f74d4845c8b35" dependencies = [ "html5ever", "lazy_static", @@ -216,9 +218,9 @@ checksum = "b700ce4376041dcd0a327fd0097c41095743c4c8af8887265942faf1100bd040" [[package]] name = "cc" -version = "1.0.68" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a72c244c1ff497a746a7e1fb3d14bd08420ecda70c8f25c7112f2781652d787" +checksum = "e70cc2f62c6ce1868963827bd677764c62d07c3d9a3e1fb1177ee1a9ab199eb2" dependencies = [ "jobserver", ] @@ -942,9 +944,9 @@ checksum = "02296996cb8796d7c6e3bc2d9211b7802812d36999a51bb754123ead7d37d026" [[package]] name = "hyper" -version = "0.14.9" +version = "0.14.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07d6baa1b441335f3ce5098ac421fb6547c46dda735ca1bc6d0153c838f9dd83" +checksum = "7728a72c4c7d72665fde02204bcbd93b247721025b222ef78606f14513e0fd03" dependencies = [ "bytes 1.0.1", "futures-channel", @@ -1190,9 +1192,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.97" +version = "0.2.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12b8adadd720df158f4d70dfe7ccc6adb0472d7c55ca83445f6a5ab3e36f8fb6" +checksum = "320cfe77175da3a483efed4bc0adc1968ca050b098ce4f2f1c13a56626128790" [[package]] name = "library" @@ -1745,11 +1747,11 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] name = "open" -version = "1.7.0" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1711eb4b31ce4ad35b0f316d8dfba4fe5c7ad601c448446d84aae7a896627b20" +checksum = "dcea7a30d6b81a2423cc59c43554880feff7b57d12916f231a79f8d6d9470201" dependencies = [ - "which", + "pathdiff", "winapi 0.3.9", ] @@ -1768,6 +1770,12 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3cacbb3c4ff353b534a67fb8d7524d00229da4cb1dc8c79f4db96e375ab5b619" +[[package]] +name = "pathdiff" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "877630b3de15c0b64cc52f659345724fbf6bdad9bd9566699fc53688f3c34a34" + [[package]] name = "percent-encoding" version = "2.1.0" @@ -2431,9 +2439,9 @@ checksum = "f173ac3d1a7e3b28003f40de0b5ce7fe2710f9b9dc3fc38664cebee46b3b6527" [[package]] name = "slotmap" -version = "1.0.3" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "585cd5dffe4e9e06f6dfdf66708b70aca3f781bed561f4f667b2d9c0d4559e36" +checksum = "a952280edbecfb1d4bd3cf2dbc309dc6ab523e53487c438ae21a6df09fe84bc4" dependencies = [ "version_check", ] @@ -2622,9 +2630,9 @@ dependencies = [ [[package]] name = "tera" -version = "1.12.0" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7571541dff0e57eaa2e931249f0d7489eb2b24b6b105546f8c2f1a47f15aaa3a" +checksum = "bf95b0d8a46da5fe3ea119394a6c7f1e745f9de359081641c99946e2bf55d4f2" dependencies = [ "chrono", "chrono-tz", @@ -2726,9 +2734,9 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.7.1" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fb2ed024293bb19f7a5dc54fe83bf86532a44c12a2bb8ba40d64a4509395ca2" +checksum = "98c8b05dc14c75ea83d63dd391100353789f5f24b8b3866542a5e85c8be8e985" dependencies = [ "autocfg", "bytes 1.0.1", @@ -2915,9 +2923,9 @@ dependencies = [ [[package]] name = "unicode-segmentation" -version = "1.7.1" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb0d2e7be6ae3a5fa87eed5fb451aff96f2573d2694942e40543ae0bbe19c796" +checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b" [[package]] name = "unicode-width" @@ -3136,16 +3144,6 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d8b77fdfd5a253be4ab714e4ffa3c49caf146b4de743e97510c0656cf90f1e8e" -[[package]] -name = "which" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b55551e42cbdf2ce2bedd2203d0cc08dba002c27510f86dab6d0ce304cba3dfe" -dependencies = [ - "either", - "libc", -] - [[package]] name = "winapi" version = "0.2.8" From a5cc4dc462b809f8a100818cc2ee8f941680fb42 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sun, 18 Jul 2021 14:02:44 +0200 Subject: [PATCH 112/113] Update processed images --- .../processed_images/0b751f5aa0aeb49e00.png | Bin 0 -> 29453 bytes .../processed_images/10743d39eadb4f5500.png | Bin 0 -> 29865 bytes .../processed_images/1794115ed20fc20b00.jpg | Bin 18362 -> 0 bytes .../processed_images/1b3166afe3c05c8100.png | Bin 0 -> 17510 bytes .../processed_images/1cec18975099962e00.png | Bin 56183 -> 0 bytes .../processed_images/347f63dafce8976a00.jpg | Bin 0 -> 11725 bytes .../processed_images/42c8c04e2cbdedc000.png | Bin 0 -> 23852 bytes .../processed_images/4c2ee08a8b7c98fd00.png | Bin 29988 -> 0 bytes .../processed_images/60097aeed903cf3b00.png | Bin 17551 -> 0 bytes .../processed_images/60327c08d512e16800.png | Bin 97213 -> 0 bytes ...f3be10e77c00.png => 6398117c46046a4a00.png} | Bin .../processed_images/67f2ebdd806283e900.jpg | Bin 5175 -> 0 bytes .../processed_images/68cc2a54764edf4500.png | Bin 0 -> 54927 bytes .../processed_images/6ba688a3fb0d202b00.jpg | Bin 0 -> 5038 bytes .../processed_images/70513837257b310c00.jpg | Bin 12491 -> 0 bytes .../processed_images/7459e23e962c9d2f00.png | Bin 30190 -> 0 bytes .../processed_images/7f400da1e92ca8a400.jpg | Bin 0 -> 14872 bytes .../processed_images/9df3b2448c50878a00.jpg | Bin 0 -> 12114 bytes .../processed_images/a9f5475850972f8500.png | Bin 29531 -> 0 bytes .../processed_images/aebd0f00cf9232d000.jpg | Bin 14915 -> 0 bytes .../processed_images/baf5a4139772f2c700.png | Bin 29531 -> 0 bytes .../processed_images/d2f2746ebaaa9e6200.png | Bin 0 -> 91526 bytes .../processed_images/d364fb703e1e0b3200.jpg | Bin 11779 -> 0 bytes .../processed_images/e1f961e8b8cb30b500.png | Bin 109015 -> 0 bytes .../processed_images/ea6a03d035169dbd00.jpg | Bin 0 -> 18248 bytes .../processed_images/fd56f23df12683fc00.png | Bin 0 -> 102807 bytes 26 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/static/processed_images/0b751f5aa0aeb49e00.png create mode 100644 docs/static/processed_images/10743d39eadb4f5500.png delete mode 100644 docs/static/processed_images/1794115ed20fc20b00.jpg create mode 100644 docs/static/processed_images/1b3166afe3c05c8100.png delete mode 100644 docs/static/processed_images/1cec18975099962e00.png create mode 100644 docs/static/processed_images/347f63dafce8976a00.jpg create mode 100644 docs/static/processed_images/42c8c04e2cbdedc000.png delete mode 100644 docs/static/processed_images/4c2ee08a8b7c98fd00.png delete mode 100644 docs/static/processed_images/60097aeed903cf3b00.png delete mode 100644 docs/static/processed_images/60327c08d512e16800.png rename docs/static/processed_images/{e8e628f3be10e77c00.png => 6398117c46046a4a00.png} (100%) delete mode 100644 docs/static/processed_images/67f2ebdd806283e900.jpg create mode 100644 docs/static/processed_images/68cc2a54764edf4500.png create mode 100644 docs/static/processed_images/6ba688a3fb0d202b00.jpg delete mode 100644 docs/static/processed_images/70513837257b310c00.jpg delete mode 100644 docs/static/processed_images/7459e23e962c9d2f00.png create mode 100644 docs/static/processed_images/7f400da1e92ca8a400.jpg create mode 100644 docs/static/processed_images/9df3b2448c50878a00.jpg delete mode 100644 docs/static/processed_images/a9f5475850972f8500.png delete mode 100644 docs/static/processed_images/aebd0f00cf9232d000.jpg delete mode 100644 docs/static/processed_images/baf5a4139772f2c700.png create mode 100644 docs/static/processed_images/d2f2746ebaaa9e6200.png delete mode 100644 docs/static/processed_images/d364fb703e1e0b3200.jpg delete mode 100644 docs/static/processed_images/e1f961e8b8cb30b500.png create mode 100644 docs/static/processed_images/ea6a03d035169dbd00.jpg create mode 100644 docs/static/processed_images/fd56f23df12683fc00.png diff --git a/docs/static/processed_images/0b751f5aa0aeb49e00.png b/docs/static/processed_images/0b751f5aa0aeb49e00.png new file mode 100644 index 0000000000000000000000000000000000000000..59b4811d9813cbf2b7af68c958c9d895af1bf95b GIT binary patch literal 29453 zcmWh!c|6nqAKwgCW;74XqzGCm?O%443+wpGe;r!nQKcq zlH8iBjHy}DZ@)kG*+2VZkN4;Ge!ZU8E6K*nLXcmQ9{>OdUc6vt$NA3w|A&v4^F#qd z76E|JPZ!OMuSOK!n*~31z4jTr{b1|;?iaJ6?Ts>9F-tR> zBe&%gA9X4cbGcI`%`wLB(&g}mE-ZISo8n9Iu_G|j@=7S&ae!q`g z`?r(Rez}Ere64;vG^gdp@9OBkufD8!9M1hayuYxb5xrma^H0~mgYQOn8dW8h>RHAS zsf>Jgp}?-;rF3ZzZG2RR(ZBsMlLLpgohLbT4BY5x77EkeC0b>J73YJtetc4O6~}bL z(#&To(0eb}qnD)S=$xNcWA$1W1Y6$!`tmB^-K)c`;OIX=y~(1pGC%H;K1TMcy44=U zE(6{##snIB1PX1ZxboGr=#(6E8xSA1EZ+f7R1eJ%8psaOq(F_Gqoy@ay-Ib9I{ekt ze(xWv--v%@(K?!K|NGC}zqUW0s|la?qW^BVS3H!Lla3bwTuP05%!Ng%`989rX+^I`l$(s{^-=QSjfYPadj^_YNKN*i|(=g4MNDhfXq-TxMO z5<0M9+9u(?n?Jc36q;3l{j>STy6N|~2lo*b*L)`5_MK^N|M&N&FPv&Alo5{+SPNi0 zT9|u#2E3LLhV?$^5YIOqk6o#YV5NfdCllP^8agD|{A^V76ou>068xWIJkS6C^8LRh zoU`w1qT6uCAce6aVIQWXpQ40f2LfWyXm5k<4N$XIx)2kzO4lU?T|N&l16Arr?Zt!$ zQ%r@wh|@vNJW+@H-|xS2sQ%G*xL57aI(?EU`u$o}=#!7#@Q_E4ugvFqm0kD_kSz7w z-b?GPpa(NE>I@JeV<8wYg3?F$43(`deO~mobR$NF9Sjv_6EM6Qu0#S6oMAq6_JEli z=bvG92LSz}UPdVkH9q7N(m=z7HtOh_wfJ-mM!q~`H=SzRzv3ZNA@Y3UOCzNDEF)8T+vIry5 ztX$TM7xO;}zgvEYwX=E`)69i!E&xlZTq5~;VtnZn(oW}786X{Rq6IvEvWzFSlu)JU z-O9$42;RXVNznCz@qRzDHT;}1%^y%bGh5p)JA?oArlj)WMa_4}d4&{pbw2VNVKy`W z&0Ti#CCI?i_@eQoMfaGyjyDF5Mx5ifgpd62@C*(sn0fry=wJalt0^#>8iXy+@3)xz zTovAstoMTTBWkiGT(6ChY6*Y8`6x+)c`J1=w;V#DRZ=Jr%&5o&=Q_>wcHQp0jP!(E z714=GrO~u_{WTL90jZ3%{#){q2w8kshviyY}rMw z0+^Rp9#-teUE`)({_=VvFoupNW2eilvwYnBYqsBas zXVw8vq^F$+yY^*ByE^as>@~1@o~QRamIy^n_itq5-xSQgF38JsT5rJzFidxx4>Lb2 zy}Cvnz3#k!^(y~x+O?*x>_lf*A^RR0-v$V~+qX(?uz^>jWrZj}tWFr07H=QcSjRYS zAkTsXDA8{=Q78{qKX4u(5z%g)*3L)q`$O(O2<-8aaHB&;ddvT>&b_oufo9j~W9CW^ zmdkQv>xY5(cyrhyWF8EYC=zgW^52(xb#e%XUr>m99?u4}*P4G$C=o&=3f41wpQRf$ zds#2M#ee(V_IpeA&s2Xn6gLlQahYAep6ZPp3(Smrvh7koU42iL90MS! z(Ch-!!dR3xeaacQfqt4~x^DxZUB5nLt`(_yUN2$DxC`)il_yA^XYD^@?Fx^=Cxo4> z5-bD)nZ3`c(;u0Z>MzY4?;_9#z$m&HDOq7vnabt*a28128%YJGhQ)T6rca!0{j!}qX#wHV!lWqO zAsY3)`;yxJcPn_(>gnCh^Zfj?qRU0e#QlEt3;_(Zg^F?^y7$q2m?IJap2VUR4|J#x zu{X=2_p(tlY~3`J#ahuUM#}k-0NABcqhD*f;hoeY41Zd~qjE9-m7_B0uvCqpIk&v8 zKf;?{6$OTeH@0xvl{<e8%zMN6d?a^Gf zMC$;n0NGUhyU!Lm$929}S)dk=&K@t`e)wbbep}eN&virK{ZEYs|7mZ0O#6JgGAQ1* z3Yx0&Su3{B79r_|$d4rQ4m=xs#{{ux9?V;DbZKxOtv~w>EltL-S%bhx*;7=KlUrNu zhB8e-v`4xbXd}7E#8C&G7e)zm^T~cwD>zpeJ&?;AzZ)@J#W2X5pHL2wyABe za_95bi6jsfrFWO)t+50LL*SEYfm-`ysY#2i-v@l}RW`SU7n+=ctSpK2P z8va**?W?8Kj`==R87~WaXqT|3|1{kKLTex%XR|11*R^pT5$(V9Re2|!&tsh>e>eT^ zrTiK8L)&YBWIA{-V04GBe%rY3uwDmmek5BSO~82X+8EUnkpvz8%S{9T0>!up_a6zE z=HoONOvOI6L1O%ln?T>9=}@jvE1;zIZNrWT8jtglci+-saV>))Lc(LvG`=6hUrE|j?9(4zN|KwL9G(cj-2Fc2l`MriR<=qg`!wchFmHG&( zBnaP1R1;2N0nm8VYU-W>IHq==JYJSX>!Pl49|+yqM?D5d_2VX}`Ti@mM!MTeS$;dq z^{WgM9RmiicdtvVt)^vW_Q!RxR_~<$U;7ye$+^W7$PRG@qFu7MW=_xA(s+KqHTWr* z3$=Q}6fP@w*89of{#bMy`qKWoL;Dxkh=q7_B~xf*)PSjXJdYMHQ(_mX(@3qCLzL`I zYr+XwZv(Er2;gBy?(;D}kJst23)0?_?-vxj$reLUYz!d2aY!pKYTbA?X{%`@??O(Yi-A*7@xH)XYpCgG>Of#K&5R{nGL5 zRc&5pgZkCDh_g={RQCy46$U?x0*eZjz*BL_M~p5&nDVlGtWKepj*8u@Lor`7SS27jP;9d_Nt z9>;$HK3hqRqGavKzpF({L<)%i0pLFWcWqWM=x*GzNx=s1h8(AR5n!?w=Au6t$wgJ^ z^K+Y%2CXs&L7}URvYAtO+aI6ot+z%|yTh3lzaJXQp7yvFJesSHIF})q_?(9+^#=Sg zp^ul(NDef-1X?Yv)up7v*TIY!YRtsh!*uzuFUa{Nu+hj`xkNx}Df($a@d{CB8?eLV zF|kl6K~gQ^mgUd}wAXPHl7RSx=d6-n^%bAfd~tbQxBq=gBI zMlwTLQHLmtpBP>ETMEVduQfy-tm?HpslEQSeCAn)$*m(cFhvim0J232@3qRx$AxH* zub!igUxFHDzcd7FNSlLotkb*f&t_Nwb1TNACErH?9{^?4KMMm1&nku8-OS*1w3quCHQOiLA%C`gxdfHvKL@w#yV2Owx3uT+;%4i ziZ%rOIB#iq{Z9q@Bhc34H4hA~b@`=!+CvAUFia_H%6BCH%LKcBJ$jqj!-9J$=8TcaaU=7HZV+B=BZ$AclDWyXNEeJNKI&uzmPv| z+~nXE4TJ^iypmz(V`T|yPertj*+J71%JCSCuLF5uY3D@-10!y_;+F1R_sRkQZHz@R3bng zO@Wd}0vG|t*skqZhNBVjJV9VJjz+SE0409)dkDclDXCh=PzMvLI3u_R(iI#iv~KEw zDz+{mY>AUc#s~H8XmWt!7|NMN@}vtH&?)TA3>gb}{EABZIpJ{pgCW;Ec>&Rw-h{r# z!raauMnZHbeBxgl@3=IDEcF?Xv#w!e9TB)wa=%c0^AuDu4yo-6bmE=?2i#vXY#lq;))7B}UzkUq-tV`4=V;d59GXJ8RG+g3_SA;xIS-^v`X9N(!qyMBlUR0BIKwE7Vu1k zYUtoRtuALmTE{8{&FifU*9Feeq8KUeU(aoNLSOB@@qFttZ6lK11h^LwY?CI;i=?a+ zCVxuzW`7yppXhwRfwcxNRR5!%BRDIz5(V*L5p)UD%{SV-TB|0L?pE3p7Uh%T{xk|& z2l|nB7>HQbpn|{9M0OL68x!cbM}FXbe&c1DD~9 z++TafeVC*1RlZ~Jb@ZR^E8v>zq&>Q;`*4kMHTe1m{Va)z!H;@+Rp+sqq%RzysH&N$OJCM z$zi?mnn5{ZJS>4>ATEMjisp==f2ANMGF8Z%c=I*S!sj#~v;#b1if4e@oLi_3fDv)W z0P}{QZGR@j4iBECm(^K1IaHR_D@z0dag&>l()Yfi&{F zdGh`3oSiFn-%sP1Q)aJQbbGHEURO&nE(8D z3YYeC$j44w%zZWoGU~MUeVG~(r!Sq+4Hh7SR!45-n6f@*x)+1$^7L|QBM$>&VEK@e ziQKLF(AcrorPvVltGmv*(n~VG)f z7e#*wSyJo8;H#9YU*KV~s+!U@g76zIlc>W0*A3^-Tt}W+2pkho%#|UgTcN0h6@Cy* z0wN{Oy=~=@EcQY+yrWfyE4?inzu#pEmIBr#OOBu}7&W>|Yin!IzW<5;dHPg)p?8y= zn9mwunLI5wWML>WgIfSIGwX$ZdM1bid_|C#ZBlqUt6W=}71GX@WybZ{u;@vFa`-T| z^M&xQCLRK*Yai34sa?cKTp| z*n~vX-*m98>AW5xGXE^c&H1n)%?{-K&y{g>IA7oCZfzLz$5B6AFbJA z=^56y_7lXo3|P;I2R!w^?e4cO$>i+F8AZhPg>nsi96B}EGvt7eKb3v>e@4#Dx-EHS&Y#lpMhQpz3k$B7gSU<)Unrw+ z*y67$M^Gyu^raA}u}V7ixGVkiaf zggf}9=wn6LoKH4Gs_5u6D;BpOAgxCoW#x-t=RI?~gI`~uQ&NH#m7s$uJaCD~L~Ev_ zPrPi&*6^scjjf9E4))_SUyvjSfnTP{Q|yOv-&L2D3a&Z2>6zsU_bbK&Obb(wp^kMY z5}N|2?X2SqEy_s(pTO8O;4JEp5+b)$Z%laj9J+66boDZh1j{U0YU952x(MP*URBGT zk)eQ;b+M4=zBzL~Q%}qq_p-$HHGe%h%BhJTanJb>IR<0K`YOv9q4vE=i|Bf4;^wbwN`&d+qT z$JtNqB8Z#MK7m(7?uGA#V~QVg?c!G&x^pe0o*sV+&G|i@bcIbL!nj(2cmh{tt(lYN z&aw2WYdZYqb)q@0mOCR$zLP--7B?83LMLq_Vpu(|1WUMVFnzFGb%@FWziHh*6llm? z_^urdBt&(mlPcwk+zfUg>C!1Yl&mur*Gtg4i=a7?N$p|=`3Fbq-aDot8$u7*SL7v< z)O9*e5fX0-omON|dpfwppUJzNE%ftY0|o*#=1m>{p4fYI%H`Wm_74U4{)Ll0(&vPs zm?abi#L=cneVkFa4Z&X?_tR_K_CINm^7_p6z+(E>^#N6#7MRTP$auViC9DV?#_Fkf zc0AYqX-BN3`Yhc!ajvsS$lzq5fICA<^-^p28ILq*$D*<_j!E_WmWyg>GoCNAJ?IPM zB79U4!XCcycJq{pn2+%#wfj5k_mx+h!>i#lrMvO1X!!nzYGj>ze0*N_(FEyoz?Bsc zo_C~I*~y3pYxcl|*)8qE$eT>-oWcRpYl-yFP`aP&`YyP-mV3uk^{%-$STiBH_s-Z{ z+jQy)(3-rZRq4XXfSgQl8wJRNfw@}3%37Qm&Nm>5qp(?y@{oSojpS8#a1-*j%$2e{ zTenP&1sJBxs1)HG9Uc8Y_0Fc@6Wu)@`DO_i_1sJg!oiAKxitST-Q9?;I%(BbIv9ig zNA7)Q4Q&S+$cEgSHd`|CAr*=?13=wE$*hzWC}BHp z4b|n6UDs%<Fdn_zur} z_ZVC!YQIMa-g9KS&Vw~oF_h+Ed(z&swlZS7yw+4qwoZG?_0f$F)(?=b5D#*HYugFR zqzR)pR|A{;S$)Op=&SpQ9nu6$&e;LRHHL8tVYgte^#Mmfb*mN|NIa6!8BmyO8h0S9 zk*|+OGaM`v{v{8eQmo=IOA$=0IE`6~)`3%O03C%s_M3a%zqV#JUJZWxoPo4fB4Mzc z`Z3Y*-t7YdO?8xCs+>y6yS^xT+}(p6uI{Ir5=)ZV@uG-9eWYA(WZtY*6o7Yt$Xf>C zFvHlX?SL&CEPzn@u4r%s5fqYgso8x{zPhAr>9{*fj)OPDFmtHcpsfX4%;t8|Tr!}@ ztx@#lJqq}*JT&qGzQ{2ozapI+>5WV-P}h}{oHu1h^juE6Q<-wn^K)g*o#}?yhm?4Q zo+I9rbRluDKRFa|g-XtRav>VEP#t;@E?OQzSFp%wgVD!%n6%WraxsdOsi6(Oxz`pd z8B+Gnhz1*t7e7gm`no}yP=eHr3(o{7$c*7>u)H6`-8~QuwwgGCaw2AdZ=G~ z*t9Mq2<2oS)e8{);>(|6$AzT8eYy8cwbT1l_)PqS{Ur`La-%)Z>gGziJ^oFG+95rT z?E^U1SGs#qo-g(swsktj&PGKX!&_3j9IyooN=hcnCe_Sm0>9>q#N>){OPH(Js*CW% zIMAr6LhoX{tkTIj#%~NdkYk7QGNJHo=)c#G_B2 z^%Q2ypC@zL&d7NAh@uRLCrKo->GRBq(=z74h3d+|-k(`NX zUU%%mqrfK9-EXtXB2g#*l!c%AKTUtvQ%x7;m&!ED;VyqOXx*V+GB6*uQEtTe5L4#h zII25pAC$+RV!cUADQV@&QIPw7P~MMn2jrvm*&_i<3c>}k*IPFWvVQ+Ec)2sodyana z+j1y9>Qni;brVW|NYsNwsC+v}FE=JUdvY9g&{*vC*pz3siCeGupK5Y_h8;rksc;z( z@obf%pC~l0SK)i3h97e2E%c32*2Oy|u&!&Pod733y2n`Abg9UbnF3XtE=B8OibodX zRuSmgaNFo@+GzF@fWf{w%vm`pNAtixf__b07@7~OUhEC_#D9ZDi#{o$ie8qT^-2V` zpC|_pJlQ95h>SLLuQE0J$}iE!xusoN-^=_rTtbw+YBRoT>$kj}gbMBY|5Y_v7xn>-6qrJL5?nh#RpRX(DvtC3vMz!#eqce$c>gKxh$-z=j*pY* zu8v|P%@)4h>)qr#QN8&AE+GelWBwFBf!n4Cxa?H$FwM{3pgY&oms`Y_X$hTf?}IdB z^eJO}&)9POG-a8gT+k|Y*pf>YuY;F6+Go6*881Yod(SPh)!$cK-sL)4|7t`CTVXi+ z5`9_F)iS4zr)ePK?~m-6yDeKegh87DELS*dD4NHU4BhFKzDjk*cBF*~$ra4nB3o{| zYT9(2ELIPxeO3KLEX+9!JMODa(U8R=J}H5E2B4LY4_lIn-G=84mE87eJJv|HyY|86 z(&Yz&ixbMa7`=Ign)6;fIAao%;Z#s~`lguud%2SXa`G|2SYbiBpO6u^NGP{^hI)r> zXhg#@M|8;518YI|Miv+)ik0r|ZJAH~r!uEJ#n%f`n_5>88|&p39;|>wM(y)bF^! zV@nySR_POscPi=>rW?qE2KLk;C5K8A+pC0|AGxv`rkMS3JXXtp`9={N_Ng#}9_qWk z_$|n|B`>b*A_zlZaj#n3!stA3zB7EnfILJ?L^?3C^opb~m zR7V}l5hI?j7MCxGz<*u(o+zR(X|#4ziXssZBaJ!ypi&SxAO#QT?-~wCJZfWNGnA;G z*oVY=BQV;$tkjWGnzhjX6-OU2nTXo~ejKU(OSkzsrz>B=(=;5O-*LCqZ++tzGqT|1 z|1)(!HQ{2GHZN>^aT}2`4;Ts>GDXDpY{!oYZ(o}`0Sf)*t|I>Z2vcq697pO7`uF#D zHBY?@y8wXPp6=#tFEmv<)h_?nXKxJ%ONL{23)-<6E8dI3Z@e_CJGNc?@rGF`9}5nr zh`7-oL9gfWn61hE8^Zp9aUw8`pS?QWem?M)dUS3w+p9O7uMJ*1nR%>5xF1H}TFl*@W0YRX19ggBInE}r{5K8%HOlC|@I1|ipbGWRFdQ7v#vK;+IW{}o|5J{2#3xWz?)2AIcJ)`)vq zP9jPkoGPIdAZsM!tb>r9p+A`W^Np>45trP*6)$7{{Xb&3fcf`EW#N=d?aM9ZU+^M1 zzkPz@kNFFgJZna@|sbqNaoI!oZ76 z&I2Ve*3km=4(W5)%x9o=P?$7Rk;Rc5-ol(S4^|Rq5|Kiz63xWMKV5zJ7Nb;^DJpUydkJ7frw3#wVE)64BCjlmk!_3a?8a!-?N=k={hiOd9*$cuuBH$zve9gL`v5+h!>o z_<8(Mm)y|vT~UeNP9;2+r_;JMTH=Pt{tABl5bEUH6ueHmb#(pv_%J5!w zUDP6PAQw9EniaFRU#wF5S;M@x%%UAOTuO|rAL=CxEh>J!@=^NzXd;_G1y3*(i!$&@ z7m$fa?LESr)>+klEM*{9v{=RQ0nS`OdY5I?bo6&%R^??89hNU^F~oiG$weg88!{s8 zgeO{sYvp~aT6v`xt^)Q->0O}L4DefpWRwmGc>}*@b5E=1H}gCSo3K+{9XJhu_%1MR ziy|Tqr`}OhxA+b`#GoRt;wd@sa8<017VLZ=lX@p)I%vNNDYd$GwGf9q1zzDAK`p;= zDUwMt^2feiIjt*pG+I=`smZhVq+Yl+&xn|Qh7uO#gL|^NW*r?xi@8y@N6A@w9yp--^i`0#z zOD7IU82>5*$mz~vpBuOM9~Qp4Muc7CIyu6{|FQL7!-v?2ROGGrR{*u_ng3*{(?eaR zgm<}LdH2tcqKeq`Ejl`qXLEF?v+9JK0p5D#j!7ZM5C499QrPgZ)GxKy zXQv(>XjWHyh=@L5^%~p?8Hk@cRjDCFEWtD0RQz1DdwAeUI){yVFTIyDHjx*k6*#VN z-+w1Lh-^K_-nG8s2*)E^OqmG%dlCH?5-fl_;w1&9|J80jEv8zKV{2kB<@&F_AQ8?Sp(T}^YZo*pb?N;IOHwfi-*n@@{1ujVg`j$hC*gVSxtA(7O%djOLNeYS z4uJrT8GuHlp8{Mi#dvee`1Pifo}mhSK&nM}-?RTQ1pUR+mD@V5zUuW2U$vEEio<9-&I zO+mBHe#aehC&JUmzPp4AfupQRY?vGI*r3v2V@6P^KP)b&-GFYfi1Y37QgMubod|$W zDJkp=Ey5oD{8k`y|7*xS;mO~=`sU^nKlH}k>P`GA+SWYAq}vA*2dh$ol=gOV(nl@A zea-!>YS*%!l=S#9mL1U|X=g>H=5C0ut_}To=&(?;;h_$0gIkoeKFTp|5iOa{cGuVR z6Cke)NK@0VG-l>KKtg?ii@^@s#8arF2H(DOf|kC9y5Wpmnj4Q zi)@KAMXn2-P{Li&rdo6RtE?@4*;C9l;q>0sR}fR%M>LLdBO)ICb(QrZ@x4jy@hk^{ z9Y6W4K%5;n2hu&si(6bUl1a`}GnyJhe2P12B&uXIdwzcy-0?j2F|=(+X%=WeU7kTv zPpb`p4Ws88KQ)Uw^O=Z9ZP;6> zA>hB>p#-liFrvk$*QdBO#f(5Dtu}!bpcp3Oi3|Y{WnwX2wqWcB6|8$kEG_#nW0>~k z)Mb913*vOk445FC`*C?5B-IncJ0e}<=)VAuH=tjVmlm-5Zryz zdJ|&OGRXXi#XLPffmC2IT@yM?>ovyjx=EZJurxrYtZ7zHiO4pai{+ls%I5ZtKlSMD z-umZ;zlJZG^ARsz4c)QP8t4%VDvbHDdo0or z=4$u-N0Urb?4_~u4Jj7ILFjQ+S%Yoyg5ye5XVnX%&7Uf%+`f!zLs6I2HQ%AEBAHKJ&f+DI(|q6MTVRCnweRWK=)>A8P$z>; zNyP8H4<@#C6&a#RG8pu#fX;`Bf1+jZhTN}7cD63 z0kd9PL;n!bx^x}zUavxWL~5za*}o0mNC7@?#ay%}o+v~f^asYT#SMh;xpSgO6tggC z!TJ8<+^pdTt-rZfNS&x>)B1{;geKdImSu>-W%{mIk&wIlqstnglgCDcJmpgn&lOcg zc)E1w*6y|~#l1pbL8)#gORO-yjb)=R>X=xnel!Z$?aXQ!p(#53;NWi@YTVLG3Q&;79jsVU~QeJ+g$#K$hoRz z_UjC;4=2swUMAxt7Fp%kQ*^$5GH_)rtP4d2M+}zr!z^g@lN!@lx}lyE)=%D{sHeH> zq-e9b^IeYJB)fyt?gM=Zc=9C@cc#aS;^F~$p}Yetk?~((`E^d)c!W#-dViTY_wpSc zxXVvE7qSDq0;KY+*agJQ#`gN&Uv8Q_jc)tcRO4*;GD0+-wUS`ue7Lb|Zh5|S=f&Oa z0o7(SVITHp@p=bV^>mX3W9fU#SK39m9JnU|?3$7`Cz&^1;r^{>x`Y$^zQ$9?zsvFa zkn6E)@3cY-EL0dKoe_3etBko3 zvGzhy@4;%1g0A;~ZoXr0r@Ogd=LitVh?AZPH8z^BILPb=ufzm3rj9Hahmkc`vrsB- z(eMC!op7kH=HC3L3;HXMPldwo-G{XD|)7u*{#}KmTB{gD3d9RZIW*dD&4(#}c2#2ai6uf|8UI4dMUNNJH484A_b5b6yA;e zL5y&i2M$aGUP-AMbALA>+1(>=bU<jK2 zxk^_cReW20t6MdTo!#n2J>9&*5VI_$$eY$TlCLogz3a9npwo(`?KsYO0qBHzWhr5! zmb5#%;n)EA`_5?Q)-RjrXK@k=JOW%;f2))+b=OyId3 z*Yw<3S(nQf>!|z}{O@r44*+Sf5mc zVPesT&w))fFL1&TMTPK#z;(l++&3vTLD&;3dmB1zUiOar1hhE)SCDuirma8l-?K0B4u8WKy7_uJFu$^XR)2-p3<70 z&9TRQOi08!>>Si|KhobsnwENU4!9TiDmE{yV9j;0%AuNxuxRUGgXMjRPaGh zV&MLa0B>rpnj6*%6oxg9iLE71+;FaAaaW8f;dlFDAK`R7fTA)rrtj)R9UnB&Phs(Ct}Wr8g?u{C@iaF$Vj+H=^ojnTzXpqUi(HQ@*W~?L_BBTN zP%9G$2T76fDi+Coy`2sm#(s3iJZMU5_09DICJl7sa;Rs&eSKReM$ZMik&>q_2kjH4 zs^t)7>`dIW6epV%Tv6m+IX*F}fGmVvv;$#t<54U(q1qJOc=~H^d;UG-O5>dK{ zH4+BMi1DYQdI~7iwM@sqfTF%-1`y>#n{IqtWruIljN(r12N7N9Z;JO`XNLI#<6qXG zRNmDU-BTM*5R_WKIG**iY`1SN=xL3}ScTEwwZ(=dmDhtlj2Zq2l-YKcQSueq+xS1H zzH=5`iqAbbtpp=i+t4zaG*$R{yw%YArRi=s|L`-ASN^oHquc%LNB7Q)v>y!e=@19t+m5(DTYK)f1+Uw_FE8;O|PlV)3#<3+4E=k!-61sf~03Gir zW`pMLGMND|0G^8gNMUx?I^s&y&=hz{VYNuBdHsdVpl|&rS%}P^cKe0aTAPwM8|A*k z#?iF0F$)e4LDY1;2>`@zjI>l-_REP6pX%30Kk!i{I6AU>dc=6j--<~55&Gz(malJ^ zc4FbUl-oCFO>e`z!U(NrLqFDZ;deJ0#`kZNNfLh6DQZSLeM)T^@ta-4pf=Dx_ac`w zdXdK&#k{pYp!bVKDJ3iD`7ipsa`)9tr;w^9W%8O z2ZIvAMUQwKrxYlaTj$gkf!lWzd9?g;Y;BTF78=C5X0wW!Pj~FO)LPAF{7UfahMR}C zrxD%P+Bv&D`TegnSs#oHMP#ibeMT5DCAdYUnLeL=UQoDZ)K^{lf`$x-kbvUK%5$vZ zy?*!j>Ft;e1@B+aZL1%EGX|w*BSdm$bENSH^G3z2iZNc-gY#iWH+I3fORE1$BXMlj zasiryxh_wX&b3B{%?5}c2_q`_ikHot##z zwvv7z2aVLN?wy=8dArW--xR`gnH zk_@(XC6I^ZljinopKCw3bGS4GI3k{*y{d#??OpY)af>|6_ll zpq{B58k#K8?$Yo(82h$JwT}h!5u=+%O#uR_6=z5})r+Oz>V^!lHt>pTF+2R)#0GDY zoY@f|!a!2<)CCnuA90!aXQo3y12SX5m=om%8k|j1!lVfitExr0-?N#R7|T<0BH5}R zuDyEkm4A@$)91>$aC+3GH#V6bA%*X7;;JvV{B7LnF7HBp5f>iB+(5SQuO;2-(4A}G z+&Kbr`;14RRV(f@iJl?wC)v_dIVuWxu3PhJZA#~stjK^Sc!&`sR)X2!lJ)TFogPW$jO01nPjUUhF ztgH=-bC|8-U@mF^wN#kUXk8aBAxHCRuqkOpzkf7YmS^f`xq*AiCn_nYu@)=#+9kH# zF62y0C57S5$(%ol&_MtFn5s>lOAZCx-*{@jNcS!vx3Tus#W)j$O2YMMgty(M$wg&I z#97iHZ``Y+pw!QZ|Z+HqaESnd1K-s-ZGnDU$NE`C9J%`Cn!$3W8wwl7FQx;?)X; zgRI5vjhDw}Q6;P~3%PxwYa8RDSL*(YT-x?HczY1!iqj*B!DV&ulwhIsh|TNY>?Krh zB3Tia$U(FGgInKviSF{J)zCApUw=$r5RK*u@gggPe!wueHbvsY zZ#&PUpN^dZP%(voCH*v$j>vJ#y?1+RR=Alfr6i z7CMOpw7Ak7@tk*<*ElazI~c(l5esLXxanxfG0Bd^9Q8^R&Yw67ysgqbG$2mh*81-Z zZ&kQ=9eG?uzmF>I%B-l4k0@2FNjV=JK_d^=SeB&UyHUx1vCg%(%EK_-g`^+vaa7S5 z7+DvZNWwZvhX&SY@S@*X<}5B`c_Fhegu)_j-h58a3g7-sq*%k?f1SWpLI*sp z$s3pi=IjfyD&1}Y0>VsR}6x zaPc>(eX=@!0)v^yr5~_a-K4&@nTLzD#6{ulrwAQ`wl`zwmZ11>#b&iwua6u7NB8}5 zjA{-d<(1`p5NFTBTH^NE;JgiI~y$xy$igo{V@swpL> z2-sx6?A33ek`s*rr}2zknuYCXR>YLnPfI*u+%=?5MK9U;kUp7gUvj5y!8pf3H%?+) z!D#(_@yav)00N;cC|=}9f}J;IMcJF32d0-IF>WaibFJB)T741PV@_$HP|jMjU`aOT zu>3D;M0)?_pu?q;PiNx8jx`qzZ(XvTPDSxJYeuk*v^t8J+JBe)^!2 z7*0s`>O*tvd{bNmriL;a#P1N|`bkzmq`;iwUMrz0++RWvwR zDJt>atyI~72LbmA4{*4#_~^J;*6(`}qP2VW+>2DP0@j+|1h|j2Li)B1)Y;|d-yyaC z?Ms!~sKx@G^Id{z%1Y649JN@SWU^d^HP|VX3*^IO(#j=O*kZrwbn4sd3ibOTzJn9uK6r|eE6Qcgh7wIUb1D? zpS_LA$^YzPV@}Kz_H2}EnIjGO2&66{ewC0Y{H6AkR-)fVh%_&=@VI zaqH?{1J?1X^+lVHYoU9|>46VCUS=a8XaUoc*B3H;?PE7j!9H|Zf2p*x{b*fLWI=nE znYvb&0{q#wi4M{~)VZ3@4-8(w{JHx3=& zmEd(13W~n?wB~Os!2NyHw#cTiwJcRtYl)ReP=uYQ%JA(G7^E8~R z_hv|lT)L5aqbMS*h34LJnahw%F3l|}x!=ObZ7va$%BAEsOc6u1?W_Fu`xDONan9p> zKJVA-`FuM%L;EX?;akC|@ZRctUaOk|TbH1K_Zh(LRE!+CDo)VAgh6#J8|CsAQt{FQ z*Os=#X*kx*-w=6cK(>T*r;Y_zxsH^sUVY^CQc3Bk=#}m#u|>vE)TXL}nRY3FsTO-k zc))DbSZPw-6D{92APw!^I6?JtevZRlsr=h{|Ht=h$3;P`IGO0j%KozjDBDR>A1#q& zU#Y_Y78<|>6d%Sz-jf<*0wP9KMN-y<5kC2ilI3 zh`-;T{qcIZ)BPa&=$$Yq9#>%&V{)+S(lT*3^-3_w@>1p2Ztl^&s)cMJEjb9a&~ar2 z6uT`qp!MWzj3Kv?EYR#kZ<6ho##u<}u}qG&q8XKcQ8wbxv7^fGM{#Y5Ok@eXM~C_e zF&)mJ}KHwB(pSjvuN463MTTBmOg4fm+dS}?baD>q(!p9Rss}J(wyV%@t3v<~ht)Ex4Z|E*WS}TzH4O zinA)?g38(eB$}_uNZkx@J2uUMzX&rsEisjJ-T_{sk$fJ~I{-mCERv{V)`~H{0aHmg zl%COG0chJ-iss~%JFUn65BdKPM{hL_f1cQ=(L?;CU!G6(>@$2by>0MCJv(8kzEU*y zpaNdIvS*e%uPj&vdh4!u#OOs3O+`xQ)VG7P>*Hp_maZ`{##R@+8fVXlH!+*SHzrin zI+k)wRZrpq9$*BN+^k+mEqDpld;WZ`8GT!bCH8Ii@gBKL%|!NWn4d5QdaPdi?ZLL& z;Yt@NTR6vb$y!(OTC`qcUr&j__ht(ot+=ck=1Ruz#&utWNEZ6@6dF`_(nY6%yQe`U zh7>}*rDSCW!itz%k~QAg483VvSM#Nx{Q&~;JFoT!{cr5T(G>Gvmdx$==P}m*TI-|l z{z-Afmcu;C)jO-TUEboJmXy@G9M7(~CqMtw@TvW)2FCg79v7a&dq37{I0TzKv^*Ev#FckF49L*g3q5KU1&6N%t&v7qpxA}d;CdtfnY1Y-Bq%sL5Uk; z84@w>?h$)^)jyLY(lYIetv_L!{g9{K^^jnH7@<~~pK{2)y)oKsFueZS*j}0WGh149 zZuKe*rH&z_G^N%?Fn^_$KY+~#6yier##_pr(o!WPGCf6!+!Dlvl*ynn{FmCV4mZAa zX_}lm3;Q;iIhL4Ntc6s zZ`|Cc^Mq_lyteER|2rvHlwcRO9jf+D~g4IoQ3f27Uj7v+D^bht;i((BwRW zu3Q;~YKB^|OfDLiXM%9mj8aRny6T8K{^&^)-fQLq4Kwf{)D z5w@UyPv@!N!b-F6pJm-6+ATZmzwBEdB7{U5XnXNVix_j}RqSEdP`RvL&-Ch_w_kr! zsQqNh&kMQmdJjSIP6k8PACR7jZg}a~P8#WeakRxXy3*F`4Vlm1uzt5V#iATVK#8oh z1f}ITu;p;3uu~ms^r>}b8Z0c^Ipf0#IqThLgC69QJmb^0e9?X_K^*a7!*JiybaDQM z@Ei*#dqzo!=?N87yLRRu-ZvOwmo`-CWmDcx27R7Mb4iZaT%URB|Ll4_kaUNl0$qG6 z+>A{g?N7};3RAp>q3vs#3%~WBSEmHuZucQ(P}9U?j1yP3ii#7ezjRy-?Od4K9K?q> z{%1NJDCAg>0Sa>C3qwz5ap1N%e)#aLal*Cue2GV_Lp$fbo^G|*AqGB=S;ghEA|m0> zPU=CG*@f+vVnC?iQd0K)=dc$wlxthXzC{M>h7wLXo2X3Q@Y|a}7Hq5_E$=PiZd=R5 zxrr;^&b#Y5#y>lGR$A0Vt}DIK- z8HOl1nmG{U2b_&L>q^CKTHD-p7$bp3HuZkXkRU}TB(WT2E#>!Kbb7c7cdEGh6#3?I zbpOt^rO#{C9ov2wHIq~S;w+qeP^FnM|7PdD4ymPaTW~C(q>rRJzsM9FB$FLvuDy_A z@=}o+X-wr~jVYFrf~Wu6D?gK&?;U`7=!+TW8*oAxzIph8ENd2=IFUDT4Rf_Us$)&e zs8Mt}^Sqf^!uoEyHp%HH<204;wJz)!SLGwr-{Y5gm9Bg$`_UCe0RzXgTx?(k(n&rW ze6|n78n_A7`4Smf!!`1nH{5I=9{_b|)TvRC<|0JNfvdPlDyUV_q_$%N@u%a{|L0ml zxe{Zw8K#SjyRUOI2RA=2U)vz;ytc{*wSB3zIFKB#^VyPDg|kyrR(y|XL%ITtteA;a z7*;@@%7J~~$MN=zmT(YnlP3&}es3m7;JtRb^zY7JL2UH*R*%em&UgP!p=OEu;nV4E zoQ#D0`qX@l&<_KO!uO+(r#m}2Bjdu@=(OU~0OXC;Bf{cmToYhyD{Olq>OSfVBOZ!Z2P?@@h`{5Ju z(G_A%W^Av9uY)PZ1h3-I^`v>+-rc8NcPEW8BFv%@tij7`mEiS?$R0e<%w%O?EcQ3k z&tWm6vX{P^YaKpu#Vc}mRJ~{i1tU)Kc3-)#-7xl`(~}3=>PvV0nGhF?6(EW*1|fRt z5{LeFl7a{9%ZEC>?0fEQMWeKYT;kb-NO?pKI#AHIl*r zEKosh=**=P3md0o%tWgfW8AUHRl+qGg$WBa;&onEn0z`(Fs>I;UC> zE}VpudqdjA@MN>LS&4b(`9{NG(dL`4rPeI8_eT3Ece5z!(1oq!VdH@GxtUCH2{#`B zX2qNTbMq{`zi@U5BvZF&MlyA*_S+93#I*FW&drO&Nz{ymu;|+Z@+e;v84oW9Vxe}b zUVOT&zyF`-gO&YwbY9?C2>`bd^CWARx93!~h7zcp7Zf8!j3c@9{9oq=WrTedu_1wx z!cP!JY_KI!_{37y@xyg_c>Mz>F9So6t>M!FJ~PruDJJ4)?+*XZ&wU|n@=2sdwrEE! zp|#)$!Z7n97MU8|E48u$bf_-A_64gL`J`4rJcE|if}Xc6!>zx1+VW1 ziv+j$K;^YZCAMc&6>!fBN41aBZyTL6szBeKl8#=N`zT%*iHsNoZC;ub7vmG zo;spe*V-dXCk>ibgla?>YVAYo^v!A?`a|INRrxR|H+woNh_OR28sGFbeTG=jxqIw$ zhNB;2q^fbY<)C7!Pop!G(K9mQQi8wc1Kl|LdPt-rPk1bo$3(@1avzBFVQ;;jMsg|XTDAmom#QX5veT& zxHHNS5Op?L%}1LE4a!M8;Nq#5@dE|Wn{P_Ok;B7n<(Hi50!YxYyHnevMR&ZHbH#VM zW`8+n;PGjEHPH>@2HejLOUmS~$i(9_z1p4BubZ-9R%x)r5G%&Kn&a@Z>2P6v17sba^$Dwlza`7C)^hH(D8X=?$Z_f+zk+B_TgA$z~SenVV7vV z82aTi?db&JWr@D6N>nfXh4Kd`M&4Dq?LV&;MHx_e=tn4v3kfUj{$VILW#VwTr9aJB) zpcp;1|Gu+@6+~I@m&mvCu$b%mua?w!qrF~5L5?xhH?j9JF89JXOVp^%jjpXLA5*WY z_Ux8kcQvwnAV)uE{aF>X2w3AbiA$4dE}EC$9fQY2E^$Yvriv59B3pClxQonF5K#OF|A0@NPxEbE%_1R6yKxK=G%rIOpTzIcxl4 z&_@zJLBlJ>ku0D@ogo%o=zE#y1?1$E0!Gk)LtC8*l-(~EX@r0cwXR%Fn@aeu&oqaz zyRudn=R(kYE^YY7?=r1u@pFn|G-}D@>_E;eZ7DN!WjU!hSvWnGh01}~F7!c0gOmdn zr`s!3_}OMKzs0-r9jSZ=BNCB;{lYq1ZzKwRizdVRG&^LfrCR-fCPV8?KQFuj9K9#J z(s;SU@(n+E!2ngOcfMDI!0AwG@az&4#E`ob*DLNn0^Ii#J)fA6Yh#PtK#G&=Tlwph z4rV{ieCShbVr+6y)0hb^i@6^$t9Lv<)wzy(2ACAQop*MH+1*$U6)d>z=oT{`#D<3^ zina)msIGR8Bcnb@WLSs{7i=pJ08s5uTT3POyHY4NNTd43WLhZjEN zQq>@#Z@U_Vd`|4)V?yY5Kr$bIGxrPGh#-i{N2vw12@GGmtAUDS| z$RQ0CNUB{|i!b;%=e&ne(h!&Wxe9yKlu!8DF*3Gzv=pmXzVHH=?Y%cbtQs@v0|mdt@;csK=l8^4M{m#MREWqGX-53=6hEZunw65DPm_}51D<)}LktAl>zVA#SR#y^ zSKg*;sLG+U$DU;(8O6%#dz6(bJ78mtrsm%H$3%1>Q{r^&YtdL>B$|W<{KJcm7`&xW zn=!AC>mE;2elA{17d)Y(q3oPtO?2KCp%*IFuRZb{6z?Wf5Q4d!J%IcCgkejFl%-i0 zZ9QGxRE!?`0m@xZwQK3W#JMic#i+jZ()B?Z5QV_%$QJ_DK>K>|#V7^Sa)P z^;YVu^V)Nw(*@qjd=jqs@}&IW$#7M1@*)Z0rN24b{qVt5_nmuU51v)bpmIXXEV@!x z(B=&r9QPhtSJ-K&_qe|>9WC-KHXGVIrx=N;6%+ke3hanOA{g;A=cPloni{XT5&#NH zWpRx|m-pS!=BF)5Lw=$h;@U~V7li^x?Fy*jAFs+v^V>8auB(@@2qlePz-epE(`Hk2 z+)qldf4GQn%Oj4ED*4k~Y7#>i|3rvzBhiMmcjWjp-m^KuqY|?KO*-tp*Jq;mqo5VbG_s7&Tnk>};OD zzn*at2H23U@#oOj<#kYL*0evj#BMyP@sO>9`KO@qfGcK%&ux)MkA>2{@!7%_RCZl2 z^*~g6Xh5J(`aZag%)3F&c(PYSK5i}tCdIrN?%op zO+QWO9>#=w^}GHs+}jgVbno7uU#Ft+v^%#P)hH-cN&P`f_!r6J-WJJvFVHS$+AFfry%ejvXU5H-94F0$4Sp6KMbm7Y;J2fUdELZ_H- z@E8y97bN+KQ2K9GLz8v=TC!geedKXJXN8mVOiveafUy;z6Y&2cwlmP3QCsIz^WiM? zeqa2|r(pjqY&&d&gE+v<(Sk=)%a>w>^f4zP(N;Fs;yd`Mkn~B$AT2RWI88=YmMlu<2* zjAG^%t!N-*f}EP^*=W%LV2or5ycMBRe!g04zfc1Q14YzitfXu$K|>MXr-;>gWW`+W4=!3i?uR*}v>5oz{_Y>W!0<_0Qm; ztc0*sf$LKKhE^F4dgk2OlI$uPhyt3+;RLQ!v?l~$hp@{$o8{4#n@82 zYMktj<^%DnQDs5=_kr78+zUhNv?X?aiXPk7H4ps!`eo04Aw#V*(xg<8bpOZa`wxF_ zy?k&5`sMQfF;x0k%GWo^vx*ySDB%Xmzt_*Abu=uDqy~iX!5PFoWiOLFBl7ugwTrGK z#z-fC`h+Jsta{Cajeon27U~`gfX;yN`EOHa!BR8PCb}PM34o9O0H+{(f{eO!^m!5P z!c+VbEFMui!5DRGPCti}qw-EJZys^@h6nB9B=w9Bm^Zz2HdiVlF`n8vzvW)MkaIze zE}hvp6JPV~s{PwXtNR8Cuw>r$)8V|cJzY1e`$7a}fehMObBG0LMW|j$EJnk2IYOw^ z=g>8|rjXZa+uqM*aAV`i;KlY$cHx>mqg4BB-D%V8^LYb+%tupYJKrH3!%4Sz7hK`?Zq8HN5<ZX-zz4NghH?HXZ0RR7rBRjX5(u0p5Xp^v;4&pt4@nM9J=jn>?d zfn%nZQ?7Uf5BQDX`+_%xS%TsZseiT9z3D0^P58Xm?4OOyZ?Eya<%X2RVtq0*1HL6G zD>R|ycmqp?_)Z(`A7oqQEBcZmTF_1PrSEG5nu3!`Lxl8&MAqEwp8%uL7J|w$sh}Zk z6dfQc<)pXoCw2B9^gMwoPcFAhhyzF-x{3He8g57yP8N8@PgNWTbfT!4R$)C&01S}D z0JuwjciQQ#4H+gFZm4@7<+}cBCi}OIM27Fw6D8gWDVSg+cdEAxdoY&QLfbPgzWriHj=~XZbU6^!0$wcJM2)`(0_}-Y4N+e#y`GlGRKdin+eXA?a zb%kds9q+2^d*vuY$wBh7Ny%%wRDwmmaBCujT*o4Z9hFq3)CEYn9CiIqiRk3p_;D%3pIZqh>Qc{9c#m!># zXi`ERz+L_2_>z90PoG#Q>~=j$%#vdf6n$0$p{~zI*xtBc>k`oKyyXuU|FwF zl`8f_@WMX@LbSgYd}CI-L||?mFSBg&Os&}Txu$+6ecy3n+|ozbx;dUQpy?YrcDB$X z=c+3!m7nM_HNe}c-NgzE$*&T=7^DGBhE5aoyqwI@Z z1M4m8(xTip5YJTedjac)cghard5Cg!OK;Q`H24HM-0P$uM|3tB($*4efZij*Q=JK^ zd7j}^H_}z{Z_QMG!Up6N^xkfmmFpRS9n{bo6zA|w0l%WK&pEBNTZuW3x z@2|YSi1*KM@U$&FrgmW<_VMP-g;k!Bg6nRMVV^mUh zr^)b6rqqsGV@ERmscf}XMNx5{m+&+3>+p_nU^BU%|4se>uufAq$ExZcZYzT~%;K3((gFF2*r)Asf-D@8h!j z3)QX;?uC$*73isbzC98H?ZRJwfBh_8?p}ANPc31`mY(j7F}K?8^1yJC)!;$T9!X{>0bR)0zm@8uSDoI`qz3isW8U&dl%af$5jFn%g2-JhsQg!NragH`BCB_FQ@x zdB8r!q5~?F0x(iGI>5n8e9;8k8o)x~dw0$_2gNS7(E&&obM=VU;a!Y~Ki4d;!S&nn zcF+0`*sy*tsAQFd`=ibN`%DFT?H6A7ZL3&v#U$TdGEz9s?@J_OJ7|sL7ySf$WIt;W z3rn(ENouSgaOFpnEi}zGpFE^5Re&h6`4NLd3egeNEBK_l>d0{V%KplO)uD8|AH9<9 z7}?)npKXV2?WM$MQ-&3u$S#%txiA=f^8{@JbQaoUwqD>{^=himC7a8V*LmDLRrJFQ z^kea74m;kMi3_J=dgD|xw1<8TRNR}D-GS;jW_X!q$MbOjn?k%)kGq^+(yX)`vu;!8 zD79-Er_XiCL&7%HVjenHKHq1oX4Xp#f~7Uyrk4U1eqtqG^kTXDk8D@-^MxMizH)z2 z;++;$8vu#oKCc5P$Lv$Gaj1qq=ucQ9n`-B4`r^ znav@d5YxXB72y^;C}3@G zw1zEBFtUvY_XcIjaoUiyZ}@l-2huK&J2xSBi^;9d5;hd)whwiap8{@A_X)1 zr{WN{K6uLUb^l)NaeQ!o^DH{@0{ZG0Uo2A=j@5-_CWQ8^REHNYOkf#oMCY8?diaDG!DnAeRGZ;^X!5ke>c{NMD&l>U%&;`w2=p}810Wawi6HpG$5BdR!}l{kdlGrBv@g+IX=mkEMpoKlf|UnlK+z-3WBUI7LJ-rMmc zvE_4qN#3;Vmy-rDj}!#9xQa7_Y+@dstg|G&5yH90cd#q49*PS1(K_%h@yuu@O4`3Y zO!b#Bp#F{L6uQAOLz5M>e}d2WXk7VcYv4>?J%-O(AX2y)pXH@ZusX#JPn*jIb&ij= zMsllo9~4;na-0u* z_HK+rTG$wz{2UxWog461`x6$QQI*^>^!bTnz|b9XRD&}6D&cK^)_DFWcw@>97}| zjngOw6jQKT)PsHVJaz8p#>;n1Xr>4m(z0i7&<*vdqo_$9jZnryqL~R>Bk5QmQ#Z5f z-t5$#Kz$=D^9*=>#2g(tI4pUZNIfZ$j_BE&bo;Yy>;Ijr*WaVy?ifbhMZ!v4evr@@ zXB6NS7f{?coZO$KxAe+?ym-6B+$tVYBH1P688>ind$d7S30thFdHo>gza#GA99B;@=8Q4CWTFH;1l|FP}AP9C(w;vX?*ED1v#q?Ry?Uy8R_)%3klE3i03Y%Fv^miTe2gmT7>DqUe4?ro z5XRq4*ohdo6h7w3-Z1iJ4vfwkGnH~wq_&@a>0XvWjbzW#m|g^`Q}5F_pHkcn8=_1! z@R*UTQc8ctRquB{2M~j$knxZi_ zwXm2&_ZGf*Kd-)*vYkTU-TAW>jOY(N)&$D2zU+}Y9ti1r+ALy5t{S10x!XhS8q2fj zsE80?UCIiMGE4h!?q^w+nkC@oxA^ z!_p9f*pjGx&NphI(~J4e<=Tz+lau+c-3vXG5j~N8TRgWQdE9gmQ=kZi_JKqQ!XtZj zi$YLqnTSHu><975cwSTN$@VkT9};JZxsPcQskpnoMtYhG9XAGWfT`V)6VZNiaWtf9 zPyp~P^Hz7uR>4O5`%1Izmgy=Ld*n&lyI;daZ7~_4ah8whTB$?QXdnB=QjaMfKL@;l zWxVAn;5O`xC3zS&*tNyf!)@eVk_A@rvj{u;(44Bajs z@#o6HI#crjmcIrE3_GXLYw(YKR<36guP+NmD$Mux?%W*_4IFKRuoc=rM-?G{Epa?l zRms|46vfPZ63WVdIBF(@pwB$H`+K%_;6F8Qi7c&nQ0)adzhxzhirEC`2~l&MUQs1y zf|{6LE1+JEZ~`i_vP^n3Jq)Xs?@zc;HzS)c5ORar2Vplx7A?Mbs?}9m{G-@rIK(W0 zQwJti6kiLmMbnbk>wOM|yCbmTEi+yZuR5!q?&_8psm=BR2gXxz^}Ni(!oZ#GT_f-3 zTI3!i|}zPr6+THd=4K9z&sab3EQ)d(g4z)GSg z-${oTQ`}rdmJI#JS949xL3%m_FZ?8|C61P`yz%UJUp=TTzYslJ!jSSY0g1Yhgo_W` z-thBvr^ac}cZ-6<(8|ZTHTnLrZize&W(U3Ds@bYwbxrIg>`Ehdqh)@zsdnQk!GXv@ zP{alPp+brdb`#Bf`OOwvP<@u(2P|wD8)ZlZrc1^ULIs+WGK-5Tnv2+T?Yy+ZnS51Y z#ZvBcjX(|xqo!fjcZ|&tx?I_E-C<>FZC`g1%6zE`u zUDAA0*a}GJBajTS?}vts5m8x+-XYF|2fOCl^8yPjLBb3KVW~SAVp3B;pWP;Xz9+`H z;tN{&q;mYW*FH*qoG(9$=Y4Npk62Llk9 ze@vKojw_dpqvEg{4<#uG#PwNNEot+HrG;UzeKp5Y4TN_?gUk7N5E2{$lyjgQ`WAU{ zQO$^Ha{}B)XYWU;)&(rIU90oBUN8QY)$JxVmIs>$djw#DyYx*^75TB)2GtSZ0xH*1 ze|m#hux9s~)r!0bk?eJ$kMT)`gi0ftQ2LWS*ij*b@m9aSfQf`zcXdV1+jXYnGYvXD zUed?QTlJ3{28f8fd@5+v>TS$lmhu|3Pu+4iShFDd?==+HQ(>hw*ohNtD^l*4L^<7e z+Uk;r$b{`{p*GyR%lRH87L{Ut@}-nvM({XMFb&CAA^D68+pcIvQ{^0&8&qG?pa~aE z#1^~9E^}feV~^PV`26BC3;KddSjvF+Z=ra^bmtf%|00WdMB)5 mGS*igv{IU=InjIsy7b@pqT=_Dj_fs;09z}Eb9ELz3I7A3cR^(U literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/10743d39eadb4f5500.png b/docs/static/processed_images/10743d39eadb4f5500.png new file mode 100644 index 0000000000000000000000000000000000000000..790583d08d31f6414e5f5f4120ab3896a458892b GIT binary patch literal 29865 zcmWifdpwix8^<@poF`_^8zGcq`C?+`6jDPfrik^2Q9f4eRs_ycVY?{@+qTb$p16?dnf?yTHBGP~V* zj_+plDufeV`uf}!)l1;S>T_}U*V7cjwSCs<@@2p=p$fy6R!Ty8OgQ3JF|aR zVTy`J&G+`Uy5hR{ADh|{f7s454Yq%ldntcbLjNHvl2KK--5&ve4_cLT6dJE*+<*4S z^v%-d@GWtrEDR>sJGZgvpUhiMAg0g&T?x`3Ino)$bs!!S4P$VwR#8MpOG_nn(&K$&I{oIJD+D1n&N3i;*rFH zota-rGrPO^xHmt}H|=at{(k-Q`$gB2e|{$KZBV>ndesKqu4v7?K%9&zbxa9_&UFtj zs7#0sgK>hPFyyy1czn~4- zIq(2CwGB{3@xyg4yDw6ahV(2zK83~nex@<{j*5dUc7t!%5zhs!^a9|-V{rC{a?NER zmS6?!g2Gf#*_rM;+0NEA6%@*^#+a%fxGurM|80iBVC_~d2HJxfBI$Z`ds6TaGxIy* zFVA@sBxM%^Fs@4Vpdogq2HT&$w|cbm=|$%m{`^0UQTgTHL4@S(cL8rp_BXgu;D)I7 zXJ|?iS`l5b|Li!< z!Xl!&@;Cr9;(f>_@XY|Odf8#yyy2hw#i-y5Qffk1dR1(G_>TP-J4@Ia-}wI@@5=ZH z!{0hgGH5iHpeuugM~|dmYuV(KYlV)8yU0MW0|hp}r&j;`N={y$yN$g5B>eoN9YJ9D zeZ(mGwzJbQM!S42c-bzEg=V$c{bulLMJ8bG-AYuu!)Sz%HGiqigc=F2a{}?U)lJ^3 zS?%R*j%LAK40vsJ!BqE45=$EG35m5}A;WugjvqMeF_BJu)*Zg$F_rxH&+9A{x4Pat z@XwM(*LGxJV5_B{i!xnKjG1E^oE!ew#gYb$$*Ta7{woVESblH4F=BOVEqdi&?>ASL zJuET$(FMtEYrqcfT?_E|_a9KYrZRO=5i53BG(M2ac0il!U5mcVU=wdSr2%Xb0ahy6 z9SIL0z(4DkD|yShx!$vtoiKHFmMCbsxK9;MMFiX@7L+0cIpFVa_Tv(Pm$;xh`|{?p zTfk?VwG@cKXT;uG*6L)}-ey5Bf7w0RPZuWQm#KG3$q)En#f$FGN)45E!9;}mRkgwP z%H*9dv#Y2*4tbI$Q&#J2YWLgn1UQ5&gQGfuKaaF1pe5%_As{}Fa}lfR5+FIc01nBk ze)X>AT^cNG6i7JiM}^26Tb-~?oXVED01q1l8Nv-sz=D(r%Mau_#C%d^FMyWV<2B(a z|MUe%NDqHoGJo-~w|%4P*SU-v59J^I3B4s`FBLBC2@p$vPeo~f=+(%>yfe>Ue+bM{ zKTEb83yG01>)?0$nA%x0AR|CC6tEQ?eorc3O{q4mjWupTHV!u2rrQnRMCp6BCe9^! zs46=VsLfpvUp9;}VNZx&4qv7SsW=X*qKKE&5(kz70qS#ZvmL#5AQnqD>HPy!!60v>s|Vk}6GnOn~A zX~Nd)+4JR-m(~gH&4q+; zY=E20uQm#7E-egzF#BY`ad~(dOxI93VcUET;xem7&{$x(HFB!w?IzqMLGed^s|1bN zY^~f|zuoYm+<(wbp=44TrYu`m2pj-_^B4?+PJ5Hgkl}fUt(>tR>4GzM<7DFCwd+B5 zgDdmmbZ}8c)^I{1oipbQ9-ynCs1SOJX_6uQ$t$*5s8rhu6SM?cvY)g71JxNX@CA9> z`el9K&EZzbJO_m?IOrHz^>Oi0<{{RkFF!D3ja_R9-q45{h##ifwdJLl_BUkUbFKzI zF-5)-<;%`7viLF*6yX3~uVSnqiAUWIAbQUc9w*yKsG4!qbzyyaBck-*pR+Y#Sh|(QD=>vv}+e z;3W-|8NpgMOfzvwQ)Twq?#Hfq>By;{&nB^(N{*$*H>k}Ydj21Bja@uu?vHg0ASfOE zC`_Z<`IU%dzJ2^#{RUixMI?57ABrMZd774!sifUIw~1sWFM7iJVph=2Cz{1bTc&dO8wxYE~O>+c=^2MhLoi#hadTr=}l2z zU*1quatOW}BFK|3VJv_R8=&5V{4-JwY^D40p}YsqHvg`k;fFkK*vyoWJlOa*CMZhA zq()Y$niy^92tGKay6FJ1X=BIhixjw+iHKUFb&tv#`-gqL03aikuotA*OT{e-hVZLs zTQfel;X(u^9E%vgdZGzw7W}8}`f=UbMR^m^cy>=Is#_JFd-;7?2a=k>UedG~@QdLs ze}I(tJ%Xf|nm8W_7t0eAa?4;oDt#NZ7W?A$c>-hQ+Kq{dZ*854!KLu5+(GKIPg{C8 z9Y6l@tf;s8naf!+dY}QRouGuiOzFjQB$DSG&dUQgm!D^9!)H7pW8A|AfD8Ic#Xx@i za7x?K=;ekD;B%p+QgXuuBNQk~kOylEDG{IN`Q~K_1hWgKc#e@f%<&$(x{q0wHLyYt z9qB}2sqPl2uo0Qhwz0AMO15xLoX8i_Ay=XMi&TIgfrDw^^)@p|&t)*Sm>rgA!XcuA)IYLZ6ja4T3 zDG~U%liO@pMEPXvRhcFZG*1)xfNU$P4h$w{VGc8I>#_^x)!*M}x;eA1K%UjsKhS_Y zAJ48%bLSZlP0z1t`6`k3S#ddG`NMN|l5dSitf>=9&C+cvSGFN*s$lLgbKyl(=xPjQ z2Y2Y~WA>^bOFtc$dxXUE&nwL~AO-#=2Xn>Lk(w zDr*?Sdh?yPW%;3{c;tmro?-TrK|kXEpBE>do1m*#DR5KO`@`DpW-) zzM}rKlxxoffB5cJY4>tQ4JjYec3Qj^m}2n2 zve;4lV-cg2GPQ9e;xM<&;fT94s(d12R-PzB^;r|i-~RuBOFL0Qpk1kE(DYGH5)R86 zQX{c=tmezIom0M#@g=&}M467=3Hz9p7DIUKw*LKt2D-2;eJvvJx{5U0O{(8vIpKSi zH@P?0sQrPI^Ly(gt4&ZmI?PY0J@%DURT%N4WfgddQOyEc)2AK=1uDpzo%N8r(olmW zOcgz#b6#~EG)tiNb*Q0tv7)U_mU+X+TSJ~!`>c&$#3HI9zhM>>Uf_MDexGV)_C(%0 zPed4Yo1OJUYi|-o>yZpF_yKypKfku^H`2a273M9wR=G+m5hrg zj1g-GN|9E!gaN^tc`*yIe8`7jX1>W;&$Zz%(;Fz~yWz<*k~Y6PSf_oGnswnD zKtk)vt;q%i#hRm>e?DyFUT;wv|FjFShKRbqGwRqSL(8`Gp9NUWMBtA4{cz6}?25AG#ww&tV9kt5p$J>Jmf< zpLswR%mlG{qrPD=(f3XAhMxwfJmd9KhZZp%155cSsm*#zY=^A)A&#`(^$z@e=}Anf zQvV}&h*bbvE|*7We?9qT_2Z17hWfR%v~*B(cWJub0n25u%G3!lvSo_K&^AyQalykSwIfbIuFM0M3vIB;oRG&i4%?aci!Iw7AshLI zamN$g?;ksH&)c#wvD};k4f{(#$h1uOc0l8pf^n~+-1q67M)LV(> zxIRx`b|capyv*qP*ZmPy1yoaIt9;I_hJY2IxPzBk(Y1ZkQfuz1jH(0NwW>U!41S?? zz*D`ID-2$>EHs^IA15(RUW&@4pzuq1AX2^zZg+(-|Dy~fV@Zvm|Fa3HNoykwT7Ls5 zZ}4d7E;W5U^E?{X*u@l-cUv|c*rVFVRn`gJeg5LjlP_(Ty+lF_JU9H%y5N+gZtEl} z)xWg#_W*uF*g}f&iPh9U6DVyOZTqD z8aC68Ko(vgZDWJel3cgqMVKaM@qFy$obKQOb*`T_>V@v{<&+3u3@U%a-vAzmWAwNO zcV5|!JU<=JpP+oR*_j?QqT~(NiLj>KCGFzd3a#P%?fvi@RLFMMX`fUvSvj%q#3~6r z#cZVE1-78MPmCMV%=%!go+l#L06P*JGCZz%jDTkc75aBW%uwGQX^%3@-E1UGPiff64Z0qu>)!@!@bhX^y<`-|zoWKZ zU0WE)zcJejSpyj&J6M2n)Al5Q^tzpDx2{je$`3aZ%k2Rzz3Bd#({Nvje&&^FbLRu? zhR<7+`Z31cs)(r%Dj(W;r%D|1(WLBfGhS(M><)=GSE zlpwrqgNV%P$rteG3o`}=@K-4j>lH>BCn%9JGFEJAqUKvf3lqp(0H5at!Y-e+ z{qBWE#qOqFqhg(sI1Sl*`!YjtVG8x6!Qt!iom+2y-O#1rqyKm%0!=e59#|4lNv(dt zXfnzSJcN$rNVuGu{&XBia(YxY9+y}cbHx|u6e{Cm7CTbQ7(9R!e=fUQYHdEM`eS24 z$g;jt4IOoB>!Vl|ZbO7(fB4t;0}{@5@u#hxtnky>p~#~5Q)i~x~ReiZ}`xV zyw&Lw#5YhA6xqS{5KPzqbN@S0UsP_7^_O_=s2yQ%Z6;r!L2)>TG%$LXtN>raf~Xa?yK<5!EAI3qasX+}{;A!kN1}g+K5V7%`lX&g z>e7s!k2pjtS6EysO-f9QAZ5Mjd~^6gFVmW3qA3ATsryg~E4MHo+~;bypa%NC68c)+ z-MVF`SFzLMHQWY$?;ILoNJY%xB-Er;o?Zkh++rQSFYg*~tJ>c(8rEZ-6c8BCtp+8v z_9RQ9vHRA~tZU~WNIhlO%o@^Jmvz*-v?uzUt++NYI;XV{OlY_xpFu9nC!+kB>3pKJ zRUQqr9j=xBUQvu*c^1FLZN4ARTFr6C2fdh0+POp7y#v`BFrNkx;@dnB(@LhX-+S)wL(BP==)Ye14BWvS~%{S_!d)XqavL3zZMPMC+7 z@+GmdG`T)K6K5HTx9$;@=k^#*PrZj(V!{y&*Em2vHm6XJV7=m!UU$%_p*Z6NgFf8Z zIg>ZGf9zS4@!EKB%NGUeUZZeQ;+Ns`uKUtzT0B@Y)x7Yn4R_!|sKfsAb<-vX+$i?n zRc&CObdMy=z1Y9sUGb(we$p$srzPYif$A#tr_hiyoQt}C_)wzRUYWNK$uH%p9Rxw0 z_1ix4z*#GKc${{r&^CmdlCXD~K@;NSIAIs-Bpw;^$Kx{6g@n_V+B5_jT{f()uM(C% z@WAUw#q91S<=8~ub1ABBCSc@o-9k0-kK?YT2^reTa_n!ceOU*VaW0L$MAC6a0)+-4 z*ZjhNKYC_G!mWB-Tqi?j=w3@IwHQ%|aZzMt?eBHSG=|+B!@P=8`_bR$)+90zYH%r- zlUag-Ho?>jok1%tn%9!_VXDByuN7V&etIPYZq<-lTLSsHNo#H$Z{v?2UbEu$s;({Sz6(HtLK?n+d~v98Jea0X^ydx}sIG>PO@w5{v9 zqH{pxqUV%Q#Qcjd+Yh?Wk(TS<-M>s}KLqdSu6()X(9XG1>-|kbWoKzrIb2g^?$M|Y zhJZS#vJtJ{g~4!I+`s|6h`xlt_Ko*POVyGAHlL)8Z8##$qq-ZsMOV-Iu}}39xqu8M zy`FTVsM{4_z7&vPO&o#t^#So=d~V1Ii4u{J&vKpBH`# z+y%n2nY*z~QOGTY$}%YR!kgeU3BMvvaWRggGNE%IaY{13i|Yp!D2fz!o;9p0Z%N@* z>Y3ApHX2y|@LaL{^EMpS!CX@%Darmfy$@9R)m%w6zW+Νm?vvX=OvmO~}}Gyk34 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 z z9-^eeeR0M0lC5@F3Th*asT(XcGHqfGPiknD)+=3o+^D>IM?%gxA!i`ZPwgkO>?(&a~UsjUw#NN0T-;7Q>||qtDS-}bICHLs}z4M z^7e^MtyMiAWYCtdTclIXPmS(%feACUeg*8Y*jrbCGu|o!jX_b;b>;F z+ounHo$TBxozgCqN(dfum#qIME32#92XRnOmnv=FRGbUJTNs;*pi8HQNM|^DCxXpc zAFY*J1;&7VlX+&~gPm&m6D`9H?xgr(2P@#4^`HoBz&U}>b|MJ#4mHypSvpX^rN(C1)9BI1H#+3EwJ4>*iF=^)pM6oqhn3d6|&! zNE$Q^Flr}RW5U=4Nq4!$C0z9Wk?vs`0ZcSBQYLHg6{t>YzeEhVf`+)R^Xw@prmP~> zIpT6kf(8bEHzvq0jN(YkYy|NBbG##IZEhxOQC>;a*GTA#94SEJ@Il|3n45oUQ`Iu7 zdHu*qtk7%S)^`@TR{TV%RtyekXeJmNSmWd)NXI+*zc=j(2m5cIU6TR^V@!ng>V?mH zz{<~s@#BYn)J`~~64#&AOTKRBlaos4pM34=hNW@KU< zbsx~~Pr3z0GjIGmSN-ll^`uX3=Ai2nlSS$Cx6qw)oGDmEF@1Sev6j04v3$bQ`RjK9 zyT`UWa^GD|*7)YSbJv8#@1GTX{vcG?bYIDJ@p?c=0TBI4KyV%&kgF#*QjmN@D=T_U z)R6Tz?lLeeqK45I)sRkJ+HH0bib~`uGGO0C&Uw1DI%f~&`qcFOjSA@5R>_3Oxo2hM zJl_91?BjR&nbou3(pu^Zt;=Z(xN2{TQTIJmg~T~EjNAh~hGrq?fd*6}Sz#YG>E#9g z2oXWY+8xlzp*%i&4`9nP$ckUqdKdW$Bys!%m-+O$pBS4(dC9tqGR;Xd+>k9aC6{(d zkRZ)}=~<}LWcv|eWubJTFeu1w?g(VK+@S$<_`s{Mcz`l31yS}r&vZ~HLV_JK z^waX<#}sF!s=bUniuCK-#%+Vy2|WjmT>G6T!Kk$qKg;38r!?jxUZp+h%sjpNSH|VN z!mRy4Zn>qXJv2d5Kep4)iO9h$JYtg;;6KIYFSjnIJXvUKNYE13dGNK)T$Jr+; zJb6jybvIVtnup9REq%5jolMG}9L_Fn!UI~w*+juaLa7!pQ!yXg(%fJir{B1jcjWzp zGf!WZnFihmL=*Sp3fQ2G3-_cwaRiGwftHf3!1Jbg5pAeA#(l`lhf*3B2X8ZhM@ zxRG&wZ~kMePUP<9&Oz6K@b{8F?Ugu^3zH^k{fRNes3s2OP{=r@f|fdojL8@S;~Bcg zT1b-dD*{2rOf~&l>q?G7*rHmMk@=9rtEJKe0)M(kz{4-pcBa|4Y&?;WH0>2ORXuVr zhYvv1`{B{K5X1F>!gFEEF{zjWHy7TJ1AiLKW32t3+h49xg&=V~`p^ba|L1Brh@VtN zy}oOxr(0U%Q3pHKI&3Ko&CFSLgG-%&)Y%~>w~V}8^(iQXSF|mdbJ?0 z1WpiRr{L`-1nF&_@MdaK!Wp-Z4?2(CPKn@0f98#cH6NUW8fUXD|YbL)c;gY-^Xq;cAh4^ct$gKm)P z2YpXCRf|<=V-7VboO@7($2MCj{5;-iX*vy4OmZ5yr+6!#w%}N~Gdp<8{R!%iF90XW zs;hG==+Ijv*U(FYtz{7eOg_sc;9BK5(itP3kvZj_LVfYs&MAvas?BMLDy;Q-by+@e zCXBg|hC;Qn@;0Xz9w|W;R@`kiKkyr6YfC1er|vsRUMh&r%{XQ{r>!gsz*=!YF&c(R z7q9^-;-qV6W0mitwG$7=8at8J5#<&Q=t@h0WnzY3;SK%V_g?_prCDjj7b^L)amj%= zaRR6o_cdzs@|BA_%+KPiJ6XkU^H;uXJ-!iliYW1}_PzMBOal>!bh_MQQ}agZ;^0ve z)3^I%)9eE)0?dVMa24`RN>wK$7#&kzD|k&|hNzh^l9x>X&$iw}Teuuwnd$o$3mQjR zZL;}IEQVHXy;dx=BwuvriT?|u!SfFNvI-{E7V}Qst7*OvFBlctO+8kd zh9ShTHkUO*3uIzgfG_bHNzWPFVMcyjgmdR7X0w*Z>(i#UqQ>#-#gxarhkq;8dF?lt z(h?x|pXa%)U9mquThTi1tzABSiyq3^O&|QS^(t0H|5EOgIbMAs`>bB<5ybRD@nEr+ zXW-qKc4U5k0p;=j!Q3(N%lA;NOVDO!;KXv_r`nQa2|4Dxg*qYE8N29+Ul*oDN~P?A zV(|MLA_b-u-$86)L*Y!VLw@T&c_^5;NJ3o_O zT$%`>`%ro8QsX|*rA4?(6Y0KX&B?6)n%wBu9x@Ub|ziVUW0$U?nqX)wa5ZxU@ z6K`MR(Rg!l<%+g-z5p9*!djRJybdX}oF#y+i9Ie7D3#ACuXT1)v=NNG;0&Edqa+X> zCQDNjMGOeUx1CcRuGtP-%el5CFCM+s?85q*)uGrbyC<$(2yhC#^(W@0?%8+FKXHdRhL1)=s$iFtGTX;E#qPXmk8J$<@~NJ= zMatws$*T)`9vRsIJvUD>+cx$?c~;IckN4f<>5ie#@$so>qwR>tG*JGt;nzwLaQ-m+ zP~%>|y!+$c8lPOGtO&IB%QL7$Fli{t2MCA>QPL(um<*=#U>4ZXR(*-92@f_zithuI zCp9{pEjN=yPQ~5 z5!(}m07}dX4C<)r+bgYoDO!4Y(W#q#X63)UD%_L&Y;st!9Z_yW?Vj69Out zFe=q`KPZHrpJIxX84rw*kuFLhs-YFrVa6I+5NQPAvoLiGLUccDnCDzx=k~aU{@E^M z1<$XtkNJsZ!SByOXM+WEqkJ#auH_%@#1BaP%B%19HdVKN-|?P4b(*>s@i61(ZnQ z6sx$B06FL94FxXYXm)EE8DHf^F-+QY-U4+)3Qn=U*4ZYrxB#~7*7vJ}a72uHlw zEkzuEx~6zmd85J@ElKMa6-<$$cS9DxCJq^^VEL>e@mb3CUhx}2rpG)a^>0fV+U1zN z-|y9HDb`iunK+^@$A^9PkmyxDYN|vAkBbIW+6&4e0F_r1*{AFdMmD zsi_8SNw!&x>F+@s>w=X;vc0kIA4AWEJNtv3g|@+Y+ruUJHK%hC%#<)cT*ocb0dT(@ zyt61}{$puy?t=$VlD7(JAWMpJoS?EPPS^U@fKBX>x^eK3iO6LyWJ~`$*vw}hkk?c4 ztVh?peQj>iTbCcN@fUiEbllopc*WxC=MPJ9YBxL(>?0a3W~qJ>$a+1?RI(RafC=%| z*r4~z6FC%z$`(s*neHPeFh7j?#l35W_433t8;*)w~pSp_VGn-DoG$S6fbx&0fJ`PkiqRcbSxZ9AG+)O0?T6z z*%Qd<289)i$ZzMmG%}#FA+j}|$8uWGKvY;>qcKp{c2FZY3{ANfe3(ZxP1sl#_`GCz zM@S0NI)%HPJy!o|Iatx{dGXtv#r12GI}dJIwCzg~>MjR#}lo1-~7Y6A3BPzIUEK#=5Xar*7k6Z}U<*{BmzeI6ML z(7q;KrQhz_`*+Ja#?ifT>qMK_elQoP&c}m!yi`azm_$M)UNu2pc=~^f8l$MF{Ssh> zLW>#;3qo})>JOdW0~)Uxv?Kgp3*~6ogp6JuW~PK}r-+X3oL=<0JvVIm5PHWsW$$k2 zJzu9#3%7K4cT`3~^(#6m@Rq5uC+XyPB{ZVt;Si5@uS7<-{-`=uHzUN&NO{jUo%Hi-xRKOxT+%Kwo2gJ0jKvAaml>^`5NcLUg5S2~UE$oan{-YaVDr)TBNKg=Rk#xg zL*03tAK{z@1z9S1RLw@YxKx`ga`bdz#330xMz`zzZLy3w$JW<*goqbwFq&y(4;?C2 zC6Oy*u063|$b9W}Uv|DbZsJGh5=V!DIi7U?7t2GKG}&+_mffQTYbTa1%R!XcHZbJg z+{s7O?FL>OY1GYU%P7W(k8ODAzwVz0G_{Xrf`aDB=4Ra`rdWZnpa81Ey}PIYtD*Hh z))_J#(7S)4!W7;igEGSR!ilGOiIbngF5_J17T z%$c0e&75;Sl^b)IIfZ0IIiIHxB`l{l$Ckq|r%-y!o9@q7LzYfpOs&zex5Rfpva}k&AYBNKnwN{_#C&j&RM09xWR_qAozwIjkJ-c0=hKH7Z;lM4S^bfYIeY(j$Cp=wZD|pG9?Mz zI_6M;W(E3H-`ah((JJWj(_yO}RQ9J@7L;GlC36>bu&xL}8O2x6G`OZgi-6-lN@nhxIOqpWGl2URuqgdnv;xw3(e?r;E8w*hV$ivb1a-JcwTDFpP zbUsP4$Dy60qn)JCGaYG%$mpplmA_MqFjB7(Rth^_3*EgK>J`n3t=NCr`4X*~I3gQ< z(PERvm<2os9**Br4#qFDiv5_9`F&u(@qj)#PIYR;nhrmf@aRwd&Fn^s4#43=o4kx< zlo2MclR=Lgwc(j?Duc#l@~k#w3mR}ogwfz}JGRVp*f85P+@FQ{esKgGffij6tHDnUyM!C(>SiiLezK0Efj$NgDcH>z! z&NCXRsaksWlu5JCN$C3r{28!q%IW7X^GOXG3TeL|1bzKMA>1v}#FqrHc+>4NBMIUdS!0^9OajMnS*q6#x&>MjyL$Lf8>j+^m)s;2# z0Lp5k>F`+EPwL}w%_qTB`rntaT2MZc+7ng;Z;SI(_sqI40k(Fs znUywrD2Tre$8f8i7oe}LsU|lWV%W(I9#ig#8CR)@AvQN7{RGmQpSQ??2jwe**D~s& zo9~mZL>IGSw!d7~$(gmwI93l#c=4-9eCY3C1emO)ks>*3Aoysi{_MVl3nXgSRcdz4 zldd6$Tjz97U!S4V>;?Hj@>*K>7<(*!YJXk)apphG5tip>I(N?_?7Qn`^#d{2I;Zu% z^T?yzehcd@Ge%72rm!^TSdnXXD5c&aSF`D5bxoY|iwIQISOmR4{-H&babBq4S?DmC=KuljMVuv#hb!nv6jR(sk=hA~r;^{= zTQoGwpr@SfSRtMrA0J?Q%q>bS|zIXQR({U?wYVGP?((&?P(^b4J)ZP2f)9T4V zlWi3qbcxroZ95-flTzf2I$%kuD`tCz_&AtJ++}PJ4@QgC!>r$SRI1r8gYD`?iZZG@ zBJ!ig&fHnDFr_GrwJVhU0;B;@33r@g^nRN;ipPX%a7XBJf zKDuPH{O9M3d4bvgcfZ3d{_Mmx3(yvBBJ{^Dd6#InvRY~oJXq@N2Ah}@@Zfi|oBv~7 zvwj-Q+JgVVU&s)`1oyng;;W*Y3_{I<9pDz`cMmxZk3yJW-w45H zv(cHkkjE{&SSv{s7hbu*={CV1AXFWfDm(t}|CE#COVM#k5Uz&<$J}%u0YeVxjTHbh z{hx|(6ef-t`j6B}g@0S*jEd!t2#0)UR1I&-C8i%|62144jf%QcsjcoN`76`pWb}<_Ab%z*Lc?E*B{Rl?|ymSv+LWv?sQ>H zWu-kim17?eK-7&F0%M2oh!ZSF@BFa!I*I9t(fOTqNx-Q%mT7=F*O~MK8ZM|RI?Shw z(!)BaE(D zyHio`X%5!sDwlRew{NdiaB=NkDhf2SgsFX4`=IXFb{MhY$jSq_@;g(mapQHmjyImK zudlZEy|nx~rU6dX+`p^sRep{BNTXV8C)ZD4A@-A&GIk4uBR}=<@kh5Hb`CBGkw%|) z0uEOVg=aQ6mYB4=mZYY=hld)sFL_rQh5T!J`vAI_04x9 zjF7!>fh}=Wzaq<=Wn~RTbmohm?1 zba==HgDc;UwPl^nZhaN$Tt4fId{R@5$kTqq=RduvR*2{u_CldK%G{20%s;N#uRw0~ z;Tb74?tYevZL7ie2Ike`NqkisAH?kEgz2x)+fT}b6B|Meewcqntq%<&=uODDN){=yEPe;8gCL+Mc(E+ zc^;wCP(%tAWC&)U@4SpTCGcFH7FaP?<_Y@|1PG`XJ9+rbzmO*pUx}REf zUNBOY9A4-VF;JsKi1BJI6xjf~;z&#;Hn+p1xIx%88)f1?&Deze5C1HzBa>FYh;J*(hvip8@i zlq?I5uES2MFPaHQQ0>X;#>N{#qPKLkcKa-a{+mA`!;5UmNf$%$$^fcu>ScsgJPfY* zyZN%%G9nm)`FXh5b!+E3DJ=0nZ6h?CgU->-u$7h8uH3Oh`vW7Y35*pQujeBHwLu$3d{@8_KW7X&KkJp30~~tQ0K!MnO3K zNvP;z9sUG~?f#VywjO_1HPAN+-E0u=i0K=v3T=IYFwsA2NtvWSeckxXW#cu$wL6cX z&tI(v8x7yzHoEK#rot79*7RX*17~Rwo(^cS_}63`&b)y-KyIB~X6J=WNacH)?DlMZ z0Vq8XL0JuBQu9U&+v9(5T`z>ZX~PG#%6;p*f*hw7tC35~M@q10QV(5lIQ z2mHh6@5c+t53qGvus(0FJq5Dv9BjORvU&AF!+^LVQRIrt8)O*>-lQy!p$=uc_3Et zZ0l^+DPriRzMTB#n-1Z8lJyH25?Q|?#*$ytfKT(A>f>}n2r&LE?(rl4m33NWxCO7O z&3mq4ZrL`D7LV`70@*@aqKXhqO-x}g%nZ|-t)QFQ`pswWw!44AqowFoNxVZr>4?fy z!x?jz3DmiAd8>JZfIyQQ^+0Gel7j~Q(Hp=2-=O7K=*wBBw&d31gA!JW0+ZmqZ%>@% zqu$!lgj6}}P=+1UF-eCTC3+T=k!DjuChLbStib@rGIsY{V}>z5G{8D{V_3xk$rSZ| z>g}Dkwf<{aOl#vw5a!sV{LIM;1!wHXnp2&(Wy1!%8~=soW-A|XoEcH@EfN(fCWBP( ztZiz~l;2U-MNKlD{IF^zccw z@9NFlpxg^?2q=-Vkl=2*#Go2BTzVt^=TWFK&5E+vpqTQ^U#gy zb#4y4kr~Z3UIP)gpZWYrwdby9-VjmfMn#!d8|&v>>g;2eo02zTrNz@2(gFLYco>T- z4kIEbI1=awxxHxI8}F~t9Q2Rd-1(eE&Z zjM6f!c81gJv93y{K59bE^IQl6uFaVIKU#ne2KaeET;0O{uDCIYdYM#85{ zWM3!M^sT=SaVWM0Av)3($J&%~7B)@RU%+(>9V(rhgFqU3J&O+4u^aQ1QiHj6!mruM zNJnM_+Jke~i`8Yo9^#r|64mkVpqGr$?*3ojnm?6*ELWder`{0DE$EM1rK<|z;a$Ve zU97j%c{WRUFr;@5vF|O7h_qkgE?*X$y)FJPFTrz%;!(q@bBNxl9TSG?`cW!w{Zv}fU)S$Q zjZ+Oeq&Zp7>pPy5C_e27RcbP{_q70@p5u2XUg%{;9P;^#B;*XXc}%XVoy_s@9e5r* z3Odd4uv9p@MNJ8?G~@iB8j3Odei46)YvrO_Fzk8{?paWOU*AY(yV1L`dMhkCRY^POF!H#d;#rRzJh4tqArcfut@R)Z?_P|v@l@Ks z_B`Oz#v%_N-ohyLSIz0F$^UHg1YZAW5jtED9NE`6Wk2HO_#hQ+jP0d@QsEY3ofLOB zmf_o8 zyO_UQihH7wzW1uJqY=Kf1_iC-38eKqGg_UW4wFmYo3vp^ zzdpM5_US)e(&xkijV7AOSiLo{U5&#I|T> z?*K3ZeFfsgXS#|!W7cSRYIN{FLnctKh~J+&qqdzR90Be*e5apXt~5jrK!p~7z8W_q z-vLhp`eDhKZs4tvPpWno0H_pBdry&_Rl||&Q!;QKStB$PA({wQzsr?qlhkk-h&DS+ zCBKVPj}@jndnDS@XUDnwRdZ9jwqC#?;rv`26*ssxK^f(NTqK@YQ(0=ApU{?6m3_uc zfrIwh*oSzp>!n`ZlarkeH3|kPA6f;D*Cn%;ao1vkJbR8_1<|V%=4xZwLMg)LJ8iZ0 ziJ1rEm4dLYG0J=$kUrY(`8@jK?>{fs3LC|7VhBG88{e~sz{{(vy|^0OGcqAn(8eM` zLOxvxl>m6nv=)ej5DkNE4N8KQ4xu{1=x7>GKMaCoxs}kn!;k-Y;>@zSrF!3-v68iI z*V>4&Q8i(|*7gmiiax1YVm|>s3DpyMBbt;zY*5_Rh0%l-ETzJfF?#e=ua_E1&Vo%! z`^DMd4No4@`G^8Nd!VJp=&K#Qygy;rw&$9DC=JH+u>9{#&E@Kv0SJfW@@o3HN(C$e zLSd)tdeIpuO%2knZBFlKz*4Km0Ow&=M3GI=QbT3$%6fz#Um&jH*=?s&_c`lq(Xw3x+l(K}Ee3H)j7YtXUd?rbpbwI5rWBAD)U z@A!)RnbGAoUaYIYN4IDe?{s?2vj`}X?`sbcYQsL}RfNIl z*+hhfdXd1Zo>CVcOu9kybXWAEJ1dZ5sa>nxzP-=&*^>tj#U%|D(Hz+?JbPTK&H+S@mKPR)3hHe>4UK(7VsHZYBC6^e`ti z2V4#5gln+Ys1UU>eQM}M$K8aTHF87CsH4SF1Y_|OuHx^0-W?u7Kzy{hs6^iKMOkf~ zlrfplc1-?>iaqwd(bG3Xrlo^bUfteY7jzM1!k58TkB$BS+d?z<;0cFFQ znlI|AgwpEb=u7#+cuwoHvYe!V&x9)p)Z+1#?zH0m8PxY)~&OEuzh7#UokfBpBfT`1CdyvxI*cp(B|EuiO0>7X;# zXPnRa?^KHSyi~M|pgi)jh$F@H(LnN)%d@>!S17kTAbH%=4KH86P~Lvjq?A$A?r(6p&$PoO)zH!ag1trChQ@KVEhM=v+l#@J6qn5jita*}Ts?v!D|G z%+-~$-oBi*2w)w=d8SfVvVRf$>1oDQHwC`i@(1ktBHXc$WRwEisB@ee=V0Cf7(-xR zjdd3#jX9S|%&St^U*&wUSPsGFJ5NtTM8RTUH3>Hzcp*G51Gcfrg`WrCha#I=v2$_d zXBY*Go?!Ut9SD=g=S~!o!Eh+X2oYhwN9gwy5U04pq@B8c-F=x)a5SFElhp41e@wt< z@2ZlejYPHobnd2oy)b}^w(;l?)6kci(7UPCrYjU5dS-5)Cql^*Eh^kEd1ql}Sn-q@ z>A&L5Swb=!E%NE|mz3f)6Se*cJ(S#3MHokLT`$ZpVOg#wuNo4A6)eW66^K z#}-iy8Ljs0h?5pKc3q;~@7S3~0hns^hlZCIh!PZQVCQ&F!ORx-8E42|L|%GMRlfM> z=7kS^5#(>dH!@emOIux3A2YU7kPmd#WiX2?ak*Z)IkrT6(ckEtad6-(k)A<{36c48 zEMn%e8|kzS;LLeq+XhA#RQ6au7HBm35?g*Ali|e6=4WrIOu>w#Iyk2@qyvIcElv%T zVV=>dGjnYXEvo+0fhLZp2!Umv7FjjqZ64_mffW-Pzmw>vh#e3N+9@IPOUicK#Ek0I z8{OjaK(K$-*ObW^4QiuGT^ir3;i5FY*xd0p`U@Xidi(V1%%bS$XOg`~;i#lxA7^Gk zMyY4UzIeeNy5yGO+bqK{=W%sMVJpUYsTv;vn2#;%lfU?Sa}0S-*}9Z7-SdWT%|BD3 zj+%1AJQL1xa%Dy`4r7iwMk7&$@xX3QT{n?_cQ}eyk*Ny_jAy0`LYSS1yVbrBK40R4 z{il;#8}{`8;c&A=QECAC@&Z*sti87$Dk&Tt0YO{T<^({;|thZM-iI z>!9Ew)DgF)_T(sRXZHg_yCM;*!aY#vP^2JjrUn+FggXoTAb7HP;xcztOZ|Q>NQ3Oe z#qamcRqFQH7)ES)I&Mldm6pcr&zX>JlEq|zyqu@tNL_noLBDT$b}XM=J8c!TsnU44 zT6f@qqS}cfuEKyGUf#Ut3t>1RT}zIZDEbVR>^+cR0kz=ARYS3q;eD-)>RY+;yGNcS zd-yA+oeYwL0NJGBp2r~aeUBa=O1aLt*EKAf9`FoeKeEXHZe%QP9{+n+g^d@(M=*Np z>ug~x4&?KtMv0dN4%~UODogVwadie0v)2OY!wTx<1@_#;KF07E1PW_$2pre{^Iliz zAgO>(lYZO88qc0|3SS04LFRHyL|RvAule$8Zaz##At)6_!7n)O%qZ25q>CpNbV?Cn zh}qohblncap6Iq~dPZhHw$^xLQ>bNv9SLI6b;&5l$4k%m8o}hQu%3z>+YH8sjg5NZ zgK1ac9$#ZR^;ZLuzs#lQ0~nJoZ@g8u!w}lYvVg*>&RiJ>qq=2E)z@C%75}JNYGG|$ zT@9HGb(h)16tw`O!LMjaoP;3$f&hEl7ykcMeRGaGF}>IdonC(@Bka?+FDi#qFzY0Q zVw}%ON-4qNEpUZ%!_qYJx^qS`pS)x9X~bGWi_219g`d zt~k^I1LO1N-ibaT>`CT9vB8EN@!utGgf2!x%=vjH`BqPu{H;zvw|H-=eM!Wl+CzY^ z)!Sbpc)BL&K_SJG=F@TqL%pe?l35Y$rT|#qYh3@z&k%UoSRq`X;Eo0SD3ezhZ3D z*%T&f;$Jsaz4Bcr#F-;0fi?Oj#~y4=?0mMzpw0BSko;k;hoPn;?3s6KT^RbrI(^jS zbP`FME&tdYgg%_@J#t5vdT~8;+(9SPPingY72u4AN!2ZsbmMHBA`>p;*IawN&9^B7 z!431Oq=nV2$w?_IMz{_H9hb+``~`Fn`i(t){S_hp2%D;mVRs1K_+_R;Im;9RHwpN z-Mu$i#{MDJX%8p*$4b#yP<7~GTgVIpp31fm-5Tx>0(PbH#v6>-Zy{`dU80B7n#4b1 zu4xrzC|pKZFo*52I*>Ww7#!bTQk%`*bjVNU>ydW>ZS~3y;HY{ z3qGh^Q(3`*E8DGy6{T44kkyUmFW$l!u176YX*Nz<6DSDEk0^5IKh&-6Q!L0D5&RF7 zqROc+SI=Bmd$y?aZ8TDiJE(+{8hnzLZBa8{X_+!wyV?+>y~W`AFIH_aZ*s7t)vaV} zmY7L1*Xl0<-FY?Ue6XAxm$;NJ-*2`C#Bdv=v*>%ZwCEfHW=~xbhqLOo56A0^6kJOg zR{1u^sioD+GLU+aj0~ROhUpU59o|(SbohB6>Bqw11q~y$XX;Me$ZwrsOOI2@8a}?* z%Sta&I3LiE}YABWyAN6UE=!?G@|c7P~rn=6%PBX4C_6vx4f^ zMs9)YN>tnWD!nn4Jv!2Gq1@48*ZWT#ex3zzzH8{pcC-3T0L4la%SV_mn+B_rwo6rnq~U zzHN{U-!6$WLDS4lxTT%usUoTN)bzT1*;0dyGu&eUG&4z;H(!rSO;oTR%I>QLXLc=Q zrlTUZKpc;=bQ7wUA7v|qS=vn0uaefpq75Z8m4n5XaxY)deNH-RlVAu8^_dk1I~F3C z9a8t2ivs!p$Tam2d#|R)Qfzn4EpelTneV^3#%1D{^Dgz~oreLIq;UPA@3q|U2?`LJ zrX2LH${$S~Gy2uV;+XCYU+tJMLPzw0Et>rU7B++ER{8K?bi=ZO7+dVC-(DKYQ##|T8ao~9PEv?4YYscF(fqGe7KLCB2dz1RZ zLo#jlVkRkjli2g?2)%2UM~)H@(76iSa@p7R*=+ji(+Ef zw4^pB?1yA&GHF9x?*8mz<%xr&V@*T~ttJ<*^G9)M%rNaZ!}ZUP8ImqJ?)mbIzdHAC zrz@Tvh(sAhM86CDFFr5CDBY`$UT65sw6jFLI1g7{HxpMRguN`t#(70;)l?yL?Z^&$ zA0Eq36p|GQyE3{XpPUeYM1a6|_o(^(6V2q>BX7v%K$BssRt^Ch;akQ4zv#ChD}pDF z0{X^QyW?&c#A;y8dD->$5?*4LtuPem#!={7t}w>VjOBcwr0Lc|8Hlv^PbT(G1WUQu zw7NPk`&yHQcf?5zG@2(&(g0@I7IUp5fajsYn!tO{3=h%CV2N9N;kqq*|cN zn^YI;Ghir~t@+n^XkV6XMFej9QNxS9gjVbkRWas)rSxUA$1kQEusQH`_pNQeWna>{ zIiyQ$9#Qz$UVqwe#M`MG6RjJTcO4!x7)_Ul21{mM$R57FB14u>Yr5JTXrhs3}?9Ir|fS&W*_+U#o@^Le<*zMKEHXsB>L=9@ij zV`#u*>VOcC9n4m^Q7&i}>^-1q^brwAOQ?JpIc6I_vNJPog?p$EKWNQRp#Cz&#NL8Z z<;#XOC1BGkHv}$!z5Xa@P;x%nSbIroAqvDwN?5#1CN|HJ$x`M3tNVXRY*s7S9dGdW zc2KNlFy1QdKgSGq95eRUb=O)3X9|l>uF%)^daeT{oi+I!w=o6CA*+-&$2|fp80qVg zq6q8rnRSr`*MyLY2$b0cJB z_qRqSw?dY z17O=xlKY#JRZ&RO@59$tt6_N&-#>Le3c8?`)JLs9M)63H{j~$*q(+2=CF^W>LMi6A zSi#wQNu+`+8H>i;`x?Uhxez>@3j_?<&&_t-S1~plVgvhH$w9_jY7Mlpv8fy#5 z5Bk2Z*k`7Tp1w$%J#g`nbS9u8~!9rHqbTcUDFbu*=v-1>~ z9tHJLF54 z3M-7gJsCuTz)ng|-ZztNGVIS^tT5>&+1zpIjy7W+I}5{%k9nGaWx{RIrb}Q6#5I!3 z^B8?mY0cVn>yh&!b?GzdFu5Gj-Z1Nk^pHYdyKYlO(WE*af{whHk|OS$kU~&L<|$it zEh+5qIQre1%Z<=hhS(GjoQIJ4b4H<`bhdq9gcU!?P^I3@BFo-)_}4)k^2f2w^=_cM z7KC`}Xfd3aVzNoN$8lh#ena`;4T(lde19qHXW0{28fg-8zwX5v!GIrb{R`v0&moBy zM|>UD;X#X?tcn}#b*0w<(&LSZSspy?3N#)nZP1Ux& zn9nD0ViH`pYx}Sbyi{jYQ7k{r$KMFUny#DCbmTL-@&(KW;Ui;p0hS{u;JbFiPM1O$ z8s4g<2=lW@m2Y2F6{1R~LyUav-|`Fvk&inAFy_W@kd^D~-0hqi5pymKnUm=Oz% zlzR;VfQHCRWkF7()1&FOD=22iS>oX7W|^_}??$vwZxr~87h0Ek)>YNZEudqC7W<=G zMqCd8zt6pi0tN9LD`+KyyANll`mhrE68e6D@3sCVd}`#4`Ljr?wN}c#Buc+ zbiF>0j|zR?34xZo>w&6z3;xAiXXuAhZoa2#`^JtJcz2>kWeqk>WLd2Ah`7DmoyiP| zu=aj7Bwgyv8{S7Am#J=w)Uvwxz-4e?L?A`uPUePUH%y|)-X{JWpSRf7i*{Y^f%+m= z6%0F2Uhku{a??GMez53eC|0k?M(35Tsthbsnr>@wz;Xg~N~Z1%%6tkS`y~k=UL-mg zW3g)6CYz882#yBMeqEvE1rP58L%AiEnE5X$hi#kP(7nizQbu~sv_vDvjl5(XZ6WrN zLxn#i&-7Ev)s4Cq*0a9A`&uVm>8+34wpN9G4t!Hi$kEaxlvzVdk<6Zx>j2%Cfnx4ej zXZR6EspdW#@0kGTH|?Fz&fWHDuwokJt+LXKq}AbcHaanlm7adWcJ|(R$ zU=R2C@bW49W9o@WXYfgZ@1>u$gO1<&P86Ipnd3&8T&zUE@V@HhgKaX#ne&{XwH3cR z`0Yihw*4prvMcWU?<#aol?7oF6t?b>AGUsumBi488Pk9$<}m5`yzHMR&E(Vaq3$}N zB8`-T+i#qOPx_iYyHped(|~sVwq0getIKjNzld3v{(iP0i{F?J_}J7z)~KtcjPJIs z)J22!$yJ`}Fi!n|ktCWH7&sdl3q6ZC4aHx96u1C6tU+CB_b|A@@OVasxgg@jHE%@e_2O*MkL;xU6B0XfwLq^+l`2XmF`b%;AGsCw>|75lK9|2%5#8Ur&kR|S=v z__XA>JEVMrw0$U}FM1xF+D^H76v zsqtaQN__ldyW&Ql8PyS#U}0hpr!3yUYU0-7c%Wyq5ZXQeZ?w~WhrnB8FZ0jjt1&~8 z03zli<;NY9oe>CzbvVw|kWos$)l`dNh?pxd9?Goe>*v`#gB`a;)+eiO9f;GigGNFP zUC;K>W}YfiLuX}1PspNC8hXJ?y_Fl;FQ<>WC+P*Le`Im@5C?P4sRi_!nQIf$e`;k9 cw$cDxC-2V}R!AtZk01p&*(2=&!6mpeKoTU#Ft|%dAUF)}?mD;(mOy~P-95OwYnI>l zZS7X=U%Pv|y8r1{U47o``|hoCPXC+x_ZRR+SzbvVfb&A zJCKU%oe&EMig8bNuTD(7wFq zYoz}Q!2b-SSI8)@QPI#bFtJ_+G`s=4LPAD_*)5|;XXHalRXjph$d_rPUa!P7iUVcGgQE^FWS#4c? zLt_)Xx#dq+cMqbsuYX`-a%y^Jc5Z%QZGB^NYkOyRZ~yH4;_~YH=JxLXKe&(p$o~!N z<@(>i{tsL)%YpO?1qB%e?LWAXUU|Hn$oMF)-}0ame9%Pu;zUT#`vaXwIySea69dSn zbxLgJJdR1iz`w?L_8(~fh3x+hSit`mvi}9_f8$yJU?U^Fd`8Il04c!I^fS?|k2d?b zZ1qQPe$}n)!Qwqr?}S zr(!4Z_@TBsJmr3#TzKX6(_V1|bw;9p#Iu)*0@WSMr^ra$LtkI>AHeC26lJt9)}!i= z+i&&LKb_uyV{K`~TT}it>S?U2ui&RLA&`XEJo|yaP_35(BxF=S8p_`S;LE+g)h|v= z)#!bv$#=(%tK~yAO2k+r)4IpbepB53Fq>YF%>OviD%m4`)lu0dE@Z`F<0|shw4?E$ zX$cjXd-q!9wXxG^74aO@r2z{Z& zcv&P6i|kE~jiopIoGCVAKcWBV#jPwsp!N?SPdk%BTy?0mKY?YFC$Hr}?C|9uV73S- zrEvN?+1Uv7r_ms{UTAb@Ry-Ha?o!SuO_H#wXKF5`{0!v?z zLNIE$eBiuh;x^LAXjwdf4nK{zFTb=Oc(&d`Zw{0kI2mHK3I)k7cWrVNxjeC6GfYo$ z#PzDeTUm(G-!wV}_>U4D1JNEZU`G%;*$e-IT85hVbEgXtiBm^;iM?tL&tRoR?Yin8 z$ld<{2g$-xLYQcq(*&)0a`MZnnIaZRe|z~+ftZ`VoyllpPe_%@rIQiOlc)uk;-lS0 zrOjt3vk~UkDHGCVy)n9;Jz#mk0C`=LO&y-qL3e>qHT8ON(ec(Da>%qnuGVHJ&9j1q z<;F+BBR$4{v4hbZeqp?d5{=O6sf_a7XP9y5KmHtf=Y)MNy!D$$sTQ_0Fk3&L2s?Id ze8X=?^yUGXt4OL_19dj!(Py1a5oSJh+0+`WXD}nz!5H?}TzKcS!h~^bTE|aaY5eg^ z(drVGKB-``CvzV>EVddKmzP@sE)ZWdZfgT=o4K@c<11RBgKA0YeHN^_95pw-S6nnm z^)N*qx5`+0Uruz$(=Mr{Fy&UJrexi3%jNpzlP8{D)5?r~Yu!A8?;qe5aUP7Zg>gdt ztJl*_h(Hw%d2wU#G1GgHofcoTQ|}dV8@OlJVozX9mAO}+AOyOPCox{DQ!3xv>PmJ) z+;I4HVpquYOow7Ruh*O^!1?xqTZr!3VKTgEx`C0|MW#!T%`xd3NyuvwBG$Yi9)Ga3 zU7K-dHeX=w9(%+?AEePnM`aEb#oIGg+sVqgo-R{CA{e15481AU*Zh23%T>8eE%#m6g!3AvF zB;0iOBnIk^ormIk&Cl@5iFBoQKN-zLA(NOq>y)0YNGqJZ(PoZcbNvU9U~`R&ij8RX&V(Eai57A-S zvf7Z<=q)_X7k68JCeR4;#3!w;&59Awx zS&{)k)e^%H!3X{629R9y54sOjg$p9Q24|7D`71$XXgPDbvj~00&Dd`4e1cwvR!+3d z=EvQ}+_9yWUq0%%pZ1YoDG4zEB_DMD0X`v`dGOL~ndP|LaTT%}n!~Yt7--w$$(i9- zkE*V6WP*^vV%sLYqoVW#Zb51%63o{}y>|ZqtTk9`cULC7f_YoAJN`Zg*SXS4Pn&KRR#p|-PAZ}3bE}A(?}Ys_ zB-|H$PK+#VXc35~riy5#6~d>u^{;+aP== zgR@?>(C<(xIl^VO8YB+%D*&_Ktcj<5Uc{YYcA>$eeeW+i0#hj`#&oyxA&Af5q02C9 z9)@c7dPmRIAC-AUscbyucRV*}=qHAy*NPY6R+p~*;BAun{`|Fd-KiF=Qm<6xW}NJh zyh?>PD^O-Z$ztO`#6$n_?0a(zViOHxM3Gv}`Xhy?Nt1h0tm0Rj8TTZ55-g)&=d_RZIduVs!{FYrWS4k(|xR9sDNeYMiN^utzHqT zX&A+vbdg~}_)!NZ=r;6z62Ivw*JDQTdw?kXvy`-rfrrQmneEpNwRClo&dMxW9;bj; z!GMhG6SY5f$LvWs(!&J%?-oSV`&(l+q*%~qX|fvhh!HAwzo<_SulpS*WQS{U{sFw+ zoPUt&SxvjB;k?j1bk{UJ8hr;>Ka$X6`>Zx!Kn~1K^pdJ%EBXl`#H?)<%M_Dtt#;+v zuQXe3{TvBh=A|t5HEY3-b@sdh`_`F)MroW$RP69yc6My3L@{Iin*KdeiC?XipGJL| zRYEOak;4jk5@}X0VX%~$SqVzDbd7O#?qqG_5;G6Azr@BKIJ1+1Y02n=Ia38K35)AY zu%h?&4IE4}>vNpjg69d25`h+k1_J@Rwq?JHHF1kcYQU(u5TaNaapm2(NN%(#{cLR| zgTtUBccYKY+rZ` zg1yF=bX+p0UK|trill9=f_th&Smt!lqF>7b_-iOcE>UsNylQK8rBPe`tHt`v))SwG z5+}E@mqsiwt2O$R>%w86UagzYl*2V7?S3sCv(;Q$*wjl(yW^3i2)hqHm825geF|({lqUag^evN|e{z;QciSFiln`ko>D@1?8%>IBp`JZ?#=Xc|ZMXn1JU$z#6Bb z+(54bBox!D)x!xMAjLJ%d^&bx4>mQLOFLC9+1GQKli5!Brds&xQ+m=@U=9EmTtjs@ zXBDClRCz@nI2!#s^0PPH<;|li4{tG!)2*G$urnsLzBKLX_b2k<6vNu);BF3 z_nP$2DQvsR24MDwia+}lKO?)BIMK$rr*@C6A1H;W>n#Ic;I)l6CDM2SkVk2D1hS}& z7-u|UtXtA{_4G+<7gUI9NnFj~C`TQSuifmw)Qk<6fR=3By{*N>{}j8hEJ#0gTQ&EM z5*g@^)i_8rY*4D~E{FyAyRUjU{sUP211M8aSb|sC)b8w&kNSJMKTY8##EkgM+6Yj) z?PLy>#F0&Bw-gIM&fB&S+=%@q^aQKcoDOsns_vMY_HLCK^HyanB?D*{m5^sbEP@-{ zK}YcC|kvCrT3yFw+&EoM9WmxwWLVFs%~4Cgx_Q23ewtWBW?Z376}5 zho7IR8fO^de9qgU5-i*bUm&G6)gUGN1ugcEi_4HH;jago#c?iIg-%d-Yi$-CN2bLN zyNH(XuFhrd56)D}*H?&sZWPUvhx|A-z_VMrZ|Pu-jmg~Z1{OgHfVHH9x|*%myEQ9r z+#pb^<$)=k|8BRK)^rM1!q;=@Kx4YQu-wfJ8Wi}QGJihut&JAZx~6>gaWhecZ<^mB z)LXCU4_fA1c*pYVj=7}=0TwO4@F-dPQJmmhlEF~?7-(cp^h~wuunyGdVeLAe>B1~; zIz8^QaQ}^VkHAYMWhVO-Lby&Fl0_#M@gQnls5qi5@(wgP_v}^yuBwmRQhG{qPHt@a zMcsoawGuO~x^K%p-?*pAjy75#26Cikffoenh z832CrBCz`h>wAKZ$Y1-rFxr$H{5jYH*i>Y) zBAR<|=ERH3ks3-W_5BHqEqjD)%hOirBFWhLJT?`^fX}|z{Ji@QK;L|Nup(G?$^Xdg zV81YZxMmK0hfmKQ@xA-ikoqKjJ9>tLd5WJPdIP1OnWvs&)ye+K*f9H@2n}ZR4(9Tt^LvRCCSH;~boA!VW+HPn;Yb zmywa_UQ(Z%=h{y`q-}+_u1o63!hQW$$2Ro{S4rBsNCk<%qZ{xo^MtA0lX`chU?#%Lb78H(0e%Rzo3O6MSIjnh z`Of93?RHtm+Rq$>s>@#Q;*|RF?*f^>x(E1uCoh{PY;NRA|I?%=KWo^c!t$n0dS}R_ z9WHXRw`-%L1jE;`f5>bzWoiplhu(v&?KzfZ@HpC#i5aQDz*tqksxzh>bi$`0Wd{KM-#^-bi6zwR3)vOf2IV`*;+7=BW5m=f7nomUT0p z0fpor__BYGa~)avWP;V>M3nl|1lY?F+~nSPFfhfq4bFl+Hi{cBt?)#sJ6) z6jGaXr&YTjt~5VE&SG5#f{+sZ%;23doKK3!lO%5)v3o55vq%=|Zn1G)Dg**}i7*FTh z@g)3c8&4aMAipfO!IheG*(eqGnvFMZvnWlDGn;7AmIr^(iG`WxpwSG&*^tLppIZ-Z1Wf*7uppbKiSz$kU9>A})^18s1SC4r4mee9Q;JY(t&cb8chgi1DP zcSJ{fK4sxKaf6F@^=QTn43ah#;gJ01=za6V=DALHzi+YIPey~;kaW^LW(2p4^9rct z?gTh@hquJl+sm3QRk+d;2~^dClSO@z>Cs8(*QyCKyZv_sf++-}g`>?(#ih7>wl|c(LPG%^gA0qj(|vL0ZLVdy zVym?gFS+h-&tf#7_;y2-A?%8AB4SY{eTx4R(O$Bu_`Rz>3f@)H65+9e(X>8vwkEz1 zi2KkjWu5tYdT7SO(V`@d@6LP``5cxH6pWxiz;6~z@=Q#W9OJ2r254hN-8SN(qVei! z>svKTp2q%PcE=d%`WayKdGa9k!{MLmvybZ`{E2f@Aa@Bi8&k5tXyvobMMze-o*wIp zF{O%9@!nQ0aOt{K`Ov|9XOwi1V;jctC(#CF$c&d_BnEq5x}_s&W# zx)byfFO`MH_6K*6k&Vu@7){Dh-iUr8!Kk=gWK#_Fs;mSC)lHo$0e9asr4VyD#7%0~ zHUx05T84P(Nb_z&$dTd389yF%><_82oNcirLK7`CsaM{Peh8es#F1H&Ux}j9j~jf4 z=tBU|BD0(xOCzI|lEj9!PPCbCcwW^Icw!2Vt~-O{iN$25cDu?4o}$Ia8ZfHFO-fh! zi-6+u3;;!qZyJ0@;VTIoD3Pqn=T>EV=V~du%OiavlqS_uZ$Y*nqN`-`ZS_=fD!5hL zMAH}NCv(QzY>TW-Y_4T{ zU7Uy%H;&c6lYfhvsdfU(+Gbt}A33ZAXP25vTs1tN8H=!YrhC^&_GZu2N7;NZ%oov$ z%p8%vSi5e{TZYYK+r>j3hOw@07W@kxs6Lu*Yvs)#_};8bU>=A(_Bfnbi8V;<4J=C_q2IxwmFd!`5gd zB{f0Sh2RYSg9%kao}zF(f}(8P+Ven_iKzWE^(OuX%~y<_nD<{MS85Z{%;j|5xcUok zLEYnI*C692Hzbpgzm6*n@jvr7tqW3zOdqKygF3QR5|1qOP*}H;pYO!OO(#_RWa8LO z_&V>Ge@C%92(WzilN_dAH#o;gh{}oa;M`kOxQt5LgAl(IJ zzk=$bjw{;l{}hl$#oa94$Wt!SdA$g?lnw(_5r{%Fb%-Wn!wCBw;b!<&-$n*v zu<2~lhs@|QckiR);xog#ax_foWhX8>kyGo$uG-K&_C_Pd3vHJCMDK(A%@GY1sh*&a z1?VZI4ly3gI^XN+W`(l~XqBm0xOF;f zL$0`87r#!-FoZ6OiP$hK6~uU6R_@lt=GWEFR&CUJiAT6uz7A++_b=i*(H~+X62Ng# zpE;?&n}&5MG^ZK_xI{uE5G*dQ1AKghfi4c@!G@bS%)>GAqArVj@82vefKMX_*jGu8jWx7E$mZH4<<-1h;$FWE+rUVdzx9I@%kWj)aF#Zw zv-^id@1kuO8>zJ(LbHQoL-KE1yD3ytY#v(=ET}uN(Wb2K^v(-OEXtIqq3LI6AAf%z zWbojAhvwv&nhb5L^d$aSy&Pr!sku5?RIe4%E;;OF-$nk~#NViM(rIp7l`nfrlKj>~ z6EgPaIxZ`iq~lTNOs{M@G*eh{s{t>>`#Qx)mFb)W!f8!U=VY~7J+isQ~=7ke5QmtmMwM6&Dq#s1I4}0)UXP#Sq zr61#R0++ZX?`at>C4S@U6pU3sZLh`Z)|p$flGSvf-gJnYr&WT(XGCF? zU1q|DV+!w3?6s7e4kj=19Yw7h_^aosyM|x6qJCC>wtDHh6NTHyozg)RcrMrVhD7-# zrWAZJ(>rEF=A1h2kfVFdLz!3<%b()PGwhpyy#gX1B2><#vSNnT~ zu=x{@&RiTVZlTpWj_xv@qg_~JpZ;z14QP`5aThC@AKqPL7=K(}F@H^kx0Q|fE{v7Q zf17Xot5t~Lt;<7g_L3H{U+9KZl#I=>QTrwN*{er`U-9{2Dh238THZAXUVo~zjjrA_ zH3d~0!*@ybMOi))N$!8>A4B3JqrY9vLG^4*Im@t^K)`0(hN%(s3y z8+-p)Y|v4%t4yERs!vQF4PE-ebUYv;((9;5%lA0+Bx?fwZ9=QZU_k>DK1)UjMQW5RM^zr{Pz~p*xX0!n7;K z{y;PG04+>(xaIAaP-r z*L?0I*gU;tH;Am6ywzqu~w z7;01_Sv#+Dr-aiMdOJnM{#l+s6m(A$inqbO{-rWVW&mA!^?ncTlJQNTOqSHmgo6Y2 zct9;}z+_euTZi!`?mfAd#2tbKo@=>j6cW8@)#gpKYq-zy??VS=lbcDU+&@)=K-fdmP+%V=l9VA zKRaK9YM_abx+o+UM__@sqwm{#5Fq~6o=rhF&Gp4hsKs^&-_@1KJD2IUJJXtnr; zZH6KbEx_0E3sdZ*TGbA}o9`r`{xYg!KM;G@6DD5@rRfO{*+t`b)z`EO4+RI)AO#fP z^7(&z=|X{=(hme;(}E09J|}O$q%QLyX`_`98_d4`>0nVGf6;<|>s?o2Qx3PV^x>wa z`jy3mR~0Yn_m}K}>h6KDCKn^t^XB(mjAvd9+7YF-YyNOt^5}7P&cpma^96bF zQHivCUM=lDl9PpgT4^G~!fbjL{|9*Ba5AH9H7^UlsdN;4W^I+EZ)!nSxJUGvV``|xVBQes6GfRkbTCbBDNEvx;nbb!3A}3cX?I*N}6mRm>aPN z#tg$nkrNnv2+)cYyf?d*|jqKLGkc>|T#aA6r2!=zy0g zk!^wKJO2;LEi-j;(@d#MZp-p$eA{FaeIvhz;`zt(J*QOe7sGs4{|4U2p?{ZL<9v8g!cExB_(RbmM@%1}9WO9cURXL+h~V>S1| z7(B3uO3oWf0$+f#q&G&{|-E_WOKf_2t*z;#~H}3t7`Zt0sjFTJ+mtU~QIMz~!6qU_WT_b84Sd zGTK5Zca65rX;FE>(vs~0?-WX7I`!}lGKyE&C&Rhk{Z^Apr~v{CE|jJ;rz3SG-4l$FyFX7Ss*-TMGn&@qCXkEAe^IJ9 zu-_OJ6_dq%eVyNEGDnl1PCHPX;jW+p&h_+Bp0Dj^idB_+xQf>(ia!-2G8O$d}vk`UA?jSiub9k{^FiLsn$BuK*#iY4~`Pc}6^J|$n=q+47oqRK4s{y8_;S{eD zsYHMa!|8MUvir0XuD|7^6(~`S?N5?1HZ-Q{2{CpqW(fmcc{{6OTYsL)sRyTS*2a%U zIRSazcHC2tv|#KyQFJZdM(7AB*U6{r5`WsV1Xe11+~GGSm#B>JD)G{kapKDsK#AND zCxpT;hY1=2gxaGbaqR+aWa;9numI~G-sd}eRbw<#)=wKgD zq1O98b>wsM%AT5mk+gq+zmwhRmxE2Z%#KjEB`Ka^rw1F3@yWwknapWlj!J`~K^RAI zD6SD5Eo}%ko8oN5zHDi2VO4~H9}PYPwNSLI^c7a#C#y*h;GN!hVxLWZLUo&*6}%?~OY|FO?ZzzwdJxwIO`FVjH^sYW`H zYy@5&`@OVU;Nir5rMY9hpLRnJ(NqkxS?`;YxLshUQTeF|<#b=uMD7`9;3^8bY z3Mq+Nx0-l=OvQ-whzX7Hzf-AF=SpdusZ|OcEU$a5eSVBQ8w*|DdtjbQW^g$JOWzNy z9D~PEJTRKg!<;)}Z@dX-p&8Etwh3}0L-U(qRsQuy1cr3sEOGCUsrk-RgTckcS)+fm}wc6_mony-sAvWK5XV50x z6PIL_z+)EnNL>uKg{54}T*M3LnVa1^Dwbo8%{}!MAPR_6gD?W?Tyr2V^z8BWdF@a3dE zkMy?@Y;$)2Rfe~fKqi?H`b0$)&`P~k6U@Y?JxRmK*KN0Mb+BHCVy|NRk1PFo;f2jx^E_9;@HZ< z#ob*{Z=uvs|BE4R@6OiF0jP7;nK5td#167{J_sa@`I{`EF2UwT48bN;yJh4LQ&PyyC*{PQ3!w54tTjF!9mRHB0iNaa_{C~7rR$&RQ@O6tY0hwR z8E8-T>*8ff+qBTqzhU>TVKTQ zK03u<+*3VFer}@Y`803ba1>O*Q#MalZD6^K`*%pf`^jY{rb|71&mBWoe zGdi8qxeK}RZ<~2d0rKHxshz{|F{66z-UTF%tC6?+!}Hq!75vC^v_iI=8dF2pK8M#+ zO{79iH0lYe1!fEYs?#A4!mJb`@HlF4R`xm$HG|Ge7QJ_@^@nY&I*o1_s_}v4ZAh{9 z-Slo~sAp#n_ZTZCKI5YlXFsf+`m=6iuyPiEG^Y9UD=^Q~7VF4tQ6+q03o_&rLyX4! z(9YLuo2u+w4`N}Y*6c7G6mgS{x0no$_fRbnWR-;Ji7(j3V=o2C zG3p>it*mb7g)+t~)lLbZw%~8+8qp6pGBA98djF(8krIAS-L*H%@r8P4!Op#|Bqo6V zy>yWFzWRq<9E_YfdzfXOXP^q)+Fp-^W4@`Md||A5pW5eH>POBug)G|`SP?A$Ps+t+ zv}@%Y^0qMA+~=RL&(fb$7B7MA7+DdKt4-oVyWNClHXVB&5f}*-5(Q)BU zC#j<6vs5k!pF_C3n1xXr0&1Dmwv$7+JfwqC&PClu8{8(p5-iOo>BW+t%Et6ZUiLa^ zbC7GAn^J1bwPY9@H_lvruEbqpVQ}=KzAM63v<%pu0jrouZ2kj)P=*G+>9HbnDpCc; zM_%$HX-V+zRjkTSJH)Yx`FN%@YbYegH#E7woqFXbQHr|Z5I18&p2ns5E~8eL$HA9amUphg&+>i{Y*(_F9@{Md2+%Cf3(Uv-W*L zyddk*VwQdSe_i`9eZKJ_*CjSv&DLw|&S2|I zFsf8dwZfxGIfOj6Ei`4La!iG$y|2*y?e+cC7m5X@rpajpJ;~lyhX3zb_=!$lOZYa& zbYXjA-UNnac58jDMf~Bissu@gz|Eku;CpEiR=AiFoyRD74%WRW(6l1g!~{dN!sn6> ziuf+t%7#VR8jaFGnW!zxWe(EJh@Yi( zhyQIZ6LeEO|I^Eozn|nWVbEJ5$1f@SV3A66gcF^p65X2d;^{dI8yLB#Tr|m))%`sYZ-8#c5)S zY9bmruN2l*Wiw;O=RC8l>xXeC)zy=IP-u@!UOE@N5qSQIj%ao(ayF^cUQ(2Efq1RO zMyq-8U$&xa9_4kAk+JO`%2JES)bGBDn@)>aPDkpoH>A7^z3uWRERdcsiIfTaq1%8p z*`g_$lnbfb>`he%`OH;5zKj-NTKKjY*BhIgooFTvvYj%afq#J9(KWR)OsfKMEXvp) zz1~|juu-ntQCmWphN&4rXWGLd4OixEEkF2|+i6*a6i;n~^J0T-hh_ZlPGc{r1;GG0 zGgNwLs8iJ}iM?r^`b=|M%wmhLM-`_)MXy+4o^;@mKz-IPAw`2mWmPkbZWl1m_2rB! z(P>AzrTFAe$Ac4V<D` z$4*nAfs3oIFKK?z&1-xWB zE6LxHylKfve~X&dZNtVEk|oTlA%6{4HvW9)z5PQMQ;8{xhaL##1$BY6q^P}k_THVo z!0W={a><|fdI|AHa|X*f=b)iq&6*>B+gP)^qaU_gMx6VCK@hOoWPRzkAqbFzt;%nQ zLFlF>yL&qge{xj(P0CAmEH&sZeLO!1@VVUg+KzyBJNVQBsf6%Fk-qa{^pIkabCt-I z7)2g>K~@=fb_bk`7x}yU4!@Yl^mscbxW&zoz?-!L^7O$z{UG&hFjwZ*m22?A^d*ctlr)d;>C#bX1#(Bk-^P~x$$E1L!PyW2|=cJ@%6`EqY&(AqC zs>$YT2ye0dXWVIsBi0?N^>-;mh~u;DH~tt}i9I8>f@nUIUW%P9YL_gqDp{jgyHJDlcwXbfq4)dK4V~^Cvj#Qw#bINvkCjMFa;Zh(<2`D|CUzE9>6p0hBYL=)pS#@4pY9$$kiKbl+q|eYwJjToZ6S*nA_kzfn-I{U7n1}I&lOBbM{is`8 z+)XkBdT1C#+UF9CTy$|}+qAX2(_;xMqK(zCujUYshIunUK7d_D^D=C`Ll&?CW|NuZ z8BUSJ{gvVJ{cm+Vta5v|79&c-P{q+Tpuxg-!uK@-rK$Z3prWdE!!#8{Q_`~RouObh zcUHy~lH)tm&m-IGY+!YarPZbPaVFxb^sSCPqZomU4WUF6#D`Y5e->~!RWK^_C_S;_*{$IO-;t}IO|5YWUn0Y)Ox(egM6;nHxN(V9^!M;|-M}?Ub3h$dxUv1}3d#+#oSjgG6RY?&e+@K_> zOi5Kvs{QMl;o+B3V1-!y{HeiMHOQ;Tp+)`ox2$@m{A&J{P3{HLRpaO*ocF1C%K-y# zTQ54LVsiWRY7S{|>f%N}Jg{FU3q}xg$^(5AA<%Wi+0aj|NMz*iZ@!AHtD|@&y+Z?OE9B zvK8H6?(2x>lcVIAur3uB@$~SEA5)k8M{0mxTn>iu6rlv`8mg1EU5=-<5CNGZ12@l>FgIwkl z?ta>jTHb(V&e1Ny-I$kOG{SEI^AUrZ($wS}zao^}_3E(#cz#l@=n5ME&dRKd)_EdsB8#*}ME>u&XdtOE_MGew`~-RuP?iS6y;?tiWu1 z`b8KY^?O|*y5O7d5NEeAVbvB3@5Lz4CbEd(vTpg48K(aO;Qk>o z$ubNrKN>+>e$Gpu!>_Aa;tG+ZZIP4-)xwof?0mL5uO#=mA`s0#{4-Z z-!U`$x}Jc)~~*Zp;wTp z`DP{&M$~cCCb1r2_?Kx$#YB)nYm^9|m4#;0xA#oIh8|>PV*|l%jJ=Bm-etFm1)mff zU6iY*+4ousFR*UKl|-~6>9`!ewrsW<%@X(}ifH94|6*iZH7TZlx!wAX!`?;L52ucJ z!J5K7tVk-^&nY61Jp_}0uLD@AME6WQ6-lmq0Ghp|HZwedEv%1_#bJDHl19U6jr0EA zdr54xq_~$qQ{|Q^&(`Wgnl!Nr?yv~4<_f^F7vG4J5>-!a$JE=0fDT&pBCgY)EXUX2 z+z1`HZ7(}sVVYF&vxO1`{W66$vPkKF0Hw))0M8zsrv!@(t4K~;J3i9xUsR{hpKXlyX7vfAr4a|@3_)vQ zh}ZlLgcb|F$%0(Z(QZyQ7i-~!O%mtDfpVw?gECI(ca|J9WO|XCxtF?SZ|l)t%?}8&8uam~E!p zrv0!;wyGoa$}A2wl^2>vXheC3nj5_bOwLr#XR|W2XZI*o!tqmxl=jR&o z%|P|EKU>JCzlqOH_zYDT!1c&%T(jh4C+evfMI>nrn=L&Hrhn+nF?n+wy8`5$CF_*} zB%!=P993A2K7le^J)o53hi7u(oaIAHuYB<4Sc_OMYVZ8@hJ2zR{{k%y> zS_XCzGa4gbD@}&gN*bXAp~kJ!TBex;=8?i*DS6zp)!vLu8>L+V%VD+O8GBeXmwW~N zjyv7$nzF(?1yVoVTAJ^M{?hUTMV}Q@cVA2TGd4)P2Q92CnGF2MN+BbE0{_Z@5JK$_ z59_UdMReP_iD{$6F0ebTbpi545E38>KQ@b0++G=2o=VQX)_|}~he)au! zzKg>@009JZ+pc6;e5kCz`@7=kRaq-omV(Glf>djInK6kChocF|$4bud8J&TcjA{c7 zZ8lBsv)L^iEad$wDx$DC)VQv(Pw=()EARM7D;QIVldD*I^4V%AGep|Z_27-->+{0v z5;E%M(JkYYuzBZ9B6C0WcWp`jZ#;{(tsN)SdGL2)e{{fX6p}E=r##}tLUS8VufBgo z_7KBsU)rduCN53=I{EQUpFNC0&kJpoDsa=xi^2Rjdr12d9|qBz zMy?xu@$xPi&Giy^YG;urBwu~N@CRNR^(|!``fDn%WYN!-r0BA$`6{}1qa%YUwFN$U zoRRr8zGq2W`R!S>9}vk++Ec<9DP_|cP4DPff!v{e3g(Ck!#K)8@YZD# zUGy_8%(`5m@@I=y!-&4-gJs5%i+4Q882uXJ*{3BDEpsJqw03rKCKqD=Q>&{d0R)EhbbXt&&%uvKRV>A4o73AoVk&v%aB*o zrDJnL&Auz@pJcFx%@06kKIHtX{c7o}yAd~`<=zU@?lkRe>N7@su^IBi4p_Hw`q!e4 zGqkqUMb-YHem1O2FtrZ+50!cY`I^!ivRTr>YTB=awH6Y5&kX2YaCQ(q>DUg(!g^)O zcxuD#mx(6$5yPZm2O~c8xvYlK%=orFLV1$IOVv%4`Ex0C8D@k7)OTFqeN6&6Ef{L{ zy7r-Ot7-{(G;k|I*uhZ5@zbtAKT2B$}9#K zLln$rgFZ?Y`AYu)cRr*Jw1DQ~m0sFux(v2K;EW7o^rYC)*lD*9q5LYjy&POzLc%|* za6iVp`L1cGoso8nW-o>G?LJF*E*dL5?885lWN_I0tGOeQyPLXY%vUlq*h%L?u2qs@yMzc#(#?S8_hQA-u3O-U>RRDFl0IGf4Xuz`qa4f9nN-pwT?-ytZ(iG?Cc~z zXLF6%$5H7^l|9GI)6m?q@kX}61nQS-v}LClaz3N_)^3bm#j34tUAFOtlXCOHdmY7) ziHMlV7o8C2xdVaEaahWXk)o)Xx2I`V_JMC~ZDWW`yOLW>1#~?QI&)c0H|ks+wm5BD z;q}RyS@iqFl)SAWOMq0I_Rk}~deSwmq>&P*cXU#ZLb%d|eta^-TZg`}T8azMfF&#h?}sVslmWQRs;ke|GCEsXa)KT3Dj!do4G{4NFl(7C(*z#FDb zfPJs-kNe}A+nA10hO6-xOw}wdB0d^;uBTnCaGHYvM;HYH0Ki~%^r5?jpL24{O4*%f`^?8BisKy9PTK=T$UJqa>DDkRt`XxWlCWsu2`G7D`O z9DcOZxGvA+Qnn` zOM7Jtv(DeUjDK`uv5hNBnX^Yb$CT&A>novE0au_Vv}uu{rElUhZn#@T-PngBh0WYF z>}W^hn~0*?mc$Y;$Idt-zZj;Q29X)@f<48&lIg*tgd9ia;1X~@yXlem)44VzkH&&I zWFt=f%km@h&&qv?T71K?ov3T;c`WZ0pONRrRzc=&%VQgd0|y;_YFJp&*ZgdCof6AR zg2U`~_Qi9Fw-*3oA9Q2&tYb#g=4{o}ym?UAd}6R#C9HaO*p~o-Ha=e9e7qCuTNzj_ zJZmL_m~Ct#ir0B$g5?o-(zBvAEINetuOKTLAjud8cu5ns*-(t!C3_uwM?x91|g3t8h3Z zV?T4P9Kp&{)czsMdEtwF8qUS+yp)X=bhyi5K1;oD`ZPWA`Yp{v+gJ}S&8l< zPOco;qkevWd_JFlK9A3Mf8Ous>-8L;6gwLW9!@b%006*aWodfl-W>_62v zzXSkG&s&)q*+&*Xm}hHtHJfB(hMe27$^GBKbnmB6 zSL$8Yans^Ea{*nnEBUSVe~x}A-@hGuu(1k6+?cJJ9-DZ`S{Fs8r;k?x$pB@9Sox?+ zQ$`+wbm~{;{i8+ZNB6(Md#kqhbwiC$0}9er#neshhJc==LURrkaupkW1GGqu(?M@} z`*E9MdAwbztDiwj*H=hWbvFpwog3-Bwy~SJFQjER<@R4_cdQ1^%`Jq#`}Fv=#@D4& z+N+uvEm!&qR&79g`bMR76DzfO>;@PYi5f1Dpx53ePi;-@D~NU-&abx?=t@7JpY~vv z(#rHisJ;M{V$Q?$F-596djK&k>O9r}hc!q5b~sOfQIqvGP!tt!L)ICM8d=_-`}TLL zBPj#j2K(2q9J@j5-0fHo{8RL;eSc7oqBEjeyj|<_E9o!8$MD`9o)8^kWj5+))x~_E ztY5t5vhrUmRdaIyxJRS2Fv*PZCfm&A`jgRT5)6+jiV}}bjtH{h@v7~s1tB=M3LsTf zTwfY*2MFK};NIHX5c69WV_(p3)C}?S2Ktf25C)*F2g=c&D0+E9l7wFP7DA#>BV%n` z+^6K|p)13ygdGJGJZI1`MT;xXN#8kIF}zPZFa#8 zZLgfXA5Qz{YKx7Q!Sc~quFoaj$t023lha{c2b1;J_^-^}dLYft?m#0Ks7)>7ZMe#x zi$LqH1&f#6N=KFxObE&zP}rCX(nkJxS-VRV{pZOjw{p~=byC3n!@1tsk?@w5%qH)^ zYcL3ZnO6SE125zJ3N;N7QUrg%=qU{n>PWQ8CpXdM@XItZ@2655jVA!*vXScOABC^; zH-R}$o4rLi8y<{jCJ`H(!wGbgTAz#DkFJV{|GRcFeVNadV_rs~ zKnTWF-CzTBbK!fmIe2Y(Z$QQ(Oy$Gfy_0D$XM3rtEcSqzAbC_Cl#xAfLERP{NQz#d zkKZWE1RjgsuO$wPiRr3O3jnY06rNmU>-v(V1}-H#i_L&;)a&p%_%W@0#UP;G@2F-E z)^+?V;1EJxb9(F)99};a1^ZN~o^d6FwFel9GS6X4qkTeEI{qM^fWQg?o1t@S@26we z7jx&U*);@cqh=&Vsa;23g$;K=)%18>L9wpa&*RD|u;7y|nGPrz#9&z+}z zgv&L}*Oh`34gPLqO1?gsquK%eoyU)|+>gEs_lo)ytEPqZzO7={h}Xc_J@Q?~oj1S1 zM&8>lB)-{-H&T*ySg1m8zoaGd+lZidh?(26wVGruk?U3*%2BIz6_d4oC#!MUR}(Ld0e=Ex^~J_|v-@`j zRFc%qu?TUNFStGGKKGCjeQZXaKKOpRW3PU@$jSadykR?z2l|WvUV70ze9r^nAvssq zT_pbRzM8tNWbwO1VbYUcu)z~tWE^Zvd4@Tqsa*V>a)0+jNa>&A*s6`Z1&eDXt|f51 z?`t~}mc8MHGr#?s7|y)AA|HRLNQ+1EV2p53U|g>X?J^feo8RDqW>s{r8sTs~`C$g4 z6LP$=`5u)Ch_slVDBWqMkxvlb zPQjrJu{e7F@1GY^aMcPtJS4uhyJ)S_4xqV4?`SB&{e0PR*56R$jJZrLm)BDE&DVs9 z-rRb&K!AikhHGF%S0(AAE{?}-j(-^yy&So!1kA6){e6o`YdtemH%G2x0?+@Z|ULTF8<1_R1!`hLYu!v<;`h$as&){SLU5WW7gEfaT~?%^>&N*3QK-Sz7`k-KI=SsB^5s1! z^FOKf<*n5f6?a&`i7-3k;Nt4v^97VY)pEU>*! zW-9Hipm*ONI~e`&+#aa;*z%s&RHV|rOEo&j)Ab<lYC47ceaLs^9TYI8bB5kJ5n_EBZ+uJsh{x3E@T!zdnwu@ z|D9gnma%Z_81t!cN44R<8hu7790R{)Zk4QRZX6euv>L;@XnfG8fF2KN#_54$#9}=p zlr3RZ72~5D7+W%8i1x-{6}&w4$q)1tHi9SsqcEMS?W{v@_M=AvxU1rZ;)u7D&}7bu zqt=rpz&xp3U1cplX+I4u^6*k1fgyf1?J=i-<7C+kk(Mc8Qvu&_h}1{jShc$DC+f-P zFd4)!gISWuU1%T>+g_mxBR%o+-MR;AXZ<^;>+!KT$pw`~+^z*K>L_6ix@dT!toz02 z&TYDdVXG}%nQ%OFBVZ(kAO!)jotDp%LSaM0$tR7=W^7@6$i-PfrGN_neY8RHIRnwS zw7Ov+`d!)}m<;p-MuzZ=Jz!f9@#Z0Ih>nPeR8IdDHq|P{EQ?8%`Tx;CwWGCkm?SXa z#{AD~#~W?SEV$Z#&Eb=2adyUXMz(l7S4)`iJH1}Y;FMgvO0*h`2}0?UoYWQaFaIHG z0xX0PD$}*St8uQDhU_-5Dz=I$6WG8fYOUW?Gc|n|;#U}U>;l8XvQk*-ngHby>eSoL z?LcNXTZB>D{r-kvVj-McfDWX^*RbJw&?h|xOgXZf>pI}NtwW1=Z!K4j2P+luS0@oE zQk5;LGDT{)uqZ7}qk_m{lx^Sf)$x&T7n7=CPg|VY9xLIRqzcr=M6WDC;A}fgq-?i+ zg-5$>c33wl^~=3vi*GjUKoL#u_b`#?-B_mQ%yj3@oA5k%^OT&7zBe#h6dd|*SQ=Xn zgNmFqG0r&DF@oBx6KgY?mzGcl)-Pt=id=49jU&DpgUDC}-QZUUi3}xon(y!)fsssn z2H|@+PxAU`>`v2sS)&T)YjXf=+)mEhs6WfJ0ohFdo9NyuZr5-=oPj8*0JuE0wKNPw z&X?k+#Qx${i*Io=3oECotN3Xu=tPB!SUk)VU0?A7` z6+l1V?LaZztcB|&5hU#Td92^k+IZkmyl}fmP+jcX-)TDx*l74AUPU!Eh{^cAoAF|< z@r0l6@aj_nlt)=g89*4()yL)Uq7NDBUzfGst|snHWx0Bk!riY-Qk-5{T&pR;V6ud| z&D8zBz9Zg`>eh)DIm0d{y9{6(=(QCpq^4^Ee2PoYlSB;l$8P)yKU;uz0d@`DRGR2w zzZ@1@gLMtuDCZ3^Z&LpV7QHn2mC4>ZwC0p*YKH@m*o+WBH$46e_Qmr z?p&Z68%|f=&11s8&|UfO69q+Y1=Z5+|o2n@BkaF*O> z^noVIoS~pw?kCCG1tzX@MB=xbsRK6?S-TV(jQG8cc6WY)9?FN{>g)p>Rog-(U^&3TQYoO|<8x^^ce&G)&v-iF(B6}z6 zW4D*3zqPuVP;RM8JydGBkocEQK9f^iB8w9;?FN(xo)ZHJD1wCPZ&v#~@} z3^>W!$($BSylSI!GxA`fY{8h_+(g=E3z&LBXU?zTLNJnU2KzZw=$LhCof1&2Z4C9I zHah{Td`Q1?$KNX?R3zj|Ig4mR8B%TIzi2^tu*q7ypsy}Hej1YN(z2KxX^}p2`g*s# z1(r?MKpd#=PMtA6Wq{KQt%Wro7(k?DJTAV}QP}3z*`p>LD(G=H-@OA}GF6pgQywb< zV;@%qIR!ER9UilyN=6|ZMm}leR-LM?Glh5J|Kpiq@dq+^Jurr1R&bObs2hetXIK4{ zFSux=U6qN@_wK#%HtCx2S5Y#vQ4>O+uFw`pp86YVdr8SJG|<0MNe9=u+I<#4Ub;{y z6_iyO|6BI%q>>aZ>{+!r@EUDzV>0H8{@(C-6EL0B%OTSd9rD%TsPHd`ZKU!2LmyY; z8QIdvp>c4m-_p~YCZRhLIWS>WP-1~jO{R**ROfbG08f2n|Jj3k@C?$8s;@3Zi)v7I zb}4IsgvoEPk(v;O^67+$td>@0!?$w!MMDe-5HUJ!kLK@qhm3^OX3JWUg6R3#u^h7S zDHg{-fhX@>%`+AB9yCt>7x-RzAQXE^Jaa6=j`4`m~B3KPzy5Nfy9ILF*3OlEtvi+^%XUveC#^ zc;cPqcdTd|b-~cns?b$#EHoR&%&8DP3)=Bxyve2LCLQR7nLR?~T!9bL$y^XfI*C?I{yN#AQ87w)tzxuKlo11ry>YW~KJ2 zs|i>zG9AWPlU>`IuwA#7kginuZyD!da3=%2{bi?*F#I*TV6bz`oaTr*zl&Qyid`>hBuITkM^Z9_+{` zV%J-8&MJD77J>eci)Zfozx53z_VWIo0i{x*5${a?**}WiirijGcpr_P=?`ZYO}%r@ zXPOTL$&n3AWPwqr)HKZxTWvKLSgiA6WEi7t_OE2qjq!OdvP-q**4kag=AsVR{ zv@%jM@A5897;-Si`2r+$l@F4BC+AN7FNY(v9^Z^E2Toz}$3qX_t?$w%qlS30Q*Wh@ zc-!DL%bdd#iROK#K`^~(8Ek6!t6TWVch0m`&{5D(D$I~UU66h=)h&b12IQJcd6eIR z+BOiW-+N*8-LvtHN|)7?t>)eatk;;X^L1@LuGe?@Q#kGK#=6+CB(FRxc)mKkl)x5T z8&n7moycA)m^%+L&QqPEGuhM;j)?FkRoA`oEJdm4O0Z!RUO$CkVqIF|H?R89qHDo1 zaj85zt8HQXbuU-c@*}MCvqw`<`eGr?^G@(pp}N5}+bi zd#LY&AHOozo??6Syndynqip3c87Kh<*jT69vgGCG-zX)mv1I$(kXWeS^_|JyFMTt| zYDR5-XrLR%{v$7KvcO`^2Jf0>mk^R{!v}6E-;|(cRt}v&Ao_3$UT$7MTk!{4SK#!xXebd$rz(DgmmDsX|3V zpA)Kb4RU;3vq=v*bYbGi2gCp8kh_vX9B1YPb1UcG#&sskOo+v%>u-3;-mjhA4&7|y zzhd{I4n$D_VTW}Q;4~u~VARS$|GI%&q;d{LBH}CaM3^G3FkAkCeNr+e|H)iRMCH3A+Kkb=E|*f7zg-dx*faNDyiBJo5(YIZpg#JeU!JEG#BIj-Vh zpbXsuhCuht1g{?K+eo`WM5T5_8S2HnYwX}{3VUnVgPLhNA6x8(*#>Pb(f;C`9fTV~ z4iw=4L2gfJbaR!zNkXzGzfav7a$nbrSvWYZPYugHw3gxFDSr0Z#9T5!?1qT{Fc|+c zuntYz|s!jVwPVz^saJ|tE@%H`U0HlrX>a)%=>Z*)(iX598bBk};>cSO`&0%>H z+qa8Z=aE8k7a!~8?EgL;JJnP=Nhx~o)WAU>78EFh1g13>h1dpDO? zO4~`=U0(KOmQPR}My=fsJ}r!#nN+%LR&zvgrgk6IWc=9QI{_%A-AJQt%- zkds31Ye8_tKyK;QGbMP47FZYWL@YyuGe_?-5>-HSUNt@sDU4+Mt>Pqtng&T%ehNkX zc>X@vh}L=ddv2vQ6??>UH!xx0Q%%}sguQAwpM}oqxd_^HeiJyGZD0!I^@xGV7 z%k|fL7w?9rKilKyh-{}btM6KQ^T%#YrLCGPTX}gBoZcodEZ1Vw`Hz>zI%1CxXxW+3 z-U?*_-#trg3w4lsSK67$y-vzng1wUuc`E=3D)c&4*765MqnfCA+Bi5;cv6~x_@vhl z4a%+z(uk6KEP&Jbh4LyO1r90y{Dlm+WED$K$Y7iFv9L_0&Rou6N$YsF4-qnm%E7;8W|U|633)(l?v;$UDNET6pRdSOyTh+ z&Bj=VnG%hj4mR}m4?4jG6CiVgQ_MfK(%p8SE+V+4XQC<_MqN!i*RMDAWIo_$d^$+@5#pt7QtNddmx|=wdTdtR(&*5!&?CtD0 z&gZo#&Is^%X4u3%q49GQs= z6??vv(^S3kZ@PV1Q^Nl7voGx$`du+EB{*>-+O;@(OmF?-j zs5Kw@(qm9iN{_dWl=JrPd@DMMaq0mTX3Ju4Ja(2n<*|2Xj)LlM!F6%}klTm3z_K&v zJ_uWR5^SXg%onc$Hs$i%IEZa~vPyy8Ym`QwGM%n*`k;ih^LYKW5KJKNn$Z-y`mJ~P zfrj_UI@K)hMGZk}CC*00MKjXcF)nRc{|U%1ok#}V-yBqk2-d$HRItHEOWw5PfH?8R z6s=mzsL8v1`UN-gQjT)7b7+E~gns31hXJ{gWeMk(UV5Wxf?Q}~LTq#RtDYSF$VJ^d z*LO889RqsV{<5X*D@rfrT9@u+&FVcvnjHFI9$n>B@%n_tBAJ?+TEN!T|!(*h*a)`Jag` zcdN2w(ic}Xxq*>TxE4iRU8EyPDFn;|m&AwVMOOJ#GIru9G^!pJ*i1u|ML0C*Y+A$2eE8oEfe+G=}4;lRcqtD zagMk?Zj}NoU^$WFosdck8HGKM%|h~c6fBakwfRQE<)j)7tMOOn4vCI}df$sF2qG84 zh;LEC#CTlqLpui77BP+s`lDu9wwU^hjH&-AZ>4H^z-GAD{a0#YqLcvP5SHqkk>|8D zhNQXj8J{Ye`M|oVkD0m2+}gZ>7+(D$i3@r#s`~^N+i<%!zwqy#Yo+CA!TyO#Rxr#_ z4#@C0aqh6es3f*@vWg((DAYLV4dkyot;Z#&pgM%hVL303y>6`pv_P(In2#2zpf6@m?=ONhqz zL_Q`sI&hs+pxp_h4rIZ1A#T8{4@T}iw$3=k8(#XKFneZ)?=MVfbcg_>hHLJ(2Ui2X zeIse^4Kqh>13wz=A#ONBc6;!_+%K~B_7Z)c_P23yYyzenPLABezOJ&kI7?pme+PU= znuT4%=rb0S=qp026$OJfer{Auq?uqxct@-fJ=n{u6f&s7rfUcpYkV4v#4@=F8TnbG%CSG&sD+d@2;Bi2fwuH?XV+w|X`Gq=EyY&KZJ@I^?!?a)K4*rm zYT_3pJPjJ0@R2w#N*^5GyItZsRl;7972LWGp9Kqe;bl$1%Xquj^ z`U*YNM<_qsq*yL}q7FPGoNF7(_>;Ie`^`1pLU|*!i3N7J1z2!;ZoPNKKw>s%f%?mP z&`uy)mhg=aZpZ|w$(shv$|IW$0vqz(;uK&KWz1Zb6GiuGbZSM!z{{%AFZVx@tsrTW zS8KE>&$=sexfk)8JQ@6e5}jCV<5sCJWI|REiJdE1JaZ$ALmy|0L0Y(ePdhbw*{jN` zwDN=VFV$&^)SkTMV@?2N_JYuU&0_;HlMGU>{w?WHhoMG`Coi-CI{>ivn85L~XOs&$ zKTP+Ra<2Y(^-k;${}`LFiUPsbhO5o{YiG+W1@3$XH5vxD>?1NvQe211Mw7vcN<)z!8zNkt6VP$=WKuTC~P-+6>+GHWX zy3zH8m;8`!ROutg;Ojt_Y{gkd&|u{T`-m{fjpGMFHni{s^i*t_81pfs4`$d!Q`dfx zd+zTUueM$#@wa#8T6UcCSS}`W$e|*!@tPVTDsPb<`cKkY^2mVA0bz_4E$zXEx>Up~Vz2Exe=+eF+)9gGq4-O`o9nMMDm286`dmXG8f4s+hA)&BZs7Y<2$Ccl?P z@H#lqR+E3;sH=R9+I(2a7G*TmPfrnZx=;C0|t)<2=rF=`V`+XXp}H3R(pGI z?4F_BEE;{;AUtKk`Ho}9zvK0F?A@12H(^{jE3FsP_fk1m9=fue6ryg0ZzEa$dJhb0 z+}@n!4hhdzR3+JHgio&yUW4cK`;fx_5{*@DGxe1Z=o{B|?9V|qC~Yto4TX)NTL zZ8q`L;xeFP8y^-jTxc$&FDnWol%Ye@K7Zx#)geqhEb*orOk3wj>AZ;6v>rKJ*zJVY zC}_on^kx0X^%`6}=jj{l)7;BTxVlSHXi16;?SLTM~VrVYZQo5hMXQGPW*By5Fx$FZB2J9u6p@He}y zGuiFvD5}La?ia}6*QnG?3Q}^P;qYYXlTm(RlgZP)ReKe-<95(#rEt?s z2A{cbu_Vo^@NLNEDsU-|ehY?}UHUnwek$`kpYiX=uR)Z$3yM^3b7KuCADLq)gvzb| zT!1=RS&1nJ>RhJ-(2c{ix>uGINUTHkthCz}!kI7lM7?>RyLn;`y^hGL$%7w(;`1wO z@+3nW&K}GRNdhv-VzGZ_Ofs-pN?RGHHszhK{N&$6PtE+0_;9&0iPXTg$&~*u8fEPq{te_jh_gY&aZQOV4Y13m7y4Y%Ypz{O!4>M4MogDXkUR#I7cy&8uZ!eL=eX-9i-P0VK&&z5?VE%B@EE1 z*3dNg7>*Uz({1a^&8OxJDqysuyvO(@maUTKFXb&>7~h7{AjUmgUl2oeyqG6Qs2$`q z7xH{`pcp#RgS)D5+%NtNGwo)oKeg8|GT`3}OPpoe{rM#JXo9+2LiJk8~To zW|f__Abq37-}&+?JMafLC{T>VE!iy)9PeS!NnOESQUSCMB(TvxL0reu3>>018$(ci z&Q`&LZDYTrTE^-*aW^Xg{0v{gHC`$NsBQ}z zb5am+qbh2j()Y*^a>qscGN~|9wx?^B{#4ENjG%*)NRs2nCN9X7UecM*khD5)F|HP@ zIe?|)?z#Z-ri60NOFnr3j~mXR%e!adws83bU4HtZ!eO+%Y<4_deE0zUa(_LvN^e_P zP{J(KTH`qNK}>Y{M;HA*(oEqq=G&+Y^Z~uoLKc*%3)H?M#lU<+E4-1*rV0vCYT2(F-Zty2~o2hr*URHH+S8z z_^^2M7Gs@T^fkxRQ~~?$M1BN^@M)l&EoSgaSYU>d?X7U3>sCSn;nwG#Aa9OaCrefI z_6q4ukMP>Hjg%SQ`)T4{b#Xn5M_en^c#n0)wyg5;{Uu`AC?{)4$p;}_My-uyvd&Xa zygDoSc4E2a3(G(ta%6SG`Rxl)u-|QODjS_;%vz+1CAB+)-SBwJ`$s_*U|nweyboLd zL^{PT($=%a{dx9i5GB7##ipqjYJAr6h$IVVT;1R5uH3+Pqt)hJ!(S^mBGMn?f*!-$ zjISK|f5tX+u?4M+^|KCVb=^xI_>pknFuFG1(RXCt=$qpfbg{loNx?kEI zMWRT_ClV0JsmTT!L#NsAXk7Zm{Uo+W`Bt|VTfUHaCeYGhT1+p zjW_GO5Z3vs6(O;=dUY~7MAW)nV!6cFi0UvK8X4T!hHwR~3!jgSIZwU&C*khDhPjh~ z57nlnt6Azujj&Y0YI*V66DwcARnFuq6s~1)PD&OCda03fiSu!Du zqbPkGPo3t-;!RV!Tz8Ncf&EMe=;fK?5DRnwZuX;_mj3ojTUWi#|7Y&<-k)@Qe|;A= zSRk7x(HeSXYHYwhr}_4HKt6Fo>^PkLcr0Sdi#q zwR!jZI{R^M{cpv8Dw+4#*->Z<>5|{Q0<3fUgQqmY*~MoJkx@(8{cYEelSLl_gK&OK zk_Z~4lk^Scx6E872V#^Jy(=91Go%c9A+{lM689Ly;{d{*`^f&v?c?>hb~(;esr}!5 z?>pB!4_ovvNtLWbB5p2hHJP9;!S?-q*zW0*aXp~;Dx6@t!s$UH>(MI)Kfjz0&#g3L zB8oW8cu{#r6ZJVZ(Ah#g0{6jefykU7rcJiP(=<^Gq`6h;IqTKHlqh^+DFcas0>c>t1FUmO~Wkb-qkqrYs769 z_~*YXm|b_uk!q#q*<-tod)60Zifpzrt^h;J-pN9)SN6irewFn9v#1}Drf^>C0tBu4 zBX{9z;nUB3fHCVb%DtA1|7Sba;YPgNNg`M+AC;;&)q&RcL3BVgUG#gjV>+LwHmYh| zMIiImZaE7RJ#6r+dEy{`>$eo3GeQ`Wp@KlwI}|7&d^Flix~-bgym^=iSosZONaAp4 zRJqEjhb5pUdkTMXiN{K$?d8DGvvQ9a-&9*n7`JwlxfU!=N1IfMPE?FPaT`k8Keu4R zW<@iRbOyy^0yRu=plvZQZJTr*WE+>KNq!~g(;^pW{J@Ox-*|3?E-B?8ylQvKQ7F`?n#d|!y$m=0TVL(=zKU^L> z<8DHc(hz%s(-kpAN0n;XKXosP9NBfKtJ$qrK|zZ*(4$`ZC0kJ!HhGgI;=Uk)__2W&uh$Yh141UXgDb&aY6fA7>Axd!a$ZKh`}P6SB~y zEYC}@y|WA7D-};sruM!}cee2JVJrb&oN-|xege+ZA|oCnD&`*cyj2>|@)bxHAX=<) z(C1>BsdC^*(EVujOIIbqY=}V2Hx7`cQb&d~=~N1zl%DzHlIYFB^A9hfokC$&oRW}! zu_6Ij5tAvq0~u?aw8^(@)emnY85|R(|BXD=Io$iGy~Ss&Ah8@;;79Ls;2nGE=zHun zV3i82gjiznw@QNWaKB~9E5wQ(ma6y^!&P>MNIw0C-eZfrj%{^F{W#;U{W5r6a^W*g z!uo_#9+NzEhvsEVQyF5r$*$&-Xj|hPOEx5M$MURV`~^cDvBTNqYfTA|nGwNAtF7!5 znZVK6j#!o^dl(3Ptvl1=>sJR-LHcsEr1fi7W!~_X1=rcKo6b_~DlSZo?#3h?z^HV7 zGYshZ4FM(EE0g3qEq2+x7QjcG2hIT#dib z8#JyGhKxAMYVT5~NO!JvlG~^0aCQY=IHbqpZn`HzNWjW28)E&8%)1qzXpsra;N2TE zeMNc5R);5n$x+eUIX+eF@rS*Karv5(bzA~$csDy1lk!=M7Ymh5ZxGHogV5&Cri69> zn^mk;6*O6R^+{hMtQ_s5d>H+9eePmrmshU>DL@T?=m?#WU%K!p9z#*GcmevOqINA$ zPdW{V<9W7Q;Pa{mG?#&a1_{BH${*!Ce|w6TndX&-tUnWPK|o4S6aU-NSaR)yZiN2$ z<`5Bd0Iz5Ksxwe#CG50zfV`7AkKG<&D{)7 z%Df#uc`q%gtMl*g{HtXG*2v<5U#{)ZKg2!GwwLDvX3?Wcq@Zp8^m46R z_>ZJg>5S37Tn%v-2*zbE^g1@pqy|;8iH6!$B-*;kmc7Dyx2~pt3p=)t{W49yp zenWDgN6}RN!|g&3;?;9Qv++}1NpBme#T=G6TrWR~vqDl-mOL9Mu>zn_4-{?niD7VVBNpfHYT@$E1tq#qw`#|Mj zUCsenWSCaNZ5BPb;Zh?OtWPlO1)CbrWyY12mESh~&9IxqF$CZ?uPiN!xTbV2mbuBq zoE~Jw&6?zs*>(WHToIgRToB|XPPynetdpZ!?~YH5W3SML*IU{7yYl&E-o$P{V2AI} zylS+xf)>#Pk>lG+DXjJINHc$rhFhrkL2mmFjfbRqVf|X9&>HdPXp?bu^UOTeG{oiJr;OH`&dcdcC8!Sm{bN^Hp)0g4f z)|bL%+$V`bUOm4d3sO!Bk~a0?-XuqEquXtn{JcLlqB~ zchJ+P3|IOV{8>}@TvXmNceLU+7)Bwd7H!MhpLHCA#H zAru=cTGNzXqBMdZl7#&{eVr{!EkpxSA?$)0;cW0|z37mbG_o@}mJ_F}yS0qaoJtd| zz5+ho{Z1Jm7XB3b zaIv?au_%mdN|5U*G1`5NI};pj1vi}i$hIlplR+auvN!@R!eWkm-tI+Z5v`~A;w_b( z?qz7E?kLHkZt^%O)Ot5pwrGewHq8#1MBL{ljjE(PGF7vGq-i7sx8U*l3Veynm{W{j zS~03|bg*Vcw{GNctVk|wjlV1TVP)kt=9hC;C0;%&6=QZ*rbY3bUdk`zs~D>!+luPI zMtXUEnZKuU!wtawfr)|fv_WC;nwM0#|FWzkxo}H@FU!glHv~}sQ7ko7m~>)%^v^yd z>tbp0rZNK*YbZJ--H2Xm^^Ulk$>d6_5_?R)7(u*{)Ae+-Le@1jM;;&Fd+SnG%y4TH z^6D%tC&{Ae#4PP(lQWX;&XzV>VsF4EUfPo{`~|w8a5&@tw%k#UOlp;@T+uU>SZU>~nek=gG928i=fm!SvuI zl@Gj_szmnW8Uc*pf4{BImPx;iHR7`bLZYQ$UH=G#x6zawsoa&^*%J$0LW1ODcsP6f zJg<@*WCV+frwH$|b-DDV+H%W%nX#b~+J=HojZLkF8$0of?<9l&#fdykh*&}Kr0tup zI1QYnb>n3`(mwHzTt0U3#NZVtD`m5Yd-6%1k5rSODNhr)HAw&y626mBH3H2 zbPqPps)c&VUXGSC3Ahw6a)M~E0W~48R0jTHKPE5UE)6T8SpvVHlkf!72de6J7Ix9V zC>JD#^tDWJJxhJe{kUHRUq)P&eRy|M^oJL}i%k(%GQ}y>`@Kapy*ggvj{g?=dx+B7 z-hk{O2@GQ_fH8uudTW)!dOaH+1X7#iQBuSrIsJH-iER46!lHa%DVD=q-Ieb@0y8(} zd!OTA`NL8CC}XTL|1=BswNq{Xia>M8xg@N^^?!@%V#XJf9ekGYmml@4$)~DeQRZre zd>f_Lx%3K%ODMkr8bMo7zC3lyCK?ag3VP+rdLn+-y6b) zMB2lWl$L-0q#@F$EXx&1&qUcE)4EvpV9^WlWSt9RH!NQD3_RdJy*Wm&19t#W*79(6 zKG~9ezNZKBi6xzq^{(@hW%jDuCov(-@ja^kEN2SbKzFU+TX+EQt zD#SW+ZEeD}?Llm3qq_@TgOxMIP${J4%b>ro{{eGjyin@KRY2sPUwYkAGJ!07>@>P} z_Dq(E02c0l5oA@(_z!Z0?9`)S40+VOR||HiFdmFsOjFg3%e$y6AJ4DkMoI3=u@J%; zUZYkoM|$VVy}T8SIx|-KEZV}0Cp~d*{LLkt%4;=Vg7x`1FrQ!O#qN z+;fP>DToc6<(g(zMRwIDlNMyS_qrIky!1U}W$(YwKhBMVOby>J*Iesn7mFh4CBXz{ z31r=pg(3OmChIWaD78g`tEqyNV<7V&7d-iEAXxu;ZxxY;K6}QT9FIETKHAaz7bnlp zf^3mD$UzLvORAshXSS#4yX^H=FPtvyIN6>*TayAelEd>0U_Y?~xCflZ>{(ahyj2RW zwy23-KNCcB+G^`-#jyom4CJd5D)G*hW-b*S*5t+f28O1!a3L=J&iF!;z_{=079#%? zP`2&{>Tng#FIvi$DIeu%m@Ow*QpDS4Rt+fDRf!e+FfAsJp+|ifkqUm2YI!7=?s5q) z|3qo9$0F%_w{44z!vLC-&svvKQzQ6IH83wQUG0+H(9OI}_UB`*M9#N2M4t08RgC4? zm7d2ha*$ZS*#w~_wU77Y66T!yX_Y77?nbG0jJ6W;?(K4=5a!cGzX3>mB_~Q zL8?a8R{VbwUH@&`_p2J^W7-JVBCR_=)xZ7T0MXg}&dksE=m@{9Bq;@lzG?bVW}bg$ zdtmLMir$x!xP?M8tc63jY}RAMJe)*yFCIG(x_o)&ctYb%SM zzqwCka2u zw9i>MGRUI~)6WKjlVY&KDGw^se$fpC_R!>i_>1S{or#U#i2rFn{gJ;ntN2|h$^U6@ zr2bNt$+h-6-4-|}r-FzvKvvaPggO>9@b&$9QABnahbK2dE>pidj~&~%@kBi%+NyuC zT9%@#pfhaujqpym-E$EOE*gCM`+4d_&ME2NENyNoF7MDUgaNI4W@w#I=eKM6g%?`9 z$Ilm}4u~E0QUXHE&Ytq!KjX>SORNQq=k{L<-J1M{#BEJi?yH}irH|KE66<)**XiP-?Thp z$q|?%NY&Q;5IQSRgKE1!f6EPFq+g+4=A}pxVSgHf}BOs z>ozTkbe0Ts>(HzWoPxaPKj-B`bdb?IZD#$pC%%dcCcXj2jRUp{!&>QPwk=4voB<;>Vtyw&=Hc50d%h?>+9CYgooeGqT{&>a{2lFm#u~F17O=w7qZI5s0i2PeBiRL> zDyUupvU9p?gl8$zBbiO^DzoHR1Krk{jJ&d`t-!r4UuwSrsH*XK>G2PNDvapZ#{35{rGT9eT1X&QVK$R>SC!qelM>g%j%Z2QN2V?SQ z_Hw$K&?(z|Ddhf+6H7a9<=v*9Tgd(C->VO7jJ)eH%(&Rr48y;Bo!Vn8%D&M8zG}Z@ z+WHVqE4H}5W74Mr=|h89$&&9FC?ht-oiVegaEiei zS?5O-KL1bS2pBDf38)pJdnHc93NSU7$Sbq8PE+(ZUHFzyM^S5 zQGCJELa+n?&6sI|1MJNsfOwXC*_sTXn2xV#+``wz3hXEGa|s)t zhB-WhBWoIMBjVgbKyivvf;6;@mK07=4B(B?ljV4GkHAZcM_Mmas+ge+7M$dQ&Awxm1sdjhUEAW!* z4rH(0;aIctjM+kl;JeJplyrg6tg%n<=v82Jp_44KB*X`#Xf$*HEt|wjaq*2EV!;+i zv6#>yru;w)$Twz#7!XJFn%0>S?~w|DqA3y>cV8Kb;c6ts1ZyR5$EA0 zgy8}KC#mpyJdxu_5GYmU61E2K3>Iuja-nmOeEe+lVV(~i6^aCTapXKcXTP_2pQZ{v zJAD47@a#sq1(Hm~At?0F%T_iEJRc-W9P|JWIyS(u-G_^dI`$>aNB-=V3~^x-9yXAd zo-ffwRwtw`#r`Y{lPYle`FEcP<0Qobq!K8RumC}l!dT8wD&TnZz?f3bbDV*c#~|y1 zq$mVYFs*acc~37M734E1MdKfpkpu-WO;dj&?1v5l&2Dn>`+Uoe_C&=7GVnS9VxQp9 z2P6QmH3`CFj)whg2I8T*(fFLrrwM3%5#~n};^bu$kZG6VC0DHYtcSxVhMG8x_0+NA z-NRFf%JZ{HzruiHC?NvH0M1GtAXH-%g%qHnL@&Er?{RKK!2kdN M07*qoM6N<$f+cJNzW@LL literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/1cec18975099962e00.png b/docs/static/processed_images/1cec18975099962e00.png deleted file mode 100644 index 157b1b412f31930a316ad8b77f1744af6acc6221..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 56183 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 QJOBUy07*qoM6N<$g6aOog8%>k diff --git a/docs/static/processed_images/347f63dafce8976a00.jpg b/docs/static/processed_images/347f63dafce8976a00.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0a6f625afa8c7f50cfd91e24c0e41bb1448066ec GIT binary patch literal 11725 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 OVBooG^ch5)j{Ps_RZ=(r literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/42c8c04e2cbdedc000.png b/docs/static/processed_images/42c8c04e2cbdedc000.png new file mode 100644 index 0000000000000000000000000000000000000000..49ebe9cbea7ff4556a9335e7a389a061ab2e4cd9 GIT binary patch literal 23852 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

    PGad(aTQ%)ZA!v7by5(Q`RK>^x2AuZY1eY%gN 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 Ujz}zGX8-^I07*qoM6N<$f_nG7UjP6A literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/4c2ee08a8b7c98fd00.png b/docs/static/processed_images/4c2ee08a8b7c98fd00.png deleted file mode 100644 index 0c4486bf1a06472d5e6b50ceb447d3bb1e7a96d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29988 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≪-s>PQ@0-dGZJ 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 diff --git a/docs/static/processed_images/60097aeed903cf3b00.png b/docs/static/processed_images/60097aeed903cf3b00.png deleted file mode 100644 index ba71c06ce1ba9de85874795e7728519721a9fdb0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17551 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%0A;5jLWk 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 IM6N<$f=xxmRsaA1 diff --git a/docs/static/processed_images/e8e628f3be10e77c00.png b/docs/static/processed_images/6398117c46046a4a00.png similarity index 100% rename from docs/static/processed_images/e8e628f3be10e77c00.png rename to docs/static/processed_images/6398117c46046a4a00.png diff --git a/docs/static/processed_images/67f2ebdd806283e900.jpg b/docs/static/processed_images/67f2ebdd806283e900.jpg deleted file mode 100644 index 32275e33cf94ad5418538821932040c29aac6b88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5175 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 L!O4da^{f8?Zp(_V diff --git a/docs/static/processed_images/68cc2a54764edf4500.png b/docs/static/processed_images/68cc2a54764edf4500.png new file mode 100644 index 0000000000000000000000000000000000000000..792fb55012809966197b3a29d9cabd1548f2c42a GIT binary patch literal 54927 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�s$~%KNZi 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 sJk!VeX9Gx>>ky=vXzz#;Gu+H*!IbNB{r; literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/70513837257b310c00.jpg b/docs/static/processed_images/70513837257b310c00.jpg deleted file mode 100644 index d12333f0cc7ab4794fd5aced0f00f9b069709e3f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12491 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 H_~(BC&j~DR diff --git a/docs/static/processed_images/7459e23e962c9d2f00.png b/docs/static/processed_images/7459e23e962c9d2f00.png deleted file mode 100644 index c6afbf948aa84b960e1452c82db40e71549c3e9b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30190 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

    nVJgp4rP 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 diff --git a/docs/static/processed_images/7f400da1e92ca8a400.jpg b/docs/static/processed_images/7f400da1e92ca8a400.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e265b8039d6c662a34db90c77d07f3c52ae99cd3 GIT binary patch literal 14872 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 KMNUMnLSTY~qCiLh diff --git a/docs/static/processed_images/aebd0f00cf9232d000.jpg b/docs/static/processed_images/aebd0f00cf9232d000.jpg deleted file mode 100644 index a6fffd1b9e0b097d19fcc2bc9ab77de7f56ec75f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14915 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%0Din;~&+VwqMoej8TQTyKCC?765^XphX z5YlcX@aCf>qz@(C()kf>10WJN5uASxYXe-;uY579ru@e9CjG5|!~4SkoKti?7f|sQ zq*~ou%MY1urp^%cC69LY>sF?(aRI4`@>BSArOb$MF-u1M6Ogao~Lt9XV~To?kQq-@0M~AMaziKBu=pE0gfzzK2r@llfy9nCK&_MBkN1y{{R-lF1>dx<}KFYLO}btg-1m_x%KrP zmD7ANBI{Z49rAywlW0SX9F}9#=n1a7#WNT@F{wYyOm?PB0o!udhs5S(xVxE;+6e^? zKZ`ldR@J1IYqK+qAyq{m-2h+@^Xpgb??4c@-H|X1n8M@G;%;qvPz{w>EKal)uMQ-4R@#B^@ zHrFT;U`8;ck(~F#1JA#;J@n}=S#8KqI@Q%TG3DW7wOkJUK=cF}$nokXsi}WpNvU~v zH;{{%LmV%dt%XJdv-UlT)^CR+HX3EMz2>6YVTReRWLXx?z}-J-=5F_RpdBSD2sf zpQmA5vq|R8WRwGzB!R&EJu7!kypqZ_dugI=$`pV;P;<_6f=)+XoC>!7CA(QadlYVY z3>2PvbCZ*vKh7%egr=8S@%^0Q-^*B$nSx~PP=p4__hDYvCnIvMFr%$}`{KmB(>!0O z09rQtS-6S8>KThGXY2Zkv_2$wgUTr@+uRZ{mWvoZrx?vphT7|1mGwPRIlKa~e7cB4tQjTaa_t>(GkwPxwb1YZtynsas{dkb}1h z6@KooF9CPo*Z|E}G zFNd`)F7tG1$t1Cs9BnE62+dQ{LDO%v>Dk7?G*d_iCNfUa4{_N24RsT>-KE9Us6N+Z zCUufBFv`2RD&4Sq8tE+c4L4J;Yki(|z(xrpZW1Pcynyr1@pJS&YIl}<0dBLv(yAa3 zO%rcr1F4Qh2N@g`Vd=rFZxwhZL30MIF6XqC@wX(`XxLH+#{U4~i1g`|oxou;=|`o6alHJ{QW6+TX}<9i>zxk(>l$kETs`>2;X*Z~Lo)N$Y`J zH;jBKbK*}CE89%5tQN7O7gBObW83i0*0OEB8A`4U_iXzQ%&Ll`{{S95kHWf5Tf&K} zi)FvLl4OBEOL(yyXg!q%GyZs_v(RjOFR4R&4x8rMNgG2ty}z31atg=;WaJTp>}#!= z^j{Fdws$ryIE_vOmOBx1!5gv1Pta2|4L;XN(q_|bUA((_WJvd%vVuv$J@LApvWV@V zAH-%1&BtED^)=6ij!TPxHmru`P^TP|y}Q%bV?G_SQ?5@xm^CcN3Q%AmJcM1`dgr;Q zZe(#A4UvxcWf>mh>sf}~E<=;BI|jiy#&gDN&o#;AwY+%V(4^jD7Goe~+x$H^Z5W413q1>Gu-(Zz5g6=d$^S&m@The7POL z1ab&D$gK$U#AS z?R2{Oz5joC5Bd9sX3F%Y+0Ky0f8PrJwpz?qFDyyn|Hj7fV5DiJ9 z#&(}4AY@?ixOL5R7TN)}v$eJtXKWFyc@g7w)c_v6bfo_Pgmneu+@--*kO1maD%d;{ z3G38n(AGw^;4!O98zuT$s)M*kYBJ>dox}W-SQ7jjidWoqtRHJ%{?3v94i^~y-ynK@ zjDPWUso}qdYvKEQn2x9}8fV@g?Ar?QjD6$vt)}p%cI~|?0LDDNzpYCbhD1|MFWSj@ z2*EM^+z+ob_Ru9G15jo4#6zFfqLaf@I+YrL8TE%h&8cmCFfG(>ylET^7TQ<8pl&Ne z`!R<}z&OD>3I4TCKMo>Gbs@T9ZX0nMcpL%i?M;)zB2Ay^j=LBz!VaVH_pJE53?iCm zT}n(#E6alr<8yAuTA%(9o#%YJaJCkc_8?rD@ zkU9Nnf8hy_oaz!0*cibB^Qf*qA6VT1=FgmT{m|>{*0ZJfNu$UMXYwMThd{7H5uGHxXp>}S_5AINl5hdzzj5hb|Jjf2 BJ>~!a diff --git a/docs/static/processed_images/baf5a4139772f2c700.png b/docs/static/processed_images/baf5a4139772f2c700.png deleted file mode 100644 index e73e43aace41301933c72d05998b89e65c084fff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29531 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 KMNUMnLSTY~qCiLh diff --git a/docs/static/processed_images/d2f2746ebaaa9e6200.png b/docs/static/processed_images/d2f2746ebaaa9e6200.png new file mode 100644 index 0000000000000000000000000000000000000000..d01ce6cdfb0486a72ce982638ccbbcddefd47be0 GIT binary patch literal 91526 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 literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/d364fb703e1e0b3200.jpg b/docs/static/processed_images/d364fb703e1e0b3200.jpg deleted file mode 100644 index 1a6ae00ad1a6789da33fb8c0419e7c50835f84ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11779 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̑{Dc?r=+*QDI*$guubpaTWMICnQ0G;;{;Vo_RW5 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

    }K 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

    D@4WM#v-*WRKdWT%@A_r6>!hE5{15-0G&iT& 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≀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 LNkvXXu0mjf!Tps& diff --git a/docs/static/processed_images/ea6a03d035169dbd00.jpg b/docs/static/processed_images/ea6a03d035169dbd00.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4340a65dafb7510dfc92b34b4792431ab52b6b1e GIT binary patch literal 18248 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 literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/fd56f23df12683fc00.png b/docs/static/processed_images/fd56f23df12683fc00.png new file mode 100644 index 0000000000000000000000000000000000000000..ea199cbbb437bcb180836b7a5b5fc5c925972631 GIT binary patch literal 102807 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 z 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