From f0cafcd1d604a55f35535870dcbe35007230b9d5 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 27 Dec 2018 10:49:32 +0100 Subject: [PATCH 01/82] Add languages to config --- CHANGELOG.md | 3 + Cargo.lock | 259 ++++++++++++++++++-------------- Cargo.toml | 2 +- components/config/src/config.rs | 23 +++ 4 files changed, 171 insertions(+), 116 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ff0b634..e99db89 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,8 @@ # Changelog +## 0.6.0 (unreleased) + + ## 0.5.1 (2018-12-14) - Fix deleting markdown file in `zola serve` diff --git a/Cargo.lock b/Cargo.lock index e5b42b5..085fcb5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,3 +1,11 @@ +[[package]] +name = "MacTypes-sys" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "actix" version = "0.7.9" @@ -6,7 +14,7 @@ dependencies = [ "actix_derive 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-channel 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -23,13 +31,13 @@ dependencies = [ "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-proto 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "trust-dns-resolver 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "trust-dns-resolver 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", "uuid 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "actix-net" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "actix 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)", @@ -48,17 +56,16 @@ dependencies = [ "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", "tower-service 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "trust-dns-proto 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "trust-dns-resolver 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "trust-dns-resolver 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "actix-web" -version = "0.7.16" +version = "0.7.17" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "actix 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)", - "actix-net 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-net 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", "askama_escape 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "base64 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -109,7 +116,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -148,7 +155,7 @@ dependencies = [ [[package]] name = "arc-swap" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -158,7 +165,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "arrayvec" -version = "0.4.8" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", @@ -179,24 +186,30 @@ dependencies = [ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "autocfg" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "backtrace" -version = "0.3.12" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc-demangle 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc-demangle 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "backtrace-sys" -version = "0.1.24" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -271,7 +284,7 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.26" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -375,10 +388,10 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-epoch 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-epoch 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -396,10 +409,10 @@ dependencies = [ [[package]] name = "crossbeam-deque" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-epoch 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-epoch 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -408,7 +421,7 @@ name = "crossbeam-epoch" version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -419,10 +432,10 @@ dependencies = [ [[package]] name = "crossbeam-epoch" -version = "0.6.1" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -448,16 +461,16 @@ dependencies = [ [[package]] name = "csv" -version = "1.0.2" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "csv-core 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "csv-core 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "csv-core" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "memchr 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -589,7 +602,7 @@ name = "error-chain" version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -597,7 +610,7 @@ name = "error-chain" version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -616,7 +629,7 @@ name = "failure" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", "failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -627,7 +640,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -811,7 +824,7 @@ dependencies = [ [[package]] name = "heck" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -836,7 +849,7 @@ dependencies = [ "markup5ever 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -869,7 +882,7 @@ dependencies = [ [[package]] name = "hyper" -version = "0.12.18" +version = "0.12.19" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -900,7 +913,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.12.18 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper 0.12.19 (registry+https://github.com/rust-lang/crates.io-index)", "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1194,7 +1207,7 @@ name = "miniz-sys" version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1211,7 +1224,7 @@ name = "miniz_oxide_c_api" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", "miniz_oxide 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1275,12 +1288,12 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl 0.10.15 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", "schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "security-framework 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "security-framework-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "security-framework-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1308,7 +1321,7 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "cc 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1345,7 +1358,7 @@ dependencies = [ "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1403,14 +1416,14 @@ name = "onig_sys" version = "69.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "openssl" -version = "0.10.15" +version = "0.10.16" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1418,7 +1431,7 @@ dependencies = [ "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1428,10 +1441,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "openssl-sys" -version = "0.9.39" +version = "0.9.40" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1494,7 +1507,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "pest" -version = "2.0.2" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "ucd-trie 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1502,32 +1515,32 @@ dependencies = [ [[package]] name = "pest_derive" -version = "2.0.1" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "pest 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "pest_generator 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "pest_generator 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "pest_generator" -version = "2.0.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "pest 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "pest_meta 2.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "pest_meta 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.14.9 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "pest_meta" -version = "2.0.3" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "maplit 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "pest 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "sha-1 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1807,8 +1820,8 @@ dependencies = [ "front_matter 0.1.0", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "link_checker 0.1.0", - "pest 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "pest_derive 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1830,7 +1843,7 @@ dependencies = [ "encoding_rs 0.8.13 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.12.18 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper 0.12.19 (registry+https://github.com/rust-lang/crates.io-index)", "hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "libflate 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1866,7 +1879,7 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.9" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1909,7 +1922,7 @@ name = "sass-sys" version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1952,14 +1965,15 @@ dependencies = [ "core-foundation 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", - "security-framework-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "security-framework-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "security-framework-sys" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ + "MacTypes-sys 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1989,7 +2003,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2032,10 +2046,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "signal-hook" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "arc-swap 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", + "arc-swap 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2158,25 +2172,15 @@ name = "strum_macros" version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "heck 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "syn" -version = "0.14.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "syn" -version = "0.15.22" +version = "0.15.23" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2191,7 +2195,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2235,7 +2239,7 @@ version = "0.1.0" dependencies = [ "base64 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "config 0.1.0", - "csv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "csv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "errors 0.1.0", "imageproc 0.1.0", @@ -2270,8 +2274,8 @@ dependencies = [ "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", "humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "pest 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "pest_derive 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2430,7 +2434,7 @@ dependencies = [ "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", - "signal-hook 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "signal-hook 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2455,7 +2459,7 @@ name = "tokio-threadpool" version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-deque 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2545,9 +2549,32 @@ dependencies = [ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "trust-dns-proto" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", + "socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "trust-dns-resolver" -version = "0.10.0" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2560,7 +2587,7 @@ dependencies = [ "resolv-conf 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", - "trust-dns-proto 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "trust-dns-proto 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2872,9 +2899,9 @@ dependencies = [ [[package]] name = "zola" -version = "0.5.1" +version = "0.6.0" dependencies = [ - "actix-web 0.7.16 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.17 (registry+https://github.com/rust-lang/crates.io-index)", "atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2893,21 +2920,23 @@ dependencies = [ ] [metadata] +"checksum MacTypes-sys 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7dbbe033994ae2198a18517c7132d952a29fb1db44249a1234779da7c50f4698" "checksum actix 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6c616db5fa4b0c40702fb75201c2af7f8aa8f3a2e2c1dda3b0655772aa949666" -"checksum actix-net 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "12feb297c0a8b1ad2418d55227c61783111d40fbd49f927a09f8c67683471b8c" -"checksum actix-web 0.7.16 (registry+https://github.com/rust-lang/crates.io-index)" = "9c1ae55616ff06c1d011c4e7f16f443b825df72aaf1c75e97cdc43a4ab83a602" +"checksum actix-net 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "8bebfbe6629e0131730746718c9e032b58f02c6ce06ed7c982b9fef6c8545acd" +"checksum actix-web 0.7.17 (registry+https://github.com/rust-lang/crates.io-index)" = "ed4d8a167b9e2f20e6d6d4bd92cd81839d5a551096e700f70a9fefe078583e56" "checksum actix_derive 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4300e9431455322ae393d43a2ba1ef96b8080573c0fc23b196219efedfb6ba69" "checksum adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7e522997b529f05601e05166c07ed17789691f562762c7f3b987263d2dedee5c" "checksum aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1e9a933f4e58658d7b12defcf96dc5c720f20832deebe3e0a19efd3b6aaeeb9e" "checksum ammonia 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a8b93ecb80665873703bf3b0a77f369c96b183d8e0afaf30a3ff5ff07dfc6409" "checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" -"checksum arc-swap 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "5c5ed110e2537bdd3f5b9091707a8a5556a72ac49bbd7302ae0b28fdccb3246c" +"checksum arc-swap 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1025aeae2b664ca0ea726a89d574fe8f4e77dd712d443236ad1de00379450cf6" "checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee" -"checksum arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "f405cc4c21cd8b784f6c8fc2adf9bc00f59558f0049b5ec21517f875963040cc" +"checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" "checksum askama_escape 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "719b48039ffac1564f67d70162109ba9341125cee0096a540e478355b3c724a7" "checksum atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652" -"checksum backtrace 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)" = "a2eff3830839471718ef8522b9025b399bfb713e25bc220da721364efb660d7d" -"checksum backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "c66d56ac8dabd07f6aacdaf633f4b8262f5b3601a810a0dcddffd5c22c69daa0" +"checksum autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4e5f34df7a019573fb8bdc7e24a2bfebe51a2a1d6bfdbaeccedb3c41fc574727" +"checksum backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "b5b493b66e03090ebc4343eb02f94ff944e0cbc9ac6571491d170ba026741eb5" +"checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6" "checksum base64 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "621fc7ecb8008f86d7fb9b95356cd692ce9514b80a86d85b397f32a22da7b9e2" "checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643" "checksum bincode 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9f2fb9e29e72fd6bc12071533d5dc7664cb01480c59406f656d7ac25c7bd8ff7" @@ -2918,7 +2947,7 @@ dependencies = [ "checksum byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "560c32574a12a89ecd91f5e742165893f86e3ab98d21f8ea548658eb9eef5f40" "checksum byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "94f88df23a25417badc922ab0f5716cc1330e87f71ddd9203b3a3ccd9cedf75d" "checksum bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)" = "40ade3d27603c2cb345eb0912aec461a6dec7e06a4ae48589904e808335c7afa" -"checksum cc 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)" = "389803e36973d242e7fecb092b2de44a3d35ac62524b3b9339e51d577d668e02" +"checksum cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4a8b715cb4597106ea87c7c84b2f1d452c7492033765df7f32651e66fcf749" "checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4" "checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878" "checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e" @@ -2929,15 +2958,15 @@ dependencies = [ "checksum core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "716c271e8613ace48344f723b60b900a93150271e5be206212d052bbc0883efa" "checksum crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb" "checksum crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e91d5240c6975ef33aeb5f148f35275c25eda8e8a5f95abe421978b05b8bf192" -"checksum crossbeam-channel 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8b7d034925ce9668a9a19539a82a2ae75660fa65c1a3a5ddbfce333aafcceb55" +"checksum crossbeam-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5b2a9ea8f77c7f9efd317a8a5645f515d903a2d86ee14d2337a5facd1bd52c12" "checksum crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f739f8c5363aca78cfb059edf753d8f0d36908c348f3d8d1503f03d8b75d9cf3" -"checksum crossbeam-deque 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4fe1b6f945f824c7a25afe44f62e25d714c0cc523f8e99d8db5cd1026e1269d3" +"checksum crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13" "checksum crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "927121f5407de9956180ff5e936fe3cf4324279280001cd56b669d28ee7e9150" -"checksum crossbeam-epoch 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2449aaa4ec7ef96e5fb24db16024b935df718e9ae1cec0a1e68feeca2efca7b8" +"checksum crossbeam-epoch 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f10a4f8f409aaac4b16a5474fb233624238fcdeefb9ba50d5ea059aab63ba31c" "checksum crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2760899e32a1d58d5abb31129f8fae5de75220bc2176e77ff7c627ae45c918d9" "checksum crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "41ee4864f4797060e52044376f7d107429ce1fb43460021b126424b7180ee21a" -"checksum csv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6d54f6b0fd69128a2894b1a3e57af5849a0963c1cc77b165d30b896e40296452" -"checksum csv-core 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4dd8e6d86f7ba48b4276ef1317edc8cc36167546d8972feb4a2b5fec0b374105" +"checksum csv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "9fd1c44c58078cfbeaf11fbb3eac9ae5534c23004ed770cc4bfb48e658ae4f04" +"checksum csv-core 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fa5cdef62f37e6ffe7d1f07a381bc0db32b7a3ff1cac0de56cb0d81e71f53d65" "checksum ctrlc 3.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "630391922b1b893692c6334369ff528dcc3a9d8061ccf4c803aa8f83cb13db5e" "checksum deflate 0.7.19 (registry+https://github.com/rust-lang/crates.io-index)" = "8a6abb26e16e8d419b5c78662aa9f82857c2386a073da266840e474d5055ec86" "checksum deunicode 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "850878694b7933ca4c9569d30a34b55031b9b139ee1fc7b94a527c4ef960d690" @@ -2977,14 +3006,14 @@ dependencies = [ "checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" "checksum globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4743617a7464bbda3c8aec8558ff2f9429047e025771037df561d383337ff865" "checksum h2 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "1ac030ae20dee464c5d0f36544d8b914a6bc606da44a57e052d2b0f5dae129e0" -"checksum heck 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ea04fa3ead4e05e51a7c806fc07271fdbde4e246a6c6d1efd52e72230b771b82" +"checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" "checksum hostname 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "21ceb46a83a85e824ef93669c8b390009623863b5c195d1ba747292c0c72f94e" "checksum html5ever 0.22.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c213fa6a618dc1da552f54f85cba74b05d8e883c92ec4e89067736938084c26e" "checksum http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "02096a6d2c55e63f7fcb800690e4f889a25f6ec342e3adb4594e293b625215ab" "checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83" "checksum humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" "checksum humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ca7e5f2e110db35f93b837c81797f3714500b81d517bf20c431b16d3ca4f114" -"checksum hyper 0.12.18 (registry+https://github.com/rust-lang/crates.io-index)" = "8dd7729fc83d88353415f6816fd4bb00897aa47c7f1506b69060e74e6e3d8e8b" +"checksum hyper 0.12.19 (registry+https://github.com/rust-lang/crates.io-index)" = "f1ebec079129e43af5e234ef36ee3d7e6085687d145b7ea653b262d16c6b65f1" "checksum hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "32cd73f14ad370d3b4d4b7dce08f69b81536c82e39fcc89731930fe5788cd661" "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" "checksum image 0.20.1 (registry+https://github.com/rust-lang/crates.io-index)" = "44665b4395d1844c96e7dc8ed5754782a1cdfd9ef458a80bbe45702681450504" @@ -3037,19 +3066,19 @@ dependencies = [ "checksum num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5a69d464bdc213aaaff628444e99578ede64e9c854025aa43b9796530afa9238" "checksum onig 4.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3febe8cb22362af9e662c9c35e4d8a675de50b1b119823aa556892ac967fb776" "checksum onig_sys 69.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "78c04019a39ebac42dfd8c7822af0a009043720845a812ddbb95e403298b0183" -"checksum openssl 0.10.15 (registry+https://github.com/rust-lang/crates.io-index)" = "5e1309181cdcbdb51bc3b6bedb33dfac2a83b3d585033d3f6d9e22e8c1928613" +"checksum openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ec7bd7ca4cce6dbdc77e7c1230682740d307d1218a87fb0349a571272be749f9" "checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" -"checksum openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)" = "278c1ad40a89aa1e741a1eed089a2f60b18fab8089c3139b542140fc7d674106" +"checksum openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)" = "1bb974e77de925ef426b6bc82fce15fd45bdcbeb5728bffcfc7cdeeb7ce1c2d6" "checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13" "checksum parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5" "checksum parking_lot 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9723236a9525c757d9725b993511e3fc941e33f27751942232f0058298297edf" "checksum parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad7f7e6ebdc79edff6fdcb87a55b620174f7a989e3eb31b65231f4af57f00b8c" "checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" "checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" -"checksum pest 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a677051ad923732bb5c70f2d45f8985a96e3eee2e2bff86697e3b11b0c3fcfde" -"checksum pest_derive 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b76f477146419bc539a63f4ef40e902166cb43b3e51cecc71d9136fd12c567e7" -"checksum pest_generator 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ebee4e9680be4fd162e6f3394ae4192a6b60b1e4d17d845e631f0c68d1a3386" -"checksum pest_meta 2.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1f6d5f6f0e6082578c86af197d780dc38328e3f768cec06aac9bc46d714e8221" +"checksum pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "54f0c72a98d8ab3c99560bfd16df8059cc10e1f9a8e83e6e3b97718dd766e9c3" +"checksum pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "833d1ae558dc601e9a60366421196a8d94bc0ac980476d0b67e1d0988d72b2d0" +"checksum pest_generator 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "63120576c4efd69615b5537d3d052257328a4ca82876771d6944424ccfd9f646" +"checksum pest_meta 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5a3492a4ed208ffc247adcdcc7ba2a95be3104f58877d0d02f0df39bf3efb5e" "checksum phf 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "cec29da322b242f4c3098852c77a0ca261c9c01b806cae85a5572a1eb94db9a6" "checksum phf_codegen 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "7d187f00cd98d5afbcd8898f6cf181743a449162aeb329dcd2f3849009e605ad" "checksum phf_generator 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "03dc191feb9b08b0dc1330d6549b795b9d81aec19efe6b4a45aec8d4caee0c4b" @@ -3082,7 +3111,7 @@ dependencies = [ "checksum reqwest 0.9.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ab52e462d1e15891441aeefadff68bdea005174328ce3da0a314f2ad313ec837" "checksum resolv-conf 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c62bd95a41841efdf7fca2ae9951e64a8d8eae7e5da196d8ce489a2241491a92" "checksum rust-stemmers 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "fbf06149ec391025664a5634200ced1afb489f0f3f8a140d515ebc0eb04b4bc0" -"checksum rustc-demangle 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "bcfe5b13211b4d78e5c2cadfebd7769197d95c639c35a50057eb4c05de811395" +"checksum rustc-demangle 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "01b90379b8664dd83460d59bdc5dd1fd3172b8913788db483ed1325171eab2f7" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" "checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9" @@ -3093,7 +3122,7 @@ dependencies = [ "checksum scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum security-framework 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "697d3f3c23a618272ead9e1fb259c1411102b31c6af8b93f1d64cca9c3b0e8e0" -"checksum security-framework-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab01dfbe5756785b5b4d46e0289e5a18071dfa9a7c2b24213ea00b9ef9b665bf" +"checksum security-framework-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "40d95f3d7da09612affe897f320d78264f0d2320f3e8eea27d12bd1bd94445e2" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" "checksum serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)" = "6fa52f19aee12441d5ad11c9a00459122bd8f98707cadf9778c540674f1935b6" @@ -3102,7 +3131,7 @@ dependencies = [ "checksum serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d48f9f99cd749a2de71d29da5f948de7f2764cc5a9d7f3c97e3514d4ee6eabf2" "checksum sha-1 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "51b9d1f3b5de8a167ab06834a7c883bd197f2191e1dda1a22d9ccfeedbf9aded" "checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" -"checksum signal-hook 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "8941ae94fa73d0f73b422774b3a40a7195cecd88d1c090f4b37ade7dc795ab66" +"checksum signal-hook 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1f272d1b7586bec132ed427f532dd418d8beca1ca7f2caf7df35569b1415a4b4" "checksum siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac" "checksum slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5f9776d6b986f77b35c6cf846c11ad986ff128fe0b2b63a3628e3755e8d3102d" "checksum slotmap 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4ed041f7f2ff35f2bf7d688bf30686976512f8300e37433c2c73ea9f4cf14b" @@ -3117,8 +3146,7 @@ dependencies = [ "checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550" "checksum strum 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f6c3a2071519ab6a48f465808c4c1ffdd00dfc8e93111d02b4fc5abab177676e" "checksum strum_macros 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8baacebd7b7c9b864d83a6ba7a246232983e277b86fa5cdec77f565715a4b136" -"checksum syn 0.14.9 (registry+https://github.com/rust-lang/crates.io-index)" = "261ae9ecaa397c42b960649561949d69311f08eeaea86a65696e6e46517cf741" -"checksum syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)" = "ae8b29eb5210bc5cf63ed6149cbf9adfc82ac0be023d8735c176ee74a2db4da7" +"checksum syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)" = "9545a6a093a3f0bd59adb472700acc08cad3776f860f16a897dfce8c88721cbc" "checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" "checksum syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e02dd9df97a68a2d005ace28ff24c610abfc3ce17afcfdb22a077645dabb599a" "checksum tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "7e91405c14320e5c79b3d148e1c86f40749a36e490642202a31689cb1a3452b2" @@ -3146,7 +3174,8 @@ dependencies = [ "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" "checksum tower-service 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b32f72af77f1bfe3d3d4da8516a238ebe7039b51dd8637a09841ac7f16d2c987" "checksum trust-dns-proto 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0838272e89f1c693b4df38dc353412e389cf548ceed6f9fd1af5a8d6e0e7cf74" -"checksum trust-dns-resolver 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4e913a5df94658858e548cc95a3212797ee524e487ede091c32f27ca26e11620" +"checksum trust-dns-proto 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e33f29df428f112ffeda24b328b814b61d6916be29aa89f19bc3f684ba5437b8" +"checksum trust-dns-resolver 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "de630f95a192f793436ffae5137e88253cc4142a97d9a8e73c8d804fa85ddf0a" "checksum try-lock 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382" "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" "checksum ucd-trie 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "71a9c5b1fe77426cf144cc30e49e955270f5086e31a6441dfa8b32efc09b9d77" diff --git a/Cargo.toml b/Cargo.toml index f1806f0..9897ba3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zola" -version = "0.5.1" +version = "0.6.0" authors = ["Vincent Prouillet "] license = "MIT" readme = "README.md" diff --git a/components/config/src/config.rs b/components/config/src/config.rs index c80c34b..6993404 100644 --- a/components/config/src/config.rs +++ b/components/config/src/config.rs @@ -16,6 +16,21 @@ use theme::Theme; // We want a default base url for tests static DEFAULT_BASE_URL: &'static str = "http://a-website.com"; +#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)] +#[serde(default)] +pub struct Language { + /// The language code + pub code: String, + /// Whether to generate a RSS feed for that language, defaults to `false` + pub rss: bool, +} + +impl Default for Language { + fn default() -> Language { + Language { code: String::new(), rss: false } + } +} + #[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)] #[serde(default)] pub struct Taxonomy { @@ -68,6 +83,8 @@ 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, /// Languages list and translated strings pub translations: HashMap, @@ -227,6 +244,11 @@ impl Config { let theme = Theme::from_file(path)?; self.add_theme_extra(&theme) } + + /// Is this site using i18n? + pub fn uses_i18n(&self) -> bool { + !self.languages.is_empty() + } } impl Default for Config { @@ -239,6 +261,7 @@ impl Default for Config { highlight_code: false, highlight_theme: "base16-ocean-dark".to_string(), default_language: "en".to_string(), + languages: Vec::new(), generate_rss: false, rss_limit: None, taxonomies: Vec::new(), From e50d3daad1149ae562dff9f117ca3a4c7b7351e8 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 27 Dec 2018 13:14:54 +0100 Subject: [PATCH 02/82] Get language from filename --- components/config/src/config.rs | 5 + components/config/src/lib.rs | 2 +- components/library/src/content/file_info.rs | 113 ++++++++++++++++++-- components/library/src/content/page.rs | 42 +++++++- components/library/src/content/section.rs | 24 ++++- 5 files changed, 176 insertions(+), 10 deletions(-) diff --git a/components/config/src/config.rs b/components/config/src/config.rs index 6993404..13af11c 100644 --- a/components/config/src/config.rs +++ b/components/config/src/config.rs @@ -249,6 +249,11 @@ impl Config { pub fn uses_i18n(&self) -> bool { !self.languages.is_empty() } + + /// Returns the codes of all additional languages + pub fn languages_codes(&self) -> Vec<&str> { + self.languages.iter().map(|l| l.code.as_ref()).collect() + } } impl Default for Config { diff --git a/components/config/src/lib.rs b/components/config/src/lib.rs index 621e3aa..74564ac 100644 --- a/components/config/src/lib.rs +++ b/components/config/src/lib.rs @@ -12,7 +12,7 @@ extern crate syntect; mod config; pub mod highlighting; mod theme; -pub use config::{Config, Taxonomy}; +pub use config::{Config, Taxonomy, Language}; use std::path::Path; diff --git a/components/library/src/content/file_info.rs b/components/library/src/content/file_info.rs index 73ffaa5..4bc2237 100644 --- a/components/library/src/content/file_info.rs +++ b/components/library/src/content/file_info.rs @@ -1,5 +1,8 @@ use std::path::{Path, PathBuf}; +use config::Config; +use errors::Result; + /// Takes a full path to a file and returns only the components after the first `content` directory /// Will not return the filename as last component pub fn find_content_components>(path: P) -> Vec { @@ -29,6 +32,7 @@ pub struct FileInfo { /// The full path to the .md file pub path: PathBuf, /// The name of the .md file without the extension, always `_index` for sections + /// Doesn't contain the language if there was one in the filename pub name: String, /// The .md path, starting from the content directory, with `/` slashes pub relative: String, @@ -55,7 +59,9 @@ impl FileInfo { }; // If we have a folder with an asset, don't consider it as a component - if !components.is_empty() && name == "index" { + // Splitting on `.` as we might have a language so it isn't *only* index but also index.fr + // etc + if !components.is_empty() && name.split('.').collect::>()[0] == "index" { components.pop(); // also set parent_path to grandparent instead parent = parent.parent().unwrap().to_path_buf(); @@ -74,12 +80,12 @@ impl FileInfo { pub fn new_section(path: &Path) -> FileInfo { let parent = path.parent().unwrap().to_path_buf(); + let name = path.file_stem().unwrap().to_string_lossy().to_string(); let components = find_content_components(path); - let relative = if components.is_empty() { - // the index one - "_index.md".to_string() + let relative = if !components.is_empty() { + format!("{}/{}.md", components.join("/"), name) } else { - format!("{}/_index.md", components.join("/")) + format!("{}.md", name) }; let grand_parent = parent.parent().map(|p| p.to_path_buf()); @@ -87,11 +93,40 @@ impl FileInfo { path: path.to_path_buf(), parent, grand_parent, - name: "_index".to_string(), + name, components, relative, } } + + /// Look for a language in the filename. + /// If a language has been found, update the name of the file in this struct to + /// remove it and return the language code + pub fn find_language(&mut self, config: &Config) -> Result> { + // No languages? Nothing to do + if !config.uses_i18n() { + return Ok(None); + } + + if !self.name.contains('.') { + return Ok(None); + } + + // Go with the assumption that no one is using `.` in filenames when using i18n + // We can document that + let mut parts: Vec = self.name.splitn(2,'.').map(|s| s.to_string()).collect(); + + // 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()) { + bail!("File {:?} has a language code of {} which isn't present in the config.toml `languages`", self.path, parts[1]); + } + + self.name = parts.swap_remove(0); + let lang = parts.swap_remove(0); + + Ok(Some(lang)) + } } #[doc(hidden)] @@ -110,7 +145,11 @@ impl Default for FileInfo { #[cfg(test)] mod tests { - use super::find_content_components; + use std::path::Path; + + use config::{Config, Language}; + + use super::{FileInfo, find_content_components}; #[test] fn can_find_content_components() { @@ -118,4 +157,64 @@ mod tests { find_content_components("/home/vincent/code/site/content/posts/tutorials/python.md"); assert_eq!(res, ["posts".to_string(), "tutorials".to_string()]); } + #[test] + fn can_find_components_in_page_with_assets() { + let file = + FileInfo::new_page(&Path::new("/home/vincent/code/site/content/posts/tutorials/python/index.md")); + assert_eq!(file.components, ["posts".to_string(), "tutorials".to_string()]); + } + + #[test] + fn can_find_valid_language_in_page() { + let mut config = Config::default(); + config.languages.push(Language {code: String::from("fr"), rss: false}); + let mut file = + FileInfo::new_page(&Path::new("/home/vincent/code/site/content/posts/tutorials/python.fr.md")); + let res = file.find_language(&config); + assert!(res.is_ok()); + assert_eq!(res.unwrap(), Some(String::from("fr"))); + } + + #[test] + fn can_find_valid_language_in_page_with_assets() { + let mut config = Config::default(); + config.languages.push(Language {code: String::from("fr"), rss: false}); + let mut file = + FileInfo::new_page(&Path::new("/home/vincent/code/site/content/posts/tutorials/python/index.fr.md")); + assert_eq!(file.components, ["posts".to_string(), "tutorials".to_string()]); + let res = file.find_language(&config); + assert!(res.is_ok()); + assert_eq!(res.unwrap(), Some(String::from("fr"))); + } + + #[test] + fn do_nothing_on_unknown_language_in_page_with_i18n_off() { + let config = Config::default(); + let mut file = + FileInfo::new_page(&Path::new("/home/vincent/code/site/content/posts/tutorials/python.fr.md")); + let res = file.find_language(&config); + assert!(res.is_ok()); + assert!(res.unwrap().is_none()); + } + + #[test] + fn errors_on_unknown_language_in_page_with_i18n_on() { + let mut config = Config::default(); + config.languages.push(Language {code: String::from("it"), rss: false}); + let mut file = + FileInfo::new_page(&Path::new("/home/vincent/code/site/content/posts/tutorials/python.fr.md")); + let res = file.find_language(&config); + assert!(res.is_err()); + } + + #[test] + fn can_find_valid_language_in_section() { + let mut config = Config::default(); + config.languages.push(Language {code: String::from("fr"), rss: false}); + let mut file = + FileInfo::new_section(&Path::new("/home/vincent/code/site/content/posts/tutorials/_index.fr.md")); + let res = file.find_language(&config); + assert!(res.is_ok()); + assert_eq!(res.unwrap(), Some(String::from("fr"))); + } } diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 3e75b3b..d1b324f 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -71,6 +71,9 @@ pub struct Page { /// How long would it take to read the raw content. /// See `get_reading_analytics` on how it is calculated pub reading_time: Option, + /// The language of that page. `None` if the user doesn't setup `languages` in config. + /// Corresponds to the lang in the {slug}.{lang}.md file scheme + pub lang: Option, } impl Page { @@ -97,6 +100,7 @@ impl Page { toc: vec![], word_count: None, reading_time: None, + lang: None, } } @@ -111,6 +115,8 @@ impl Page { let (meta, content) = split_page_content(file_path, content)?; let mut page = Page::new(file_path, meta); + page.lang = page.file.find_language(config)?; + page.raw_content = content; let (word_count, reading_time) = get_reading_analytics(&page.raw_content); page.word_count = Some(word_count); @@ -286,6 +292,7 @@ impl Default for Page { toc: vec![], word_count: None, reading_time: None, + lang: None, } } } @@ -302,7 +309,7 @@ mod tests { use tera::Tera; use super::Page; - use config::Config; + use config::{Config, Language}; use front_matter::InsertAnchor; #[test] @@ -559,4 +566,37 @@ Hello world assert_eq!(page.meta.date, Some("2018-09-09".to_string())); assert_eq!(page.slug, "hello"); } + + #[test] + fn can_specify_language_in_filename() { + let mut config = Config::default(); + config.languages.push(Language {code: String::from("fr"), rss: false}); + let content = r#" ++++ ++++ +Bonjour le monde"# + .to_string(); + let res = Page::parse(Path::new("hello.fr.md"), &content, &config); + assert!(res.is_ok()); + let page = res.unwrap(); + assert_eq!(page.lang, Some("fr".to_string())); + assert_eq!(page.slug, "hello".to_string()); + } + + #[test] + fn can_specify_language_in_filename_with_date() { + let mut config = Config::default(); + config.languages.push(Language {code: String::from("fr"), rss: false}); + let content = r#" ++++ ++++ +Bonjour le monde"# + .to_string(); + let res = Page::parse(Path::new("2018-10-08_hello.fr.md"), &content, &config); + assert!(res.is_ok()); + let page = res.unwrap(); + assert_eq!(page.meta.date, Some("2018-10-08".to_string())); + assert_eq!(page.lang, Some("fr".to_string())); + assert_eq!(page.slug, "hello".to_string()); + } } diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index 76f6618..31a25ff 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -51,6 +51,9 @@ pub struct Section { /// How long would it take to read the raw content. /// See `get_reading_analytics` on how it is calculated pub reading_time: Option, + /// The language of that section. `None` if the user doesn't setup `languages` in config. + /// Corresponds to the lang in the _index.{lang}.md file scheme + pub lang: Option, } impl Section { @@ -74,12 +77,14 @@ impl Section { toc: vec![], word_count: None, reading_time: None, + lang: None, } } pub fn parse(file_path: &Path, content: &str, config: &Config) -> Result
{ let (meta, content) = split_section_content(file_path, content)?; let mut section = Section::new(file_path, meta); + section.lang = section.file.find_language(config)?; section.raw_content = content; let (word_count, reading_time) = get_reading_analytics(§ion.raw_content); section.word_count = Some(word_count); @@ -223,6 +228,7 @@ impl Default for Section { toc: vec![], reading_time: None, word_count: None, + lang: None, } } } @@ -231,12 +237,13 @@ impl Default for Section { mod tests { use std::fs::{create_dir, File}; use std::io::Write; + use std::path::Path; use globset::{Glob, GlobSetBuilder}; use tempfile::tempdir; use super::Section; - use config::Config; + use config::{Config, Language}; #[test] fn section_with_assets_gets_right_info() { @@ -285,4 +292,19 @@ mod tests { assert_eq!(page.assets.len(), 1); assert_eq!(page.assets[0].file_name().unwrap().to_str(), Some("graph.jpg")); } + + #[test] + fn can_specify_language_in_filename() { + let mut config = Config::default(); + config.languages.push(Language {code: String::from("fr"), rss: false}); + let content = r#" ++++ ++++ +Bonjour le monde"# + .to_string(); + let res = Section::parse(Path::new("hello.fr.md"), &content, &config); + assert!(res.is_ok()); + let section = res.unwrap(); + assert_eq!(section.lang, Some("fr".to_string())); + } } From 6e84eec32b88dd0818e01d8e7e07fe885bbbf1c6 Mon Sep 17 00:00:00 2001 From: Vojtech Kral Date: Fri, 28 Dec 2018 00:54:06 +0100 Subject: [PATCH 03/82] imageproc: Add the `format` option, support for PNG thumbnails Fix #546 --- components/imageproc/src/lib.rs | 123 ++++++++++++++++----- components/templates/src/global_fns/mod.rs | 7 +- 2 files changed, 100 insertions(+), 30 deletions(-) diff --git a/components/imageproc/src/lib.rs b/components/imageproc/src/lib.rs index b73a7b5..a91e085 100644 --- a/components/imageproc/src/lib.rs +++ b/components/imageproc/src/lib.rs @@ -15,6 +15,7 @@ use std::hash::{Hash, Hasher}; use std::path::{Path, PathBuf}; use image::jpeg::JPEGEncoder; +use image::png::PNGEncoder; use image::{FilterType, GenericImageView}; use rayon::prelude::*; use regex::Regex; @@ -26,7 +27,7 @@ static RESIZED_SUBDIR: &'static str = "processed_images"; lazy_static! { pub static ref RESIZED_FILENAME: Regex = - Regex::new(r#"([0-9a-f]{16})([0-9a-f]{2})[.]jpg"#).unwrap(); + Regex::new(r#"([0-9a-f]{16})([0-9a-f]{2})[.](jpg|png)"#).unwrap(); } /// Describes the precise kind of a resize operation @@ -136,12 +137,78 @@ impl Hash for ResizeOp { } } +/// Thumbnail image format +#[derive(Debug, Clone, Copy, PartialEq, Eq)] +pub enum Format { + /// JPEG, The `u8` argument is JPEG quality (in percent). + Jpeg(u8), + /// PNG + Png, +} + +impl Format { + pub fn from_args(source: &str, format: &str, quality: u8) -> Result { + use Format::*; + + assert!(quality > 0 && quality <= 100, "Jpeg quality must be within the range [1; 100]"); + + match format { + "auto" => match Self::is_lossy(source) { + Some(true) => Ok(Jpeg(quality)), + Some(false) => Ok(Png), + None => Err(format!("Unsupported image file: {}", source).into()), + }, + "jpeg" | "jpg" => Ok(Jpeg(quality)), + "png" => Ok(Png), + _ => Err(format!("Invalid image format: {}", format).into()), + } + } + + /// Looks at file's extension and, if it's a supported image format, returns whether the format is lossless + pub fn is_lossy>(p: P) -> Option { + p.as_ref() + .extension() + .and_then(|s| s.to_str()) + .map(|ext| match ext.to_lowercase().as_str() { + "jpg" | "jpeg" => Some(true), + "png" => Some(false), + "gif" => Some(false), + "bmp" => Some(false), + _ => None, + }) + .unwrap_or(None) + } + + fn extension(&self) -> &str { + // Kept in sync with RESIZED_FILENAME and op_filename + use Format::*; + + match *self { + Png => "png", + Jpeg(_) => "jpg", + } + } +} + +impl Hash for Format { + fn hash(&self, hasher: &mut H) { + use Format::*; + + let q = match *self { + Png => 0, + Jpeg(q) => q, + }; + + hasher.write_u8(q); + } +} + /// Holds all data needed to perform a resize operation #[derive(Debug, PartialEq, Eq)] pub struct ImageOp { source: String, op: ResizeOp, - quality: u8, + format: Format, /// Hash of the above parameters hash: u64, /// If there is a hash collision with another ImageOp, this contains a sequential ID > 1 @@ -152,14 +219,14 @@ pub struct ImageOp { } impl ImageOp { - pub fn new(source: String, op: ResizeOp, quality: u8) -> 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); - hasher.write_u8(quality); + format.hash(&mut hasher); let hash = hasher.finish(); - ImageOp { source, op, quality, hash, collision_id: 0 } + ImageOp { source, op, format, hash, collision_id: 0 } } pub fn from_args( @@ -167,10 +234,12 @@ impl ImageOp { op: &str, width: Option, height: Option, + format: &str, quality: u8, ) -> Result { let op = ResizeOp::from_args(op, width, height)?; - Ok(Self::new(source, op, quality)) + let format = Format::from_args(&source, format, quality)?; + Ok(Self::new(source, op, format)) } fn perform(&self, content_path: &Path, target_path: &Path) -> Result<()> { @@ -223,9 +292,19 @@ impl ImageOp { }; let mut f = File::create(target_path)?; - let mut enc = JPEGEncoder::new_with_quality(&mut f, self.quality); let (img_w, img_h) = img.dimensions(); - enc.encode(&img.raw_pixels(), img_w, img_h, img.color())?; + + match self.format { + Format::Png => { + let mut enc = PNGEncoder::new(&mut f); + enc.encode(&img.raw_pixels(), img_w, img_h, img.color())?; + }, + Format::Jpeg(q) => { + let mut enc = JPEGEncoder::new_with_quality(&mut f, q); + enc.encode(&img.raw_pixels(), img_w, img_h, img.color())?; + }, + } + Ok(()) } } @@ -323,20 +402,21 @@ impl Processor { collision_id } - fn op_filename(hash: u64, collision_id: u32) -> String { + fn op_filename(hash: u64, collision_id: u32, format: Format) -> String { // Please keep this in sync with RESIZED_FILENAME assert!(collision_id < 256, "Unexpectedly large number of collisions: {}", collision_id); - format!("{:016x}{:02x}.jpg", hash, collision_id) + format!("{:016x}{:02x}.{}", hash, collision_id, format.extension()) } - fn op_url(&self, hash: u64, collision_id: u32) -> String { - format!("{}/{}", &self.resized_url, Self::op_filename(hash, collision_id)) + 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 { 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) + self.op_url(hash, collision_id, format) } pub fn prune(&self) -> Result<()> { @@ -373,25 +453,10 @@ impl Processor { self.img_ops .par_iter() .map(|(hash, op)| { - let target = self.resized_path.join(Self::op_filename(*hash, op.collision_id)); + let target = self.resized_path.join(Self::op_filename(*hash, op.collision_id, op.format)); op.perform(&self.content_path, &target) .chain_err(|| format!("Failed to process image: {}", op.source)) }) .collect::>() } } - -/// Looks at file's extension and returns whether it's a supported image format -pub fn file_is_img>(p: P) -> bool { - p.as_ref() - .extension() - .and_then(|s| s.to_str()) - .map(|ext| match ext.to_lowercase().as_str() { - "jpg" | "jpeg" => true, - "png" => true, - "gif" => true, - "bmp" => true, - _ => false, - }) - .unwrap_or(false) -} diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index 83cffb7..889d83c 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -194,6 +194,7 @@ pub fn make_get_taxonomy_url(all_taxonomies: &[Taxonomy]) -> GlobalFn { pub fn make_resize_image(imageproc: Arc>) -> GlobalFn { static DEFAULT_OP: &'static str = "fill"; + static DEFAULT_FMT: &'static str = "auto"; const DEFAULT_Q: u8 = 75; Box::new(move |args| -> Result { @@ -214,6 +215,10 @@ pub fn make_resize_image(imageproc: Arc>) -> GlobalF ); 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") .unwrap_or(DEFAULT_Q); @@ -226,7 +231,7 @@ pub fn make_resize_image(imageproc: Arc>) -> GlobalF return Err(format!("`resize_image`: Cannot find path: {}", path).into()); } - let imageop = imageproc::ImageOp::from_args(path, &op, width, height, quality) + let imageop = imageproc::ImageOp::from_args(path, &op, width, height, &format, quality) .map_err(|e| format!("`resize_image`: {}", e))?; let url = imageproc.insert(imageop); From 9bd6a559c15f0c1054b4602051ac30392fdd455b Mon Sep 17 00:00:00 2001 From: Vojtech Kral Date: Fri, 28 Dec 2018 00:56:52 +0100 Subject: [PATCH 04/82] imageproc: Use Lanczos3 filter instead of Gaussian --- components/imageproc/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/imageproc/src/lib.rs b/components/imageproc/src/lib.rs index a91e085..fcfdf9e 100644 --- a/components/imageproc/src/lib.rs +++ b/components/imageproc/src/lib.rs @@ -253,7 +253,7 @@ impl ImageOp { let mut img = image::open(&src_path)?; let (img_w, img_h) = img.dimensions(); - const RESIZE_FILTER: FilterType = FilterType::Gaussian; + const RESIZE_FILTER: FilterType = FilterType::Lanczos3; const RATIO_EPSILLION: f32 = 0.1; let img = match self.op { From 5348e6452e84f5c63dfc312eb81cb8c4c57edf13 Mon Sep 17 00:00:00 2001 From: Vojtech Kral Date: Fri, 28 Dec 2018 01:35:12 +0100 Subject: [PATCH 05/82] docs: Update image processing --- .../content/image-processing/01-zola.png | Bin 0 -> 123368 bytes .../image-processing/02-zola-manet.png | Bin 0 -> 331398 bytes .../image-processing/03-zola-cezanne.png | Bin 0 -> 365613 bytes .../{gutenberg.jpg => 04-gutenberg.jpg} | Bin .../{example-00.jpg => 05-example.jpg} | Bin .../{example-01.jpg => 06-example.jpg} | Bin .../{example-02.jpg => 07-example.jpg} | Bin .../{example-03.jpg => 08-example.jpg} | Bin .../content/image-processing/index.md | 45 +++++++++++------- .../processed_images/0478482c742970ac00.jpg | Bin 4615 -> 0 bytes .../processed_images/1794115ed20fc20b00.jpg | Bin 0 -> 18362 bytes .../processed_images/1cec18975099962e00.png | Bin 0 -> 56183 bytes .../processed_images/2b6a3e5a28bab1f100.jpg | Bin 5522 -> 0 bytes .../processed_images/3dba59a146f3bc0900.jpg | Bin 10624 -> 0 bytes .../processed_images/4c2ee08a8b7c98fd00.png | Bin 0 -> 29988 bytes .../processed_images/5e399fa94c88057a00.jpg | Bin 12050 -> 0 bytes .../processed_images/60097aeed903cf3b00.png | Bin 0 -> 17551 bytes .../processed_images/60327c08d512e16800.png | Bin 0 -> 97213 bytes .../processed_images/63d5c27341a9885c00.jpg | Bin 4495 -> 0 bytes .../processed_images/63fe884d13fd318d00.jpg | Bin 3470 -> 0 bytes .../processed_images/67f2ebdd806283e900.jpg | Bin 0 -> 5175 bytes .../processed_images/70513837257b310c00.jpg | Bin 0 -> 12491 bytes .../processed_images/7459e23e962c9d2f00.png | Bin 0 -> 30190 bytes .../processed_images/8b446e542d0b692d00.jpg | Bin 4495 -> 0 bytes .../processed_images/a9f5475850972f8500.png | Bin 0 -> 29531 bytes .../processed_images/ab39b603591b3e3300.jpg | Bin 9792 -> 0 bytes .../processed_images/aebd0f00cf9232d000.jpg | Bin 0 -> 14915 bytes .../processed_images/baf5a4139772f2c700.png | Bin 0 -> 29531 bytes .../processed_images/d364fb703e1e0b3200.jpg | Bin 0 -> 11779 bytes .../processed_images/d91d0751df06edce00.jpg | Bin 5654 -> 0 bytes .../processed_images/e1f961e8b8cb30b500.png | Bin 0 -> 109015 bytes .../processed_images/e690cdfaf053bbd700.jpg | Bin 15710 -> 0 bytes docs/templates/shortcodes/gallery.html | 6 +-- 33 files changed, 32 insertions(+), 19 deletions(-) create mode 100644 docs/content/documentation/content/image-processing/01-zola.png create mode 100644 docs/content/documentation/content/image-processing/02-zola-manet.png create mode 100644 docs/content/documentation/content/image-processing/03-zola-cezanne.png rename docs/content/documentation/content/image-processing/{gutenberg.jpg => 04-gutenberg.jpg} (100%) rename docs/content/documentation/content/image-processing/{example-00.jpg => 05-example.jpg} (100%) rename docs/content/documentation/content/image-processing/{example-01.jpg => 06-example.jpg} (100%) rename docs/content/documentation/content/image-processing/{example-02.jpg => 07-example.jpg} (100%) rename docs/content/documentation/content/image-processing/{example-03.jpg => 08-example.jpg} (100%) delete mode 100644 docs/static/processed_images/0478482c742970ac00.jpg create mode 100644 docs/static/processed_images/1794115ed20fc20b00.jpg create mode 100644 docs/static/processed_images/1cec18975099962e00.png delete mode 100644 docs/static/processed_images/2b6a3e5a28bab1f100.jpg delete mode 100644 docs/static/processed_images/3dba59a146f3bc0900.jpg create mode 100644 docs/static/processed_images/4c2ee08a8b7c98fd00.png delete mode 100644 docs/static/processed_images/5e399fa94c88057a00.jpg create mode 100644 docs/static/processed_images/60097aeed903cf3b00.png create mode 100644 docs/static/processed_images/60327c08d512e16800.png delete mode 100644 docs/static/processed_images/63d5c27341a9885c00.jpg delete mode 100644 docs/static/processed_images/63fe884d13fd318d00.jpg create mode 100644 docs/static/processed_images/67f2ebdd806283e900.jpg create mode 100644 docs/static/processed_images/70513837257b310c00.jpg create mode 100644 docs/static/processed_images/7459e23e962c9d2f00.png delete mode 100644 docs/static/processed_images/8b446e542d0b692d00.jpg create mode 100644 docs/static/processed_images/a9f5475850972f8500.png delete mode 100644 docs/static/processed_images/ab39b603591b3e3300.jpg create mode 100644 docs/static/processed_images/aebd0f00cf9232d000.jpg create mode 100644 docs/static/processed_images/baf5a4139772f2c700.png create mode 100644 docs/static/processed_images/d364fb703e1e0b3200.jpg delete mode 100644 docs/static/processed_images/d91d0751df06edce00.jpg create mode 100644 docs/static/processed_images/e1f961e8b8cb30b500.png delete mode 100644 docs/static/processed_images/e690cdfaf053bbd700.jpg diff --git a/docs/content/documentation/content/image-processing/01-zola.png b/docs/content/documentation/content/image-processing/01-zola.png new file mode 100644 index 0000000000000000000000000000000000000000..44072562b418d80cb8d52cc1c4b662d8848f9744 GIT binary patch literal 123368 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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/docs/content/documentation/content/image-processing/02-zola-manet.png b/docs/content/documentation/content/image-processing/02-zola-manet.png new file mode 100644 index 0000000000000000000000000000000000000000..b426192c1ac3b0a467e9f8ce234f62c0f289d869 GIT binary patch literal 331398 zcmV)*K#9MJP)0000bbVXQnWMOn=I%9HWVRU5xGB7bXEip1JGB{K) zF*-6bIx{&dFflqXFjr#U+yDRoC3HntbYx+4WjbwdWNBu305UK!I4vt0f%q#{R5a5AW zp2!3LDsMdUFL419ybX7DdZ(+pDl@{}OjSjA5H)jix34M?PiyM3tXhkU&9im3ef zCA(MQbaIj^y&Fq6vcf-ndcidD_5DgNGpQ7M>)>!XO{Ao_8JaSVP@5rH>Af*&X3lV1 zue>!U$qXVur6i$M2MRe)tZl{201y$74mcu$h)_}ncUo(>Lv5f*aSTm@ICwYQol*+h zVHV$|lt3H>tT#Y#O^9?v6t|3+BMPEIQX%8Ktt*~0;zI8ZVhEj_1vf!8p(L^-jE1PN zu4}YADZO{_=+o_8R6!JQ@b0*PB<1y7_*^=OVh-+L-7!t5LiSFQM9B&FPR>xR)7lFn z-?*fSYfmh#;_lSi$hmN9#&ub_lo@wpK20PCYmQmRR9JcgSFBa0tQ1Wwb)^Eg291Q` zWDF4{Wu<$gwuR=IQZA&n^3#iACj8~P&}1T+gLDkTT@jRoA|iBah=3co3!1>Jp{l6r zK6WAs2qKOMq@?>i0LJ;5S{ovQyJKS>?PKqwLpgkO2XRCkb3s(^*PF-BA~7d{l6CxM zh$`kX+9%s=|?S0-rW(Ey?sKgLy@@8*4BGp=tG+x+A^M}dhfSmo45Oz z`FHo&&OM&L{jI8i9!F*TJC2ha#xeSJJ14G}eZIwg4Uz3PFpJOI{P^g2oGUSxx9`my zk^InC$NBWwHs7Ch93xeEm=7X~YNFPmskKoqtj6Yu@HibL3K#hnRDjWoNkV$iEhH21QkcDljtA`)r|W(=3ewo z4Dy&{BGJws6Euy5X4d&;hEJKKMp0!-@LB|!GUCR$B$9$#kN3uTH{oVCQgSAYRvV`> zW9}@iGbKg4vAXc}-LWK`)i|d_v5vU#%WqdaDXPMh3Z0I%Mm1w;o$d-Lg`hwwrC@I0 z0wlb4nyr|3ez{iu{^f;JN_<^9Xo_j-j$6mvFv3tlqMyxrjFT(w(7Vz5eetMn0>Q?@ zQ=rgVjk(jEl={PhvV-vGy~pC%S0JIF&Gxy5D1KP?ar$vFJFVIMZ*#gI7N5XjjejRN zwt09zUudl#1RR+4eGQlyDh^|Q?22nw9`Vc&RVtUtYn?dR=+#|=BQ%lkvi z_jB*>V!I&Sgpiov8sE#k^L7D#><1CUjEDC)_D_uG<5(WsJU#*baQ~x#bl;x6^+`PU zcpQcI^EhpvRqqOGd)DzBRiXDyV9Ucf$8mkW?x;lWWBUEMVIX|pzPrI-4~j%Yu^|gZ zptXjo?dKl*YF{IVeh>&leDC{h%?a1*jdcx0B(fRA;571|{?PcBe>LiQp#YgiY6g;c zUyX#3bHQDrGeyCjr8Y_`yqsn9^EG#a8;zD)MlpZ>Fvpz*61XnjyAZZApW(h%ATO%cb6dF4r z!!k3@IpcJSbUcS}!z(mcd%^%Cq(`Pxl7~e-rnzbX6tfl{hmHw8tRQoVcg0!TuwJZ_ zRmlp!CczZ&&Zm>`hfl%}=b0&Iw8QHxG_H6{{QVCvlq@(#YmKCzF^5}Qd9Q_k{cio2qs)K*C;Jy?C+ z3>yo0_hO!{wPEdVUak=eiFw- z1SWv&g8A+-Y+m2CW*@zat)I8+HxJ<10zdZm*3P3RbUZ}#sSh8|iS`Ja67}sp_uo9` zpvwN+vjX{B&yT@ncZdK-Z}Soz29HxoiRq+ zILPiq#Q!m8b54MfU(Pd0D_?$i#jbzhbT$J=UfWbjn;&J{rXPUf+k^_mEIc7qJIR&!W2?TK=eav zPVa{G5K6mcrUIe|i}h~p1>9w%6cc-2xI=m5oLSd(pHurH_PdqF27RzWBhQxZ{df>K z{wNqj;PT=5&z5%YeOw#!Gd$ohS{~Mb`%qMO$l~#kgCO+pEY@xA->vgUq3#gI;JBBM zR)jFz-r+8+q7C0G1bl;p!VuyhG`HtJ3+LzK=$$=(cRziD&e+>=G#>6_EV%c>=erjZ z&;Py+N9ZdK-RD!tk^Y?r5cdwF`iKx6-{Tq1I=cq4csQ6L+lLs22TEfv8+*da_wNurntr_@LyyfvdcsAME%a?WHC z48;(Zweh~zeX^-2$uq8vZaoI3bkv2EGJPmY6mk+K4;Vz#U5O=kN-ptx0&}IBfEaiJ zGSw=oLJ`MW++P_Mlnc;E!y0_6!eX7ZuUzItHUp{r*d|^|=hYJ~#`y$4eVRyqBgxF| zZJ}D`cA5F%ABNY*lqn@>!U{|$p${mE zAt-K3+r@2Fr+NtP+8a4dwC+1};U44HS_sB@F3eM=tw!sH8<_e~{4zYtFjRVXx^+wy zEyApcGTiOHI^77bu7@Qn5(1_ZUaN=%=Fbk$jDD5}A#)V^vDhLmb+jmTx8k=&dKdDl z8u3Bj;JCXG+Xect{5y{@XFNZkRfc!7LA30P-1h5tfhFO8sAvqJc}%qfBoUUW?m|>| z;WNB6O$VU@%H}dV;!4(tZ~Eq9iw|#l{Q0Cjwims}loLl;2yV$9`4(iORPUd_jph!qGv^64{iC_6FSCm0>ZzyL3bsWa~`m2!n|Qt zF%z0K;fumPfkjzwORCAb!;&)9q7ROvN!X_M3ECNx4gjfeU zqK>9St&UlxWaZ_2rgh_TnRuBJX}z&_VglY!IwfVwG;>?mz_%s9D~2oYQc;DZ86h#Nkz6P# z(Z#8{(i<$Rf@eg+8g@3Ev64o-CZ!O5wL0EIFyn&n0V^3E^cR~%{ zqZ%X#_fBh_W?*8xoF^{x%xzt;CFb6>)_`QvwlKDU=-rZjhGLG;(W57PKaQ5=W3cn% z<9PlNn%S;@wz!X0@AzwP^SH^b9Jc;;I9T9Y-yf{~Cok%IDCg-tMpx+|9++>!lL282 z17JX7ek2Zzd$rc??ewAY1a=R_?}Gay&%`A~jE(W0a*zG&itFwK>~DH#2=}LL*uR4- z8yqGNu-v`>?$;j`TwMPQOKoJ2kCer8zurB#`+1M!e-F|>AN%=wzs}uJ*YCW$+P>yR(KcTT6%@T}7QuDy3u6jA4NI>kIlio6tc&50z=YYCyR80T|go|JD@ zSz3%-(u}0^I88-K8UbFFm@sZb2+%b9F-@7)L(qS{u1KEo-VmHsCX!c5>zHOpAX38G#t;#sLbKH+^0!$d;7R9i8hNElyUR;GETbz!|V z+!7tZd$`)o4Yf|sjU*F&#H?ucu%LILw6$Fx7llSpW@k;|in%>3hT}vQNx|IPzq?zl zF`2`a+m(hs!9&AK&=mb-Jz_^>n3G_&l1gHdf|>HRR;u+K9tg+?juzx5B#sO8qec6B zf!^nHj=1#p+xKjiN7&&gK;!%LD2T>-d0@~S+On~ywr2?pk8t#wDvWV`Zr|4KV;cd) z18U4EN8Hf+10KHhq3RZIyi0;3Y_qj#6V72B%TP+b2cVD8-2Prk1E$_xi)R5DZ5)$h z1OJ{+dHBY?6Y;e)z6n43Z^3E%vpx{)&&uLx=|8}wJkFDk?s1<7-!r9-edFp6&na3S z&ifvgv+uj^_&e-Dbdewy3G8bom{vzN-F6k^oIxTaAzupaDe>utFT8*I4H~2@AWkmA z=@d5-Nii^zcNaJWj*j0tIVnmXSU02uIfuI+n(fT8thC->EDp_y-k{-R6_OcQJUkgq zm~=A2`JAF%C@LA+ieRK!`TTmO)qr9C@lQYS+h2d-&sX8?{l-M1kyzK2)|F~)xPwYb zi7Ch8o70RYCuL`z3+L3xlK6Bf;5WYY#_M!qPKD;3TQ$DDDgWi?8#k*=StvP!L+=eG zF-?i{%S5Yy4Qp^JSvu-eu zkyHjlV}nQhQ5e>44~xckX2=jUBe=H-(Qaerj&?u92P7aHYlfx>+%;=-oYP$R>2hNB zSbD8F@3r&S*3swu9syCmIUjAzAm|IC2Rw)Y0y(1U<{{vY4sCI?Fv$GVYo z9)f*X_(RDZAuibz$U#u%sq8RW#DX4U3D5A??|D@=FlJRjq|=5G9Fp?DsN>Fpx?kI# z=Eb9;{iq!uwdJTJp6AHckH4otj@N&rK-BfSdHQ&57;Vp<&#vGE`hx)?q{DohrU@7% zC$rIyMg-DR7!lf$|Mj0Hcke8&e7i!IIWTK+x;LgNkDQJY-wkZ+R3`A?$D6Hu`Fvt7 z%6XcYRCsw&G#Nz`>cZEr-#DLNSbOKKHom<#keP4q3vQiU3b*Tx%jrxrSe6A*rIbWp z8|RboauVhueEkM*OQ+0<%Nbr@X5PQusI~FqmltktH%h)x>l;7*ct(?OTN`GDzx@2p z`{KMUa6T81#=6`n>CAk}xEr+^-9i!0Qywvv6+y}FoRf0(M(xV=DuLV5cPrZ6$!bg` zT>g1J#oz!UiIkM2oy#RtTLs{BDwHDp{7dEQH+Ww<%_^da+JoYmJaFr6s@xTZBc8%# z#}8Jk&`m)SW-EwdG_nf?@T5SZ6vbNPuXK-qJsSqvx4{3vowE&v5KO3~N)m~-5iC5% zn5UroUYE*Jjq2c{BnR=k^|^ViNWf02%34=)DkJ6*!F*LACFL?_K27lUwsJFQT{!1V zDNZxveQCIqhuoXZTHdT~8A5JfY;uRYK3bH{W-Q&Uwe2t)URr3W-6p?}(&mxG=d`f} zhXUCZ-7d^x+}t;z6BfIs!D2B-Jx2^sJ6a77Hx_Y4#K?n8Ardh)k)TdH(5wy;N+RLo z8YSh;lVbm0v=8G@khJ0ag>H`7O7>vqxF}f-mjtRL3qu6)@ZeJ(a|+ssDTYT9R&Y*< z-r9iAhKJ?@#`Qk%_wbN3#XUp|P!L~3nNmQ6<}0~mtO=?NNQelnH*y+rZH0|&kTi!!C^}%v zVQ360Y@DMI#BEZ}h-%2Q|M>UG=VHwB#H}j7TpP!X2i!_$|d`T~|1rCzke3nG4^(uH=-d%gSkhhsA~)FDkY{|P=VL;Oir2Q{Tnam!kmI#cU=~`2~fDM zjcebaEoWIOlFrmNpv07D8k6yq;XD`Y>bMzY%E2(xiEr-}IPcIjy+lbppl2wTE$4bp5{<=Sy^u@E{T*2Y9Vl38r>?(T5%5;JEsCf0C+As;IfT|9t=Kk ztgfhp3^(NVqcc!y<0ETpOp$gea`bg7#aGZ%`nQWXmCsmPYT;y2m;j zUViH>0@X=qBOKJN(mWxW=snu08e|vTu(g2%ojsV7!)xs}Vw_Ivk%P5S+~U9=0cJ!!Vfw!#KZlT=(yI< z5?)7ObqTuATiuye$c9Bi(!^?Y+-GAUJz|L>g96$;m;iD}5|fO3jif$h&_#o}v*(74 z#qDMh(2q<)L^6?>9#)C$0@)~=GVmBslZ8aadj!5U%fNy+=`sdyP((EsS`Yqp9~RW6 zP-F~>k`M5Rg;43nTuQ{0veStGeCsx>-GflvgMxz%G7`PShgBoQ#7EE+gop580xm>j z{IWWe_6VU1pb<~#W^{>!NV5>~-L}3Q0EHJ+9i^e-sLzABHkc||KqM&M4%jpQJ)~_g zN}Q53GW~}~cb+HOQdyc{l5m7efjkHg)s4=eh4-LO+mmpAh&}XZTTY2-nz-F=!vlE~ z-rqqZaQ8r-6w@{aM+I_Un45liR2KOuJNWp_BfOOooK7=8eE!5g{NXb{d=ipXUeBLM zdcp+CX=a)WWiFhiPn4vnbk3)jhzYuplY(|sDq@|vobXg|4`!8UB}t;LjhrD*Ys9-e zDCVtp774altBsZt)`gO1s*NPn^_|P*!rGip;>(xMw5s73rxm=@)*FIyy)Im@%V3xV zc_*nL1QdOlCvNX=OmoJTH@q%P=NC}N`i)i%)6bD4EGyUBf*~ZSByn0-rqdk4&I`~{ zI(4a_GiIUCZnqmC%;y(c6U>z^f@(%k-rlYlot!mdn+V>wdC<`$n8e&plIUy4)>^kh7|rIHx%W zJI5L-2{B`yl~3oHYafAV5?OO-WJRCOqgkvB0G zxZ7rNcElr3VapHbqGT70isgz}iT1>cf%ki0)4~c4;TWPPCeNS*4-vCRuKdnMG8=B^ zfHMNd7Elf7XFw^q51QrXHaiUFkyy0Ba9k2X0_l6(G-+64J<4CS-ZqmtCQy={36lrZ z)LP#upbvso#-eh_DG$DQ5GYh-^n>pxkJ#vop*ZiJ+vt@o(QwpzaWk?9MHkgru)UH| zTose>!^HFG&yJ9H4E@=w2w`s|RbF0Rczb&rmKYD`Jt&D0X9-9^#)~{+;L07s3P1S% z{P1G$Wm-gJr$BGdcvf2Xb~vZg#801I_z!>j#6SK0Ctjz-<@`drT)2Gx6p&;|%s+hL z^W~3NYnWY0z_+hoIn6;Qx4xn&gq5Zj>2gq^j;zdO`CaV{Cw zcRVYqFQk0JM9AXYzJ0|=m}KhpM$XXl3y@fC1$R;p*e2%*b0@#_Aup7^Hry8KdZUPg zHRhLz_1n)ZZ@(ea3;*Z;_5bkWsq=R)#_Q!XfBpJ~c_mFs&J*4z+A6$VJIxGNq2v>i z6Y49;Z&+Uj;iS`>k@7^dNak$aP|Zx`#57$Hlx__tsOfHs=YaU#gMcG#K@hqteM_2k z=l!~p%Za&6EbmvAbqOUT8OJDdka1+!WM+Hw&L3wKJ=pml~9GkB-C z2w5V|5Xo^BBs>O1!UB&`BIwsX6o`^?8q5t)6Rb8=15ZalG?8?0qX+ENT1V0W*n|;K zj%Nf68f71{=pE~JKLjMhvP`moC&Uucb6DMjQ50U!2rfHpbiuTtPKb(=_nWC7D-G)SgOi{QrzI4ZMZDd z!^rE1`${^+__&R5`{4MGzBf9mX`DaCh=XGAU~?_E^^RpeDVbxy+;@c#3jIh`-i|F6 zb^IpSWsLcrc1UU))4PZL$fOB{JB$!Xm_f;Ly;|k<@(DSA;{0;v)9Ewo?HiYqlC+UZ z=Tv0Gn-Z7P7gP-I3rWx9NkAt=E~M1a0y$q;YNAXImN-o>JK4p2rT0cI8FeL#(Xvoo zn97Nbq&1gIl+g(xfqa_58$B1M`2}}qwb9obor+4ss$<%43P}qq3z{c~HsYqIltXD)WxkY<(yF*hz}RGR zB)Hsp>ZPQyup_o{t45ioNbZxM!sT)gxIruq@LhOp+-=`1TJ8ee2{17%>k$(`hV>}> zq90OiXB-71#D~D}J-JIoaM_kPJIiMiPBI{5(;~2f@BIb}Z&yk`4N@8tRVN z=#O2jvMY<-lJuurZojo-3A zKRl=KYcM;q%)})k_|CKO{guQ^Mrc?B44X!!$h%K zfsUunZFQzBoG(V#GtQZB?;US2i<75`m-GYm*123RTwW&3Z$JU^X&(=4RB|DU(KwQwrT0w1%6~n_zNd@fP!>26>=6Y)n)W3**lH(QaOhwg>_}5^yrbNT2?_p?Znn;?cTsb8NZ|DrQ z7)x$Qg0*!z7KLhWPOA-D{=$#1C0LTZA)08X#CdYOb+V*@^wxmFgvP8wxdcIFnj22y zwq8j&p-IU&c?%}(6J77hVPmZvDQJBJneIs}+rRIR4evcV0MGQnkN*GuxLc1t7Vsu6 zcD~WkdW2vPY_)2JqB-90q5ALBv(19pa=hYEN!-sn-h-!e9v}%GdugX$?&S;afm49i zTTIydO=I$YaPQ+iKZ0N$=zz!H4sD9D@;#?xV=g^d)rWWAi&o0_xe~`d$T>%b`<@^0 z*yf`!-V6u%pbwwl;ohWS=^uJmL;?yRYN$;E^QDh*-95#iE8f<1PlVi_ar6%U{~Y%W zU)yPtac_XT0U>fP$+4{$V5dKmEhym$F4_3gmzmF>Cgz`JB+ukIae4ibSv&97H!gF+ zZVRatPFkoP@-)$XrMEY5#j4UA=GU2&LYaAS4CQ=&#mzXM6Q8Fuwbzjwu#!Y@FW6om zFN05%GE-Zp^f0ar3z!;6rC_arb-b<2lhC>%Wx{NwF)?XoN~eH9XQ$hVm#JY(0+iF~ zg|;@@b>)%;B?@)okdW|#MK=y2OKbRAIbSlLet0EIK~i|(cp|4V42u5TCY{Rbl~#={C&S0&J1UIL-~b-#1U(-|@A2^m z9ugbZHE5nWrD0jcHD}^a^{DZ&*VAk z%*p8Mx~vf(bqmy4WaJ1%0ZI|Uo3gIIQCpPmS*uZ6(AYD8C%TQ|s*2wmXiRDrGDi+gLviTP6`##;&j=aS zNcPp7Xw9(JsXYv%bqT0A>qK1*RVS5EJwnI!1F100jxmoI=}Hmdc58G=Oy>)-4v*6m z)rs1oPYGttR}x(t^pT~+DH3s{Gp>hVgx;WXTHZ8cC9P-K6k(0 zd#ih+8yS9Y=SSAK3|J{zw*|%BY}AZ8jMYdOyZ80cQyTYqN)+3ly#<<|2IlA&?aF^s z8WPOD$LhB}>Yp(Lx{Yf(*IVSrd=$j~Z+Uso?S1%7LlA9wCtHSnB;`iF#s*Cui;8aV z9rG-qBOxxAnM;9Q-x2wN>HNwmC&*`}l9@_a%UKd)LX(b^SJtI6odmrqq!*+Jq6Ypm zxjU1jVB@8No&XC)(R_v4$G$z0RNVc9`O1{OfUT72%=wg|8}t@XA&SwNP8Zyr>-CBz z509F}vaEE3>HJD7C))KF$^_jy*V;%np{X$EN?RIrh2MU?l9IEmZVZVk?#e!%LAw;QKY@H7z>tU+@|nv>Rr zYR1d!D|M;#t}M0j<#NV)V;*&?@+qONf!cZF_0t#r`g7-Un(3|L*@M14!Q1u9JS*yg zq>Ojx{XLXTcjxPGU-|LJFHCc%x6#i6Z92u476jw$jFSxphdEZ`y}%k^QHH>X=zAKL zh`BLMa|Ei#21-6I8f2%(1+`20ZLyDx>cf}cS(0+s0bz|lLOsrALEZz^M`0>Y%ES*M z=Oe3f6O^%B#^yY&BS<7JjR3Q=;oZKYcRpeea#SKi`8`{iM|fznem6k^A8*7H*k}4K zdwGA?-}yWm7k$KdhCI4n!d>ayG;+VLwZ?_5P&}1V|%x?1{5QjB1+QR@Q!2%>yII;=Xyua?K`%6 z`#;Vdm3MKrS#^YbANM%{k*9LoO5}7{;Nm6EoU-$JnWIubPULc-x0U&n=`D;bO-8FL zDmD__a+Ko-3M=l=mX(aNis3Ej+4*v!*T$sAQr}2Y=;Gw^3iOB*sF2GAw~F^f?M}VD z)0WC*3M;$!cQgshwbH5}GO;XI)>~zsC-UVB%eQZsXQ~UW&D0+7na)2@R4A$N>tBAR zu9cK7nD)9MO@^^9f4s-^Wx?Umk) zInAWxB=->@PBGtlc)qQTx_gtLNvIX3DIl;Uh7RMg_h6H$8eW&7c!K4$dawm+H&hC_ z2xV$W&aAg@6gM=Tcv}|AbfQ;~sE&jrj3`+ zpLqNB7L_C{Hi_%Ca(;b5yi;Zel-ui^9f2xZQ5JkNqBYfyFLB|CXEoxDm?Zc}FN? z7YLihIKGQg!hQel7&~}AKC%`+YTrX!oU!Rs^v9%S$JBrCIUgOzXB@Bluy5qCEX1=i z*lHRb+j=aq@vK;$A(5lS|54w-fT0d2?9j{MUa^Nur}v;k&*fe=|1KaOkK=Q`gWblv z{~nyVdmX$&~^uK0*Kh>wJ;E%Ec?YvMcK zy z;qvk&Xzt66*4Aimg=_mWwf~CMSELBtf2H>Yx5PA^hOspA5qt^lmQP$)r>z}f3g(Zd zC}HH^$jNbe=iBvH>^j8`pNsP8(<@|)93B_e_D=0aTVXl}-%~Qr%3y;q1P%g`zqyE?EyNA^`6zC1 zeD3kHxYLJ4UQ}2Pp25d$zcZoYcYkQ-bG+pHw%@NmTD{x(M`iKc-iN;W;Mm(B-+zBp zMhCa>e%+J83Bw}s`ufUGKmCD!{g;1!RQiXcypP)TozW0n=0h($9SZtXsrL8YPlgii z^!@LMH`oK)$t_a#)9%%Mtc?D>&;01v;#H9!V&A_vkFl5I+}ZBn1p8@9nR%Kyoj-AU z{gHV-AyP@)@HBJnjp_WE%j-;CDzdok^KtlZsX_~R6;`v0?mDMY)NB-2Z zCVu;+ljj*sImyJgZ{I*~xC_gz@z=lpM(e_Kn!@`a6iBC*%x-v8>jC(7(hb0$e*+ixiH(8eZhNhvu;G0v?j^a#C2 zqHN@|71fAgXv}qM1|-(nFk44OY$2(WvVtp!h9~76ywS)0MJ~6_z0aN#}g{(YQ4Lw?`aI{XJ7s=y7b>HZokAfs{%a5(|$3=V> z+K*QAM@*r+V81(0_j{|z?rkkglv>%U)NZupt-af|cV!_6$AWE7FGOUX-+`0(?x-vR z268r*spxPUA8)fmb6bgxy^mq9eEN~s@$B7*jFJV%zK#~eHJdVvbaLuiS*}-_*}g^X z@jdQi{t@GCZ~oqo5651N^^kxmvg^0|`1#@gvGLdeA=~b|&E;(m2Nz+jgF>4U^m`!x zIF}f(-*JBY-f@Sb*#F=9)VX(00r#GE8bnPzZ7edcm5xGMAc zm9O7^CFhmv^~U9N;dZMuhuSJr&eRUy*2b69iFT`W6M9?1^TO%gneqv5EiC>yLwCGy zl_?V5%b-)QyyOxBYJ%FFNR=3ynoSAi6YszL#((#RZ~XAG@OOWDH0A-r_a>0QTc#}wT@yLQRuCr*GC_BZRe85QRtK zv@O7ot?#4jE+dQmF2uIg_mR?wdv1l^hG2fGl^+}Xw7p$%-ZN%>+)^@xOxmD3k%$M4 zlH1m7B(@!(jv;jJ@9}uZmPoe;ca*#Oxl4=(g&JRsL?YV@DefMFvd4magtWJN2<5&boW1uAMSXq$$x#p(E6_<5~#lGuH0n6+MkU>m#>IGS)ji2_lAQN5#3}h*eHL zkHqLqZH<%*Z*ME+e}xJD^U}CY7ry>WFs}aX*KfT3Lq;^CZsaNUB=X+y16s1STPV{W zN+3z(b%+(bcf`Y6=_FJgZ_CJy>XaPYXq$({p2~$h3%#}2AVMHh={af!_EGdPk?3v3 zRY}t&GUwAwO4nG6X^OzR8%QIkh &r}IQw4V?s5r>-?}Jd)tnnR4bl<(Ov<-VsZdUtoD!$gr=b02<$7JI^|n__cdLk0&X<6-YKwIj6znK}GM{IXuPk*z$^@3k z5*{|2;kn`7A-6Z{^&o7Y7Tfb@cc<3+Ai)1y#{)D3=)+o)Z8Nt0c!m}>cF*3%51@xf zPv`MoaL;Sm+I*)e$G>MmbEkxElI_tO*}l6!=w69+gXvrz;iyMgBo^N@Y_)g8=o5KT zRmXRT>YCqEQg;RP!SPUT8xZWFAGY>v{nZa1#<5TD&)OP0-s@0%XFu=w_fZMU$ASFE z_kFzogGcq`i5{+cRGQ=3V-@2~A>8lregAzAOWhBJ$W0nC6jvvYf{{MHJMPo*J!#>- z)>IQYIjw!eY-O!AGOZivRJi1szx(?y{P~yv!l%=PS{tt~FJOJ_k>hwkn!GVy$(w}nriFSsUt{q2qOS~2e|R>|2BCu-Aq zl)E4cQeqr(HAN zOks*@#F`NG@Bq4yG(}|wjFNNYIC#dI;Yq-i)9DmNS+$Upk(DUun3OaX$}~luhfGmc zN5j)7IWq8#PSV6_jt%s(3uYR1k9!G*nkn5o%k3HkX;Y)O$d^g#V=w#0`DMcEL|+>v zUAcu59^1)IiC&FqDq{{eCTZm995JZjL7ZPslv4()QFJjCN}9N?E1#u8d!wX@dRsw^ z7oD))S=XpB*xQ0oVq-iB23^xeF3OaZwn!+DgW(A>5}0J*xUyxJ3%fD(Hx`aaFourU z`bP`xC=?$zmiZp5|LD5E_1oPt-M)X^P$wmgT?p@I>}`LB*Y+gJ_Qb%E@2RJoLfHi6 zqq2R%*YSroZ9?R(&=T7nwhe=}-2nF{4<*0HAUv|bcQ1+!!bu;(e$Rb*{Cj)mgSW6L z_#tSI`_mtl)c$+lHY9pHp2wcUwcG#uZ<|5$?>M&W%~c&RGYK@)>!4VZAMwI~C_vubfKa zAHMvNKmOq}xbx!=pPA0ePolX-de0sf*rIV+LW>Ifxiqf5+O7dX$wBBQ5 zH3TQq+KO8vsUdmd?fOn%t}M&S`%)>>9NRM}^tvL_IL+Zr#MZADZp*^^`<1V6?<_sh z`@&p;X8T+1Od4Zn3bVxC_RV73>gDZ5ZN}PGmg|-Dd16`LxSTJXCg(JVml`NWa@$vJ zAV=~H$_Q4?NVEi3BD$e0mN^|*fux+u+jWi@T=ry>A%q643$!*k*AfY|-cyz(F=a2a zw2{SfMF?T^RFK@uLyN|kq1HuMoK$Em5;RTS;hG&I^oAly$ik-=yotjC$&`j{u1OHLSGY0`+djUN zDQ6~WvttK>VZTENYznjG43`O1mG&^(m^PjEnm7mlJi(w&;*ZB30J#C0vJMW&IF1X2ziI&(|v z^{&Bn4r?-9eZ8$I${8scjEU53hv<1W){@5UJSj=$77mW4b9e{EOp`*FtLs(77K^O# z18mn@7S$}rJG3KdgEWd}TjSbD@QJ3bF{Q?J31Xl2Ugbhkl@!SbL>$p7w6eI6Xabmb z-g$>_zWy3Dyw)KX=LDY+V|s$c3^+$pE{^#QNNc)Sr!M+*JGOEM!884S5KvR4GF3!- zYcOU3ucnzlYRrJ?ZH@ftfdC16E~@dK)q(Y#?`5Eo1XQka9peqh0weB)N>(!Q=ozG^ zSI)v;E4`<0>V+kAd*Q8>G9%m{3e#ROkz|0(2(Orc>q#B zu2bj{_ORMe>3-;W2m`w>2wER1@2tf3ECBnlV!S5>eE=LpsWHJ~A2&OAo%#TIUo@x$ z)mMDy5J=AIiDXPh1g7ZK;Ee_mf&dCcTZ(x}bbzlRT@xtL0-LK>y!Y?~4Lo`Ng3@}b zvSLv#IGtN$uJPWYZGrUxuS%c+9Wm7j$wyX|p=%vJMrQL0l)*KgS#bx%p?!mrMXpQW zhUm7ri>7N(b^#iq-w`@b=W-{C5OQ$XmIXf4Se@`b;({Z^bJ|c-Mj=H@-FDQq=VY}Y z>~f5tELNyQZZf4cF=>+DasTcD*Y2oh6)&E=COS{sd4d>hk^Z1R-z$h|vfnL&3};atZ|JW=3g=h$r{iUM6g>pQeAD2;#%*>E(MU=^Lb3xP5HHSXgPYVa1XUk5;;8(S@=|h!KL$@K+R@YdvCv^e~P! zny#&JPSN@;Dz!8rVyiQ>sVHZHZv+=|vovc8PL`*5)nZO^5>G;L3*Sy+# zbfvMzQE5%vDRy0?i;7L{i7G&Vrr8iAakeNZbwLW5KBz1d%}q_ED^Bc;nT`DH)8}kD z%e)jMcv^4qKunT*CdD_zMlD`Z$rLkA@Ab6*^`F>#^{(JiSw)n`N z6Y6lW?}cYxmf3oXOwgwT$mIZ~x#e2N_jl|)9pd17OFO0`Nr}*P-L2P%N0$Edh7Mvb zlb+O5FK;+Nq;F_XPstJXLN&|9VUE(_2yczep)oRf$7QcXhWA+MG#X~4z1MTlANP1n6r(|;Bnt{uCh}9Z z%rzb%k|MOu5k=w2odC5F>Nl_W_N!-jG%FKOr!!`=0(7qIE{h`fR#6}_M+iuA5L=8S zlGViESj|g9(gcAJTROLaSW}h@2o@hTvqH1oZqUk5m=YISX$_=S9 zz>pzmqb$Tg^bSD-8pIR(m{Lp%i?CWOsLGn=vVo*gl4wO}LYG?`D8+mxEUH=G4KuNB zBJbQY7$QwWrgRUA6fL{1Wv=EJG2ELk32n{FYEI6VeDQq4tLqJ&OU#Obc~K%#5q(Ed zYM#8=u$ougU(Q&ShSLSPqhvJMtkVDmM*4#98>!N`-0 z2Qenvjuz*4)snpZcYc;|C}8`0IELs(;S*CIG|Zk{OotWoxxQwfd2^ry`p1eBft$x5 z(X}lw1i5<;LdId3jP=B88}R!hMb6ZcCL0N+=hn%BZxE3E_0zsllJv@olqd?D1w_nE zwT75VJ_d%F7|9loJb=A0mQhd-_IjSjw+kp!N@F45bj}9YXnKCg8EL7f;mvgO6FxGI zwlw;I4DqA`Mc*rk;d+Bn#c;MXcwYPY&d-qNbQsI&JCidZCq_*F5=bI*(WOiql<7q* z$w$grK^Ht-d!2hvAeq2V87d34Ygp)lO`H2UsF3J<$IKd3vWO9qOCUD03-}#|oVF=| z6lFHWL@*L?ZK7^EG@8oh4t^mfQfl#C&Ngb>j`eoSwsE|Y_-tC=BeB1R`dP#CNFfN<^+ zUl^0y{`L*MtTJT$w>Rn}cPMRYht-KkcNMR0B8>}Z6h@V-8&6>iw0O=IWrl7fkqXPM z>4@Iu8fy<$8BS)oab3`c7>$+LQ&ch?{Z6m(qtNz+=@40iD;GKx2|<)B^aggzGGGxa2|A` ziyrTRC~U4?V^kzY-!qW(?`P~euaZRtjjl?byuRYqCSZKu-#SC@sqe3mDN7WLf9JN7 zeIc0)EBnw&9+k#HfO@}3rm3;h?b!0Aho*#qIwgM=dzRp-+Db#C4J742acnv~^$-YTA%>L=Gn%QN01vq_d8DNb;$oB9}?8ygH8oS&Lib3R1 zkR^$IoI#P)@OkWm$bA85AM+Tf<0JcL$>X{gkV6u{0ITHy@(8?uBx360Oa1g)9dn+z zqEAfQ!)iHTE{DSPXiE&=@1Y)%y)aF~SabNE9ltXNuv?nUUGG68LO-sIv4|l-Wa6HV z9`(V!_6lvE;E=``NPfrn^&Iq&=}=plLsa{kj{&}lgo#%py}>rswDvVO7%J#WRfiC4l z40@h0gJH2;5o1f&zQOwvA+l|1E^j){@4QFrYMi^`rina%e!(W}xTzc7Tn3&!+tQ>h z_sXjAU$D9R9$M{CX2w>*6l z*m#v8EFotm3{15-YL{PhV@xhW8(;qXmZvmv$tMd~A3+wk{r$VP13^9V(K=hQMrZa{V-&fmb!O)^pIrk8|p4MkGg+aa_`=p%XQ1#p0R5J{?tR;kZm1>wPj8bHU<~k zzUCrfw58p(bZyV-s}vzR#Mqw5P%t{;Vb3I zVJrzv2xNY*lrXab`oha(JGLEMb_QD%8N%W%0lI(5eaQLagH<|Yy&R|J4qHfvwE_nM z>e$nO?-q!+WN3}&nJoONqL?0cu-yWGz`ozal&Ele4~O@Ec)!!<*;jB+#$zG`wbt|< z$`7t_ATW=hm=NL!d+Z_wP59eFdQjL?Sk4$j?E6_9kIQYsbVxTo zxQ_!v{ubjwrULc5wzubddY#)m+QTDnhbRC4ZqmbY!x*UELx!Ui^yx)^x1H2`LA_Vn zdmh8NQ({7DnVUaF$p!^3(snycF~^GFR7Y@*d#4o_&o42}oT~Cj8@P9#+sZawhqa1z z*KmDx&FaMBBx0;$R+d;Jq(046#P*(!A-GIQ5`Ba7AuApfUw-|J&9)}_$hK}FN^Y4e zP#KdS#vd5v4_`GS`44AZ02Jk{}o)WnxNF!YD=4W;jVyE}*ogK$50u zJdFb%g|bk%rsnazC0@2DrMUCpl+%^wdXsqX27KFM%aSkRmW!RDYj@nev*OX68Ot&e zh`hMmvZ({wlq_b#vdYGRkuF>RQlfpJ)S2|q>x3~SO`V~w!b2+&QI-@1TjX?VV-(sX zobwoMQAMIC6s9ck80tE+1dEN#%X!XF6UAm%<6UA^3T35nZOg2f^)x?{Q;k!EzNxfQ zITJ3VK%rn}JsxsP+Y|!CbW~6%d(Qkxu~(+3&cV^W#kRNaRNprAw#9vz-~YByI8ZRX zYd;8=189l;0#&L{u^gk)hp@-g$~#EW9a4-_%J;4I)y65t(d#<4sQ1}MM?q9M%oI3O9?6EIHP!# z;hW$yEs?f4p#Z`8T<}`&cDTmz@=b>mgTk|%X_`vY#g?Z>!?S|qI|>UQymL-f z6g2gg=o^?<7z@`sp!pE zN;9VYK2us0n0Rc1$HBf>Z#-v8(Dw#6T0w}!5J*bpeE2j`tk5?Qi#Z)~Ab3<+0Vs95 zx90o8yYU%EE~$NB8p(Nb!!84yGZ+SG)Vza7G#RqN3mD&vBO3X)oPmB0Zc#F0Ok+5= z96Ao8Q6qbZZZI%XJbY)Ses5kv`Gnap*(>LLBFMD23pomrhNKI6#@GxYDXr;grO@RZ zoIuFreX%JhtOu4PW$-xWeZQ7+5jj0CsOrcc{^$eB%F-r9HLEaqtexS!%W)`);9Cl% z2;SkeCH9FUS~Tm+H^g?$rkeS?8?U*%>DaAd zzL@cE{=1KPR3>)ohQIsG4S)5k=eS^bcvkRx@0XmNSYBRsbShW#Z(E1oHe9rdWantV zBOrJz!MB;JJ>_m!Rn@WE7@A$;WRbXYy5ekAkP>Wnp1XJEsMOHzW{AqIctbEezv|d* z9kW94zHb$5HC7c!boq_$1A1-B>-+vvKx?$Xzq2-Lrh%Dah;4}E#iz9DUC;eO8W-UJ zIZ0kDx7AzRX8j#QTL-IevW$=M^Fxxvv`>+pz$T+GW-pkh0zrmFyEp24i#A(}#^egt zX?=rCgvelZ4)->#x*ye^?0??|-3-^8j`cKlG5z=O{ScrZo@Inoj*=CQ$9G?KuScsG za__?|8Y{SF* zr`)--pq%AaxSe~7&8voAe)WcvlLe;*Y<3Ms6f>(?l$xqED8TB1lp@Av1EVk%&9>#i z{ROVu(rf~=szj-X(u#nh?Go#aBPF3KpeQoArS}eE#FJ@dw8|W2F$&5h&W*;z7-*Z^ zIZbQn+t=;|#~@6`&TUgHc!Xe5o;U_;{_O?(pM(&GeR>o_e#fGoem=lBQ-OQD?{NIF zmvg)g8Au_7oDf& zgb@3px=09#=yMP;ccw|ba(UbHI;LGYxYx=3htSimPwr{t@w#PBrt@+<7JEZM#wzXU zdpV@=9uzT7wzq`*?|A?6SBD1A@XS*lv0Gy}z-^zVv}Y?Adg%<$no>fW!x&fyeU_M{ zvAf;CwwzMJ^p)8$smubaN|aWt;}dMDb0xT*=W9iWF>^|7`QH0?X}6b%nQ^_%jisv7 zId8UsS#;}pC9b!Luby4=_^zSdUi0w&T})vyrsVbO zH?(z!iVZ(__l&>(&1+0mf)-i_PcOIp-+%S@{P26HeE9e-OIzl^xGE7T@Liy5w^U^h z=fz0Zt#MwVbqPVxsb_C63h$bp88=(RF$98yoL1ZgbP19o5+kKibk3tpLAS0E2~?Ht zdv|0dBF50Vn&&SsiK#%LsY*vtY&e-4#0ph4=WJ2&gO6tvx+O(Lr!-IAz@Po>b6#I3 ze5|;$sQITqexG`G$*O`!_wUlBmf1_g)7O^PFIb%{F{=a znWiiP>uX2XC6r36RwXJy?L4JbR3>{QA|7Q7T@bVZ*F?GyQ8pq(qG(dgnQ=}uCNEaW zd?yofyy@bKDItCOuE>#}-^UMfY$Lu!5i(u8-z7)~xMg4E{dP=bFTCGg?8k!bAn-m} z^v71-{&O{w5@y?Qf2{%6hkaoo^x0-d*PVI=$DYD%V=?`F2;?7-3r^vr(OL%Yd~Ufr z!FQ(DAA-zNY<|GmA!mN26bYKXiH(M!`hvCmeTdNQ0MAwDZwjZ2*ea} zN@@s5YT2&a+(9wxPP7!nn6M&a5u&yR(TcJxY1%Cz^~Pby!R)s6L=vmBB}p`DFOTy`bzFBQ5f`R%I<&XyJLzI)D_t2K8QaDK8RiqM7@Q6*JXvc7DPq*<;akzAoJ z+Te*aZBAWYo(d;b;+vN>-+bHRJj|p3a`PxrDi;vuGoY2pF|E`G?1tXx16Z;5D*CmX z82&eT+50p@)PDbol|0P?x=kVEh1m<6fhHx<2hOs_9LnmHDjtwA-n0jwv#m%_z%? z%gZa2$=$_7_G3FJ&p{Ez7_zbuA@swkRbPLe^1=x|v&)rbh3mThc`~I4%6V9&b_)cN5 z@w`23Ha%KE>HRS>LbUlhv2UIw41I4VMn{k34N7O|f(Sj0z6_M^f)+)@Lz1lc6QmR} zx0cY;1*Or$&(tLeiMbXaq}=VUsT;aYi|7TjnIgFY?-IK3%+Kbe^c6AYY#d!^=5r89 zY(mM-%Q>wSRCAM4ze9u2VRWL6nl=R7Zo@7#w5s4Q{`M38;qxaX(UjJ(P4MDk z$9lJ*DuuGR!|ACebcUvZ)w1NeOLVcL60lXtw)WJ`hG+~iDW1LBa&h$uv#Q|aq~v?= zbo}V!57=~TN|{3xO38iWb+UbGsYeN!iB`a1RYVzv;jE?efS#Ov1$pMD#-e}2lHh2rtuij##R`kKY*9HT5cXo^zf>JHI{)p^15 z&#!5^4j&V3@YF4+B47oAODKulG>%di?1F(-_}=UkJ!?5XvwZOAoEH~Yq|jj1jLX++ z=1a@G5MnGq42|<#UAO%5n>9CU&vm0YSqA>wKR%-}3Y8-D&SR_IC`^j7Z;~Y{5uC88 z1Lju$d$Pce{~U$xt#HJCQBUg~Zc`dlPeCRMi2){qOkv$aWK51Zw(@VgzbS;0=+lcw zC3Xb2%S0>J5&xs67|H(rdYy_=imr3CO$$nmVmOhBA*R;+ z;BCC+Wlo;|I7K_9#B4UhJ2!eqgSQ}i?S3%6w@v&M+L{^`gOEOkF-PMC#$bD94ajku z@miokHMaZonoR;D7-D~}0WrY7;2-pL=l?GPhv*HQ0oCi^LvkZ_jE~=05K38q@=KVhE|pkYTC3xtG=mQ z$O%7-g`re|)%hYP0ECD(LKII5ElLVh(z%zpM0A-Mg`I0N1&@$hwQ6B8Q!M9+`CJoS z%d9jcmsl)UD3klPrzD6~bSZGT2|T;>SUpEf#4aN92-m_c|Sm z>A9vq$MN+CxzM8;^MbClZ9g^nmgT6OH- z$=izsrwV9Ft~h))#4o1l#cvxmhjV?K7uoCKgX3-+_wl=w#}hsDbctxuWEeD#`%EV= z^}UOyYcIDI&DWQtNI|1iNnw|ykci$9T89-wdvk-q;dPanW)r-4wc$>6%A#DL&ID9G zX9xlBJdLWr%n89G4nj!y=y6W?;`t>%|KuB*E)i)lT6&J8gf;zq#6(-?#z;-mBIKaA zZ(H8GTkvS*dGTV4h|sy5RiqC1-V!k>g0A?7Pru~;Pu^o*C7P}w=ptt{b=Q>UgypD2!z_FSz&MjGH%GRH2BS!$_YDq%wC_AmL+&HYF)Q6tG$mQuZFTg7ecA zJio|Io5Zu2%~>}cAx1(Mi3sz>64%s_BBhQzc%a!`G;Fs8FJ2_(_apaKC093VszO-k z#OZ8CHLuvTFz>Q;KP!afJ#`zXcUvyDo^LNZKKbGeAADfAUuN>eljWSQjXXN9D2?aN zx#Ira$kS(6oUH=uMrbwx7bCv&bjf3imYI0&t?rOqAW5d|Phv5ZAXVVS&6;nowp7a* zk(OnVSc&B-ME>HlD|Vgm2ao66In@+}A^E`d*7ModYq~b~n|C4REUaOXDA`**s?WaK z2hr8AdO2`Sj<#b9{JXw8Sgh&rdtpQ~dJkY&y!+tsG#hIKqk5P^`W*Z*9@9V5UKlH; ztgs>=J^#+|qm(|l#t2~zKT7Q@@h1@3v9h^+jCgyWiIN$-p5vqUiYO}sCBvBQEot4) znfJK}D_g|FJ@)Wa-x+WC8`7vu=(D4Mp8jH5n-h_4a;}>I03ZNKL_t)P`X255Gq9h_ z>GSXBQx1g2U^I;T3>EVTh0bj=1A!qnm+w#B8rN~0lp1Sz0Lrq;H8dQ0V{gyF^msjb z!6L(ZKXtzcXl;MYunqM7Z%tMrcObNx$sxs_EuiPf%44^WYsFrH4?**sdYmCFEyDQ% zK6-D)kAC!h%EdjBZz#m$+a0LLuHNwS)s}UDx$(?rmXb9q8+dR&$AyMn9hj{uYFAJe z5QlCBDG)*;ghZ1PS8LB-{{0tRtaCe8ZNcHt!4svR=^Fm%`}aw%Cb}Gp*xYPU$*^l2 zjfbi%sk_9#|K$ZfRS+CWR7MrX@rNJ*gJyeEGe0xjpOqPA(%Dmv36wSzWhO+Fq;eJ& zDz}zsJ%qrl%0+=n5~16XT9+A$=QE_xxpgbKIaczX7&0@nl0*z1lEHPFzyItd)uQC# z%3@TDo*8DPr6>%jg!3JVmME5IuUh{4lWR^E3qCy6d~{bRjpfw_w6WYjDR_8N@o=H} z-uFwse0s^tH!!OLmC+P43(B(IbX;6J{_eLI{Q9Zl#d?Pl`1<9J8xPhROiHYGfhTXa ztXn~hVb=v-UpL&;5gi4k7tn1vTfp7ZTtq5HgHgHfi-)H#8@_q!_=iv5&;(&-6%rgx zr*J+eB4}Ii?4sk_%Z7)imSvIQ%{SYQuP=nJt{k6Vv|M_HNy9rtmZ_p-qDcBc<&iK< z>?t{pE%QU+vEN1yU|5h@>f{v5BPU`IbSkA>Hv~ z!3#Kq>JE6cBzsITXNUIZVLWH{R{8+8z^-espGwN-clyPiiuxu4E#8Dsv zBRS+SkH=IudHnmanbzz~w{&RyBvNL@?XM*w^vziI=hnTKJC1vv_MtJ@;1!0RfHEuk zey02PHfDAwgqVY@v)6%_%^UQ`_jvyuix%)PNZ z@WGrqbokWr-s1;cyu9M|RbsiA;TlhQx4=7v3l1p*#oX}de94QO9apvI7vD6w<%71| z>{_lj9jC<%7c4iw*)g|~StWE%ak47-mp^)s)w$-~`xW=+k(4$hG`kv#xgvI+&%U|g zr+@c^$SIebNFx#5c373Ts6C|)bWve~M}p!vuWs0^9e?^yPI-E>=2u_tczzvmq7h>d zAJHP&15v|5>|MX1l3GL`q>S!`pS90K+<)dBSdldWom?|nI z39E7zS<(e61$6AP1t&s6^}?ZtMS7Jq#h=qeun+k5^m+EeYM(VWeXikrdkgi@!{{BA zBc=N`UCY#ynQlrH#uOuVK4?hky@8=mh=^dV%`H4(Y=U)MAwIqL{k9+H>GMwGGT-G{ z9vB#D(oAfkJC(})5(a^)L`^cTA~8jr_ai-ghU4C*QJLO%9*V(gH+>5BVfNZIPIcRS z?$7r&EI4=y2iF|lmqB?X#(naRL(DCsh(n&(zIJA4IT2i+KoqIw2{L9yPBiuhdrHd-lsF!n6 zTx1;=1DiJSvtNF}CttrLr~(ms>pYDLZDurgPZpfoj`!}CYQTGQ4v`;p|AMf8|7Cr7fl?2+?DW&QL80NeV({Oitp7sYPj_@t$ul;qKiThFlNQ zc7cl|32f%jmFG1>&=E$HRFH!S0C{Q?-(AO zS?--!p1pS5)SiT*uqAcdvYK0d^R(f`&VVi`m9S7TQ^`*kjL05~9VQhy6cBML3?^3H zu)vNN`!v8h-9L#SG4+%vl9^n4_6+fVNOVB9LNB?6#<|L#c`&9Y$;B zGsEe^uyp~Egf28H8rIzwUk5fFoURge*WqJ<4-H+H@LhxV4L*AQ@yjdz@v9ejDKOeX z^as6uqJl*sJYLPIw>71iar&sGGHd7(PAS$mYd-(B=C`lbtWM5&yfSRIEz8A{#$O+# zQ4evdskiv+&!2L3vgE`%V(1Vw$wahKnF!D&N(-cjN`gp0G&F6)$*jth8*QMla}qfX zT2%HnI@h3-;K`j4gAeFJ6Jv!Sgb3G{j@W6+`-(4~Y$=rDlh0rClOI3e@jV05;8f)9 z9pO*^`8_^(e1~6tvF6Wzd&y1R5u+gxa+5AV(EReN4JeH!)3j{b$kn>$;iDC)bCgxZ z?6g7FEp_c6l+0%xJ10av<7`>+-~4lnfAgIG@xOk=55L#&|NPY(Uf-+d@RL7ym%Gb`d*>DJKhQkC7QXnZ z!?}<P;=B6pDRTlOB)R?=Nb?20U(YJf`hD^{yr%Y+B*vmE-yAEf?1<+eYC7 z*wT{d1A#q7Nbc9sw;t6pDuzMm9Yb`}ZLpw*Z6A+d6d==|K}+q0+8$0i7FgdU(3I$d z@g8tw>D{@hr!m4q3<7>Q-`lX`^t#i+x!b;f`}+I)p9|guALml9*$-E8!_0LMb z4z%pY<+f`MzsF9KGD&~V2Vk{uvM70Ys`>b%chR~+cQq~;)Xd_WK(oH!YMrQ^q0}uQ zX--PZc6Y_@I6uDKfPOB^L1Bku?1J(+mFQAHSxFIW1rJBzjY32~XnjiDgx4 zZd#8Efy-^prYrdJ$t5>!$D519pZ()CjS_zU!Hku4pe;|XTH4;58H}a@mYgcrT?>*N zAHRDq$Hf*W7^5HsQdB6dvBu*38rL;Q@>pF`6&3T@jKb7FmzyT}K+^@<+V_eo_2+W< zCLtJ{52U0CDYD*neDbZwnaHodZ29JiF6)x1DOO`yO<&q?8U_o1b2 zJqt6V^Nx%4mWy2?D&c19`05SRjmIKHmpEBeSQGJ1sH&3LOmlWx@#s#)2k)M8cPTuW z=TzhErsl(U?$f^6@_+pF38$wOKl_`fsA|Eh>kZd8j=~E6;t%iBrNl3O`+}46Q_k<5 z(6t?#tD0vo*L?kK$FtX-7wd+mZTR6w4>7Uf-~Y##yjWXY)A1jEdCBLmIvVeCQModN zP;;}6JUZ9>tAF|~zxTl@A3w1C;fLo)ZZ^;>56JZwqd*cwG>Gb5zkrDD1A)?~(*@EP zOwCwzu12O85;;d+rGesv-s(_${Ik!^PJKi#N#+C^gn*I(hu5Q^6ykV3QY0nAE|h%s zv?Zc2T5=FsD-00{(B3qo)vt|VIkQ9)sGUM3&mgNtr8N}}A`HDa(hz?b1Tpj^fO`dz zM^BGwxiN+;a71!cX$*(FU4S?Uz3I7nsRhIX2uO}_`{BGf?g7z7lu<-U#GrBtsmhIV z=mmF}cpZCzxxb$&J^b5(^-#fmr?Ty>>tk-Np)&q(=Qy@b&H?AWM>O2Sw0C(H-KpQl zlUvQJQIN;9XAzis!vhoZvEsPR^P0|ge*gNI4#V-0zC*}m2_QXCQ^WUQ^p z7uZv+M6w~05R&feLS&fR2%?E?hqoQZtk9JvDT|25T1{yqRb|jJN9&UNcM5j9SG?$I ztSQh*WeRjMqpc5$WF22Wf5qQ?`jls$-ZDy|jAB{j-rJj`_}kB)61?RP z9vgo02TK|>KmF-vyy*%a-&>K0Jh|RsixnC4GoT#SY8JCuZlBuE?G)Di>gj8K@bN=F ze0VoQQ8rt^Ax0vGbr(=l5o3+-3@Vf)nURzwrGgX#9W_yM!Eb6>T$4Gme8{AOA?5My zf=7u)izS4}tLrUq)*f4Ge(>QPVi2@Z{O0q9lM}_`cjwTpxoQ-@`n=}(lWX34Sn{X; z@-d4UT-|v7>esLN>ECv2w>6#9xFo#VCW<1kv<2&}qtJ@W%QbekQt|H#dR8 zIv(G#2#%XeI4w%P|6a@08eUu^9y};`{{+q!4^g(@^nQi=O-(HF%k4>&5^!;b^O>o6 zee;Ts-(Pa~qk@Zz4ZNdsA)&}V$f+ge;I$7V6$qlyVsepNRA@YE$i^Y!mEdB)8jBB} z9Kg;givt?gXBGB|PlANLaaDp8a|c8E#XFF<4w)z+2I#XV2B9HhNC|xEUl2TrKwp$V zl7gr#B6$G_IXid@?IfVe_tb?tkQ>@D(sK2r}~#fT5NhqG3h_X;GF+8x0%$JZRT?~0!s z?|+;sJsJzCpLfX+){sdy0B{3+jEG>Y$tlPTrZmEz$KF}~Y+q%sM8=-?*%M2B?1ZssbnrSxFRDK# z^mE^K9igl7U5#Fx5H)mdz-UF=Id;2-7%DuD6eCs~^9stDq1koVRaUBPqnHLgunM6uvSYvp;Sre1W zO|G!$QlZ5orlnde&}ATYEg>Y9vr_^s-nE&}sr6$vQtk%=iEO|Gm!a*=wqe^QB8puX z_~P3)*l>#Tj`FPF#bw8z|Mi!w76sqF?6}?-?%yr>!yiB5!I}R5D0`D8X_Dkj@3GC@ zW6AAXYVWG9-T)8;hy!ORLYd24_`Bvm@jxDUp-?yi8E`mY1KnMiM%VuB`Q;iBzSyEX zn0dHIWL8t?A}N^}i@Te-nJ%xYzDgW6te$HA{oj4Y-~aw!`Q(EopMSXKKmNlFDni@U zES9-RQ=eej)VSK=`;M*^R0^Cf3=6emNIfwuSudWjz3VYL(zuS7@4@RemzOtmUZZuu zG4S;_KeD+Oo~?zu_KLUf6;DU*v+%w!?@}*EJ#LxYd)>%oe=cHEgzymoF2q@9%hX2R0Qaz!b|?(1@~yd@*9Q zMI{5GK{QcWj5GL{gPt0NR*BdLoH032W`GniDHich`2TZ^_di{8vgotmnjjISKqtW`AthCkBQ#2~ zhZj@!?u_9lmDf)xjQRbH$7B6rj_X~fK=onPR#tj>Y~H8++{&n!hSkE*wgYP4dwhyF&6V2-rG(P+WPV>iR#bt{1O$U05{BHDTxrR5A(R%qqKH9ZmCiqvW3{labY(|1?AyYgTx`x=#T9Fj=NqO_t`k)N$=bV&FlRJwws7}Onq_Koc zPcBaQ`O_M!3>#JBjiQe^+enl~C533krfv5{f%ADz2wK&=zv=n$^(E^sF9_WZi36&@ zpDKE+b|_cnW^YQPbp^t{Z@iBg?jq&jejklooSS=o{zb(XpDs`_^5$)z?_cw8|N4~OCh%?}{NW$2 zIBgVh`vb48J3<6QDltXFQp2i(-~8qmY~H=#<=Z>{^mU|dJVS6;Yf4&ON*H5VHKx=F zfN=_E7A%@feUMU4XRT^oTyqDauvX!W@I3+2r&mcwVr~;)|lK5 z6>!estmb@eI5}DDgVBkc-nwr9MU6HVtrJQmlu>kj&rqm1LJ)@CKvUK9!Snk+z2e2& zZnC%$bjm%0MTA5o*Hr)XaU2U6UmKy75vCbG1Gy)}*mrxRLzy712|jsPR;!#i_ zSYU4q<-d=s+jGS;=n`8KQgZa2f}k2v6sRZih<1azzq*yI2CzZkn#iD^Ty7OFUbiSL%ckd} z^95EsRurd|VyHBC?{lX>Wi=2pJgF645_XnA0Z@x2Ft8aSzx~&@{Ozy4WINoUY(Nc; zB$^Nt#`jluvoDEY1wKSDLTBxnq|i z%O(8!>5}CMRBnZOu|o%+dw~#HDxtCsDhOZw@jK3I!|B@a@fVigy$Iai?Q%@XXv+{i z%T>)^{rn;?d}}~Qs>KDBRn$(Qb%TyQ5<9A@%6)T{kW|D0S_|k3qbycCk{?hifRd6G z5m7qjR*7*W+Dl04u*R}nt#GEopa?0uoW@v^kL-54lC7lBIw5g~79oa6*GFEzdPD6h zY~zp^I9;70213{Ji;vEE`SwTha?J}_3=lOapF=^VxBAp;WK<{*;}eGvj1;V%y#UYe z=btgwu$LcWb+J}^>vJ!p^!|zk;^OF#BjdLt&jAH=`v=jybDUhhjzPqH-iCVwK&00A#q^0YtdDOR=MYZQIX}cLd24E zDlThc=zZq9uN#c3P|?u)fw&!TE)v3)lp>4On(nTry>9_n#8b3g5>h0IFVqM*UGDVk z4BrhHThVo%b_fhHa`oyh7f+s%`zK|%Ok0Df+_XkWNYbE2d^=YqCkY2o)m}L4A&%+) zhcHdveq#;B_`fQ`D#cvszRyf57V4Y+-ShZ!SjTg$Fpj;Ic_z_gp3L#wrBRU<0B>ydt5o(fC5&*BE?#Op66`syGAc`@ zCV@Whl4-Qr_ac$j^W^l5^>WSaX2akkAw`t7!00_r^Y+;DJpQe1u8+#fUPDZ?d1L=< zDfct>%V7qojpqv~VM-|d_&Z}fa2N)eyoTNnGZg3bB#gI@IQp_|a%Ar)^>UKl& ziu2_OH%q~HJ$Lszj80$_oBR8m*`#ez;*;`FD#J<6DlCbmgO0$*qPe6R5nFHpLN z;CXW5_~h9so35i9BH{y9dyF&0kO(S!n`8D`rWwi42_Q)<9=ah#uqLPZ|EJ%6%?BSm zr?Q$D43)EJn{akTZJ>4v*PNl%l11Y|HYh8YWblJ0Nk=Z0sWLpK4OW&IEszA8s`3mI zx(Lmrzz+di)eOp_e8d@{t_?mYw5`}~VQE!nr%ehYJ3?~&>4!URcLAc}%v%2R;~oF= z|9Q<9ADwe`=g~Hy7ZL9RH@kuBo#M6~*tR`Q)$nir@=Lz>Nb~Hh!PpgbRTHD&`ZZ6U zfJ;3-3e~zn^)0;@+60$6vh5?cKkQifo>KxJe|$n8HUIR@JHCGtIIS(MA6P9MPnM3; zlM1H-pMSV!xvJR88`?hipSj*-=Ou^B$n2r3LyZwv)3Gqn8POXg0y3=8O3U`z!=ZA?U>SpAD_$lIL7mj zp4te(?mzRuTN~pU8b!)I?$wMMMyC20M)*qY%jz<`QpgAMc`PXzlydZ;!^JIWuo&$S z5t`)^>uOX;XytOoo33cwnoZZDlV`D9{NuDegC9$q8r;VkK z9?nkbFR!`1+;W#HQc65oX+D3pgc#Vi12H6?oh);vV^p;L4s?#a897|%<9Zy?h{=G- z^YiY?^Dkfj$X|c?45u^RpY(up3a1mIa!13v>n*$U#A=<5!6c}%j#r7@EzytnvX7Ok|e%;9chCQf@OO@u-o-KTd#<`=f~F- zmp8EKA`0m5dz3rp$LlS+&Qz3D@GMpiL6g#sx~Xu{(8wuPN2)pi!9YI0@cj8{PNI$; z9dZJ|X4|q@!Sg4Y`;B3zTRu2#*crGD14cR4i;C;J9bdhH-QVPpIU9|001BWNkl&x3n&84r}KyRc?i-s|HfSYJ*P!Z5`O$_+CWt$sz_!#8gs|L1T0^ZvVW6 zXYdgm28oZMj^p^nF$D5hLn=6|naGgHjQ)P6IQGH+BjGkrf1JNJ-b2o@pJlnEh!l%n zYlDfIs#KkAwL0`QE4ehMd8d zL@|hBxZAR*EvrRM*L#LBW9w*)kHLof`*}pEJW#fJtapjCbLKUk4VI!UM~lDQ_ozU} z8W}}VLK=c3c5Ps_62PKpNMea8VroaTIAPPapd7BL396%6e#nsCaB;S#UaZh0w6)xA z@43G1@sc4#GvgD3shxtvz@k}mzw^j0^5Q=7d|^31X?XGShR;7Z;mN6CbKinkDs32) zATe>f*|Cj=9)mK{p6&R*QWG^!j1e@*5cu6!Kk}Pje1WN3h=Nv@+Evsh(bP3c z3yWsJ4*{jl5qc!;P?BM)6eG@n#uL+kC|iJfi5^!>%d7>qsSR?r_KVA z)(6g4D_&mT6TD~J4b(33>tB7!>1jvX=GvF4%B_IE`gY*Qmo2MiMH*TzYD18SJ*jb> zWn~>ro%rH|6S~fG-*rex{L8oRd2?%s!yTJOaLob}g%g!nF4pXJLSqJ2mE*hyr@%Tz zRY#VMC4`>y#_`FgPxJh56h-sc&H%e*)2jkQe{9>uKr=>)gJ%PU&zuo9DxV$pa-Z zdKi2Dv;z4^PSB7sgDOd>?a0t*@iX%0Mx`ku-FseuV@zf&iX07%SRl7eyX6CO!Qdlx zV=*@7z%QB*dO{yCcEGBdKGcZ!h(6)s=?WpRw4k)%_4}6Z-`wVuX8}YPZxCYedA%oL zRadNQNAihQU@5}=Zp%&A<0bIP**Q;7H2?S8TUNE@bYWK_?yl&iru7*T7s=ki z9>i44$Q4Z~B^W);vCwzm@@nAw7w`D;)3aPGlQMMYsvMg&O8E4%CBe6N86fPaO5!L< z;k$uqk-5u^(S)E83}J{!R45lv$+O$GIBPI{;@Q&jtIt-sirZSOg7;tFaM!oQWYH#a zvH~R@AB0VEY`TUh9lqO9H4Pe-Y4=slvOeJ#AFufAX~X@lrTylP>#bumXzF@R6?@K> z6_u%}R~NMHdz7-ol#Sje&(C@BpRag*4Ie){rLKES1=p7zV=L;l<%{PPzxvqFww{~Y zdv31Ypku;0ll#d?A|zpH6SX~|#&WT4aLOT}$4TPJ$r)`oP+Or^Sr`27+c#WoYgVT# z8YSGfJu&p8UNEbs`VSG0LbIqeC#yQA<@z2K1y>m=3zY+BGNiIvEU_jRk@$9t7NIIU z`$ii`x%jVgmZn}%RV$JRbyd^%ed#1tEM6iZ`rN2Q308xx4X)A%9+XEbkFoiEEdxX$ z1PDH2s7Nt_c69xK)1YF=xN8W6)DuJCyO-B^F}bsru{djpA>s!`Ql)sUP=Aahgriaz zEyc-F8eco~C?a|osTYl}Z ze|s8(&iPAutcnA;N*hhe+O<5-sh7Ln7pzVY%l!HWP-giV706z{Fg=SsptvXaEKp<| zNij#`;#g6a=T=hHm&+yVM)RvLp0Qdls1|FKTM@JZRns`f&CL~E&@^>LAfmJ<#4So$ zmg@^d39%2ncyq(w|I>GT`|>?Q%2XdZX{3zJl)8_zMa74wD|8yLDC(-_q}GI_=%oU& zTwY!C-Db!0XQ$M4!;9-3DHTG)nerItN2%gz<)>4OG;(Aj zX~59kZ~5@aGnxuw^eh^SbpoNI?^~Xo8jK254TSbRaq#rJjyQC=w>KUUjkN|*njz$L zT1f$863ItiUiQ4X)mZKL^oeENL@rJoE9ZFeddENh;fhVFPzIi!)coCFeZZ>n=r(eF zx5Kw^exW#f@|+)je1|BF7st!@TW;=J`aZDRbttvu_HLk0J(W=`tfP;fzy0MW{OruI zJ~^k~U1OceF{G$C72(sLty!EYF0U>ztmwOn%5A7j&;8w&4^Nl;>a!)!o?9%2x>K@nnLVI7r*XCF9D7CV+rBBl+Cg`uhfDQum?jmE2*rZMOgSzBmB z=`my-c5lU!VIiv&e#rG3t~MCS^?91yTRV~i>5IxTbS+1m86bcvIF`YPys@O8qtANIJIGOb2t*r~Q)-1LXS zRM_L)GXXR|4h!T;kaZ?Rjs^5_s_0`%WPY7}wg3JeW_R}pL{os2>_wQuQTG4gfy{;9 z{CtxV85Qc`wdcR5&y~0VhjTiPZHis}^c>9xItuym4n{#QlAmWvlR>c0U>mu*4vd3` zFy-+$=JWnof#O{8{8Ux{p%NKMKLIo`2|0f*Q`WmG2b8Tl#c2q;SLBrTtQ-vns}nIf z>Smo&+q;$@et668zkbE5_gg|NcFHUfLy-vHvsx}VT{vn3##Y?k?a(pe#1fN5g}_IR z zC~djlwzOT#qRDcqvN^NLHZ@9He2m$-i3Y=hw%w9KNjR~NSXu+ep+`A`);U?orykP_ zeo$y-X{uafqie^#Ph5V#;p%3`U9Y(fj$jo!4y+qXZ9K|Y?!@uC7aQJf6@U8r8e<2x zgGPM9OC*|#SDS(R?|1y+`z`9o4XB0N=1h;H1!f?as~Y`c)t1ZJwEB&_d{u%%@9L~8jMW2_%oq&EGWhx z_FM=Y3*tk;a46{JJXQ1Wj4u1JV4Mq>Ii1HbG2b!NvcHewNr;RYJrgWYw`Q^t{ zwWC=qa8~17B6`oT*>L&pikktF4_K`->uk~_rE>zycEkVv4}ajr)s7GgOr~`<79^r| zHm(*;&3e(WtR2Jlp7YZa2JZ<;AVKFNPfp>lzF1*J^Y%J&+rr1spYi2q=R7&9SlC2k zg;&=bUR?+Dj1hZW7iD?E9`>B5b;iS|9#A+VoUIjg4V7~&DvQ$rry#}1#fhPExfi`3 zcHD0~n^v$@jk7gS6Qf}Wo*`tIPAQFYHOd(JP8dA&eaC5)dv(0LyyyFOfgf)qD}VuF z9571pH$Q*MiM?ajM!tJ}%@03Q`n@orQ-~IZG^Lodt%X@x&x8>sE0wbQ-bx31S+Tri+dA@}6^O|3MrnufXY7(op zI42%eOaJr>Sh@d|eZLi?zaPU6a~@xV>fDcHDLvu{j)}jp1r@ z&2DHhqIr6@X1z3s){q9YHhgfp!dQb%DpET|9|SSEooALD8fzstJy9C1auK1`qcAck zS5Y~kX{y|FSSdo^;cCZfwFXgz-XvnQq7MmW8zP$3qCq6!Y=tro*DUcvi_$`4HO5t$ zqa`#fPEH{8MBkB;Mzm!Jlv;+Gq!f$g0WoJ#2$3lVpWIJbVz%&-#B6~b z355AVPExW&kZcWz>>-IgJF%Ku=%Zj5Q)LeYWPcVlyT?%g z?FH)I{LZjqlJr0c>=oK{g`yN5DznGfd`IOomZ2T83Xe50#mAg+Q%%Zm9M7SGd!P_u z4`I!{#d*MegzidS7h{YfAEnq+?EbS9D?f%*Xz??d;Gvf^J=Z)R4+H$iN_j6JM`+2{>Z(tSdzu43ZR8r8qrXVwxrY&6f-Aeam+@8_c(X zfAi~SNa(3jjl%O(+*9<8N-kg+BlpOK6qwuO~s41E%!d5E6bak zJCf9NL(Z(KjfNPxzuyoqYHr)afBLHBhj$Iy-m{60UIc?+B%+NW_<`EleNlBxnwK{N zyC^8Npzq+}TpsAPGRbohxhK7$8P{{?}bdWSRy8&x2 z==#WuH?Mj5Zp(ew@yibvG_}R(HQg@p(PtlVy&3rC$9tZiulV_M%hk=6>usXD32bj$ zR_hf>JB)#|rKV~O{Y}6+jk69LEukBze8h?uDg#zItZH)hg%Pw7Dh=WXjH|PIYfIqP zfU#M~VhnwZIIT$`;=7I%2JB*uwHAXxB^bhvsK73AaA|BbMY{&Ul0`I&`W?1Tcb97KO%D4&!ug=3^95%GOn?v;xgJ=U7S? zszaeGWpj<<6s5BDHNAqwQQ8+lnIrs@Fp-g>gS}9NLoa4tOm{4Z<^ppr{`Bl~$6nG1 z!|lhg7k;^)!u~#I=Rbzs#&b-{gV{JH!8&emV+=)3?=Lr3IL6pL*HxLYgX=zo(GHK} zEU#lrUq7NWwMe$6_X;TO>kmZO^S&uvTFi<843bh7yGkF-uiBf+99(Pu`xs7B1urv3 z@0AB4CFwvW?zJ(~Z9ZrvAiAXf3aFGb=t3fI<%nUo^>oUvC~O{*Jx^gKJMdGUTrN{*(6_g5Q! zczMUCpRD-nUw^{=KYqu}z3}z7@A->QPwB%AdVS98_ia&Sl(=V{p1EX$4}mCQzdjC> zcS>jl5tSQKS%)>2n_c3z70xf<TrG)$)mD>K z%eIS%7V0WjvWJ*M0ewt(@kkP^wTM<&6KRytEGoLbic(`t>6QvSq>mWBt}nC6;W6G?7X3_G=r}B&F2B793jBn)hYM81O}d-7(~P7-gEJ! z!>c7`J8*smUp$46PnKM)Be%X{chRujw%oTpJ~r$&j@#H{b)YtuwhaV7AllKKH`wJu zST8|i*~J!XmY{@TXo+3I)rplc7@b*l{V*^PF@wgr1xg%&T-Oo&fNg3bLZ7m0X(S*a z=J-nOvS1Af?}u#dFkqbHcDKn5Ta=@&R~dd%8dI(ClDNO$K?uYs$gX8&Dx9_S!Q-^a z7F87L#*)fnYBw9I)smP(w)jRNJK_o|TRs_rIPyT^RKPZ}w@w*YxrXGSus()7a!g_T ze=hish3B6WqQ@5bJnL!lGz#0T%u`@x5}*&VpdP>8Trg*$|Ik~RU;EK}IXd5=FrMaN zo+dn1!#|`1IlkucoE-CT9S=m}AT?^7{(l>0Llr8-mIkB)mk zX~Yl@AWU7{4>js|rRQHpM9P};m|}EfHe(CQ0T6~3Z57sm>~ealC=V)4N7^PuX;yu)QYT zwEXPp8E-cpvpB`7C4JoS`fkVFwnwWf$DBkzFmk4GPU-7&MI2Kq1;g1(w^c)r30EtaX`3%LJ6k zi8b3zBzaZjh9-E=uJ5_sc5HV&o;vrYPd>8+s|YHV7^z@%X1RzlTUjBc4Cfimwu|(! zr|kp({B_IC-S_O;9^Duk4MWoGc80ow)oF`WrG5)ItrLsN(Nw~^Q7qP{G}VH>ZK<6D z)v^9yP2USw+m?3lbiL!=*Vu*Q>1XGhuNtnlcSPwqe_pYQ1KXuxbGP7WJmt1iym@_( z`tS_pcC>B8ngyPS(-jNR*!zto4uQ%>s8;v@akrzc3JWiq;3I-yO?I}8vyeQY-=Sg! z+7gt`6`V1mRAxaHKj73rj0(|-8k--UL}c(dlk>*IFi=^CQHkgiq3dvqDs%V%A_KM2 z7`?>Su-RNADf4et3xhS5R5-XaJuxNjZd$J1U9x_9j_6#YA~Is)8qq0}NS2JLgUlg# zRG1x*A?76VjHB-L#7sDku>+;YHxGo|)cayCaE{^&ovl zx##9e=^(4?`1%ucGjIB&;1SNS$2@}h^$*j09|qcw8#~RD7!Cu=kH-w==N>;d38+bd zlxdpZ_@q>3@6GFW^1Y=41LOE!9=o3jW@G9=IGZaqKhLQAXZJBSBg@Rz0$P!jX0z)F zQB%7bB||303eXB+>!~Z7QU+NiZtU-H0|Q zr3ulO2b+tpJ7qHk5d+$2u3x?5cRxgwu1R{p#uY&i2pX+=>Xex@G6Q#_!(p_+kT53U z>}wE3@G*CCYy@pIz5}Z?mCNku)>SAAq9Z8^p;rt;=8#LGFt$`l=n88Fd=P$jd55x~ zl40lvtaBLa5Ua4yPT|>U#>Zb=ZP;xCx>5)Wq87v?e9G>db3!5@eV}$4r!A=!oKpph zHb8DQ8AFF6;F_FY-iCl8QM(FNDNKT;b!e5?^@*ysXq9LxLmWV*h^WlF;*zH5XpgE;beJ2yX#3hdmu&|B>57TAwyam7W2tou*@tol>?$_ zpOPvE4TTPI^CH9wrn4_Y;COS)J%sT*b72XGR&${?DVFH|9>;qIv@r+wJZ;YDn#Tg~ zr@Bc_e^0`9{`#?3FnJoIr9O^NJ-E)X7nH|11*U(h24w#Cr~pUhIw>6Xa9w^~4$jR? zSY;<*s>YWzrTXsUBeOup%+Wl!|8actm`+L=HXEPaJgzdvyvAoI#o#zrM570op)6In z%_{18fvuKkRimuJAUGRYtrMGWi&mPL0wE>7dp+>o8$qN&r2(6_20l^Jb*HrFTY3+@=TG?iAGcJx=ILqT?fWgp zR;c~ze;6x*T%V!Mo(S$}twE5$vRNTX=-Za$J>9N_5E){IXme}ih;t_Mp{d;2vMjFh z%aWweMV^>U6e$WLrtq_sXKf{?L90x8q(a1uk48fzW&s)vPU-A*5DIx}Mkdk-gBDoW zT9=Cuz0a|^G+<3t>dz8M3`*Bn<48(?p3M2DGiRTnRLupT6VW8m3_~ik>XtTX zHk*iI>>nSo-j?o+o)EHep`yW5S#F1N4H>eMR7p_11{J{PL=Iy>lq32~l&h1*e((%_ z@nOTw*7M!_#HR0I(Cqq%wZfup_dGsT<#5_S6ntUg?LsPp%dWOk7U!U;6)I`oy-8@N zah0V{iAr0%1%>Bwu+&wcHbUs?!V%?2DG_`wFmx^ph}t=pO--dWo?OW1Y@+LPk(O2( zKX_0TNTRMB&aOzi9YN({prMPoRj7j8pvoYs&4NMcLkg2o5*DdpoGAs3OhtK0&rqro zFyDtpgdm~tS;-z}o^Otaf@t;{Sr96dGjg&PDw#c{YvA~~(Y>Y!#mO5OYg%N#m=8DS z!wjxtPhj*o_b8=uEJ~G%@7c{w=P8xz zGNvypjB5x!2gsu_G>ZlI{RU$jjB$MUBye*BDI};YDRh`5Xk+oQ%LZ9tolq*X>?&21 zrpm0rN(@R1F?w!#2X~66r=Dayez4S)BX&I(7mm&-c7EW4Cr{}^;*T$TY#GUo@A>N6 zEh90IU{IxJ&OGr!6{hVNMsIXnGsRF!5a@YQpO&UvhQ4hPVveQ83>&4=9y#_ACAqpj zbCr=<#>zOga(i<~sVsD}U@Z`;WKAMbBV-0|bm)enmjeAE@q4*z-sl1+y z(V4SQGW)m~mHRzO*@G%UDlE|nU?_y2<9-;qQRMEi? zlLL;A`C>ozY95PwjK>2K$258lxj=A?X&jH|*wdP)nC5;RQ{3ZtjK@&R7{fWd$C91F z!&(}(Ul>1qpbc0JMnwkSBH}UD&z9jtDsA;qy;NYiTSbRZ3%&V6~xMo^o|_N8f2&<1ku~ly6!@rtXe;1Ta1iHN^}c z*5;_aN169YUN=c36Js7d>oK!${(R=o^VpDi_&oFLV~YwITTDwnx3&4)A%mX@ky$2OqWDQAOL6oWWn$9MN@vBRK%t2x z4a8oYI!GNCXEjz2+_gRCKJnzlv2=zug0z9tRfVKP6&#zZ0i`snYDJ$CL+}tZehByg zzP4DKxo1M`@%@^so0dgmSv3i(AVzq)Ziu~t6baiM*43C`Sk(C;E+VMtS)3(eg3Wc! z?G?nBTjZvgxZiGZRYTnr&aIfak3z_4XZ?_J45lp97$cR*yjN48Ts?>%%)8cQtAYLh zqgFnEWAr2wl*&{o`5X#T$-d#CFq$vuLzFA0QRe$r*>#->v&Uj4KPCL<0{N$}|M+n% z%*SBoycXinn<|!?j9y9nNufKAd-Oc!UdsIb$Lr0X$?<3R-%*r!bV4axq{B~->(Mb| zrhXlJkK=I#_Sl&6rA5o(001BWNkl?oG0z)K-ruRZj8MaPIWtxvi43zA>m%Wn`))vO!(PLG)&&rrsnbfG@CNF)D3H+I7 zejIaqjIZwadl?Bx6tNDEXDEvvEiAPIhS2FBFFb7 zhiUd}E!!x?_$u;H=3`Kkfv5`Yeo6_eB!|-$wc*LBSZIaB`w>w$4%iWd$jF z8%ZQ92%QS&P)^nC`wT@`Cp^7q7+ObY1#K0deR9HTRg>ZtV;3YZESkX3YND!1vZiZ2 z-ba!aRtv{MU{NnY3w|)%-w&*Rv*7B#wzRF`R9B!KNlJh@k3YvMwBh#Vj;>E&D?;!k zAT@2;X+dR+XM7mxXwi%=^&CqdQv%g!2J9EqlJOymMhbc|bD@=MiN)zh*ApQ>7Aly8iSG z<^m$m+rd0Nn1|7Irx>HUxcv_U^2eL&;JqJbH6 zaxh-vfUR61LmaX8Os)s)lcmOzKh)%n9JsyW_LG)pbk4F`9)^qpjY5wPIu%buU<{;| za0M{6XH_Z(!9(!-Yo;`VXgFk>JzmK3#XDLpT4z`&uiv~GV)SU8txnWzag2*v&6VR^ zFi)Quy@AImU&ci~ZNjd9>{2-pqmLvL9xeEYKNmlN7Q|0~ucza*#A77N&|*kIf%lkZi8p7|y1_<6^4BDFN>#70`WkIIq8R)TSg4+b17or} zK;_IFR8BaNWYBp0AW)gSE(s+rp;0o>de677A~*lbS6r+$A3U?jNrP$)@%jd;hI(O; z80f1dXCKy_Sa{b7!zkR!z8VGle7)uPMESoo7xQs6jddx|RfviNbZ)&%BnFFdo){si zc#u&z-w$cDDpih$7_CWh+E2OfyA*4ER4{4sj7B5ik-Z1mYYrs>uTX`8UtvqD=G@O_ zKg6;e%00zVX)6*5t?i?2405oaX}tm|YUWFKls#n?=74zFCq^4WnswgPYCqR|PXma` zpvPigiqTQ#ZS)cq#T(9cckYRv$CJ~)!jR~aFZt;TBLP=Utu>XHT$q=HZZ}Zb8YLN4 zQmV#>fG4n!hE#&S*5*ofMJ}xIVWdsS^vNOQiLn;6%00|e7;>tuPH3;_Lqw9}ZZqJj zgx(lJudy!U)peb-G<+9};0ze6(8di9rr_6QLuXIS7DX7CSF(@ip2KO! zUc&Kw9@D@S^EH1bf02o5r9cQ|4|LB~pfbFeV%`rAlx-0@(@$mzh~;-;!qex_+jxK3 z0~%q=EYPClCRp9JEnZ7PnZ#~)OS7m+p(TW#=mnxhqe;?ZP455D5x$@rY z2JJu(0kMW43atb!x%}_G4Ja10Ubx&OUS4)6JMiozaZV(P;+v~`{^E->KL3j^S)SGO zcQ5$*UBs%yFq@R)^{KUnB>T0ySH81nIIb0A48t(6*(I8KNk|?kTzkjse}BbC_Rwe~ z&Aq*m`FOq`j2UBnsd&kU=N^xd$8JO?tk$^>O+r})B@b)9JdXD5I2X>9`koSRJy=hN zNZ2DWopOx(pnUDvBbw%8@?1n@mY5^^B$&~do}YIQ;p^Ox&!#vQYzwHEi-nXWNiOj&H>6JXlESnaqQrD5sz@zF^lcE_@?_Q=bN?m9p`sH z7Ra6xhM00IQ@v+Qemu?hKv~VapPxMD!bHaNj`vvRwL~-uqD7j9K&eE167^X&MQiBEznOn6S1XL`zejVO0%jhazH>!dT4^1IjG0&U0=T zT&aLXScs-JhGo4V4hdNbw_Qt8P#MR@8@wbm*{bgPf#f3#SCK4iC4sNlM9U`^3x4(a z8vGq6P2x}g_*-7Inw4GfW(b6$5M)2@8H|$>DaHdx87P$a)0`-k*$&3P|M0J``HL@~ zArgo>(<{xN`5`p+h{5n+O$)-9Ry}@hWCSjqL-z*X!{m#+v+|x9JuOvegYur&50uAv zFJrOp_*w`7=iI&-+WZ)em&sXvn8b4M`6CqIc)#c|2&8gWCn$6xw-Q%54Ot)TuT+v^ z)ZU|4#-LMa4B?zXshm4J_VZ4XD=HB~jJb!gv6>KkrgJYn%A0zP(G^`6>DovLhUgW> z*gbZusUS8)@AlS}LJ>nQ`S04m&_lZwhCY!(mcThjye6g0)nhdn$&9_rm7{JJ7^~6d z|K;pWn`Ft3Grh;p5)rx7cDL@^8yaX5AV5mu(8gpMYHTDKe}X>g*N$dvWU`S&3M9n= z34$Qd-N5bJcdaEeBjPNs4=1+Fs&2{@ZPj%vmsrl?%j@p1XHpJWXQ-;ug)D1A8DW)K z7@!$ri&AnnGtw)ZTCMjd=r|>G`Mz^*vW!)gnBu^_GjE!?jqLptT6nl7<8%Qm>mHWp zc!;CQnB#?0KEH5x7vG;Z6C4Y`QPC_$LG^oomgBSBAm#Ts_KHYC_1I;fG1ekXM{4h- z=XSb@$JdwM)KVBP&wp%bPPo7XTaIIN9CMIdpmA z)Ov{9ZP}>pbX|^Xe7uL8m62FegwhgtTC4NT&)+}xa>rgp;~vqhkjJ>5na*AIc0#FUKzD)0m1PsyG2+ zs!{1^Dg!uDgcLIB1(lwhELIK4Mg(P5)#MbZYe(!OZ5vCIDU%B}CyHX}4{&xaXe`#F z4q7WFA-00C8COMeR?g2nVtP{V$P8FL3RNbA_n;MB3x{w=s)U#znKQ%(BpE_$u)ar) z#h40Bg4ICRzrh(_7=%s6Y9bF*0;m=(E2A6waGLA#^>G6%7s5z6F)p+*<}vz$V*s`& z>yp#IgmK1YQed*<+J({jN+}Mn4ZKQa85}K|`)+DcBG#7kmN@AQgPp=UBfIewUlbOY z^{lAI?=3CE{hxjIkmVu?4~@;<-r;J+9UQq0bRkmL6{hw4_@~eL=Xck9 z_50UsYs1Pak1n^YE>>J0Zuw9D`#+Jgup=P0!UQE5i)$R`Rbbb(yxlu~@VMc#M>V1E z`SK?6H~-jjxcLT~J3e`G!O#BqBT_u@^S{34H%a?cEVBpt=)=CwI?x)cyC5Yw;@iWd>5 zbsj@LNtnnO9bn*Lk7Xb+l06CxDYZr@hPDW$&P=Cs94W9Pum53|ie+J{z*K`awn0{A zg|v*DOy?QBgmLZb;3;V?tQT)3}G2~*! z%Mc(DhD~ZQrf^aXP#;a@AZCaO8G1%2N>vphTGv(S>W3xA1R8MO4#Kl!dn7HN_0|;j z1Y_t!iL0bg0`|sP4s9ex#ricOnZ8r5Ukk6_C2(hm^Vpm*Cb6n2`aUAgqA?B+n?XG2 z5b)GdoE%&AqpP}vJ0?Z2nAmZWMj?8-P({q(esa(1SPIJGmb*pKlrrMzI>9G%{AFGo z#}>sTfFAIk#>F}B-@$}F1yh&LCmcfxi*qg){HZ&N@WKee!yY`OZtGnBuN&wKyc%g>#7X-AgXeW+x4z2OQ+a}VPTFGphb{q8?^*>XWM zDisk&7dkfUnwTQaI1Y!vs;bI;IHk4@Yb=gT9TWfV&;F1vKe^=Ve>hO-p1=4vkNNPt z;hUQkU%%-1U;p|Wx>ODI6$NQ%v`}5_T4BBNoHvG*h011r@@$PFT&x;Qwj6dl{`Tkp z1ldAfVch{^({eDlq>!~DVk~MD>k9dt5yd-?60nX^tT$9kmVzWD#W=Le^~4Zy-VGfF zK?l}aq#=ZU;AANZO)w<&7%Q~h9#=P9K3-#A?GX!E12JWG*Kb&@FWK)8RCVNHRb#AW zH&7bnBn&MlFhCaQ`~GMGmQ~HC?p~Sj;~wUxKcmnx#!Ya`a>7m*`OI~+#D+%CWuEML zVH`tJWAJWLiSm%>IbL`V$^3f|*2#HJ&w4sGr{3B7nD)>pQi|P8oO0ERN}w zW>Q7VO|(=X_c!ISB0W~Juq>z=y(VKuPcTjQIF7}=c|5+_y?ZHwNk=nbaP@RjB4yy@ z-uJ94-qqm{>Cg74Rv4=|TfFYJ%^bRj(M(8M8nu~B?1c8s8!mItPyVgvZ1spo=NG)) z?eO06M?bmZKmN_v^u6FTu`+-+cpiLhF&x!8Exz9VT{;9FZ`TqgIC zx~^#tJ7Vua`sGldTIx*VK%>$NtT1ei+w^8vXa(TYy`ex677joDg z2qBg@s?PA^L*DSnAg~zN#Xgw5|Jjfn+cf0GN0#wUrKudNRl{N5(RFdkwmXjT&Fs@- zQR->T_|voO3uMRF%OP$IbiQ=nLPw zW`P^ac}*7-m4R({fGn)BSTTdUB4^N7p!w2i6JgiNZF(z zCQILE6k9l}a-i$GLKQEi>65X7bqZq1skEI;DUwr9>V-ZC)mAy*7))%*u`S+FFc2J@ z`m9u@$2{DN#Z?CDN2-ovpF{QkiE_buA*{Qh?+%gJK-7tVQlkKc7&I3BCz7(bNJHTE0V z%pgR@IV|J&FIs04v^A`V$#XgO8fFjaI36{oj4tnY`Tq3Y;&i9in7zK?{x}{>;dst8 zMU1u>&BVij?r<|?rX_MtSnCl}VN8v48`jMwm36eC1m6CXZ0=Yxwa6@_T9_K6R+aJF)6*DJ6UZ|{0Sl0mV0R195;^fBSRBh%3| z3Z^?=JIsOZ!n>tN5Xgo@%Dj00j_csaQTS|C@w2tCBBQYwoufCA1}HeEhcmB^4Tu?T zo}r%604b=)(yLBWT?&i2UdjWZt{tmYO;uH;h4;xeIJMX5#gJ(#hnVk$g@|5 zIqfkA;<8!Uo*gc|2(8t0(Q5mQmyQNVK$s47ZS#X3*rJ%>YEG6Ok*3`J;rOCRF! zeoa&eY)N8pwIQaA)D4;fs+lfZ{^_e5wD0-JXJPZ@Aj7dGTsTQ#D*%mhPkbF7UylHT%8t`rV$Z zYR%epT!*rzr!`t8f~nL);W{W)y{D-!`EUO8F=uCMZr|PU;@7YELRP%%dk)U?&7tEU z!lzHqxxMS?-?wEP&2s$?Ym{7i|41tRfNgjp<}oKs9yX*g zwzy&@+I7YUtkI6xONT?#}Thpy)Cu5s^3 zq1PeKQV7KgY*BP(>eO^wn+?U@g9;9<_Qmo}Y=JPGi{ax2tV$}0}<|!*IrC3tH^ZeTKyVKaJ zE{OGxaqs0^iU=ALecNG0sH~fUy3>6m$f0z&!x^lLr1S>W9q68vJEU%K-jxEitXPxy zT% z3L)c+aJF4hHw|}D2?!{qzl939?|8ZEd9}-k271%nGb-lnry^WKj%0}txBS5uk6C;0 zHgWm%oXh8r*@b`_L*pC`2}|O`51$e>p|%*MGb|+o>>`u#qbeAx5|2d)N$6AQFK@(> z(|vE(ieuGOtQv7)%5`ruPzZn_Th(T}zHP5K1QcPIuj=g2H6oV(YzPTNmpxs9XmU~-7 zaG+DFt~Et)iZ$evNwH)vjj&3Lpi=nfv-Du03&N^#)ODiI9WgjEHT!nRNjHk|Zpb1~ zDsPJwCy-Js_$fl9kQ~a`;&On*jIHQnDLxb&VoL|E$_kxtF8#I+gPhf#iW;GaV(fm70drO$ZdIy`%$D|*E!7eD&yLn6;qzZmZMPivG)M?Ygta= zgC(r7{QmSiE7|A~ap$zoj60eKqfEih(E}b09o3=eD=RT}Y(R#~|Uhvn|h@Vgg=^Q!~r7nVTJZ@#?cKm6i7eXcPnV8s$#O^k)@fpmw< zTfAnTp0AKtXo&>qyO!R8$cor2o4TPhhKst#Tv~p6ZK&xuoQ&1+@4-V&iHnuz`Qyyl zdPTFYcz1WeG?|~jzav^toedp^51(#%v|SPVo|qHf9FIMW8E*3-+VMaB_djE^HhlfN zYhJy+;cnk@=)z?2%@B5Bz};5LXCGa0d#HHva)+xOKl$+w`0C3Sym-9_QLGgnJ-XoS zyF0o*9zEMJk5yT3syY-4j-K|ZkurPk%RTwfUQjzzFNK^CQ(;Y}sU518Lsu%>ov~P3 zys5+CFqBrfiF9CTh0^cIHc z8P=5&V;Cm4SPrFkgCf|eLbXi7X*!;sERthOedGWdJ&$>jEHgD^NWIk~JpI&*SPG(L zHT<|JM!{JiHG8x`$7dd`o&A1)guxys7tKNA`8j7nTk3-Hy^XM3fDawVo8}Zwf}@9j z;21x@n7v8yjR^}&&u*NLk;Jjw;;~X3f0nVaQ>8nP(d=a|$7LWd2WBNZL3VO1__9o@ zvsjff&ffs(qF@VjdA4qfr`0qhiP#FP7fd#U)T22d-jWW1>!55+MR&JjpAro#ZVr2P zx5{7t@-1Cl;j|@)qE3(m4Te=MSXa|^f$h3j;i)&AZ5m?k`SjTt)|H~S6qLv&$4a^Ak5#qeU;pVNK6|pIKXj~(M+lsqH(Z>pc(?CqTt)1A{@|0R zoL9oiR_v7f0qjXJ4F;PyoGL&4`~$X4&j*`^ZytGG-Sm9@>XvWc-lD0b7#9cL$; zM<4O*tRln})nL6pInO-#*$2eG{yl91v4%JAuZi(^O`Jl!bH<=fSzyQLgvN09oE(K`x~6;33kifZigVulqri0QUz3oXDQS) zV%&Fby~zXdF5t}y^%d5}f*WG+PCzp$8N9J{eTO)McOCm)X!{Kz?6^1&jP-FMhPIDb z@7OjVX`mA^f~_2V1XFK-7Vn2i14MhgwFD{DYc45HhUQ2HyfMUH2-;%AvRaqT*7u3F zz2$OyMK&_D%=8!{-g$0!9eBZEP_0O*#|aaS$2`H5R+qycs!A4_dITuo1`lL(M@eyN z7_7e)FH17R9V%KF{M&n>M3?`*K zK)+cPKh&nE7H@TI62&mBSreFXLzfLTJ_As&c`f-N#y4PU`W#u+g|}*Z4(rVYFW$Z` zY4pYsv*+!bmhDG|s!~3Awq|#@oTN}Ex=gXH$PQqmkA6_-w?E~A@1-sol){nQOHuHDCy(Ohw zIu52t%8IifrlP4UD(!iH5HdYpGLagiajH8x-S6eW6jxPtZgw;TcXCPt4MBwrSe|he z(Rj3V>~A|V%3+^*TerB!o+QHlE}*%>7)uU4-a3pFu9T`ORqI{XV~k>K*>pulWtf7e z#d5H=EXEiUk@6tUI${b`re$3@41umc(1i`QDvhL!g|6>8+#Xo1E{OuFkuI8IS6 zCj&a*+#>;|F}a}KW8fNl#7>HglqXC@Xa(9BJSZy*1zDbbj5VF0S`RA0V?$sZ>v@bO zIBy(JEgr_0Yo&|x9i;<{3|T;9n)iHdBPEki750ag?aC8F0&lTWm6UorUfdh6`{T+8n5a*%qN zHHOW4!=XJ;Z_fG6H*Z;0Yd*Z#KrY#0a&I0-#s(pTPzo#6aB)`JX1}=E<1CzQJTYcc zXz`jb8FFc6!tKqT=DY&4*b8Q1tWa8JqaMld;~#y%fBVPJ@n%P_Ew-_&w+)qR$T_fb zmM2#$e)_{J{`sqy{Qa+Qv6Pm#w|56}j+}22);C<=TywRL)Xt)*CmAJZhK0vEuD_)L zHF?O>=8|EV&B-d`ewbk4P~4hQCLvs`4UZme*>#CG?*sqOKfGjZ3_tntGp;s~o9mu$ zUR~3y;Q8YKi4*(if?qDQDVsYa_PHC*Bl(IpkSZ1Y&#t@>=o6KqjPo6le?J;sjy>gtNS&YIyC{3;ju}6j? zpQ^IBTn57VA!lD5-dmh2nE@gtIOT^;Vyy!y{Y6TSIT&#m9Q(r#gC%ufwrkEW*N_?N zF9ax+q}#J|L@TU8N0wu_q0?t-wi)~-*Kue zP8H2^98W9!%P~lI9a5VoRBk8~9VtU5n5uk!f}S3@?@3QA#%2i@m4BRmXF0d?+>IMP z#(4C((Q{QD+aZro#1PvUl>Ka-=M$lGyp~cb>uT=C<*cicD;4-lvYc9Kadg?-SQ| z!n2hl4P76-HKZ8$_`?tAyH|u*QF*4c`Eg#yXIdH~IV+oLMYE~+=ijxwyGcBM)(};w zO=*?=`6rKgbMume7|6=E-@f6jdNKsR$DbK)%sCE?l^hpq%TGUh!YT*)T~F*SJs>Wl z1XfK2(a;_gBR!vgbk3W%f%k`w-M+)9@a)M2S8LCc%PXE=UXo+Wt5kF7Zn%lDcn^B4 zK*sg7G#-!k#IQa`2IjI>=6xWe)o2Y)BhRlIe*F0*e!b>@`_F%mb`?8sxQmh1i#>n( zCm+y1Zh60l7cX1lUCa4dEQV5a9D3pMV#ODqKIRv{eh=Oul5ob-2jS)K@Azo5V%uc; z-3X%3S)-@O#rO;=iW`Hf#uzXIg@`K!TBxB*g|IAygwzH#0kxJCg?+atB@2C`*=*SL zkv{HeD)6pBG?W5DaX7D}7^u7_#7vCs5Zs2!pQAwROB-9we&V9HUWi)yj^vyOL9yPj z3z2ipsIypc)8Z6Kg~q$+5{x(WUBVa-l)zWU%rxJFG+E~1kDGsqg`0(y1IKkEr^;mc zxmjQydj#cJSR83dVRGtW%rMeYNsOOcdOJ&jeHyeLf6v84OmI=536Uw~bQbtCWyyGs z(?#`N$8uAh@_ap1xzRv3~FFzX2S8LS8^@7Ok;&8p+| zw|iQtY1Hrs&$pbf5&=idnaT-m*Rt`B{oy^&o~)>>L&yY;CAcedKpE!vUCETo1Wmkn zeaDO6-_hp8)w9ny1SQ0tx-x8PXd1^Ml<{c~eW4qf3=XD@At+^~s^A1Z|L~0SrpMR{ zV?8376nmWam<-O9VoTR}Vr=O4w_H8ha`#f%@ArKCbi>t^BgK-rWLyt}5+#$su}@M4p{(*vF2S zZ*KUAI}Qi%mGJSibKcx`ym{ZFRK(CBc)Yjd)Um28 zdN&$2#|GBDy?}y7oSFeUbdX&|ND-HWB#<=Xbx<(Q(Y8HRm8qKsUpc%f6!0M_CRF4o zbo*R_c{$=OQ6fOW&4={qA+}Ju z*UkK0MWY-G`J7A7j;Se^Dl&|Zvxa1fkuv4y>s*Ok1nY?N4Rbinzf9gt9w5NkgVUh} z!tigH7*t1vSa`eakd?I%Kst{HjKStijtOI{vNCd4(k`9D*$SyV`}aFS7b!Gv5d=Q} z!;cAlB8FSKB>dx7zn+*GMz5_H5+JIqtfR69<1#i|9zA{p*NJD3BWoKFO+~q(q#W2~ z!!Bi>J>B4CM@${HQF2n+G^cPc;{fB@umc^&H}6|Igp12ZIFpH;K}G0#;mg;7T^q{W z8QAxUyVRk0tPzs*Sfq4j6h*D$ys7xN|LPMydgk!XbJ)ZFP%LI|6)|wWUh(L>p>Oxx zbV}bwk~rS|@*Rh+=e1JfpqY!;n<8^1`<6Y1@vr zt$5XCo<8zat4P-?Mlzp&c+T^umT%v62+Gq7&-uAw?S!}2do<@#S2QTG7~_$#r>ct# zN5zSOloN=O#Sjy0stU0RRxr6VJ8@pHS*UGQuu@af1w+VmLGcY3lW?}64PDpcsx|vQ zlT^srQ*9`XVS?hU5Jl-)h}r|TEGV0?1GcCPZD0rbvKR`tR%n%N?TY{pnJm!uv2;fi zM_r$hbEJ)#whz?amyTq^LnDTq(qLJa>r9g?GFY`sl#&U^Jl+Je@EnE7cq}*065A{( zd~zf>i{L0OlbBI>o;GW`51Gw}oCuzW;il80Kryqzn4jZ#qmPh{99hhqD1l=obaZ!8 zl*go~%nUiq0rTmujy*aNN@Jm+rY0?_b|nvZ)LaKJD!B3cN02}{eNiC8=05EA#r7ZI zr4m%0tC8oyI;|F8!Vg77m>~mBRk24ncnSI!!7w@vO9No`Ql~M`V_)tv?q#1wjJ5cx zLX#5qiDZj%(`?XO5mH9+p^! z_iEeG~bouiw$f(v~(U^tmV|V=O``J4n=E15PYI{`@2U_=`&(*Midwp`nj= zR2zr44Y9LWZ&=qBZ-leUGp-V}hn{M4#nX#t{LL@FLf)YZ;I7N)-?obN;vI>nmW6yzX0~HO2Lq~`iSP^51dnC@2I?o zp&?aW39EID{oOT2l$-+C;srV1lqO%!5yOBnQivSI3_>ym)W}4kJqy#ao5wWRr3I}z z6@o4n#EE=45$sF%Zxobsv0ypxDN*9GZSH7&K9n9hUt_ikmag(BoKNrP^c<(p|4<6< zsYi2q52rDg``4HurO|?4dLYw&IeCudu?)7KDz|0P=R?OSHmy1oR37zqH*<{Q0hfIl zBPoBw7$}8eW+WZ&Wo{bweMf;?&EzeOk30!inFUVHnV2FOk2vA%;tcQ@*^qMuxp>3Y zG>8+d7_2dLp~btBm2}wkeEVvTQlrL@`nGs3S5gaj5t&^V9bV$Y4j79$w(oNpY@9yQ$F?Rj!l@%}FI z>#uI<`;4)EGIq$YyG7-h?tRI`M|b52}tFYqFGw_<<$lI_alT*4EmS3+%S zOa}3p>wRM7EgKT`T41M$IE*!fA%#EmiIi>0V9Ooez+EsnQ67D8!KShN`JerWzxu`3 zyn5eb^f>NY;%Wowtdy)h7lUHfzEoxAj3yx^!5fElATi*r$7N6KGy8o)Q(3?k z`iY^%<$5KYZ9Q!&)XX{FVQht^LadN9kToDu`iFRHh7Mz)2qR-)QL(**ZKfKF3AHHq zIL1uo?^xu%9yt;^$MFcg_ui>xHhTp2o)UPdb?f(e9AjMNIB5ReUd*ZBTweQB(JZfP z7gqN}N^69@MnS0y#W`kNJycY+ILp1U9LH{i*-pRrpaM8ipkvn8lGkVandwcI9+)mq zI4PX+XC~#jnbx>|zV8_84pJ_hP{tm|vBs;-Lf4YBWq*i(!`B3V|uWx-mGTq^uZI0YYBPWg#0a?AAscgg~u{#ug!Oa)hLWq=X!(a-r+* zqSCb;XJ=gq66m@J#$#Mf2+F#$eDwSg?cqH!?uc>C?l#~W4@T*NA~qBH z_x$;P{gjul@926@7b4d$?g;6?lgpaNkLn=?AmdCPt(T*DUhM68jhO*y5XJ^+stb>P z`2VJ<2wltjyF}AeSZ{H*6e>spv_p)c?;&bMrm!=M=F%R!huRm!WxW;BX2l^Iy1u9D z0+|W~DhFrV3X#O4O8MgB$GpG(hLlUpcxgP&-4Y7~>qHYs!WmDDT?vBKo=mBhHGarr zuRNmQsuk8c`p`l0gf8LghGq@Vo>*2@jiW)F=g{r(jiGA=%O2~%`G(vFM3fSLEQN^> zvDQ-8g>NV)#a1;rCk~;f_7z4POCWK>lK;<O0Xd~7rcn|XTX@1sZ&S!`aIItn5(EQirbELLsKc}@-GcnlceF&)58F{Lla_*^AM zmeA2Mo8~}N0r8r_V4OE+w_LPy!`2v=Nf?L~C$BRD-xRZk>^E zi>(C78BG;6mXs6CYRiv)_%UC;{Ux`Dj1xc5fGl8CRjfJ;o|rS+%3*ASwtbmn<_wdTv0x2PVsUtU7G(-^5DCh`8R=lUP^REW=O-nuRuroqvQ3Ja~f($nAVr^io}-K_JHSnTY+_$3}eY>~-gs0EXRC(S?|L>X!|h>0 zIR~D_Ssvt+!3a(;h#OdFo#34*_$)$-g>6%$G)eKbFFln-sp+xQwT|%_D+BrjziarEVD#BwchN>=^UFf)R43fb(OJxL-PL1X7_JNQ*l>zZJzEP|x z1YjvCf)YdI&~_MCaki?b%~?1yxrhc8ZjcCWGfN zlphY4mZL`~I%u5Bp=QGd;Y-DX?ybEJs92*0IjDB6?zch{(jDWu(ylm_f#%jhs)<-_*xkG*MG#wH;a=h6=O6OJAKdZxzxtXShPhizud6Ih zEJUc!E7p}O*#VMD493*Fe0!knYF2ek&K@s`kP}f0j7Lg@!%bnpwlZXT-LJ5oX3LIH zVli4{VKyO4D8-G&FxEqjYh=B)go9$O!#YRhD-Lmww~oH;3ArZb6&(kRiAWSGCzxDf zMMlh!Z7BFn!)@sJhhKfe>$k%CY>V>^hiuqxJ=O|OFE+e<@q4VmqpLGkwc$^G_7P_n zTmIqKU-Qw&k7#PkZ-4VGuigu#@OP##n)k&x*cnxsm>brc6PO+7`Pvrg)6~o+hcN`llwwD5Z%p69d^17nb9(R6-9yU^84)0@m|&1*Q&ig=mv(CU|J+bsTTb z=?cv2eT-4)Brt}L96zTFYeQgU_C3Al7#F zoD!lLXDpl5x@1y`A;cboC4?5Eij#^I6>GNCK9V(%4QN#q+Q0tU=WHs+|Ml}d7(Gj-z4fY$PVIOP_dY`r?#M>#o98A)*0%`VKbnP zr0|Qs|CX;_b*xsFC(keNK7e?Pz{R$qaUGe7Kw}f5Km3UsgddGTWshe{` z=-KafRCPleVBaY(-t1_+u-gYPjz^md-oANFt0i;MiDDOYD}{^^T-gg!nmr|h_+sf8 zv55F$iOb-;i;&2eT)5*CnQRJGa8qq*_j`O@Vjl)W+XX6DpL;5EW355haNr zHsdN&vZzcVrUY6QuVUy6($tP*4Q)15s|M9DSrR(HQ;6WLC+9+mQLg}VC==#}N@pl- zNp-9pcvwIlZ)QCb03-DBT?^x(?=ErBal;-7loO@2yqnWN*6^?I74{Rpe*{Sl72Ome z{ZR1vyKvmo=Q+Lh(Y?$4ApS$gLrQ6knG|_mYLQN%vC+eL$U9=R=|{ylyrimAQDGh+ zrK599_`!FtgZUB)Lk7^YpZ511rwaAqd!LU9;hCtv6*ObT;B7_a8k%~8(}3{}CMjq; z)eyuSKvIdVq(V_HVpw^2{`3-8RdgeX6D5_s@fL40P2~pIsyw5!1qQxYgIS&N^@|;{ z0qcZFCc7dFoUO=ei6OFX8rGHPx(`RsJg0yjkIQ6$X&P!%#@U-|c2pGxShK1t>>=^| z`4yKJTPoj^a;EkT*(Ox>WsXvhbsjWP)$7uTE(u+Lzxum>=B6`TT-01$ZfMLoIR=78 zYG0^YjCexm@fDo8Ot(*j7^$ljDfL{g4cpaYs$8S_9Y6f2;r;cVK5?>U@9&p!kL>n4 zFb)~U=hM$Vpq8WYkbON9`R>%m9;=4pnB_)U#$yAr71_kW*&8-ar<1yACuW$ztk= z^EKLM;wsauJZdclPv5tAZ?O)x+ckBq^j%91nUE4$%finneeURz<#wOA^byUG+$S_d zG(|$_Fs?vVNi*4$-`@M7<#q9_oB@@Aby!LvsTd)pF)L`!5-I|CT*$|YB#qX?P;on2 ztp%$e>oOJ))g+;&CB;$do{m7v`0lI#me$IwOmyPvD)GF*vpTW%mL5iVz5#;Kl6g1c z{jw0KvoM_DqND4|0vpv);N5ThG}n^MV|rg1F^t#fxsB<~MadblDEY*4zn|?jzc*ih z9M`cpQl+Hm7TS~H`gRzLF>!lA<+>E~$4WXcUNe)CwNxUixuhNs|D9%#oqA5E%Cz)U zU#ve7yz^Af(zbhIRJzV!ng&rJ^pXCsM^hwYNTw$wMM9yUk3i}Zk^*1-?i==Pz*#fV zyjX)^cbM=+I|nj4zF2pb9xA?rwI(P{>w4etwRyrww~zpQx%!d{fc(Jt-vC zRRcQ6DRGEcLQeerAAZlb*TUJ^1!tAVr389cI`U;h3CAt!S0 zai+nV1KtHBR>WBI`SVBo{-yBSZ(qZhzFq8$ab_nE%Q;8i_k+QeKuZ&g|MRbY!SBA> z^5aj=c=q@SVy?M#HT&ClTwWO7hZXPNb!^uwYU{B^`S#6$-&K|;&mXf(eQ8PT4OW!x z%JcZi6TbTPhIe-_sl3pvSG;_^<9xMZyUILybjkjvN4#Nm2DJ-(v3f+03Eqx9e@oD$G?y;vN5xrx(vG}#2J@lBY zrA|dkFw0sCDPeLh@tTxy25N5^={t1XGFqtEi)B8O30gaQ3FWm1pct8ju82&9&}F~K zfbGvh;?y8t3ZzM}oIo*0)By{4Z2m-{Z4pzhpEYB}ey5O{H{wWqHBgNY5L#gbJ&r9b zZ)x_zmYGkpFdsRs9*Tz?J?D`UIkrNN$0$vZ(lJzbtjxd5nx7Qcpxm=8({X3TFqVT( zL5qbff7nY}C@5GM0<%{)d6C6g0ef6G18_>Mf2vSMlOt!vSX1J57Vu?lix;RYLXUAu z<&}7S2XREUOBx22YP zbB5g9lnhN#nr6+L*YBykMVuo^U%V%0(E+ahK4^G^sdu~G(fG{c;!rKIN{?0l6aWAq z07*naRBKDDvhO3t)QE{Rwkf=On+=aIS2Swbr&v;%y(o*5p-?aSb!P9BqW(z2EVJ?Fw>F$eG$W`Yw>fkV3*$hSjRVpw#t>5D!?N25zf_PX+5V-V?e8 zrKa8pVoUcwV~WR=Lgvs0s@e}Mq@@_q4A^>zallrG0H?UAYu%}E7(JD7u8(5~i_aA) zG7G6i@9)ub87+-6;3e>S3_;D4aVkKT=NjKzLPKJNF$B9j$I?JU! zqEk6lBKOYqJ;xHlo3Q=`TzNVMr%Gdn@s1%jr5Ff(Xt73V+Z~%tO+2(Dji7L7uMryv zaY!fbb~wp|7>c)P;oV)w+nYlP|C^z7Qoy40De>&0K|)~PDyD9DcX!}oZ4pffiL+J3 z#+OXw|frzNSEO4u4lb=G~Of9&0}`r8Cz?o=3l3CFdJSa$evOprIOxo zsEV<3akT-{Q@PC5#W|bphTB&++}_?{jNpC6SRid|jhH~66aV;|cZERG6sSAJQdORk zaC>*h`S}&rmx8;ty(8wr_f<6>Dj+Jx6yqi&#W+K<;JoAgt80u+Y#PhHPh<*YE)!Bc zFbl|>Nw}m6Dox~y_Zotysy%1tnZx^zzx{pW<4-FtEPU~4!`;5+t_%Frm%pbE8*c8d zxx8Al*(!H;Ex-KD0X0fhdtwMYzS^*F%ewsH(?@*zQH|zny5zaNjmUY0t!noB1Bcy? zW@X5EU<1b<)i)`_{AHzBW}Lkq_!^lt)Y z<8dC=))TTJNU0)@A>(R;I8Vq46BSK`?9f<4$`)f4FP4~d;pfWWyk~!CK^%vD*%014 zatNgC2r=WTG*FZXlRP(|X|TggE*9w22V&&nAC=%3+ZgKK^GwCC6pRz}u@oFClb{#_ z*2fEFtTzAucbp0oL0BYmp%g2Xg++h*{iUT`ih*?Dag4Crv9i3+!Z|}RV;#pmVYd*1 zBMmh%EsLVLJ*U>BamtqsA_p&@rUmNL3 z3})cG%2U?ONW6HYFi*1VPOqa#Nft4%S=V@Li6P-~#9KFX?W|Dk%eo~40Wpb?dg}U& zK15!n>}63w0+OJ{WomaD^`uednKks z)E*IocQu+zYwu_vgu57_w-Slo@Y6Y3CI?RhYpaW>t4}?|rTMu=iT4LsiYH8sQyd zyl>+7uWq@0+~Q+E(s3ROKHZsi{5ebNCLM64rf++qRP5u9zx}5z-@Kgj`4dM~%z51G zNxk9XNurn)?010>G_G*;VNcsDcAZctp)OUP1*+jM{`@)8thv3Z=zXAA6ui6L9dbG&`TX|SDKU?E<3?X2=&r_utCSV|O8|b7(gCs-=&e;PswkU%rD6B=LNJ<@p zz$I3MZs$>j;_K@<#y^rwrX7(KDT;!K&~*V+B8f(~-zPR9Lr^IRUEg6$Nl1>65{1Y>1>Yb>Mb2u3I6yc@(m;^Ipv(wk z9U_B6^e6-Md6?V~neJs;`W~~7*^ntw#J;DRIh1LsD?{>;uJMoxBsG+! zW4(RET1D4(pcKX$8sGCTzx@uMOrC=puk&!dIzK?71ll%$DtX-AGp_|_G$vVQMQ*D% z(h@_!8BNzUlto1pLz{Z$g{IVrmsd-E`=OyjdJv7Nulse!9N@s|t zDhsaW1%LA86Jlryy%1txvu_9a)+_^It)Xxhr#C^whjnwvOmmEzKn<|*K*cjmb&+BoVe7XpPbBsv6( zQW2C#k##$?(a=Yfg>6;RG%c%kgPqNBR~GL(e9UdL20lUDdgv)*CF>8nTCeiG-m{KU}B42n6nIm;1>C2O}dCIpP zp7Ue-@N|n~W|LH&C6IoAUve>8BxeB!XeOP~rKHh_Pcw+YFp<)MeRwoh=TYcUrgk)9 z!#{)V8XZ~w&dgja=p5OO^9nK=-!Y^c{x(K>afC2ocG-UZgB7iC{%%phvGg;hT{FHg8~MAt>Jf3 zL@(fl&iBl#f~X9A*An~|qcb<1)7e>SZArSM?e0({-n{$3x($d0m2^I~(V@jeAL0J7 zWqDDuDjjzZYnD}wvId`eNP*f}b|Dah#@ z9FJi{0>*%23>1_ow1SJviWg6xQP%}AJW$UJg%s>t&)eG@jLJU{&ta4V@`HI)Kk2rA@Rx%e~@EGHVIWjzfLC5ncZ7d4mloWK9gcWm3t`KQRE4+BGemXb)B=dANF*ScaN zMd91;?%7>fYO8sAU0}EHxbFGxUF7ZEBQLKEFQ3i0sv7O@R4uPfGV z#gmIV*M+p<+wa~}i{j_s6uiG{Nm8)i^%P~uTysfdR7;9NU6m9l_9-2LCNC~3` zErmp$+C1nOkkgJFRor=98e^EJGQpr%N3VMdZK#<Au5ZtSsM4TV`zjK`QScv9~`0IDU9VKR4($T zKYhvb=T|sWvROZ(jl!vhs&?FMwrFuUqw;f#gQ&1pC}#x^>&Sok>u;IOW__K;C;Z_-al2mgCqG?r@nlA?8{U7|vF#Gu^_u0}QI>{T zt$DoPQqSh>+C4wKe&Cz0e!@4OU(uzWUw?bc-9yX5I;_!jokCRP{$Y!V9ukTPoSiay zV?t!m-OiBC0c(tjqy}t130gENWk>>%0cV656;@mNZI7}Rql7>C;u%#1%gSLc3%2iC zx~@e8jIm(y5SA7wt)UBKTJ03Fk?nJvtxDz)na33I0}E&Hiv7ODxGd(PwME1dljJl! zbci*$+R=po%I8)_ABJh~oG~aZn2{Xp>}DQ+KNuy(fw!@cG#Z+rUJ_1g9wSt8Snose zX^2QgAzFsct29jVA9dOf>F!y2KW;H5v_9IM1718_+%ZxCWHtDYoI0n$X1Yj(zGZ-q^V-~`g}fPCX@v0 zvMzYD-)G3t2UJm@twppz3^*%vzQH+zat@U|CPr@Fz31KS20;@-Pw;W*{27laA4^pT z$?r%pi$+yNrakEsh&D9MZkUYEolz-e8uQ%IWk3l{-&2N&(?V%;GfRppD=_~zw(+{e zm}^Ex8(vnr7c~`{n`bXDk+uCzlHQ^`G*$fB$RlyF0X=p|!?)PwYI&Yh>F} zR+>dQC(t9c%luutl{Z}Gk7pMI-&wpb!vi!%xljdLaQxnkdTgygw@*wS_Z^l39u z3>lU*qzn^jrHI2s_rbu49G>l%@^rM-8slt+tcKvK*>{A!XKpH50L|e425K;KPLsCbIkb{I(sZPy_wHwWZ8SD-A4EcqNgMj}2%l6Dz#NrCUb`;Le8on-axFe?px=Sd>m-0g^=XI|HM-{Eww{aNKmDd1zk6cr|dZyT&BCF&a=US`6Mpl#rE8 zt>*oQM?TzaxwtH_rlBlmBm4TTE){6)pGw*2s6&;3TzZ(ERC zYFDswit;Ddyt>_Rf4}8=w&cl^iu?VJtuJUo!Fr##s61^On3YTBb*}wt8<=T_=$cn= zTE_0oT${{_k6J4ff_{Fb|NXNo#d2ArVk8E^IgPU#B)`dMle>3Az_Tg_c80t2?&Z5Gc)h($upjP`7@q> z`3<4(*xY^qZMeVRvzWtOv6W2}lSit9gBM&t?;lXhAZ#;Da8lOZ0a5Ag84XTx?!>VR=* zP-jD=;^?n{bbS4U8hSMNA3Kl{emK5HHfjediGw*kWG|y3K8^g3=aB!8Lv(r^)*E5N zF_)Vj&-mFX?Zec;oYykO2z6QyIfwhsjq!1x!-5S5oyLP63bltIf$Rtm;X#fYa!dIz z>mg)htGZ&MqkC z4yQrKK(oE${{Deo)6@CDzHP8Y2{F*M9sl_se$R)yO-2yXk=bWlCZ!a!+VI3?Nm`V! zjgcqL(ZxW!-?Q_=Y*x~DDGwsrNKA^Rfxd^RBSsQVTXt=abtUVjM6dZ3sMhx+11Pv)xh6>tXgua89vl8@_vW$J;ksZf-X`Zd%^H zZ|FL>T0|CgW}j6mqLs;6QIJgOBH%>xcfWeafBfrjF%(?P6+e0L8Jo?PhxLw-5*Let znT=G|5|cui+$wC8$y6kCSex$wZ5<{Bhy^!~8w5+&N2-~@TF0y|sBL0a&u$w z*M@fAa=EJb=JN$z+mV7p#Phh>P`VPWh0ykxBy^&<+w2grh~!{%lq-gW8FdljfMEjJ zVaRw9PwBG{dKEEGx%QieSve<~mVF*KkD--MK`qnmgu#{p9y$B$$+4u-kWbN&@w+)1>LIE; zpIe!3)6SP{1)&dkNe5To=(2&{C(5>W7-68ZsdW3jPLRDM+bJkeG0aMtcK(U~3(Z<@7z{QjvU%Gr6I6*ykslLI?Dj>(H@a6$*4HJt-eBt{wIqXRh<_C*bB z;WA`x0q8N#P%Ibd!lAq;_K_4LUFfJ+OE&!;Ee;j-q+Oehr6}$nHlH}h(+)bFU{#fr zs%77$Ozf9DNj!C35JF_X-=eYXnmuKGLF_i{z2nt~JujX(>Scko1#!JYNn%--%*&R$ zraQSe{{QZ^@ipfh3B$hcdG6rbn=OwoJymH)*0Je(mQ{fScwBF}ee8I9+vB~aZTHCA zJ=zM+D%w_9?;}^&Gh9*>&SUftWMU{?N$Q2oWuJ?Fb z;Nz$ynTZ;G3Rt7@p&$lL^gd@IPI2{Y!Mk7I;1Hf&%<#VBcE85AkzGpIsB>vuAapSg zZN@YhY(pU7yF?Vhr#`pnj?Zh`qP648r;aDf=lt+?%ZG;zl{M6r%bBwG?E1hz{O&z} z{-V}z#%0}wV2q|uLeqh>1*J7OrRk$546`C=gEE7mQ-W2N54gej9X-n7KQI#e8^$n@%Xg7fnq1p7*mo-);Iy^$mii(7+@oNM#1d)+U+aBXM zA)eFykOC3~2}d_Eo%6^KnLl9m)9K<*Ve01(#WcDa|32ORTL%980n0`(j23CQM$_zo ziJ=@BOg}LoH`zwGV0=sdeKP!ZxDigbPjP)szf;a{vQNBc8jvtV@ndJlbXaM8|8!qd z=R7U6pRb*@7LlB13~r45S$F7`%^}HQRto8J3bz(uaUHHIMtqLJE8c)R!w%?C83Vh|AX{coucR z^`heOt|2Om@UhJ8bZw>zo?X|me!Sxk#_~VT3qGq9X}2foip{nqytzZactWW)eNZ$# z6qTbOQPmZQB8kHHiER`3-M0_?@ODjTJ(sIF&MH>R8c8k6G;AIod2{oKah5N>xS-O8 zrt`#Jv05xyuWwjy6V~Qo=E4XPdJN=s)exgWB|#fU2)W-gHjlixSW?#|KDHEYMpXtr z+_yZe1Ht!bm#Z%+`ZjUEmktno1seUCCWcgc`FE<_}HbV&U5|M@r6^_YyB*J;T%i=` zu*XtRmj!{uzRRo>ZPy_vHV<7EaB2*@*kMZH#~*Ky;0YmdxzuPC@KK{g<9*M*>DcTv zA!aK66cW(}_Dw_IcFb(SVwIa5tR2W>jo^KY4Z@3A$@~{D`QiN|uWlabJQT_R9x)ni zSKK~o9@h6P=b9(WIZD}#28D=;iOLyL@)SytzQt)p(*;BiHLVax0wyMbq;u_HxVg28 zSS$(9c1Zt4p>)dH2O(h)e98r*!sJv@s|Z08bjazK*3|PE<-DY{u-|le?`hh|qRhfj zA!(Yv!=NzE(sv1BqA(@m!Ki`IvETEu6kgNOr%369n@-5OYL4wL6No9}z&WDt@u8*E zfcT904&;n#z^?(6U3{ehiX~+%;U@W$ePLhLjJvt)>;>w)HD>Bd4;kX9lm;Kb)B=zB##&)$_ACZwd zVRT5OVbC^zM{Y2PnbFz_N=KqsL?d)M@wn^QG`Czm{gNOx+9p!BMjK1#BRy%jCP&`4 z>9vSysDCQOcBhFcu-SJ!RyCJakzyuCZ9_vqvFqTWkKAkI?GCJ_ za)wo@F;-B1I9~=Tl#~b(Q95T@l5{3y)S8Rsg0H{+jHfG2+k4t=Pq}Z{+y&}BvRthw z=Y|)bJwbWP-NPNu_ROk0^lZcsl_qITVM|{B_=erCqbMr&`z?*nvs!((VZBW>ono`u z@bdWz9W?*jfB0vvmNkF&%P-M*42ES{^3$LGgx~(|cf5JM=IY9_bdu{6zQuAJs#UQiVS>qfG)on3zwSO5SZ07*naRL6&&^)Aq2 zFj_G)6;~IQKFwKgIvyW7-rwx07X_~O)W)D>XdW7FwxUdY_4$J3%JJs5WBt%^xtMcx zVVGN?wuzpa$1d^yp~HyIt=2M797)UqcM7Vyq^^3p&=SzOU7JW!3H|cY{`)5@#l^~y zd~OXb3c*TN9@KhhT^)>-R+@-Lxq{i{C5y#;m==vFa@`^KsONF~5CZkQCbTV^^)|~) zhJ=VFYJ)BdQtBugPZdB{I+H5Ce_&x8UObW%{d$kpn)NnebYi;?+%`hL?-1>9MV&ie zl+ZOhw3AGt7jt*l2fxqa?g7%CJu@Kra)Q0h10GkK$JekizPqk91P^Aox~r@ z8a{@4Mz-U@YMgARnFVkXU60#n^pD3Fb7xT!QaZBO9w4pAp)ET9ABPMq?`zuL3X{V9 z**ToI_fFd`V^BjQKtic;&fqlrm=?ZA=~++R~9_Amc>i{W3kKlVc-0Jteu{e~b=9ayFxk!nu;qf3o5i zKmUxnSYcxzC6B8u-~H}24;$h7*$a%D(X^Y~JsDxMZTQ=N{vLluLV0=~;H>8JOQ9@< zA8&U^QSos9$mOL&iKXjX`UpxKKYrM;OF~fyt5r?6-=d8$t4m5((G3x*N&%%c?;rMT zx-g*QlU8e;1I=9X5yWbYQT*ATe#uY2dPboVrFFEMM;6*bioAc^;-f){Ft0OJ`)WDk z`l3ds7DC5rF=J5|Eb1ARDR^?ZBlt?rzt-zguIg3T+f))pXxRx|HZs4@6e8nt2V2 znPNFB@NLV*!twlR&5P?9^FmSRMCCNjD6CObR`dLNPF-1={hsK12p&zMvcj{=84sQ2 z!`+s)%{8#lXI{cCq#W3XKq11#tmMh%oaM}Arsf3oT!ZY97F8A=l1?)?Y4-V-A@V_95YGQU{z<(Hq)?H*~{ zK$#R>k&r@Bx{`8MbKmdKMS)lgrRILqP?w5_N6%erbE<1fl-MkU<%GW3fzB~qRaR(c zxqaAj|F|cIbdlUVAUJ0T(Vsj}N))0_^**xGnLsk}bdc@S1?5wNb8f(LWUeR1c%%kD zI*a1~Tskp~$L(XII#OUyyIDre87B1<(np4H`tzsi9htd!>^@2-?a$WQ!|zNxj?Rtc z$Geqr)Q4p;m8eTuN z1fA=Qt9ilI%wnA#^sizbc=R5p4OR>9w+;7gK&HWj2q`)6LM6i789uvO@zu+xeD(QD zB!QO9%VcVU4W0|Dcy+hqp^Nz5v)k>ty}hHJl^BV1+lHrm2X$%>fh`#_r{ zbB)D(&7aOSSC>n?a@=iu-am9S!wek0BPF5l0#@gG?yQ1~Ws%|isA$^6u1(zB@A>}S z9jaQe+j@-C)TPEGO$sU3tWpj_3agmcB_bKlvc_N%*@J1V!AGL+nJ+K6zuPmjdoI7e zK$1ro2JZ?@y|6?dXdiB9n>`VihY9;g9_Sk)&kzVP;BOvCAx~VJffwuI$&#|x^p9`p zU)>_rie}eP)P{cF(2JuXU?V8sp>5W7UX%)zI*b;y7))VF%94_%GzOFhSE7x}RPII- z&9UuM8$}8clF15Xg`xL*l(^AM95aypfbRC{@w*U8dmRSYJ5ypmV6ffMijj zgv)_A+(LB4F;bTBqM`Vf7HDR--BJ%J4 z=b!U`{ml>j_5c0PeDT>6jCSn1hE3P9Z#s&q;Qq0rwVGv}u$p`i_kuEpE@f$q*!C!| z(NgB@GzNkX#F*JWwwpcHS^AjUl5-c9qAV=)dV%+k_&yWb8l};u$EA+XSHiz~@r?Ce zal3is=5fRO#|Et%N^Q9IilR{L9(Jr2HS>kfS+Sk-`sM+g;bOJo?yh0GY0(l$vjt7p zqOFD$5v%ire@bW-czRj$u-*^?7#W}sQ3}zDSq-soSS|{ZQnaCG?hFP)N`}7mJbt)G zBu`!X5YZ-(D2Oq4aR6DUN%9n`51^IHk4H$P*wL;(;P>$Q`?my_Ik(hhNymQRhJhG* ztj)tMMl0GzP%Qwjb19$m~xsRIlt8ln$5dkBz1)>l>`MXN|_o3$p*XcvolFd zZ|uxCsDK##VD!cUgvv7k@f_|r;`G_bjYeY3CXNiO$_c*MVhQK}ZHA!a6N|_BUgpqV{tP70U2gAOEOaq^VE@B)9 zjS{3Zz&FPh@MBG3JpZGU%5@lZsDq3okJGg}r-(ms%1RAFQ4C#AeyACoLPn!=5XsQr zs8eywn5Oh8r`bjvoJ@w3a+IhrAPiCnXW33-kP`S9oIKWp#%%WJpoBwXZ?3jYj>E?Y zbf6$wgGwzalT{ ze13K1_~uE;i=}2c(>N6n71<|E2p!&cBoS=mNJY(KxFy>WKs1ZF!?>FLe#@`^a6{}{ zUcP(ei;Cq~vzjuy2HCD@Qde>GmyJ5@Ix=^K`AJHwL*DH4#8JMlt)xW7d$CtGOhJ?gEfw4E64Tfn(c1S zLz}pL?D@^BHP5bVd`N`G^ZCqTo#HodZ@GDB_~}H(6on&G zgC|B;pE%Ha#KqC>dx=(l8A@Ok(f%Epg~}7^$bn>1G5Z zjRtp|%pWJw&kgqJHsxN*FjY2?V>Eq)c}`7CX0sjPAvr|H`GGsW_v4z%X_5Lg-T`@Wa^%NW>aVL@<@( zZrAYidXCWHv_?V}m9jHO>$6Pl+y=hBF#O}&hBWkN3X#j1rM5ZCT(28e%NiB)n5Jm3 z(XsCz*anyt7u=hY`|wBGxVwFVsS}I!n|G$d3+AyN@r0qP`b$f^jAOUKmC_~;oa?S;BnEonc=Q| zWZSh^PmCHbVPN@?|%1|MOCvX6I~2^xP?Fb zxaPB$m#jBE@9tWq`){D~X|_>3WROIBTKtm^g4Sg&6SOQ@c!O zV2oh2Lwus|G#@(Q`l6*Yki=vhtZ!(WfYFY5?Fc>#!y}m%dVDA|oltJA%=TjtgffZf zBf;lm$OS}Alo5Z=a6lx{5A3)xMyh(j{>?2ShR}7SSb$^|Kv60)`KE;TJ;sEAwjmo9 zr7~~TF*@hOaZKT>u}&~X-h)ShiH$lkz@8V*MByUz{S$HR5UC_le{YT(X|+WGd! ziucoP+~)xbni@dzO&d5G`mxwQtwm%fGSK}G8PYic<#d13Y~x%5;dK3u=P~{N{QJgp zXqsjiX3AO5n6(@RGbh{Bu}=3hz0T(b{baukQ6nm<`26#0>Y3(OzkbaRKi&Z~5_9(1he%;Eg-Pc-l+swMGT)Wfn51w<@nMrS zMWT#_;rV&X=D(=l<~(i^7mnpsWjaZPrXd zA_3SokxjRz+eM5sR8`Hc*`s_<-vgrQ8=s5cDK`wHE)YG$*pm{(w8aNS)3+HSh>>3P z6sqE4p)hC`^8y3ut74<$+oy$|S4A3KjE8%Yt3Oe1jyDcl2W zFcz?fcqBzKg-9Ck7ZF&^W$fx(fYBycQn2q7ludUc0}t4tCc*LAoYqT@8Yg4jWLm%a^p-`oVJ>ne^*lj(VyA8V7QX7pA9l?X|$g9Ha+`h z&%4Kh{k|i`#243=*B>7EaNnS`W?sRIs~Oh9ZX1YEQB?|OB2C*7lTefuUE8zUHzZMn z7%?=ZpS8cE8|)cXKY9W)t|2oN&!rYVr5iG7=St&Aa}v65k(5Ca=8)FxqwL{T_v z@F`~%ecPfW4_ArNSZ#7V8X261CMAVZ38LMjKa~i@U z#wmOVMD0NK2t8kY{Uy;DTv;G}z?qs(B}gTGFZ|^BHQ&Fv!&%L$((KkfdJ%CnBs5-U zE<02t#Do(=WfDc9cv^MbH<8<2%h$c5C@iA0@SD+w$EM}OUBgpTP`Svnh2z7vLj>wV za4HdlU?pMDbi0-=!R`GW&sPfyortjm6447<9G9yl>o;rSK(pWXnO(T93#ia!c7c2H{&)e5GIOhHJBgVwTx<{1`T*dt2f<|>16VNo&b;;wK9nvdoQLx@MRCSpj z=akh6kvx|=Muu8zg71d{ZtmjJVg|9DoaEoHTbwJXYfE|zSzb43QV@a<*s4It#CN2W zBWz<40a1cP$#f=@PMB%e)ZzF114BG{fI$ulga-_N{EpKJ>eH6ZW7}&&GYzz-HIZ`& z{_w(1MYH|5*>S&)Q5L^Dtu^}La$N?f6 zvcK`oGLje`v_sUfbu}KH>8Qglk{t+RhBFrFCt1+Bvph~-pU-}b$NMpCHie~*>wMJy zAdcBcI$_eCes0XB4xR@$}K_^=LK zE)1#NRMO;3GkaT;cIN%OeH z5c7OV=rIbsZ!lclV3c=xt~H*ynFW}zx~xKe*LQrO;@m(C%*Zj#%V{4Ep5|KRSS|t zx(Gjf_m1SV4H1MSnl5;PPuxF#V7G5+y1<1qxWZAYd<<Q2M(m9N?>~?!nR4C=>`#rwv zDV;&IMusSOEXszMNyzm0FsJ+wCL+e>45IG>WoZvXj#?R-uBE7|{2eJ$+JgOVhb`S; zoQ6&+Ih}DByM&I#I)`aE9Jd@W?Q_`W_`czv0V2x|Q=PQRp5pW$@8i_C z4VllORGS^7=Dc`*YS^X}@zd?&mfhp))AP{E46lz}P&sW&gOLsKC`CIu&(Y8ulPA8z zp>Z&mH;ne#wGK z=`aU0g$7R?$Z!uGzWWnvI$h`KH6Hh`L>c>gX#BMGdo zaVn9zF`Lzd;4#J#)DGV_I9u@DyL-O>ux8ii0mf&`g4zT^o!4{ScrKR;qd=k2lAW7R zxt1Ax%k5qv+7Lrz7a}v=5~9Kyi;#GERnmk=ik{2aiih@rVhbuIma`ctLEn3{Q#fbX zY+4qTa!WfM3jd0!~t%nRD43TR#0EY+s z+-S(T0Xi1i&%0=jb(B+sJbi79*mDvR0Y5nDqr%Q~7;$u_<072ybDY|qMAAZT$&G1% zKBin<U)34X!3wszP>r4&+W$Jbv|Zn=fiTR=Qv)Qsd(3PJ9qx)*OZvXiIqe4Gwpgi z{G2jw8&l-}zH?xaMoJLh;=5=8n`!_|EZ#?J2gmM3xlh2rv z{5$4=bxNRz#ejChG}T~LW-@Z0`koXsF|DD9;&o7kSQNE(A{8=RKd*1LyuJ~SkY}e; zbc%$aF|{J6$cK;SKqTo3d=Ji&v_@r^RgQ^uTy1)416IMR%{)4v@cPEHUET7@duP0V z5!iH)R83SKRAx49nAVQkXbNF)1~v3u!r{m!^4{4TzwG$()fJDPoYAGi@zG=6UR|O} zMae?e>_e8tJL1n?Ig3t;wo5cFGHa$76F{v6O@yUyZ_##uG;7TV?@xH|*?0N$^Gkm7 z>1%%Vo0pu=-{)vyxV*gKtCx5DhsJJ5ApQdY_0&Q`HmE@3PWeRkJD1I(*-A zbGMj&t7DrP`%;eNzT`f#*)1q=C%Wr4VR%GGH3S%Rj#IXhN{ZA8k(vir4EbOix#6uIa28X8fuCha4jg4 zZ5xTvA)=9^C217@5<5`&>xvXTkmYeo#$c)pT2RRIjb2a>{Rwj3xx^!K+G8*(1B7_b zFdpN=p$y2qz?H|5&k(p61LplCao>55eUKf3%04N<_@X5b9?}Z-^D)_r2>)cecI8 zn3_UmWu)8oiEV&st#Meo&~egKe0tY%bK@x`^To?AQMp3v4x=k#PE@55R1igEl!~Tu zg`-9j+ASNaSExIc656)>;JatM_u&~o`G?>0kH2`scmC)x zpMCy3WY|ZuM4KH3@^V!QSK6cD!g^8^MeV07F-_rLH=W0@plx(mXLf;N!(}7gWC^6+I zXp+(cLQpZO#oEHyidZ6wL}fH~YAH#Iu#h4#d*Y~yUcecPvwGN_SVHPiMN~LK5nj(` z6CoFxslkPUwOV1Fg)HPIqs3}b43uE)MV26hfL5BPj~h~nm|+%c-7vdPi4r}HE+{3E z%P}udc0-fvVH6RGDRXvu!TjVDaze+z?cJKxWuj7uK4ZkWikxIQUMN`O(8`MXq)Jrv z1Zy3A@9|i)F~pd}yCG$)*20>NqR2Z;k2r+g4pDD6UbvSy^f1EPbpxZ((ilX|j*JH7 z8-a90m>%vn3cEcuqv!Tv5Fh1~A6BFfoe9SzvvbE&Bl~&3Z;*xj!J>cAS{mckh-x~l z!i7~XKTj#5^250 z?9r)^R05sJCGz6yD*>CNL`j*bEOn{4S;A`Y5jkpRJUKFCJR!*SW3+%5lu;Z{YhJFl z=*lpwD!Oc$O$)DHz9r-tfBn9}#5Hw3#`#E9H`F%r{%MV(r=%^tmjvc2jrWPmO~7pp z+dgx-z6GN>Jvku&x|y)PUZTPhqZ_mGfI{Mq}^_qxt?#oe@xd!e);>iq}bq_ z4F-kP1*bKQtw_kIHlqZ1Wb~l$Aq7{6f;zNSO-yo+YYmgekuy?kkZ{gmun>}{EvKz0 zpDRl>tOUj}evTPbk|FcJU9!W@wsOPXDayp5ay4ETtg++#U)t@iOQd31u3D6~=t?Xw zt*#+uZtk`mEh=0|LqIiX1-V3WPITGOdc!uhJUVvNI+CbKv6ZEkN=z%qtQJOUA3QF1 zG*yE#j*w-cqY(0x(n6=t38Kn0wIfDxLW@a|Sb|SZk_ZvON3E228N`fp!_BP5je+nO z_Cfl70C^Zp#xU}(Kr@mKM+d&cs`cLQt1>KzN0nN2?{`YsOOrp;fO@EAn@8!H;cMsT zoew{Y+J(N|*Pu~!$X@^i3th%y%Igu5aN2YPtixbNWJdpTvJ%u%mg0K;-T^9AVh?pY?qQOH42Vi-omh016aiz$L66gd?X^j*Lg@JZGW z7iV+UePp{ySOcnfaW_;39}77~Ofgt%CHRe*bki9=|N54uskmL2^UY(gY71gA| z*(uYh2w=pNu(}W#pt>>B%%=S6)3;nmB$=qv_Nw^ErIJ!`Irs=6%Nb`2I%k^3l8a{^Jh= z;HZ+j-)|@-$U8rHs_YWNkQ_(S;UQY=aQ~xsB)Jh)S74AM8IeebMl@0>nce3&{0uqg zp~J8^HPre>;dfH|h0(ud?DY0aa(yom93H#F_xzACet69HUD2LUx>Mub2|ezWb|3CD z4xdkJb?N_)}-Lj6f~4bq_FNg>SlqarCYsWI=euZmh2?}ot(`G zuUndCMh+grh8#5*y|Zn#x?$C=xmjZY-sEQmW`u#*{)@cj(@8Je#lzMs}zg5 z5?>l_?lvqpTavQWcEa&|!?!+sMCU!P-)>M^aeR70Rn<%?OS@h1;iFUf_=fe$ki6k) z87U}o7N&NNGA_S3t9kb5g2v3bdUJ=Z0!4Q?tLalBMA&RM%x4vfgwrr@3?F~EVBKD` zUKhLyI8#w-Mf3ra3a;9ZpfzIZr;0$iwNn%;))Y<`j54U=2MsOg`Y5_u&hh@UM_im3 z&QBUhiG-jX9YP*gTC;6EudcRy@$#0VMZ>f630(;MzPlFksIEv}6S7FWN5q`Zsv<}l zZ8hkg^`_waOxqT)j-%rvwr!%1iOt=HMS|M4oJ{LMNwN|`N$o%tG7+8bn7G3K{`W7@ zcFTYD!w>lGlOY=p(8?Gh+ir!?6P&4~c-0!6MK3EOvp0yM+aCj^D6|1>Cp1nJfTL1q zRWNq!K4dC?k`HpN~OV z9|To(z|9aY%AtdwHhBOHSQ*VA)s@&A53RQ`SmWq@6536%fJlI+TnIifubeD9lkg9$ zaf}l6`wnZ*>K;GGUMhdDbG5hb9pKdE5R%MpoGD#u8OWyq!-!<30VWmO|6ih)Kcy%u zW>0K<*y#+t#*n1TPHvxJ+&a2-$~aZVPr)ZrC_AqUogyjsxVqu)>K3aU9kN_CgN1X> zU|kd&25rGi$feLn#msoH2H$H;glwz;U9_TvLe7S88|hNv`ANmhK`e!+ESs>VvYKTJ zcYPrh!)%#&dTdzbM87E*9M`vN&d+9SL#E4_>;-hw_l4{279TT7ISPd|a67aTbZ9KX zjhNcR@wVsDBS*cke7)XcnBc7A^!%9PBa2Rfb{o01ipiu#p{Xi|Yidr8&WNdF-L63g z{_x@zSp~ETy!pDL4Vh+o%MZW*A!aVfq!a>ln#wNt{nuY}yA-sPF$R<+c_EnI-Q99~ zb4R<}V69;~vt&B@ev492Rkhd(U*B=En2~a#nP@(KujX!<`TXUEo7;#Rz#uwhD(Bd# zQ)5udlCr0e@j-q^m4YUt3wYI|k|9Jz-$yoWq3Fb4|M~a$;kTcm<25m?=~^M1DiTIF z+^%k@w83OYIGHf59PM^XikU`POi`c=WCle7S>A_IPzKBgXZnA7bm2H!RCHaSa)zgm zEzh1Tm^7YQV%PCKUn|zxqn?+m~y;_^RbEzJJE7 zio!hC4oX3rO8%ZaS<6mEGgO%aTx^6u+RC7kgoy-DO-Lo)@E7-u~u(IOf?WkUezse&Ef!0CBjh*e3*aFTju8hjZ>5 ztaHV`7n!*8QM15+Qd!_6M)=P1M)@CA56)Kg+{}c@T4V2ro4RR;3xh z7naItbjiB}BJAW0Ig4R^xSTH)*;g+OCO{X&I7SH@2)kAkD~PZ?0ms& zwWU6`eDwU3n`OtURc!i}KFa-jyr?-pHcTf4XALD9HmjDHJ65YTv&Ednw4v58n^bJp zTVB4r;my^OHd$_0Ti#w>qm5x!JGSdPa1G1NmY@Chb5g14Izukva9UNcIMU1)Gjfik z9JyL9+4ftkty!-#T_?#%X%TMKwjpFg!iqSh(!9O7r5g&V9HU%fdaxYOQnbh= ztWrd)3}l>|wW5!jO;@;CZ8@Gd{KcPrkN2NUuxUl^z3_*+B7|*|sHz%WGELoJt>I{9 zv8ChaXv*zs%eIBPHi#{7Oky546txP2E*dMSLUik^+QY==7$- zYDeV^>$RsjpP`5_bO6Z*j4~LPc>Q9_=U=VKR&%}8e0AOP{YP5RH9%IHRQAhE5%L;% z9V!ojV!V+G1#vlarZ8zN**HqtqO8TLLI^z?D@^*Kib`*_$|Cjw9WWOK!X2N@T40eHE$+fZj%u0%x z-RB;X$XHn92gh^VU%hJwvnxa%6ao??#snzekOE^=PWUD&%zF_}L@AtBOr0T?K=7GL zA7PA>(M8|UXt`c|Y~}e1=oBerjJ5pu2cPij)iqzfx@P4Sv)XVmwU|=4>ms>`Y)D;I z^g+|d#HurV_Ik_d#PX!6>AOJR$|4@Eh-8#D1S&e8Q6`huc|Zph+CGy>7+XV5#1sj> zlk3JBQ6kRLCF-Hzh((fT@PVQ=Z758g<7`rK*%sDq#NTYWzFKm7WBBgJ7aYwNgp#>9 zo>7^|CKm3NJwN^D-}Bz{#}GWKia<^8CnTv`P^#kcCb0VFuW8>q!|KAD&5{rzC#Pq8 z^z942d~wCq-3n*r`h~*nU1YPoV^UjeRiW<^>rGSc``PK!M zT5)@M$JQ1~GPv6E_UfAX;+W%;8kZs#L)&$9zQe>sjuD?SeIIyxvmq4W;3+jA5EV4e zNMg4Rs}7jGF&1)KqbxjqIz>^VE5p-s!`1bMHWc38bQonwQPcIArp}NweV>?^n%Aoh zU%oB;{ijQoq2h7YxWUhe+rnle)qg zxqux=6041fF26_chiIRN zLFaG@e;BkMj>^V4zX%+{h_-sT7kRjBf7k0hOau?#+u>^-R@U!&yad#}up%g&byyU~ zwc%v$I9Vu;jxTW46k}^bDD-W|(PDz{Tkh^w%oYnCKRHEb#czN6IaHQUo}971UGwu7 zSKM`?5mbuDS;TrXjpvPB2f2&P2XN(wi~on8RenbaQf8NY?k8A^2m~IUUk;ANn2;ZK zA@}wu?*JgE5ym~7-|;@!gA4AT8#jPN>Z+ouCMexN?rEGNZ#S3}u+vkTy2h_>2qm$N z9%~y67N-i^knlcpdUQ-}EI;{|HJ7a-D8>2QF>4IV?V74ma_^-;VKQBZW+8n#hJK~`s6)ew`S-E?RrBN#JqQ(_hy0F{TOr_qB*V`O=^ z#UIslA)>P7%a=F2T?KrQAsR)26|1mK>kVIeUD}HY93S zv0W#+ZY>qQg2@2OHAdlM;Fn+AFq>4w)H0dOc>nPc*EcWt&c~1Nzgpp}CB;DW1z!q9 zMT|`|qr-E8pQb8>n_QCT``qyr4Gu)e+H*PmSyW1(^tM#(rgri?NLRo61Qr4TaM zVfU9y8H8s8xj^d^UGM4JNH!Yl6z@Hnqiy8v?FwBip=f4x#rd(Oo}RF2q1&$TzGYir z*3{rzs>-30>{u#eMPDyvii$W53HjQ!$N%Vy>6)8BpRu~jd zM7u7;kijZK^0;h;V}W6l6#vKH-|&YwiH*`Uvue2bwp<)*V)j_4h#o*3vuriY_>91O zQyg3kDOjfjGOV>g+H#YdZf^m;mPrgx0kP&%;CkY z;)^%8EOR8}8dSy=IsRq9E{uU%z77Q%IS9o2^M80whwaD?1I6fhQIvFjL!&Sz2icQ+ zb00Q-$uTUuuB?>2lW5r`k%D~B2(UpJ**huNNvM~DE?8b$6LVrRb;N!{3~RDN6tR=$ z_+-JR>+!uOhfD}T7Ocf%(0D2dkUlV<%&}dIa+Zma1^$;;J;fw+tw}KxlEK&lB{J1o zWYpvw=5p18Yak335IIseQ)0?2yMRrF+h2c0Q#-cZnxm5wx*n_r zV>M?d=jhy_lxLG5dr_NJE~9m!?|Z6Qh4zW0TCg>bAD!@r&tFlJ0aJK>o7S`)E z-Y4q1VR0mo*Eg>{H#gTPZ7JlTd({J!II(FJIV+Z%P85_8DW_72+6H7?rKl@GR~bEC z>=|OF?<0K_4|T1@mc#18cDv-}Hd9rWZrihI1GTMKtsEz3$JBL$DKM=nuC8xMIr8ZA zoSW-wPF-O-cPOn1K}J>@CB#NI#JMqkkg)(UL{Z_TfR@T&T;i3SNGelR29x3aXA54v z-I8@CWi`m0L{?qo|NOgKzPtlFolvDnqiSLfES%$HHYMvdDv1bKP6C@l4f5B+%@cfw zHj2ubVQwsHxWQ*s2u!L9t1_l8G%nF9NDNE#JXFRRtkV<~2P(eEo1lsak0~<*gajI# zt5C#U1$sDodWg{31q+3cI*Jm6%OEl+3(sM0c~C%pv(lH5g?IvtBbRSVXcWe{eb}8y zb-E9bW8k{K7=GA6>=8_dU6Q`{*~U)m(Boq_y2+VTqJS#&z{d{rcY_64Xt0H4V+(`Kz0~=1}d=a0(Dbyefbsh>JjIU{t_P}tJ_OH z`u2kFFME8j{PxQwzxv(h{N~e3zFxN6`2^OHqTdDc(J-o%!-Ov?`~Ixs<@9 zcYB9nzruc3mCGnjC%d({Q}liJxNqzl$KzhOucx-#wv>SiTfV-zZLv%$&9u?7TgjlZ6rL~;I`hEtF{1KJ$!Iiv z--<_%F_cqSA`z=jYT-h3g_+%J?J&Tu_0^ISLBz z#Z6UNJFxyE+9*07D5jxpVY3dPd%6f!F`UgEPan^5n@DFO1&t4xX4;@rptg$CS+udV z+rY`mF+SaqRUoTG-Dq-XDG}OYer$bhfC1Ianu+bc1v@W2PD_PFh?|;l#-dG z1dMNLE*+ws7#5~u$FXOe4?zqgNnPz9yIZgxEc5pXVowCzC!2RApZguvVbXf|{W0K; zI~8s85Nrp~gwd#yc>iL;pM3I^fAc3F^X&a6Ts%9bUeq+r9B1Z)Xi=<*zLQESLm@Gn zPCy%`vpH598a<&>hRLi#<&MduC-ok*=Ft&+e6ipcpTFU!U)=HP&ZCs25G0@Lhhwb6 z)x-W6JVdV@o)`IVsHlhgK>luIq>vK&V25;g+#c?d#^XIEw0kN8j9hwoza!KA{`u7R zo<9eXxJXe@jGOfmnbbOp%A~$0^d6%>MD~1I3ol) zXDzQ^-16z~FIjeq7!{Sv#0!g7if!+?Tdvt`JRt=%4xbXPXi{m>s_?Cis-w-Bw>Od7b;qY)U18jWqq7MZ%hhrt@-0QK2WPDmbM#DVM+ll2 zpi4a{Q8}-x89vEz>0{(}+3`7^+CfT&5QICUV#n&Z;_UGW7iXuudh=F}an7P3tlYi( zB*Y-ToO&SZSI-L?i-b*tSVZHm%qlyG^WwHcjEuQN+CmuaIu2I>djA(P&W?EtOBTC+o zlag>z6jocbtC=rO$kDKv*7#_cot~28hOYI51X`o z@2&}Y-(l>|$w5#bIXY_KLW}|YUq7dL_Z)fbL+Oowrl;R}oNFlFV>IZZskQK; zS|5b@kK^=c!Jq%=F`s?)f~%RsetOO2<&;J%QtbF2KRM^;XEXk{-`(-rc04^YxUFH; zd9<>`JVL$AP;3f3KBs~y31dW&chXqMfx2qwT2CtAw5BqN*>OYbE0%0oc*RW&bXg`K z$wz8q`S!QpqnT(neJ1KmMiElRRTKIo@bD2*9zp;LF=uia(3vU|QotH3MB|c3z2fBf zh^lGu(PAoid$nS{ZpHh8$mz)p*JW;(9U*SX(XraVHhLD*DNy+RA6_u68?2R&e|&r_ z>l+t|zNNAjqa3O4$bQRq?dgG>MNxMfBiM$JA*Wu{0XLCQ3K(!`o*o-Q^wg7vlru+j z(a@buj+i!@X>D=ZVs)bJA~(y9E(F@%Q3k!a5-cTd(K=xCpzPo^T?VZpRxA3hBi1vP zUF7O&MdNBFQ_Z@SdqCuig?In}AOJ~3K~z}r2Ot^+IEyt(<7_1(9uzq#QZW<~F%B$9 zEk4sZi5jo7VivRQJZ%fV{Cp#R14^TOpicoM^hM^g!e9O9DMqhJS@tF>6|^1b_)g?I zrqx8Ma;1hg$)i+HGo4U10c|=k0`;3uEp3fpmP#h~Sc&p9j@0_jb7Z&p(VF3t$zQLTw61iwP&Q z!epwcCg;@6jFK~kjBAc4IfCAxtb-`QMm%V=D4UiHx}bCx6#^p{s5X|W2B#X7jkqc? zoh~>&Ipgt*KGZd3T}S2uWVFv)`wby|jQP#VqyM*8r%)b3pD6Yf4y9*n=n!eAUP zs)y%sSZt2_Dm8W+BMM8p+;>UT9Q1v=_c1)7fRM|m*;WSqqC_Z#E=FuM!}|cGKw7^< z%)*;d+S1HV*mkdoC5Y%@-atC=!Gij(R!^_WZ`Tn=hsA@;_3qJh#g7wWU z>(@)BVZtBlz)u#ITc60ANYm7uJK60-pXvI{CS`m<#$;%WE-Y%x@x)?HrfQ(?Em3Fs z*3$>a`=t0_^5Uy!44dhGb%qxV@X3c*Jdjuji(eb!TvA1?#3 z57AI9C8LU_G7ULF$Qf-k&Q;7NwcHbAszx(wYV5FgN-5L&45r33hULwcyY-5kZcu0< z5lc--Qi-3RPkHa@BW4qaRd92=VzZItm5ZWZD-^XzDAD6%;^kE#TyCkWibA4sgS?1R zv_2A3Pd18~oziw5rxRtEti%-2n}o3%O2BGGQW2#qo<4pooGN$O|GZKo`)(--s z38fr;FQ~0;+tYTD;6y&Ysw(CaLn$6eXl+=oI%YG+lSebwpWjk)HSp&Ys_20SBW|+R zsIlsGh^iyPpn+PQTwbl1R5jT` z3Xx(fbSb3J%V5BRwpP#r+7RMcQRl%A-H??8d25XzaE8GAu(I5bf7r2$0o2ZMu24#( z6hTx;BGDXHv11Uw&jT4Xwnie{IILw zJIv*?L+OfwKt{E(Wa4nFYht!wMOwn89^K5**|TV-%x2G+UMy$>`0z`9_ts;L85q}Q z=$gSOQEk09Rys%mf`r?5cyhiEC0q`Ecidr89&|8LknBcM3RKyXSIdwH?u`czt_{X< z*04C2-_j_?&Nx#$M`hd~pMjv2qN1KwOe#n5iHd@bk*vWw;a3#`)=f$Mmd0AV6$W?R z)G(`g|2tVI##Y3TNnOInfXbPy%}#-$u50n|RvK3&oOM*y1XN~f z2k}m8aSlrG!U@BOKYJ-;1y{EldOyg3q_JqztvNke(5+fJ*K@mGb9!`+@77e-;A}==>2pT)nUWi^)ldqwrCqn6oB#>5 z6uVVzY3iEB8m7~liL<1n=tEEGTddRcIT5nL+DblC5>Z;w2un@q_PN@bCWYF@OD|Px$iJKjrRf&7>|AEuPXr zfgwRDm~7EBgnrFrVlmEu6P>GVw`JLFP}i_(He6qe409W&n934VN9|^ytW=bF@Cwjs zmn9=mv?3$?0a@!A%CHO`gX+U2_aP!n###3}kZ&%k_f_t=%zf7~`{CEPxF4jS?j?kG ze;p>c2Z8ZmByu=!AAf$Ba1P(fI6uxK3P|f6!c40N&{HFVhLtwduHx+RF@OBwImT+a zNlsd{c0w}iZ!s!TxjEHjLRKQ4Sl7*<*sGwa(8Z9J8%krrI&6~B7E0k`LR(36RvWtQ z7NrVqt~sUVuYUACt9HfpfBuYZXi!Fcv~&KZNBh0wq8Lb|a!mJ*i|-a$ykA({zdm*w zjR)hf`()I2Ki7CpM>(Nf1hPJgPbxJuXiCsQ47LO@wgT@gnve`3d5Vfu&9R^(wWowc ziM7?V zPNy_XS+6^~J`u`>se$>d;_T#@5)+LvXl1CZMCK#SSw3*6#^l8tTv*2JAzP-{NXZsVt_hX|%%TEc#&-Vn}pe zeBwhN2hVqaMB@zg#gv<6OGp*9E<=~)xLvI|ua9~9=#16!25_?XB4LNAk1_C<#7+WDm!@-r3eS4 zNRYLRR*J=9#>ryA)AKp=$%LPM`iB4TAKs&+j`ecI{CI)YHB~(U8WI7W{a|-2O3#Tx z3SK-5<}-43xXKZIr06Jn2cIb+p~+AZu6D$bFg`K0mM0ez{^MVM$REDA=I=fg4-6&D z!2R*K->3m)!EuMxs4 z)wGZm2em8!tSU6MK^sj7E$!w8)66kWgVLmI*mQ}g#F_l$=f@QFHU)Wrn&gudwlVmDb2)jaqjr*AAgts zSd+y+-VdX~QmCB4IhZvLLc|VQYLGdePlzfL zqMRa`E;d;`^Rx*tO+j#g&q@Q{n(- z=)EJChUGe=>G-ez@`Atm;e^fISA6}4!i!feZT2*ij_4b{yb2TrbK6ll&7!e9J}I0o zGSL@qu3LrYA zzXMU_eibZ#?ztaIDHIwJD;Zx`?Gk`=HTxT2e2v4PICg1cd_5e&h&uD25-{q04L=uY z{y-^#>|1{G=?mWb@EQHubLS29v?6+gb2V98lx?7BOp&B5c=?I+OWL4}5#hID$svm# z79zi4RVK%XDv?A&Sy3ubF%xr(Hi7da%U}QKDZhL38COflCGN*|L$@)yBFZr^jN+E4 z5qe!nd7mt$qSZSB>cg(&u(Ob)QFhYor3_=hVYjs(PjYa5?5~}}YpyT|8=`j|vb69Q4ON0P7S8v&DHdIcLbtD8ikG4SD_k+Hb?6ABS_WGnKbki|;uKDU~_}$wT zW-{f`#TlPGyP&GKoV%K!TRPt}uPu{jQ$oyS<{K>6h)h43% z+^l;3*Z=YoV&eIuz_%W)`NT~*dVa$7)rx5<{N}UYkbI==*TmQ{Us$%Aj;;^f+--pSFTAT?>l>2jsdMsd-A(OERnyEugC-i+!ih)X3#4ILgck3-T%NC!c<1qI| zi|o$Xy`(?fADKc95RzuoF1cNG9L+38Q_HNL;ua@-{ptpRxlh&2XuW-_gaz-E1mt_Bu(Z8<+bMx{*XI&yJrwmqTG#E{8Fi4}tt z4Y8CW6eX(z5>6Xpk%ViF=$%;t$8*c|O-EDJ+^z$Kj(KC5&kSd$b2il#%Zv7sl@T-9fZT!)R_8K8=W{Vc(<%lpvHr<=Ncp zVB{F?&!g26j6`-_HX8X}(vfcRo=(=oAT+$Xv&kcuIs$YMU_@skCq^t5f_`g+4UM7FOA zzkhLu{pmk&x~NIs^WnFi^Y!JDCy&oD&e8h7W*O)^O;H_f44A6IH8tIKI~+8FN(MEE zT~<~TT2GfZFkR3zmXpPd-gmsYy(MSacSJm!KC=yh%j-3*7l%;I055-V%^%+TvdFyd9c)_9qtg?nlbY3Pi!zzgd1?z?-;s?aW$4?4?-NGB z(PDyj3XEYsuXt2yeD9goin@v@X9$&y?hS?%3_i8Aea3r(t-!?yNz=8mAg>%W6$2Dp zN=9Q8$!Dfj&DurQ{g%3Nv=Lmf)CnfFVp1E{ZNOF&7t{ee{a7%+A_ zhJ4>SZ+xz?GdR@Iy6;T*&Bv6&&gm~FY31{PC^`HZyAY)m&dDz4Q1Zk$c}<2Sl2YEG zir)1ea!SM`4BD;@yonmSP)v^++*IVMn`X}c$Jm=S$&y_6oj+e9BD1oVyLaDSF=zlJ z2teQ>3{69hWHOVX)GGczLG{mjF0 zkMPKN9=@FAf6n z4B;^5u_U7;RS(v8KN?3zqq(y zj1lV$))~ezsLX3lA=Ywov?lF#+Fn|e56yTXxgCrRXPcHy2O~-WbaTBU zgvb?+!HNX|1JmmbOs_;kI>ZXtdcoJzf!# z(C_!8K5@EP;VcB8YmYfTYE`Ja7V8aTh`f1o!@5~@_aCgWHeziD7Hne} zhdpPThPG+w!-x=QU1I2WwEl?urz@`ZH#z%LNO1?&;*}WHB4RN%XdeNhrVd7f%M{uG z!!RJJh#cLrm0ELHGkGv#H59%muL14II1K;NChp;8B*o-+M82PFixqz zcLmLr^NpopkTu9+eoG7uCO9mH93-Zp^(`ky$8>GS%Qv3QW<#H|ke)pL63(6Q@YTR4 zpSRKKC)b0!Ntvv5C)vLbd951d5+c%eZRvs z;JjdchiM!eW7w>e|1e@0Mex?)4W2MS7zIn#c%;mEqD5nE<7mBu6gfJ|_0><*&Z?if?^%#_qD`op)B87&wxKCPl_57*UMclaLs}wwSif2RmlQ_Nep2lCdN2h;=;slQ|q?74wH!XSP_930p zt)cB!L=17z&urSn(Yj^W4tn3B)E_abVhtgCfJS2hOKSRBQC6|3i4uQ)?$8pg)4S*R z#&SOEwbh@MkwCTYWPZKUgKESXVT^%(Cw%`Oe#ql@o^UgaoURN{?yXs!oN@V!kNNb) z=Y0NpM+$+i*r+iYPX8jnK6BL}C z5(Pp^q#z`*j7d8pl9JLKkr3G;)}iV9L0cHaqC_20Mm?jWfDeo@Y8@3|b1`g`08Pth zpFCH1ISOIy+3vLwTEE-TdBOQBf>@0Oq^KEJ64~uXZf*vKVI+_;`+!uP+Hf_fcaLt5NTN z-}g8o+e^nVLb6&vq#bTMqC{+pG&X5ZB~b?6F=@uu>2X6p>9(FP3SPzC214PXo?t|gT4W!MA z7q5CY#<6Y^t=H;t<1EPrup?=R#JJ-dUq9jh{N9f5{%lVhw{#oN>XC9*;)f8L7<@qS%nycKkwq&kUch1inz6iqX2_SkP zHK=SB<0=2V_nA3ZyP{cy&5`FDA3Wd>zWs9|>rZF1K4h>OmNMi9Q3$qa+ z_L_DX;|^mTL%77UrfECIF|TFPn{k~Z^+_3VjYYzW)BwTY;tg1bTNxg1JZHy8THEEDa|dPy;Mls``?hUBSZ#8@i@NQcu$uf;3#7 z_oNi*RvSP&C5~g@>SjPtX5PkkG+6u?X$Ijs4ulvvzlm&jTBoH+8Y4c%h_T9qn^MBJ zYQ0;x(wp)oTZ}^6dc;Ay^8DjZdd}ZO{^WmcSs`r40Agu~L}v+Mr0qN|dfvR;avdDU z$9qoPhMVi2wRgzMah7z}aPvpL@2J;cys7!lKD0h0?~iqr`M)-|LtsAnn- z7SGCij7!+o5Qaz?dl2R12@)VFTq4%ewvN_CDtt)qE&tCluXFLt3Ip-N(<*av;8~P) zI1I3s*JmTZEKf- zVA)vq{Nx!e*%5Lyrl^5D&XUw&i7~enrh-?inBjD9g>%m2=`V>2W(oZk+8%wl*#N>p z4bzHd{ZOrmR0~@AhB!)*ESb|(z(l20ae!z;B!eMI%h(fB5K>$47fY2#m?o zSVI{1#3Ypd&dv*u-hm(gHJHn5zVn@@Ts*tt`uc_t!L36!HVoQE(|dUTxaHx= zif1o({QhsX5CYycc&D_-eLu2k)Pi=_vfJ%wnnsyY6UuGxJVQcj4eWrhtE?|ww32RV zvtmkFk(I{)j11-g03ZNKL_t(xQJ!ulS8Xbptf*N)=z&^(W`<|zuKeAm25zc_ug z2)f#OuDuX_4~uJ-&({#lVPBB?upGWttU_@X>!7p3{Y^&$Y_GPsuEXzz=)txf-Rg*B zw2C#wh>3txPjhOEn;?axgc1FYwriALKSpAvzIN6##z?>45%xFQ3&VSr7NU9aP16wl zz{9hSU%t2|9L&9X1O?huE~?^<)gESvMI0*bdMyt3LxCy}6ET)?tGg6MHNSE|y`S4R zE2X>=o_g;zwYc&)Qx<@NBSeF>NmYT^DS={2nvhiOpJhy@!~sm@DIFRt$)Lr+kP{=y z>-En9O__<#r(Cc8uIbvQFg9osLQHe!qbjdC^Dre*2G6X>6lT)*)C#KTFzYNS2uP$9 z3@dcI9FHOc0-2}J7@7L?48yQkGabibTLEyh-%jwO5kujUP}nhQk**D-6x1uWWTVz7 z{gRo_JjRg3PWwim)8ZBJW&T>ml4v3hYdl0H<+R3t(*p5f7^m^%F98!Xi+a76%mnQP zfn8>2H?GP18=Teh2y4MhgG~WbH(X|FSk zG&c(>2cfn=Qz~^bX<@mPNiUx%n@#mbwh$|eY!)gtG{V8(%Q4K=%1a?%2XgOHM0Z`Y z=KHFjpASz?XQjzjQlxE!#wNVgR;Nfs#XFBr=M>&@uSHgw3<(*#xVJ9~ zrW>OWN6DhAJ;lShxr?2*_HJtI{H}OP!Pv`p+uXRPSjN^`w7pP7Y2US9M5$-7c?{NQ zCA+(0EcN&cR8scdVG}G^THj=7_cr8evbR#K^5TB5n6o88XGH}=@thQIw!?u^*lUo2_b@QSg%{UR&r{k&-0ZaYT$GXflVizZ5+l&V8qZMSQ>9JB%Jk{ znPL-?91o8g9z9&~cRzg2=H40iRuLNEXV1YI%jO82i!^OR%KTV{BN`cb`D)MmPwum_ zBm3SEMmP@xZ>}A_5sYaF#$mj}CL!c}Wt>-H$TYC+_iX#XFiLKKqZUcoP_}G(jCSFw zgzjCeymqqGGKUtk0B}ahD72}NCq^yWD@b>-%$#eo;3-%<)4`nuxvdUs*~I1GCM7DA zr2i<;np$*_Dl0T+B;|Xq(}ioHRx6Q7803?pxVF|NI zR4wtcw^Y^^p{aY&me>M<6{}XNQ4C)zjhE^P zlRGh%`?=NrH!Fm)Z%YiMq!<@VpL}a3?~ziRN_G9Rm&+L|keJp}8I19h0N3-B_hgQP z>F3J*&AYQ2=)7a|eiPMf*}KbLiPgAD@%qXHnev@q06yO~CS_W8Ys{pSZ24baBl11F zY>e1a%Qf9orow0bXUi|i=d~@xuX#`9|4cq7(>+fx7`dW8Z#koTV-fEG^^(-tRpnp| zHm{HN7Rf9PxkSw5_nGX?V~z6O=?i&4Wpk5dl4Qz^lrYv4f(oIt(>1PDexe*vASEG& zljm=}A`>h%q$UBI1qyo8 z*|dgXHRTMGAjSrt)>!Xo@^C{KY1(y8Iqv9IYmya$ z^f+rssiRa}d*2bG!6LemTThCjyjD@;Fykm7o~Ah>#!_hKNHlosaqM|=y5Z@AV_tpM zQ>yKgF<>-SV)FSaea-8%=ShjAgcPg4vcPM2vCL6f_j&Ee-#ZISk)$cDm4&}tSA_+Q zF*pOxlIb$4_hhKW+PT29RM(gN3OTzBg>=&b##?$0df8c^%jlSWEtkjdLF2f;e}TB3&a6oeMmpYmdQ2Mk z2o0Nc!^N8(2@xZuLO5ZQ;(txIR%dC@zl~SoFYj7yXX!!~9@+y%a@$g4mcsk+px?Gc zmkV}ypvp#=Q)_iWQ%*}1fzrpI2%b8qzFhpmMdoq}Zq8asb6=3MZR(~}B0>mp!v0|v z0yXA;=zYwe=hh}_oae|Ve(!7V@czRU`z_csa&o%HHKHt?N$C@;wIpL%pKP@7OZLd9 zZ7~&-)qrn|ML1fFiKH+n0j5C8Mvb#h>wK&_6#L;EMAK3`9|&>4w}G?cz>^b){WK8E zs0FohrKII9ivnu}Uoi3I^KdBi?-Hc?H`6*7A!m#dP!_A&R>Hl&NmN#>9Iy}=V<@S< zYSG5U7^dr(Z1`ljM$@#b@j+&bo*_`F_DfMJ_3MX^`uplREHRY34ETAj5_J!h^4=QW z(u9`kIjP=w*TXEmh8Wf3Sj2X!vDZqlzMpBXVJc<-=JfspBe9(A8s03gPu_&o*;>na zI~+&-JAk#G(rTg3#+>h^Wcn?ZxSp0Ire)XfX}p7^>*JjI z!TlJuFZU30VUvd;l4KyIJz)^M1S}ro9GlHCZ$CI=)oj_NNE!p=*1uxrKzAJzDEC($ z1?rmw4o11TV6jIIucgr7ycS?GldBe70+ga>T8ZD_A3kVAuG0TBvHSzgVzHHKtnsO>Ou z;|qo{J#20gc6e6nbv?AI3w(QM4AkSQrVZ{0{(J8i*@fY{sPsEyR3 zh;$4E11qaux?@)7v~uo>x3N$N2L^zk@0arVLtU@d%`Jsi&rz+EQxd#4_z)5?c zllEu^Lh!2HLIh_qjeto6B1FY~N9l2*)>RxG&NW2Y<2@PYkBY_NHN|ZJ>v!NBPFDQ0 z-!U8?_x#|O7xcR=yPG|)p7m_Hk&m7RI&;R`AFVk)YPepXaeQ{4tLLAvK5b~Pg+2(z zM0^yQRma%(iVWr=80!-u1mYM;CgNS9u^x$;#nve2l}>9(@yz|qrLgq6e8`rCbsCRY zPV~~^vH5k~471mg6$gZr z2>TtYm9{aCR9tNdOg!+ca^Q246aprs zN#GsKp4GYQ6Wor(9&7z$x%`Fatd+9GYq3c*`_8Dv|LsTNm_aARPi$qkFpWSt%!%bN<#iwfL_}ZxrooFF||J7ZN(L zf;i2$w=&Z6@#;ER!77TF#V2UD_Fn6I*$e2+GF*cAO{H!WxW+` ziYewX-M*Ldc>rH9beq!^`@LX{cImUN-ay-SIf$+$>dv~Xu$806SPNEPPf2jL%>f{b zZ(2mGlHysf0jZcbicN$hoZdg;8~5Ml&E+|tJ-=idS6mDo^5UAm`>+4V@yUj>vjBq@ z&4dW+&U1VO7yAKcAdEe2yT;`O@xCFZG52-Tw(}x!TChCxlXZXS>K?kgb#{`z=59^w ztqoJruWK-R*|?}EkePmDxxtH@3^V0PQ7-zZd!;Wk#VGr1c~gbd3%n5yXV5UW0fCl>;8vDSAy4AbGB z0;&1B&Mt%MS;|k}QDCMbK<^rtF=nQ`$p^n4&*FZlO(=aPPTtJj0 z!d%K)(YI@^cQ>rMEl=)QHu8Yi=Qq4$%lU=lH@|ts>Ah>xaKiq)CrQIF?lY7Ux#|sG za*<66ByX^J!&yMafK8eZAVr?fUL=Pbs7zAXv@>2hFU}m#m|>6GdrIzD7!L{1N=5|2#pL)y?#4L;# zpFIe0*Vnu&_I9|(>VscD?jpb}`$I~;C`@stbny9waLVuPx=zuFDxJMpp@w-LMGjQd z!CnR?#d$c^d7kg8`d-Ek>ucY7Ump0pUgp-hvc*%dhLS?hG*{F|=+=Dzi~G)l$j@d4 zpOyy4JfB9_y`(`eyo2TaBm>?ztk-K|jP$$h91kn^jyYK4WgF{-QCvZ>x;N+X-Y$%l zsUOkdeH^BGd%=*r$qc%dA!)rwa)vQAxgb!K*4eAj979q}E(LH-8#?8h3+qhI25A7r z`mGU+(|+EK?^HXR1Xe4`J7+PX1Zrmw8dlwkvmjg_L9RvPr@web;|wRxGNhhW=NV(7 z^(`SPwS#evXbMVdv94nXJ)=ZoiW$z)N?jofmYm5{Huww^#jHr|^uF@DDaA^P&gj0F zVku=2$etX4)%mkbn_90^LtD3t_*AL5YHa1Yl7(Esz>9)g$|MnsCz6b|qkQ*d!=HTT z9lrEd%lhm{bH0P;SD(D(&wlib@BjLO>%nN;L$pB9dNm+iuKze&Z#a8+kNc0GuwJ!D z3V7QPgWzPvu-jpbBaB;Q90}JuE@jWYcU)fwKK}7<_~iLD+S3PNrgmGX5hNv7` z*ZUo>wua{^&|LKxJ94&i{I{Pz=jr_w|Moj)I3w(0z-})%KOgwhzxWy7{mD76ccW5X z=PF&7>EW#@kYSV2B6asuN=R;$mJQl3Or9u@LSs|byR4BU~8i>KLgvqx^64GS1&K>y!M`rBR9y~%_yjPyX;wyfJVg0SE3_3URE5<}G8GI8^jfls@K$-}KLpUWCt$poEh(K5W4 zW57BA7RhKu%&`?MDRKB1OIo8Y@)#6)GS*}+ezoY0aYR(e8!`9{;aF?5g58wDw44NY zIG9{aS8}0;am2c!lQGkeni0 zGC*QxsnrsEg$|tDX)a!f>{27nDC&NNye*f>_5VSUunuC%$3WMLG>fVe=6i81VnHeh0;-ws@F zM{fF-pZ)3u-~ZX?G)G4~e(3q#-@4DelM~J__k8yJ1*`QDZ@+cK%hxaX-~a4aoNpV( zeZn+7JJ+!tM&5pW%4*#(_5+euJo{wNfBc(Y@RvV0XK#)eV`SABobwE$X#6C_30^7o zUdXjT##&+scs$0S9}e#GY7j19MqF5)FiFA5|2&KVQ0;qD3&3Kr>a}B)Hax>XOy}&@YkYAQR4t@# z!(4a6Y4yC%R(DPYkomckvNEs7%iYwXrd$C+1fvbHv-{fUp(w2&eW~t_6KS16h@!zZ?^YnW z$W9E_H8`WzF1A=GY87D}-a6XW5rgGs>}gG+C2}21PL;IW?DlwXh_TR3B*MNY0?zwt zK_jIOLNG{DrKVXfrD7ZA44vX-+}?0AEL7fC-0r#ksJeQ(=~AX6wboGw$qyG%m9JeK zrWz-%UEvziD&wis0B3hzh}i`D;NcP9czVny=Oh352R|buOY9>J>g9d#&J(`z;R!(o ze)!oNE_%&G!&!W zN+2;@CjP^p|B`?BtcT_p2?>jEf3x9yyJt5JARdFu^OyI5*rkBDg~Km-t?GF#b6wb8 z=eQIY8?*43h4=)kWY4$kac9(nHIQS9^=U1FIe)^KMP^Wb<6Z(N>-5`(CpJDjt_$04k9*Zb~zZ9WHuBEHl?cw!ovJ@9ndTMKFuM?ze`EnSk9p;>H{TLD+7^S7&?ECByGuH zr-D_vHTJSNx8SJ*rG9w7^Y>R{5|fi8O1x0ngS|1u!^k<}K}fM^nW!mj)}Y*sS>R)^ zlJfg9shRUkZdp!0bk5Ouhp}xwv>|6VSi+Eq1iVuPV{+PSngUx|v*Em@@t%F}S*_0q zS1<8cZiXJQLP|TD=2YqEC6b(Ia4ciHnpUR}oa8Z=c+X^^nH+?sxO$RF+?GXF^~O<# z(pumgY_eD<>EWk^Jm`1Im4zV`G14^B56UyWQ2*UBhhbaOV|DKC|2>HG$X4gKzhZmj~b z?X*|GF!rQ=PulhjTZ23DbXGV!_M9AbcnP>B(X1f#+OvAt_l!fwtMePK_XEH9%{iYw z@7Zp9Ow-X>Xk6l*dmSIWbwsync=+fEKmNzx@bTw2Bs@0m@FMC#M6EqZM(bo`oP|i{ zbkQX!Dpn=JbTv?FM3 z?N7-7q+0`>@bffxlPpSNa)+YEDXhs!67@AIC`ZSjdvFpsGDEG#%qhZ$O6b4$QF~bb z)O!vY0rK%dGNq3#brV2IFD}9wVNtP9DjhdvnyZE7exSUHz*nZ~0%aKrbg1)WCwT{2 z%((QfW~4&Dhy1>b+GJA5T8WjcyF%(%&s8yobbYd7mF0FQG22>Emhs$Wl$P(EK0jT@ zR8JTt#3Mm632%+T`zGJih+weZAXaIQF-^XqQ8TU-SS89x>szeV1K9T?tJO+x)Q&lA z($lm`gM#FsTh_MDfx$s;P!y8lwlN8vZ4jFnQY0FWm5%TI^pdw83GY5^d3`YuqgJh2 zW3b`~aU`H!zN`~kuNg#?s--cwP#`H8CEON6}K*L zuB7;O=>@X%DhdQOACM5jlxd}lT{y6^@*-wMhaPG)tH#4Dx{g?Js`8%TaiK6NtY&XSIej4j9)!Qf5!r1V2qEd(rU*$!)~%+}cE_hk3JkkzhJN7VpI>mZOMLye-{GC7 z_wjf>eEJUlzy1g>j$ghSD12r2?|Z)T(IZw}f^>v*_egkJn|SiH)W9zv@2sL|C{oZo1{uTg_Z3Y4O#&eEb6LGlJFo(#t1n2Lo7YGo2~ z3jr$X(U}7L8Nj+p2vP3;P}l&A`WaiyvXcH^WYR$$LRNSxpk!enO$uB!vMLFybFI@; zJUojLO$0JXRgEu`5|+H?B~@KS*L+e`k`??k56VTBf1R#j%EVctfflQu!`P{KSvjbd zLR#`MEhtCvC}!m{L+B}qa`TyaofnEEDU-PObEcZ|?v-@)>B|;MNXmX={=V|O%8g}A zw!oxiyoyM8d`udMiP2;WN3~lB5#KtMjO2=1YcjE&A^%27Bde8T9FsN>5-0(^uo2Dx z03ZNKL_t(&LGy_b@UF=WnW7#_)B-lFpJED)(r-l24{@a$-PnAth>2nsKubF-BP~>jQ9L?U%)!G2l{VoN{qk4wj~r z3yka{HdZ{4SuwGA)YgK&UV`H$3%1!UPbHvfSa?1~DNSQWm2_j^^r+>t=QnKkTi$(m z%KPs>;3hJn{{$6Kon_cm*u-(2TSr-vD*Jrzz*8=Tp(-(MrgCm81- zj_kL4q8V|?Fp8m%0pEI>)rJ@Y<9LIUk=@M=F&cK)9pC-luX+4n#aBOiNN>*h`Li8A z``MO#bi8=AXD7l9kyT7Qw4N?ST-yQQo0bQUAFx?(`0VnE7ccg>Pd;OtgpdzG3}I>_ zm1JJi0zVZYb!bg$-hF;93!nP%X!`UL;#6Vevm(+sTxn!xjZr~ftxL*@@J2)>thJMn zC}+O*T2%N(g^^83u`S&-)mw-ea+H*EH@RY}%S7ibWQqwiFg^?BqByJSdL1AzSJ#)= z(Bvtl^68u=Y>KjA!tx<|JLa}=HaUi6e(F9vW$u{c73Cc1)dhtmWm0BSVW1c$Qj%%v zr!<2pcw88Ir#UEBF3L+a#$=ooXRf|(`6iRIs~Ye1o>L^ou|hg3Pwv3$HD)$QX0N5n zAS<$`czh*>djL~S0H8o$zn+uG%rTa|)_R|dOiB6+rB(hu{Qi;dV??q zrAAH(BNh=y7z4g(^gzal$yR?E`pl^miBV{Li!+`mDO>4D>54NHW}L}^Ze8R#W}pLd z-hvmBk=zmNh!<}Lj+!-s(QfU|^7`tUD4xzbLfmWCOAd&p5HPLMj$_b13Zr%~bUruS zIe;7w@z7fP){sDXJ;j(kk2$@!WZslhQDf7kAHfutsjgLU^d(J3<@sbwv83=CqXN;I zLn;!cF`MkJ7$cAZo1=zbKil(LPap7&Z+?JHdmN5`{rgXN_k&aZ^#A>si{8>F%doxR z-pLW$KCmB#OkxQ4&eq(&*RkE6^X}WHbn7F)Fbsh>YUjWhl*F)Guh^WP(5_Ai$XOPRSK9p2iHSLQUB?2fvlA>< zrmX%(lh5`tgY~!}}7HZ9tU9qX;zDyB1$5rpgjtrkV5H6Tn>m3Lclq%Fp%WW8Q4Ym{wG(QIm6}4$RGYr3xlN< zhsWo1G)*;3HqkcPKGZqQA{#@b1i))(~E^TJ*})m}=g8Xz{SE_P!|13sYMFCal5Gl{jc-ezuWPD{fGa;^Z)dmuYL3P z_|0d}_`9F{l-M=2G4k6V-XmVW=9^!Ai?4q95yNoF!?%yHHsH)!jU8k8!+-HjzWd|n z{P_R)EAFp4ytiz7wbnuyC+Kgknl1uZo0yfuI_JU9N;@RYmMXof>qG@zm%8#>_kgZr zNyiX{Wb+;{#!UQ%L6&i_sd8CV=)}N5jYJ{Mlw1Iq^YTR|@;)lVM5%o8KA4h5(&R2B z;w>vSzd#PADBN2FI!WD!?3vB+i%AmYGnJ25(mh?2%7i=}8fCfTU=mF#m~F~@K5fZp z%JU#uc-rC-WX~q1X)dXHZlnSQXWS_ttC^;wKsk!pP~foJDbe#PM41(g$wyOAg%o2I zJ6U*JmGQ|uf0HL*ayD!-)9VGb(0wy|7-XN-P-SrCq@TiO98-o-v++4WiD{1Ym0!xL zm9vnFp^ztR49Wm*SsJ^}IlQ%+mmDJ`aolY81o5l@XR@n|Ah{8bn5e~1xzNlQ!MY5u zNFt`3HIa$jw4jh|McLfcBu#}Zr5G;8h>a<`%pETFgmKNMFJ2H+%V<3J*BW0464)oO zDdsBlFa+(&D3!Bd*8h-}`N>OkC;W_y?>SqGI$RV&$snOA3aOVwJ` z4Pvd&c%;_b)Lq^rx0EbO!MS3c$+Q_HTT@Avo3M}K-0Zh} z?BjNGwk;Sx6`6bJ>4LhC=taIN5jqKUYmy5a~ccdxWl_+ zQi?QA==VKtbqr%*yuQS>9!b3lWS6kg)7pW5@$L8d@Jp88dHOaR6ZzyK^5E!(FF!b< zcY&whddQ~pL{4c;!Vf)mwI=pAgg(-&kNIEz?MM8@fB8P|-#g|P7Z=?0se%RcPmem^_1eKjf9j#pEhItS#-3VJ=-W*j)cn!zYroUx=V-?gbvQ zlhI(YCS~YyhBA$@G>xA;l{!$3$bn}i6l#ic&UF9J0^rd4oW)!*Kq}7*I|<7CWSN}& z3H^KWu1ionYlOK~ZakRJ65!8$Sqhg^KCg~hQNyfMC66KIGwYnoy+z8}tC3JzCahK~ zcDr3B&NNf;V|~{Y_(ya4sb4MLTP!FcwGyZw#UnAssB+GpY57iD zl8&;XEAiu5Vb8`#{aDbKFt1G#HE3%nb~&bbEy}o!F*=U2h6i4sh~!H2XbGbhS1E2M zSjY6QSOm^lobeO?PK=T()n|?-n+sfKcS_sig4S;saX`{$LrsIRj*(I;VTuUmW_QEp z!TbE^uRiCK=P!8s$rmNR5-|u;Lop^OAFa*{o9o8N3lV4nr28I7@ zuB=W`p_6?d*k12xvg^EV94Q8nfo(sq?$i@N0+JwZBTgDtN1j9=(IX`O;CJ8W`R5m$ zoU}O8^W_iU1MAto+VST6f~W7Ud31Kd`uK#+2d7AMSkn+gPY6AYZ}IH|zVhJ%{^XB8 z;Kj2mKD`u`LZn4jTMY%2cphlHBZg%~c9NW4djJQNJzl(tIYn}QZ9ZIgE1v0EF$bmf z!izmt_Dva&-bZfxo0%W#Yaaf7h;0`EQQyxYapWyerj zMkqs`t$$O!cPYdU4ZIr8s^>vO===W8dor^QT+H8c+y}zHG9v5mIegC&TDv_THH3OF zwYSzqz2Fk)HjDR_J+hp~+i>e$?>QXLJjXKqD{rgQe+#7MAz)~6-qW_CwCl-ev0cnt zTns5IiwPquR(s0b(_*4&eWq`o2c_3?(?C*;NHTcuFxJu!+WpNb2RzP3E_Nf&&KrjF zPdQm1^RK`2kn8inyN?>2@mhrF!MGfuvzb~14djnenIw(Tigz5is96#dxFBU>6ias5 z-JH@1547!}(kPFKJE^#U`YH6lRvXexHtm$rq5{8Ey3ScwYSkR@4vBgJrC>_)A#V$T z#W+nsh%|16j3b>r0wViediee)6l4Xm*s| z5+=L47uzkDeNUeT`hH7y^pFU|5J_Xi`y<+J#jv|ZB1C%HcE!;5tXB;X@J(W{kw@>| zrypU}tRY6cfjHjKp6xj~eHY)}qkVGBz4zY7#4Tw|?D~Omx1;f}S|4MN)}-qV-}&ZK z{{4?W<9b&rl9$2Nk|tfR=X}VQ>7uvA{qm4Gs~LtfXWVk1lyy8TR;v%TDJgp8a8`n# zyuU6EEj1Z+EaxuaR>ySidVG=4uLaQrTOGvbG-Z5Na(4;!FM94SPx*@;^&T!~wI1`~ zdfYV+W&A~mm-VlevVQhhciAvr`80!S(0U5glp5GQxd+C&TxNO-Hc+bJeY6V=@`D_&h~`O&X0I9_k~ zSATd+69>$@50LbdF~Km58HbOW@s*U;-IxYzv~Ptmx!B4&8fzgMeD1%jE^ZP2T4lYo z_6mMDE!|>a4;LiQ>Mc(Is)HUB1R5j3W%=J-XI%@5zeCUwR)fgk7NTZ`h3qXCMa0&3@0x1J4j0U;gr! z`1bE!@#nwz5y@O(jU@!8>?_Qi2*5PUd2I{wXmZ_7iAS&$wneyy7?7mgX62wQ6_U*! zb%uRqrjehlxlpXE8L}y{mg2owd;9xU@Ra?^V%-Z=A|go2eMTx6gIXXJ?8WFFoco3x zByUjmU&?#2wq}>YX*SAo5psrLCdCLyp&&6J#!Nx;`H=(2(@>W{QZb^Y=c@Oa?73rd zQh_ZLGHHSbXFfX}vz7@|#={+k;$4>e(o3mpX%t~8*D0t*Z48tkzf>^=S8A3_BuO6g z`~%} zKf2Bt1YGNg1DXRLG)`k0k9D3H12MPb zEp-hGEO!#pX(6=B0+bDR7r#&azI+}R3${h-n3H$t%`?_6B5_L?BDU>` z{R^7*KBNDPfAz=TvV%V%s zxxBi;wN|^hGSZ|K(ew*Lv>+PwK3t~oFFmn|8fqH*GPZjc1b0h$O7S}E6yvJ*0f77P z3IFc#gO=6^!)V!$h6iU2>qa4_#y7d0ZEjGMG*wZIkc`%CNQ#&gNyMC%d52oeR{wKjCMeyyoLyU-MgEI^)atR=6+_?0nc`688PT#kFwLN49;U zj}}~Bs2nKt1-{5xQ6dVnZTm<+s4MHeC&h9IZo9^1g62(i+f^=yr7Y(BSq?r6P~+oy zvu9p04FKvXnXI6^VD(`tG!}<0=zK8jY@HcskJiL-WDFyZ*DX&raC+R}%)sOOYg%Xd zZ$Ep*4?c@LKi~0a<@xfH4%a2lFLsQ5WIKu)1Q;zQw1!pZdF#QNP3Ji3l&qR^HCQXOUBi0iwGFa`#{d6(y-AZSS9a(3yOX=el<_j(h^c@=p}?wQvznwxO0rgK zp#`nYdZq864^kgQ+G(eS7Hu+XnW;@CYpK^ByA^X7Mg^kTdeSL zg^(>>+i^PF5Ih(W5%Gw3md*A`o8C_rst86)=z?vrQt&CICPi`4Hb zWhoP$Idqxqm9ZbI#y#`zBi@n_o`1#^)t?(&I9J-^HPPk16O{?LUc0Wze2jFXB>&YP z|CFD8bit=TT=8dr^Z}a=UfnvZYauy=oWA25-T1TfHZS^_f1hzI?(E;ky}n~G>SG?w zWZeW~cs^f0!KAx>@KF8Y>O!(?Bq0h0C%L*%bh=b62?0r9w8_*CB4e?Q(wIbU*b=!- zC?-&?M2$e|~g+S>X9dwH&kVrDoNkKfE&~3|CuTMPv_P`IHZ20k$1w@OF0ckX< zEMjJQjl8%C3@&mSB11_kQ>w)Jz8pB2a3Ns_kCZw3I1QfD;KtA__>c<&)SKAn-RQ1{ zymJfxHr(~@Mo$ZW7n7dCXv!9iy#b>*=}$N-Bf|y)Z~EiMA*90i(dQ9jGSf-~vPh z9!J-%@%{!Q6-2N$V)U9AdQ@vr(X+j3`R3_so_=#A=`e=iXKOw4zG93yqL>R>fogM5 zIp4zy52bO0>8R{yiQBxpl!&w{fJtC8msP5gIQBx!72DmjG#B{M+eH)#p7ZlKKc|yH zW7H>=8m2m_)ri(I(YuOeG!lZMneRjZGeuY7nztqT1!6R~Rp|>R=PSd(;?Dg~@2`>i z+5O!$a8wgBGm>Yr`(|V@{|nEVYD9NI2OKW}(!QBu!xrpckZ3Hhg-+q7K$^8`s zfsL6JHzfyA;k*Koxv!)Q5KD4U36zMenwHx>^6RI2KKNk64_2^99=%y`2)8BYbP$Ce$Ck;2KaKwib4v$UigKo3B>K6K5{0^0j8?R;qItf@*Qj|5I=d&!_ZY#<6g}mi3Ytgp6URqNqxpEtMoq7uuXkPNR9=v6gdEpL2u%_> zmej_ebxUJfnpV*?2Gbb2MN3SXidK;L$q(P*kAM6Kd+b@?d&rkxzoOLx|M?$Z@JB!U zA+6B3U~x|1>eNUznMEN=o-XAIPRgF<{EHmF-ISB6uv8os|Cqo>j7E8WUUQT^t(6pF z%rA{mVgmK#QvTw>J;SoiE&W3;x!5S$E|->S1xkX_fbeumG9c)8o|qCtWBB!Njy$I&!Moy9`l^fc$R;A21KUamk9)g4@9xZpSTPubps*`zmTg!p- zy@|YFD)%f<>sv(sW#G7Z5DQXhKl*{XpBbnH?Y{8Y9s^ zl17LI(=JIqg7;{V3K^rs=$7D4^oMH%L+SI;h~)4mhtUmIHbi@1*){zB&pzO-F+ki`?y+ zpJUbIb!PWb&)67g$(mfRXQfL>qC|voB7)1`#mq?ot~dZI#VP# zMkYWk`O8NSF8IMa_xb3(D?a}4f`?aE+`G8oV%_oXqbr^~*z&=<_j&wS@$hQN-|+Ze!^iJm^2vwyutPRL`{R-4*E_UX@X32u{Na!8^G|;Amn{E?k=ZEjV|wsc2^edO_jhUIca zls>cIri77-y>lpX*=^HGLd*n-@Z7aRl|1EveXjg15rzS%F08=oG{7ci@CG> z*n3{@d-@<40!X21ONA5K1b@vd9ly=nkuc% zys#`p%zi(Q1Zv`Stc$-J`g2}zG3QdNd6&Bd8T04wmXgomld~xJ>?~FzG8rXVsu8QO z-%XNd@AJ(Hr244c+HZrC?i#du@3r`#mW!TIf{gcEf1l>qoO{62J&20Mi_FPnlqUEv zj;&_)>iKuLYvAvGx3kYX6X)~4D^ih&Y}PFwfB29mR}D|L9Ur}WV@0P@001BWNkl+`r<-AHK(v`x`bJ&2HDT z+FtVgi)&Ie9Cmy5$0JDymOAnA<28T!pFQT@_JYHqXSrxFZO3M{M5u()l5WwUG-$O# z3X_$*R3l3Wr#vYD(;yN{%D{9+M*_U&>|` zB#mx7GI>N)M4cPn>a@YTJp}b}9$LR$vDe>ov@ugWLez$ClE_}txe}?nI2WYz#QeDc zaQ50U(La`-R0EW;TCFv=z2e_|{+d7k$$LEU9v20>eWb-Om^~1A=kbPr_v_dEZl^fe zh%a+bC?hka(iwhHirYT$VrO~wvM2V5PD?hIOAv;W_1u4WL8AgON{ns@?tqNB0LcSIu?uJ?#IfRIQ!S`+gmOC@k3ApC*-i>KJrHBv1& z-9BgCWiF?xXh(XATGmsA3dTfv#@TbF&^bHuq%32Z_fX-iP-s%_DyS-ea|1u0D}MJ8 zW29*sfZ_OZb) zN=PkvaCL=<@a(1KyA+APdr7-KvRtjuTF^BeN<2WDj$yb)8H3S1QAVuS9C}Y5Uh%_^ zeh(@3D4AF+G)4!Ore(QYvET2x*?rAoy<#O>E-xhi;!n5y{F5zz^Z5(@;frfz(p>Kp z+89h}>ef29V+_%AJUYJl?uNeirHDung5$jBWrD)T?>S4N-#v40b(vE_J-$%Cc;{im zW}!(j)3RS|8nh6Q0$SGzY(?Rw1D$NugCyad`b2nH(Yp!lCEci#`AP-+#szuW|=>9cx=*pQ6gf6@G&Wx&C{FV`k9D-3X$r z{GIDCmTlH3@NP6R@AIezs+P0Pp{esTK?zr<^HQ&sKV#besf0B%`@Rk97J_m9bz)MQ zFja@mA)?U;h&u*NWRs*yvOT3Y^FrfyuGo4K6SPvVF}p9*SKhkv) znG~H|laT!8i|=`Hv*&|%?(w4!9?|cfqlM<#ci(W>ALz6o1`81uO-rZNc&)I)v%l4J z!Se3oN4)!Z&DE-BsT!`fc%)L1H8lNddVu+3=2>$9D&%0a2pKsS#cS5!+j9#Hnxf1W^KYkz8 zJmY`-4?C2B21TDTv7i(XqQHm9(r8XWvL6!94?V`La6?3^fb^DrKhO^rcY49)Mq?1P zts%M-K`NTn0%FIqTXE`7=nzoBkc=kD6-{Sw(E%+X9eMG)zXOrDdbA)8J;!6>>G!Yr zkAL}`FP;VTdH`qeha*FG!C(IFHKY}x>|F?9Qc|N*ffS3ETVTf+;t0nmQLB$8m_|ue zX3R_mF%EHEOtc1hPR*=(-R$|IuWaC1wND{hZF zt{z@8^d5yk=>-RS4WgsBnzl)7R~=G-OFK601wLwg>^X=;ynT)#@?hQavg(Wt(b) zc+Qo@42M#t&sH5H1bWK0XU`>D`n-XnOtz{xYD{@R6Mzqq7;_>gdsSsFw9>T80BvAD z1ity|ntpf0#>8%yxakGf3AQ?Le`#2^3aJfElLamYj|>rs!VZa?~+cc&Rns z2^LLT__gx4Rx(e$iy@)g79SlT3!j%SXC)h$Bw)1>yf_V|+n(8D>hu*wcxoe%5ViX} zd&n{RS;R6mG@T`BtI-&hO7(c;$jMZdMm8q(9;WDK?)lCmrRn|C9?t0w=Ef|=%tdvQ ziGTasTNX{nKmWZA52MAj8Wt_9djpp;@y$!YDGiWkm5kH z*9d2M`qeGJ{N|H|ZH7@SaswE`N$zNyRC+x;UKUa=-A4)2G ztlVU8zIN^mRHZxbFpje%P{3{6BDo?mO8`@0MMly5K^rO`Ic!nl~?*jfIze8fKn`_AvP7Me(gph>9+2>S)o*9JCq2)JoNq6Bd5W-9mCYmS(Q95)7#w>9@ zpq0;xS89x^-h0Go&7xgkbV~}E^zw8#(%U_k4>}&K73sKR`)JFzU%zI(U9r2}(aMI4 zO+(v6R^5WZHwYv?3Hp=8M~{{ofu zvN)zDA1P(#w4!>(cR0!c&b_!!6Qs*SQ_rA<`&mNYM z8XrN%tkk5al_C*To?~LICo=}m1us_zRYg8k)QC~|az1FHX-Mf@LC8CJq9|c~#ZIcv zb1tZHG}ht_V0qI!tow8(G&0SM70jD}p!7Br1G7&Z|J$!$^5QV?M<1;DnH6ld8(iNL zVqkYjtc*dHC}tlLwnRDE>jUdON(%O;0n-YkSaWlI!^Nh{^!iDF^990Etd=by4tZEu z0v}DL&apiKf$Ek>)gttQ2*l_}&Jw-HsaJgXr$6EU`qJ^s&%frkFHiLJ7R(sxibdTSC^9q*~eQ$aEXhCvIcE=Mw&2vGsH2{!eR@i!e zUvp<{{+RY85M$t8x8%Y7D~wL8mY$R}-fM(Vc~pXkqvvk4WVLKa!4rMJCx>-`PHR5> z;1MdGXgW!-Ezu^Ddd2ZJaQOsCJ;%d=%|f$i@~oBp?ExPgr&Gu2w4*fvr4ocC@w8*R z)%@wto?vfJoIV!pRmU&?uIJ?o#nJ9L3?Q3^i;X5V5iJ8BKf2(-qTyF2@b^z&Bb3gO zqnI3Cqcx^&>5s>eB?FPkYa!;jM?#<;-!s2>_r7G&NwidWr&%l|T4kybDeGw2Qlf{- zoyW#toy`qlBoZ*HQIbXm+M(y;hie8RK2hL>Vo1CsL3+;hQ3m>{X7iVw&a-=O)RVtCg=T<;yvUmy7VyMcf6 z*UxwzBMYN(-f?R^z02i{F~l4xN@xri1$-R#4vO$Q%X5A9J;IQ0Wfx4|sd$fm*Dh*1F_4oI~noFdzW=a2sAG5uiqi@(~DltRXY zk$EnAXEaI&j8fR($VDLW44#=+4b}C_wEr_`ss1IV6%}J6T`>mp>3!w3Q=UwoC1%BJ z55_2_m$&#Ka(V9(A5vi=&%JU&Lfdt@ z8gbdOXbnmxQgED(x9m>2Iroz%mnd<==3;@cJ5Gmz-EkmV!No=r{J_<{3q%ClM|OuJ zFJC&2y(LOZ3y5G>)&GavHV8w8De639xvI6^5dQ+q@x= zbHy=d90iecC`k~58l`id^z~Aph>$$^fb)^3z2y7fUbA|7iwKqw65C3fz@J-NuK)`D^5d194vbm z>60qdHre>67{?Olv0PR{sAEq{bd?h0|CuT1c_a~2B9)$;s_v^X&pER)?0_NEX$t*)$C@I2sAjdVGo?Jg@ghLXa#M7Tq`u5owRyT%S1FffN$m z5}rSM#p`R!=1y*Qy4Eo8k_QpV+K6*ckBx^vdww`;W5mYYcz;)eblGXsJoTLx}iNZ8-T5 zwIMo_xe6E1T4&-qr6kkXFh)g2(g-xhWaSwOjM3`EqREs66?(DGqg9Kufu@63C&BKu z<%9bR+U1Hs00q`Ku7^ICSnBNgx2?&ChCrRZm+24^*|dg@d@e^1SM)X3)idSwz_@ggSURqk7416DhiMU-eQ@IrEQj+2dOqtQa4 z1Vpc}O5jR!o6-Um1zHM(GC7w!^fa4}2ipxQM!tGAkc4K}-|*!A1&f6s`XkoLLZ)bF z+9gV8aG7GpThDs21Z_wm)4TiFmu~jQNZB(y|AyV`TmI*N{Tu%GUw(^h5}8A0i8_xVl)OdQaR3tk3gkq^M=CGk7Z065R7WnO-Btb5pmxCWbQ3M>2c5AtlGv!{-*Z3AeN_QtNo}b@rOlC$) zRu6v$1&L~a)A*V7Iw8h!Br;PiH zfYA!2H20b%s%?nQ(=>*KF`y#W4@7Ul^#mKadVGQOJFc!eIwLtqLEALEzBzF^S#FOW zjNs*M&u8EC+)MD)S4V#DBg>LSCb;zukphiW7?as>Q^@>)i?v1>$>2P}1_l!QuTR|U z!3IOS?2sza8O<H6Ty@W^C6&=A*R4-u(YO`yoe-Fx?ymhn|;qPL>^vjQDkl`WF99((~_dd z4PhlmW1UCoOuvzvkt8WeqL7ee=?lnFPa`G03-mtWL(Dk06xn*FNFdJyQBdgJ^Jh__ z86oOigIZPeCaYyl7}X)pX(l99N!;bbI`i)CVAXdch}t7kU-LFBwr-dGt z#FrD5`1Jlzs>W&{s*T24pVw6>q-Y2!B2pF*=R5(4^#SVxKBPQaGYFDO_#`lm!8A+0 zdwJq`<9T5PT4g$#2bZ3{4@jBlU7mC)q-3)(?2mgErUP?C%D`aPD6?j}g#Oi+zy(3{ zJip!3EL%SR>tFHpvlE{`y=AqKEEkU3gJSO`S_Ya%5d*y3ow!Mnwlgf67HjfM8eb~Z z5SeOx9u3IiUCll9|CFAq5rLL6pI=7M>#YW2UQPG5VN3IT+1dFi5!PL2Wd8p*?yJ6k zj9}+yXKp0{IhB&nulKeyH%38cMs!-kX%b+CXvq{GX$FZ=6;L%iVyqmi_n>9TScx3D zcw(kqLGt{@@#J3Q(ZeOz-{yup?=#fdwHhBx9*=!TCe!>oyyYPhcoI?uKK;=HKKu>c-yP`G3L6F#hSjpAA3PySPByY=B=2nou6`tF<(6Ol_BDGi zF%>PDujSd95@=D%1qIo&j-?W%zDQ|^$r8OnD??`lA?BWocR%=uMWY#xC!Dn$jt6{9 z?5ss5%|~m)BJ3HuHD1K*2__J!(7`tv>pV6{l!C6!FidbRM*$I#5hb(YLxlWO5}DTK z!&piFpoOFf0-}sa5-J5!nI~L(Hk1;%E1Ej1{4ETdcf$V~b=2qPSb9othT?Tj$o%=a zpjOzT&PT7Oe16?|bxysHniL&F%h{$@uTRKaGAzghm-W3y>wKSOSXIVyV3|HL5AJQb-S_GxtkxQb z=VED4QsPu%h#qMr!|BM?eS?yFcDFr7w)DeGZjUGa`~TtJvRExyG?dcOo)4}JEs{g0 zxeh&tUUPkPnATv7;pjx}+-(v@O1h?DcN#JziX7K}4*kuQVO4I`QJ^X`QE>SfGpCy@ zeF!s8{>;NC!!>VH$a4pz4i=j`8E49#H>>gH#;E=-M9q6lZ=dI4-iU&$a-Dte`D~ne zpX1BRl+WpLH;SqMHox<9_I>NkjgH!A+wyf>Az=(9shbdx@&ro`5 z$ePOzj&9Y^HHN)CA*9NXqm;$4&DX!o=m@zvDO95duMj)Ga;?*yu<@Dfx{O8xl$-wyVTefl31BBq1tpuCLi{R&2K& zmlqw@9gw=`;&Q$r~;~NK@utJvccLw zASc9(h+Hh&+!rKL_O1o=gD+!*1Bqq?mxajOWFbm==ef0(7!*oo3Y^}G@<9#GW>UlC zB0lzPF4io}5+x10!=CNcBcy7|jPND?c+FSe-txcxyKi}YOnmn3fmi#G!|*20oH0hS zT;x8a-e$p0A!fn#;8J#ogj9H+#t5W($a!hXcd7fAfS3wdT^beQsPNLHfXC!;%1Zc* z#kK5zOcN_XJv(*Jg#e|qKxbp7Mx!R{>=+5Da2w5Mlpw^|>^4DN^|_R(KB|*ZpPy;} zc`~~`mncOdqMn_ps;}l~>KU)e>8U_OKq#f=B@7Yd-^cmrIdeiCH!Y9T+$31tR*^tarB!yUOj8WX)9FR+cZc2p%uAKI)z_XAEdu~L3VH^6ihOUmXDK^yXE5sQT2oX~j9Rslf-#apFg8lo z&yYgQ&TTCuneuC?TA!37sZoaJP~1#87p#fWJ&;L|3v^YLPL0M>N+UPdTz+b$V*Nhl zL#EFVk^RwOeZVvw60m;2IgbRE%O(5M2@p9yJBx;@F^nP-bjz}l{NblR;71=m+9M)=r2y{l0qz4%|9(^&y z3g-h+oNz(%;yMzH;nDpq!49mKE3`BSC9?r>5L002j}U#P7((NeB*X>gIN(lCX~h@( zcmMJ|{?)Ip_|>n!LLVTCkc~`@o)M_W_rxzArHavS001BWNklly#kW#`q&&|$rJVk8O>|DYXI&>)&Nr2KOd(1_ctqa7I zSu0PcVe+76hpUchoD22bbD2LX1TufTX=w8LO=Nb7JC`ZfniAbL`8P%}X`;7i+XhHD z=O)O4k{BkHnc7noS(e&qx?=9_fz6_0yO0$)ZXsda!P_!y?GbDCH zray@ZTofds5rx)2mEMUM!Nr)T4+=FJViy7@8yQ@{1y9$Sj2%aTOP=f90U-n?HFVmr z>NNeK=kNdSb6)Q}Uwpgg|NIYM@WL6QP^c8xwvl)5FBz=o`HiKIiXldJJ-m3`a}0@F zo8g6~$@55TNX54pAw*iEX^g>HM@-Om4KCO!eP_AG9K{Kg(EQ+o zhy2r@zRT6}$m!+^K;uS+ot#Sq>*hKxbL74n!W9X6-i(^TU>zGuaEQt7$i10f=}6?$ykt~ zgmo6@RE|8H&vTrD<@(mKA0(Tr3$%pRw3xO*H>MO44aDeCQWJf^*+6g(rI!#D8jlDD z7dnE_?7lzn;d^Tuv*5SiyhbW9>c#q_GXRx9YQI*OXJBw#gHIW|OOX&fDym$S6aA=k zk-7K6=m|1OMZmhYAx6voWQn5A7Lgzn!8(NSvkvX-!Drkvo=tz74rrxQm~s*G34{Mw z^6hQUPlAxf>5SELo7eGYZ>khVR!C@eUlke<FWOWMWp?lg9%? zlmd|?!9~1?AVI4P2Q^M(gW%P%=V&Dhqj>ESR~IX`8_f^~mZs%;-}CgVYyReQ`0D0c zZmw^6)oYY=tWbRPjy8f6{KZCJ2bA-l13?V1fvlzPyXVo6NyXC|}p4^!}AG3Scc8Ky_CgVAW$tJ9^!m&!p+!$TfvL6Q4s|9V_a_R@XcPthSH#bM5 zG~=3QBdvIFb-|B+@R%Q58eYBl8Y>M=*Roi(_-GNzBb7#r29X5E<2A>j=ekeW)X+A0 zOQOv)X`~Q%d!o||g15xzP%7taU%q(FvXxw|J8oX?x!wh=Z!+W#ES4)m@;rZaKqg6u zJuyi(t0fP&@ck>0O@~&2Mhg~3a@t!`&{&%zI2Xa$!1LRIrdxA)uVrBr?P`Tk64f*a zqe;C(3QceWwm*`TB8o%|M?{~9vIDI^9Pz1VzlW=fj+bBG@Mx*|{U1NzvoBr}#;$Y? zLZF?8K+L>RDr2@O<=S|qK&Z@tlHn4vH&^H?f))JLFTY@=TYmK3Jzl#3*Jx63Ie8=m zxLhU~Lc|D#a0#ChLT7#(NVvgaiiaGc$LK0tf>=iADxpv^;Y6g-o~DhslYr0^3_{{# zf{+Nw6>gVADn@S-sOsTIgwW-{29m5okUc-*^tyPbjvpx3oD>4wfyOGtoaP)_Q&VB} zQmX-*3kgL&q{!c27G)I^XsL-M365kmdZpSlH)WPhuH<@3Lkxn!I()0?hsecBuw6E6 zPau-#_2EcoBxa@A9|FTku+W;@-sZ;6%y@)I3aw=BbI<}icqo-~4$!3((ha$!IHds@ zHPRb;pE&eAYc_oU>W1epj=b}rWAmcraP+*o34HT%;OVQ^3?7n_Y>j5E8dhCI=p${j zVcRuqn%4*kr(R-7++Qf7GCbc6^gc3_86Qc=92u4S_rXuzdGV43rKck?(T|T+pfyoE z8H^MYGvuGCX>Iz6DWasFj7^EKGj=RTSe6>`lufVWSd$P$k@95wl+R8QsTd?#CO=Nb ztYSlBbS!4Z1`4A?jZ*TjQp}>=nqv_lL?*iAjOwH|zUF8r8?5u(;234d>Ja76O+w`H zV=0m%S-w&=JOv6a(au!zJcF@DC@zls6hv-x7D9129l5{RfVbG8XSG@)k-58C3PQ@W zcphw5{P6LHt-R&svlCjkZ0=o*K5aiBGURilXB(l#Cbr0M;U{c+&sA)=GRESJbevDh>y-DE}%B?&2jji{98 zC>h~>&-6T+irC}!@st~i6 zk_A@cqNn$fR%rqr88dBr?j?_q6e-r4{Jap0b2&x9>#Z$LO6P{OiF8n zTgc>Yq8O}d>{Cjk=Q??jY3$Ldo?k%mdf%gyVc9O|OyKcaW15b^4KxY-;JMkuAw-5` zi4lCE&PE7SQMNH9f~yR-xwKJhO^O0Hgj@mFfY!N~!AHsMY2adQ*zJz&4m~FyxwWt~ zfzxmzsfI6}zhvK&_b~-p4XZ{#7_js4Y&Y7w@550#$reV zp*TNMReE$!HX2k2FOFb2v8tzr3IrPMBUhI!?tji=)C3YDm8VAkH(qlV`{`S!A|pz|4d5~iynzF%d8TD-QhsnG`N#x7%WXE zu}%_$rql3)cQ1Ij6?EbTXAPT+ON@a=MS5oowlDG!v=}*@a&gGb&SO?<{@^F?@z4H? zPci12-+f_u{<yjyM;nh^Jy>F-Wq>!Z=sKK@xcv#C z6hSqZ)rv+sWZ&~}yF_V0aGLE!M@T)(r2w%YiNy2k1FsL3-Oh46!Dr8oeDwGp54T&Q zjI_p}b(3fIkPxZJqRNhC)(P1W&DE4GN*jU&O@rwGEW;_{kyvlJcPaUkhYz@VV)(1S zJMr@7h_(6LYpFz`RFI^k5F(syx&X9NQ^HLsVoG?Q*dHC6%?cK9@R1Y*Ln~>>!=!Rs zV6LJQaw zJSDkjrI}K2_d}A*F0+uOLZwijpW)v1wbi4JjP&?Y<*99+Hq+1~ z7}qsd`%GhhtK%>YZ<-AMh-aOlmV%UIW=9B9*LXb_V+1f)q<0{#8hxe`O;o)(R^(L$ zAInAc1m)C^s`EH)!tuSn{C3(cHC=GzKka%{M=6Qtq8Ln%5_cKy4 zL^b+;TmK7hxuv_Gn^KM51tf_QKn!Hk&SI329IYoM$8xdYG#u%c8tW|gE*jpsQasv7 zI+;+iMK&63B!a-{bi|ijp%R%!={PvPdcH^L1zn?g?}rWFeE*F9>3?~RB=cJ>OoNt! zg;6XPfrpPaAQQX8D@42C^4hhMsR0AY zW1WNOkuspvf+RC%Au*1#>`iM*g{9(j5G)ogpMJFE2k&`)`^7W<>Yq!dPcIab>CnPAOjOo%(8JYBmguz4Bhy!xxYt{Sg#l3T49ntfa%LoOlJ za@})*u91%r*{FIS0G$=9$b3;r7)~Pc;y4fpym!%{WG;Jsc06(23!e9uqdO6Ni;b>8 zQ8{T&QMR(ce?IuBTsr2SotQFY=3L?s;W$JZJ+N6D4#&vg;ot)yfzgQ*4nOonvJ;cY zl@*nTEvA6blHNuR-tqk*_xQvZI0a2e32h{8BU#`XqQJ!rsVJ#N?{%)U&#UYTbVH%z z7imVyP%F3swRCX=uSA7y`2Xp8vo2Y(b?vj4iARzZ?@b=*BYV6!|&xYK29VnB(&U6-2~9%|B^t~ zpMFp@`DX}gF$Ao$jpg$$@448jt36Dj%W*Bq#XFEkU3mZALn6yXx3iEMQi#24FrUGN zL}`s(RL0GSoeQ5o9r*qiPuPaWCMYraj`A`4aZa~Dl| z3=|rgGPOo-Kgq}pMd;M^GrN%aaCcAMW!kvmPGBES+ztUz<>T0x+e8k5Ax9!c42?`+ z93n$^<2VR}Cg^6<)vF^2`7FYrgz?f}HsJ?ZoLcqj5xr$mYo{!w_j@ zCZtGZCJsLHb1cb4jf6@{4zH?uQ5!^w@k}icWe*Bk-;={YDHThJ>ArBwz|A)Bzx?$d z@#(V<{D;5)1xah9%x=(y`0foW3R`!eEfvOWSSVm4)|A>nTP9~=nhK*uNWQd3YQ{oB zLM3QluNa&+U5om@kJ3mvA}Bc-Mxix`*_WP(bq={!hGBFQF(O7GMHogQ&PMBEt)#wk zQlXoUCeEiLh@Yqw-KjP%&YZS9(4Lrd35p^1hh`B~g|$*$x`mZ>1FOG}{lWC%dW$?H zv~`;3Rfn-WRLcXkx~*z|xPs4at|5*!c6m$SIC6)UM4Sb+Jm9sjq76a&k}Ge|4R->w zVS|oO_{E#IydR4*;>0+X#@rgFu@}NF#tI#;4x)V>tL^{acVZp0JyZm1aFI2dADfM^;EHkhx8yi`!{X+=nI#6C$u~ zbuC!Dqc%e7P*~T+$U^b;FEZqKfvxOvgT^Jf%7rDke0W<>t3QC^E^zq;a$B;RtVuV> z0%wN~?=?i6QhtA$cz(0v`ICVc&oaAI8Pnht?g-;1LM=>XMnXd80%gX`MSs&Iyt%6o z2hOGN_E7njZAp29#6p@1VJ@WYj!6Tr_9Lhww~a9hItZtjxZU3{1Z9Z6_CgLPp6|D8 zlQMMI8dEO_Hsb&YDuHsI8TXkJe zPfml+eAN7YH)GsvK?B+vwH3dQ#g+akXJDY#g47C@7)C+s?8Rveq_l&i7!xTtv$d2P z=JUw+zGFPw|A^!okPeNA|37qxT?v6K0W=UTk~17ma5^1${vt4+D?{EOArkuoQA|i? zqyZ?3wMrh64=U9w%NT8?pN8J54})8xH1z~BVKz}qMyZJT(lDj2uCt!xuB&SA0PJc#sR*3UzKV4*5=<>oQ0`8JsaDq*Ng%?i zkEqRu-c4OZHKd4GA&Fb99P5_1Z|(^>67z=7pH)7)8TsC@EfhU6Fgn>JD!c8L&%V$9udP>Gujhteo_GtZwtWf(<012*x-L zOw;VpjYO}iuJ*7?Z;=<8Vu=1Qi5gnf4?eicofsenlKD-LQ}*shQWr=Q7OSmx z6>wL6i$4HMwI=cqvwb`)e2nRSa|w~_I^4u@v0Cv5toJcWC_B*`*;7IpZ?`{c=g4n{O%X8AJqHZ=9!vNgI~Lx{CX>GC2bUS#qS`#VR5_NqD?ug@U!1c1X0o)x!E20 zAOGYPFNef`{oP0Y=I3wu>O*5pd*-<~bf=Z3E^O4+i-H9l>X~{O<%X;4dR+iqken+P z*4i=HH`2vp{QvszkLMAO-|r87e=S71Qhu%G`?V0HZyA)UX9aSIWCED;&Pu5c9XG{# zWx5RPee>or%W#I2b|(ZU7eqvK6&d?o6TzB09M?h`Aq8Pbi;^6Sh)HB1GdJaUXbz)T z>sH}cnwf8W@`vZ_@$BYWgJNb#jf`Pn9O1j)-tpPZNX~&68VxAL7;_>7#Zad6j2m!Q zn)w`6m*=rJsnx8n)`qz>&WA?Q%BL^(Y4r{CK1X%=R?<9PpsfBAT1^JHW{ z?l?^o=hGRL$e5xFrEBF-jiAClMWi-JzQ`;}*ZYLX@ibFgU{aW3rDY*#W5#&%&UpJ_ z;^ubXCqMj@XZuJTMld6qqUG%Ipu@;H4Pcd48zPB1&+b%izGm9+WZdlR@kBBfPFMxA z**nzW{(?;-VT?3{H}CGb$%A`gc{SeZW^&}7r%HDsY2?eiqfm;#V1MCtAXoa@c0?O z#<(8`pQUnCRcf*RAoe8X#jWQ_dn^Qd97G((xIAT#O!_1cQ{;3yvDjdE2l7orIe(vS z1lN3@i)rLP|J~2Iz1{N3v&4LW!)Yex5x2#*6$igwx^(UQx+FrM-#koSAp{T?Wm$8^ zjH*}tRee{7EY{v?1anWG7~sR(vkN^ zI9Q?vDCY_5%Ia#36xNFgEERAU@CE76%cB#2b^X6l9Q53OO?>#KGxFu<{e8j%pz~pO z`*0TGaLv_g^#mx39~+mX0uFaB?55b~EOV>=Y;?C9=?kPT!yQkkwJn8=xK~(@1G3*kGqnZYA1AE&&Ts&$ zjUbWdPd02)!)j&MCjR2n9iNSbpdf9>|NN7Q&3{Y$%lpF3tIR+q=Ez(ts)-Z=+ijxF zm9*H3)auKqtPyIVSmfi`P)W>fCXJb?I=t-3Y~pkeV;uP7ANam=Bcc;DoiS;M8rGcH zV)$r6wNPeHAkyQVV4SBjNMjJe>O?I{PU5rW8j;|v)MmEIIm&cI#sO=>i9mAa$jgrH zS^}zp*nO}}JURU8EZoh;zxwkRqzo@#+;Dh*q$xh!?hBlnRZ_|tDN1)kKpZf z=q#<2B2fKj6~sdK+j38*Qi}&i1#P}R12q?ti4gIdsF~1;AA_WXmaZL1soQ=$d|;gr zwWz@Ruoe7bUfEFm_ZTe~sO!OZ9z6J$LFYw|vO_9^);hVz-f z_~Tc|<^%uvpWnGMz0DxG>tVDT>vg!PpAsMLdZaYfzKqAKHVIb&4p#gBeiHn3oBzA1 zLtzWM>pC&fXHAIo(TlFvvcJ>{e=cmJ2l2B1@G=W9S?)!70Oy3xZWQs|7FBgM$kYx) zqdp-N!3#q!keh_CcDW&jwNjER;s>}8GRMGX$fPJlQMMtH@$-C~8pm^GR%gcm2Wl$dIT zC{&y^DoRI3K-?T0tWt_noAA~96L0R%%+2@Fh%|D7eV+N&^9|H{ZZ?I_UPQikBLuyt zhCLxv$^riJyAy|h9Qp9J^2^^I8O9A3l&KV&7M|Q@ZuW^h6mFkv+}kQdsQx@y@EBIK zxb4&N#E=5#xxpMb-wA^#-}>S+K6`P)cGz*8CO3IZV9iCms>KWD;EUC$jTAsBq+vj- z_#Py2f$@Bvp$RGPsO?0l6HzwAJRr%Fxi!V=iIg+v(>*b`jZ9i984029B#*S}!MceN zwejJc_}ee<_|qT0;=7-Jf>!0L-@m6d7ym8LlywM&5S&qi_+~?T#TB9pT-K`9*)3|7 z-8eWj6a41U))xk?gF%Pbz`u7oSFE|wn2CY~A7%k_nL(WCVI zdrg(|d19edYP+zx935- z0+0I&h2T^}7gsONtX=_|D#5(kli($DijkC!(kg~g%9e?l`=jvY{gJ!7JKnxO5w@AT z(;YDfD2BC041r+?v|_$MNBenPqLB2899A20eRRGaUN>heElvm?_%HiAfGa4>|7+p{ z`99dVudNpqJg%{g01x_Ub>*=m4uuJ#_Tj&Yn7NHLgILC9O}$erFWO!ZEc1~$}Y^q`W_IA z7h^^7*@T3Jw!YZCEEH$&macM*-(wgiktoU!zWtJy+kr6|8ukRmcYF6)hnf$CbM~cT z+WJLEU78S}TH|o+mPc~|=|+~J5K0*LMeg_tnG~ z-+sxIdm5Ql{0TJ4?JfGn$fzk-0bmltzIN3D)o9 z7#UOulX3U4Qa-}BUp?i?(;cxpiAQN@P_+0SBsJfUl;Yk!5$9SR@co%nEn zdsl?Dbn@~t$Lnx5^p6eMPuJ}B>(^*07*naR3|$sDS7q27!g=iEHqk(t982v zpoNAfD}L`3%f=$eS}28PeK&GkD17dp1dX!^UBC8t0Q&gP_4lt^^V-c0ukqf8gZX7+9e)rm@t}PXHEO#E z*#6M_l~UKF_n4-7p+8XLjpNxPNx&oG_B|6@$6?2s6C#oz$Mu}z^~0KR9Ezu zwL4khagp{1G|M4_&o{hN#{{9yq(RN~*gqHlXmA>iB`s>9Zv)hk+ ze1A_foD|R%`b$7s-cz|8ud1%ZhV>fz4?Z{#k6Ba;6L0?aVn-#Hj4zg%F zfX-g@AS1!3=4Ig!UD*3^s!Xj?Fp>mPG&VzI%o)?_-P?oY`G@zRtgs*tX~@gje{ipv z(P->a;3k7uCuXSA!p-oQ)A!0p35ZstIpn6TV#x)$t$DIcF)~&WNb_&_?&pa;aQ{B?<=dI3pAY=z%gC2sZJB3f{9fhdi^!)>jW>rAzx%pkW8z!i zi)^17QIt*Ek%oYr;VF=E;BIbEB6&NYF>pVfc?TGgcB%aPfAsZn( z6EKBL(E~9DtTQFe&6xP37aLN&=j$&kb($G+W^NTo zIJ3%^Gll-UMW&9g=JjW4(F;wnGeBBr-{jzPk9nF1DPi8XxK~yWTE3H47?QCG%9C;6 z{kajtfLiI9cY`5JoZVP42-2L1m@XShYWZ{JN{Ge<^WoSMRU&@L1Kvt5%?DAX)-}`*|jdp*Hf{4-+{UMHAC` zCMdL88HdcVMykQ_JR<_*I8f*2?gtA6RW6@l@n2dL(AU@Z>L4E&55`C9XBRl=`aamE z%ytxlDd$2Lfm)}vUSP#PG(hi1aG6Em&}Af$f@`&aZlHN#ykWl0Q&>19(q}<^z)ib! z%zf*p;^*9=VSP8v0=I=u;TADc^kQI_BRK_L-%rd<9H4VHagc~gMngrlxXt5I01R+s%V)wBz-OnTjiVAH` z?DiX;Jj=9mqtZHB5;}bC-QBnyz~FE=@ar!R{QW<@<~%iAuN@JI4&QfEN@-3qxZUiK zDBPcvF^_!x;mC15@gyW(y-ExlkHaYhLiQ#jq%Fx*`oJY!D%xeCunC(X^JlMiRL*`Q z&aMS;!@Pv=8+T>)X0v5JABj?ZuWn48VUS(S7x0yj&3xZ+gi>cW1)JUWq!?_1-{1@U zEM2vY#NLMbWHdvTr4vww~t`d&K^ zctP@&ZOZa-9b%KN`S8$lffap&sDU+-KuErpRb@k|l^6q~1;)NbvzFqJpEVGnwB##t zL+rk2fzwox{%jZZt(zi^{pbnxcK4L$+kwCOlMQ1oe0T>hKDp)dFCtMVo<56gx5Di< zqq9G7e$VnQ6^I;;!z&1Zco*am` zHykJU-PaT2<{6t^pwt6MMy${js*E%Z)H?YLD~!B;bH~sA`73_+`kvXG1sNm|!{QuK z9YR%MJ0|}4ho2Fn^3~UO{N4Ze3r@$%Tq?zsZ#~`f{Mly=!{}==Y9&e{q|`ND!TQiC z(yEc8bt{O@@@N&x9c3E{A(FMAF;e?{!3|H{Cn&{%Q#%5Y$PQ7Vw3)p1C$6b+o(cnA z4T(fz5`rb>b3v0EA-2{r(;hf$7^b{xwwy9r&p+GBC~|Fxz=h%vkWQ=8pg zpa&)ERlKa{!IRb^SbWG#qWem<2OZ9}Wy``83PHMIrxPe*aQM?mU_vR%(F!6BEl_F~ zoYF;7t&tLB-|0(HV^-@kkV^tvhTQ@_XYvos^1mQn(KoYBMEV0%+Cvz7fI`$ia zxWYJRq@CH1!fvBefM(PS@Ib0gV1-mW=ybQ{hM3X|K)=G%xNlJaYWi&`hm}}*5p2=|}M%Nhl zPOLs@>Esw|${;Wdk@-0HRkaS)1+EgNc`9F$vd@mJucHn~G-pN!0nTO zM2}rlsiZIxY+%+#on4T*-R>F2Ept1wO_lfeaJZk?vLlZXX*0FDD?dHwob z-zjp>oA)Q)yqlQK&r^yQ;b%4NGe7as0EV{A&wu%r!|~W{dfc)e9w{`e%&mJOaB8%wFwZxA)h7te?LHL0^)LCm$t5e~&*zMP8t* zGSB4fDrE$;Dlvn!#j2h)VJvW)>QxX7i_Ye9oEK{seUQMe;R^3)71agixx8jmWik0n zow{1f6-;KmTU2uwVZG`QuU;RnwLA~5C{4QnO{BB49?dr%!FTI@gY`WOkxg=(c}d<$ zjNEN~w0ZaGOgIA?kRQCRstaVn2e~N-=hMlx3kE@A55$d>y!a48S6oL|XR}zOcL*3o zq>-YqyV)`oW133WgG7?|?N|`D+vxi*rph*V!h{6wr%K2JDb$_n3+piEqHzkG5 zC`<*;8c-slb-n(NXNzWrriir0Ac0Lx6!GG~yHRmd&nQ@keEo6a*^|P{+r<6ho^i8b zI}W6zh^6lR*0`TtYZhX5YJEKuFfK`siOp^Y3R88}_mfeG zD8neUF!1Z&1^)TJe9gFf&h3*Mn%!a5krfFu#+JA5PW=5p{)XpIZ}`<$Z+QRlz*Llw z23kMQ>$BINogjjA7A8%ZtuReqY^3D(zYDkpa$3sMFDo zli%>>1K3ODe@Psdz~O#U>)-u54{+NMB34^x>qJkcYVT(epE&<`2 z9!-~_ZSp&G{oeX}A@)wuyP}jL)|NS$tZI12%)!jHBB?JHvY4o?Z)nqg-?T0U>+ko6 zbQkV4-Kif}IoP{iTP<8-j1RE-ZxAOi7M^uN+2+7@h?x40k6Mi}8+AS*q@Dzon1qx@ zS}Wf$=e*41IxDdo2g(BJO6vfWpN|}!4qfTVJ-Yc%N}+3`gcKvS7#SG5ux%V%p^x}A zjxn$ucH}73HuK`;Q&B_9_t*6t z=rZH*ZY~BlaHaSL&6J%*H5EERMwra_#aBm~?)c%S&o~|r?6$&?22PW?>e`GUZyASy zd76j;^5E~4hk>b_8B^tZpMB0gD50E@>|(xgm$`Y;7-h@bH}6qBBV%F{_Cz`RvsnX- zJ3`J3b>`{*2CK?A4CFC0NkPci=tc2hkOP#~Xzk3n9SFlnv?Ey(=hKanc zr;M9DDQ-G);>b$X$gkhb{Ov#diahT4)$i~5^8LMcXd!kO-|wLXX^0_``tzw~X!Aa= zF}WLvg!P#tMs7EWAARpB-~YiY#;OcMB==?l5o(=idLUWHf4#NrRj)+9fD45&_$t^y z#}$orHLSKqNL?hhx|&AsJP@oIAtlE*B|4uSzo}h)E<{SVLJ-8fvMTEMq?%CcqL}Tw zL9$>}A4mnLdL|B;5J#dZQGAta2+Q!YcLkk-DZ#6_Mi+RAV2umAb%`QZ|6iaeWm$7- zYjE^nsA%ghwIb_466-+_ANH*Qv>#V(b={D6jk7PFK-!d;V(0QNU-yLLOOv{SUtk$X zUn+L%PMjTPBDlT-BgN$BhsT3*Tj`;#Td}hHn!spr^CHF>-OL{28VxCT~yY0SQ0|yM)Jl$?NozBQ^>(Hkf`%Olq zF;EziQ4uPMR-E?Uss{1yQsc88&kqHsB9%n_W{d)e})t*O|1w2qw5?z*HPd4F=JZkXH3UeRQl_ z)m<_jc2P>HoM+>3YG_EVLlH$O#6{U`>eNkZ-Fz+dAt7!Ze(qIWAF?ljVezh7OcyVc zP5&&*uw7NL=m##ey~7F8y|lz{ zzD0;A$O?BXGpYOLPmi@2G_m=avz+Yal zbTxOqsP5NmcGYExUIy+lCD)y_K+f(kY?45g90Dl{Zw_ZPWNK+tt879>RA{9zq{O-J z&jGIv)p{}$*K;Hy=XnAPPESn%EpD|TAu!e19T^tpV6C)B$Gf`+QinC2J(W6@GtpXc zc(~tYbEzGo6zaz_Lk!#yITWSTx{3^oD$S8^d=iS!{eVsKEu+V|BH9>(VbUlfJ=l2% zbuDwcT*pAl5hx6!i%VVX>u}~cj)dkOTPDi6!Owp6mY@9KC1Wr?-kp4%z|PmvrXevk zWk8sk6JzGtNL{y7#5h*JC&!RLl+9L9JrIK5IK$YxG&QG~7bPSZHybnyLmFwNkaioa z6wara7&7H_^ukCgS`X}Z!k_-dcbIFTai&g6YsOcvUvoGrzxY*Q+-=$KZ`|7|3Uj?D z_c(ob6#nKv{WsozJP|A~*E8B@b}_nxMwCEM2q~}`Gr7;1ng|vI88U{`!3EzkS?hV7 zKki52$$ntBzhxLl)RaLINTQWxe-dnlTT-j8!UWGFG5N48M*QS0xVU*`Am$a#LKigg z2Yp$CIh|ZpK5l~V7xob4v@h{0x|$(0=6PZma%X*MSKHz^d-XP5Qt+y>DMIptG+~;B zsYKE)t%Ky8655Pf9Y2mSP|HNhzGP~7xSA^GQz4Hd)V`ppCz;sszsLBj(2n{8$zpP5+s7 zKZ8FQ-`GR49#dUsFe1{a!tPTw&okFl=j+dN{W+FyY*AZ#Ro>PlxIh@8Gnup}e$4Nh z(36W@Eij^=R~Mu?E^b%n?6E(Wv#uhlwI^WnfA`?^;B)|T`2_&QzoUik6W>Kku{ zArX+ilfhRU)E3wcnV>U5IwR@aJ3mw)la;N%+c=@^lm01ap`a4~W3J zRnh0FMo!SAf@P-J_{Hzu@@L?HXC=M4l1xvg#)zGkTfit4iEw<3FDZ^L*{(0XbmI@w9^5rA3z1s zk%(}!H$Hs4=WzFt+uJR9%nX}~>WFG%3^O4{3S0j7|MQ>t&6@*Aq-sMuJQboJYsBy6 zoZPhb<tz?|_xrxrTQ2+$$I+9hYNL`b=>%ERo+ zPW5!3J1hLDxxlW81$VL2KOvX4yFL;`fQv#idI`RB=i&@})QclI6FI8pS3?0)K zpDUR%#^9LrLaPpRJNE#=XuYy5)ld=NA<+whxwx}xtMl3k`p`H~dxxTSfg0OtJq_nR zLG>2~hEmcV5&mu^?YNWnvlIVYdX1m!e0e)r+b;oJ}n9H*HtDxgLf{qv{fV#r|_ymL!|Sp)+-wuKyTr{d^8VwQC;JVt2mcTRD+Ozg z!Zd`tdspxa$`~VGeCL%*7@A=k(FkLr$K<7ut&5$zbt{tw-5z^*s^2Dpc=2Ft_Dy29I>3B<9rV8)oESD!|oseqWW*0>_n)=+Cy zJyQ`(q?_e+j(>=VDdU(q&Be_cC2*eS3-d)B3-+$2uft_o*wd?aUE<0mNUoLeGR*9A zibWuJQMUKs+o_QYg0c+C7h&Xe;I*}VcT5(!jA6o>cox%3SuNx*5Xv%V`obDxw+1f!YdYT3LxmLDc5AgkN^!L;LyX!3K>Ub7sf)F}Vr%LEb z>m{)S77qJzEIsLU!^9=2FWqI+4vmPqVP;=YWxbjX*U6yIXILRU`cL;FVfmS>j&or= zK_Dmh>gwnaf-(enax?N|6L^29ygxV%+Bzv91ap1G;ER_$P;`QW8L7_?wZEot&n7KNg1B?*{>%U~YkZZghVD03yHL=+>l zbg0F5?Sw!|f$iv|foW1sZDy{O+g;{Gj^q&Bc~%=)3W0$m+6S<~J>1kExFIKk_%TU; z<~l$?2+jueIDjJ!Ensb;g@)FVfBEfuhVMV+W(d?-kwM7G;jZaCb61VKsqocDMPec} zun;)DJCbdSi}M$k1&aV{Xd12Ye5V zL5!)v>Fff!7`rZlLbJ%-u`#Q$$;vhaP+v4<5~M zD@_vCd~b-g(p%2}!7qLY=Fo*Df-J^^)rX3~sLi({iaKPn2<*(9q2N^6Yo}FP;*~#e zR{{C@&q708%Gk)ozI_dzYJR?ZGBTDf=c0^^h*251mF7V+)dTxwPwpglRf6r@@z;$x$;i`99 zLEKDp{TT~XI$gAXemWMe-Lm|$~+@hU!?DJ7&lNW+c7egGp3m#2F9V0qCar=Q}w$bC^1LIVQ_^vK1XqBaG$Z6kQd*p zB!n=cb*4_mXMiEmig%NKeckrI*4Zsv7WQ24fQ?=ZEltPTHL&iVp$kwAf31E8p$K#9 za3KyYjyXf{V3=dysap&gqWRv`>wt&AJZ zX_mn&_gWgQ2@og^nq^vbcGbK4%E!s4`KjBt@5h1Kj8YpRMM|4F&cY{8MzR%#m^qy% zbck#Mgy@zF0_5(OPw+sjB~Z$lr~3_&6De#^!Dab4Gr*c)F?PJKQtRydK$`C@@c`S^ zY*o;)>%B?w1p79smF!07*naRG0Y%55B&9M!`EHR(R)O_x0ea1TbqD4qKMu;;9(A zCZ@xf%Ns6iDz4@ptGoMhSXb9=o%x87hr#W8OnJE*DHD`hnQX%t0yz&9n>jbunZ!7{ zQ*cIn2LwinM$^Uo)0t^;@S;bwFMJExA(&bS5~-~@m2j<={Wf#RVX^U8K7)5^tKuF1 zyEEJTzcFW0SPVH0Gq)x}ZGEmn3QTokNQwP8f;xI|u9adAjZLbIX=IxcqpZ?azpwiJ zdMN6^bMm&cRoAlYHoYKGbLdUnia(_U{XP%TMU7(;&K2?y&=z?T12;qEXo=VN#(((v z*Zkyr-{!-cJKpPC{`3>$r+>8PFd6$`4ExGI{8Q!a*@(#~TBxery`Q+*kL3M`2E$Ti zd;0`qgGu7|uivq~dB*48`;={V-z-sOOuqOo>KWSE;VlW&Auz;|*qk|ksPW~pt&?&XG+T)i!n1bF8XvMc>HCK%vic)Qvhcs&6M;+rxInF?W zgAgQBn-G)G>cCfbjb|SVW0={-%2W&6q49Ju#?k$^k|?`vBbtF#-}P$+Gv&q88*ax! zj&L|l?(!>_fZf!gI3)DSyH{-zS@8DjzV9k zFxZkfF3Dv1dWT_{)?>bOVb`;x<@#KX>-s(YHM7%J`@^t!KwZxyT6Zr^DWd8DG6YYo z4z2bjQfA$1DVITX9W86{-cy3bh$k9mt9)VIqtGhd_A0!v?F0XoTqJ_I#QswPE67T!odY ze%WWE-NwT|h=e}B^pEcvDOu)dzU5QRtNOXr-c9=XHdQxO1WI#5({oj(Heo8vbHhTw zf@A3toTA{oIq%{_2unO;HsQluXdw{PVQnym90=0-gpO5Dlvg)zbK^j5Yy*s&k@v@$ zW0^Qx;ZMGJ%C~m|Kl`e2e>m~}KJhpI@LOJP2L9rYcl_J`N%_Gu<@c{gK7FY?c^28G z9sk?^bwc8V1*gkL0_RDoDufi-?FODT`0(+>;dIaLHt_1Rr);(x#3o`825E>Dw&RGl zlgk3M#~g9T-w<7Ak%Aj+e)ur)_I^f&Er|i?BGZqv@c;bXFPYj6lN!JM`Xl7VU<0kV zE5*2RG^Lcn`;T{&R?!M(;&%2qvaBo+bvSmDv(Jt@`%y!rn31yb{Mm*d|M7SD{P~96 zW@NY76WNj?C}%>7?4RyYExtj~K+BO(C(>NHf>nKYu#q^NB6kOY2o~LQ=sdd%rcwzZ z6Qh6V*4zUo^;XJaSBpwS(#AjN?Dh+J$e_(Bx&|NaD=C6B#qx%5s(f81@;H#AvEN2s z?3FF>?CA!yay}}hxU=ODJFHRr@)YT?miU~dN}$;SXUsm&?eLQDctE-YVAg8xI-ozc z?{>z;!>W7L}Fjg{8`;!$8-c@1mt(?J%x~=YGC=Ma*Jta!C}|uLTze-{t%-f#aH0 z70mZgEKrzn9r(MjvCk-K)gJwQVrRYLTkK<&%iP+9z#!|qqaReywX%NkI{7Zuw39mm zmF;G5%|{A6yV-I)SI(CB`2NVTdBV#Qh*=m>KD*t~2>j;j10ow=vn=9sKMG^sVnGEd_(z2hW6~D#~uJ&{5v(gxhlw4tMl1bvMy%?Nnw28rK#`N{NA*>z5eQDg! z6-xt@Mk6{CZHR739uh$u+ZXYv&a#a$hCntWQ`tv22ROG4+Rl9TJn=%6`-3r&$QH>` z_&0yO<=_0}mM=a#Qx1(`Jn?+9BQ)c${w(n~f7|#l2dXxvI~AB#`|a;tv=}SXT-j}Q3@Kq0&c}(lRxCsaneBGy_qK0j#T+gi zQu59ZA!nbtsWws)pz+hc_#w}pjckVvb{4Fi(fI@#(V7VvLUby_i%(yX@9$7k#!V*3 zNFoGZBbuFtw;v<#?}URUBt?c?5E3Dd-US2~>^V!Qk;b&@8$xu}i|OnN^%RJ`-8$Do zr0+(L0n;-v7=eUY_2n-3+S9oSO*0=$<9sYUf0AHwR?6|d(JVosd*b_YsAdW=lT0|x z&AnqnZ{cDjgaM>d?d->D@-U$5HI(%b_g;ef<&Ti_*mrj**LEFCP`uDv?Ll%{{y5%$ zNeD|7to>)3`W_26y6n`pXo^c6@;{K@GV@31=j&} zg}xeH2XZyAze-R`Aa@#YUC*a?H%p@6>T_R3Y#ciAV_euahP9dF@w~!cOF&yJ{#RQS zb?n;d#=g#WNyHK_=lY?`vd=o?Dsfr2KM66?YB%D%X6yx71$a3so3JEa#k4UbA<#Ic zM4c;QjYc3!-thJWhx3UV;C(54@?^ua+o$~G2LmFBX*No&eEoXn>%)Q9@6QOr%{Tyw(>WbNbEzyWMEPkxZVtbU7{0UqHhY! znU7Q9{n;HNYOCGBOxSNDDZ;5_q}3ib{EkSm6KT5)ASTFBkmy5dIs@!{EW8tC>dobo zz4E{Q#Z&(6pC`WkX=Oer^Bj4;-(#VXcgC0sDI0Yvqvl-Kg!csV@g-DQ6kp(`Q9K|&@D9H__Y{)s{{e-Gg zkPRjqa#&&+W-nq)I3>=0A?Lx4Qg9AbAs2B5v|dqF9){p;y{8nRACAE~nL><-T%hd( zstDU7s1A*xC`U>GZxrMnO~UFzA>ow9DRB-vK03st6<4L_?79Rmx<3VxKh7=iPVf4~1yT86*`Ll}e44lCH| zPCWxB8A0^@3go7zMo4KZ{as2SCSkk@?SBt+)_S{bS@~bLS>4A8_I0nuw%7Ps=iH!2 zmUe2X!1c;ypFt&o|5@0`&HdeMH(kSmZnXbOk@m&N02`~pYppr8^MnT(%0%sEO7{1W zhG#>P-t}|ZZ^Lcxt1NrBn26w0<4Sxymx8kjog(vjEi((F-dQQ4zolgXmBy94QkWD8 zx~A_E?_MmK8cPhY#ts!5C{xq*9Z=YWo~CikCopl5zKaA^(RG3I<(g6yuBte0q=mG( zD!lx{oLQszxu5(rCK>+X+aK`Y$&x1zHs}n`A5AeOGOrE3g0qb$7fT5vKpm)@dMLRpYJ5l$Md7UTJl%AxbKt0I`05uY{LrTohm|3x zK+||q&Rm@L*e0`>9fDR^wM1ixArb=EnHafg?a@kF^B%{+k-_<%s;+U)vhFfj7fjIu znIxl%LuHFr0c{E)%22e@ioT0nUS9F=G;p!9qDD{x6Iam{&!2w#DPQ}`_vwnprVi^s zXIUV+3L53PP=zw_%#;kL=8{BnFGnUOb9{TjCU;ol@pM?5sH-Uyg&u~$i!roqz$?$u zVnSmzu>@*A1?7c0p%kHw=#YpZ2r~|gDi)_2P{PiQ7_8{=nBhxnXhS4X$R%QmM%W|r zAf%)yeIfLhQfe9~n+-V+GT)`3jT6x@T_7vGtx+h9N>HLaELmZVtf-7L!WPjI{9>Pm z(m4odqooaTI6r22amDI<#k{i6_41`wR<@A`^AkOQy2@abD07a0p~y&RVoBR@GzOFX zcGmv%@%MXm-DcavAL*w1EAeq?C#n5m#C;tsnY9=^>4zY>1$y(YTDT^M&aSm| z^EC$Xkve=G5FguL@+C#>g6vIZ*)EZcb0B)CRCdR{uOD_ZnD1|MJpLV6f4!Bs+xPXP zFn;!WVpM~U)((f+pJ$Q%vIX(S<9OEjeZQB;&Rmz>@CF*KnN<#QM@}NKu9TIzB?{}d zW5lB7Q^%n;+}~uhuDD$HwA$d5=3}3Fg-0J;aGtN|bK<2}{tAEdmwt}l`{%#KcfRor zj;2$lHW2EgG1n*g%(@1x5|di|l#H?D z6r{UAM+_RHE!kL%b*Q4yMJoOrT2x9{iXiezc~UH_x`3NFa%iz=87v$I2u0gT4POca zdDqt;zvM9{;qj{|>X}i*1hrErWkoGB7eX&=lAHtp*A`ioTgN&lavzz`ri4(SPh6>U z@%PO&tXeU6F^aC&Ti^3i1_^4VhXF!iZ)mNyG}toCsgUV8{k$x3^BY-NvKuy-By&f+80#my>be<)Flla27lt=%Tlz7N~?j@nuy zV{C^ZagB|(AIyyzP9#ffZa;a8-c=H+_Fl{G8bM&dK=#4@F-eW;13PaDu|Cigrj?UH z+il-)s9v<9?=@{#C`A@vUMG&5inG)bdhvy)^8CUt|112>pZ{V0<^TOh{4f98pYesS z{OkPESAUAvpRf7y=U?F;{U`sWw1Eu+5g=npR9dqRg@EF`%dFZ+HSyF_&Dq6MKD=*< zUF78UlzHv>@{hj6tU1T$4y!G<7i&tY__21*2TwKs-9Pz&cb~LOeTCI9uN9Xm@!Sh9 z^4|ORW!}S#*BH8(#V^EIu3{$P27izOB@sfzYK3u%)4pYuG9_w?%JeZ2O2Jr-)5roc z31P(1Ge$Bdr$>EHsmKg7_wL{$V!03ux zdM?f{SzmVKTzKK7=gCT;bz-x6%DW$&alSGX=VZ8Yw&1Gm`Pz5x^WFDXw0)wP)s$4Q zCGq;*886+PbG2Oa;AxAhG`8z#j6pXZXDpS~xXRG$$foak@54uIQpTu?kR!2V4kiuG zCaQYElP4EE|H=uq2~@?Abx&5BqNLg~Nn@ypn-#ibib-hau$3jnBx4zslWHwSlup=^ z2GKft;?M_r=|mHApsF)UMb@3+a%~8R>_O3nR1&o*@+iC$F!)ZmRwDFSLLH86ulKzcV@QN|?s(cEz@XzF2fyKH|R z?^PznVPGqd!i(cE4i$@(g#+#~=9TM`F8dCK4Cj;4B6?}$_)FT&oaCHw-cVImL^rj_ z-xLF?h=hO6Y?H>=J{lJSW3^HS4K3>|Aw))aXH5PIwm>YU>;x3|F%UJtq6EEl^cwaH8GQo8UF9ddu(s*&|*!S@GFVKgZd7_j%Gre&UNW4yFoaJ*h8P?@8&LlUp@!zH&rk zpKv&H7}fCZ!xp17>*YBy_Snkfv_@wksMOw4c|+T^v>_0Rg!#i-2KU;mXp@E<>9S_s zXR?-OCL^wnUQ2~yy&I#jMd545Tnz&t&FsZc0i6_1gs2>!(~^wDc+S-up|MiRa*jfJWo8>D z#zCJ^X-(1*r7Ec$>lvx-u%i7gz@)Jjqa&n_=Wl!FGlMOKRSQoq6c_8vvWrA45kt(L z7~;T~5PGChGPETFS_$Vg8YMbBgQSPJrX`BegRHRLN=e56eO#lp^p>?&6lLi;a5-^w zph?N|@H7qqIbm%rK%mkTUC1$rbae{Ys-o+=ZO|OqH6xQ}eEYg0(~D>xPi0mZEG|vDtp_K zw$Gl7$&LApeMZ;*YfP*k!4960w5-vTL9V{29rJ9|tSX(%Mogv+B`5mO$*fSH$fIsi z+CQ)H-11P-Y%e)ViB8ha*L$4#*a7Cxq5zLcaR1)y&Sf~CL7z*`yD;$Ja`?%u8NRYzYcu2yF}Tp2$2gYWU(Z>{*` zXKztbgL4fjMVtj!HuSYcWy7cLO(0BBuJH6CvRNzUi(}3nKBlhypvz?hD;r26HYZ+K zG%PF2lXXv<5~qD)ia~2fND@2xB>(1&=$GXTRu`NSIds*4a*C8ZO|3X?DqQa9H5g;* z`#|bDtTy!7aK6d3DWgs13Y$&D8x1*gzR4(Gc=^PUN#rbxUo2Ra z@g;IFhuS+XH*31Iq;4w6QKrsSh0}$DnWm{NhjWjy!LmFPS@suV?(h*WTjMY0GjGg+)i=XyW+dXQnKS;;qw; zrxz_}tBAH0$p$u2p|qh?9Vo-Jb{tP9Oe-0nE;*u7x)l-b7O~OVI&=+a#B+$+bKHvdz#F+|GM(H%n2na7d zW*IINXE*~mQkF#HoFRoo3O%(geB$L3s&vj(mv9!k2xJi(9Q*fLi$r_O!d?;)M1vyk z0_|SQV(SO-jMqNsx}Ok6p#6HV83L9b=P%eE)7V}b@rH4qitBBaQuc@V@<)zgeC@Z1 z_TMvBOE(k8Zu=t?ybJVsujM5Q#(ZR(HyLQxlhj9zf%ZS=yd(F4QJ8LQRqa}K1*IY< z#}y&0na^ivrMX)vf*p^&Hnzz z{U|h*cW5%Rra_fL-*+f$APoNEO0j7p>sBb1S{G_>2r81&f}i>6zrnBl`p@#Q7Z)^> z2_YFK(*?#gWG)~nv~i@o!8*gqtvUbBfAsJ2@cnPmUY&9KNTZ*Zkx)F9sK9DPty?xrtnEG<7w{82IyVzsEZdSDY;qC`ZbL zyVIJV{mdOU{bT;{?ZVS84QdXC6na3hn9NY6XFhGXJD;*zuX*y|g7>?CuO~FM=9QO@ z$TpIq!undY<#M974wGftUl+wiT5{*kZ8DjzOT6{YBVK&|F0tESEof^n#)CE}il~2Q zFeX4L#84n)!9W<;J;qpc874B@LP>_o8H~zIY^E`m`lz6f6=(DDe;#a*6 z9Wv}KZ7Yo>m3|mVGNjz0j9?R^&W$#^9(^uiXfFY$(62itrtsO<4mg>$tWG1X$;@Yt zZW*zuMyUWwJPAVViD>#1DP(jJ$@3Ak72ZGFp0)&%{pw^FIQB&k_k-^KFyQ$2sQ)zv z)v@KX-OJu8dDs$Tu)i)NavfK?3Fwc2^Rp(g_wkyWfpYhrynSyeJNl|Zp@zxeaX-&? zjoV#|(Xw{GO4-K{MsR*q{x#N6BHN^sQo{S17$YHcRJFzGOl2)yZ&r(fY=&aJSE6V^ZA!w z;+KE%m-wIm`~QJQ7cIs(e7BaCoEr4$io%NIHQI?sOfpbZg(`tJUTV<2;%cqP8s-yA zsVl1Xid-Vg5SZVodGNgr=U0$T&*}LJlsG?H11cx_zQ+yUrM89KCrmE%WJ1n3W$1u5 z4?0Ljq=HNt6kL_U=}hBbQY$W^CiWFt7mj8?KjF!yCFq93VsMC$#)D<#qARR}uqfYn z^?<+js^;Z8J@v#<*(sU8@+xt9p1Dj@vbo~!v7_W3*HnPaPrxZNB;L6CPjm)^NCJm^Yprp*en$ z%4eS3|B(0ZU+|sx&*-~=%9_eGeD=iy?%bYH*@8jQhb3CWWI7?2ejqX_v?{2QdG+24 zq}bDio;GRvqB%I2qUedSh|h_x(Ar~_MO#soHdYTZJQX2>WoWH9l`$36uAr1f1%s|d zoKQ@iG{#w)iHMwe2ggT-+eacj*LQ_gtN8Ftao!eIn@pP|gX&U&70CySB^4!HVq-BT zqf*2VhCj|gMq`{K^&1+K_~c77ZcihXb(Fbha~?T#o^xA>v8O`X7LhSlo6?LTiBa9Ybe%80|r+x2#zAoCG=OGuTKp(?usHQE;MQ-g0- zKx1&0fV``0_K$b}x|9@PpxGKAYb6?MLlQ_ilhHhUbjHc?0keq}8u!o-*IIz%oJSJC z{>&5HcuN2PAOJ~3K~&3dtXbwSN*<40&b_EI2n+72J`r_PTaWY+Fj3Om+qS&+9XT*{k>o3*M8;aIGQ<%veCS%qeZh%xSEN94ss|ujvX{ z9WYr`m{&{3%)rYpO~4wy{%21xwE}IJp9Hk6S>_gP12bo6`-rMB$VZ7zvv!RdM7=|$jjscCHCWNNS~ z&_^(_qiHHah%~ifodZuV0>&8@v&1`>j-ouXx?o&J`x<2}C2r6qV`@+BXDrVzuvWCm zjJ4$4g7(rHE1r@omVM7VA6(L7>B5GHV>+*Ra(c<1y?xHZi%iUxNoD!*&)?zGcj1q| z`2pX2?}|3h@RdTlgiV^-&3W-tuW|o_5Bd6^ewVflC}k+Npt9wK+lPGYwPRkrdBe87dZ%QN$cDS=>~uv6`5IFrmZ|5v9dLAV$S(S`mA(NYq9XVuy1cw56b_>w?ya zX_Yyi8!DH1dZl#sR45g3;iEU(hT*2UTA%Q*(AZj6_Ob04rt4QrM)0xJo9ujz~ zSuCW2;VM880Dl-hmKKRJ;+7VBoOgo+dJ=++(L=jp490^9AUoDiE+XuBlhV5HVR5}r zK42AUH@iIk{$}tOP*{@57;t5kz6<_iQrU0y>{lhbpLgK?{)G7MHSSv|+It6l?byd- z8`I|gagY1Isk(cU_PYO>{lB-{XD78jCPhgg2!jq-E>}#OV`3J|;gpwK4C&^y`-pRh zvFYr>!BzL9ma4v6ilv zibtD3mryzjMdvk4k+qc^Vfdi z=lIswevjY(qrc>0y~f#!&3eQ6vf~GT6(&=IE>}zr=UlA|T4kzQp5JzpNZL`%2BmAJw&oM}dcO9~ zDXS|FQA7nx?8zY!+ZO8;1Vek(QhE(Wp^c&M6Q@tFxbyrAgR&ha1=>~OEW*>PmT%vG z!t&yrNj+gPpV9XlIuy^H)O`L2o@Y@NR_g$!rt4aii`0_|+Bn|7f1i#Cue@-C(HZ3+ zr-Jtrj47lTIXZ4|X2!ZzJa~M@$;k=I7Gf`589k7KQVwY6#eFjbQtmMG3BURBUC+@> z;bxw*(@e?&LR)94yd4ImL}k@h@`cSw9_&6tR}>hH(wW6XarfA8FxSkRf;X9_svu@k z0HvLHgqMV~8ifp{0Hhp6Bo2kEJTZwu)zRG1RD~3Vm97r7ZRE*S$2wHfhaCcCNTV!! zVLF=;Lr;o{u8*Xw1__J7bA3o8;uE}^mk@Ei{T7$HmI!Y8Ys=q*5-`XLcQ26N1ekX? z$gU+;%Jui%ta@%HkWpt#g5NlJ_iQXjj$!BHJ|5G}Kl=%3+}B4~Re79*zixuHV}o4} z^f#~5_!?V^RpoHrQc?sIA&Sp}La|(~2T9A_@$Bz+f0&THcGR_2)XmTCRTg8LZuDu{ zvhLLN`=s?Cn{5=6+R#)MjR*sTC_;z@O_!wFNNB2B^RbV=#y|eY{}n&|lV7B9ijo6W zGr`r3*f|?bQCeEQIg@iF=aH0RQ9~O{DrAqZEHA(QDo6H;C(Bbj9o=A8`{_^4xO2zy z@T{ZYDP;Q2U}?E`T=V(AdITo%S3ZA_H{YD|#wSiVJoJ>fqH>0|g>|>$+iz!jz2MQ= zQ%X{JSD00ngW7ZZpk`K!9@j-@21{r#%3!rv5cDBzwY+xEt^luEi_D4BgJzmmgcRsv zPbh^h7uo``&AfC}@%mlMkriNgQ#1ih>N6pUAHKil!Q&q5D{>NN#Kl3) zX46A~gPFzHfcJwdYKDumIUhV+^5S!jS6-<3{coO8*Aw1+ZGuM8c+e%1LqIvv^3qs| zFB0x31vY(V(+5;GY&IL-djBbBtBy8n`joH}%k1EYKm6uc=WwQ(9MqgXjl)W-7V{Jb&I$)ysF)(BtkJ`;U>Sx>3YB#* zOiX(Vv)YPR@eB@X3q-om555o5i&G_|5uayg6(vQXk$EiwiP;hRmc^`wV(3DL){1rw zPgaSm)@*?`V;x=SrA30K?K)v&1sQ(IS;^$8Qt}irB#^-dbqq8mmusQ;X3Od(uv`Wl z>7zk=P!eSqke+4Mbe#cq9q-t-Y19sYmOw5nE)nTtkZ0fRSN@E6$DSCZD$hIzd0%Gq zV*meo?I(+yiDZ1;OguL$vGL!#zC&pxk{>8if#rHd-*;lIIz%9)6iw4?uaC7J=PZ4Y z&*u?$Qd|Sw2kOH0<1D*tynmgyZMU2E(3rtqS2OXN#k3)WAoz#2(lgeEW!JOn5+N$S z^rJt>fBc{Rect@+t5jr)DQIJ9CQ}HRs2oLU>9MCCidYYfE!315sNvF*(_W!+p_w{f z{@CkWzV!~P%O|u^5!=G2Kh&VHx!O)ZGQQ2{}%AB@^SRm%YR67oMLnoobZon9U}v*FBqcX0>UVA1|0s0~1&Hoo{T2 z%JJsMCupUZ&Bam|45q5KRdCW`V^DcT$}I`S`;V?L&T#s4&Hb}TRtoT9d0{M%o-Fy} zzxa?%U-;DX6<_$w^Zfod9`e@1UfNL_X%B@oc%w)w-x`^Ow@TQaDQ2|OxY~02K;x{X z_6WWb&m6k4Oqv->w(>h+$$}^gH{zz4j1Ah(ghkX6z1=J z?_IhiLblErQO78S7CNnM!u!qHT5;AId>WyNUvoHF1f5SAdV2JwOhUkmdg zWaxTX5m$pc=%Y)|WfwuEt*l6&rQC`!pa!wUm?CW#>AJY>^N;GQ+u)4w{27=?u@q2) z7@;cH*h%}iz&0qdjbB>{Y&~KsTEy-cyC+H*SUC@amwM+U`28x6{iL$P8TMLPr~#80 zk46&5I5Q&ezuux5Kf52~_vK3V6U08N>t-UfR%E#Ay1oXy-(;`t<2PH1FuQ9p9=fQ> z%6;5FmQhJm8%^kgxX}&3u?+Vy7;Wuse@M=H=ufHv-w*8$Ry4;kz6ca{=ygdhyVF+@UhoECAdKh=p+`(IctonNU4>@ z7mAW2MOpNquv&@?>88|CkdA;ea(#0kK1bJIqV+L$nyKas`sEcDr-{dpJDyxczVp_Ki>oD9E0I_i zW|Ei)ooyn^!75?q;i%Fa&pk>-+9>TTWd`-*ETo*0Ax4GPGB=Y598LrXkIG?6B1S{4 zGTMpuRo%#R`DO_pUS%GyBW>2GBCTkYqum7R%8*jz)mLvbYgQZ|PB=e{giu(_HIqtl zcxZ7xVvS|9j)bL;b78}d&Q(N{LVKbDQ14;6ALtk#(SJ~BsA7kSSK<_)_6dp zjhBVA)_7+*Kks>RaRJs6lOfTtiL#jf=3hME!?P=nE6Z2@>IrYXcfr@*TcJ%BAD1Lr zeDeIu!j{3@s~}<08a>R-X}Ugfxy+oNwd4?R6rsX<&t}yUv!+u1Mdy50ZIh+E_r~81kS= zq{ORO%Rt&lla*v~y^o(u5q@HXlDTAtRE|jcs=A*MQLgO7hz|Ho4 z4>ye6%^UEmQno(es6jU^cHBOka#R{QDrbm}yIJG2F3ImH!kc6BRs`U6;#7Yldd5ItX znV)2d;dg%LI~?5c!#qnKgd;P$&oo{$n`!#ZitgeRWh!*_K1YXlAqLvjiV_kjwPHh? zB1s8w9aF*@w{3ssthihyuGW#cGc;afU7#ql^-m8u3g(C=m9hhW(88&NCdcD19 zAoiTKj*U`S)w8HPXG!zuqT^Brbk;1Rv`v(Jd9lXO$H3!t<~xrJDOjeHGrsVd2}x-d zhhn?DywY&kv06_treM8L{Acr;KJ>UjudkGXvYk{~eIaL0R)G`)*;=7yrvx?+OeRfI z&~+lguZ`zw-SOb@5@jvUR#TSVOKG z5mW4w81UGlP!7n*3`W1g`GWTjMMjxnRi4KP33cU$^4?HT#FA0D;QY`}R|Qm}stph^ z%F^UQ;}o}M70Z?7@hb54hvL#zN+P5p{?tZeY=v_T9g)=cOr5671!qB-MCf~5U4s_M zcwIE1PlL0R1n4pVeA`aZ4ZNWY!fs}it;plF_c+5*wx;#_0qt6_RXcvuez4t5x|@Od zqY$H}bnU&*Y8zc^tK4|c{`PmjS2tGP&uZ1|4GwaBd;1CHS)llM?)%%`$7Y^2zw#`= zT_j6(bm0AK5u+#^@3*=3=WRj^L!gJTK}8V|Ix7LQ_m6Y`7`HwvHxm3!=Ce|R?JbgQ zymQpWaFj(BJ1Nbr+m`#w$Xg!q4ZM8rx-zHy0*tSPusSr0rwe| z13(n4V^SooIqwY1zMym%q-3OBmGdw!GL+kyf-!~Kc`9XKQghKoy0qlEx#uuKOp#?Q zTx~!rsXnigqU*(kD`pTuSA~+UIn|_M*%cmK1%CVYI^OvBf}_JJFTHw-E)C68(ML@x zYeMgEcCen#GNrx_E!H`dp7QA76)AX14zzvbU<#u~AVuyEN)Lm-lE}O>bX~`))4cz1 zMPDkcQmmGdHfW3&X5MDgQoAWHK5u#P-XZ_%|NdRhl13B6LOhF&@8P22U^1ogj&{@X zbk&KDUoMmk^QLgJSn&EQcbHB+C3QG!X=+g;u-*|ik(_!?juzr+(!+Bn_Xx^jOhrx! zYYVfgq3@-0&~+6L*s4p{gIa&p=KpzvU<(hR~k*&fRi=KkDHGNtO=Ut1HV;Qoz&I+Rn zvGg+89wU@JCR5o3({1ooBTJ_YG*&~*y9z*BAm&=-ax*~Q1ljk4eM+Lwr3TC;#>CB5 z&$C|pp!H4W*Uf#)cG9+D*{?coer9)^<;FI5Ev=hD_~yRg`fSC`Y1SX0;ToK{Q!XP=63a)6eeXa{Hf9^{dqxctp`p0adED9<+r>HBk z)*ReApzYS2Uv+%+4=5<9$dHX#8MC(c`Y47Gp zE?R))95C9DVnH5tv9C=rid&x-rHYsm%4EDQtULHH!*dIG)q9>hp7W&b`0##DmkP^1 z3BH2NVo*Q{5NqGC3g za(;S=Z>BWf6I0@1dBwWz@ZPYAk(j~zh7=QhpRvBdSTS-^%8JV>k}RF|e0a8@V6jz2 z){#y*idA?IeRoC9J+rDpFFe2XyN|dG8dE!Fe#W%1+&VhqrRQ$({4qFdFuy6+Im$2)TGcWfnUtpM zd#u)Imxa-&Jw+w_q++>VGM#%u*Yo)4CAV%L5n{__*W#VWmZVTcO5Us!+G*k@QnDWs zL4{I7JF1A28YN*3I9`b;*X(NZQQhsr%AWhjmmTkv4CL0d~Uh0#jZSYfynl?R%xf;4;~ zloRz1!6=11MjHzWcC}75b>YR+Zd*-3-wCLHPS6 zt?_4hKi67Pf_aRq`%x}sKZpxs&04$t|NV2?5B&Q9|9UmDt0ttfxL#S^tWd@l+E@xI zrNp}QBDTr8&o# zo-ROcHMbWHrR|x`J)i&aSGfJ6R5=t+w^@_2W7A(k*5sIoO4F_~M#-RD8v6W=GdNuc zQLzp^WpKUAsmB_bE)Q8+e+5ZAAxm4_6j`jSV-|^xEJkBjo6M$PGjWE}Z@71NL0%Y6 zR~x$Av&m6xtg|#2$E_zcbt!!2?u4(uwdUQ^NYDoR+n3z^8x7N$;qA9q+_{~(eQ?0j z^9_Bk2~|c}%eqTg=OJx4I)KGt&F!O0&Rb32_vm~;h^I7@8P+*;P8eO2i!3bBmSxwm ziG_>hhOUcb=eS%;%&Y9Q zYi7-aCVO)3z#4?3p|K8%@f78R1*?k84n@daAa@b(YN9Fht1D&`PZwnVYdW73`xdJV zDfU>a(8fdWNqHk!aaZKJWP>H6bW1b!lw5f7@RVuenNDjoez4-`uv#gs8cN5U2z^26 zI0O+-$qHkobjvxTjT>l>31=iQp+wri7$cb)Mah}ATQl`FAtK}Sm808q0z7#|=!SBz zaTpbGI`XO4E1o;i{PDNeJYHsKYT9g3u@H05sw=o7OUw~5`VmQS8D>hv9A)q&%Zeyx zO-yXDhwCjGhF-b|EGo5E4XA`xdN5`BXuux>`hJx#u6j!;ege4p z^Zq_=;v&!f-EQ?i4%F=%TM47*W=pJWgYo{pKiVGK1@n&{^k;6`d`ht;}rLOC?*L_qXR!WI= zK`x-hInMc-qO#zDp_k_qWFew5&KPp^U~lmQZ+-=(EB@&J`BPGPLcR)gspaG_bN99* zq=<1f)4F4QWk{igBC;#1^@gtP2?;J%Yf@JD$_(;EnLcN7AE*i3IXPj{87@{U0)|*J zMp>yiN)~3B8eJ(3&Kh#+>3jLNp;0Q5KPeOOJPn$s4|@LM!4o`?l%-Xc5Dh8qo%i5o zRus%g@ zW4V1;@x4cZz9g0%#NM!&*VLvZYfoZ>s~jl}IInU%KELG2c~43W0Z_U@rxqJlq|IYy z8WtyqoE%RviI%BlV`nBntO38q*H6l|J zOCcA_@$oI@Gl$jDOfvD zVYL}rgW{o_3)GEA>q5$r5WMJOrHrrq@K6}4$^ktxm0gH2P&Xp~@cMej#dkKGCh2)v zG@)qvV(DX$V3K8qMAU?fFjtWF8Cm%IiE+qJT=FD%scq1_iD&G77HJV_lL$L&pWAy= zFX^V{)Gp~<#|yq+yJ|n!-VE9|k8i(av=3}=LF2sue2pxyhdb=Ig>GtVJ!`)=f46tk z|G#ap5dgoAyX*(`ea)_XBk?gLnXvu5Qe4}|&Gum&=*Ty#r~M-=iruWjUTahE4?VC` zKo^*5gUgvtB~XU5SU7p(bNuap`>VYA`YTLpOEtSK?5=F+`wm~%SY1f5CufDzmKbEw zBhQt{f@~KdY0YYV325d=b0SGtO+^h0HfX~dJ19kzVo}9my^+}mJLS`F`~X#R!0-I? z-zD`A$Ts3^A%+#!73x~iu9ozh4V}8c_zB&*qZG|1!1+3}Y6muB2vpt<9^Vj^;VK&1 z(<>+iqZ|c=9cFrC5G}k^GP##T=v<*vgVIBWjMyp&eZO!po5-p=B!aQ@Ksy+4g_MSB z`TFyoQP^CV`i>_{MbU{L`|KQ}B7geMl7IGxYhp0`t3R4arQ+;j&Eb54b%7i-lc}Mk zKu98bxoW|h#H`X7oj7d^-~Ps9!n)8%|{Lsr#imnrKP$&WKym-{-07_HW4U|Ntqo@g5X`BbL z7cx+4iK)lhhPv|PtWd?ET%?)LamJE>W-;gd>=F|ai`vt5SD-xFSxQXQwG+Ex5=MEn zsfb*Ryf1ReyGmYbW{W9C1r!FY6uR`J*kO%EXs1O{5=n;WHpfL4t%CCY^7B@4H!;@%~&t|J{J4FbYRT+W!5Kz3!67 zmh@1rtqr8DggoO~X^JwU2%RFAzTq=p{!xDY-})-I4`xgngP-2P_=-|w5YQMsRPW+P zu8gM?28>XF(uB}$$pkrPy0+!vgNH1yt~hyq#l4q5HgfeuDxORXtyJuOE;9ipqnttM z3i2Fh6CZnh!E)L2yUX9EtXfWv=hRh}z@GkJ%HHh9k~BT<`+aLfoFyxx{;mK3AOJ~3 zK~&eO>{`03_nw~Vo}Q)2;c!e+8cHT9*%TMhrU4qX1;LO782TG{;XD5Wz7%{VTLxqs z5JXX?MA5Q1Tt{Maw%)6|_FT^z%eVRBi^x2gRU^RJNK|L$S>nVw@h;E%ywBs2D6FYK zSVHo>4w+y+kIdGQ5c|2I5L_!Ou2qt=)rz_EIA!T#mR6B6K@xfBnj$VFV!xRlBE2`d zqEwk8-zG9k2}xxwl89>?l8|T-P$D3ep_Z1m?Xvof%-i^v3ZLY7ZoJFEq~&m)cTlcX zHTy;4;43@)U;k#oAAEPk_H@kaFL-9NlGc0nrkb-wizqD~flGPksIFUfwhWaGOvV*Y zP6O}#@RViMd3Biy=hwl{kAI&&Aa|FGE6BZ>MBORbwG94$XVvEyd zU?~-{R0I+5PEyzsWg{VIqE}gkBDrjhYYZZ$?2pn4Fb&33s3d8-1yb6cag{JifXtu! zAVfZowm>0CQXsWJ?N=<KwrtjESh{w$$(3*i9Vl8O+EclVmv$2qmzEW?B_!mAw|U)mWYKhsF)d zYk4T?y424p@&QCzj4_ZDrcjiHLaBrlV71A?H1^eINDwj$%De2MrIp86%cH|Y=Rg`s z*F?69!1YO@X%hENJZm2@#^PK+YMn7ZWHykBd0_2)py_;;1t%K}AubPjdoiTmeJ(*7 zjGHcRj-Lmuo*9zJ7gFlYj4lFJf4d%Di5mipR};gt62Rv2;CT?v;Uov5e&KKM>&V^2 zWwqHMI$nj_F29ys8D&3|&EvW{>kvQoICDZD7Bh#$yYURqfV2iVm)zlrUeqz2Cla{W zg3rIZn58@`v0my3FD3L$T(~$sdN?umi6eJ3n?-=^_mhN76h)>;HZBtEO@8CQ{|)}m z-~J}oclIc^_b7LsBcJv>-w{be^0?@8a!k31@hR^lrO@F+ha}%lq`=AH13vxu6Y9>< z#g^dKSShF~iwiBJ7VlPAqggLkBp0#PkVHgjffQMXNh*z$iko+CGA<13(+7O@?GajJ znlMQslBDS(ijvvkoRh;jXJ?N4ho1X~4U1JkDT50R-*yB%W?S}Ub#x{fwxWeckng|)1k*ei1n)5mz} zeU}nm+#NAekq4&|p(StK&}@w@6`nR|KASlXPZUPBG%J;t7z=|k5+4&$MA|lA;~^%> zs$j8(dq5eZ^}pjI(}MX-MP+$m3b$2cMp@4kgM?QA#k@4O>;Bk~LK+ zsN0e@j1Yy!YE2>X3PfQ`TyTUWNj@M|rr#@-7c)}~G;M>i8Yw-#YmfbSp!ec0>x<+12;nMcMPiAjJq> zR0u-WyfOto1+)$sfszHJh?amcf)F#`TBd|R6LF9%Aw-l4dCww5iXtHtL?vmPj%a0u zhde})Z5K(YXJvVWNGO?iGL+0_GCt5R@*rw30@vRR zwwpqU8GhQ-*SeTtWauEnOP9$4mmhB!nx7{dGNd>R#;?v+F50+$Pecr!@_Dx>3`zl9 zbT`9HW0+eF0srE(Y`|4;9^4ccq=L-^F@&e#Z5n1T=eHY-vXW<96|7v%_|{kX?ce@6 zzVXHjj3yP+y=_!6B1T6H5k(?JfmUNes6m1fmXJEUuQS#i0tAOpkIe93LIB zJ>4a0jU8L|#v@J-pCDvlyt6~+I;_@+l)cKkdPc-kO|KK2Mv4|=Ek0xpe)N%dzV;1v zOMx!l$J&PFe1Wu8-i@*b-v(T(FnWX#D@b`+*V@c%l+v(l9rMMSqJ=FJ*)At&pmDHl z9c{{%2~miC?xT7FOF&se=L1$IO0BZEiiEYxyJJ42Uc$xa4d;|-n-JGP2~LK{NY@|Bmz95tSgPF9HTS>AkM#tmUvuQKbiT}gxrGUO0TpBRZ34R3WkLnHNK)ES6%yTrNRkkvLxeI@ca;Fy>q_-9<-vPM5+@>7 zSz`1!7fHgBWXSUj2|ha*)3pLyNVH8v*C!H{8BQ_f4Pxh9mas6MqBnv{LX(mQrSTs2 z_DZ}h_|g42!3x&Vu<(IEu6jevgGj9fDMUoCb(NKVb@r2x!wUGtriMuUmU%zh7;yL$ zht1^6@Xhe^W*`(oudwa8Y>DJPlEM^c+ut`8A%3tJ_oTLt6k4)-5EptB>k z_HMAMXCP~ea+DJg5p5$%dwg=VO-(VrP6V3Pqol;zNj7`yJTJcSRl2i8yMB-46}4|M zDv=Z)P|)XJ-fuBjIUHL5L2K1l>9DBoDWH#s4 zwF&wpVoir2`vXn3EXLJ*<0bg;vE!2yC`--toe`&}YcwO22BM)HX`}&(XSMSD-ghJS zR%>(^bA4A3wc%vh;A0}V$a3X~s^r1Znn!01Z5(5j!=^R2_7u1GG>0dS)3ssk1W6g9 zfP|*?0b{a-bK5qMa?*4{_Yyoq!38Nvj8+5!h=eUlVr(eOY#0??LJ_G(Bi8F0;~eE^ z3^5UtLz0g-+0<(c=Ga#i1$BEyQChsqQv0r3qX6$)kO56XiV7(;s>o%SiIU(vgov#w zq}C)CsHEfi)S*KnF9OO;=S?XPQkKC+D4H(Y#p)DMz5Iyx`3+Xe;FjhesXvk5{xo<=gu}qR0m?471gW z*ye3ep-PmkXzMjX%dG7ZA(8R)ot+(yPERj`Dk)c}VxtQIK~a>{b^X-N#RXgGBG}|) zlpWSm@(6Lkz}gIS7mp*J`u$aJimT5#z*pzV=*q=(HDL@%;R5!$=t8az;4fgd%X5bO zZ~h)$=l`Ft)c^P6G_p32Kf_3}?rgyox3SO|N&xqbK*;2$<&~yP-YsRAqN2jOk?(89@rEPK*uC>C5gel70sRxhq z4eRy@Z7o_((K>fHQc1L}NM0jG&y!q-9>1TZ&DRSilWmsAHRDOe$>}lkRm<5bQP+Z$ zBvL}>A|_>WL39a?#tB7`jwWUY#?o5arlrecCkoN>?rS@I>#aR*Z3*fov1(dAK1?X# zNitzoB1VDlJ5|vm8$RZtb`k?2Cc}+t1C~`vu|2Vr1#~Dva#$3lGz6b;(xHsx3pX@h z+_(I29=Usz7>^oW**A2)WBU^#AK{cLXyG)p|Yl$R0)zn zXp`A)$nzaJ$PSuHDTE66t|118P*9lcabr|OTZOO{$+tw8lZ+BzW$r{Yf!#7<>LuER z*v|&QwJn|3#N<#3L`t+SQk8}n^MXs#Cd(7ZK~qQ(x=6du#`ZBpl+|bpLTP;GXj7u7 z3R05PD~IbMzL#(i)-azNK6}tGUn@Sm_k>4FfeRpU>~AZ^RRLIB>kv{hOP)%IOh;?; zf>M+j3JEFe>G+r>7S>IZ+2cKYH3ZEZG%jeo^b~-#T?=yA#Dz} zQzEOTri&oEDSKzoUeWjGYUky)TuqI`?}f*>-ofte|Qp_ExDHPILrsXbw5rQq>t-h7U|cAJkGRLooQS-wL?0V*rfRz@)~ib+vXw}HKB$-A%b^X{FJ?GjdX zOQ{sMcMR_z1!^?fhpgnCGDThvVyaU0-tq}#hP?AL z!eVST_!3f4h{(^rQ*iX1nny12-e(IYW`{75gtLzAGO(30%x%ho(ANCQH!c7Bze?Pn z*DU|MMrnyGB=Z2a8u8%BbNAR2^)9KKV`9zqJ;lwvg02mG|AQ4zRwbg)NS$GNV+12p*X8Eeeg1xkz?hAocdi zF*vL(Kn}Z4`Kk=PNNpnIkwOS)UF1)a~ z!b#AqTcj|=%%mkI#iEgX{P}{rj~t&pNz9hn;atsve4v0wD~DHp3vXuVfhpwwddn13{$g+Vj9T1Ys#JZo3(%hOKCL z8lt)w{9Xju%|Ljysvc$una;eKXf`VNen4@K-DmLrk}SwD%+8O&rRN+1^JN$+o!|c= z$fxt2^Wr)e`c{8yb*dZiG;v9VCHNTkKA5^LPK=U+3#zxrJqm-RGwi z)rgp&4l}G!ph|>__^{0LH&GD0qxMUr(4@}g9VMUPS`j;%x@NWRkmZPRAvl>GV~ZV{ zHB7fhG%g1WAriCG&ry0zRVretu|?qE`gN4a%ezu0jIu0dr$`-e;tZ`Se8}|L5ITaZ zF-p^PXV|TGaA|~I|0zxw!XmIZS@ZbGibqc(s}9P_5Tj;YJ0cPvGz!om>pDf%G0~P+ zZ@<77Un<$#st76Iz2LLuB#Sp|UVLuMS6(s9zQ4e? z@bSZr@tuND2Og`IH(oGo=@F+hh4&37i@=RLhNB<0s0zko%isL+>-^-KC5Oj}&yHH0 zwiH5U6%BjJ&1*X>I>YCmE}5+q#s<155z-(d1fTWwLXZem(8U^$2UUR226o0)grpF( zK%VU?S@vd58j%#i30yD;A!*w+b?eyM+CfN#M}o1LtRo^?={$Rm3ZpE}uaQFGx-L_` zeb!2o#$*}(N`o}`)?+HrWkHk{AwyPDs5HVWLTWP|9gQ(HAAGXp58pdMC(*N@kOZGt z*MXue@cr(C@Dbl7jL~=}!El}#qfZn@QdNd(l!$bgUQv^t3Z_j-;~Iq4xB#ZCaE<4q z$8+BQtl{G)f+mQp6=V~I@l;0Rg2xAeh=x@iNXbzYB~mI%1EKARN)tusy#{n&xrQD~ z%tCw6ff)89a{J~t<_$yDzgd|-Yj$x}nf7XMy9%fLxDI3U?;(UsKHWd=wu9Wq=Hm{x zyIQ$FD`{Lkrp?=L&TF22{0qu+{~HEo%+RGMb@_h70^hT~hu3m-ZgExKWH>KMsq@F% zOtu4wK_U?%Q4|Gj+g@UrZFY1|$+d4La3F~YaYShp|H(JM!f*b@f68;aTUb?a>y?{` z5NTb9QU#OA^`1VdY1_O*A+^p6w8;=-!iNqKYMRbvKLsSS#R=<9VT%zucFY$oF=&h$ zv5HI9^_rqAh+fgufHx7@k&GR9W;t_B68>4?K8kI)L-T2mBb z%F3dW1L=^3A*m6<6cpFr#hpS}{fO1cjI&e6@htK9q@`{H!u3_E$U9S$QH~AHLzIcB zD*5)icX;JMW*oi@T;I1$M!PH*E1LO&)jY6TI9#+mI%#-(QX^7U+)mOW$z6!^k&qgc zv?Srl8(hQY{-9_!kQ!9>rZ9$aVTiur?VFO@*I;A?DOJePKGp7sv$djKSSml`XTMQ0 z+Ua;OTd_AW+`L&)sFK<2nA0Zm;lse)hfB1!xTtx&YM4&EJo$r*qza7;q^&f@;xVO_ddUO(qeDe#uhEi1TfBF$@tS3q+EH*h`@( z3rXPGh%z||xscEzpNq!j7_hsyPt&egESDM5M^aRlVKEmn3M2v~X@~)&4k)P*F(6Yw zAt8lKiqe|Sd0gF5j>ovBMXFW4Rw5818kNOmRg0E0KK^XRKmNT>IqfuBiY&7rg&_p8 z77l^Xo6ZZBh-59Nu649Zp|qvzIx1rsmy$@XvXV3;CGrQ*XUD|U`oQFUHZzea5t5?w38fQ-6qG8^;qgAJ+vWjOI#;C36k(AE zoLq?WC9*HU)nT%f^1Kqi6r?uh6;}tyLjt&%8w`60@x1e3qqF;QaLf=ehd2LOaL==F z{^2&8;)R=m@yEeNn~%Af1fTu&^!;p+4usnG6 z_)_1EC6S@B;eFUls252pe2IbVEb-u7y zb<1Q@_1&u@h886h!fcbG>3yfOUR+9n#u>D+7_FF{p3z2y)r!!rIbJUzR7hE{Uayg= z!+Qv|BSknnJ0(QN&d!T0mve%z5n;k|m$A045kWti5ZFC{ePcuaDA8U zk)W{K2xS?UE5@p2KHKK*1Iaq9fB{<6l!YNUfwq>!8i+_TeLJfyOHcxpEUrr=5whYy zmlLE4mJmSdZAdL4btDlvJe^Y&6Ap?h`?U+h<0q#S<%nXGQ5ZqQ$3Vj1x(3(wdr^f% zkqDj3g=h>}eAI(1Erpf+Qeh%GhZLR=TcpTcJR+}Mh}7`-Y{@_W*AKGPluYOpMQ*uM zAOr=;k%B-(3qB8UtX7B=QCiYt_5#%-W&XE~bNVY~LTLrA6BAx}55d9W?-r*1l zyoSj=U8jBx-W;zc}IRW}1j6QXrXLSXe zTiV0W{u~0!KEoN7*-UI3fjV(HNj(*Cc}5}-=HUP8 zYyELaYcrt_@+F&|BbS8_GjlFKgv46YFPNsDf_gRKTr41_1W6>cvPh9|A@bbbZGQRh zyu&xX{zb;cF1KI0gC0*&QW6>u+OfNLi>~u1BOpkW7~w?=BHJ&AkPj$@ymY3k5}g8z z`6*4)U`7*!t68mPL|G8h8OaAm<{D6v@FXI~r-!V&HG6x{ad2~oy?TeUqcfbZF=fSr zM~9rwX1w;wYZP`u=hhf&*xlQvX-}C>EiNnwfJ_xBYLpryO$Ba^@GFYvzs=~@6V~tl zK5ZSDj5X7Vq12f&t&AoJ&2(yc{>Cm}dGj{ct2LD_S*}~O6u8Bb^?c6#dco<@0>l=b zPt-or`oOGpe0(_Pq|1wK(FOXxpR%fO-qATn+hyta;qwI-@GD3pC2zj5&p-I@evw-T zTTH8#MTi`I@ClDUd&17Go9sV#jSoKfhzEC{@V&n}L@3F_Lq+2>lU-;O{Lg>z3F-G? zQf@QaGH4sv-Hx~>;oF+Jl}yVCUwZpRc5jS$cz@2lA04vjYJ!-utxmbKRnQ(Sc-RQW z*9}Yp+uauH_7tN^yz9j~8AMzo-nR%9GXqTK)d#6GQ96tn;gaq*%max$>+!L{y9Hev z*cxxMUT16WYEk>%18eQt|eXE;8M9IacD)+nPfBf*Z&PG>?Y zl$NX)D`HY8t*MOYJwY5&TF4v_io(#fOXQ@(g}}*bO;RId3`mtd2|`Llk)`F8lzHh6 z(d+aK1My*(0tOkCVb|lrQ{&2J`7^59OZ3|zfk@3TR3D_%g}4a5&w{Bg7)Iw4j`RD( zB#}b1yZ;=AkME&20&m`O&I9%|NTP2HyoUh%tPSy$Qa_6t_F_b4zOWhaFM|7UpR74H zEazR;nHs*Y%Dh~?&3HVfuA56;!L#7Qt23j^u;GObuyY}I(fwm>%EM=>a6fNh=*%P` z25RqkbLh||D z_i=5&#VwSEyZ1iih1;)VRSm*Xlm?XqQAj4`Zl>856QTp7G)YRl5Two$+XXNF3!;b2E!g_DWoJtRs)uE zMkCAqcEQ%zvOS*Ax@JN(h-4L|X7U**j& z+#+@gB`m9YLD$rL|N9@ZY72w{(u&Y|j8+&U@FBC%vaX<@u3M^cfl7%)AgY8i3g3cE z4ZiVIxbdABM@L76QNBnS*b z7Bt-wJd7)g&=y1@#1@gjT7^uIx|-Fz-h|Ot0hHm>0dGBy};vMpENbi7ZMykCCZC%Zi`*)!*W~|KuMb z-2)n>FvT`IJDRFWSR0Tc(X1Xq@U$JYt>n9Z{yn6$jHgqimW+4C7`p{R@%VVg*%Qb5 zq~`dnWzm3Cx#Cq4lu;Q<3E7^u4XKAjH)f7X5R*VF%`4B};vfFKcNvrTv+q3Sy&rze za(+l%M^>$*ONn(ONg^_Ll2r_>d`AkoI*vj1`#-s3HKnEN9LqHB%u`zr)t{l(Hx(L?XtH7$Z&7p*1L>2{Gbgpd{}cNg?q*(6}er^)*NkEuHruMtJA5 z_E-;rB>~=bXp`Mqr7TfJ4+myH@4Vz3Vx|j)go}=-BuZC=AhD((#6;4PqOd3{^Wa>7 zcP+B88P06i9M1!P{G-SG=!1LgPsh|<;MhUY?>o|kfU*|W0%btyeBp$U<a<(jZc-CYU-x%52QdE^>-8p>M5mZE>@m|w(A*)b^UhP$aHZY!8 zLKM_(hm?vKGKExYNpu++k}50A`k1oPZX0nyP!xbj=p<>$vJF|@+gyTqa>tQ_ro4i; z!zSJJ0^8sG+QjaywdX;42v9i)53rWH9Gu0)j>fZw?pL86A$sU4I(%rEFPd{J*7Ls) zmb=66Hkz1c55=!SJMo-iH6$TWbfK2wY7a-+@iPi8mbST5t`Lmwq zSwCNezcvT+19R)y@EGSOCZ*{|vg?COAdXO|IHU7RW_Q zQUX(sh$y3vtq$s8|>p3LH7v9(fq3G6%?|pE>|Mstc$Ore2ky4_KBE$?i zJMU>-B#^I>OLF}&l7!~XS6|@Qe&MJ1{Jlp!emLX7;W2HDOtuW=)N*q7kR}E8rV48; zAKzcH=rV)I#|B9xNrMXls|89xQD}^obS|LnD3gU;;K|vN!{Zr0`Y7NGE`RIWuXAI6!tVYZe(=fr{FDFnUvl`w^Ts=wWD#R_ z_*2FrVvCY47qv*FQf%!M%+Kajl>sSw;)SDL)_5;CIG7NELu+|nNO~WTwl}uZDl2`8 zNbqg;@eso}qSsH00i}vOlO`(}ciw@}XdMVXptQi65~;I-Ky(hNbe?lJiF(!X(cLF} z{NZP88^g7c=H67;C2E+5;RSMD9}ZgHK?0F@(C9NT@W~-S=FB7rQ`8& zhZmYjsd@GGHZgXrI?ud|G~QrhUbagj`;-$D0-24ex`6EGA2EVNBSqHvk$o^w{a`+0 z7K+XZ1ezG~_HB%@|GUWk!YLbRrr6hskzT$#JIy5qO{ixNkT>C^{PzrLZ3d@d_`5kD z=m!z!w`VwHaY2jC7fT+P4})`h+U!N8JlMLwfF=7zMFIH^|ugh&4WMr$8_rgp)FFz zOqe-7BQ%cP={9D(1xip%wkW5&j7Em&JyuH!18y~Ab~;1Ig6XK_r@wKV-PfMyfBc{R zPiA$SuZ#Y3B();C9H@0)6z0#nq)>u`=MMPgU;J6N$~BK3wX}B5{3`L|YMwntmHBv+&sMj^~ zbwEYc?mRnggwufKc1qelxq{@y9?KbTP*btv8N;b(j7?M?X3pZ+2L$M60n z^{PQvhS6vXr6b6e;9{mhYem;&GC(=1&_?5ZOHq`x&5BWF&>DghRJP=BdCbFyEqi-g zD4o67kqW7D!D>ym*N_@oSA)of3Lm>A$j!$MP0+HOGuT4>$MeG zsdBtU(@BDlG;Q`GKb|>0dDwCPRM7dv*3|II?QOpFa%9y8PHWG6l}IV`tk*RpGBsEt zs5{5H7TLB|Bx=`Vzy!M1V`QXIGBXuqqO3}c%*%s?f~eMf`oz=4K%oqpfD+lrCicp} zp*P|o34+h!joBh{a~C5AFr|iNK^P=HF1|Mhdzayr^Q6+Vt_H)SA$X=VKvwcRQRHNi zW3Q0Iuvwp9L>DuZ985*ZLX(%-Oq?(6Ng&0GnZS>$;-9MENsuz^m64wwI~DzcVal@O z!}Fzn>FYcJ^$_Dl0+A#FLPAlPUJLE=IlFrPuKo?dxsP_gpo5a~DRqF0V;GXe#s3e< z=7J%YNfO3rf_H3>5?_D!9p3udTO{8xUo^}Y4y&h>g+;4=Nftn45kL`oR$_37q>(Zp zgCL2P#p0O52X_e(KKb}AO}l3Q#sSGmVmHT!h^i88tqE>HiVokbS=Ti_CQQFMZwpKC z4%c}`WH}#YEaS>@?dENE_phUrrYJ0RvnC};HQ6Ra2hp)LnvyU`Jw|k^Z02Mqq*S0V zAd0LgAtmT7e9)NSu+P0jvp!{g_&KsF5neDqZ5f+_?frd%6d7wTc9`z$Bc#W7OMKg~ zULT>9M_{sNi7Al9h|oE1-`vKwn!otqJ|Sjn1ppVwOe2xun2g5e&*e{i`AhuQzy80e#%$g+2Lru;=_AOJQ*IVswofe-)FU2A%f49v>wqeJFL=N zyS2y7gE6-bwt4=!ioLR+lm%K(P|j19BZ{#_V%XiPc;V$+eDfP`@z%@x$n^=QN2g5o z3SM}AhZNzpJFoJ^FF((B{_K1F-ar2#br<;?KldutsK6)*y^ErZ4oUWe@twn(g0d*l zQW0E2nF5g#u5O7zptMJ8u%_f>z9dA&c&j4B+`+||i^Y(#k9kNCoFaIIF$#1hg$R?c zTQJ%A5{CzzS14KJxRGL3HLxX0L{#ju2Z+exiR-%Mv(FCs;71?v`gY0eG!cYkS+|^e zjS(K5VxEBv7oJj*6a=c!6ho&1k(?A9>@blAxhnIux(@S{>(F+F-$2U-( zMc>tIs_Qz30+uJItQKb^ znP`0A-EaMM7V{;$J0rUGg!zeJJv+kc5-l5=rp0%b&ISUBkRslLRtclBO0851UF@=L zCJ3O?0_hW?%j}%0oG_X0(7KMMIb&~Ha`N~d6QvmM?9oMq)~4@+HKJGPO~T`S7EVl* zl*Z83j}gXm?ai+_f>V6;QAW7*!{Mz1YR>(Hg3OD!P^#?u3&?+C4@S zp~4N`{;6wxwMhKYcm9ZOS@UoIbj_!qoRMllED}LG*7F&r*k(3s`QxLH@i7pkXIvUy zI5;3a_7vJunhB`Lc$E0rpMHz|g9*DMPjZUW<%&=5&iJeEzt3cxcy(t@yIOHH7c9Gu z>*HH&?TmQ-S|ka>@BNEE<-NbU$MqXq{Myg|1aG~x#qa)`KSSyQX(Z9Nc^It((RTGCFJ(+XxQIGn-pO5kNh=Q|{d!g{*K zl3e1(f#%V1%WRc!4w|~7by>1Gp$I_`qQ?~3H@UEx7mf&2g=S|mg&xL07}i~;HxAHK z=L08;C0)1X{Tr4j21MIYR3)Gb^~kAy6?el!mJM*?9itN`8R5uCk4; z2E|RtN(ga|%U?*Oq`qn&2E2oSV>ti)@copSBA1y-7toN{=#-wm{pQyulS~M?fmWrV z;J=jIu9`q?(sM6nF@np<<>DAO2c(;j)#hU0rPsy9(`|Nln|mHlcUKZ2)FlSp)h=v+ zz96w&ow7Bq`Qj_DVW_aypiMxlE_>TZg|;%AL4_=8hcG0ea>A7cXqcZIvRa-o8c)!s z0A)!Crjs%A*%?wRNCw|Iv?_?Hre1sMrlTB{6h`5?8dDSqX&4+fwK6Q%Ys_ebh%F&B zB%o_nD6KH2=!1b}IX^}EmdYCDi#elFg^#%_Rmy-aK`LU3z204uA>O3XTGO=)jDm8! zOR5Er-uo^O9-QI|&F)0eG!0EtV~c{=YQ~e@+>KNUV=QgEMoNtjlF4M7`J$sJ4Mmah ze(xfG@aLb?bb>(4o9lz?qUbq)5?+3OpPza6O>8B(zBguMI`(%YlY@Px_8Ow@ICYKND_np_d@!Xj4R59KzIbIwQ zN&NITUf{-^8weB!2Nip}mRDcB!O2v=BWhNm59Rssd9=l4z01F>f6I>JNW__X}=HnAH|56Geqn zDTX1l%NLw5C^QQXU4pvyELMrS)6D9QqG;G2CAPOE&3cj{x+Tq077kI?uC z*3h^}j1or(k&V$LYyCLP%!Sddh4PIY2QG!!{upb;)$-yo1O$yGQ~I>?3h0ct2}EJsg)1f-HERD^n@^N|O@`HGpblZ^$}SSkX7{xTL0wHAmpYLFI_i_jFbBIjd$~;Q9UgBZ`)s`C z;klGjv|WoZnt%FF|C~2o`3m3o=GQT%Ld$~WVAUN{mSbW!1_DVNV$6_())0JymX4Dr z_aHcua5QaAQEpLcLEEfYyLqnoPEx*(9&(bh{mDU(U;h#(Z5i!7Tq zTbZSj*@wun4dl*`i@Dt!@N0WwQwxvmfN>qKo?saEl*gr0U;AaM>t0UvKL2QR1=KKf%5b>osAWkZL)M&A5*?C2ct`MKBppFWl#y8#GDto@N}MbjN>g&M3&{ms zioEmME_+4dWVWE#DR8GSol1zXJ<%+hmgGSd`LUF;y}xox3IQV|2%m!l5S?VP_AJ*v zRSz5)VY+{>4P8)(Im2O(B8 zGPA1EM25ZYxb5_??}@k(l{LCRA~GV*J$IjTZ>+V~x4!j#>O!^9=Z*7frB4R^%tAkm z*zeHQh2y1Cs~*w$VFE7DVEbU1lF!9TX#Kj*0=QUdXUQZ&DMb=k^nMkf#X95a92)AY zs=mL|LvX!Z%+q9GE(i0=Y_2o7Dbi=s^i_(px9l<`b$%{?c3o)(- zc~a$-B{2+$NQ7t+KGM_3M9e5X(~g?-u@9M~Yo@gJbFMw}eUus{Jtf}|W0{5=vkfGQ zZhjvr4N6atAz}|crkg*eE3fd*XAe1CcKk2LcNrQ>p#+oBm}}R!x%2E5hV3S*$;pb6 z(QXC~!ZNU^EC&xQht-_VPCj5~W5B=s(VHwQi_APO2!zl{Oi_|7Q&m6)&1Vme+1=gZ z-WR8Q@u)&6yMmdI8JdsT92%68{P5d5{H^c5$jx%X@yQmW-9474ryQQlL7GIaahC0^ zD@=+p`wu^%wJqOx^%@(KEkrb^!5$kM8ByeD6=~bZ@zH>j*_1cme}an-n4UDuea2!o zV^BCuY}qV5fALoj=z`{jt2;btpL`a(@*IGIcnOXthL1KoAZZP444~}{L z`Hrh)#ldnLD>X($WXuRegiI)qQjSbUd{}_bk*-9>il4sofWQ3tUGD4@Y!-s5lQf-U z8Q`$8m?()+Befz*k;D|UTo8jxn7vP0KAn%umzsx1HFYbvbuBO`1jZ<`vgOVdMN_pz zl_z#VQIKbfw(cmioXt_>*fs=_%A^oFeBU{a$pJ4xR|?+==2eA@FdmmF*@TF5fu^xI zA|fP}PUjp(3lI{~Gm%1)V$ez@e~^_yeIKBNkSm&JSiOlb$Q8?Fo6fV+QTQ?@p9T*_ z?>yL7B&)P{zPlHzbNA=?vS4C5&-t0xdn`|*!(M(|;CA&fb**XMA0-56y`u81C6Dz$ z-mg=sWNq2Meh4d>$xFfge9h}UA#v86?#Tf?WOue^an4vvYr0qsttXGKdaPG5>ubM! zU3s2g^cY`F?LYOLKH!0SpFQHA{qujxKl-o#b2d~9Vu_Rz>ntvuU;_*?1u`K00yjUT zt1Uhsl9w5IF+w()(9}rp30N`}v0Y7NJ2EpQ1c6iuZ&o_PRSEx}PEQyNONOy!xmaMb z5hEiJVaa4Np>+YFByDrdjT^U;if>h6FyxuSwG9f1$PB~HAufz*=STRa;ppK4=icSk zD}NjB!N@cV65IkAlG;@C0vlVTm~pcIfVckQ-|*nkl0W;iw;`9j{`|A-?QC;(XUNv3 z;hATzu{lwcxhBsB=)9n7lLY&6I%i{Ni}B2H?b$7C81c{k*FWR)gO7OsL4(%`4ipq; zoW0(mQ+XgnYVY~?KY5SA<~CcKV{#3_dLACnSvHpACcU>Oe|bRh=8V7hYuEYpAAXO? zm0dP(Jj3p?P8QmEhZBm8@vDe%N~0b#KZvMeLb>%EnaC+PqM993w;jLy@MGS1^B(s; zYv{Uw7oai&ouU;6={lOYk}-D;F^gmZc83$F1H=}c7bv5UO3<9nDTl)pQ#=TjW?zgB zMBfkss|kFER0YK_f{sKhAjstIXgxkiLR54ijVPbjqJ`Y_Ej zmCB(EbgiYf4pu|jQ7F7fT3tvL5i0H0wUXpUl4TI)OSVRXL{p5B`7%&sg58ahwr;7K zj;e{&O~>x;9=1JYP;SuqiYwa%!NUGB5b;U5)j>*FU^|t!DI!2M9-*{v~?uPR7w-WT5tl+ z`Vr@n=jV@=jVK8kSaFEY0^DWqiuK@o`8;3x$y56={h{J1E4lc*6xb8XD}E`#oIher zgPZ+xg%D?d)a&bBKkt`&GV7A=>Pzds3^ny%p9Zb1Cz7Z6v8*SYb80apH^cKDN}~D- zwAN>8zp);aT{6ByA1~0t!D*y5C{2HOL6lD$+wC#){AJNTPMBXtyKB8Nk zkZ)Y29B;5ZU6K_o)*oP9psfWW_Y8(PQU%)68BSRS<1Ip5x$g;u&T=G*9aUhvj>Tz> z(vcz;D6JBc3CD0aKq$lM>5R|rKj6-tJ4mIt_vu4keCZ{;jkHxDQxctx7>!|h_?X4i zA>|d`e(P;w_6*Ow_-&*PKu(OF7+R!KsBA>074wsK`S9Jp=Er~hAwg+={a3!mjh&Jk zyOw-ogqD)vEaS357n{gINzjrmc0?giLp(D~} z*qG>~u-1!NOt1g4#&_Le{Vt4F;5 z@XzV$h|x*((fdF>U(j_m#b8XSGlZ>^4E$EX^;`GIhl1QJF%0o-+NC+A&lP{9e8AUdraTbS97Q(@?Y&+_@10nIQO`q`~iQbWEmAufs!>Bw- z@|O^FfTbadV{X25h0i{Y+&mPNqa_0mUEId6++0%(>Hh}77>&sV_wPUEPk#I%RSPfg zXmUI*%~c>wM%_d@9NwkT0^aqZ;Xeh%~D)k>v=LchsoBjvwvLfe_XB}*3W-Y+Wx%H zvYt57X8`Ems~*}4k)~cDxmC6%V`0{_GR_`mbQb2oVLxo0Wz3Ca|> z<^UlI+S+mdqfgn~y+W~blP-9o>yX)mX6gZ zIa^!XXcNgs6CU3`#@Z7GgX{e4um76eTd!es4rrvF5Mz~e&+vTy{*Sr;)?Xu=n!oqk z&w*_**$ABt@U}zC0(=KuVEX8gyy@7!^$gX#Mnz4T4XC>o85N_^Hr2c(&#zF=KSP+7 z%9lu0A+5%D0x}1vB=^61pQBQU;Lu7Sqo?aE*Kcg|truQkppN*Xzj%j5mxL*UZIj@t zHJo;V>HQjEBf<p)fkfc}<8pv2IcCK%B||03ZNKL_t)sV?IAYX~Af}K)ioIh=R;W zCYhva9CZlPZNp@DkMDi^yL|K20arG21}5X$vsVdih4hy4>azrE`Jeu~6Apj&1+Tq$ z2Ui_3ts_cR%uWwLDkfVaI_oG3g%dT}1hj_Wk~&2Q5WT@UkBbYAXMw|`n&T%2)Gjb< zEY>H;%7{QN1u9CU20@@O5(!x08RweqL6KtixFi%?OoSxd-s4X{e!$nSdv5L4Ox=P- zHc4}K0=%zLQlVsqP>$)eurXH5<^|4KZr$EwIPUoT zgUExEB?k>OU5@iD+NWJYXFZ)w!M5uhTItkG7cx!rN|4&HtXpDm$;3vahK=_DWem1$ zm@gt;1Uwq&0!1NFQc!gPB?NNSr%2psMGz4mLXtI>lA#dEgI~Xf^xTWmDZQ4H;2Z+GNLP(#y^7w? zJW1WJ^uJcs$r*Et2qDQGh|p_w^)|Qt`OlM4I!{PRQ}n$Sjg%4R{F$_SpRD?8z3e%1 z85X--Aze-y7ZOqw=kG`8p~Z_;N}nKlXf2AE1p9;{M2|v1a0nSG%aYS+&F}wp_$b3Rkj9JuA z5M8A4Et&2>49Uv@&GHMB$hdj?4n8&*WzbR)q(Q2Z#tXFCK#G!bpb^1SpUfC$BVyDH ziVO}yyKuN#H8$bJ;dk0IDh+HWmB1$@!;=#g29!)K?7NS%LrEpG?XQ}_I^J#~jp77ju$!XPqqUsV!4Z(2E&XTLl5jkggU51F(`yrQmAnWnCx2u(_>PDRH&YxZ-LE6Em z^{msD(@A^x!QR2}X@ZJh)+D>wC;2M4ZT%dVrDw$ITGl09!b+i~KVIsUw%aP9`QFQc?hp97itFy2Gg zc6{*W+hnFAFOqK7@yQWUOp&q$Cm0L{_{7AZY8o<~(aq;Hvkp&&9!2D^q#O=eE>FCOBF1lm)T&ovpB1aR~4a@)Qgr+KKPWEzy1>A>pNWC zov?q{;DSyDNF;r&zx}tq$>yjfGgmNQ-=mI8GM_{AxW<#0nl?Iq?LYc1aehi&Yhq#O zs)}WRyB|K{$>U?*``|r(?{|NT7oQs;sZg1svx=?pCYc;i3^O_hS}Ih~xVi%mKYrtv zoYtOs8_41fp5Gbqp56t+%=KLgQ5T#@r0zDL4y3fO@?3_I(aHdpJB9Rpd*tq z!-!-!6(Tri@tI^OGo(yb4__^mDzMyXfJZK3K&ww$bW)ArgGGHeuZd?DZ;P9ZpHX(51eMKW{>>2gJ)vqstBE z%fWH||GpPQ>*1j@*kygX`pZ%!{m(C3&0efhcxnKD+M_2RoU^ai2M5pBd+~L8NK34$ zkMlW@uj<8I{#`FwvQCk{T#fWzA;y>s(AU$17M*h!l9`h7EKOQ#@j`LBX!tij`b&QB z&1bp)@kcy(GQ|`d)V4*-jO#b9qm-wur+}k#IhhzCgv7drL0%F?hVyBL$%l?+`Gh#>O6XwIpgo6D8MQdKKp!gJOV|B~r`P@MBE#Av!~;0wD`#^M>P@XJ_Il%N(8U zVDM-bI9q}2QjpLsUAv@dYG%{O$xINllB;_glto}T6yz!+3d57xDY=LncGdw#<3{nP;e~fc@t)Zr`{; zQ3$lUhA17{gXm5XPSDy!C=%4T#xW`isu(%08a9U|FI^k({4=}Bx5P!RjS30@WSV&s zIi0p?*jYygg<@a?84~FujT2N>Qgt0NS1FN5LG4rWi9)Vyg>wisMhmoZ35rq)T~I`Z zMZrKua2YBlJMYs!4{JnUdtWrfvc*Y9^zM7#vL( zG0LOR3^y_cV}~gk3>n>0^Zl0#Y+ZBIRUE3Ec^l8h<7V^u*&nxafg(>DKryD$$-6Z8 z7n@|*W3qxSc35jc2(nDmx{kij-LsLBYfhRp7Odp4S92SP6=P_XOQcjR<_#evds`ti zy=!3#W-A8p*#z{(V0pHqj$d}yTMvp~^?m=i+#Bf66VgQxar9Cv7Xx*F(Oh`#rzMNN zqF4{0>&mqMe=Mkruah9I9tJz_sjN5H#ijMEg0}i{lYM>tmy_D%>ZO1FdBt;y=De!- z)~DZNJpbHDDOY`@e(q@nuW3!Rjyxani+3OJ#e+G`JXOd+73^Jok>S9T=LQ!xs23h( z8l()=UB|}GHcCZ;TaarBE>JC(=v>n_bJ|Lx)QIKs6y?Xn*ij5NKr6aVGAt%6XNMHU zf_$*SscR9U09ladC8sARWZ8f+^Nhwrs`&!FF-FM(+e-3cm&l0u>$};}v-~R=_co-8* z?Zc`{ya?mQ81b&)!GmM$!RP3WEna(Rk1Klv4(=b4>x`xanHh>vN!Kk2zN46I@!9(y z^5V^J(H`wH(vii(F)z3pD`sBvr|-`B^{;IbrjK~|K$6J>=U(47xGt%3XcC`gFat0=%bBE9w zwhIJ6WjRgV^4bdpwHM49$-~3Q{>hSA9qFW@X%n6&r6xL$%rxFwLU60`{2WJ1l!A;L zVw#B6O0JAiBnYs?RioPxoJpEV1cDE%MxnsPaKW&q4^&5UOH`}s$M@3Qm&6fQ*-1#T z5@bAwc!KX|M9#wA8RN%VcNTCj2kkyUt_RBX0Q{vjT!^$`1<6Sw5-HD<+xoelw$o3) z?>*D|3g&6a<6G=Sy8EHvOcN4o(L{m*J`a-1DF@tUzZceWto}v za|ow7OB*t$uLNjxgn6oZT+ zR}|$Hj-NbYxj02<1wsTGXBmw)uyKR3D9H*zhz;ey(A39_H%o{C>!#%82gU~rT_lTHr=Nqpxy0XpPyZ7n3mRsMnOpovJv!A}rcfR&2i$zPO zw@`T?(lICp#8BgdCKpSV^9B1;&sH%Yih?T4(SF9&o3}7ZLuT=Hi7AKNd2!6^&u;Mk z<71p`QpF#86yRK8Kx<9w;qJpZb~(j0Q)I3gZY00?;B@k=@d9h7gaV{qQs4b08&}6j zx6cRv{*QR=2Vch@ol*@Vlj~!gj~KnAoJ^?dU8G$yFcU;PgwPRCv`a@(6u=2~TH%^w zlpaG=h|VKvC`y4c8IuC$i@@jm2mI`phy32JUggGh!=jc6mXtE}F;vc?ZK*p)42CWw z<#B<4FF-2hokgL+2V8VuRPvIE;9^XY zR0>oO$=GVM6#w}84s47R$1}&gl8nln##zRr0l5w=mX@jsB zIxmqyk?S%I>M1x`G?4aMX{r)dETR;Q`m(*>1^2CpJ^{6ErT7#B5d|?dkCTT;f|1sf z#(HpFhsM$_xZg#sYc*YjXP(ABTL1pb$Mr#bEts!@xD-hWfBiMqtB=0ve$M>rgXqQM zd)ViEGXFA0C0BeeL7IKJ$kIx*OnLTCO7T?43Cl(_<7;Wk*(&g<5yB&7SQ#`4L^4zz+#%L($suS9Fiq1eq0U}K`-~FuO^T$hG ze*PvKd%KjAA+qh5@6V`?XLRimv9(y&a#~q_^3Fp(I;e>*d7=xcR`mJ)?`dVs7Ane2 zVwXouXP#Ll`Po|^(9}M8i698h^BX^WiL09<;=G}1YKrG?U?1P-;QbQ@qbYCv+k4!6 zB6t=PM^OLT%ae)jc)ejD~P+J7+Y| zESiQObdrwAAb3X%ekB_f5Hh5`n|EX)Kuq$JMj5mg6e?0=prl8mlaz?GWF}BZhZGJ= z#0rUX0TIEAq|hO89JL1JB44{b=HcNIVvDyUbi!?C68kV@lYL5z~z1oocEc;WU2O&d8~M4n7NkB(~Qbzl}FE(%mGX?=t1GKd+osyAgx zS}tu@p#*eRK}dmA$%`Mto(&X9a?0yX-w;w}cQNgrBR)CFxfEhja7+oJ7hhaO(hEJ1 z%aF_Zrhh$A{7p^a%Y70!_jgavl^2sq?8E=6X}qEs_vc%GTyCBVE=}TJSo>FLXr+0V zxT1LX)z}3&_A|lt{(0`~-0O{gAq3Xi3$JCZy|9M$b+1=cm)E)8knfYyc_nhWQ6JA3 zS*huMZr|JYSzG`k6659Fcfa89`=@MYBTTVLReJ_`fmC2Sm)r=Q2bH193AU;@-9Mz< z+(LF8i$%-nqGecA#Hr=VcER=Q8x+@`B}38FQ`)vA%QH-#BeiB(E!o-_GTs`qoY!cn z7;lYfyO!V_M2o zL+2Uo{0Xj}v6xqg%`4nHc^mu2l-QiGG2TUZL8dn7T0@W#oi7p6G3^}p?mgifcWzNt z57@l2K?ojQY%n`HWqK&7moqjt4evad^Yc$;*qG#V;>veDy;m2ZTdxdl7x`Cz^(nbI zKzdK-6O`+mqeGKR!*W{T_5w|a$f2To^Bsn-KF7)Z&)FSs@c1~XhF9~4Y>jU5mp^`& z|Kp$j7#9QCprCeBOjPV_jX3(~0}e&S>0!9zHl`&pXCr&A~kK*4v-+ zhyU(vDwk$ad<1O_A!>g4-Z2}6LZ}=c98K#PXNujCW_zUYLUX!=>C(}92qcuGb7hlR77HQ6=RC1X`P< zGjE+kD#^U+7#5OZIOKHZ$z?}t72ZptQ7r13s*7Z~!CQ+H3WuVxmgrh`H-;FoQWrJJ zt~NI^RTUy2Rm)@~7#g@b$+@+uXuaUUNrOjVM23rFybW~LbGoR>jbyR#Olwc$K$jZp zY}#SFfGQI;H@IFf@jMWv;Ljq#03E{&48d3oQX|~3kXghmtzbUaQ8l0titEnPi5YTQ76}$wTbh2i(41qx_O#o|BCybZ)?SqLCKfzkkC1BJiW1 zzsG;@{Z|-P3) zyr6XuM8pY+U5QLa7wJMrSttg;WTe;|=V($-6yLGAS)vMuY9#YI68AQ6Q7~OPmbK>5 zK}Fqqq|VSXRXN5;d{*MRiXbHqPaLkJmh@w7t-gO3ARTPI_lsPRI9N`q(KC$Y5g zXu_guK|rnpp^iuu+1|)8-r;SIk{Lk-qDUrFTU#KcXLB40QBc*6&IMcyXrqZCXEYS# zdCp=fxc6YmvJM=~CG%F{n#5K}K~LaU6_rr}#0t)eB6Y1+R6)7gi6-NsfI<+ZxB!n_ zRK~p+1lOCw=fRBCZmJJnVePpWhX~gbK!SnN_i{Bak(7tmRdCN6?)}$wne?x!K9WR> zILm_Z()CMJUeeT-BG0M1NQq>S=L~W~+b&SqfJ_Sz9w{AB8BAHA^ngg29Ogm|(t=E$?ou{H z?~t+}hGg}sq(X+8YJR}{i3w=W<0oipXtFV?X0Cft+0oI zVq=GIK6jHc^ZX~T{|*m6d&K_dcX|Ku3DbGS?)8GJ*Pms6QZwGT$s`UvRhvrE4A8sIFD9PO3Rh)ocm6YsYumSG|pjUq;;N!Yf-M|&;PGK;P&m? zW{0HGkpU#z~ z+7d$`_%w(nB5(j@H*T=Iw@na^&8=;`wM-9>s7{w`?(8K^qb$Swz<4~u`kMKC z%4B0>CI9US!eersD63sfF^m{(AP$IuB&!}eR92v~0g1?A(*{LlKp^-wL61S8gigN` z9w9Bht?)i_xc`XO!*J^vgi6L##^glb((Z2Y!gIHfF=9l9^^T$(k(HZ>P+{8>@^ZkP zS6(29A5cwee(~pT^KkzYc6JZgygnqhW1j7| z-VoBRwkRod;Dy`Uy!i5j!-tRf`FmerjKFz8A)s3>m>x{YcWCr>(fA|s0`3dvWk69jPEZc&^$A^6M@PNgi ze8Q8{mbp#ZVVN{^bwh3<9f7*)7({serr>lLxp&mCIox1-EZG?^*}JpH{=+4<5!le+ zMTBV3(Go-iBbXS)*07-KECNAMD#kesb3ra3Q>pT(I?cgp%V;RsEEJ7xaTp4tnAVZ| zmE?;9%klIHi&hX-mOk?$qLjg45Ly$XqqQFABl}CmpM2Evd#?v(Uh?sSWH+3foN{Q$ zghmUPJI~xY8W&MgC6~(xghaT~)_a05bS}_#0i_dDAOwraa=c&BRb@<6z5q%}vO*(b zqVr0r@SR1eEP0$~NmxuqfzguOcxoFtIQ1yu+1g0SqU{{gB@cELplw?k4+KT99m7E~ zGYYCfc#{-+r*o=mHLt2-V=m&(r!YLR{_-U0i4XzVw#D ztE;|np8mLgqW?=x_zV4^)qv*O^Bz7vfZ#E1L8uFY4k(>bmIX~cN2&qYXbXv;t>)|> zJmPCFyvTbWzDN6=uTvHo_2P)K7_c!Jad>dVbUJ5ibDOrclx2xjo*lV~cgIw-6ZB+& zP!bsfxdiDg%XWdua*Q6}31kC}P=?GD2vsB>?A5$ex~zgoovIzBKn+23;5^PR=^Br3 z=N#{!V69-|`W=KECW-oNm^7L)#URg!u1dqWL6Yerv3!I8F=99zBb20wHQF>3gNon$ z&wh)p`c3Zs@+}6{L%QW%M%yE{+YaMBwRf~lng@$vMP%rceE)fng3bl%&N3MeiA_V> zJ|YV>MwcwxiYy;MsQLJpcR9Fs%5VSH-{G0Pj`_h6qiZ#P{QtgzdhiY}6wh(%hCpTo zv+8}s+~KE&Pv5$a+1=&faLWC=`y3s&{Hs5{&&MC%=WyWYC9C~dIT z5rm?xHKS3a)QU$l5MFY1yI?eS{O}tiaz=D6@++^5*eWu9@#c(0TQeL)_C{M6nS=^m z*U~y@Iz!h*ocH7k1}dQQ0udXcvk0%)+>i{)$YdPQQqe9gA08L{+Ye4Tnp?W45He35 zG=bHIAys#|mKY_lAsI`x-m!>*{VMRzXP&R!8uDaTGj9eQ)e&tS!^|=)6;1G1C-7e2 z&`1p?21F_y(Lo5ZTvBF{!CuDU-HN*QW*EGyU;j_A6YF2X1? z#MS|Zw##UPrR@SDsN}2_!FdNO%-jo4y|mbn1YHE@)kH5j-UB*fEkIq~v97a;)_<0c z`Es-Ta!~Gf)9bseYqd;w2I(M z1;V9uJdISaeoxkq?VH~H|NHkN#(1fhan7JhqBKuWUj4OQBn%|-!R6%9v&_=Ovsmqd zIb+$aC%{D;2|;1oifrV`3dL+XC1w+p$#5arlX@vpdB(MyH#j*y;k&=`eS#0<+R!c+ z!~n%;i_Mz@+G@$ehmW~-?K;kRr1lI31=p`$&fia+@Nm3`m zJjZ_gW3xZHYVeq0st3cyCS_cpiwY2^YS>^5l@^(Oc+QlC*cE zAQq%Z)P1SY$kpyUp1+w9j!x!aN=Eq(CwFVw7Pj}cXuQX$z`P5*^TA{0)6d!4yTbL~ zy~SYn1|c4?^gF!uS8roFfiEq78F_Tray*SZc{t_0ho57+l9Ty@X3?^+lFlZf!lBk= zMk9TT6)jc>oXj|^lJAQUlCmrr7M{*6Sh$Xv$a!H`^ZK(BwhGU)n+3~e&Z7gvhwsk$ z{_8h*?Ii=UY_M76+3pZX0itFpR%xrpEGPpcT z661Ma;WEW`9S&OWTdZI2<@>PyeSd790D9f4{%gO!{`6 zl|IRy!)864wUTO)ebp$=l1F;pYFdAFk|cYR{w-TYTh&OJqeY7dhD<3$^pyDqC(~0R zb0n6@<`7jBZ0u~%ET<$R%*Zewv8)@)VTaLz&Om)UWmXQ@+%e=zVSP)Mmu&BDVV6rN z1>?aMU93?i$zPQD7^MYLr64YKalUR92vI^vl-=N45D62vzDpLZrwGf)I!(v24YUng^DF2DuiiJIw0F6 z>PpVe&A-dZ)_uNpzu=w!`$x==kBBQd4`(Cb5F$cUBxJ-POk^-9xOR1q&7tSPr}r6- z2E=7ek*y}N8Bh)f{LbIK!=2}c1fB84!($#kI%aVF4*UBJ|II)BG5e=A%`&jCEnU!z zq{hk`qdJ0cXdJnbY?T4!B~k=3nbF1xqpW5;ln@oma)8M^M9=YbP85;bJ43E-jTn}J z>)Qp+w{(j+@4mZayfJ39nQ`;^F$YgNymdTtJ@CQ{ipP&Lo*X)~s<~3;j0edwU?(dG zO`vU)uq<69NKbH}wLuXH))T$qvx9~oy>D5zkxW^v_eddE8zTr3OcW@QHeYQBI3E$j zq|kAuAg&n~fe)TE>=k3aenax}Pa?4pv@^$|Q@8+8351L&6=_5ATUx1_qPBw2kz}dW+YK6GA+|iD{30+R>HJ`|BtXYd$KIM&ij6A59gda=1`egT|G|#2tXhR zh-v_&#ehUgAyRfY=;_HXj_|V|{NzXc8U7n&J3ct)jV-88wpYh9M-wt2N)x1dFFy{NfrBFo03 z5tQjypJ=SjljYL?7vm7LdPqic3GMtgm~U!^JFv>|y}K(~t<*-QL;CZv3)O5TN1hi3 z%mFa>HwF!$fwDVP0(Yy9yI;GnA)r2=batBeX`4`#Qk#HojKNyFNdR|WUseI_zV22r zyOJVzE4$tExqF_sKhHsaOAbhT*W~W?*@d=-q@5F$-z1^!IqaM2GECEKuX{>c*lRSe z_=A7=7EwwH3L*;EdFr~xm?HOO$Q}t_Jo=2IdzpC{B9vu;!Xd^{w>9I@9IHlP3}sT> ztd|&Lm`%oLozM!bEpg2=Bo!2;$^*7Zql{)WJ4A`e_luT3x$3?$)1+h}1tdBKjj7BZ z$w4}_OM+iX?q{MvWE%Xhx}8s{Leq(|NPf~$xr_57yR`9 z{eYkS{DR9xi|ZmvMP^l&CszbUN;B6mLGiT*Cw%S9@>&@g3wTNB5SfGqtpr_agf*|f zT;l7Nq9~{iET>0fPR5C|!-95IbH2Eyz9_j~C+5>gr3_DQZ@4;N<7!Xv1(pfMR5%x? z-7UdQSgj(HgNCDn3FERsRKS#qw#iP0h$8^rTaq$FJY7)y>@&|t7abu%RygXNM!8qwZP`W`}g*L7*&6o>l3a@{!P4}hU-J4R*3U|k@u#*9XxS*#qR(h^<3Cru17 zCj|vbYu266t~*9Wfzq(7TTqIkDj=rp1yB_D81W%XJNuLyX6q(k3QP2f;K39nS_wBd zj>|Qy+sxmGJRPo-WI;yQV64MT$6nA=gHr9#MBN6%yUp6?o6~F(K>qi(+W0b!s$n~K z?OgAQDZVJM-rde_z}?l0`tqccSKPx)%U#H4my&!p*?n10W_SB9Vu%f|eOT`KzQ=Ad zc~PRuf9%6$yYJtvMz-&JerD%xU+XSJ30oxrGcNgqAASR+OH^?96fm~Hhe+c*iO93_ z3z}94$r0KcY}7#2%#m>WN&zD^9+iy#OQ%QN}k|4e7iUE!Ol&(t1u# z5BUCX{e6D(``;n@6P`T1rfxeTV2TV~b#3II{r(U6FaDDsQt6Hq43p86sMq}U-#p@a z-6Bfi+m1qcq7(l0zxpeF@wcCGvs!a`-Ep%@xDZLnQx=A!*%*uOgKO^R9E=TbzN|T% zSe`sx@$oG@ZY`g!BCDV{kBKi<4t&FZ_}vHmgKr)2+L_{PR&f3F7Vm_0P8S~OB5TY=foVc1tXmS9Bk}k;@aOM)mR%8`Px1tf(wjInIA5dvdO#A zc?uK32hDBWvaCBan!;M#ApIVEevgX?3SC5E2z0IH^UF1j6SUA{+PXK7g3V-j+y=wl zz%9Mpxi%V+wDI1)+cbYZpbg(seIFz<*MzPANQ@C{?Q_x{!#?Z=z1^nsU0Ut#XTPY= zvKtIv6o7~Q6M<|FKg^OmznxuJ?Cxjpes9<7WH({lbvqp1yPGhJqIj;?b9cYD5Y+Jf z{Pm)$>_yjRfV=Kq$G(-uJ%2_ka8AeD$5*z?TB<}rEtMhcaGLIOs6Ho;Gz=A(4FzDyTIjI=u*PR zfGyyqk#Ia$Ovh7Fidds*>J<_?CS^rvp_-ITCngVe8qK|laC{)VdMKQZ3py`+a;|u? zyyfSgE&1>&^49$^M@jM7`GUtciJR8*_*!`UBruzoOiG2qQLolq-+0a!7JNrxBa@k? zECYot`QlmRFF&nme8@zhVc{xwo@<@|uKTYP0wM|L11=;&(j*l*t_)LcSf<2v2RAFn z?OJ09`Q9)Uo%j8mxdO>DIaac{m7bRBN3WcCMiqSe#B*CKj5c{P(rC0YqyQ-ej8z!b zOM)nkpm8B)J4YpW*J4dc=UkRekDyf~MURgGNxc+7%7gDo!1;(Zmd<%dJ%kgpjU%Gy zT+F6NAuEtor4U?4=L$Z3y25z{DWdulCThC^jv@7Q&i!Wa5ZDBTRw_dPFQ_zj8@$$< z-nLeNeaI*QDebSs5y5#s^ffn9EBj2X=Y#0op2pqa_q-_K7UtPaK-=wZ8|lKfY8pOg z-#w8#0e62NUiA0f)%}YS!)|3XKzuJsRJ(nn?F9Z%+3iD$UskCNy^g_aVz=J}TUc=y zY82VUFZ0*I@r2*|{@WlGm8n213B~30Eo~42f>CfVHH1)8jVoqViB+DEJYCHDJ}T!Z zs=VOp&uvweXsPll-gi``#u$xgi&lr|s-zfC(Po15>JTX<=#NRX0X!)Mh=v$6V9l2;P7gl%61}KwGmhM-y3r=q&C>L?mLgCxsQ-7?e6d+j&pL%vQM0dr}lc1v-}n z6pLblDy#lnJDT+p*ZcdR1e79%gb{^^1+hJp5-DuK!Cdp}zy1b4{6|0Jz4v|x=PP_P zEU%xU#PICdXSnW$qoX;KvfyCqskGr&ADz>7u&P_4%6{XLB09Dxtq2Iy(lXPzDl*n` zZ>%{zoH8Gk=$M57o4Vq5*#R9o1cHM^;w!J7asN&YnvBGcw37kus7p zP}K*hNr{ksVe@3U3%x6+L`H?8umx95%Q{30vVYQAJlW|q0gu)jpLrq?la- z%R)fge&|LM(TFMtor9zaq8L?qQr#+*HG9ZCngldW9&oY7P*_V@ShPwsuHfNSN884n zK+GTxIKVjriwSybt<{x9ljXCO z(Y^2cuu6E|>h{Z4{F@|q2a4H$-N>;z*Kqp~DK2dYA=5xN>9cAS%h$||}NJrUje;XQHA)8->IPJ}k4*8hPmQ$ro2Vd0dmkQ;mRRd&;xQ z$sqMkpW32rK@^oC3=CRlHkvgR5*kwSXfw(S&6Mz=MVqY4mdMxEsu3i`q?+)?+pqA$ z-+hmN^3T49oz3{0U#$2S|I?rIZ~ycsEUs@++Hrg|=HBs`4?lgzVzs0R5rRhhz(^@d zEm)(el44{usc;-kg>Sw6GDgGVX2I=hO-u@hXXOH`)`K!=Exi2FnD2e(jDPseL*9OH zk8u%*$#HSpP*_2kK$|*T?`M)y!sx_g1gFyxqlxDJ$&A^(G1r}Nu~7HZC9?UZ-A2&MOkF%U}v)YZl6L#div=GTiHNEcQ4!! z=n&}#_wvkw)n+dU?gsELd+jolhTs44grheN``zFBGFWWb{{A-a4jQWG_ILNs-F>+0 z#qpvlecc@^r*3U7$?k2Qtl7-!g`Q1f=*7;ryJC)Ic`$zoV zd+*XxaelF+QxmRlR~Vf=8)DONG#zs=m&{lS&~z;!7TA$R6&=dO+#IGsr!`hQUDFa$ zU^ctQXr%D2#*R*KF|)grHlS^;Jje}cqjPnVlAt8^Q0Y)T2qCt3x1wv-B=0fW(yUuT zY_mGHHW;mQP*=Hn(Q1?zh-QTJ-XNu&GMOI{Q($#-g^>o%}(k%g-%jpn$r_!PNm1Jm({tMjK^ zEgPCnxVmkq9jseV+aH%wP-vS8K5e93)`WJ!;Y{<|%Lm*)8#5hMT;H^~WNCuneZuGh zqQWQ;ZMj_v=bzq^>crW-11`=l@g1Nd%C9h{G=Fy_~5a}@5F_>h(Ny4dwC`3wcqkAoJL`l1`)a# z$r6={d*d-LRhr`wOp3^~RE!EZs)Sc(V_upS+@BiGO2yMQi_uyo=$B6HkKR0ul*aJ> zLq}A(Nj)kJ)(jZGLa99Itq|H4qGWg^_bVJob_^?Y9yZAhYy}cYN}-crQAC|6tjZ)y zi4YxHY3jxkd}d-f7a5Jm+%8*UG8xZ9D6OHgg4ROo3LY-jxR}kQM5)b;fic63gxah| zw>ZTR;4*v47@b||UJ&GV1H4j(!ID-6JoOG_v+;V*K3e)K+qO;t8Q6`FFLWl{mCDs&(7{nBLid-^g zZF;(R7PV|~uFJd|ol${iwaP_E0GEU$23t-sg~Hm3!j7|iiBkP>wmI5Mi&fK{w1~vm zQcVlA&dvYD^;2#ypJKE{8-qjx!O^)jUArcR4pPien=ybx@)8&4JY`Yk1z|ZsD8N{f z*4ainf;L5Va+HXQA>YfXKr4qaj+Y-C@q_PulOO!{Z)5C?pa1+bPLJ;~pH47l#QVSc z3{hDWHR&v9*mRDIwq+d?mXez;@nr4rL8zOAu_a0wLQu@6hWkeq_vZ!oW{LT@;MO^= zSCQo{tgZv~b%(DTl6Yb=bX{H)mQ~jIYuXl57!-+WtZ18SR!zevpI*?mz5IDhh!IwG zf&|ACp;9oNYQ}}(XkPI0vE@Vw*Nx(@KW}-uw*22;toYd%Ex&x&^3j#%i-pIU0xx5J z@%a)Tx2AC^rA^Oucm_j^xox0x<2wxY&;8=e#Yjk5LvUJX&PIy+6V34`F)t&>6UD*E zQdz~^2!dl$2)a{Drd{5z3n_ff?v6+$v3FqBj5ZXd9`FFL>fyRfB zn~%L$`H+C5r;UoSW}?;1caK9qV)1Cf$Z{W^L&X25E%UYw)rTkaj5>@74>3M5LBNcQ0g3a=EA5uyz1E}O;0 z(4ozwf6jBSuxA^ittACTmSSm%(x9Tvuvv(d%JP+WXT1C0{AYaj;Sc!bU;P z<1BL@W290L9K--(N=S;Pb2!srvVS&6iPj149f|BaRLYe0s=)_gIyM|07mQNPSar-s z2cTPOr|6pTb5{ce(Hnn)^_@lqRVd=(wHJoEoQ(I~;l$~(@-k87t-pl;- zgNKA*5%FZLzkE;Ie&N>*fv#VKxsYQ_c3sU6O6;SbQ3fGUs>neZIUN~}3&pG~m=%Ia z0hd6hM6wW*Vr_&6s^!oqzNj7g>>&NGQPjA9j34d0b?LWA;tV4#1u#|W6^EjR5oQnjA7I0@h;Q(5CNU3j;S9o>^z80 z80mwt2(1^MUO854A@qT;G`3%@WhXYs6S%1d)RVBuz=^bxDK};-!nX~i+n~PZ{~e{T zBr+jDNRV~{BikxruuaXqk8Nb%1ava3c2hUpDNbHol?>*z~`~uhZbWUyZ_N_%p zB;m2vV2Tn%vdyjO8|=y=l40Q(TdWcC96?s+K0H3axiyy;H-sdVqY0N8T48m>6p9c$vq?dz^1b3?AQD-2 zo)qDglM!z`fM(S(KS~sZrma2a7i&^V++5aNJZ(9DQnR{s+}^DC@Rv{d_~VWzR~@R% zY`t-1kXTcdidW9&Jbb()iNexSw~?hwNKxW3eDc`wvrjt~oyJxL&NUzkJC2-<$Gr0L zg#YqC|2ju;&8N>IfARh;gV^hEA6v=sD5bRZyHP_AFb9|%kMmb12W6j_u@TN@mZOnk zY)rNb2bvVAU7(5C;Z=-c>c^CrGr7!%l>xchd4?u-+CsEcUe+hlu(l!<639NjPJ+eLvYx_&^d=rLP(0%K~d&_ z8B(^TO+k~T;T^H_`2o;^?q@qv2>l3t9~5PPvHAd(hM<%O&hD;=hd{dfDhi8MC9Bms zS1^4x-@q^ItG?dFpNA#E<3B&wX_SZZ3ifaD&Q_lYQKTKTk+gIf4kG`yN&MiQYMx18KNV09Dd z8jm$2%5scy9jluK$0wG;%%M`K^;1gGBr~S04B9FnQ{uH~NP!p~DS3#3wWG}2_igSW zu%cUa#71LOq`q~0_UI8m|K;br^X@koO~zH;#SKS?2aHC!r;;S~0b39$APx3R z8Cp@MK%0^nJ#Du_sf0ELBZhm&uQQ&&a&^Jer%ySU&bW7cjPntn0s&8wF}AS8P!p42 zOw}W-We%K$#rs5xD$5S_J<22wjNakJp~-jq(Yy*+^I#GA^JLIGm3t$k#m(8PCSV z&{4Mzg5YXU9lUWi!Bz!pzh*qL)LqB2$$gMe2Ucz5i%UoRB2ae%%3wztw|2Nr^W?h2 zd&j+#g2*{*z>J_QCcWqVk|wVC>M#Bx^AagtuqHC?V2-5)=>%G5n_kdhL93MWK>xMm*+!@3T9-4K7T4VbI<-VEYT?d~cyEq?je+ zwHA~yC}l_?3$YE`xjURUtmeJT7bPd{URc+7NmfYJpbo)~@h zvo-}jc!WUk5#0~QYO9$P1($;&2T`2qB?OB>0?bbOD4qt23lTa-J?Ovk8_R5n{mF1ELCuaU9JY zzdk{NaD}_xR~w{uTe@zx*+ueD-u}UPku4zwIJzi1^SjEk`7vP#NNBT2C7k zq6`nO0*{`wynQCT^QNU;7udPx-8Wxjxo-I4an0X+aLb~DAcnCS;dO&^Ez3oV=mPJ3 zR;@LLi`z9WB%0DNDhyATHS0Djo%^l>$*!%_QKYi)?kmT3+7;CP+ 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�JiFZRlEHD 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

Ss0J8G>r>VaDT8TKEMvdj#?nuPsJ*AR= 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 UwQlh-j6tBdOa~TGZTa+u;X?Ph4vm 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%0DSA6Fj2$#JO{}r!J!s9e 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 mF~B|yz<2wY @@ -117,7 +129,8 @@ picture gallery with the following shortcode named `gallery.html`: {% endfor %} ``` -As you can notice, we didn't specify an `op` argument, which means it'll default to `"fill"`. Similarly, the JPEG quality will default to `75`. +As you can notice, we didn't specify an `op` argument, which means it'll default to `"fill"`. Similarly, the format will default to +`"auto"` (choosing PNG or JPEG as appropriate) and the JPEG quality will default to `75`. To call it from a markdown file, simply do: @@ -130,5 +143,5 @@ Here is the result: {{ gallery() }} - Image attribution: example-01: Willi Heidelbach, example-02: Daniel Ullrich, others: public domain. + Image attribution: Public domain, except: _06-example.jpg_: Willi Heidelbach, _07-example.jpg_: Daniel Ullrich. diff --git a/docs/static/processed_images/0478482c742970ac00.jpg b/docs/static/processed_images/0478482c742970ac00.jpg deleted file mode 100644 index 0096f3ee5d6e4a3305ee396a3354f6d13ffdfecb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4615 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 KmXiiH^Y$Mr4O(6R diff --git a/docs/static/processed_images/1794115ed20fc20b00.jpg b/docs/static/processed_images/1794115ed20fc20b00.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f9d239c3ea2be295913f76c728058fbf30c70cb1 GIT binary patch literal 18362 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 QJOBUy07*qoM6N<$g6aOog8%>k literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/2b6a3e5a28bab1f100.jpg b/docs/static/processed_images/2b6a3e5a28bab1f100.jpg deleted file mode 100644 index 30e1fdbc40bc34b9033c5b84e2432410659aa40b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5522 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≪-s>PQ@0-dGZJ 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 literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/5e399fa94c88057a00.jpg b/docs/static/processed_images/5e399fa94c88057a00.jpg deleted file mode 100644 index 202a9c2fccdaef38fb405add4995a1ddd9e7e893..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12050 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 diff --git a/docs/static/processed_images/60097aeed903cf3b00.png b/docs/static/processed_images/60097aeed903cf3b00.png new file mode 100644 index 0000000000000000000000000000000000000000..ba71c06ce1ba9de85874795e7728519721a9fdb0 GIT binary patch literal 17551 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%0A;5jLWk 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 IM6N<$f=xxmRsaA1 literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/63d5c27341a9885c00.jpg b/docs/static/processed_images/63d5c27341a9885c00.jpg deleted file mode 100644 index 7073c0a7811d2f459a24f142e1e3a730e52ff4e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4495 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 IxA*-&02mSB82|tP diff --git a/docs/static/processed_images/63fe884d13fd318d00.jpg b/docs/static/processed_images/63fe884d13fd318d00.jpg deleted file mode 100644 index 72cc2c590378d4aa180a893ebc76313a0902ee6a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3470 zcmbW3c{tQ>_s8$gd}hO-L1i?S7)x0~6GoQ7H%pt55-qki$ye4ag|W8qwTvt!j3lCx zWh|kn$q-3M(a1Iu^MsHs@l4<6xt`y3{r>v>o^xOK{m*@_bG={ZKG(U=`p5Mluwk#I zjU|8(06>BT)*AsH3&O!^7{UVt9)j`E`X^ukuxK;}jlyCu7$G67FiuJoCnAC)NJxrH z$;!yf$;uFk3M4I61w{=dB2i6$n})UynM{^fr5GFN8fon$>;4V`2?+_|L~zogqSCrs ziCcC5-?q*M@&cVG=x+o6HV6SDQD_WSNLWPRz}f&15DX)bFbai43cSMv_W+4UNo>_I zLrdDZVHAC(bR$#puuA4-O&brrn<4FV_lpt|-n3boAfv3JsgaUr)af&4&v~5p^bZKU6cij18XXfGclFx!8;sPOY3Ui6w{G9fzgKX- zu;@W?c||3ws=B83>5G@_SIwN3*4JI#J@0!zeC+EV9vS70eHs5cG5LLVZvMx@;?nZU zZ!QSH|H2ZS{{s78T!QC-5J)79#Qf%h5J7?sYGJ^5I6!7AK0TX?7_j}*Z zbh4Y7%ucy`oe1@8?hXW9g}ZlZ2;z3a;oaUb%hfs$WYHebfnSlM-_EB{H!03~AKaQI zuT;hqLRF^JA`?zYLHZ1;H1E`H5GtQK!$i0Omxa*pRDw*tmYV@@e1(R#_GzS{_`$GS z7S8t-*k9cD(X8p08mLXt(7f$1ULJM16D@t<_|fEFIYK0R&TDNo_|Oi(XZUX?xsI1a zh0+jCOInw+s;bXdSr?`x>Lk`OMKVnAHC?xy)yGc{&?oDKLCP*CS2tPq@jipIE+dOf z(S7RIb_n4akLW&J8Y(WvY7XBMUI|*Y`B9Wt!2fAo$VKsI(-TyJ!_r{tAXDIPx%>np zOJSltZ^wUno^p|$Pas2kUvz{W9K#oIBjSUWXqbYf2y<3<*NHZUBf51c*Aw*S9x6ME zuS`+gpnb9|r{OCsybjogrzP4nH1vrIB5#0I@nGNNQ}33?bi2h!1>l=Pm0p<8W_|K!L>mfB_FRqiryODVF&rJ2A^ykBQCYUCfm>Hn|CPT;S{gUv;@_hoLMv z+%@yL+n~FA%l-Z^V>MX#Ytpwu2QU3wZ^x;!nrUMVY3v|L8<|SqZ>}Gg8`dg8^=I;h zXxV~2Elj%#-O-!+iCui2dwR)ATf}3Q=7f=1v;A~dU{j`rYAO%>mMBQ+&wVTi_3>Wn@!JSU7eBm&$FL54nVIMPk&7nmZPja&x zk{ZD2b#TgaQU6leNw(YhV80-`VJkrwjqT_>BP*leVfi&CJ94a{_^a^-i2v@WfozM)@*!?9{M8dn-@n=pC z)Of*Jxo20yuGp5c**>Q5jfu!F|AYdRBkrUk%`PW<+RNJFP(4F32;l{L;9feGV2Up-*^W8I3q^ZfHl8Vt^y zP(HzvvaYRcU5~Ew-3>6*@)s!b=@1@1)oppRp}_h<*{j z0-#-w)6i*NZqcQOZ1_}sy?5Ije$u28+S3z5`eBsl0gD_zaR5I`4_Pfj{8cKM96CbZ zrRj^-)wSVBK`c0?pPhRQ49@&&=y_*r{E(hzs&Q_rY-M4DuIn|eMV1XIOn;Ym!(n^t zVwHdAZ7?5yVKF#vXBsN*;&b}UL4(rnTxNv3J zl+LGa)MBZJ*}tf&cDHLV7m6H;GUUq^8*5xnQ%*Q?$-RN2yKTDG30bL^a; z(-d2U6~9GJ@wb?^JqZH-R2dm#Ub-Et;N_XS2GGP0MFK z)vY1&S-@@bQ0B>hJZBZ0cWOGP4QwVBi(tiGov`}@pGtD8`=7bo33-?LVNw(Xm|%P4 z_%`YNN878W>Eb6Vp$e0;=UjCnISs&#+q|DXO7DSUOP@%Zi-o(}4pRvW@L97VLB8|a zk})%h9*D_g1=O0|2Qu`2$#CuSWi#G><=J~W*7XN)kNbW zc-IZB0^{W@FTL+6oW-(r@PR43Cfyx#Jt)HG7-i~CrI+mW3UfuNl)>MTkvCaBW-zNtI6 zH3A+Dqgnc3ZkRN7xO$$6`*@`Nq4lZ<;*)3R#P`wNW9on9-=U$Er}BeBb!XGA{>)Z` z&o!>pbOy%7jhHQLp+C?%h>&}mXwbI1?>R}uy333$A=oCT z;9sFMlxE;ij$?n<7m67v`_Ua5M*UaO2ebTmohP#XtxRk_CiTnkQ%0B?Y>qt=A2MC- z^CGoTg{~3r(YrAu7pBlm7CSr9Q)wf$rz=ve>f6`O_Ecvk8?oT2br1_Kt++Shp+A4x zpOWNLHzO6eR$IJgEpRjpJbGZ;a6RJ-!LN`)7{xpS0Z&nnk`_c$Un+9+GZ=#0n?0QP zu-W%O5H6AzOYr5t0wL%+$yWifab`pr(5@hvWcQh_+2>+R54#~j6Ot>6t%QdZKbhRRKpsOvK|> z+O=Q*+z9b}-+)k)tROGGhVQg;WRsvd`~6^v$eQx-=@xSo?*qU`X8e=)d@hUpkW-=+ z>N+|*LEU_X5+NlgCvLbYneiZcaSu3N*($dEaz@_{e{YXPz8g0Kmunu~;)*Iv>e4&%iXq@ShAbMAC=g-4P z8tRr)4)$~c()>=5X}}LAbn!$}?dxfxUYG}z9)uTl@8fBln$xBlN3=4@9K%1s{{~P!TvHvX+O9m>glPchJoFvXKg%HNByCt7q3<@2 zEq<8q^;L?k9n7JO&?(hdS`(k|1zzkYN0i_vOjMk;lv}~jPZ>~OU3FJdIu|y&QYff6 z9P4?MR9!;r?CTn5QDAj3$U7@#kY}JYX6ylOPi<3jRfbh#n4I)uk?2c$r;->Ccc~%OdAA@WocU{JUd~IMBvmi>d-wakcdz=T zx&`#S+&tX?K>-l@1?n=;*MK7E#}Iu$^$|=TQNM=ypuu9{ET#sI<7~EurZ!hcTT4sZ zc$|SQ*JPrZsmVkh&)jN;wfSUQOCFCu%f{BuULX*dS&LkR4&oV(0*4=qAZ#{UTT9zW zN5{y)f@k6Ie;(?GU`EHuME*74KL>(h3?>WLU~6j8Hx%muieMPZz?e)1gT8wY{W~!9 znd2<%=duizti>mXaUBxU&S+T9E4(+}?|HwKa=Nzm-7VKH4?Mo8 z`bKHK)v;Qtblx{*!GTBDH|4Y%m)p(uJ#_1H*KEI6uL}%k1?_!siT`m>btXZX>2z|Z z4zYM(-BcVn(x4dT3+kq#FMs;;l5-iyR-Kj`L+n6xeX8lgTLTYKaT4f zPsCR5za78fN++uHQ$xxPe8}fTi|I>K6?w0r_~y>T*N-oJ7{7D!>ZH3FWcjHRK^+jR zh8Kjsyn1Fy44ig&no!o22^l#jr+qCO;bT-kb?>grKi2OP2@@I=AD+T=;DTupa)8}R zn$(jJBfeP&_bL@v?- z(=86&*#`9i^_ylnJ!3H{ZMmO0v1S28M9is*+=heF5VHt9FuuSlzJ2ETGTt}`_fS6C zwxmB$7B=LEO6F1Rq+U>ZwRJIw^DJH10;FbeiRSA!b7HDsgb6!@Jp>3q-a{|}I}bCW zC~YiFRtGJ0aI>2U#?``h(o{$R?-PNW4@d*!>7 zE^qCJ4ck|G-zr?_>9>B`^6L4?EK_CkVdQlC-wVzXAKR4=Q|)Q+Gq=->D2A!g?WEnI4>1yi zjENvv_JmeWl?2UFQJC12kCZ8}gfA2mcj-hTo@S(PKIhA;(o{<4 zF(B=v?t4N**i%DJAUS*tldIthiO8CU=un>muOpGrq`4h9tN^#!60}36f-`wYS;~D< zSo-_%yBqdrsA1sQ3Q62KHROBi&Ym~_Xb9P_WJr(!?3n9*aDKwM5ti6PXl`629eL#t zR!f`5)wA8YQU11w<&puBIK9&bxo+nq8--j}N>hpphmW%SVuE*qCod?->>`C(oa{B} zM3*Wg_{w*ANg>G{=c+u0=t#Gi@S%&qmk{hO0$NGk^AI!IGIn#!-+fyg3Y2O+_N@2CT z$sH+zSi}{<%*Sk##o)V%d!pf|-^^CD#KvU8$CmxuT4ekReJ-D3Gr=Sep?!s(x+MWn zCNx#S&MpGo8#56ClK?joKwpyt{bCYE;FcFDlth~(tnH;5H~U9F>=`-xpj$MSfwWx- zZyMW4%xk&o9IsF43^*xZLzBZKSt~j5lr`6CkU68;T#ES#Z?N zc&`e-%ST_(-j3KOfnzyXD2st#4iSTuUf?~(g>zQ}z~@T&GIgxhT96Rut%gQbbEfMp9{f6A5|1P z{)YQ@6;c-!mhr$`=<2Gt+JW6R*wy*U~1q2oME4V8jUBPmjrgEK{E zg$w&yX|YZsSRNF^8b1#fTSujck?c+<>Lg;3Vr9AHd(4*yGu<_npUg%#OF41w)vHfm zO!&2;-m;#wE)lgT<;D~)S z_Jq#-DNinH$M;yZ#KtP{vjIBC)7)-r)Xk)0<#3EDCDm?1-2-ijG|b_b1~16BVhl>)tI2r)jvxzv!>_V(Hmu7 zAm3Y6tYRgs3wsA|u6?_0D(+<_91VdpDO|WRNYGSt z%T)>xZp!D5Bn7QXtS{8(?>!hjM$GCV}>P`DFGni zXgr0fF1qgsBQ69PB*9XG{kO3Icm`<%F5e7WW?l7ywf8zh;C>jP{pOL1i%iPiLmN%F z>8#%cD{6xJ7+3aOO69ExNw7Ig&aDz4R-5B(C5#i8nNyTY9$LTe;hJFaHc@U__jno8 zoJSKJ!fMFLE0x(IN=IkfgWeOUr=gvE&DWGc2_AU4>H|%r-{U?}TIXKZkcOewnczrp z%4jPvpsgS|6FO)|cce*7)2CKNF}ZN6!hw(c8AWNNaLHia&X0tCdIgKa1UG-$yCa%s zroEJ2UP(7ak@i5XK2D?KSHmSw>HYcYPPQ{{Cj zI@L&k=!@nQA?d9P1_VFJ$|FnKLMU;Mxo5-G@r1Wysho>U6Y`Y#;F(r5B*BV4XbnCx zYELyGAbHpiiJ+lc&Ov%V5|f5lr`z1W9&)ovr(6h%vrl^uA9+bD$m3uto6?&0fG1%j zrV(0Mu?mYfoksh1l+guiiWeiOBPZYD_n2CEW}nRm@kE$MYclyLYc9ny^CIky@)0&K z6Os!pU8G2|gKISxabL3UsXVYE_Tk&dCrtz2FXHvbE{FFy*4l5PC=jlov?ecpyr&ag zELKVmkM^m^9=#)3*%{>a*smY>*nF?rBW-8h&2G(4?~`Jemp8IzOBh`hF2f4!ZV|M^ z-K61Wsd@;5%i252!L?SQKobWgsEV5ZcNi(fa*V|_MmO*-Z$>3g0#O~sU}1?BgPnr0 z)ww-YTZ}c6mT!_fGQq7vR4G7=x6!^(T$lJL?mJ^C_PCgD+T2Z0AF6%5a+&%w#n~YV zv#ablQglafCb6n;>*|GL{bv$hj1!6L60Gz+BPLt%7tJy<$-}M}mH1Du{~4HEWW9E< z`&9E#o7dp>>FGYb!YguO|)9gOEp``3R+rq(n7b?EECt7gZ{jmoys##_Nf3@xuL2K!qQrdIk*k1lVHqyP2M9w(7N!5gVhkh!z+ zH03)s>3&x*p8u2HkOZY$%pEHeN9Om_(mLF-qeDErETJ|k=Fz+T@?)W&_b6gDp)(_S z6BkBCZbuNf@GI@7k>;u|6fS>Ha8~=iBMjW6=yD2A%+3ILS`q}VkELyEsRxtJzGHe) zkj0l?Lc^!84r*fKXtB}FmX0_j29DfGXeTF!$)u>^R{`SlE`D~<+RdTc8OmZiQP;My z?HOhADS1I|O$w%sZL{ksMA++%zZU(HZoXHem2@#!STO6v+P0-_XCA47yZrEtmj^cS zlw9&e&SqGupbJ9h$T=5Co`zTx97{x9jijmEQh-cLb@$0Y_;}%u&E>*QF34px3!3aJ z1@K{jVAE%gRs_LLsVDW4_4o)~fgDlgV!D>HQ7P&~X&6NidLB2qWzYUTXd@F*+Md0) zMsDx8z+lymW=oMr^50w|N!!N3aN`SWoaU$kIiH_t^q%!stR<95L?Hct$`5=bqE-NR z-1A{lf$M$JBqspEPnXX0-3-U}(7cI1(MVbu3k7hF*7#opPYph&rO>(ON3Uoh{wzh} z&x7C##W2A)!`iZ3Ok;$PIz1Cn8ch<$l-L1p&ClfxBdw%kZi$iACqjEwV2Mwxgn46I zLFk*XatL{S-;fb1#pXFai>*PoySwJwnNCWAT}wX1wvz^8T_TEN_8g6(a2tjM{mhc0 z%eE@%LvHCudiM?{s3=_37D4FhR8gGWJna_REh@c&G-C$JVN!TB#S8$W^|b6lXG<{O z?_4tETd%kF@Tgn!qX+@X3q5y{;?Qk$1xL1mU!V)4-I3_gp3J)E(fzr}r=wG**)Jq- zZfO0odwQF*L)aZ%tean8f*M_scpCh4rqf+OhR>JXiD;-NZ6EHXr>K(3W#(Gsp+24! zHsqafJ34Z_fUZ`>9Sw~ncYX4XuXLNFV4QLe=ObNvDFvfSiV{A2q~#OA;VD?Zy>#u8 zk2$NMLH-!|YTEpp=^r648N>LfKn;~4{`g^W{6D@Uk%u8?ofF* zO~;%~u3nLdjx7E?y~d&pjTwTA8x9?xRBBW8E;+VvaN}X*S<@hE(al9q|8(4x^M%f0 z=dusjpJS#0uOHot{Y!}Nvu}xaTu8q8m19LDbsH+I)v)>)*?u){V)@RyYXu5z{%ShU01&?4VbX zNlb68e*1l!8f0`6)cGFik+h8Y3d&U-k>r<->w-a!(3QqxTXKb1K!a*wxDx z9X&BxT63CQb4?8;Lw@gJc-HXlJvJ|y69&g-(y-rgTn{G?EeSF;H0dnRWbq3)I!U(Z L!O4da^{f8?Zp(_V literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/70513837257b310c00.jpg b/docs/static/processed_images/70513837257b310c00.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d12333f0cc7ab4794fd5aced0f00f9b069709e3f GIT binary patch literal 12491 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 H_~(BC&j~DR literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/7459e23e962c9d2f00.png b/docs/static/processed_images/7459e23e962c9d2f00.png new file mode 100644 index 0000000000000000000000000000000000000000..c6afbf948aa84b960e1452c82db40e71549c3e9b GIT binary patch literal 30190 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

nVJgp4rP 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 literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/8b446e542d0b692d00.jpg b/docs/static/processed_images/8b446e542d0b692d00.jpg deleted file mode 100644 index 7073c0a7811d2f459a24f142e1e3a730e52ff4e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4495 zcmbW4XH-+oo51HLB%y>Lh%`wk0f|T_QUe5$s#2wcF9-qxkt(4mhW4rmA}EMR2^PQx z(iO0PNRT3-h)R>*L3&Y;&HMlF**#}J?e25Woi8(I?);va`OTfZZ+pXFpP7-V5rAL- zK&%Jsy$8JPAOnQKAzlFEh2Xr_{XEiC{;eP#hfWoM?V-G#3|Im~TH1KUPEx zhZPYO6_-+w5to$1i;5D|56dYj6NyAI8BHAx6_SD~QRSabAPx==G#6Tkn_EalLR3QK z{~UXbK#Vm`1oW=}{}~Vr&W1pu*f}`4SPd%o0T={_!`R>m1REQx^<`E)VBVp8+j@yAN*4_J3DNvWOFVzJ();z>_r8(QvGIw?sp*;7<(1X7^^MJ~?O*?J zK>+@5ELQn%u>ZlunhprY#s+6Y{lf*psH_*x%Z89pM)K)fq1=P^ORB`M^B+siFRkam zt6DD|I2+u_DIi50kzW1>?O$a7JFwXQ7ukP-{Wn)1K*J%{GJ^90Juto^Sg2dagp=AI z7Muc()hX?Spr*?{u(kwCC~0hn#;2)df)`!ipmPL=Ya37X(xeRK)7l^;O{yVOg~7}{ z1z_UMYGtJz9%Q()>1OOYokQY!znj0J2bt%aeG%g^ILXl$LS~zVK@5KA*d91vaVy&c zznusgTGDZaxddp2_m&50jx1=4c+IJD>=zSWC2T%X?-H_3M-IAt@P<`nmriHW(Ok(F zBFuX(-}nY4g5o^?+MvpF!3=m@FAbMOW>=<8-sx-{)4 z&vG73gKtCE6xERko*KM`&!(sf^FIDzOF)D4QJmHwbalQDgcENmxG@XKIA>-v4E!&9W_J5b-2^^h`@ z*OHkM8FM;<(!XY?1MOy2<}z4Y$ie&IixbRy(?%EQ9h*!zxZ*@&PX zb%~Cq=nnU_DHs%Yc3`LBC2SUGL2CdU`$!sxa{Z4iu$;&1qdFrJ6JtKC!vAZP zEI=F-v#sM*J-*x+w8~2}t^{GL$C=KLPIR6|bAosn#NEXD#<|%%`J@k2slq?;1UM42 zf3kzCiza{k#pEI>5&Xz#_RWxleY^ZlvA_qOh7;~BzNl7SL0hzReA#c0drgF}88-qm zsP?IUR-zo0I(c(*eBj^y@a1Xi*VOtP4?dxUcoV2)i86jVTW#7%wW>#*>JM(aTm+Bp z*>Qi`U)NFSr{}}F&($_{dD{}@_h43Cu#c$qxci8JYg@}JAvy;6lc7~m`Ls>GWMQ5@ za5Bj4p0IIrCawZ%36J%99gaKkA^3S4bpg7Qt3=-9hq}U}Po&IiG;Y85DA!2!u%IjCA6LKBe-&f< zd2*8oRXz##>YB(pPt}~Im-g{&FOWr~_+o~?5G z^2!`XY1>Ty3&~6-B1)rrD`VcwVc`Zm_n{$~0DctMwC>Do7u zD~!LK?>|}@PmT|f%;kC4MbkmGnRaO+g|P;Q*ZHBGz-TH1PO?Nw4;js05p)9i&q{vn zU*3_VY5pd)d=GGKqN(9$QoA+iTp9F5mtfXGSGhZ}TehMyR^O49TR2{CVw=e?CR#Rvs`1@fgy>Y{kC=PW>fDc%6_7qX|~5Y z5qk2x_~CQi(CstgJbG#f5G=BoUL<|XF>`xacVTxWYLX`2b10=TQfnwBV*^{-&al?b z0`qm6#Oi3V1kWRrMrwSzcOXjsx93S(S%6V@O<{hWO$0E$Vu&+9BjBzc>-alzR^pao zfu0EHj{hl+F}mWyMAG!pNsbNiSksT-+|X9;P?P6xjnzl?sJIwb!XqbBsodkrpKH+KsQ zOQSToaOxRX$-fj9Hu_-)ve$6&OjPJsflVa_k?;AnL1A-!I@+(o_LU6V-*hxK$Ro<0 zZ7e2f*O--cZGP|1QZM`aXmV8#xf54cTXXp>k+y@opXnyIw2ZDP5U6wTI zJo;OgON`n4@?A@1=N~W=nuKqf=sgCZk*n>vLPWi|=zLg*6ovqkNw^?Wo%CcSU;1WL z7U)$!fi1}h?o{ftcy=^c&+BX_4Cgu5Ez-8dqb@t6DhPM5T{@JV(V&-PcOauH@{Dj2_%PJ|24&L8t zl3!nE*z2e7)LJ6iPdIh1AF;t!c2zI{fwhBz;kLhx+>`j-wDQbA4FAvVA2K?oQ$)y1 zBj=6;WlTKi_K(~sOJq!yad_QTv_oJ>Ht!snuS`CB$kV2RDr*~O+$j|Gi-|Jy7^U{E zy&~Q(${aE}L7F%IDM*SYF;U)y*K9kh10c>)osJja6e&Pxr90qmEc^OTvM^4mbF8-1 z;NY+<;=K;)1qgo2QJEC}w?oOX42Nd6O*&@L&u8Jw5C=^^n^mcc?^2NW@3Ym;&$7s# zqU-R?k#Vli@E?nmf<9j+z@EVISVkns=(X_+Oe3H!gtKf%&3M`W{M|~I&9$qm9=im% z^C{jR3Szr~GTgg6RF>wCS<9qpW)_E~#@t>cz?etG(m5Z1Z=dX^SowD{iPdgwZ2lPM zwhn&-T$dKA`;Su7)KBv!pl~@BD|8;iZnOmU_{?27`xQDz+KO}3VVsXtn*RkC3_Bg; zy9XTKyo>0P?!$w0hQ~(`tYtVbH)?C-|C;iAXmA={@nxM|Zehb|Kv|>z6P+XAXIqA3 zpLcVX#LKuQLl6;NMjDW9qQXCjnSsv&FA`=x0v-%#n373YCxX%|k6l`|-3&xVj32~w z@BCsS=EAG)vq?QqIoSLt=xuq)Z+=RMTF6Hb$(_Bg&+(Jm?!3d(;WaGJI-M=A30*$$ zh{kTGWCO1Rp5NOPI=7B_K$&k%Xy&MtK}rivF5A&puz-jzH>=p1@&f*;ygQbNBPWFLU5j1`4cV$s78v?u(LaUK9|yBlN)HjfhTP1VhDC+{ z3?RPW7|%>yQk^05wv#qh4?0Tgp2Vmf-UB|NI|Nwe>^*T8-SuSWxB=ELgyO9i_05|L zWG)SPukT`)Xm58C!NbrY&wgVrArQ?E6^MP+8iv?*WZ>-*bwEkJrKFji8QAJHZpGoVr7SM5fdk<)V+|gkN z=hO>Be$OU4N*Vkhi!wLhyl*1?z#cFI5no2rdS{u2wX*v7?n;0Yd6(wEoux;JpWj*W zf%$#IzfzI?R5q=iX-`Vs1HE+g@5;0<)-aS<6fXWE9b*?kHL*BZJwwK)Kjk7ou1OCIRI{1L_KJpv{?-*c*OdcugBChIunOyACp%IU zkY@#FQBI&W<8=3^;!TG&ohAb8l#I>Irhy8F{pQ00i-J0OEWMZ>F+JMYW+cN_a;E*q z>PKLC*CySnZ&-=3Sh_Yx7CJfd2*Mcqg3y?B-Ajl6EC4A*m`BL25jQv!yV!;QQyZ%k zZS#j8LNsoS7kr|+jW7AYD98SAJ+ZUBEnkjeUF{I>Xyn>#LAa2t53H`cahhh4?M)I} zq9glUcQb+{KV@HJEn=+7R$6`N^rmLS*DYA?F3X;tHIMV9?Ys#_5jOR7PL&_e-(L-W zzupdP_diu4Fkm$KWDCE;7;__@Gj||F`<(f~$=Sv+eu&@Nm~Tqc;|G=iQ@efX9_zNJ IxA*-&02mSB82|tP diff --git a/docs/static/processed_images/a9f5475850972f8500.png b/docs/static/processed_images/a9f5475850972f8500.png new file mode 100644 index 0000000000000000000000000000000000000000..e73e43aace41301933c72d05998b89e65c084fff GIT binary patch literal 29531 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 KMNUMnLSTY~qCiLh literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/ab39b603591b3e3300.jpg b/docs/static/processed_images/ab39b603591b3e3300.jpg deleted file mode 100644 index d52d902b7090546c29a821a9f2274908d96e4f48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9792 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 LqGEEu@x*@sOeK0} diff --git a/docs/static/processed_images/aebd0f00cf9232d000.jpg b/docs/static/processed_images/aebd0f00cf9232d000.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a6fffd1b9e0b097d19fcc2bc9ab77de7f56ec75f GIT binary patch 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 literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/baf5a4139772f2c700.png b/docs/static/processed_images/baf5a4139772f2c700.png new file mode 100644 index 0000000000000000000000000000000000000000..e73e43aace41301933c72d05998b89e65c084fff GIT binary patch literal 29531 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 KMNUMnLSTY~qCiLh literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/d364fb703e1e0b3200.jpg b/docs/static/processed_images/d364fb703e1e0b3200.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1a6ae00ad1a6789da33fb8c0419e7c50835f84ba GIT binary patch literal 11779 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̑{Dc?r=+*QDI*$guubpaTWMICnQ0G;;{;Vo_RW5 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 I%z8BWA5e%NRR910 diff --git a/docs/static/processed_images/e1f961e8b8cb30b500.png b/docs/static/processed_images/e1f961e8b8cb30b500.png new file mode 100644 index 0000000000000000000000000000000000000000..5e3482ae58cd2750fae1b511da51a0306424eb86 GIT binary patch literal 109015 zcmV(zK<2-RP)Cw>8YuNn$&7HORdpNgI+IB#^ZE&R8p;8FVj<~ zLO`R@aP2TP+ubrhznGAbrrVu7m8Z*SJjls9?N$d(lk8<`)tYJA{2Ub3>#1I=rQxt& zvU@4T@Oqw_o-PFMNp8c!y!yN$!Csho%)PwY8maWs+RVX=@$H8Wv` zJX6qHYcV1C!>a-4%C%Z$mt_nSmPe#z z(H#4f@h}Hg^Z)eU|39sGn8t{ln_IBhC`}O2XfTQzTpdkph$fp;7BE~vPQcIm~ivbLCjHLv;4w*n0JsIF8F{MSZ*J|RySHzrgPlRSedliO zk4QH$_7M=|DJmk=!vM}G&Cbo21_#sc^>hEAhltq!2*Z?W+4!1fU^IemKqjQQrR7{} zwabXnPS=~p#Q&q*ZFhjPmRg-QHBaSMtDT0UUh41fmu9__MnC~g?3IEn$2o9FjRfl85qq4WV zok!y#K!#zWb8;AL`U1ejA(>vI%fkuax?cgtP5~I4P+jnXuUPHyC^HDUXM6zbx?LDU zDBe0mfCC2MJsDV~vbwlqtuX$$3-s=x0odaaSEtDj4$xIOaC+vlfE*{H0_$Y*p*C(E zb`Q%qwVPc$1fOJMH)9LhGVS3958jXIAPfSzB*q}od}v?vm3TjeR1b(EyM|!o1u7ZR z1m-OeH2EIxhQN*T%_H801HnIDjPtGDYL*6CYh-T@%2OJR1SBKi2<QuI0b_U;c@scDEDv^0dh2qJ>lLc3VLM z`P9;AC<-$;-hz-L`Y>i5E+7{~W2ypS-TY>g_ZtpUjY1GXIVJP>v~-vbIfvji)(F9n zT}hor!PLMS}37K=1{Ly z9!f0Bjk*cep+SP1DmX}uRwpf;I+>^H0hUq;A>`j|wo|Ry%B^-g?d|U*j)CC20SX2{ zU}Qk%DdfcWR=nebUm&9$xc-EV%Y?Cu_5t>lo0XcUnHW@Qmp3fgL%FIqU?G1}{C zW@grI?vW>e0mME79>5+Mp_PteUyE1)AMv1h1da>|QoToajRA-5!k{@GdK$Zf1k=FA ztI&@1$YVNm!R#1#8l#`f^yZTB;S7~_X-@r36vUa|?Bmnl}O7-mh^tz~__k1}LJ#=3wL|8s6N zIeQzMXH!>f8#*H_8|LgzckCi&$)*JOoL3L>z z05FDoAgCd1cW)bE2;s{t&I3>+VKX4~;8*UwJd_Z0u3Sz0`|{Y$v@Y-?^EYB4x=N8ygHFjI>EmQ)z%9x`7tL zW8{%CHKgw|-EJsD+S3Q1WavoJV}g*K{t1d1lwF_uh}18!Q34NAp$Z`XyD6+hMw{Yl)a^{|2dv3n%uHL=K+f=}*{Uc|XF zHW!Wd;6APGfgY>5D@vdr+vG+*9suDX=3_Z>6E^|g_sB1*F*r6yrZN7{LyAa9qb)U6gH-n(adR)~)bz$enSd zq6l(17<-N;eObiNYG~qkY+gFuSwToZ^_tz}alcQNlgfY_jaF=KwiNn5`;Y!`nVFks z)eZF^0*SWPYVn{#JaTYW`n`kPY<4V0d?IOE3QL&4K*4tPI#N$BMX7c(b=AiT1wKjy zZA_Pg!4Z#7s1!UJ40*r9G9;kye&@~d_8XV;{{Ftm-Nc-#XENe>IwE@$X1@mtLZCwq zfDv&BG>jI|axL~2>&pO>bpmcQ!qGIO^pWnXr?44>Nx;!Vhy=Z}w_Q%&e=c8q_z}t( z&p14x)L(gg_=7f4S!dHue zI8d_#Gc2MB{>Y7Cqli+d-7-Q!mBLw#ky{DP(hxMIJmvs5R@c%CU;BFL?}uS>h=unK zuB4kH9#Ap@&H+TMOKx_huM%llv(d#8lgC!CzfUrvluhjlj{#)sgmnU0$e_B8qoVKN zyZc1vy*qI~Pk9r$jfWd#OHl-3KrG7n0x;sMH5gAAq`fgGBQnxjxU-G{mY`tN`xed} z9dZuN8tZW>>RY;=gd;{uOhIu>wY=Np4bZYZOzX24g90?UBXJ{-YKPdzY~t|bPE7O_ zhHFz1O(eIVo({KYuwG5n{-JM~r->qVoun-YbH-ZNL#gTch*KO{kD}~G7OB~4=0>B5 zKH&vF9=2l^oR{pQAK z{xAOh|I5+h@e`#x*UGcqw#9mA4KjF94V*E-kqbdIDS)mRPk0zqSwPXP$PW-ko<2p0 zJiq3G6^M+_j+!+OCsXC%U_fvPtWW2`_$Yn#H@}-+f9)-`ct7Ug$C^BMe=uP5bxo|6 zCf2~7Mly}9ccvo(?PHvv&=5_cK}2{0rT}^yg=gh3?601im5Ry)%7m3fYTl}~ zas zl_oMXT1dC9Ur*nD?zuA9my$|hZEh6+^dRg|r@efmbW2t*4Upc|G%7m`g7HA-a2RrB z5N?`kE>~-0cy}=JWiooO!(oNfMtlWM_fZlUFp0X*%utZbWbGELe9vIQ*r+aea6N8> zAy@LrML7t*Fih-Gn8`A0vIck&XofHmfkC#QFVSc+{ARn< z7%(?QO5|qDXxO(c9C=SqUg0o!qaQS&eZ{u67dkw3Gx}?$U9rXLA*7Gm_%P*BT zU%jN}ly(MLz>chNdTPb!4ii1e0JO*v9a&PLj!2DyhS6~3wP?ai$2>NH*I0-4DGV8u z*@$4rhcHeer!ea@1b|6uTXW^)i9B=SG~h-ZrPbw_GY?s>qa?!?tbs4Q%4n3<1>x%SMo@F}{LTwt!{E zj`qB`v|O5SJ_Oq^NVsWo4 zfVggBkyDl(C`LsoGO53Yf!*)|Ray+RfKjIU&CA4?mGWDZZ( z5zQr$%N3(T2ArjYFbv*BPF6U9PfL3hPO?N6F(MQDB8GvvcQhH2ZCJ|pmY33t(L9D( zcngYZoT(B*`6d!u-9XVDVqzmhTnjS!0`TWNg0`6BT_t}`)G}P5=qBwY8}7)MfwVP@ zn61EA$O0nB#iQbn@mn$o%VmgHF7{wa0o_kjb|Ga>4#4CtoJE5YP<#ENywlf22H2^ z-ckAWU;Ul@>Wi{Yd3*ByRoj#MAA}qr$?J!j0 z*;-#sx36C>r!PFHA5ga+ifYm_8m1NBJfSrnW6l9UVm{i&ffU20@YCSQl_R2ty`?=- zx5yUY5~J~6=HQ5gLe+U#HwQ*XgT7R_o==@UR~j8%Xp-P*lj9tT>~y+%`AT~Jxvz#k zMH9lKT<}GSZ9TXG268XGX0+}>Q|#yw2I4x6lep&~RXyf5oWvW}wFvnwm%vC{I&v5KDEJ?DQqNv)7-&NKJsZ6Xi2(4H5Zq0@k#gWJ zz?j~<^nQBrThDW-YI+`DalmT>6uFPBDK)FsvK>xCmXTEic??%^&G8^XmJ|B)sJ^+4 zLC@Bq1ZHHtNdUwE8bx!Ald>ZhIE}#!Tdz2STqb%pK~R>Y905g2y9-( z0N$&)%AS~lPTAsUBFZ|GZZzRR6V&A3e$*e7p`MZrVhz~^$6&2Si!RZm_ajYjxfe8& zOGV*PR@%aK&-J)AmAX!5T8_=~fA^REL|Hg-ocCb#gb)HED1#abbeM%z56swHr;Pkz zfokNw&5olMoea$;rb0M84EMl`RP{y~_WQY^?o0Jne)+{W(sN(`wuaas&$b;~A#i7} zr=B|?bA>s=piv}j>O4oiMq7j!BIz;mAOXv0@XBl4#W99xdXT!^CXXI*!g=)MDD@rR z@>-Z>5RId>yfmL{_T1SSF}G&sY%5ywq(`D_bfJg6fpg%!(w$vEA~4G$ z)M!Kx6H?DmQoJFPgl#Wuj7sjX@{V2`PX?4ji17#|$9P0jt|&r#6!4SYXqkEFxdh3n!`in1>;UGM6Up?Q(BS4`gj8eq&K7dD@jN88U zw3QZFltMrn_hM_}k%<68I0)9k#L?(qI*eKpZ*lD&F3Esl12rZpKr=q;dgor~A)K{+ z@|1HCG7CM3GDCMoG&QM{h2X;uq!lSNd80L^c#so45t~}JR%Iy~Sh2M0YF7OcZ`}6Q zJmS_FR>LYOL>)9JrK}Y_2g*s)&R%29BL+k$_6@z_l+%s$l^hsw!@lJnre7 z{3^^(IPTC}<;m>Ugh^>M-rBh>0;2)o@ysT|fSpvNzGK#kSEm^ap4u4bU;D5B?b2Rc zFcL6rOdlBS>m+w{FXa}Nw~59&YU*HXHj9iq7VcQ1mbbPx`2=Ta z&Q5pxT z`onRVMyGU{45!juha&m5(FlNDA4wf3Rx|FP+;?^@r%JDHaI1p7G zNrW1`J_-{x*L=jg=m8YoyGz?5KLwcwuW}uRT_XFD(@iNcbdJr9y4V&~7y7L?U#$$- zu{w`@?;Mw+ktn(_kN}n)tR05a7Hvc)Ye}quM|5PsfaMXOgANk*4NYX`nIVSme4!oW zf<|kSXGOfVtscf~fHm+zb`XX(XvGsH5;EZ831$F~93sjDUC46Lp4D9RSnb}jhI+|P ztzm_bskLM8sG$wQKNrcl1urlP+>v6tBHCKm8uV{qoV~ULo+zVaB#gwPT3kklr^qHb zAX5-4%V^m{ZgX#pmE#T>8CZRghCD*fkYz5zu^C?z{4?A`_?H2g%ZRBAT7BWw8Z?8( z%7EKpz|$IB9F1KBIZX((jryFN63jm$h6v3#*Z?{GTL%pXf}7A$2b3(Lm|x|Y`0Zl`PSzg_OT|M4`xuxy_Y?o?^C z9Vu{3QXB$A9w5*VxdA+dkqH)P2;qcV-H%5oF%;^yI0AA|FIoeMdxj%C9b?L9#-X4bwXjRqMgCG zW>xRTlYvxSbV4m1kSAu)qOnd+ki=Ac!y`v+k9fek?d=%v5gl@jn|h!a;N0CK;_4j{ zc)|@v<1I%_1{@@?#0nz5=?o9pO^a)>xV^nF*O1Vmi)cbaJb31yilddPdoeYoe3Bi3 ze#H~VDrFU5q}w8%^YoVWj+{31E1Y>SgogWYViujCA$V0z*^pC;A!uR{8a7TPlmc`u z1--|Hk_`TF87|WpE=6>*ZMA>!$DmygR`6oHn}H`$H9k?*aV1I!C6mAuB@xFQ*Q)Wp zEEAbnLuuH`(+xct4Od|z#q05~Co`FFCivmdIS#3Q3ns|sum8XQBnzzRdM-Gs0Y=+% zpaH@X=eZ%uUVnti!#w2C#0>)UT@Bi7g;7Ng4{##l>?~sl5W2RvyT`*w&k*#|3vZV% z|JK)mBtEL>Op8*{Z645S5Ku*)vbX37_nJ|ZgmGT5Qwc{SL4=ajH*1s#93-{3w?_eD za;;fpm&6#(gm(-4de=z3^3kUrNDrMmLm|%Tq}C%xOx>BeJlfwaSMF}4>6sIbiKHu{ z?bhBNk4Hh2xU{ew0+4Y8EmX>|35J3gqZjO$aHXJ(IhtlMFCGL7s4N~o6a*+<10i&f zDGKomEIh8n53ej%>tKZLsF@rUIL?wjshv790*w`l;0dI=y6)uk!F!j}%isB~W3!=% z6UR&BF~u3eu}Tf^l!Z(W>8QF+ni-c|2Qa`g4vf^m@gW+jVnJYLTxdX)0TK+-i*@PW zYmP=3AlnEZrg-VuB`Q};JCk=e%qtu$fLjmy9=3Ex1_iVrZleF_imR5W_BO1#z^F|S z92gDbtuRGcKw+d&MCVDg7aVaSz=)1fc3Fp!#|jmu@C%=g8yOR0sSL(_`U-N;DKpb? zHawOmk1$4C#OCydReO<#!H#GmK*?_0N2(xJeQY;kp0P?R8H#!I%^9fIL!Xin4k>DO z3tHB(As9t-t;tJ-G?k&8L%+u%8)9zI$q8T;9}(eUD%Ut}xCa+OLsoIbq4_6`?z0!Q zIDybF9RuP|{a62HDc!E-iD<+NBNwOfLj&#bWLoLN(wCk_?eMP*7$5GpG=%DetxHGo zvokZg)^d1QN7TJ}`$JvDQr>*?QvULnziS-ckPC3sQX#^>SS_A-UN-<7_$O$g3=-)B zwlqSMXG%v|EWzG869WM>=d6;6=3lYH3>JAg<9GtCkl+$oS78e zM3e*|2%5yBBjCP8xN0{7q(H{G;YVXDPZ+Jdml%kIx+%r(hiPVRAlccqPS*$=WBFF|!ftYwh1zrL(0NXF# z(VA!cAa~kz2vLQYg1;axfMq|gj@)w3eAJdH{E!C&X3K#?8i?aX9s!T^Xl;9i1emtl zWMmZ!8)t2|&`eHNwpm550dS&Tw~s~1nWTxELqR7Aqmf=BDTt#?8Hm?p(R4rPv#rHg zEE$VddK=tFg=_mA{;SB3VsFE^yfz->JqHUMl(JFOl8m$DG+z-)~)hO|Khhr@>mjhSc>T}8ZCGu zgaFV;hiXCt@o`R!@p=r8l4dnVIt_+3+i(;$D%%GH*;b2UY|8P?J_A)_RDh0EkB<8J z!3!tLCmw$=VJ8q==H{9_u||d-Qls7}ufBgJUAnQJ&s}(^oH%)!Ba*rT>V#~V6T^rn zYTyt=7He{BB+bjDVSg8(aLVgPlZD#VNq91! z0kW+MSg|%7Mf9$K>tQt{0$;qBRgu?}^)U++SOtA^ytSBRjJFoYY8^UZAOS+rA}-T6 zLu83e#QbXYBDb;!V{?kYiv>wmG@NXQnprk?O%}sp9gYuC!*PHoqclY0h|v;+85D;X zF9NJ^X-%v#cXS`+PG`1?`W}|#%v-fIH$Nl5NOuRyj^QNhC!i*xsO=F-DoCPD^DCO& zhz&x%Uf?$?9T|=#VOXGX-9rH3kPg$q-VUOoF0J;B$2~dA&=BDtUAbs4t^Qd_kK8aNFZT|){jtBm~x9qStIn_)_Veci#44M^oRg_pP~>X0>S!rz)wjO`_&1j*W0@S+BKf2p~FbfLTc$~AL$haiL?H|aE!dL;awf8hG&9pk4_!Q49zL}q=~Wk*KQkkZ3G5JJ zzrV|XZ{(|6nh4Xabne2%(&m5$Qdq*5%1c;6xcGr;YDTB`HLs&ypY-=b+s1MTk%1gK zq-xA?Zf)SInj5I)45ZN%C2HWO%H4SAsDVbKJaCAAWIto@%*_a%;XqHFxi6o-@0@E# zx!rXhhz4n>M$uuqcHJ@3SHD&ccA~@UKc&ha-=|Q*Voud*qV~La+WWfBe4nR;jREHPqF*2JFzAOXpQaL~!*iwgqzrTHkxM^sZtMUCQ*giz_33q-U4DG_1Ff&gJflnPcgNTtED z13MD!y^O{>VCn2zL~X!fjRDI!;+U%1%RsuNhfz;i8qG`Pq$Zo}Fy){9n}4A+=2ut; zBSe5XamFOd?lX3-SzUn?!Y5dQr#NJU7iNfn5?}VFs1_FDx?lh((!P5DqPgfSfAc%9 zrCl9|45N)lYy#K zWEF)e2Jizbj0Jy?4$Pd*WGJ@*9AC~qbxcWOY2`#de&QsroEdQZm}97hBUCo5uiZ-D z{_=BW^X`_z6RJT3H(jM|F^1?w7t5pF8&{=SVR(#;^KnlW#mFGbs*Km};KKok#vEPf zvVvIv)&nDC5HI3ekYap{tpMnP%Z})!(5Vb%FflOBftzYLj{v3hu}sPKH5sp5xUM&V zx?w^97-H-#>hZoL?KK)rBmyJsp`Mr=4LLu|*|e(t@ZFwmtNv!HlB=bUF&src;-rKQ zo6YGwbmqFV)3>}V%35*i6uKfC``8zo0!bNj9FFqh3Q<^_VOmJWIY1(MD%*%PTQayw z>L2WJBuCY8U$--(d0H8z-~o%$?(gwrM=ru$Np zPc6qtjJF)c2~b>?bqE_?czHB(YO`y+OhIX9UdliJzx^jAx99H(+Aw;K6p*(W*u2KO zsOF?PBvuJl1gRF#lGi3rJC`&s(J=kWzqjG!eAaAEmsgH#X> z`Md-pA&Yz9qTs4*@Ri$+L}DMMh1~HdZEvlnZ~WHpl#N^K`u*&|TuPF@Bh|x(7Um1d zGi2+Fu>ie?Xh{zmJKmdWFtD1S@gp)(posw}*d{N$`ih4&e6JqWh2RySp^qE3R14rk zTB;(uC_Om25K&j|9K?01q9TgMPRP zcg27O!JsqJ@TkiV1*Z5=i3bW|-B^_Yo2v(-iP`4BOs*Ki8egEvhStN<>m9(@lvF=5 z1w8!B-~CHvsyR#01j;2*xtj)H_TXTU`wR&O3@Ey-)(YYXHfl!lu2OD9iZ+a!aAHTq zxu>(OX@oNdcbNatKmN6Jm&JQGBpHQ0qRhe@|wi1d$-Z!1oL|ytapxEDYo#Tk7xk$XYZYkWQ6COS`4q zQth;}wUM6twO=dSB5)Y62nq}`WSdq?SSvCcTiH)~=OWz$k!;g8^v8e!$51qw!y(cu z2S$n{>6(ZtFBxk5IEA1Y@rhkN-O6~BIq8fWgWWqn_D7ReYV8ef8a5k0~>*}qcT*^H8^-ulg)5; zt0U?j^mscf~yFuOiJVEd*BClED&Ork<}WJ)^l8%Z2AD> z30cTy>4P%}<%K4s{%YVz$?KX}WZ+t%`ysH9EnSHI_@xX?RtqsO-PG)ym~sfqu<*!H9{`)Wl(*&aTOD~iWlU`L zOaJW4>80~qt5ZPaO`+$w&xs0jVN5oL^zIe@JSxhU@n_Ln<7G^iWn}Vvr2m?j6sHi37QO; zE2@t~2Z|E4DJNvZu#LeHNLv$7rJNw_6-A4ap-AA?F=aSCXXsK!;+x7{O&QBl`hfR7 za=yNwzVgLiF00q>=0njS_H>)j!U&Wt7L8?X5_|h@$g~W=S}H-nVG4{Wj4LRzNyS4< zs)`wMN0_k0F?w=2fKoXkchN#yZqQWBkJ}s)68I$iVijP~VTxP2u5=@f3b`>VMuT@^ zKy*x^bL5#*(ZQ`?gKIU)OMqA3!SIAmR8jfi^T*S}_noaUwzspH9rfvD49fM}t9fDh zl;&TX(X`PyU3TcbzrT@>b*9UGXYa4djn&&X(xneJ%8qawG{;Xwp)|$WgEB8LcaJ{= z$N;NjQKa$RjGFAxE<4p9fp6!MMLP}`j83zumPK~_jNwI$C40Ija}PM;q}W2F=Hwpp z$)frdIgH-X7mS!%y{~kEwlLtZ6VjED=|P2@46#RKDd<28`NsJCGe7f}%T%qyfVI>q zYIv~amKEb$H8G49E8d}($7|Uu9?~cqbiI!>!>ua4K9ov~2P1(rjyM>y6ncJXK3{(K zdiwi6`%lzLOtc*aq4;-iAj(^;iej2Uj)+8W=fxB*_b+*&naf8WI-O6RSWfR)V|DdT zIseeZ&UAB*v*2sj)^s1|%0my|Ct8;@Bl@Z%($3Ci+1}Yr1D>%zJje$J^SafZ%u#@IoO)bD#-u;k@o~?`#}B&gCewMh*hC!Nlnv#lSj1h^B7E z3=XU>EUIne9>s^3_K5LjsH1HX<DlV*vE(ZlqRmR1v>xtUEgsipm{Fb1aHdHL=vo zkv@e1-@dxafTiiIAohoJvb$%%7DO1sW559+aUKAGLX>o$QPDCZi)g{LI3k1Ne-#Kk z)1~fk1zPh_=^8@{F3m$TT`^WWv*eg$&0q##VoxBpn%0pBnCuJ#tRr4AX!M2XfV`r+ zZiCoAsE+^0rEwAgc#lMo9QG84T+7cs_F!twOqY(xyVC9ErI{L8b<3^QjePg+X4-Nx zv8S{qhqAx7ljav@@+0R?mrip=wt`PP?5=H;ufBRIZNXp-AHsAxP=0}(oiqGaCn{NY zw`yu4#VpPd_aP$!@MI6iDThHj#}turT7)&PiqKWJoMCasmc%#V$rwv~KqI6jz=_`U zA2Rce*s48cPKbaBv*MIwS_BVz0vCYfs>wWMoDIjgW>c41-Jk#WpZQDTZc8^$e9#^r z_VyLiwsk%Z6NK)JtaXvn_docc?1(-`)AQ-(+TDEX!#m~pvBmtr#S;}BElmV=oYyzE%KmT=bmZ;r zP4pj1r*rBJd-=kHkCyhrF-1o+FRvU6w^q>^pz%KifW{N4wrim|#ze@Blu*0{

}K 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≀=s@JJ64)lH_~ns09hEXa-W_7gOo4=YE2kGhDSVzfHus# zbyDwQErQ_C##zA?xc2C zfn<(vT`SgieQq_B+O|Seqq9V2H`&g)($il-uM)CvNxN8G zgtaGeH+1WuBgK6%$8=yPJJtJPZu7d}u_mGMJlKp1Dj1aXUSX=gFQ*1lwXM^IMHur44b z29sIB1s{tpErxL`B}>X)e4U;M9N)RbcI=M6r~*SAlg8*IVCNP(wif&2^mZ^ZWV=F= zwF7!GO*AvaGVBgz5MaiAHe%|LGBI;pJlO~oxi+%Q2FRwK?CB@}lN);dO@x-tqvXg3 z@Jxr&Uuke2TUt3QlJZhv1)`A&@@Hq_PYjy6EEB+=7VQ1=>*wkF*Ij(h&z?U506kMurnc(baTG^j+Ct#DK$> z=9sO`2c<_LV*^p+OykT@{YiQd=cicpDCe<02dp~#o6^zA+|BQ*vw;-)SBq+~#W8Uh zGt`%tdEeY#p_p0FaWwELJq_NzsxnvrZ8PPn?~7P^2`@NC!`3Buyr#$R~)IPyU!pjA}T^ zY=#$2Kd0zZGe(xtm2QGTAjF8Q#&MM_ke<*9tsW>P2(-R=^+DAW9vL5kk*vYOEcwm` zq$E^9ZtUyA(}CJs*)tej1f9a0JC2%dy2AE28RWz504kfoW0@_Ob8B4P-7e60=h|&~ z{^W5vKc6sextEdKa&a#$&pVCC#vhTXC_+@9=#(O^&5qRn1kQw*ZsHz*#sW(=FK!(~ zBatWaTOZ7#xj_`6Z@_g5{@DZ>$iGF-u6yMMWREdC^u#@D(UnN)P`hzp3jjHCqdq{R z)Upq00PE(}cj&;iF0FlI4<;;jA_3Px9Zm-T0EAz97wnniBqK$=l-WVM%aH6LZMQjg z)c8YcVrCI3S*C2t-j>8Vu#;H{L=TR}_H{H|#tD(h=W*aBfkhm4nu0M;NN%=B<6SLw z41nwrJ5Ji`M4mqE!`79bY+9N+SF~9MMIDf4;JuO z$5yn`;J_%WaWpiDz6SK7NC*&B!+l<-tlojH4A;7vGCGFVLPRw)1I{~(20GQa=E!h{ zAk+8~g{x8PwoG(E|MNdzRrfQsaHIq3_FAzxfq(01fF{?mwt$w)wU=CBR^G zQf){+!o)_>&5X3%ueKv9v@$gEBXHAj5Q5^wGY&S}v z?nu+|yjpJV?5jD*c6CxYA;T0c8R9Fx28V7ehTSyvfRT7NtS_o}MM1q8>n-1xS z1adDsFB`gxaz#GEcdza}Q6d7M%g)%Cb1C)gMXw%na?LDPlOymnEwB(Z*aK^h(--F< z1H{>q(jVTa5p2LUeKi;Ynn;si5aTbWZJuyW&g{op2n}tNk9H4DU8VjOBtoEMlj=wB z{}rC3f=(oAq|@nYo3kyua#_3ODZ_*SYE&D;MfWnCL_4!!i4TQ`z|>B<*lt0M``xUG zvlEf>L1?}D^z^K{xqCzC-D+rNcYSv+eH76NzVG?$?w0O2x^(9^zx}X!^LoxfM=+UFp*`+UnhqL`^U)^0_qoXPl;2{0d-9@-rCYC5uTFmJ4zT~0?hp3qnT(k6eWnKuGEuUE8@#UvEH(z5`Heo#&p8 zZ(9m1%}W|j$9DG*Mr!o+VGLP!PxLbKK@14UX<3g4)Qvp8j}p8}AyIsHzb$WG-Sho@ zdGsuDos{w9gcy2dx|o%ZKmLF|l@A8k2jDa|81A(>L)Ilfy3!czq8Edx?J^9qw1;We zYQ{Enp*6rVi;m=)cSdcdwUMxA43S-t8C$d--czKd6hJD_;OIt0m|^_(A|sNfzt|(+ z0H{0-PlA9b%3j?C>HLrh=;ADmMme_>*mo6XU?0?V#=HIA@5oW4cUm85MZga zjesa*Wnn^%WB4nwauj14=X?F;#R#^0Xl(gitM4?phBm6}rTSQ%S5D8)tEWa77An)* zH}#vVS7kgttr(n0$7s(l&+A9eE}$y9(4UmD zqjSe8bWGRvn$Zo1gf%>=H`UO@Gn8t`gEq%mT185xHcp7s@f)$;q*rp(vd`eZzjChy8@zC`D)y!-Z(^7#2PSKp{$V!=ETvXwlJY#p2dUpV18HCGrHG~; zSC?~D6&aZ@G&FW3w$kg~30ENtD$}_K5qZsW${RU9NA{1TWq>Y7$;6@KEH-3|?uiqk ziHs!5=#ocq0Fl~W)ZnIEpI4$CrS3qL$HF!linFxl0{ zO;l)aUrx1AucX-_m7;(L6l91RITBy!g9Xk#(9|-=+-iuq@BHk%zI^hGp-t-Bn^)D1 z$T=8JI83`9R9n~X%8E>8=A9xY8#%bHnafi=g{_Bx`%1VdTO_ znmY=lDGy;jF;K7{Yy02oen*K!kX2nTp2|8nusziIelKP-&84w)&NXOpiCOrX$1(>x z=%^bRwH<(fj4vsZ{cuO0j%LJ>K0)(+Oc=SiI7bI#Avc{D_+3{gr%$uE=zw0@U6~P| z4Aj`tR|7${6GWFf3Se}nD-Sr*NSfZy$n97@^WJC5+3BM)o6gH8FFsJas(YpL?k@BS z1l`}Pvo>~%e71Gp+CzFc?luTzQRq0(1$QKWVteq9<~(;I@3sco(!+>JGRgVWewu5> zYpA9V{JJp01bABV_?2N;sc4k({WJ>uiI{G6msDOB0@35ZQg$my$psO6xCV`o zf&a=h)$vkbtgyWff0;E7Je1`no8=x(q=}gtnoU{P29}_I>p08*xOfk6_zAB$z60!z zmg@bV{pAtT@aDX`s3C$(5v3Dnaci3ktDCI*patWH_yYYfLJ6%(+Q8p_=xFEiZj)-L zg>_P;wF~b^_we1Gk)n$KJYD3jZM@G<0zQ{Es}fI zBqWd7wWw%c9BT0RAMK3UUMw>5S5)QeJ({#V-v?v`#JP)}2$qX67St2cPJQZj=iKQR z6Ds}omdoc&@pU!dh_WOC;(&t?ObB#DDU>VfQlMK^7gA8Or zalKvDi@8ihz1@vNk+0L)8RypakRdb3=q>DN+BDWrHjKPw2D(_xrK2l67W(2IXcG0A z7^iTJyR4{zr(Dng$0LXEd^j3$hGbrAKEb$bOzG$~x3-x3{ZJwq4>TFab#v#iYk-X zstZKoM&?;NI$<+t2_+Una|}I?L?A#K`6pGEh?|RZJYbWq{m`WxoWST-5>HmLD`K;< zQ)CkBexTFX4g?5zmeen>SN6+XwYfO|F@{8SOag%9pkxE^B~`gV=7g(Gnwm0$?1$f! zm#{(K#FT=rasx?l&Z7!W31?Myl69>h8;bDB*#Vb%9$MW2_DUua49MXYcE%ATWN8U}+g;5xZmPun7*N zJgPNDoT8r`_`GyVN3^TyqPvaOx{NiprqdhYUt?-Gacf(n%Q^Jti^Z}*zBV!6$C?k3 z&wYCg=8fg!@i0xV=6E`h4+zSrWxq5O;C`R+i^N5&k-nHG`lm?GYIT{BcSjm%)6+oef{&0XWauN$8hdh{`=j=e%g+%Eu`q&ixB|FhiFqhVYXrdXSMc@hJ<8QG& z*TUjj^}_(&Lsjg@zU(3BMP45Gt@NrmzcuI%r^*e^c$9_cfukn8C5N!IXbxM*os*;0 z%+G0aZKEGTw0_&V)zfU&39x1kNR zaVjRQ0;4!bup=IjDR8wZ^x%7rg98|ZwqN|>hsTXnLnBJMYKF=YN4mI>lre1J4+Th8 z?a04*u!SBBQmux7W6MvsLUKQ7(SWgDB749Je-wrTSqN!xWEw)rLgP!sAUL9Me6^99 zG78a>!lgZo$4wkSy8)ULmiwfR{>5+Hk!#cDA(9@NYe zq9yq@CkxI9eDJbU%Jj(YqFew=m( zJNHM(WGB{?y;=|`0500b&%bWs=iwpb&Bp#}p16|UJx*2h&uRSYiiH>CD(uvIj&eQm~qv-td^-2C+N{3rL)cQuH4_fu7|qHX~=2Vk{@Rzi#Q?Shj&hI17cjONq4)v zG!iW~l3F!(kPLgw zP+L$mEJCE~>i*zFTsYRN)vTJ$X0iq@V<}jJMgK7~kKDO4<{Oda82=nSfZP)IWF7Vq zu~(XA!+Jabs1i2YVc0^wF_+Uzn9sG%^HNo-nV)utqX1WRlzr@#P>iP5Bq^=v5CEzt z`MOYqP8LJ%Xm>`dnw-_>92EOxWgqg+RaT&nSO8mNcU&H*OF3QE?rXZq8tK5kc5@H4 zTT7f|Tlo+I;*E&du4sSU2w1{6W-!U@oZt+=kX^G0{JV_|)Xz>?j*y+PKeyrTnsWkF zn751TY{u7|4j)qA{FeRE1Th1X0|(YjW3LBU%3g+Lc@|=l7w42wvMu^Y5-iyPAIo@* zeveS59ML=kbk)y(_Px3#vgHf6n|)CwC18Be-?qj}jD*jsF$oI6n1OIo3PhOCG1B}b zqC|>W9JFOO_cemz*BM)g+zivD7{Ua{5RvQiN0*|gnhtY19Q9%`r7WosA*wSdf!f@| zzAb5KObl2I)c4eul(z*eI<>CJeOrd!EBE(PhOVjQ58tj%pFEe2YNm;#J5gH$rs|C* zI?KRdG=2~m8Y#~jhrIld4m9aR|21@kL;U1m>E=T$z+Q!C;CJ%ADM-m*Lv51dV{Bi)2i)zJLe$q~~A(yqoLGhR8%2 zG}1Jcad5s~HE1ZXt|dT*1+u>%Hq7|^PE(CE*^RsDRv=@KeSU+69ij6D!K{g{5iq5& zM+>on-A=s)$;T*+S!$|y9$?~rt`Y5w+m^0iD=}vEs%4bF^xl(qCusCoPF z5jz}*5E-n|oYKOENipcuap+_F$Q@q+rb!@=rlM-y45j2$m>{HZrF)sYcEv(4B@n#9QdfF)fN}qfIeHa!IHOypX8ju`~ zi=c>F-Ne!Gn?0j1X)*iu1Bf(0*V;~k6Yrx_(LcT+N;?o=vAZ4V1FgiWE3N_P5Z;v$ zM?Dj^$(Pys05)-8fEZsh#1p-<1*HUq6B`g_lW0l6vTi<7=evX-q~jbyx{KXM zxo-)CkNJ? zsa7kFM6qc)j6?2AifSrbgs=9FQ>k?!yy@G%zP@)=2Uk z{A6roSCy-)*JX5aCX3efg-mS%4u^gk1%*Jz>y6Y&6ksr#TI;+hL&^@=_=O+Pgt?$7 z$IAT_%J|nJDC5sh44{z*vw@;yMV=N{8-{1=Xkx81YZVC@F~vI%6;WX={81IzOCQOD zlarI`sXmB$0w`JUT~7fNod!owfo?3s2plI5k&29~L`l(F+RLkxY8&$F5wxn&AhmwC zx|?ePV#*HodH@BXkQ`_q-KpoZm$|-40eJw2-Y~k+hLQzLr}wgwJ^It>K9qd??RcaX zw%4iA;jYuKmVhKqcOV<=(;0)OS7HL-vNEzlf>K4a1NHeBA3tnCvyDA*IXZ?%GAOwS zN9zh~5@Fy6Yh6lL?oZ`TiwS@L|t-94NPBXa7-Cw40+&a#BW^IGwJ~ziSn+AeKK6E0tM?45q=vJ zLYH556fDV;o&XDRTUL5(?T)mEOGwH25WDfy@BqXMH^CdgHDmRQ4ygG@KmR@l4p9nf z^}p?zl_9wX0-*vg*+@XcHgQOolQL`3>?%t& zuXHpbYOYBd6kusSJ>y@Ei#4DKSMGEp*#Zx8p3QEx5^xnJthtv~W~{WeXB;mdFXR@= zHBV*zQcl@XRpmuCan@uyYU^sdTb9Y`scodZG^t(#3sOIs1%;4+W|dAb%Z0m)(wcGd zwf&R?D57)p>zjz)q{pED|41fkH;)^5rUGrW({SBlWUaEP zJN?tDr5jGzMjaZL@Lwip#1ilmx--IZkY8|6&ehb6Fhtb0FFMhatW9|a^c)8;?nxsn zpnfE8`!&zQ6|k`eZtU(t=*d3FK2C2VrO=wQ_C2Q)k|F1;qhYH=k_Gt@)nz0!#fcg{ zA&l*cnB?F$`wL$6(Fh@O-^=t2}5 zf9Nd{o9oD!SL37Eza@j?@?0>H!$Ry|wnilMB|{|?ripH+Q)>Qy+PvdF`z|Jw00000 LNkvXXu0mjf!Tps& literal 0 HcmV?d00001 diff --git a/docs/static/processed_images/e690cdfaf053bbd700.jpg b/docs/static/processed_images/e690cdfaf053bbd700.jpg deleted file mode 100644 index 81faf5f1e7ee27e79363c180e9ba3ef3764cfb45..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15710 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 diff --git a/docs/templates/shortcodes/gallery.html b/docs/templates/shortcodes/gallery.html index a9261e9..e50f823 100644 --- a/docs/templates/shortcodes/gallery.html +++ b/docs/templates/shortcodes/gallery.html @@ -1,7 +1,7 @@ {% for asset in page.assets -%} - {%- if asset is ending_with(".jpg") -%} - - + {%- if asset is matching("[.](jpg|png)$") -%} + +   {%- endif %} From b0f6963e4ca1a693ad4d874f5c5e9a3026ee4381 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 28 Dec 2018 10:42:26 +0100 Subject: [PATCH 06/82] Use lang code in permalinks --- CHANGELOG.md | 1 + components/library/src/content/page.rs | 32 ++++++++++++++++++++--- components/library/src/content/section.rs | 10 +++++-- 3 files changed, 38 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e99db89..6534237 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ## 0.6.0 (unreleased) +- Add support for content in multiple languages ## 0.5.1 (2018-12-14) diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index d1b324f..870ef6b 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -152,11 +152,17 @@ impl Page { if let Some(ref p) = page.meta.path { page.path = p.trim().trim_left_matches('/').to_string(); } else { - page.path = if page.file.components.is_empty() { + let mut path = if page.file.components.is_empty() { page.slug.clone() } else { format!("{}/{}", page.file.components.join("/"), page.slug) }; + + if let Some(ref lang) = page.lang { + path = format!("{}/{}", lang, path); + } + + page.path = path; } if !page.path.ends_with('/') { page.path = format!("{}/", page.path); @@ -580,7 +586,8 @@ Bonjour le monde"# assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.lang, Some("fr".to_string())); - assert_eq!(page.slug, "hello".to_string()); + assert_eq!(page.slug, "hello"); + assert_eq!(page.permalink, "http://a-website.com/fr/hello/"); } #[test] @@ -597,6 +604,25 @@ Bonjour le monde"# let page = res.unwrap(); assert_eq!(page.meta.date, Some("2018-10-08".to_string())); assert_eq!(page.lang, Some("fr".to_string())); - assert_eq!(page.slug, "hello".to_string()); + assert_eq!(page.slug, "hello"); + assert_eq!(page.permalink, "http://a-website.com/fr/hello/"); + } + + #[test] + fn i18n_frontmatter_path_overrides_default_permalink() { + let mut config = Config::default(); + config.languages.push(Language {code: String::from("fr"), rss: false}); + let content = r#" ++++ +path = "bonjour" ++++ +Bonjour le monde"# + .to_string(); + let res = Page::parse(Path::new("hello.fr.md"), &content, &config); + assert!(res.is_ok()); + let page = res.unwrap(); + assert_eq!(page.lang, Some("fr".to_string())); + assert_eq!(page.slug, "hello"); + assert_eq!(page.permalink, "http://a-website.com/bonjour/"); } } diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index 31a25ff..c8369eb 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -89,7 +89,12 @@ impl Section { let (word_count, reading_time) = get_reading_analytics(§ion.raw_content); section.word_count = Some(word_count); section.reading_time = Some(reading_time); - section.path = format!("{}/", section.file.components.join("/")); + let path = format!("{}/", section.file.components.join("/")); + if let Some(ref lang) = section.lang { + section.path = format!("{}/{}", lang, path); + } else { + section.path = path; + } section.components = section .path .split('/') @@ -302,9 +307,10 @@ mod tests { +++ Bonjour le monde"# .to_string(); - let res = Section::parse(Path::new("hello.fr.md"), &content, &config); + let res = Section::parse(Path::new("content/hello/nested/_index.fr.md"), &content, &config); assert!(res.is_ok()); let section = res.unwrap(); assert_eq!(section.lang, Some("fr".to_string())); + assert_eq!(section.permalink, "http://a-website.com/fr/hello/nested/"); } } From 1d06324a6533c8963c12bb71986c05e5c1ddfbfc Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 28 Dec 2018 12:15:17 +0100 Subject: [PATCH 07/82] Load multi-languages pages/sections --- .gitignore | 1 + components/library/src/content/file_info.rs | 8 ++- components/library/src/library.rs | 23 ++++--- components/site/src/lib.rs | 69 ++++++++++++------- components/site/tests/site_i18n.rs | 46 +++++++++++++ test_site_i18n/config.toml | 19 +++++ test_site_i18n/content/base.fr.md | 5 ++ test_site_i18n/content/base.md | 5 ++ test_site_i18n/content/blog/_index.fr.md | 4 ++ test_site_i18n/content/blog/_index.md | 4 ++ test_site_i18n/content/blog/fixed-slug.fr.md | 7 ++ test_site_i18n/content/blog/fixed-slug.md | 12 ++++ test_site_i18n/content/blog/not-in-frend.md | 5 ++ test_site_i18n/content/blog/something.fr.md | 6 ++ test_site_i18n/content/blog/something.md | 6 ++ .../content/blog/with-assets/index.fr.md | 5 ++ .../content/blog/with-assets/index.md | 5 ++ test_site_i18n/templates/index.html | 3 + 18 files changed, 199 insertions(+), 34 deletions(-) create mode 100644 components/site/tests/site_i18n.rs create mode 100644 test_site_i18n/config.toml create mode 100644 test_site_i18n/content/base.fr.md create mode 100644 test_site_i18n/content/base.md create mode 100644 test_site_i18n/content/blog/_index.fr.md create mode 100644 test_site_i18n/content/blog/_index.md create mode 100644 test_site_i18n/content/blog/fixed-slug.fr.md create mode 100644 test_site_i18n/content/blog/fixed-slug.md create mode 100644 test_site_i18n/content/blog/not-in-frend.md create mode 100644 test_site_i18n/content/blog/something.fr.md create mode 100644 test_site_i18n/content/blog/something.md create mode 100644 test_site_i18n/content/blog/with-assets/index.fr.md create mode 100644 test_site_i18n/content/blog/with-assets/index.md create mode 100644 test_site_i18n/templates/index.html diff --git a/.gitignore b/.gitignore index ef376f6..74d95af 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ target .idea/ test_site/public +test_site_i18n/public docs/public small-blog diff --git a/components/library/src/content/file_info.rs b/components/library/src/content/file_info.rs index 4bc2237..dc887a8 100644 --- a/components/library/src/content/file_info.rs +++ b/components/library/src/content/file_info.rs @@ -31,6 +31,8 @@ pub fn find_content_components>(path: P) -> Vec { pub struct FileInfo { /// The full path to the .md file pub path: PathBuf, + /// The on-disk filename, will differ from the `name` when there is a language code in it + pub filename: String, /// The name of the .md file without the extension, always `_index` for sections /// Doesn't contain the language if there was one in the filename pub name: String, @@ -68,6 +70,7 @@ impl FileInfo { } FileInfo { + filename: file_path.file_name().unwrap().to_string_lossy().to_string(), path: file_path, // We don't care about grand parent for pages grand_parent: None, @@ -79,6 +82,7 @@ impl FileInfo { } pub fn new_section(path: &Path) -> FileInfo { + let file_path = path.to_path_buf(); let parent = path.parent().unwrap().to_path_buf(); let name = path.file_stem().unwrap().to_string_lossy().to_string(); let components = find_content_components(path); @@ -90,7 +94,8 @@ impl FileInfo { let grand_parent = parent.parent().map(|p| p.to_path_buf()); FileInfo { - path: path.to_path_buf(), + filename: file_path.file_name().unwrap().to_string_lossy().to_string(), + path: file_path, parent, grand_parent, name, @@ -136,6 +141,7 @@ impl Default for FileInfo { path: PathBuf::new(), parent: PathBuf::new(), grand_parent: None, + filename: String::new(), name: String::new(), components: vec![], relative: String::new(), diff --git a/components/library/src/library.rs b/components/library/src/library.rs index 05971f8..3ff6f2f 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -80,14 +80,12 @@ impl Library { /// Find out the direct subsections of each subsection if there are some /// as well as the pages for each section pub fn populate_sections(&mut self) { - let (root_path, index_path) = self + let root_path= self .sections .values() .find(|s| s.is_index()) - .map(|s| (s.file.parent.clone(), s.file.path.clone())) + .map(|s| s.file.parent.clone()) .unwrap(); - let root_key = self.paths_to_sections[&index_path]; - // We are going to get both the ancestors and grandparents for each section in one go let mut ancestors: HashMap> = HashMap::new(); let mut subsections: HashMap> = HashMap::new(); @@ -99,7 +97,8 @@ impl Library { if let Some(ref grand_parent) = section.file.grand_parent { subsections - .entry(grand_parent.join("_index.md")) + // Using the original filename to work for multi-lingual sections + .entry(grand_parent.join(§ion.file.filename)) .or_insert_with(|| vec![]) .push(section.file.path.clone()); } @@ -111,6 +110,7 @@ impl Library { } let mut path = root_path.clone(); + let root_key = self.paths_to_sections[&root_path.join(§ion.file.filename)]; // Index section is the first ancestor of every single section let mut parents = vec![root_key]; for component in §ion.file.components { @@ -119,7 +119,7 @@ impl Library { if path == section.file.parent { continue; } - if let Some(section_key) = self.paths_to_sections.get(&path.join("_index.md")) { + if let Some(section_key) = self.paths_to_sections.get(&path.join(§ion.file.filename)) { parents.push(*section_key); } } @@ -127,7 +127,12 @@ impl Library { } for (key, page) in &mut self.pages { - let mut parent_section_path = page.file.parent.join("_index.md"); + let parent_filename = if let Some(ref lang) = page.lang { + format!("_index.{}.md", lang) + } else { + "_index.md".to_string() + }; + let mut parent_section_path = page.file.parent.join(&parent_filename); while let Some(section_key) = self.paths_to_sections.get(&parent_section_path) { let parent_is_transparent; // We need to get a reference to a section later so keep the scope of borrowing small @@ -158,9 +163,9 @@ impl Library { break; } - // We've added `_index.md` so if we are here so we need to go up twice + // We've added `_index(.{LANG})?.md` so if we are here so we need to go up twice match parent_section_path.clone().parent().unwrap().parent() { - Some(parent) => parent_section_path = parent.join("_index.md"), + Some(parent) => parent_section_path = parent.join(&parent_filename), None => break, } } diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index d46f1c5..ebed46e 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -147,9 +147,14 @@ impl Site { Ok(site) } - /// The index section is ALWAYS at that path - pub fn index_section_path(&self) -> PathBuf { - self.content_path.join("_index.md") + /// The index sections are ALWAYS at those paths + /// There are one index section for the basic 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()))); + } + res } /// We avoid the port the server is going to use as it's not bound yet @@ -184,7 +189,7 @@ impl Site { .unwrap() .filter_map(|e| e.ok()) .filter(|e| !e.as_path().file_name().unwrap().to_str().unwrap().starts_with('.')) - .partition(|entry| entry.as_path().file_name().unwrap() == "_index.md"); + .partition(|entry| entry.as_path().file_name().unwrap().to_str().unwrap().starts_with("_index.")); self.library = Library::new(page_entries.len(), section_entries.len()); @@ -219,26 +224,37 @@ impl Site { self.add_section(s, false)?; } - // Insert a default index section if necessary so we don't need to create + // Insert a default index section for each language if necessary so we don't need to create // a _index.md to render the index page at the root of the site - let index_path = self.index_section_path(); - if let Some(ref index_section) = self.library.get_section(&index_path) { - if self.config.build_search_index && !index_section.meta.in_search_index { - bail!( + for (index_path, lang) in self.index_section_paths() { + if let Some(ref index_section) = self.library.get_section(&index_path) { + if self.config.build_search_index && !index_section.meta.in_search_index { + bail!( "You have enabled search in the config but disabled it in the index section: \ either turn off the search in the config or remote `in_search_index = true` from the \ section front-matter." - ) + ) + } + } + // Not in else because of borrow checker + if !self.library.contains_section(&index_path) { + let mut index_section = Section::default(); + index_section.file.parent = self.content_path.clone(); + index_section.file.name = "_index".to_string(); + index_section.file.filename = index_path.file_name().unwrap().to_string_lossy().to_string(); + if let Some(ref l) = lang { + index_section.permalink = self.config.make_permalink(l); + let filename = format!("_index.{}.md", l); + index_section.file.path = self.content_path.join(&filename); + index_section.file.relative = filename; + index_section.lang = Some(l.clone()); + } else { + index_section.permalink = self.config.make_permalink(""); + index_section.file.path = self.content_path.join("_index.md"); + index_section.file.relative = "_index.md".to_string(); + } + self.library.insert_section(index_section); } - } - // Not in else because of borrow checker - if !self.library.contains_section(&index_path) { - let mut index_section = Section::default(); - index_section.permalink = self.config.make_permalink(""); - index_section.file.path = self.content_path.join("_index.md"); - index_section.file.parent = self.content_path.clone(); - index_section.file.relative = "_index.md".to_string(); - self.library.insert_section(index_section); } let mut pages_insert_anchors = HashMap::new(); @@ -246,7 +262,7 @@ impl Site { let p = page?; pages_insert_anchors.insert( p.file.path.clone(), - self.find_parent_section_insert_anchor(&p.file.parent.clone()), + self.find_parent_section_insert_anchor(&p.file.parent.clone(), &p.lang), ); self.add_page(p, false)?; } @@ -274,7 +290,7 @@ impl Site { for (_, p) in self.library.pages() { pages_insert_anchors.insert( p.file.path.clone(), - self.find_parent_section_insert_anchor(&p.file.parent.clone()), + self.find_parent_section_insert_anchor(&p.file.parent.clone(), &p.lang), ); } @@ -337,7 +353,7 @@ impl Site { pub fn add_page(&mut self, mut page: Page, render: bool) -> Result> { self.permalinks.insert(page.file.relative.clone(), page.permalink.clone()); if render { - let insert_anchor = self.find_parent_section_insert_anchor(&page.file.parent); + let insert_anchor = self.find_parent_section_insert_anchor(&page.file.parent, &page.lang); page.render_markdown(&self.permalinks, &self.tera, &self.config, insert_anchor)?; } let prev = self.library.remove_page(&page.file.path); @@ -363,8 +379,13 @@ impl Site { /// Finds the insert_anchor for the parent section of the directory at `path`. /// Defaults to `AnchorInsert::None` if no parent section found - pub fn find_parent_section_insert_anchor(&self, parent_path: &PathBuf) -> InsertAnchor { - match self.library.get_section(&parent_path.join("_index.md")) { + pub fn find_parent_section_insert_anchor(&self, parent_path: &PathBuf, lang: &Option) -> InsertAnchor { + let parent = if let Some(ref l) = lang { + parent_path.join(format!("_index.{}.md", l)) + } else { + parent_path.join("_index.md") + }; + match self.library.get_section(&parent) { Some(s) => s.meta.insert_anchor_links, None => InsertAnchor::None, } diff --git a/components/site/tests/site_i18n.rs b/components/site/tests/site_i18n.rs new file mode 100644 index 0000000..dde0b81 --- /dev/null +++ b/components/site/tests/site_i18n.rs @@ -0,0 +1,46 @@ +extern crate site; + +use std::env; + +use site::Site; + +#[test] +fn can_parse_multilingual_site() { + let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); + path.push("test_site_i18n"); + let mut site = Site::new(&path, "config.toml").unwrap(); + site.load().unwrap(); + + assert_eq!(site.library.pages().len(), 9); + assert_eq!(site.library.sections().len(), 4); + + // default index sections + let default_index_section = site.library.get_section(&path.join("content").join("_index.md")).unwrap(); + assert_eq!(default_index_section.pages.len(), 1); + assert!(default_index_section.ancestors.is_empty()); + + let fr_index_section = site.library.get_section(&path.join("content").join("_index.fr.md")).unwrap(); + assert_eq!(fr_index_section.pages.len(), 1); + assert!(fr_index_section.ancestors.is_empty()); + + // blog sections get only their own language pages + let blog_path = path.join("content").join("blog"); + + let default_blog = site.library.get_section(&blog_path.join("_index.md")).unwrap(); + assert_eq!(default_blog.subsections.len(), 0); + assert_eq!(default_blog.pages.len(), 4); + assert_eq!(default_blog.ancestors, vec![*site.library.get_section_key(&default_index_section.file.path).unwrap()]); + for key in &default_blog.pages { + let page = site.library.get_page_by_key(*key); + assert_eq!(page.lang, None); + } + + let fr_blog = site.library.get_section(&blog_path.join("_index.fr.md")).unwrap(); + assert_eq!(fr_blog.subsections.len(), 0); + assert_eq!(fr_blog.pages.len(), 3); + assert_eq!(fr_blog.ancestors, vec![*site.library.get_section_key(&fr_index_section.file.path).unwrap()]); + for key in &fr_blog.pages { + let page = site.library.get_page_by_key(*key); + assert_eq!(page.lang, Some("fr".to_string())); + } +} diff --git a/test_site_i18n/config.toml b/test_site_i18n/config.toml new file mode 100644 index 0000000..c5dd0f0 --- /dev/null +++ b/test_site_i18n/config.toml @@ -0,0 +1,19 @@ +# The URL the site will be built for +base_url = "https://example.com" + +# Whether to automatically compile all Sass files in the sass directory +compile_sass = false + +# Whether to do syntax highlighting +# Theme can be customised by setting the `highlight_theme` variable to a theme supported by Zola +highlight_code = false + +# Whether to build a search index to be used later on by a JavaScript library +build_search_index = false + +languages = [ + {code = "fr"}, +] + +[extra] +# Put all your custom variables here diff --git a/test_site_i18n/content/base.fr.md b/test_site_i18n/content/base.fr.md new file mode 100644 index 0000000..2ca2fc7 --- /dev/null +++ b/test_site_i18n/content/base.fr.md @@ -0,0 +1,5 @@ ++++ +title = "Une page" ++++ + +Une page en Français diff --git a/test_site_i18n/content/base.md b/test_site_i18n/content/base.md new file mode 100644 index 0000000..b759c2d --- /dev/null +++ b/test_site_i18n/content/base.md @@ -0,0 +1,5 @@ ++++ +title = "A page" ++++ + +A page in english diff --git a/test_site_i18n/content/blog/_index.fr.md b/test_site_i18n/content/blog/_index.fr.md new file mode 100644 index 0000000..b19438a --- /dev/null +++ b/test_site_i18n/content/blog/_index.fr.md @@ -0,0 +1,4 @@ ++++ +sort_by = "date" +insert_anchors = "right" ++++ diff --git a/test_site_i18n/content/blog/_index.md b/test_site_i18n/content/blog/_index.md new file mode 100644 index 0000000..028555a --- /dev/null +++ b/test_site_i18n/content/blog/_index.md @@ -0,0 +1,4 @@ ++++ +sort_by = "date" +insert_anchors = "left" ++++ diff --git a/test_site_i18n/content/blog/fixed-slug.fr.md b/test_site_i18n/content/blog/fixed-slug.fr.md new file mode 100644 index 0000000..9a2ba32 --- /dev/null +++ b/test_site_i18n/content/blog/fixed-slug.fr.md @@ -0,0 +1,7 @@ ++++ +title = "Un slug fix" +slug = "something-else" +date = 2017-01-01 ++++ + +Une page qui definit son slug dans le front-matter diff --git a/test_site_i18n/content/blog/fixed-slug.md b/test_site_i18n/content/blog/fixed-slug.md new file mode 100644 index 0000000..f51ed29 --- /dev/null +++ b/test_site_i18n/content/blog/fixed-slug.md @@ -0,0 +1,12 @@ ++++ +title = "Fixed slug" +slug = "something-else" +date = 2017-01-01 ++++ + +A simple page with a slug defined + +# Title + +Hey + diff --git a/test_site_i18n/content/blog/not-in-frend.md b/test_site_i18n/content/blog/not-in-frend.md new file mode 100644 index 0000000..8c06035 --- /dev/null +++ b/test_site_i18n/content/blog/not-in-frend.md @@ -0,0 +1,5 @@ ++++ +date = 2018-08-19 ++++ + +Something not translated diff --git a/test_site_i18n/content/blog/something.fr.md b/test_site_i18n/content/blog/something.fr.md new file mode 100644 index 0000000..bfb19b8 --- /dev/null +++ b/test_site_i18n/content/blog/something.fr.md @@ -0,0 +1,6 @@ ++++ +title = "Quelque chose" +date = 2018-10-09 ++++ + +Un article diff --git a/test_site_i18n/content/blog/something.md b/test_site_i18n/content/blog/something.md new file mode 100644 index 0000000..ee990de --- /dev/null +++ b/test_site_i18n/content/blog/something.md @@ -0,0 +1,6 @@ ++++ +title = "Something" +date = 2018-10-09 ++++ + +A blog post diff --git a/test_site_i18n/content/blog/with-assets/index.fr.md b/test_site_i18n/content/blog/with-assets/index.fr.md new file mode 100644 index 0000000..550ca78 --- /dev/null +++ b/test_site_i18n/content/blog/with-assets/index.fr.md @@ -0,0 +1,5 @@ ++++ +date = 2018-11-10 ++++ + +Avec des fichiers diff --git a/test_site_i18n/content/blog/with-assets/index.md b/test_site_i18n/content/blog/with-assets/index.md new file mode 100644 index 0000000..ada03fa --- /dev/null +++ b/test_site_i18n/content/blog/with-assets/index.md @@ -0,0 +1,5 @@ ++++ +date = 2018-11-10 ++++ + +With assets diff --git a/test_site_i18n/templates/index.html b/test_site_i18n/templates/index.html new file mode 100644 index 0000000..f2e96a5 --- /dev/null +++ b/test_site_i18n/templates/index.html @@ -0,0 +1,3 @@ +{% for page in section.pages %} + {{page.title}} +{% endfor %} From 779511ae43f2e23bf17c98090e79e7b45b1f1d61 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 28 Dec 2018 13:24:49 +0100 Subject: [PATCH 08/82] Pass down lang and start docs --- components/library/src/content/page.rs | 1 + components/library/src/content/section.rs | 1 + components/library/src/content/ser.rs | 6 ++++ .../documentation/content/multilingual.md | 34 +++++++++++++++++++ .../getting-started/configuration.md | 11 +++++- .../documentation/templates/overview.md | 1 + .../documentation/templates/pages-sections.md | 4 +++ test_site_i18n/templates/index.html | 1 + 8 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 docs/content/documentation/content/multilingual.md diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 870ef6b..dea402d 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -252,6 +252,7 @@ impl Page { context.insert("current_url", &self.permalink); context.insert("current_path", &self.path); context.insert("page", &self.to_serialized(library)); + context.insert("lang", &self.lang); render_template(&tpl_name, tera, &context, &config.theme) .chain_err(|| format!("Failed to render page '{}'", self.file.path.display())) diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index c8369eb..c711bbc 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -184,6 +184,7 @@ impl Section { context.insert("current_url", &self.permalink); context.insert("current_path", &self.path); context.insert("section", &self.to_serialized(library)); + context.insert("lang", &self.lang); render_template(tpl_name, tera, &context, &config.theme) .chain_err(|| format!("Failed to render section '{}'", self.file.path.display())) diff --git a/components/library/src/content/ser.rs b/components/library/src/content/ser.rs index 6fbe51b..1c902eb 100644 --- a/components/library/src/content/ser.rs +++ b/components/library/src/content/ser.rs @@ -30,6 +30,7 @@ pub struct SerializingPage<'a> { toc: &'a [Header], assets: &'a [String], draft: bool, + lang: &'a Option, lighter: Option>>, heavier: Option>>, earlier: Option>>, @@ -88,6 +89,7 @@ impl<'a> SerializingPage<'a> { toc: &page.toc, assets: &page.serialized_assets, draft: page.is_draft(), + lang: &page.lang, lighter, heavier, earlier, @@ -136,6 +138,7 @@ impl<'a> SerializingPage<'a> { toc: &page.toc, assets: &page.serialized_assets, draft: page.is_draft(), + lang: &page.lang, lighter: None, heavier: None, earlier: None, @@ -157,6 +160,7 @@ pub struct SerializingSection<'a> { components: &'a [String], word_count: Option, reading_time: Option, + lang: &'a Option, toc: &'a [Header], assets: &'a [String], pages: Vec>, @@ -196,6 +200,7 @@ impl<'a> SerializingSection<'a> { reading_time: section.reading_time, toc: §ion.toc, assets: §ion.serialized_assets, + lang: §ion.lang, pages, subsections, } @@ -227,6 +232,7 @@ impl<'a> SerializingSection<'a> { reading_time: section.reading_time, toc: §ion.toc, assets: §ion.serialized_assets, + lang: §ion.lang, pages: vec![], subsections: vec![], } diff --git a/docs/content/documentation/content/multilingual.md b/docs/content/documentation/content/multilingual.md new file mode 100644 index 0000000..5dd1aaa --- /dev/null +++ b/docs/content/documentation/content/multilingual.md @@ -0,0 +1,34 @@ ++++ +title = "Multilingual sites" +weight = 130 ++++ + +Zola supports having a site in multiple languages. + +## Configuration +To get started, you will need to add the languages you want to support +to your `config.toml`. For example: + +```toml +languages = [ + {code = "fr", rss = true}, # there will be a RSS feed for French content + {code = "it"}, # there won't be a RSS feed for Italian content +] +``` + +## Content +Once the languages are added in, you can start to translate your content. Zola +uses the filename to detect the language: + +- `content/an-article.md`: this will be the default language +- `content/an-article.fr.md`: this will be in French + +If the language code in the filename does not correspond to one of the languages configured, +an error will be shown. + +If your default language has an `_index.md` in a directory, you will need to add a `_index.{code}.md` +file with the desired front-matter options as there is no language fallback. + +## Output +Zola outputs the translated content with a base URL of `{base_url}/{code}/`. +The only exception to that is if you are setting a translated page `path` directly in the front-matter. diff --git a/docs/content/documentation/getting-started/configuration.md b/docs/content/documentation/getting-started/configuration.md index 97e633e..2acba61 100644 --- a/docs/content/documentation/getting-started/configuration.md +++ b/docs/content/documentation/getting-started/configuration.md @@ -21,7 +21,7 @@ base_url = "mywebsite.com" # Used in RSS by default title = "" description = "" -# the default language, used in RSS and coming i18n +# The default language, used in RSS default_language = "en" # Theme name to use @@ -51,6 +51,15 @@ generate_rss = false # taxonomies = [] +# The additional languages for that site +# Example: +# languages = [ +# {code = "fr", rss = true}, # there will be a RSS feed for French content +# {code = "it"}, # there won't be a RSS feed for Italian content +# ] +# +languages = [] + # Whether to compile the Sass files found in the `sass` directory compile_sass = false diff --git a/docs/content/documentation/templates/overview.md b/docs/content/documentation/templates/overview.md index 0ada728..bf9aad7 100644 --- a/docs/content/documentation/templates/overview.md +++ b/docs/content/documentation/templates/overview.md @@ -18,6 +18,7 @@ A few variables are available on all templates minus RSS and sitemap: - `config`: the [configuration](./documentation/getting-started/configuration.md) without any modifications - `current_path`: the path (full URL without the `base_url`) of the current page, never starting with a `/` - `current_url`: the full URL for that page +- `lang`: the language for that page, `null` if the page/section doesn't have a language set ## Standard Templates By default, Zola will look for three templates: `index.html`, which is applied diff --git a/docs/content/documentation/templates/pages-sections.md b/docs/content/documentation/templates/pages-sections.md index e12ae71..88476a2 100644 --- a/docs/content/documentation/templates/pages-sections.md +++ b/docs/content/documentation/templates/pages-sections.md @@ -51,6 +51,8 @@ assets: Array; ancestors: Array; // The relative path from the `content` directory to the markdown file relative_path: String; +// The language for the page if there is one +lang: String? ``` ## Section variables @@ -93,6 +95,8 @@ assets: Array; ancestors: Array; // The relative path from the `content` directory to the markdown file relative_path: String; +// The language for the section if there is one +lang: String? ``` ## Table of contents diff --git a/test_site_i18n/templates/index.html b/test_site_i18n/templates/index.html index f2e96a5..e1b47f1 100644 --- a/test_site_i18n/templates/index.html +++ b/test_site_i18n/templates/index.html @@ -1,3 +1,4 @@ {% for page in section.pages %} {{page.title}} {% endfor %} +Language: {{lang}} From 7313b41f4d89c96d7c62385f2c09126cd6294a04 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 28 Dec 2018 17:30:47 +0100 Subject: [PATCH 09/82] Start adding some tests for building multilingual sites --- components/site/src/lib.rs | 5 + components/site/tests/common.rs | 66 ++++++++ components/site/tests/site.rs | 230 ++++++++------------------ components/site/tests/site_i18n.rs | 28 ++++ test_site_i18n/templates/section.html | 4 + 5 files changed, 176 insertions(+), 157 deletions(-) create mode 100644 components/site/tests/common.rs create mode 100644 test_site_i18n/templates/section.html diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index ebed46e..9ae418f 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -861,6 +861,11 @@ impl Site { pub fn render_section(&self, section: &Section, render_pages: bool) -> Result<()> { ensure_directory_exists(&self.output_path)?; let mut output_path = self.output_path.clone(); + + if let Some(ref lang) = section.lang { + output_path.push(lang); + } + for component in §ion.file.components { output_path.push(component); diff --git a/components/site/tests/common.rs b/components/site/tests/common.rs new file mode 100644 index 0000000..90bd48c --- /dev/null +++ b/components/site/tests/common.rs @@ -0,0 +1,66 @@ +extern crate tempfile; +extern crate site; + +use std::env; +use std::path::PathBuf; + +use self::site::Site; +use self::tempfile::{tempdir, TempDir}; + +// 2 helper macros to make all the build testing more bearable +#[macro_export] +macro_rules! file_exists { + ($root: expr, $path: expr) => {{ + let mut path = $root.clone(); + for component in $path.split("/") { + path = path.join(component); + } + std::path::Path::new(&path).exists() + }}; +} + +#[macro_export] +macro_rules! file_contains { + ($root: expr, $path: expr, $text: expr) => {{ + use std::io::prelude::*; + let mut path = $root.clone(); + for component in $path.split("/") { + path = path.join(component); + } + let mut file = std::fs::File::open(&path).unwrap(); + let mut s = String::new(); + file.read_to_string(&mut s).unwrap(); + println!("{}", s); + s.contains($text) + }}; +} + +/// We return the tmpdir otherwise it would get out of scope and be deleted +/// The tests can ignore it if they dont need it by prefixing it with a `_` +pub fn build_site(name: &str) -> (Site, TempDir, PathBuf) { + let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); + path.push(name); + let mut site = Site::new(&path, "config.toml").unwrap(); + site.load().unwrap(); + let tmp_dir = tempdir().expect("create temp dir"); + let public = &tmp_dir.path().join("public"); + site.set_output_path(&public); + site.build().unwrap(); + (site, tmp_dir, public.clone()) +} + +/// Same as `build_site` but has a hook to setup some config options +pub fn build_site_with_setup(name: &str, mut setup_cb: F) -> (Site, TempDir, PathBuf) where F: FnMut(Site) -> (Site, bool) { + let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); + path.push(name); + let site = Site::new(&path, "config.toml").unwrap(); + let (mut site, needs_loading) = setup_cb(site); + if needs_loading { + site.load().unwrap(); + } + let tmp_dir = tempdir().expect("create temp dir"); + let public = &tmp_dir.path().join("public"); + site.set_output_path(&public); + site.build().unwrap(); + (site, tmp_dir, public.clone()) +} diff --git a/components/site/tests/site.rs b/components/site/tests/site.rs index 9d813dd..cf973bd 100644 --- a/components/site/tests/site.rs +++ b/components/site/tests/site.rs @@ -1,16 +1,14 @@ extern crate config; extern crate site; -extern crate tempfile; +mod common; use std::collections::HashMap; use std::env; -use std::fs::File; -use std::io::prelude::*; use std::path::Path; use config::Taxonomy; use site::Site; -use tempfile::tempdir; +use common::{build_site, build_site_with_setup}; #[test] fn can_parse_site() { @@ -92,41 +90,9 @@ fn can_parse_site() { assert_eq!(prog_section.pages.len(), 2); } -// 2 helper macros to make all the build testing more bearable -macro_rules! file_exists { - ($root: expr, $path: expr) => {{ - let mut path = $root.clone(); - for component in $path.split("/") { - path = path.join(component); - } - Path::new(&path).exists() - }}; -} - -macro_rules! file_contains { - ($root: expr, $path: expr, $text: expr) => {{ - let mut path = $root.clone(); - for component in $path.split("/") { - path = path.join(component); - } - let mut file = File::open(&path).unwrap(); - let mut s = String::new(); - file.read_to_string(&mut s).unwrap(); - println!("{}", s); - s.contains($text) - }}; -} - #[test] fn can_build_site_without_live_reload() { - let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); - path.push("test_site"); - let mut site = Site::new(&path, "config.toml").unwrap(); - site.load().unwrap(); - let tmp_dir = tempdir().expect("create temp dir"); - let public = &tmp_dir.path().join("public"); - site.set_output_path(&public); - site.build().unwrap(); + let (_, _tmp_dir, public) = build_site("test_site"); assert!(&public.exists()); assert!(file_exists!(public, "index.html")); @@ -222,17 +188,12 @@ fn can_build_site_without_live_reload() { #[test] fn can_build_site_with_live_reload() { - let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); - path.push("test_site"); - let mut site = Site::new(&path, "config.toml").unwrap(); - site.load().unwrap(); - let tmp_dir = tempdir().expect("create temp dir"); - let public = &tmp_dir.path().join("public"); - site.set_output_path(&public); - site.enable_live_reload(1000); - site.build().unwrap(); + let (_, _tmp_dir, public) = build_site_with_setup("test_site", |mut site| { + site.enable_live_reload(1000); + (site, true) + }); - assert!(Path::new(&public).exists()); + assert!(&public.exists()); assert!(file_exists!(public, "index.html")); assert!(file_exists!(public, "sitemap.xml")); @@ -271,28 +232,23 @@ fn can_build_site_with_live_reload() { #[test] fn can_build_site_with_taxonomies() { - let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); - path.push("test_site"); - let mut site = Site::new(&path, "config.toml").unwrap(); - site.load().unwrap(); - - for (i, (_, page)) in site.library.pages_mut().iter_mut().enumerate() { - page.meta.taxonomies = { - let mut taxonomies = HashMap::new(); - taxonomies.insert( - "categories".to_string(), - vec![if i % 2 == 0 { "A" } else { "B" }.to_string()], - ); - taxonomies - }; - } - site.populate_taxonomies().unwrap(); - let tmp_dir = tempdir().expect("create temp dir"); - let public = &tmp_dir.path().join("public"); - site.set_output_path(&public); - site.build().unwrap(); + let (site, _tmp_dir, public) = build_site_with_setup("test_site", |mut site| { + site.load().unwrap(); + for (i, (_, page)) in site.library.pages_mut().iter_mut().enumerate() { + page.meta.taxonomies = { + let mut taxonomies = HashMap::new(); + taxonomies.insert( + "categories".to_string(), + vec![if i % 2 == 0 { "A" } else { "B" }.to_string()], + ); + taxonomies + }; + } + site.populate_taxonomies().unwrap(); + (site, false) + }); - assert!(Path::new(&public).exists()); + assert!(&public.exists()); assert_eq!(site.taxonomies.len(), 1); assert!(file_exists!(public, "index.html")); @@ -340,15 +296,7 @@ fn can_build_site_with_taxonomies() { #[test] fn can_build_site_and_insert_anchor_links() { - let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); - path.push("test_site"); - let mut site = Site::new(&path, "config.toml").unwrap(); - site.load().unwrap(); - - let tmp_dir = tempdir().expect("create temp dir"); - let public = &tmp_dir.path().join("public"); - site.set_output_path(&public); - site.build().unwrap(); + let (_, _tmp_dir, public) = build_site("test_site"); assert!(Path::new(&public).exists()); // anchor link inserted @@ -361,23 +309,19 @@ fn can_build_site_and_insert_anchor_links() { #[test] fn can_build_site_with_pagination_for_section() { - let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); - path.push("test_site"); - let mut site = Site::new(&path, "config.toml").unwrap(); - site.load().unwrap(); - for (_, section) in site.library.sections_mut() { - if section.is_index() { - continue; + let (_, _tmp_dir, public) = build_site_with_setup("test_site", |mut site| { + site.load().unwrap(); + for (_, section) in site.library.sections_mut() { + if section.is_index() { + continue; + } + section.meta.paginate_by = Some(2); + section.meta.template = Some("section_paginated.html".to_string()); } - section.meta.paginate_by = Some(2); - section.meta.template = Some("section_paginated.html".to_string()); - } - let tmp_dir = tempdir().expect("create temp dir"); - let public = &tmp_dir.path().join("public"); - site.set_output_path(&public); - site.build().unwrap(); + (site, false) + }); - assert!(Path::new(&public).exists()); + assert!(&public.exists()); assert!(file_exists!(public, "index.html")); assert!(file_exists!(public, "sitemap.xml")); @@ -478,21 +422,17 @@ fn can_build_site_with_pagination_for_section() { #[test] fn can_build_site_with_pagination_for_index() { - let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); - path.push("test_site"); - let mut site = Site::new(&path, "config.toml").unwrap(); - site.load().unwrap(); - { - let index = site.library.get_section_mut(&path.join("content").join("_index.md")).unwrap(); - index.meta.paginate_by = Some(2); - index.meta.template = Some("index_paginated.html".to_string()); - } - let tmp_dir = tempdir().expect("create temp dir"); - let public = &tmp_dir.path().join("public"); - site.set_output_path(&public); - site.build().unwrap(); + let (_, _tmp_dir, public) = build_site_with_setup("test_site", |mut site| { + site.load().unwrap(); + { + let index = site.library.get_section_mut(&site.base_path.join("content").join("_index.md")).unwrap(); + index.meta.paginate_by = Some(2); + index.meta.template = Some("index_paginated.html".to_string()); + } + (site, false) + }); - assert!(Path::new(&public).exists()); + assert!(&public.exists()); assert!(file_exists!(public, "index.html")); assert!(file_exists!(public, "sitemap.xml")); @@ -530,33 +470,28 @@ fn can_build_site_with_pagination_for_index() { #[test] fn can_build_site_with_pagination_for_taxonomy() { - let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); - path.push("test_site"); - let mut site = Site::new(&path, "config.toml").unwrap(); - site.config.taxonomies.push(Taxonomy { - name: "tags".to_string(), - paginate_by: Some(2), - paginate_path: None, - rss: true, + let (_, _tmp_dir, public) = build_site_with_setup("test_site", |mut site| { + site.config.taxonomies.push(Taxonomy { + name: "tags".to_string(), + paginate_by: Some(2), + paginate_path: None, + rss: true, + }); + site.load().unwrap(); + + for (i, (_, page)) in site.library.pages_mut().iter_mut().enumerate() { + page.meta.taxonomies = { + let mut taxonomies = HashMap::new(); + taxonomies + .insert("tags".to_string(), vec![if i % 2 == 0 { "A" } else { "B" }.to_string()]); + taxonomies + }; + } + site.populate_taxonomies().unwrap(); + (site, false) }); - site.load().unwrap(); - - for (i, (_, page)) in site.library.pages_mut().iter_mut().enumerate() { - page.meta.taxonomies = { - let mut taxonomies = HashMap::new(); - taxonomies - .insert("tags".to_string(), vec![if i % 2 == 0 { "A" } else { "B" }.to_string()]); - taxonomies - }; - } - site.populate_taxonomies().unwrap(); - - let tmp_dir = tempdir().expect("create temp dir"); - let public = &tmp_dir.path().join("public"); - site.set_output_path(&public); - site.build().unwrap(); - assert!(Path::new(&public).exists()); + assert!(&public.exists()); assert!(file_exists!(public, "index.html")); assert!(file_exists!(public, "sitemap.xml")); @@ -610,16 +545,9 @@ fn can_build_site_with_pagination_for_taxonomy() { #[test] fn can_build_rss_feed() { - let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); - path.push("test_site"); - let mut site = Site::new(&path, "config.toml").unwrap(); - site.load().unwrap(); - let tmp_dir = tempdir().expect("create temp dir"); - let public = &tmp_dir.path().join("public"); - site.set_output_path(&public); - site.build().unwrap(); + let (_, _tmp_dir, public) = build_site("test_site"); - assert!(Path::new(&public).exists()); + assert!(&public.exists()); assert!(file_exists!(public, "rss.xml")); // latest article is posts/extra-syntax.md assert!(file_contains!(public, "rss.xml", "Extra Syntax")); @@ -629,15 +557,10 @@ fn can_build_rss_feed() { #[test] fn can_build_search_index() { - let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); - path.push("test_site"); - let mut site = Site::new(&path, "config.toml").unwrap(); - site.load().unwrap(); - site.config.build_search_index = true; - let tmp_dir = tempdir().expect("create temp dir"); - let public = &tmp_dir.path().join("public"); - site.set_output_path(&public); - site.build().unwrap(); + let (_, _tmp_dir, public) = build_site_with_setup("test_site", |mut site| { + site.config.build_search_index = true; + (site, true) + }); assert!(Path::new(&public).exists()); assert!(file_exists!(public, "elasticlunr.min.js")); @@ -646,14 +569,7 @@ fn can_build_search_index() { #[test] fn can_build_with_extra_syntaxes() { - let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); - path.push("test_site"); - let mut site = Site::new(&path, "config.toml").unwrap(); - site.load().unwrap(); - let tmp_dir = tempdir().expect("create temp dir"); - let public = &tmp_dir.path().join("public"); - site.set_output_path(&public); - site.build().unwrap(); + let (_, _tmp_dir, public) = build_site("test_site"); assert!(&public.exists()); assert!(file_exists!(public, "posts/extra-syntax/index.html")); diff --git a/components/site/tests/site_i18n.rs b/components/site/tests/site_i18n.rs index dde0b81..975818a 100644 --- a/components/site/tests/site_i18n.rs +++ b/components/site/tests/site_i18n.rs @@ -1,8 +1,10 @@ extern crate site; +mod common; use std::env; use site::Site; +use common::build_site; #[test] fn can_parse_multilingual_site() { @@ -44,3 +46,29 @@ fn can_parse_multilingual_site() { assert_eq!(page.lang, Some("fr".to_string())); } } + +#[test] +fn can_build_multilingual_site() { + let (_, _tmp_dir, public) = build_site("test_site_i18n"); + + assert!(public.exists()); + + // Index pages + assert!(file_exists!(public, "index.html")); + assert!(file_exists!(public, "fr/index.html")); + assert!(file_contains!(public, "fr/index.html", "Une page")); + assert!(file_contains!(public, "fr/index.html", "Language: fr")); + + assert!(file_exists!(public, "base/index.html")); + assert!(file_exists!(public, "fr/base/index.html")); + + // Sections are there as well + assert!(file_exists!(public, "blog/index.html")); + assert!(file_exists!(public, "fr/blog/index.html")); + assert!(file_contains!(public, "fr/blog/index.html", "Language: fr")); + + // sitemap contains all languages + assert!(file_exists!(public, "sitemap.xml")); + assert!(file_contains!(public, "sitemap.xml", "https://example.com/blog/something-else/")); + assert!(file_contains!(public, "sitemap.xml", "https://example.com/fr/blog/something-else/")); +} diff --git a/test_site_i18n/templates/section.html b/test_site_i18n/templates/section.html new file mode 100644 index 0000000..e1b47f1 --- /dev/null +++ b/test_site_i18n/templates/section.html @@ -0,0 +1,4 @@ +{% for page in section.pages %} + {{page.title}} +{% endfor %} +Language: {{lang}} From 34708d6592acb7792e59c372eed3ecef2c40ff9c Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 28 Dec 2018 18:18:12 +0100 Subject: [PATCH 10/82] Handle editing language index colocated --- components/rebuild/src/lib.rs | 12 +++-- components/rebuild/tests/rebuild.rs | 50 +++++++++++++++----- test_site_i18n/content/blog/fixed-slug.fr.md | 2 +- test_site_i18n/templates/page.html | 2 + 4 files changed, 50 insertions(+), 16 deletions(-) create mode 100644 test_site_i18n/templates/page.html diff --git a/components/rebuild/src/lib.rs b/components/rebuild/src/lib.rs index ddc9668..7e43166 100644 --- a/components/rebuild/src/lib.rs +++ b/components/rebuild/src/lib.rs @@ -297,9 +297,15 @@ pub fn after_content_change(site: &mut Site, path: &Path) -> Result<()> { let is_md = path.extension().unwrap() == "md"; let index = path.parent().unwrap().join("index.md"); + let mut potential_indices = vec![path.parent().unwrap().join("index.md")]; + for language in &site.config.languages { + potential_indices.push(path.parent().unwrap().join(format!("index.{}.md", language.code))); + } + let colocated_index = potential_indices.contains(&path.to_path_buf()); + // A few situations can happen: // 1. Change on .md files - // a. Is there an `index.md`? Return an error if it's something other than delete + // a. Is there already an `index.md`? Return an error if it's something other than delete // b. Deleted? remove the element // c. Edited? // 1. filename is `_index.md`, this is a section @@ -315,9 +321,9 @@ pub fn after_content_change(site: &mut Site, path: &Path) -> Result<()> { } // Added another .md in a assets directory - if index.exists() && path.exists() && path != index { + if index.exists() && path.exists() && !colocated_index { bail!( - "Change on {:?} detected but there is already an `index.md` in the same folder", + "Change on {:?} detected but only files named `index.md` with an optional language code are allowed", path.display() ); } else if index.exists() && !path.exists() { diff --git a/components/rebuild/tests/rebuild.rs b/components/rebuild/tests/rebuild.rs index b5a96ea..9e84bdb 100644 --- a/components/rebuild/tests/rebuild.rs +++ b/components/rebuild/tests/rebuild.rs @@ -16,15 +16,15 @@ use rebuild::{after_content_change, after_content_rename}; // Loads the test_site in a tempdir and build it there // Returns (site_path_in_tempdir, site) macro_rules! load_and_build_site { - ($tmp_dir: expr) => {{ + ($tmp_dir: expr, $site: expr) => {{ let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); - path.push("test_site"); + path.push($site); let mut options = dir::CopyOptions::new(); options.copy_inside = true; dir::copy(&path, &$tmp_dir, &options).unwrap(); - let site_path = $tmp_dir.path().join("test_site"); + let site_path = $tmp_dir.path().join($site); let mut site = Site::new(&site_path, "config.toml").unwrap(); site.load().unwrap(); let public = &site_path.join("public"); @@ -81,7 +81,7 @@ macro_rules! rename { #[test] fn can_rebuild_after_simple_change_to_page_content() { let tmp_dir = tempdir().expect("create temp dir"); - let (site_path, mut site) = load_and_build_site!(tmp_dir); + let (site_path, mut site) = load_and_build_site!(tmp_dir, "test_site"); let file_path = edit_file!( site_path, "content/rebuild/first.md", @@ -103,7 +103,7 @@ Some content"# #[test] fn can_rebuild_after_title_change_page_global_func_usage() { let tmp_dir = tempdir().expect("create temp dir"); - let (site_path, mut site) = load_and_build_site!(tmp_dir); + let (site_path, mut site) = load_and_build_site!(tmp_dir, "test_site"); let file_path = edit_file!( site_path, "content/rebuild/first.md", @@ -125,7 +125,7 @@ date = 2017-01-01 #[test] fn can_rebuild_after_sort_change_in_section() { let tmp_dir = tempdir().expect("create temp dir"); - let (site_path, mut site) = load_and_build_site!(tmp_dir); + let (site_path, mut site) = load_and_build_site!(tmp_dir, "test_site"); let file_path = edit_file!( site_path, "content/rebuild/_index.md", @@ -150,7 +150,7 @@ template = "rebuild.html" #[test] fn can_rebuild_after_transparent_change() { let tmp_dir = tempdir().expect("create temp dir"); - let (site_path, mut site) = load_and_build_site!(tmp_dir); + let (site_path, mut site) = load_and_build_site!(tmp_dir, "test_site"); let file_path = edit_file!( site_path, "content/posts/2018/_index.md", @@ -182,7 +182,7 @@ insert_anchor_links = "left" #[test] fn can_rebuild_after_renaming_page() { let tmp_dir = tempdir().expect("create temp dir"); - let (site_path, mut site) = load_and_build_site!(tmp_dir); + let (site_path, mut site) = load_and_build_site!(tmp_dir, "test_site"); let (old_path, new_path) = rename!(site_path, "content/posts/simple.md", "hard.md"); let res = after_content_rename(&mut site, &old_path, &new_path); @@ -195,7 +195,7 @@ fn can_rebuild_after_renaming_page() { #[test] fn can_rebuild_after_renaming_colocated_asset_folder() { let tmp_dir = tempdir().expect("create temp dir"); - let (site_path, mut site) = load_and_build_site!(tmp_dir); + let (site_path, mut site) = load_and_build_site!(tmp_dir, "test_site"); let (old_path, new_path) = rename!(site_path, "content/posts/with-assets", "with-assets-updated"); assert!(file_contains!(site_path, "content/posts/with-assets-updated/index.md", "Hello")); @@ -214,7 +214,7 @@ fn can_rebuild_after_renaming_colocated_asset_folder() { #[test] fn can_rebuild_after_renaming_section_folder() { let tmp_dir = tempdir().expect("create temp dir"); - let (site_path, mut site) = load_and_build_site!(tmp_dir); + let (site_path, mut site) = load_and_build_site!(tmp_dir, "test_site"); let (old_path, new_path) = rename!(site_path, "content/posts", "new-posts"); assert!(file_contains!(site_path, "content/new-posts/simple.md", "simple")); @@ -227,7 +227,7 @@ fn can_rebuild_after_renaming_section_folder() { #[test] fn can_rebuild_after_renaming_non_md_asset_in_colocated_folder() { let tmp_dir = tempdir().expect("create temp dir"); - let (site_path, mut site) = load_and_build_site!(tmp_dir); + let (site_path, mut site) = load_and_build_site!(tmp_dir, "test_site"); let (old_path, new_path) = rename!(site_path, "content/posts/with-assets/zola.png", "gutenberg.png"); @@ -239,7 +239,7 @@ fn can_rebuild_after_renaming_non_md_asset_in_colocated_folder() { #[test] fn can_rebuild_after_deleting_file() { let tmp_dir = tempdir().expect("create temp dir"); - let (site_path, mut site) = load_and_build_site!(tmp_dir); + let (site_path, mut site) = load_and_build_site!(tmp_dir, "test_site"); let path = site_path.join("content").join("posts").join("fixed-slug.md"); fs::remove_file(&path).unwrap(); @@ -247,3 +247,29 @@ fn can_rebuild_after_deleting_file() { println!("{:?}", res); assert!(res.is_ok()); } + +#[test] +fn can_rebuild_after_editing_in_colocated_asset_folder_with_language() { + let tmp_dir = tempdir().expect("create temp dir"); + let (site_path, mut site) = load_and_build_site!(tmp_dir, "test_site_i18n"); + let file_path = edit_file!( + site_path, + "content/blog/with-assets/index.fr.md", + br#" ++++ +date = 2018-11-11 ++++ + +Edite +"# + ); + + let res = after_content_change(&mut site, &file_path); + println!("{:?}", res); + assert!(res.is_ok()); + assert!(file_contains!( + site_path, + "public/fr/blog/with-assets/index.html", + "Edite" + )); +} diff --git a/test_site_i18n/content/blog/fixed-slug.fr.md b/test_site_i18n/content/blog/fixed-slug.fr.md index 9a2ba32..c9732a8 100644 --- a/test_site_i18n/content/blog/fixed-slug.fr.md +++ b/test_site_i18n/content/blog/fixed-slug.fr.md @@ -1,5 +1,5 @@ +++ -title = "Un slug fix" +title = "Un slug fixe" slug = "something-else" date = 2017-01-01 +++ diff --git a/test_site_i18n/templates/page.html b/test_site_i18n/templates/page.html new file mode 100644 index 0000000..ae69e06 --- /dev/null +++ b/test_site_i18n/templates/page.html @@ -0,0 +1,2 @@ +{{page.title}} +{{page.content | safe}} From a12e9512bc728e7593d55e6d88aeabc65787cfd6 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 29 Dec 2018 11:17:43 +0100 Subject: [PATCH 11/82] fmt/clippy --- README.md | 2 +- components/config/src/lib.rs | 2 +- components/library/src/content/file_info.rs | 42 +++++++++++-------- components/library/src/content/page.rs | 10 +++-- components/library/src/content/section.rs | 6 ++- components/library/src/library.rs | 12 +++--- components/rebuild/src/lib.rs | 2 +- components/rebuild/tests/rebuild.rs | 6 +-- components/site/src/lib.rs | 27 ++++++++---- components/site/tests/common.rs | 7 +++- components/site/tests/site.rs | 13 ++++-- components/site/tests/site_i18n.rs | 18 +++++--- .../templates/src/global_fns/load_data.rs | 31 +++++++------- components/templates/src/global_fns/mod.rs | 8 ++-- src/cmd/serve.rs | 9 ++-- 15 files changed, 114 insertions(+), 81 deletions(-) diff --git a/README.md b/README.md index 00657b0..a21375a 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ in the `docs/content` folder of the repository and the community can use [its fo | Syntax highlighting | ✔ | ✔ | ✔ | ✔ | | Sass compilation | ✔ | ✔ | ✔ | ✔ | | Assets co-location | ✔ | ✔ | ✔ | ✔ | -| i18n | ✕ | ✕ | ✔ | ✔ | +| Multilingual site | ✔ | ✕ | ✔ | ✔ | | Image processing | ✔ | ✕ | ✔ | ✔ | | Sane & powerful template engine | ✔ | ~ | ~ | ✔ | | Themes | ✔ | ✕ | ✔ | ✔ | diff --git a/components/config/src/lib.rs b/components/config/src/lib.rs index 74564ac..b7a4ebc 100644 --- a/components/config/src/lib.rs +++ b/components/config/src/lib.rs @@ -12,7 +12,7 @@ extern crate syntect; mod config; pub mod highlighting; mod theme; -pub use config::{Config, Taxonomy, Language}; +pub use config::{Config, Language, Taxonomy}; use std::path::Path; diff --git a/components/library/src/content/file_info.rs b/components/library/src/content/file_info.rs index dc887a8..2b8fc88 100644 --- a/components/library/src/content/file_info.rs +++ b/components/library/src/content/file_info.rs @@ -119,7 +119,7 @@ impl FileInfo { // Go with the assumption that no one is using `.` in filenames when using i18n // We can document that - let mut parts: Vec = self.name.splitn(2,'.').map(|s| s.to_string()).collect(); + let mut parts: Vec = self.name.splitn(2, '.').map(|s| s.to_string()).collect(); // The language code is not present in the config: typo or the user forgot to add it to the // config @@ -155,7 +155,7 @@ mod tests { use config::{Config, Language}; - use super::{FileInfo, find_content_components}; + use super::{find_content_components, FileInfo}; #[test] fn can_find_content_components() { @@ -165,17 +165,19 @@ mod tests { } #[test] fn can_find_components_in_page_with_assets() { - let file = - FileInfo::new_page(&Path::new("/home/vincent/code/site/content/posts/tutorials/python/index.md")); + let file = FileInfo::new_page(&Path::new( + "/home/vincent/code/site/content/posts/tutorials/python/index.md", + )); assert_eq!(file.components, ["posts".to_string(), "tutorials".to_string()]); } #[test] fn can_find_valid_language_in_page() { let mut config = Config::default(); - config.languages.push(Language {code: String::from("fr"), rss: false}); - let mut file = - FileInfo::new_page(&Path::new("/home/vincent/code/site/content/posts/tutorials/python.fr.md")); + config.languages.push(Language { code: String::from("fr"), rss: false }); + let mut file = FileInfo::new_page(&Path::new( + "/home/vincent/code/site/content/posts/tutorials/python.fr.md", + )); let res = file.find_language(&config); assert!(res.is_ok()); assert_eq!(res.unwrap(), Some(String::from("fr"))); @@ -184,9 +186,10 @@ 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"), rss: false}); - let mut file = - FileInfo::new_page(&Path::new("/home/vincent/code/site/content/posts/tutorials/python/index.fr.md")); + config.languages.push(Language { code: String::from("fr"), rss: false }); + let mut file = FileInfo::new_page(&Path::new( + "/home/vincent/code/site/content/posts/tutorials/python/index.fr.md", + )); assert_eq!(file.components, ["posts".to_string(), "tutorials".to_string()]); let res = file.find_language(&config); assert!(res.is_ok()); @@ -196,8 +199,9 @@ mod tests { #[test] fn do_nothing_on_unknown_language_in_page_with_i18n_off() { let config = Config::default(); - let mut file = - FileInfo::new_page(&Path::new("/home/vincent/code/site/content/posts/tutorials/python.fr.md")); + let mut file = FileInfo::new_page(&Path::new( + "/home/vincent/code/site/content/posts/tutorials/python.fr.md", + )); let res = file.find_language(&config); assert!(res.is_ok()); assert!(res.unwrap().is_none()); @@ -206,9 +210,10 @@ 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"), rss: false}); - let mut file = - FileInfo::new_page(&Path::new("/home/vincent/code/site/content/posts/tutorials/python.fr.md")); + config.languages.push(Language { code: String::from("it"), rss: false }); + let mut file = FileInfo::new_page(&Path::new( + "/home/vincent/code/site/content/posts/tutorials/python.fr.md", + )); let res = file.find_language(&config); assert!(res.is_err()); } @@ -216,9 +221,10 @@ mod tests { #[test] fn can_find_valid_language_in_section() { let mut config = Config::default(); - config.languages.push(Language {code: String::from("fr"), rss: false}); - let mut file = - FileInfo::new_section(&Path::new("/home/vincent/code/site/content/posts/tutorials/_index.fr.md")); + config.languages.push(Language { code: String::from("fr"), rss: false }); + let mut file = FileInfo::new_section(&Path::new( + "/home/vincent/code/site/content/posts/tutorials/_index.fr.md", + )); let res = file.find_language(&config); assert!(res.is_ok()); assert_eq!(res.unwrap(), Some(String::from("fr"))); diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index dea402d..5736e17 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -74,6 +74,8 @@ pub struct Page { /// The language of that page. `None` if the user doesn't setup `languages` in config. /// Corresponds to the lang in the {slug}.{lang}.md file scheme pub lang: Option, + /// Contains all the translated version of that page + pub translations: Vec, } impl Page { @@ -101,6 +103,7 @@ impl Page { word_count: None, reading_time: None, lang: None, + translations: Vec::new(), } } @@ -300,6 +303,7 @@ impl Default for Page { word_count: None, reading_time: None, lang: None, + translations: Vec::new(), } } } @@ -577,7 +581,7 @@ Hello world #[test] fn can_specify_language_in_filename() { let mut config = Config::default(); - config.languages.push(Language {code: String::from("fr"), rss: false}); + config.languages.push(Language { code: String::from("fr"), rss: false }); let content = r#" +++ +++ @@ -594,7 +598,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"), rss: false}); + config.languages.push(Language { code: String::from("fr"), rss: false }); let content = r#" +++ +++ @@ -612,7 +616,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"), rss: false}); + config.languages.push(Language { code: String::from("fr"), rss: false }); let content = r#" +++ path = "bonjour" diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index c711bbc..041b9ac 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -54,6 +54,8 @@ pub struct Section { /// The language of that section. `None` if the user doesn't setup `languages` in config. /// Corresponds to the lang in the _index.{lang}.md file scheme pub lang: Option, + /// Contains all the translated version of that section + pub translations: Vec, } impl Section { @@ -78,6 +80,7 @@ impl Section { word_count: None, reading_time: None, lang: None, + translations: Vec::new(), } } @@ -235,6 +238,7 @@ impl Default for Section { reading_time: None, word_count: None, lang: None, + translations: Vec::new(), } } } @@ -302,7 +306,7 @@ mod tests { #[test] fn can_specify_language_in_filename() { let mut config = Config::default(); - config.languages.push(Language {code: String::from("fr"), rss: false}); + config.languages.push(Language { code: String::from("fr"), rss: false }); let content = r#" +++ +++ diff --git a/components/library/src/library.rs b/components/library/src/library.rs index 3ff6f2f..5917588 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -80,12 +80,8 @@ impl Library { /// Find out the direct subsections of each subsection if there are some /// as well as the pages for each section pub fn populate_sections(&mut self) { - let root_path= self - .sections - .values() - .find(|s| s.is_index()) - .map(|s| s.file.parent.clone()) - .unwrap(); + let root_path = + self.sections.values().find(|s| s.is_index()).map(|s| s.file.parent.clone()).unwrap(); // We are going to get both the ancestors and grandparents for each section in one go let mut ancestors: HashMap> = HashMap::new(); let mut subsections: HashMap> = HashMap::new(); @@ -119,7 +115,9 @@ impl Library { if path == section.file.parent { continue; } - if let Some(section_key) = self.paths_to_sections.get(&path.join(§ion.file.filename)) { + if let Some(section_key) = + self.paths_to_sections.get(&path.join(§ion.file.filename)) + { parents.push(*section_key); } } diff --git a/components/rebuild/src/lib.rs b/components/rebuild/src/lib.rs index 7e43166..1f59ba5 100644 --- a/components/rebuild/src/lib.rs +++ b/components/rebuild/src/lib.rs @@ -288,7 +288,7 @@ pub fn after_content_rename(site: &mut Site, old: &Path, new: &Path) -> Result<( old.to_path_buf() }; site.library.remove_page(&old_path); - return handle_page_editing(site, &new_path); + handle_page_editing(site, &new_path) } /// What happens when a section or a page is created/edited diff --git a/components/rebuild/tests/rebuild.rs b/components/rebuild/tests/rebuild.rs index 9e84bdb..621e8a8 100644 --- a/components/rebuild/tests/rebuild.rs +++ b/components/rebuild/tests/rebuild.rs @@ -267,9 +267,5 @@ Edite let res = after_content_change(&mut site, &file_path); println!("{:?}", res); assert!(res.is_ok()); - assert!(file_contains!( - site_path, - "public/fr/blog/with-assets/index.html", - "Edite" - )); + assert!(file_contains!(site_path, "public/fr/blog/with-assets/index.html", "Edite")); } diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 9ae418f..efe889d 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -152,7 +152,10 @@ impl Site { 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()))); + res.push(( + self.content_path.join(format!("_index.{}.md", language.code)), + Some(language.code.clone()), + )); } res } @@ -189,7 +192,9 @@ impl Site { .unwrap() .filter_map(|e| e.ok()) .filter(|e| !e.as_path().file_name().unwrap().to_str().unwrap().starts_with('.')) - .partition(|entry| entry.as_path().file_name().unwrap().to_str().unwrap().starts_with("_index.")); + .partition(|entry| { + entry.as_path().file_name().unwrap().to_str().unwrap().starts_with("_index.") + }); self.library = Library::new(page_entries.len(), section_entries.len()); @@ -241,7 +246,8 @@ impl Site { let mut index_section = Section::default(); index_section.file.parent = self.content_path.clone(); index_section.file.name = "_index".to_string(); - index_section.file.filename = index_path.file_name().unwrap().to_string_lossy().to_string(); + index_section.file.filename = + index_path.file_name().unwrap().to_string_lossy().to_string(); if let Some(ref l) = lang { index_section.permalink = self.config.make_permalink(l); let filename = format!("_index.{}.md", l); @@ -353,7 +359,8 @@ impl Site { pub fn add_page(&mut self, mut page: Page, render: bool) -> Result> { self.permalinks.insert(page.file.relative.clone(), page.permalink.clone()); if render { - let insert_anchor = self.find_parent_section_insert_anchor(&page.file.parent, &page.lang); + let insert_anchor = + self.find_parent_section_insert_anchor(&page.file.parent, &page.lang); page.render_markdown(&self.permalinks, &self.tera, &self.config, insert_anchor)?; } let prev = self.library.remove_page(&page.file.path); @@ -379,7 +386,11 @@ impl Site { /// Finds the insert_anchor for the parent section of the directory at `path`. /// Defaults to `AnchorInsert::None` if no parent section found - pub fn find_parent_section_insert_anchor(&self, parent_path: &PathBuf, lang: &Option) -> InsertAnchor { + pub fn find_parent_section_insert_anchor( + &self, + parent_path: &PathBuf, + lang: &Option, + ) -> InsertAnchor { let parent = if let Some(ref l) = lang { parent_path.join(format!("_index.{}.md", l)) } else { @@ -746,7 +757,7 @@ impl Site { let number_pagers = (section.pages.len() as f64 / section.meta.paginate_by.unwrap() as f64) .ceil() as isize; - for i in 1..number_pagers + 1 { + for i in 1..=number_pagers { let permalink = format!("{}{}/{}/", section.permalink, section.meta.paginate_path, i); sections.push(SitemapEntry::new(permalink, None)) @@ -770,7 +781,7 @@ impl Site { let number_pagers = (item.pages.len() as f64 / taxonomy.kind.paginate_by.unwrap() as f64) .ceil() as isize; - for i in 1..number_pagers + 1 { + for i in 1..=number_pagers { let permalink = self.config.make_permalink(&format!( "{}/{}/{}/{}", name, @@ -822,7 +833,7 @@ impl Site { context.insert("last_build_date", &pages[0].meta.date.clone()); // limit to the last n elements if the limit is set; otherwise use all. - let num_entries = self.config.rss_limit.unwrap_or(pages.len()); + let num_entries = self.config.rss_limit.unwrap_or_else(|| pages.len()); let p = pages .iter() .take(num_entries) diff --git a/components/site/tests/common.rs b/components/site/tests/common.rs index 90bd48c..34c6a45 100644 --- a/components/site/tests/common.rs +++ b/components/site/tests/common.rs @@ -1,5 +1,5 @@ -extern crate tempfile; extern crate site; +extern crate tempfile; use std::env; use std::path::PathBuf; @@ -50,7 +50,10 @@ pub fn build_site(name: &str) -> (Site, TempDir, PathBuf) { } /// Same as `build_site` but has a hook to setup some config options -pub fn build_site_with_setup(name: &str, mut setup_cb: F) -> (Site, TempDir, PathBuf) where F: FnMut(Site) -> (Site, bool) { +pub fn build_site_with_setup(name: &str, mut setup_cb: F) -> (Site, TempDir, PathBuf) +where + F: FnMut(Site) -> (Site, bool), +{ let mut path = env::current_dir().unwrap().parent().unwrap().parent().unwrap().to_path_buf(); path.push(name); let site = Site::new(&path, "config.toml").unwrap(); diff --git a/components/site/tests/site.rs b/components/site/tests/site.rs index cf973bd..f347bc7 100644 --- a/components/site/tests/site.rs +++ b/components/site/tests/site.rs @@ -6,9 +6,9 @@ use std::collections::HashMap; use std::env; use std::path::Path; +use common::{build_site, build_site_with_setup}; use config::Taxonomy; use site::Site; -use common::{build_site, build_site_with_setup}; #[test] fn can_parse_site() { @@ -425,7 +425,10 @@ fn can_build_site_with_pagination_for_index() { let (_, _tmp_dir, public) = build_site_with_setup("test_site", |mut site| { site.load().unwrap(); { - let index = site.library.get_section_mut(&site.base_path.join("content").join("_index.md")).unwrap(); + let index = site + .library + .get_section_mut(&site.base_path.join("content").join("_index.md")) + .unwrap(); index.meta.paginate_by = Some(2); index.meta.template = Some("index_paginated.html".to_string()); } @@ -482,8 +485,10 @@ fn can_build_site_with_pagination_for_taxonomy() { for (i, (_, page)) in site.library.pages_mut().iter_mut().enumerate() { page.meta.taxonomies = { let mut taxonomies = HashMap::new(); - taxonomies - .insert("tags".to_string(), vec![if i % 2 == 0 { "A" } else { "B" }.to_string()]); + taxonomies.insert( + "tags".to_string(), + vec![if i % 2 == 0 { "A" } else { "B" }.to_string()], + ); taxonomies }; } diff --git a/components/site/tests/site_i18n.rs b/components/site/tests/site_i18n.rs index 975818a..0b5e93b 100644 --- a/components/site/tests/site_i18n.rs +++ b/components/site/tests/site_i18n.rs @@ -3,8 +3,8 @@ mod common; use std::env; -use site::Site; use common::build_site; +use site::Site; #[test] fn can_parse_multilingual_site() { @@ -17,11 +17,13 @@ fn can_parse_multilingual_site() { assert_eq!(site.library.sections().len(), 4); // default index sections - let default_index_section = site.library.get_section(&path.join("content").join("_index.md")).unwrap(); + let default_index_section = + site.library.get_section(&path.join("content").join("_index.md")).unwrap(); assert_eq!(default_index_section.pages.len(), 1); assert!(default_index_section.ancestors.is_empty()); - let fr_index_section = site.library.get_section(&path.join("content").join("_index.fr.md")).unwrap(); + let fr_index_section = + site.library.get_section(&path.join("content").join("_index.fr.md")).unwrap(); assert_eq!(fr_index_section.pages.len(), 1); assert!(fr_index_section.ancestors.is_empty()); @@ -31,7 +33,10 @@ fn can_parse_multilingual_site() { let default_blog = site.library.get_section(&blog_path.join("_index.md")).unwrap(); assert_eq!(default_blog.subsections.len(), 0); assert_eq!(default_blog.pages.len(), 4); - assert_eq!(default_blog.ancestors, vec![*site.library.get_section_key(&default_index_section.file.path).unwrap()]); + assert_eq!( + default_blog.ancestors, + vec![*site.library.get_section_key(&default_index_section.file.path).unwrap()] + ); for key in &default_blog.pages { let page = site.library.get_page_by_key(*key); assert_eq!(page.lang, None); @@ -40,7 +45,10 @@ fn can_parse_multilingual_site() { let fr_blog = site.library.get_section(&blog_path.join("_index.fr.md")).unwrap(); assert_eq!(fr_blog.subsections.len(), 0); assert_eq!(fr_blog.pages.len(), 3); - assert_eq!(fr_blog.ancestors, vec![*site.library.get_section_key(&fr_index_section.file.path).unwrap()]); + assert_eq!( + fr_blog.ancestors, + vec![*site.library.get_section_key(&fr_index_section.file.path).unwrap()] + ); for key in &fr_blog.pages { let page = site.library.get_page_by_key(*key); assert_eq!(page.lang, Some("fr".to_string())); diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 1161d01..e6ad349 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -50,24 +50,24 @@ impl FromStr for OutputFormat { type Err = Error; fn from_str(output_format: &str) -> Result { - return match output_format { + match output_format { "toml" => Ok(OutputFormat::Toml), "csv" => Ok(OutputFormat::Csv), "json" => Ok(OutputFormat::Json), "plain" => Ok(OutputFormat::Plain), format => Err(format!("Unknown output format {}", format).into()), - }; + } } } impl OutputFormat { fn as_accept_header(&self) -> header::HeaderValue { - return header::HeaderValue::from_static(match self { + header::HeaderValue::from_static(match self { OutputFormat::Json => "application/json", OutputFormat::Csv => "text/csv", OutputFormat::Toml => "application/toml", OutputFormat::Plain => "text/plain", - }); + }) } } @@ -91,18 +91,18 @@ impl DataSource { if let Some(url) = url_arg { return Url::parse(&url) - .map(|parsed_url| DataSource::Url(parsed_url)) + .map(DataSource::Url) .map_err(|e| format!("Failed to parse {} as url: {}", url, e).into()); } - return Err(GET_DATA_ARGUMENT_ERROR_MESSAGE.into()); + Err(GET_DATA_ARGUMENT_ERROR_MESSAGE.into()) } fn get_cache_key(&self, format: &OutputFormat) -> u64 { let mut hasher = DefaultHasher::new(); format.hash(&mut hasher); self.hash(&mut hasher); - return hasher.finish(); + hasher.finish() } } @@ -123,10 +123,9 @@ fn get_data_source_from_args( 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); - return DataSource::from_args(path_arg, url_arg, content_path); + DataSource::from_args(path_arg, url_arg, content_path) } fn read_data_file(base_path: &PathBuf, full_path: PathBuf) -> Result { @@ -140,9 +139,9 @@ fn read_data_file(base_path: &PathBuf, full_path: PathBuf) -> Result { ) .into()); } - return read_file(&full_path).map_err(|e| { + read_file(&full_path).map_err(|e| { format!("`load_data`: error {} loading file {}", full_path.to_str().unwrap(), e).into() - }); + }) } fn get_output_format_from_args( @@ -161,14 +160,14 @@ fn get_output_format_from_args( let from_extension = if let DataSource::Path(path) = data_source { let extension_result: Result<&str> = - path.extension().map(|extension| extension.to_str().unwrap()).ok_or( - format!("Could not determine format for {} from extension", path.display()).into(), - ); + path.extension().map(|extension| extension.to_str().unwrap()).ok_or_else(|| { + format!("Could not determine format for {} from extension", path.display()).into() + }); extension_result? } else { "plain" }; - return OutputFormat::from_str(from_extension); + OutputFormat::from_str(from_extension) } /// A global function to load data from a file or from a URL @@ -231,7 +230,7 @@ pub fn make_load_data(content_path: PathBuf, base_path: PathBuf) -> GlobalFn { fn load_json(json_data: String) -> Result { let json_content: Value = serde_json::from_str(json_data.as_str()).map_err(|e| format!("{:?}", e))?; - return Ok(json_content); + Ok(json_content) } /// Parse a TOML string and convert it to a Tera Value diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index 83cffb7..bf58931 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -142,9 +142,11 @@ pub fn make_get_taxonomy(all_taxonomies: &[Taxonomy], library: &Library) -> Glob let container = match taxonomies.get(&kind) { Some(c) => c, None => { - return Err( - format!("`get_taxonomy` received an unknown taxonomy as kind: {}", kind).into() - ); + return Err(format!( + "`get_taxonomy` received an unknown taxonomy as kind: {}", + kind + ) + .into()); } }; diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index d675834..1f22eea 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -502,12 +502,9 @@ fn detect_change_kind(pwd: &Path, path: &Path) -> (ChangeKind, PathBuf) { /// Check if the directory at path contains any file fn is_folder_empty(dir: &Path) -> bool { // Can panic if we don't have the rights I guess? - for _ in read_dir(dir).expect("Failed to read a directory to see if it was empty") { - // If we get there, that means we have a file - return false; - } - - true + let files: Vec<_> = + read_dir(dir).expect("Failed to read a directory to see if it was empty").collect(); + files.is_empty() } #[cfg(test)] From 288917b42d8798ebf3d3be93f34d2fc27f2d260d Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 29 Dec 2018 11:38:28 +0100 Subject: [PATCH 12/82] Pest now requires 1.31 --- .travis.yml | 2 +- appveyor.yml | 2 +- docs/content/documentation/getting-started/installation.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 7541658..e8076d1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -16,7 +16,7 @@ matrix: # The earliest stable Rust version that works - env: TARGET=x86_64-unknown-linux-gnu - rust: 1.30.0 + rust: 1.31.0 before_install: set -e diff --git a/appveyor.yml b/appveyor.yml index 0cf36cf..10cd462 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -10,7 +10,7 @@ environment: matrix: - target: x86_64-pc-windows-msvc - RUST_VERSION: 1.29.0 + RUST_VERSION: 1.31.0 - target: x86_64-pc-windows-msvc RUST_VERSION: stable diff --git a/docs/content/documentation/getting-started/installation.md b/docs/content/documentation/getting-started/installation.md index ddf07ff..4685c20 100644 --- a/docs/content/documentation/getting-started/installation.md +++ b/docs/content/documentation/getting-started/installation.md @@ -45,7 +45,7 @@ $ choco install zola ``` ## From source -To build it from source, you will need to have Git, [Rust (at least 1.30) and Cargo](https://www.rust-lang.org/) +To build it from source, you will need to have Git, [Rust (at least 1.31) and Cargo](https://www.rust-lang.org/) installed. You will also need additional dependencies to compile [libsass](https://github.com/sass/libsass): - OSX, Linux and other Unix: `make` (`gmake` on BSDs), `g++`, `libssl-dev` From d2dc2a496248262159e9c0d64d0a734027496a27 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 29 Dec 2018 11:45:32 +0100 Subject: [PATCH 13/82] Add an asset in colocated asset i18n test folder --- test_site_i18n/content/blog/with-assets/some.js | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 test_site_i18n/content/blog/with-assets/some.js diff --git a/test_site_i18n/content/blog/with-assets/some.js b/test_site_i18n/content/blog/with-assets/some.js new file mode 100644 index 0000000..e69de29 From 832360f9b177bfcbc6cbc3a96b33ba785ecf6aac Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 2 Jan 2019 20:41:29 +0100 Subject: [PATCH 14/82] Update deps + rustfmt --- Cargo.lock | 151 ++++++++++----------- components/imageproc/src/lib.rs | 7 +- components/search/Cargo.toml | 2 +- components/templates/src/global_fns/mod.rs | 5 +- 4 files changed, 83 insertions(+), 82 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 085fcb5..0d998f5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -14,13 +14,13 @@ dependencies = [ "actix_derive 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -73,7 +73,7 @@ dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "cookie 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "h2 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", @@ -88,12 +88,12 @@ dependencies = [ "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -134,7 +134,7 @@ dependencies = [ [[package]] name = "ammonia" -version = "1.2.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "html5ever 0.22.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -200,7 +200,7 @@ dependencies = [ "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc-demangle 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -236,7 +236,7 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -299,7 +299,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -338,8 +338,8 @@ dependencies = [ "errors 0.1.0", "globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -388,12 +388,11 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.3.4" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-epoch 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -465,7 +464,7 @@ version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "csv-core 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -525,9 +524,9 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rust-stemmers 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", "strum 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "strum_macros 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -626,16 +625,16 @@ dependencies = [ [[package]] name = "failure" -version = "0.1.3" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", - "failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "failure_derive" -version = "0.1.3" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", @@ -656,7 +655,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -696,8 +695,8 @@ dependencies = [ "errors 0.1.0", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", @@ -1080,8 +1079,8 @@ dependencies = [ "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rendering 0.1.0", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "slotmap 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1155,9 +1154,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "phf 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", "phf_codegen 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1469,7 +1468,7 @@ dependencies = [ [[package]] name = "parking_lot" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1592,7 +1591,7 @@ dependencies = [ "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "xml-rs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1772,7 +1771,7 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.1.44" +version = "0.1.50" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1780,7 +1779,7 @@ name = "redox_termios" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "redox_syscall 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1824,8 +1823,8 @@ dependencies = [ "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", @@ -1850,8 +1849,8 @@ dependencies = [ "mime 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)", "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1873,13 +1872,13 @@ name = "rust-stemmers" version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rustc-demangle" -version = "0.1.11" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1950,7 +1949,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" name = "search" version = "0.1.0" dependencies = [ - "ammonia 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ammonia 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "elasticlunr-rs 2.3.4 (registry+https://github.com/rust-lang/crates.io-index)", "errors 0.1.0", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1993,12 +1992,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde" -version = "1.0.82" +version = "1.0.84" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde_derive" -version = "1.0.82" +version = "1.0.84" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2008,13 +2007,13 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.33" +version = "1.0.34" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2024,7 +2023,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2071,8 +2070,8 @@ dependencies = [ "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "sass-rs 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "search 0.1.0", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2112,7 +2111,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2135,7 +2134,7 @@ dependencies = [ "new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", "precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2213,9 +2212,9 @@ dependencies = [ "onig 4.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "plist 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "yaml-rust 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2228,7 +2227,7 @@ dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", "remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2247,7 +2246,7 @@ dependencies = [ "library 0.1.0", "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "reqwest 0.9.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2277,8 +2276,8 @@ dependencies = [ "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "unic-segment 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2298,7 +2297,7 @@ version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2335,7 +2334,7 @@ version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2515,7 +2514,7 @@ name = "toml" version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2532,7 +2531,7 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2555,7 +2554,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2578,7 +2577,7 @@ version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "ipconfig 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2732,7 +2731,7 @@ name = "utils" version = "0.1.0" dependencies = [ "errors 0.1.0", - "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2927,7 +2926,7 @@ dependencies = [ "checksum actix_derive 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4300e9431455322ae393d43a2ba1ef96b8080573c0fc23b196219efedfb6ba69" "checksum adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7e522997b529f05601e05166c07ed17789691f562762c7f3b987263d2dedee5c" "checksum aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1e9a933f4e58658d7b12defcf96dc5c720f20832deebe3e0a19efd3b6aaeeb9e" -"checksum ammonia 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a8b93ecb80665873703bf3b0a77f369c96b183d8e0afaf30a3ff5ff07dfc6409" +"checksum ammonia 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9c8cd3dff93e4471fff384645c5625cb8e4349000d8a730b9685bdbb19cbacb4" "checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" "checksum arc-swap 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1025aeae2b664ca0ea726a89d574fe8f4e77dd712d443236ad1de00379450cf6" "checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee" @@ -2958,7 +2957,7 @@ dependencies = [ "checksum core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "716c271e8613ace48344f723b60b900a93150271e5be206212d052bbc0883efa" "checksum crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb" "checksum crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e91d5240c6975ef33aeb5f148f35275c25eda8e8a5f95abe421978b05b8bf192" -"checksum crossbeam-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5b2a9ea8f77c7f9efd317a8a5645f515d903a2d86ee14d2337a5facd1bd52c12" +"checksum crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "137bc235f622ffaa0428e3854e24acb53291fc0b3ff6fb2cb75a8be6fb02f06b" "checksum crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f739f8c5363aca78cfb059edf753d8f0d36908c348f3d8d1503f03d8b75d9cf3" "checksum crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13" "checksum crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "927121f5407de9956180ff5e936fe3cf4324279280001cd56b669d28ee7e9150" @@ -2984,8 +2983,8 @@ dependencies = [ "checksum encoding_rs 0.8.13 (registry+https://github.com/rust-lang/crates.io-index)" = "1a8fa54e6689eb2549c4efed8d00d7f3b2b994a064555b0e8df4ae3764bcc4be" "checksum error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07e791d3be96241c77c43846b665ef1384606da2cd2a48730abe606a12906e02" "checksum error-chain 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6930e04918388a9a2e41d518c25cf679ccafe26733fb4127dbf21993f2575d46" -"checksum failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6dd377bcc1b1b7ce911967e3ec24fa19c3224394ec05b54aa7b083d498341ac7" -"checksum failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "64c2d913fe8ed3b6c6518eedf4538255b989945c14c2a7d5cbff62a5e2120596" +"checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2" +"checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1" "checksum fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" "checksum filetime 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a2df5c1a8c4be27e7707789dc42ae65976e60b394afd293d1419ab915833e646" "checksum flate2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2291c165c8e703ee54ef3055ad6188e3d51108e2ded18e9f2476e774fc5ad3d4" @@ -3071,7 +3070,7 @@ dependencies = [ "checksum openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)" = "1bb974e77de925ef426b6bc82fce15fd45bdcbeb5728bffcfc7cdeeb7ce1c2d6" "checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13" "checksum parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5" -"checksum parking_lot 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9723236a9525c757d9725b993511e3fc941e33f27751942232f0058298297edf" +"checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" "checksum parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad7f7e6ebdc79edff6fdcb87a55b620174f7a989e3eb31b65231f4af57f00b8c" "checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" "checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" @@ -3103,7 +3102,7 @@ dependencies = [ "checksum rand_xorshift 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "effa3fcaa47e18db002bdde6060944b6d2f9cfd8db471c30e873448ad9187be3" "checksum rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "373814f27745b2686b350dd261bfd24576a6fb0e2c5919b3a2b6005f820b0473" "checksum rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b055d1e92aba6877574d8fe604a63c8b5df60f60e5982bf7ccbb1338ea527356" -"checksum redox_syscall 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)" = "a84bcd297b87a545980a2d25a0beb72a1f490c31f0a9fde52fca35bfbb1ceb70" +"checksum redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)" = "52ee9a534dc1301776eff45b4fa92d2c39b1d8c3d3357e6eb593e0d795506fc2" "checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76" "checksum regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "37e7cbbd370869ce2e8dff25c7018702d10b21a20ef7135316f8daecd6c25b7f" "checksum regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4e47a2ed29da7a9e1960e1639e7a982e6edc6d49be308a3b02daf511504a16d1" @@ -3111,7 +3110,7 @@ dependencies = [ "checksum reqwest 0.9.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ab52e462d1e15891441aeefadff68bdea005174328ce3da0a314f2ad313ec837" "checksum resolv-conf 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c62bd95a41841efdf7fca2ae9951e64a8d8eae7e5da196d8ce489a2241491a92" "checksum rust-stemmers 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "fbf06149ec391025664a5634200ced1afb489f0f3f8a140d515ebc0eb04b4bc0" -"checksum rustc-demangle 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "01b90379b8664dd83460d59bdc5dd1fd3172b8913788db483ed1325171eab2f7" +"checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" "checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9" @@ -3125,9 +3124,9 @@ dependencies = [ "checksum security-framework-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "40d95f3d7da09612affe897f320d78264f0d2320f3e8eea27d12bd1bd94445e2" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -"checksum serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)" = "6fa52f19aee12441d5ad11c9a00459122bd8f98707cadf9778c540674f1935b6" -"checksum serde_derive 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)" = "96a7f9496ac65a2db5929afa087b54f8fc5008dcfbe48a8874ed20049b0d6154" -"checksum serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)" = "c37ccd6be3ed1fdf419ee848f7c758eb31b054d7cd3ae3600e3bae0adf569811" +"checksum serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)" = "0e732ed5a5592c17d961555e3b552985baf98d50ce418b7b655f31f6ba7eb1b7" +"checksum serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)" = "b4d6115a3ca25c224e409185325afc16a0d5aaaabc15c42b09587d6f1ba39a5b" +"checksum serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)" = "bdf540260cfee6da923831f4776ddc495ada940c30117977c70f1313a6130545" "checksum serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d48f9f99cd749a2de71d29da5f948de7f2764cc5a9d7f3c97e3514d4ee6eabf2" "checksum sha-1 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "51b9d1f3b5de8a167ab06834a7c883bd197f2191e1dda1a22d9ccfeedbf9aded" "checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" diff --git a/components/imageproc/src/lib.rs b/components/imageproc/src/lib.rs index fcfdf9e..e195184 100644 --- a/components/imageproc/src/lib.rs +++ b/components/imageproc/src/lib.rs @@ -298,11 +298,11 @@ impl ImageOp { Format::Png => { let mut enc = PNGEncoder::new(&mut f); enc.encode(&img.raw_pixels(), img_w, img_h, img.color())?; - }, + } Format::Jpeg(q) => { let mut enc = JPEGEncoder::new_with_quality(&mut f, q); enc.encode(&img.raw_pixels(), img_w, img_h, img.color())?; - }, + } } Ok(()) @@ -453,7 +453,8 @@ impl Processor { self.img_ops .par_iter() .map(|(hash, op)| { - let target = self.resized_path.join(Self::op_filename(*hash, op.collision_id, op.format)); + let target = + self.resized_path.join(Self::op_filename(*hash, op.collision_id, op.format)); op.perform(&self.content_path, &target) .chain_err(|| format!("Failed to process image: {}", op.source)) }) diff --git a/components/search/Cargo.toml b/components/search/Cargo.toml index 0a666b0..dbfe736 100644 --- a/components/search/Cargo.toml +++ b/components/search/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Vincent Prouillet "] [dependencies] elasticlunr-rs = "2" -ammonia = "1" +ammonia = "2" lazy_static = "1" errors = { path = "../errors" } diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index 206edd3..fb9fb98 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -218,8 +218,9 @@ pub fn make_resize_image(imageproc: Arc>) -> GlobalF 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 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") From 3d22b4f1f93a358cdc2c7a56c319e33e51652494 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 2 Jan 2019 22:11:34 +0100 Subject: [PATCH 15/82] Generate per language RSS feed --- .gitignore | 1 + components/config/src/config.rs | 2 +- components/library/src/content/file_info.rs | 2 +- components/site/src/lib.rs | 34 +++++++++++++++++++- components/site/tests/common.rs | 2 +- components/site/tests/site_i18n.rs | 15 +++++++-- test_site_i18n/config.toml | 5 ++- test_site_i18n/content/blog/_index.it.md | 4 +++ test_site_i18n/content/blog/fixed-slug.it.md | 7 ++++ 9 files changed, 65 insertions(+), 7 deletions(-) create mode 100644 test_site_i18n/content/blog/_index.it.md create mode 100644 test_site_i18n/content/blog/fixed-slug.it.md diff --git a/.gitignore b/.gitignore index 74d95af..777cd7b 100644 --- a/.gitignore +++ b/.gitignore @@ -14,6 +14,7 @@ huge-kb current.bench now.bench +*.zst # snapcraft artifacts snap/.snapcraft diff --git a/components/config/src/config.rs b/components/config/src/config.rs index 13af11c..8e556df 100644 --- a/components/config/src/config.rs +++ b/components/config/src/config.rs @@ -246,7 +246,7 @@ impl Config { } /// Is this site using i18n? - pub fn uses_i18n(&self) -> bool { + pub fn is_multilingual(&self) -> bool { !self.languages.is_empty() } diff --git a/components/library/src/content/file_info.rs b/components/library/src/content/file_info.rs index 2b8fc88..58a5990 100644 --- a/components/library/src/content/file_info.rs +++ b/components/library/src/content/file_info.rs @@ -109,7 +109,7 @@ impl FileInfo { /// remove it and return the language code pub fn find_language(&mut self, config: &Config) -> Result> { // No languages? Nothing to do - if !config.uses_i18n() { + if !config.is_multilingual() { return Ok(None); } diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index efe889d..99a0892 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -511,9 +511,41 @@ impl Site { self.render_sections()?; self.render_orphan_pages()?; self.render_sitemap()?; + if self.config.generate_rss { - self.render_rss_feed(self.library.pages_values(), None)?; + let pages = if self.config.is_multilingual() { + self.library + .pages_values() + .iter() + .filter(|p| p.lang.is_none()) + .map(|p| *p) + .collect() + } else { + self.library.pages_values() + }; + self.render_rss_feed(pages, None)?; + } + + for lang in &self.config.languages { + if !lang.rss { + continue; + } + let pages = self + .library + .pages_values() + .iter() + .filter(|p| { + if let Some(ref l) = p.lang { + l == &lang.code + } else { + false + } + }) + .map(|p| *p) + .collect(); + self.render_rss_feed(pages, Some(&PathBuf::from(lang.code.clone())))?; } + self.render_404()?; self.render_robots()?; self.render_taxonomies()?; diff --git a/components/site/tests/common.rs b/components/site/tests/common.rs index 34c6a45..bab5db9 100644 --- a/components/site/tests/common.rs +++ b/components/site/tests/common.rs @@ -30,7 +30,7 @@ macro_rules! file_contains { let mut file = std::fs::File::open(&path).unwrap(); let mut s = String::new(); file.read_to_string(&mut s).unwrap(); - println!("{}", s); + // println!("{}", s); s.contains($text) }}; } diff --git a/components/site/tests/site_i18n.rs b/components/site/tests/site_i18n.rs index 0b5e93b..d4bf519 100644 --- a/components/site/tests/site_i18n.rs +++ b/components/site/tests/site_i18n.rs @@ -13,8 +13,8 @@ fn can_parse_multilingual_site() { let mut site = Site::new(&path, "config.toml").unwrap(); site.load().unwrap(); - assert_eq!(site.library.pages().len(), 9); - assert_eq!(site.library.sections().len(), 4); + assert_eq!(site.library.pages().len(), 10); + assert_eq!(site.library.sections().len(), 6); // default index sections let default_index_section = @@ -79,4 +79,15 @@ fn can_build_multilingual_site() { assert!(file_exists!(public, "sitemap.xml")); assert!(file_contains!(public, "sitemap.xml", "https://example.com/blog/something-else/")); assert!(file_contains!(public, "sitemap.xml", "https://example.com/fr/blog/something-else/")); + assert!(file_contains!(public, "sitemap.xml", "https://example.com/it/blog/something-else/")); + + // one rss per language + assert!(file_exists!(public, "rss.xml")); + assert!(file_contains!(public, "rss.xml", "https://example.com/blog/something-else/")); + assert!(!file_contains!(public, "rss.xml", "https://example.com/fr/blog/something-else/")); + assert!(file_exists!(public, "fr/rss.xml")); + assert!(!file_contains!(public, "fr/rss.xml", "https://example.com/blog/something-else/")); + assert!(file_contains!(public, "fr/rss.xml", "https://example.com/fr/blog/something-else/")); + // Italian doesn't have RSS enabled + assert!(!file_exists!(public, "it/rss.xml")); } diff --git a/test_site_i18n/config.toml b/test_site_i18n/config.toml index c5dd0f0..0a6635a 100644 --- a/test_site_i18n/config.toml +++ b/test_site_i18n/config.toml @@ -11,8 +11,11 @@ highlight_code = false # Whether to build a search index to be used later on by a JavaScript library build_search_index = false +generate_rss = true + languages = [ - {code = "fr"}, + {code = "fr", rss = true}, + {code = "it", rss = false}, ] [extra] diff --git a/test_site_i18n/content/blog/_index.it.md b/test_site_i18n/content/blog/_index.it.md new file mode 100644 index 0000000..b19438a --- /dev/null +++ b/test_site_i18n/content/blog/_index.it.md @@ -0,0 +1,4 @@ ++++ +sort_by = "date" +insert_anchors = "right" ++++ diff --git a/test_site_i18n/content/blog/fixed-slug.it.md b/test_site_i18n/content/blog/fixed-slug.it.md new file mode 100644 index 0000000..fcd918e --- /dev/null +++ b/test_site_i18n/content/blog/fixed-slug.it.md @@ -0,0 +1,7 @@ ++++ +title = "Un slug fixe" +slug = "something-else" +date = 2017-01-01 ++++ + +Una pagina che definisce il suo slug nel front-matter From 4be691aba00380ba70129f5f24ef46ce06f18a7f Mon Sep 17 00:00:00 2001 From: Michael Plotke Date: Wed, 2 Jan 2019 16:35:28 -0500 Subject: [PATCH 16/82] add michael.plotke.me to list of examples --- EXAMPLES.md | 1 + 1 file changed, 1 insertion(+) diff --git a/EXAMPLES.md b/EXAMPLES.md index cbabe50..5d4883d 100644 --- a/EXAMPLES.md +++ b/EXAMPLES.md @@ -19,3 +19,4 @@ | [Daniel Sockwell's codesections.com](https://www.codesections.com) | https://gitlab.com/codesections/codesections-website | | [Jens Getreu's blog](https://blog.getreu.net) | | | [Matthias Endler](https://matthias-endler.de) | https://github.com/mre/mre.github.io | +| [Michael Plotke](https://michael.plotke.me) | https://gitlab.com/bdjnk/michael | From 19075191ffec973d4e0f27c86cb1465700a3c1ef Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 4 Jan 2019 20:31:31 +0100 Subject: [PATCH 17/82] Add translations to page/sections --- components/library/src/content/file_info.rs | 7 ++ components/library/src/content/ser.rs | 53 +++++++++++++++ components/library/src/library.rs | 65 +++++++++++++++++-- components/library/src/pagination/mod.rs | 2 +- components/library/src/taxonomies/mod.rs | 4 +- components/site/src/lib.rs | 20 +++--- components/site/tests/common.rs | 8 +-- components/site/tests/site_i18n.rs | 13 +++- components/templates/src/global_fns/mod.rs | 4 +- .../documentation/templates/pages-sections.md | 24 ++++++- test_site_i18n/content/blog/_index.fr.md | 1 + test_site_i18n/content/blog/_index.it.md | 1 + test_site_i18n/content/blog/_index.md | 1 + .../{not-in-frend.md => not-translated.md} | 0 test_site_i18n/templates/page.html | 6 ++ test_site_i18n/templates/section.html | 4 ++ 16 files changed, 184 insertions(+), 29 deletions(-) rename test_site_i18n/content/blog/{not-in-frend.md => not-translated.md} (100%) diff --git a/components/library/src/content/file_info.rs b/components/library/src/content/file_info.rs index 58a5990..7111fa5 100644 --- a/components/library/src/content/file_info.rs +++ b/components/library/src/content/file_info.rs @@ -46,6 +46,9 @@ pub struct FileInfo { /// For example a file at content/kb/solutions/blabla.md will have 2 components: /// `kb` and `solutions` pub components: Vec, + /// This is `parent` + `name`, used to find content referring to the same content but in + /// various languages. + pub canonical: PathBuf, } impl FileInfo { @@ -74,6 +77,7 @@ impl FileInfo { path: file_path, // We don't care about grand parent for pages grand_parent: None, + canonical: parent.join(&name), parent, name, components, @@ -96,6 +100,7 @@ impl FileInfo { FileInfo { filename: file_path.file_name().unwrap().to_string_lossy().to_string(), path: file_path, + canonical: parent.join(&name), parent, grand_parent, name, @@ -128,6 +133,7 @@ impl FileInfo { } self.name = parts.swap_remove(0); + self.canonical = self.parent.join(&self.name); let lang = parts.swap_remove(0); Ok(Some(lang)) @@ -145,6 +151,7 @@ impl Default for FileInfo { name: String::new(), components: vec![], relative: String::new(), + canonical: PathBuf::new(), } } } diff --git a/components/library/src/content/ser.rs b/components/library/src/content/ser.rs index 1c902eb..56a2768 100644 --- a/components/library/src/content/ser.rs +++ b/components/library/src/content/ser.rs @@ -7,6 +7,38 @@ use content::{Page, Section}; use library::Library; use rendering::Header; +#[derive(Clone, Debug, PartialEq, Serialize)] +pub struct TranslatedContent<'a> { + lang: &'a Option, + permalink: &'a str, + title: &'a Option, +} + +impl<'a> TranslatedContent<'a> { + // copypaste eh, not worth creating an enum imo + pub fn find_all_sections(section: &'a Section, library: &'a Library) -> Vec { + let mut translations = vec![]; + + for key in §ion.translations { + let other = library.get_section_by_key(*key); + translations.push(TranslatedContent { lang: &other.lang, permalink: &other.permalink, title: &other.meta.title }); + } + + translations + } + + pub fn find_all_pages(page: &'a Page, library: &'a Library) -> Vec { + let mut translations = vec![]; + + for key in &page.translations { + let other = library.get_page_by_key(*key); + translations.push(TranslatedContent { lang: &other.lang, permalink: &other.permalink, title: &other.meta.title }); + } + + translations + } +} + #[derive(Clone, Debug, PartialEq, Serialize)] pub struct SerializingPage<'a> { relative_path: &'a str, @@ -35,6 +67,7 @@ pub struct SerializingPage<'a> { heavier: Option>>, earlier: Option>>, later: Option>>, + translations: Vec>, } impl<'a> SerializingPage<'a> { @@ -67,6 +100,8 @@ impl<'a> SerializingPage<'a> { .map(|k| library.get_section_by_key(*k).file.relative.clone()) .collect(); + let translations = TranslatedContent::find_all_pages(page, library); + SerializingPage { relative_path: &page.file.relative, ancestors, @@ -94,6 +129,7 @@ impl<'a> SerializingPage<'a> { heavier, earlier, later, + translations, } } @@ -116,6 +152,12 @@ impl<'a> SerializingPage<'a> { vec![] }; + let translations = if let Some(ref lib) = library { + TranslatedContent::find_all_pages(page, lib) + } else { + vec![] + }; + SerializingPage { relative_path: &page.file.relative, ancestors, @@ -143,6 +185,7 @@ impl<'a> SerializingPage<'a> { heavier: None, earlier: None, later: None, + translations, } } } @@ -165,6 +208,7 @@ pub struct SerializingSection<'a> { assets: &'a [String], pages: Vec>, subsections: Vec<&'a str>, + translations: Vec>, } impl<'a> SerializingSection<'a> { @@ -185,6 +229,7 @@ impl<'a> SerializingSection<'a> { .iter() .map(|k| library.get_section_by_key(*k).file.relative.clone()) .collect(); + let translations = TranslatedContent::find_all_sections(section, library); SerializingSection { relative_path: §ion.file.relative, @@ -203,6 +248,7 @@ impl<'a> SerializingSection<'a> { lang: §ion.lang, pages, subsections, + translations, } } @@ -218,6 +264,12 @@ impl<'a> SerializingSection<'a> { vec![] }; + let translations = if let Some(ref lib) = library { + TranslatedContent::find_all_sections(section, lib) + } else { + vec![] + }; + SerializingSection { relative_path: §ion.file.relative, ancestors, @@ -235,6 +287,7 @@ impl<'a> SerializingSection<'a> { lang: §ion.lang, pages: vec![], subsections: vec![], + translations, } } } diff --git a/components/library/src/library.rs b/components/library/src/library.rs index 5917588..558958f 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -22,18 +22,21 @@ pub struct Library { /// All the sections of the site sections: DenseSlotMap

, /// A mapping path -> key for pages so we can easily get their key - paths_to_pages: HashMap, + pub paths_to_pages: HashMap, /// A mapping path -> key for sections so we can easily get their key pub paths_to_sections: HashMap, + /// Whether we need to look for translations + is_multilingual: bool, } impl Library { - pub fn new(cap_pages: usize, cap_sections: usize) -> Self { + pub fn new(cap_pages: usize, cap_sections: usize, is_multilingual: bool) -> Self { Library { pages: DenseSlotMap::with_capacity(cap_pages), sections: DenseSlotMap::with_capacity(cap_sections), paths_to_pages: HashMap::with_capacity(cap_pages), paths_to_sections: HashMap::with_capacity(cap_sections), + is_multilingual, } } @@ -116,10 +119,10 @@ impl Library { continue; } if let Some(section_key) = - self.paths_to_sections.get(&path.join(§ion.file.filename)) - { - parents.push(*section_key); - } + self.paths_to_sections.get(&path.join(§ion.file.filename)) + { + parents.push(*section_key); + } } ancestors.insert(section.file.path.clone(), parents); } @@ -169,6 +172,7 @@ impl Library { } } + self.populate_translations(); self.sort_sections_pages(); let sections = self.paths_to_sections.clone(); @@ -188,7 +192,8 @@ impl Library { } } - /// Sort all sections pages + /// 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) { let mut updates = HashMap::new(); for (key, section) in &self.sections { @@ -268,6 +273,52 @@ impl Library { } } + /// Finds all the translations for each section/page and set the `translations` + /// field of each as needed + /// A no-op for sites without multiple languages + fn populate_translations(&mut self) { + if !self.is_multilingual { + return; + } + + // Sections first + let mut sections_translations = HashMap::new(); + for (key, section) in &self.sections { + sections_translations + .entry(section.file.canonical.clone()) // TODO: avoid this clone + .or_insert_with(Vec::new) + .push(key); + } + + for (key, section) in self.sections.iter_mut() { + let translations = §ions_translations[§ion.file.canonical]; + if translations.len() == 1 { + section.translations = vec![]; + continue; + } + section.translations = translations.iter().filter(|k| **k != key).cloned().collect(); + } + + // Same thing for pages + let mut pages_translations = HashMap::new(); + for (key, page) in &self.pages { + pages_translations + .entry(page.file.canonical.clone()) // TODO: avoid this clone + .or_insert_with(Vec::new) + .push(key); + } + + for (key, page) in self.pages.iter_mut() { + let translations = &pages_translations[&page.file.canonical]; + if translations.len() == 1 { + page.translations = vec![]; + continue; + } + page.translations = translations.iter().filter(|k| **k != key).cloned().collect(); + } + + } + /// Find all the orphan pages: pages that are in a folder without an `_index.md` pub fn get_all_orphan_pages(&self) -> Vec<&Page> { let pages_in_sections = diff --git a/components/library/src/pagination/mod.rs b/components/library/src/pagination/mod.rs index 9566189..ad02385 100644 --- a/components/library/src/pagination/mod.rs +++ b/components/library/src/pagination/mod.rs @@ -254,7 +254,7 @@ mod tests { } fn create_library(is_index: bool) -> (Section, Library) { - let mut library = Library::new(3, 0); + let mut library = Library::new(3, 0, false); library.insert_page(Page::default()); library.insert_page(Page::default()); library.insert_page(Page::default()); diff --git a/components/library/src/taxonomies/mod.rs b/components/library/src/taxonomies/mod.rs index 6bba13c..f270890 100644 --- a/components/library/src/taxonomies/mod.rs +++ b/components/library/src/taxonomies/mod.rs @@ -227,7 +227,7 @@ mod tests { #[test] fn can_make_taxonomies() { let mut config = Config::default(); - let mut library = Library::new(2, 0); + let mut library = Library::new(2, 0, false); config.taxonomies = vec![ TaxonomyConfig { name: "categories".to_string(), ..TaxonomyConfig::default() }, @@ -307,7 +307,7 @@ mod tests { #[test] fn errors_on_unknown_taxonomy() { let mut config = Config::default(); - let mut library = Library::new(2, 0); + let mut library = Library::new(2, 0, false); config.taxonomies = vec![TaxonomyConfig { name: "authors".to_string(), ..TaxonomyConfig::default() }]; diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 99a0892..402c04e 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -141,7 +141,7 @@ impl Site { taxonomies: Vec::new(), permalinks: HashMap::new(), // We will allocate it properly later on - library: Library::new(0, 0), + library: Library::new(0, 0, false), }; Ok(site) @@ -173,7 +173,7 @@ impl Site { } pub fn set_base_url(&mut self, base_url: String) { - let mut imageproc = self.imageproc.lock().unwrap(); + 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; } @@ -189,14 +189,14 @@ impl Site { let content_glob = format!("{}/{}", base_path, "content/**/*.md"); let (section_entries, page_entries): (Vec<_>, Vec<_>) = glob(&content_glob) - .unwrap() + .expect("Invalid glob") .filter_map(|e| e.ok()) .filter(|e| !e.as_path().file_name().unwrap().to_str().unwrap().starts_with('.')) .partition(|entry| { entry.as_path().file_name().unwrap().to_str().unwrap().starts_with("_index.") }); - self.library = Library::new(page_entries.len(), section_entries.len()); + self.library = Library::new(page_entries.len(), section_entries.len(), self.config.is_multilingual()); let sections = { let config = &self.config; @@ -452,12 +452,12 @@ impl Site { } pub fn num_img_ops(&self) -> usize { - let imageproc = self.imageproc.lock().unwrap(); + let imageproc = self.imageproc.lock().expect("Couldn't lock imageproc (num_img_ops)"); imageproc.num_img_ops() } pub fn process_images(&self) -> Result<()> { - let mut imageproc = self.imageproc.lock().unwrap(); + let mut imageproc = self.imageproc.lock().expect("Couldn't lock imageproc (process_images)"); imageproc.prune()?; imageproc.do_process() } @@ -497,7 +497,7 @@ impl Site { // Copy any asset we found previously into the same directory as the index.html for asset in &page.assets { let asset_path = asset.as_path(); - copy(&asset_path, ¤t_path.join(asset_path.file_name().unwrap()))?; + copy(&asset_path, ¤t_path.join(asset_path.file_name().expect("Couldn't get filename from page asset")))?; } Ok(()) @@ -626,7 +626,7 @@ impl Site { ) -> Result> { let glob_string = format!("{}/**/*.{}", sass_path.display(), extension); let files = glob(&glob_string) - .unwrap() + .expect("Invalid glob for sass") .filter_map(|e| e.ok()) .filter(|entry| { !entry.as_path().file_name().unwrap().to_string_lossy().starts_with('_') @@ -920,7 +920,7 @@ impl Site { // Copy any asset we found previously into the same directory as the index.html for asset in §ion.assets { let asset_path = asset.as_path(); - copy(&asset_path, &output_path.join(asset_path.file_name().unwrap()))?; + copy(&asset_path, &output_path.join(asset_path.file_name().expect("Failed to get asset filename for section")))?; } if render_pages { @@ -957,7 +957,7 @@ impl Site { /// Used only on reload pub fn render_index(&self) -> Result<()> { self.render_section( - &self.library.get_section(&self.content_path.join("_index.md")).unwrap(), + &self.library.get_section(&self.content_path.join("_index.md")).expect("Failed to get index section"), false, ) } diff --git a/components/site/tests/common.rs b/components/site/tests/common.rs index bab5db9..77d5de8 100644 --- a/components/site/tests/common.rs +++ b/components/site/tests/common.rs @@ -27,10 +27,10 @@ macro_rules! file_contains { for component in $path.split("/") { path = path.join(component); } - let mut file = std::fs::File::open(&path).unwrap(); + let mut file = std::fs::File::open(&path).expect(&format!("Failed to open {:?}", $path)); let mut s = String::new(); file.read_to_string(&mut s).unwrap(); - // println!("{}", s); + println!("{}", s); s.contains($text) }}; } @@ -45,7 +45,7 @@ pub fn build_site(name: &str) -> (Site, TempDir, PathBuf) { let tmp_dir = tempdir().expect("create temp dir"); let public = &tmp_dir.path().join("public"); site.set_output_path(&public); - site.build().unwrap(); + site.build().expect("Couldn't build the site"); (site, tmp_dir, public.clone()) } @@ -64,6 +64,6 @@ where let tmp_dir = tempdir().expect("create temp dir"); let public = &tmp_dir.path().join("public"); site.set_output_path(&public); - site.build().unwrap(); + site.build().expect("Couldn't build the site"); (site, tmp_dir, public.clone()) } diff --git a/components/site/tests/site_i18n.rs b/components/site/tests/site_i18n.rs index d4bf519..e0518c5 100644 --- a/components/site/tests/site_i18n.rs +++ b/components/site/tests/site_i18n.rs @@ -70,10 +70,21 @@ fn can_build_multilingual_site() { assert!(file_exists!(public, "base/index.html")); assert!(file_exists!(public, "fr/base/index.html")); - // Sections are there as well + // Sections are there as well, with translations info assert!(file_exists!(public, "blog/index.html")); + assert!(file_contains!(public, "blog/index.html", "Translated in fr: Mon blog https://example.com/fr/blog/")); + assert!(file_contains!(public, "blog/index.html", "Translated in it: Il mio blog https://example.com/it/blog/")); assert!(file_exists!(public, "fr/blog/index.html")); assert!(file_contains!(public, "fr/blog/index.html", "Language: fr")); + assert!(file_contains!(public, "fr/blog/index.html", "Translated in : My blog https://example.com/blog/")); + assert!(file_contains!(public, "fr/blog/index.html", "Translated in it: Il mio blog https://example.com/it/blog/")); + + // Normal pages are there with the translations + assert!(file_exists!(public, "blog/something/index.html")); + assert!(file_contains!(public, "blog/something/index.html", "Translated in fr: Quelque chose https://example.com/fr/blog/something/")); + assert!(file_exists!(public, "fr/blog/something/index.html")); + assert!(file_contains!(public, "fr/blog/something/index.html", "Language: fr")); + assert!(file_contains!(public, "fr/blog/something/index.html", "Translated in : Something https://example.com/blog/something/")); // sitemap contains all languages assert!(file_exists!(public, "sitemap.xml")); diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index fb9fb98..24ba393 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -296,7 +296,7 @@ mod tests { #[test] fn can_get_taxonomy() { let taxo_config = TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; - let library = Library::new(0, 0); + let library = Library::new(0, 0, false); let tag = TaxonomyItem::new("Programming", "tags", &Config::default(), vec![], &library); let tags = Taxonomy { kind: taxo_config, items: vec![tag] }; @@ -335,7 +335,7 @@ mod tests { #[test] fn can_get_taxonomy_url() { let taxo_config = TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; - let library = Library::new(0, 0); + let library = Library::new(0, 0, false); let tag = TaxonomyItem::new("Programming", "tags", &Config::default(), vec![], &library); let tags = Taxonomy { kind: taxo_config, items: vec![tag] }; diff --git a/docs/content/documentation/templates/pages-sections.md b/docs/content/documentation/templates/pages-sections.md index 88476a2..b311bfa 100644 --- a/docs/content/documentation/templates/pages-sections.md +++ b/docs/content/documentation/templates/pages-sections.md @@ -52,7 +52,9 @@ ancestors: Array; // The relative path from the `content` directory to the markdown file relative_path: String; // The language for the page if there is one -lang: String? +lang: String?; +// Information about all the available languages for that content +translations: Array; ``` ## Section variables @@ -96,7 +98,9 @@ ancestors: Array; // The relative path from the `content` directory to the markdown file relative_path: String; // The language for the section if there is one -lang: String? +lang: String?; +// Information about all the available languages for that content +translations: Array; ``` ## Table of contents @@ -116,3 +120,19 @@ permalink: String; // All lower level headers below this header children: Array
; ``` + +## Translated content + +Both page and section have a `translations` field which corresponds to an array of `TranslatedContent`. If your site is not using multiple languages, +this will always be an empty array. +A `TranslatedContent` has the following fields: + +```ts +// The language code for that content, empty if it is the default language +lang: String?; +// The title of that content if there is one +title: String?; +// A permalink to that content +permalink: String; +``` + diff --git a/test_site_i18n/content/blog/_index.fr.md b/test_site_i18n/content/blog/_index.fr.md index b19438a..2f97f2f 100644 --- a/test_site_i18n/content/blog/_index.fr.md +++ b/test_site_i18n/content/blog/_index.fr.md @@ -1,4 +1,5 @@ +++ +title = "Mon blog" sort_by = "date" insert_anchors = "right" +++ diff --git a/test_site_i18n/content/blog/_index.it.md b/test_site_i18n/content/blog/_index.it.md index b19438a..5e00882 100644 --- a/test_site_i18n/content/blog/_index.it.md +++ b/test_site_i18n/content/blog/_index.it.md @@ -1,4 +1,5 @@ +++ +title = "Il mio blog" sort_by = "date" insert_anchors = "right" +++ diff --git a/test_site_i18n/content/blog/_index.md b/test_site_i18n/content/blog/_index.md index 028555a..a0b4240 100644 --- a/test_site_i18n/content/blog/_index.md +++ b/test_site_i18n/content/blog/_index.md @@ -1,4 +1,5 @@ +++ +title = "My blog" sort_by = "date" insert_anchors = "left" +++ diff --git a/test_site_i18n/content/blog/not-in-frend.md b/test_site_i18n/content/blog/not-translated.md similarity index 100% rename from test_site_i18n/content/blog/not-in-frend.md rename to test_site_i18n/content/blog/not-translated.md diff --git a/test_site_i18n/templates/page.html b/test_site_i18n/templates/page.html index ae69e06..585468d 100644 --- a/test_site_i18n/templates/page.html +++ b/test_site_i18n/templates/page.html @@ -1,2 +1,8 @@ {{page.title}} {{page.content | safe}} +Language: {{lang}} + +{% for t in page.translations %} +Translated in {{t.lang|default(value=config.default_language)}}: {{t.title}} {{t.permalink|safe}} +{% endfor %} + diff --git a/test_site_i18n/templates/section.html b/test_site_i18n/templates/section.html index e1b47f1..1f5e03c 100644 --- a/test_site_i18n/templates/section.html +++ b/test_site_i18n/templates/section.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 f45293ab25f792fab1449fa9a9b86f049e175e13 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 4 Jan 2019 20:34:20 +0100 Subject: [PATCH 18/82] cargo fmt --- components/library/src/content/ser.rs | 12 +++++++-- components/library/src/library.rs | 13 +++++----- components/site/src/lib.rs | 32 +++++++++++++++--------- components/site/tests/site_i18n.rs | 36 ++++++++++++++++++++++----- 4 files changed, 66 insertions(+), 27 deletions(-) diff --git a/components/library/src/content/ser.rs b/components/library/src/content/ser.rs index 56a2768..5008c80 100644 --- a/components/library/src/content/ser.rs +++ b/components/library/src/content/ser.rs @@ -21,7 +21,11 @@ impl<'a> TranslatedContent<'a> { for key in §ion.translations { let other = library.get_section_by_key(*key); - translations.push(TranslatedContent { lang: &other.lang, permalink: &other.permalink, title: &other.meta.title }); + translations.push(TranslatedContent { + lang: &other.lang, + permalink: &other.permalink, + title: &other.meta.title, + }); } translations @@ -32,7 +36,11 @@ impl<'a> TranslatedContent<'a> { for key in &page.translations { let other = library.get_page_by_key(*key); - translations.push(TranslatedContent { lang: &other.lang, permalink: &other.permalink, title: &other.meta.title }); + translations.push(TranslatedContent { + lang: &other.lang, + permalink: &other.permalink, + title: &other.meta.title, + }); } translations diff --git a/components/library/src/library.rs b/components/library/src/library.rs index 558958f..5552ee9 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -119,10 +119,10 @@ impl Library { continue; } if let Some(section_key) = - self.paths_to_sections.get(&path.join(§ion.file.filename)) - { - parents.push(*section_key); - } + self.paths_to_sections.get(&path.join(§ion.file.filename)) + { + parents.push(*section_key); + } } ancestors.insert(section.file.path.clone(), parents); } @@ -285,7 +285,7 @@ impl Library { let mut sections_translations = HashMap::new(); for (key, section) in &self.sections { sections_translations - .entry(section.file.canonical.clone()) // TODO: avoid this clone + .entry(section.file.canonical.clone()) // TODO: avoid this clone .or_insert_with(Vec::new) .push(key); } @@ -303,7 +303,7 @@ impl Library { let mut pages_translations = HashMap::new(); for (key, page) in &self.pages { pages_translations - .entry(page.file.canonical.clone()) // TODO: avoid this clone + .entry(page.file.canonical.clone()) // TODO: avoid this clone .or_insert_with(Vec::new) .push(key); } @@ -316,7 +316,6 @@ impl Library { } page.translations = translations.iter().filter(|k| **k != key).cloned().collect(); } - } /// Find all the orphan pages: pages that are in a folder without an `_index.md` diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 402c04e..e115880 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -196,7 +196,8 @@ impl Site { entry.as_path().file_name().unwrap().to_str().unwrap().starts_with("_index.") }); - self.library = Library::new(page_entries.len(), section_entries.len(), self.config.is_multilingual()); + self.library = + Library::new(page_entries.len(), section_entries.len(), self.config.is_multilingual()); let sections = { let config = &self.config; @@ -457,7 +458,8 @@ impl Site { } pub fn process_images(&self) -> Result<()> { - let mut imageproc = self.imageproc.lock().expect("Couldn't lock imageproc (process_images)"); + let mut imageproc = + self.imageproc.lock().expect("Couldn't lock imageproc (process_images)"); imageproc.prune()?; imageproc.do_process() } @@ -497,7 +499,11 @@ impl Site { // Copy any asset we found previously into the same directory as the index.html for asset in &page.assets { let asset_path = asset.as_path(); - copy(&asset_path, ¤t_path.join(asset_path.file_name().expect("Couldn't get filename from page asset")))?; + copy( + &asset_path, + ¤t_path + .join(asset_path.file_name().expect("Couldn't get filename from page asset")), + )?; } Ok(()) @@ -534,13 +540,7 @@ impl Site { .library .pages_values() .iter() - .filter(|p| { - if let Some(ref l) = p.lang { - l == &lang.code - } else { - false - } - }) + .filter(|p| if let Some(ref l) = p.lang { l == &lang.code } else { false }) .map(|p| *p) .collect(); self.render_rss_feed(pages, Some(&PathBuf::from(lang.code.clone())))?; @@ -920,7 +920,12 @@ impl Site { // Copy any asset we found previously into the same directory as the index.html for asset in §ion.assets { let asset_path = asset.as_path(); - copy(&asset_path, &output_path.join(asset_path.file_name().expect("Failed to get asset filename for section")))?; + copy( + &asset_path, + &output_path.join( + asset_path.file_name().expect("Failed to get asset filename for section"), + ), + )?; } if render_pages { @@ -957,7 +962,10 @@ impl Site { /// Used only on reload pub fn render_index(&self) -> Result<()> { self.render_section( - &self.library.get_section(&self.content_path.join("_index.md")).expect("Failed to get index section"), + &self + .library + .get_section(&self.content_path.join("_index.md")) + .expect("Failed to get index section"), false, ) } diff --git a/components/site/tests/site_i18n.rs b/components/site/tests/site_i18n.rs index e0518c5..cba0002 100644 --- a/components/site/tests/site_i18n.rs +++ b/components/site/tests/site_i18n.rs @@ -72,19 +72,43 @@ fn can_build_multilingual_site() { // Sections are there as well, with translations info assert!(file_exists!(public, "blog/index.html")); - assert!(file_contains!(public, "blog/index.html", "Translated in fr: Mon blog https://example.com/fr/blog/")); - assert!(file_contains!(public, "blog/index.html", "Translated in it: Il mio blog https://example.com/it/blog/")); + assert!(file_contains!( + public, + "blog/index.html", + "Translated in fr: Mon blog https://example.com/fr/blog/" + )); + assert!(file_contains!( + public, + "blog/index.html", + "Translated in it: Il mio blog https://example.com/it/blog/" + )); assert!(file_exists!(public, "fr/blog/index.html")); assert!(file_contains!(public, "fr/blog/index.html", "Language: fr")); - assert!(file_contains!(public, "fr/blog/index.html", "Translated in : My blog https://example.com/blog/")); - assert!(file_contains!(public, "fr/blog/index.html", "Translated in it: Il mio blog https://example.com/it/blog/")); + assert!(file_contains!( + public, + "fr/blog/index.html", + "Translated in : My blog https://example.com/blog/" + )); + assert!(file_contains!( + public, + "fr/blog/index.html", + "Translated in it: Il mio blog https://example.com/it/blog/" + )); // Normal pages are there with the translations assert!(file_exists!(public, "blog/something/index.html")); - assert!(file_contains!(public, "blog/something/index.html", "Translated in fr: Quelque chose https://example.com/fr/blog/something/")); + assert!(file_contains!( + public, + "blog/something/index.html", + "Translated in fr: Quelque chose https://example.com/fr/blog/something/" + )); assert!(file_exists!(public, "fr/blog/something/index.html")); assert!(file_contains!(public, "fr/blog/something/index.html", "Language: fr")); - assert!(file_contains!(public, "fr/blog/something/index.html", "Translated in : Something https://example.com/blog/something/")); + assert!(file_contains!( + public, + "fr/blog/something/index.html", + "Translated in : Something https://example.com/blog/something/" + )); // sitemap contains all languages assert!(file_exists!(public, "sitemap.xml")); From 2e126b3a08a8e653a58f283ca37d4dd69c054f6f Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 4 Jan 2019 21:57:27 +0100 Subject: [PATCH 19/82] Fix race condition with language folder creation --- components/site/src/lib.rs | 11 ++++++++--- components/utils/src/fs.rs | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index e115880..a7fbb4c 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -246,16 +246,17 @@ impl Site { if !self.library.contains_section(&index_path) { let mut index_section = Section::default(); index_section.file.parent = self.content_path.clone(); - index_section.file.name = "_index".to_string(); index_section.file.filename = index_path.file_name().unwrap().to_string_lossy().to_string(); if let Some(ref l) = lang { + index_section.file.name = format!("_index.{}", l); index_section.permalink = self.config.make_permalink(l); let filename = format!("_index.{}.md", l); index_section.file.path = self.content_path.join(&filename); index_section.file.relative = filename; - index_section.lang = Some(l.clone()); + index_section.lang = index_section.file.find_language(&self.config)?; } else { + index_section.file.name = "_index".to_string(); index_section.permalink = self.config.make_permalink(""); index_section.file.path = self.content_path.join("_index.md"); index_section.file.relative = "_index.md".to_string(); @@ -323,7 +324,8 @@ impl Site { Ok(()) } - /// Adds global fns that are to be available to shortcodes while rendering markdown + /// Adds global fns that are to be available to shortcodes while + /// markdown pub fn register_early_global_fns(&mut self) { self.tera.register_function( "get_url", @@ -907,6 +909,9 @@ impl Site { if let Some(ref lang) = section.lang { output_path.push(lang); + if !output_path.exists() { + create_directory(&output_path)?; + } } for component in §ion.file.components { diff --git a/components/utils/src/fs.rs b/components/utils/src/fs.rs index 788dae1..ec08d3f 100644 --- a/components/utils/src/fs.rs +++ b/components/utils/src/fs.rs @@ -19,7 +19,7 @@ pub fn is_path_in_directory(parent: &Path, path: &Path) -> Result { /// Create a file with the content given pub fn create_file(path: &Path, content: &str) -> Result<()> { - let mut file = File::create(&path)?; + let mut file = File::create(&path).chain_err(|| format!("Failed to create {:?}", path))?; file.write_all(content.as_bytes())?; Ok(()) } From c441f5e857feedb3599a179ac1c90d29fcbd092e Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 5 Jan 2019 11:02:46 +0100 Subject: [PATCH 20/82] Lower serve latency Closes #554 --- CHANGELOG.md | 2 ++ src/cmd/serve.rs | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6534237..91bc573 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,8 @@ ## 0.6.0 (unreleased) - Add support for content in multiple languages +- Lower latency on serve before rebuilding from 2 to 1 second +- Allow processing PNG and produced images are less blurry ## 0.5.1 (2018-12-14) diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index 1f22eea..7672aac 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -176,7 +176,7 @@ pub fn serve( let mut watching_static = false; let mut watching_templates = false; let (tx, rx) = channel(); - let mut watcher = watcher(tx, Duration::from_secs(2)).unwrap(); + let mut watcher = watcher(tx, Duration::from_secs(1)).unwrap(); watcher .watch("content/", RecursiveMode::Recursive) .chain_err(|| "Can't watch the `content` folder. Does it exist?")?; From 0f0304d7edb8f6d942789835c4c2f8b43b921d6b Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 5 Jan 2019 11:04:12 +0100 Subject: [PATCH 21/82] Mention build rm the directory --- docs/content/documentation/getting-started/cli-usage.md | 2 +- src/cli.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/content/documentation/getting-started/cli-usage.md b/docs/content/documentation/getting-started/cli-usage.md index e74a5ac..a1a24ea 100644 --- a/docs/content/documentation/getting-started/cli-usage.md +++ b/docs/content/documentation/getting-started/cli-usage.md @@ -21,7 +21,7 @@ zola. ## build -This will build the whole site in the `public` directory. +This will build the whole site in the `public` directory after deleting it. ```bash $ zola build diff --git a/src/cli.rs b/src/cli.rs index ca40aaa..304d135 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -23,7 +23,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") ), SubCommand::with_name("build") - .about("Builds the site") + .about("Deletes the output directory if there is one and builds the site") .args(&[ Arg::with_name("base_url") .short("u") From 774514f4d4efc65e99a9108a6fc886e9747e567c Mon Sep 17 00:00:00 2001 From: Peng Guanwen Date: Sat, 5 Jan 2019 22:37:24 +0800 Subject: [PATCH 22/82] refactor markdown_to_html this commit contains two refactors: - extract custom link transformations into a function. - separate some trivial markup generation. --- components/rendering/src/markdown.rs | 111 +++++++++++++++------------ 1 file changed, 60 insertions(+), 51 deletions(-) diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index c21e58b..368901a 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -49,6 +49,56 @@ fn is_colocated_asset_link(link: &str) -> bool { && !link.starts_with("mailto:") } +fn fix_link(link: &str, context: &RenderContext) -> Result { + // A few situations here: + // - it could be a relative link (starting with `./`) + // - it could be a link to a co-located asset + // - it could be a normal link + // - any of those can be in a header or not: if it's in a header + // we need to append to a string + let result = if link.starts_with("./") { + match resolve_internal_link(&link, context.permalinks) { + Ok(url) => url, + Err(_) => { + return Err(format!("Relative link {} not found.", link).into()); + } + } + } else if is_colocated_asset_link(&link) { + format!("{}{}", context.current_page_permalink, link) + } else if context.config.check_external_links + && !link.starts_with('#') + && !link.starts_with("mailto:") { + let res = check_url(&link); + if res.is_valid() { + link.to_string() + } else { + return Err( + format!("Link {} is not valid: {}", link, res.message()).into(), + ); + } + } else { + link.to_string() + }; + Ok(result) +} + +/// returns true if event have been processed +fn push_to_temp_header(event: &Event, temp_header: &mut TempHeader) -> bool { + match event { + Event::End(Tag::Link(_, _)) => { + temp_header.add_html(""); + } + Event::Start(Tag::Code) => { + temp_header.add_html(""); + } + Event::End(Tag::Code) => { + temp_header.add_html(""); + } + _ => return false, + } + true +} + pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { // the rendered html let mut html = String::with_capacity(content.len()); @@ -76,6 +126,11 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { // Header first @@ -142,37 +197,12 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { - // A few situations here: - // - it could be a relative link (starting with `./`) - // - it could be a link to a co-located asset - // - it could be a normal link - // - any of those can be in a header or not: if it's in a header - // we need to append to a string - let fixed_link = if link.starts_with("./") { - match resolve_internal_link(&link, context.permalinks) { - Ok(url) => url, - Err(_) => { - error = Some(format!("Relative link {} not found.", link).into()); - return Event::Html(Borrowed("")); - } - } - } else if is_colocated_asset_link(&link) { - format!("{}{}", context.current_page_permalink, link) - } else if context.config.check_external_links - && !link.starts_with('#') - && !link.starts_with("mailto:") - { - let res = check_url(&link); - if res.is_valid() { - link.to_string() - } else { - error = Some( - format!("Link {} is not valid: {}", link, res.message()).into(), - ); - String::new() + let fixed_link = match fix_link(&link, context) { + Ok(fixed_link) => fixed_link, + Err(err) => { + error = Some(err); + return Event::Html(Borrowed("")) } - } else { - link.to_string() }; if in_header { @@ -187,27 +217,6 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { - if in_header { - temp_header.add_html(""); - return Event::Html(Borrowed("")); - } - event - } - Event::Start(Tag::Code) => { - if in_header { - temp_header.add_html(""); - return Event::Html(Borrowed("")); - } - event - } - Event::End(Tag::Code) => { - if in_header { - temp_header.add_html(""); - return Event::Html(Borrowed("")); - } - event - } Event::Start(Tag::Header(num)) => { in_header = true; temp_header = TempHeader::new(num); From 972aab1ac492aa29b2c23ad5958e71ad3729e0a9 Mon Sep 17 00:00:00 2001 From: Peng Guanwen Date: Sat, 5 Jan 2019 23:30:53 +0800 Subject: [PATCH 23/82] Add emphasis, strong and code support in header --- components/rendering/src/markdown.rs | 38 ++++++++++++++++++-------- components/rendering/tests/markdown.rs | 27 ++++++++++++++++++ 2 files changed, 53 insertions(+), 12 deletions(-) diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index 368901a..926d0c9 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -82,21 +82,35 @@ fn fix_link(link: &str, context: &RenderContext) -> Result { Ok(result) } +fn start_tag(temp_header: &mut TempHeader, tag: &Tag) -> bool { + match tag { + Tag::Emphasis => temp_header.add_html(""), + Tag::Strong => temp_header.add_html(""), + Tag::Code => temp_header.add_html(""), + // Tag::Link is handled elsewhere + _ => return false, + } + true +} + +fn end_tag(temp_header: &mut TempHeader, tag: &Tag) -> bool { + match tag { + Tag::Emphasis => temp_header.add_html(""), + Tag::Strong => temp_header.add_html(""), + Tag::Code => temp_header.add_html(""), + Tag::Link(_, _) => temp_header.add_html(""), + _ => return false, + } + true +} + /// returns true if event have been processed fn push_to_temp_header(event: &Event, temp_header: &mut TempHeader) -> bool { match event { - Event::End(Tag::Link(_, _)) => { - temp_header.add_html(""); - } - Event::Start(Tag::Code) => { - temp_header.add_html(""); - } - Event::End(Tag::Code) => { - temp_header.add_html(""); - } - _ => return false, + Event::Start(tag) => start_tag(temp_header, tag), + Event::End(tag) => end_tag(temp_header, tag), + _ => false, } - true } pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { @@ -126,7 +140,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> ResultEmphasis text\n") +} + +#[test] +fn can_understand_strong_in_header() { + let permalinks_ctx = HashMap::new(); + let config = Config::default(); + let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let res = render_content("# **Strong** text", &context).unwrap(); + assert_eq!(res.body, "

Strong text

\n") +} + +#[test] +fn can_understand_code_in_header() { + let permalinks_ctx = HashMap::new(); + let config = Config::default(); + let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let res = render_content("# `Code` text", &context).unwrap(); + assert_eq!(res.body, "

Code text

\n") +} + #[test] fn can_make_valid_relative_link_in_header() { let mut permalinks = HashMap::new(); From 7130616f630646074e40f45c55a3665297da002b Mon Sep 17 00:00:00 2001 From: Peng Guanwen Date: Sun, 6 Jan 2019 19:04:53 +0800 Subject: [PATCH 24/82] Minor fixes --- components/rendering/src/markdown.rs | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index 926d0c9..6b79077 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -54,8 +54,6 @@ fn fix_link(link: &str, context: &RenderContext) -> Result { // - it could be a relative link (starting with `./`) // - it could be a link to a co-located asset // - it could be a normal link - // - any of those can be in a header or not: if it's in a header - // we need to append to a string let result = if link.starts_with("./") { match resolve_internal_link(&link, context.permalinks) { Ok(url) => url, @@ -82,18 +80,18 @@ fn fix_link(link: &str, context: &RenderContext) -> Result { Ok(result) } -fn start_tag(temp_header: &mut TempHeader, tag: &Tag) -> bool { +fn push_start_tag(temp_header: &mut TempHeader, tag: &Tag) -> bool { match tag { Tag::Emphasis => temp_header.add_html(""), Tag::Strong => temp_header.add_html(""), Tag::Code => temp_header.add_html(""), - // Tag::Link is handled elsewhere + // Tag::Link is handled in `markdown_to_html` _ => return false, } true } -fn end_tag(temp_header: &mut TempHeader, tag: &Tag) -> bool { +fn push_end_tag(temp_header: &mut TempHeader, tag: &Tag) -> bool { match tag { Tag::Emphasis => temp_header.add_html(""), Tag::Strong => temp_header.add_html(""), @@ -107,8 +105,8 @@ fn end_tag(temp_header: &mut TempHeader, tag: &Tag) -> bool { /// returns true if event have been processed fn push_to_temp_header(event: &Event, temp_header: &mut TempHeader) -> bool { match event { - Event::Start(tag) => start_tag(temp_header, tag), - Event::End(tag) => end_tag(temp_header, tag), + Event::Start(tag) => push_start_tag(temp_header, tag), + Event::End(tag) => push_end_tag(temp_header, tag), _ => false, } } @@ -140,7 +138,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result Date: Mon, 7 Jan 2019 13:20:19 -0500 Subject: [PATCH 25/82] add id to continue reading p tag (#577) * add id to continue reading p tag --- components/rendering/src/markdown.rs | 2 +- components/rendering/tests/markdown.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index 6b79077..dc409ce 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -16,7 +16,7 @@ use utils::site::resolve_internal_link; use context::RenderContext; use table_of_contents::{make_table_of_contents, Header, TempHeader}; -const CONTINUE_READING: &str = "

\n"; +const CONTINUE_READING: &str = "

\n"; #[derive(Debug)] pub struct Rendered { diff --git a/components/rendering/tests/markdown.rs b/components/rendering/tests/markdown.rs index 4838b6a..6149e4f 100644 --- a/components/rendering/tests/markdown.rs +++ b/components/rendering/tests/markdown.rs @@ -708,7 +708,7 @@ fn can_handle_summaries() { .unwrap(); assert_eq!( res.body, - "

Hello world

\n

\n

Bla bla

\n" + "

Hello world

\n

\n

Bla bla

\n" ); assert_eq!( res.summary_len, From 3d9c27e095e3774ed4071e7cd61d8062ccb00eba Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 7 Jan 2019 19:21:55 +0100 Subject: [PATCH 26/82] Tweak to docs to mention the paragraph id for continue-reading --- CHANGELOG.md | 1 + docs/content/documentation/content/page.md | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 91bc573..9c2d8b2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ - Add support for content in multiple languages - Lower latency on serve before rebuilding from 2 to 1 second - Allow processing PNG and produced images are less blurry +- Add an id (`zola-continue-reading`) ## 0.5.1 (2018-12-14) diff --git a/docs/content/documentation/content/page.md b/docs/content/documentation/content/page.md index 45a6626..fef7f3a 100644 --- a/docs/content/documentation/content/page.md +++ b/docs/content/documentation/content/page.md @@ -102,6 +102,6 @@ where you want the summary to end and the content up to that point will be also available separately in the [template](./documentation/templates/pages-sections.md#page-variables). -An anchor link to this position named `continue-reading` is created so you can link -directly to it if needed for example: +An anchor link to this position named `continue-reading` is created, wrapped in a paragraph +with a `zola-continue-reading` id, so you can link directly to it if needed for example: `Continue Reading` From cae9223ebdaedb024459ffc6c9cc27607eb4eeb6 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 7 Jan 2019 19:24:08 +0100 Subject: [PATCH 27/82] Mention that serve deletes the public dir as well --- docs/content/documentation/getting-started/cli-usage.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/content/documentation/getting-started/cli-usage.md b/docs/content/documentation/getting-started/cli-usage.md index a1a24ea..95267f5 100644 --- a/docs/content/documentation/getting-started/cli-usage.md +++ b/docs/content/documentation/getting-started/cli-usage.md @@ -58,6 +58,8 @@ if you are running zola in a Docker container. In the event you don't want zola to run a local webserver, you can use the `--watch-only` flag. +Before starting, it will delete the public directory to ensure it starts from a clean slate. + ```bash $ zola serve $ zola serve --port 2000 From 538866487b4e79ca04c52256bbeb79df6b298f03 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 7 Jan 2019 21:03:34 +0100 Subject: [PATCH 28/82] Add multilingual taxonomies --- Cargo.lock | 387 +++++++++--------- components/config/src/config.rs | 4 +- components/library/src/taxonomies/mod.rs | 128 +++++- components/site/src/lib.rs | 8 +- components/site/tests/site.rs | 1 + components/site/tests/site_i18n.rs | 14 + components/templates/src/global_fns/mod.rs | 4 +- .../documentation/content/multilingual.md | 3 + .../documentation/content/taxonomies.md | 3 +- test_site_i18n/config.toml | 5 + test_site_i18n/content/blog/something.fr.md | 3 + test_site_i18n/content/blog/something.md | 3 + test_site_i18n/templates/auteurs/list.html | 3 + test_site_i18n/templates/auteurs/single.html | 21 + test_site_i18n/templates/authors/list.html | 3 + test_site_i18n/templates/authors/single.html | 21 + 16 files changed, 404 insertions(+), 207 deletions(-) create mode 100644 test_site_i18n/templates/auteurs/list.html create mode 100644 test_site_i18n/templates/auteurs/single.html create mode 100644 test_site_i18n/templates/authors/list.html create mode 100644 test_site_i18n/templates/authors/single.html diff --git a/Cargo.lock b/Cargo.lock index 0d998f5..df0e952 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3,7 +3,7 @@ name = "MacTypes-sys" version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -18,17 +18,17 @@ dependencies = [ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-signal 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-proto 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-resolver 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -48,12 +48,12 @@ dependencies = [ "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", "tower-service 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-resolver 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -90,7 +90,7 @@ dependencies = [ "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", @@ -99,11 +99,11 @@ dependencies = [ "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -116,7 +116,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -181,7 +181,7 @@ name = "atty" version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -199,7 +199,7 @@ dependencies = [ "autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -210,7 +210,7 @@ version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -359,7 +359,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -367,7 +367,7 @@ name = "core-foundation-sys" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -393,7 +393,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -590,7 +590,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "encoding_rs" -version = "0.8.13" +version = "0.8.14" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -639,7 +639,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -654,7 +654,7 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -664,7 +664,7 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "miniz-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "miniz_oxide_c_api 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -714,7 +714,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -722,7 +722,7 @@ name = "fsevent-sys" version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -818,7 +818,7 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", "string 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -834,7 +834,7 @@ name = "hostname" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "winutil 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -848,7 +848,7 @@ dependencies = [ "markup5ever 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -895,12 +895,12 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", "want 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -914,7 +914,7 @@ dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "hyper 0.12.19 (registry+https://github.com/rust-lang/crates.io-index)", "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -978,10 +978,10 @@ dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "inotify-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -989,7 +989,7 @@ name = "inotify-sys" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -997,7 +997,7 @@ name = "iovec" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1053,7 +1053,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "libc" -version = "0.2.45" +version = "0.2.46" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1152,8 +1152,8 @@ name = "markup5ever" version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "phf 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", - "phf_codegen 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", + "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", + "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1173,7 +1173,7 @@ version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1196,8 +1196,8 @@ version = "2.0.0-alpha.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "mime 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)", - "phf 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", - "phf_codegen 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", + "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", + "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1207,7 +1207,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1225,7 +1225,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "miniz_oxide 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1239,7 +1239,7 @@ dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1264,7 +1264,7 @@ version = "0.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1285,7 +1285,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1302,7 +1302,7 @@ version = "0.2.33" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1322,7 +1322,7 @@ dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1342,7 +1342,7 @@ dependencies = [ "fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "inotify 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1357,7 +1357,7 @@ dependencies = [ "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1396,7 +1396,7 @@ name = "num_cpus" version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1406,7 +1406,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "onig_sys 69.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1416,7 +1416,7 @@ version = "69.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1429,7 +1429,7 @@ dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1444,7 +1444,7 @@ version = "0.9.40" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1457,15 +1457,6 @@ dependencies = [ "stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] -[[package]] -name = "parking_lot" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "parking_lot" version = "0.7.1" @@ -1475,25 +1466,13 @@ dependencies = [ "parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] -[[package]] -name = "parking_lot_core" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "parking_lot_core" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1530,7 +1509,7 @@ dependencies = [ "pest_meta 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1545,33 +1524,33 @@ dependencies = [ [[package]] name = "phf" -version = "0.7.23" +version = "0.7.24" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", + "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "phf_codegen" -version = "0.7.23" +version = "0.7.24" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "phf_generator 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", - "phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", + "phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", + "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "phf_generator" -version = "0.7.23" +version = "0.7.24" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "phf_shared" -version = "0.7.23" +version = "0.7.24" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1647,7 +1626,7 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1658,36 +1637,35 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand" -version = "0.6.1" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_chacha 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_os 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_xorshift 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand_chacha" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ + "autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1719,6 +1697,18 @@ dependencies = [ "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rand_os" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "rand_pcg" version = "0.1.1" @@ -1730,7 +1720,7 @@ dependencies = [ [[package]] name = "rand_xorshift" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1753,7 +1743,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1839,7 +1829,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "encoding_rs 0.8.13 (registry+https://github.com/rust-lang/crates.io-index)", + "encoding_rs 0.8.14 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "hyper 0.12.19 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1852,8 +1842,8 @@ dependencies = [ "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "uuid 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1912,7 +1902,7 @@ name = "sass-rs" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "sass-sys 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1922,7 +1912,7 @@ version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1963,7 +1953,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "core-foundation 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "security-framework-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1974,7 +1964,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "MacTypes-sys 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2002,7 +1992,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2049,7 +2039,7 @@ version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arc-swap 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2110,7 +2100,7 @@ version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2132,7 +2122,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", + "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2144,8 +2134,8 @@ name = "string_cache_codegen" version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "phf_generator 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", - "phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)", + "phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", + "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2174,12 +2164,12 @@ dependencies = [ "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "syn" -version = "0.15.23" +version = "0.15.24" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2194,7 +2184,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2225,8 +2215,8 @@ version = "3.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", "remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2260,7 +2250,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futf 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "utf-8 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", + "utf-8 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2296,7 +2286,7 @@ name = "termion" version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2333,14 +2323,14 @@ name = "time" version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio" -version = "0.1.13" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2349,15 +2339,15 @@ dependencies = [ "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-fs 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-fs 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-uds 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2367,7 +2357,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2376,30 +2366,31 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-executor" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ + "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-fs" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-io" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2409,7 +2400,7 @@ dependencies = [ [[package]] name = "tokio-reactor" -version = "0.1.7" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2418,10 +2409,10 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2430,41 +2421,42 @@ version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "signal-hook 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-tcp" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-threadpool" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ + "crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2475,7 +2467,7 @@ dependencies = [ "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2488,25 +2480,25 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-uds" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2539,10 +2531,10 @@ dependencies = [ "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2562,10 +2554,10 @@ dependencies = [ "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2585,7 +2577,7 @@ dependencies = [ "lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "resolv-conf 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-proto 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2718,7 +2710,7 @@ dependencies = [ [[package]] name = "utf-8" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -2980,7 +2972,7 @@ dependencies = [ "checksum encoding-index-singlebyte 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3351d5acffb224af9ca265f435b859c7c01537c0849754d3db3fdf2bfe2ae84a" "checksum encoding-index-tradchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fd0e20d5688ce3cab59eb3ef3a2083a5c77bf496cb798dc6fcdb75f323890c18" "checksum encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569" -"checksum encoding_rs 0.8.13 (registry+https://github.com/rust-lang/crates.io-index)" = "1a8fa54e6689eb2549c4efed8d00d7f3b2b994a064555b0e8df4ae3764bcc4be" +"checksum encoding_rs 0.8.14 (registry+https://github.com/rust-lang/crates.io-index)" = "a69d152eaa438a291636c1971b0a370212165ca8a75759eb66818c5ce9b538f7" "checksum error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07e791d3be96241c77c43846b665ef1384606da2cd2a48730abe606a12906e02" "checksum error-chain 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6930e04918388a9a2e41d518c25cf679ccafe26733fb4127dbf21993f2575d46" "checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2" @@ -3028,7 +3020,7 @@ dependencies = [ "checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" "checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" -"checksum libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)" = "2d2857ec59fadc0773853c664d2d18e7198e83883e7060b63c924cb077bd5c74" +"checksum libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)" = "023a4cd09b2ff695f9734c1934145a315594b7986398496841c7031a5a1bbdbd" "checksum libflate 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "bff3ac7d6f23730d3b533c35ed75eef638167634476a499feef16c428d74b57b" "checksum linked-hash-map 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7860ec297f7008ff7a1e3382d7f7e1dcd69efc94751a2284bafc3d013c2aa939" "checksum linked-hash-map 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "70fb39025bc7cdd76305867c4eccf2f2dcf6e9a57f5b21a93e1c2d86cd03ec9e" @@ -3069,19 +3061,17 @@ dependencies = [ "checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" "checksum openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)" = "1bb974e77de925ef426b6bc82fce15fd45bdcbeb5728bffcfc7cdeeb7ce1c2d6" "checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13" -"checksum parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5" "checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" -"checksum parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad7f7e6ebdc79edff6fdcb87a55b620174f7a989e3eb31b65231f4af57f00b8c" "checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" "checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" "checksum pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "54f0c72a98d8ab3c99560bfd16df8059cc10e1f9a8e83e6e3b97718dd766e9c3" "checksum pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "833d1ae558dc601e9a60366421196a8d94bc0ac980476d0b67e1d0988d72b2d0" "checksum pest_generator 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "63120576c4efd69615b5537d3d052257328a4ca82876771d6944424ccfd9f646" "checksum pest_meta 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5a3492a4ed208ffc247adcdcc7ba2a95be3104f58877d0d02f0df39bf3efb5e" -"checksum phf 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "cec29da322b242f4c3098852c77a0ca261c9c01b806cae85a5572a1eb94db9a6" -"checksum phf_codegen 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "7d187f00cd98d5afbcd8898f6cf181743a449162aeb329dcd2f3849009e605ad" -"checksum phf_generator 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "03dc191feb9b08b0dc1330d6549b795b9d81aec19efe6b4a45aec8d4caee0c4b" -"checksum phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "b539898d22d4273ded07f64a05737649dc69095d92cb87c7097ec68e3f150b93" +"checksum phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18" +"checksum phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e" +"checksum phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662" +"checksum phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0" "checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c" "checksum plist 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0c7316832d9ac5da02786bdc89a3faf0ca07070212b388766e969078fd593edc" "checksum png 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f54b9600d584d3b8a739e1662a595fab051329eff43f20e7d8cc22872962145b" @@ -3092,14 +3082,15 @@ dependencies = [ "checksum quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "53fa22a1994bd0f9372d7a816207d8a2677ad0325b073f5c5332760f0fb62b5c" "checksum rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8356f47b32624fef5b3301c1be97e5944ecdd595409cc5da11d05f211db6cfbd" "checksum rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e464cd887e869cddcae8792a4ee31d23c7edd516700695608f5b98c67ee0131c" -"checksum rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ae9d223d52ae411a33cf7e54ec6034ec165df296ccd23533d671a28252b6f66a" -"checksum rand_chacha 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "771b009e3a508cb67e8823dda454aaa5368c7bc1c16829fb77d3e980440dd34a" +"checksum rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b65e163105a6284f841bd23100a015895f54340e88a5ffc9ca7b8b33827cfce0" +"checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" "checksum rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1961a422c4d189dfb50ffa9320bf1f2a9bd54ecb92792fb9477f99a1045f3372" "checksum rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0905b6b7079ec73b314d4c748701f6931eb79fd97c668caa3f1899b22b32c6db" "checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" "checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" +"checksum rand_os 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de5ac4de1c2973e1391dc305cb0fbf8788cb58068e98255439b7485a77022273" "checksum rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "086bd09a33c7044e56bb44d5bdde5a60e7f119a9e95b0775f545de759a32fe05" -"checksum rand_xorshift 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "effa3fcaa47e18db002bdde6060944b6d2f9cfd8db471c30e873448ad9187be3" +"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" "checksum rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "373814f27745b2686b350dd261bfd24576a6fb0e2c5919b3a2b6005f820b0473" "checksum rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b055d1e92aba6877574d8fe604a63c8b5df60f60e5982bf7ccbb1338ea527356" "checksum redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)" = "52ee9a534dc1301776eff45b4fa92d2c39b1d8c3d3357e6eb593e0d795506fc2" @@ -3145,7 +3136,7 @@ dependencies = [ "checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550" "checksum strum 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f6c3a2071519ab6a48f465808c4c1ffdd00dfc8e93111d02b4fc5abab177676e" "checksum strum_macros 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8baacebd7b7c9b864d83a6ba7a246232983e277b86fa5cdec77f565715a4b136" -"checksum syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)" = "9545a6a093a3f0bd59adb472700acc08cad3776f860f16a897dfce8c88721cbc" +"checksum syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)" = "734ecc29cd36e8123850d9bf21dfd62ef8300aaa8f879aabaa899721808be37c" "checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" "checksum syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e02dd9df97a68a2d005ace28ff24c610abfc3ce17afcfdb22a077645dabb599a" "checksum tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "7e91405c14320e5c79b3d148e1c86f40749a36e490642202a31689cb1a3452b2" @@ -3157,19 +3148,19 @@ dependencies = [ "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" "checksum tiff 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a2cc6c4fd13cb1cfd20abdb196e794ceccb29371855b7e7f575945f920a5b3c2" "checksum time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)" = "847da467bf0db05882a9e2375934a8a55cffdc9db0d128af1518200260ba1f6c" -"checksum tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "a7817d4c98cc5be21360b3b37d6036fe9b7aefa5b7a201b7b16ff33423822f7d" +"checksum tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4790d0be6f4ba6ae4f48190efa2ed7780c9e3567796abdb285003cf39840d9c5" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" "checksum tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "331c8acc267855ec06eb0c94618dcbbfea45bed2d20b77252940095273fb58f6" -"checksum tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c117b6cf86bb730aab4834f10df96e4dd586eff2c3c27d3781348da49e255bde" -"checksum tokio-fs 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "60ae25f6b17d25116d2cba342083abe5255d3c2c79cb21ea11aa049c53bf7c75" -"checksum tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "7392fe0a70d5ce0c882c4778116c519bd5dbaa8a7c3ae3d04578b3afafdcda21" -"checksum tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "502b625acb4ee13cbb3b90b8ca80e0addd263ddacf6931666ef751e610b07fb5" +"checksum tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30c6dbf2d1ad1de300b393910e8a3aa272b724a400b6531da03eed99e329fbf0" +"checksum tokio-fs 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0e9cbbc8a3698b7ab652340f46633364f9eaa928ddaaee79d8b8f356dd79a09d" +"checksum tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "b53aeb9d3f5ccf2ebb29e19788f96987fa1355f8fe45ea193928eaaaf3ae820f" +"checksum tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "afbcdb0f0d2a1e4c440af82d7bbf0bf91a8a8c0575bcd20c05d15be7e9d3a02f" "checksum tokio-signal 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "dd6dc5276ea05ce379a16de90083ec80836440d5ef8a6a39545a3207373b8296" -"checksum tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7ad235e9dadd126b2d47f6736f65aa1fdcd6420e66ca63f44177bc78df89f912" -"checksum tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "56c5556262383032878afad66943926a1d1f0967f17e94bd7764ceceb3b70e7f" +"checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119" +"checksum tokio-threadpool 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "17465013014410310f9f61fa10bf4724803c149ea1d51efece131c38efca93aa" "checksum tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "4f37f0111d76cc5da132fe9bc0590b9b9cfd079bc7e75ac3846278430a299ff8" "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92" -"checksum tokio-uds 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "99ce87382f6c1a24b513a72c048b2c8efe66cb5161c9061d00bee510f08dc168" +"checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" "checksum tower-service 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b32f72af77f1bfe3d3d4da8516a238ebe7039b51dd8637a09841ac7f16d2c987" "checksum trust-dns-proto 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0838272e89f1c693b4df38dc353412e389cf548ceed6f9fd1af5a8d6e0e7cf74" @@ -3194,7 +3185,7 @@ dependencies = [ "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" "checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" -"checksum utf-8 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)" = "bab35f71693630bb1953dce0f2bcd780e7cde025027124a202ac08a45ba25141" +"checksum utf-8 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "05e42f7c18b8f902290b009cde6d651262f956c98bc51bca4cd1d511c9cd85c7" "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" "checksum uuid 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dab5c5526c5caa3d106653401a267fed923e7046f35895ffcb5ca42db64942e6" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" diff --git a/components/config/src/config.rs b/components/config/src/config.rs index 8e556df..57c8284 100644 --- a/components/config/src/config.rs +++ b/components/config/src/config.rs @@ -42,6 +42,8 @@ pub struct Taxonomy { pub paginate_path: Option, /// Whether to generate a RSS feed only for each taxonomy term, defaults to false pub rss: bool, + /// The language for that taxonomy, only used in multilingual sites + pub lang: Option, } impl Taxonomy { @@ -64,7 +66,7 @@ impl Taxonomy { impl Default for Taxonomy { fn default() -> Taxonomy { - Taxonomy { name: String::new(), paginate_by: None, paginate_path: None, rss: false } + Taxonomy { name: String::new(), paginate_by: None, paginate_path: None, rss: false, lang: None } } } diff --git a/components/library/src/taxonomies/mod.rs b/components/library/src/taxonomies/mod.rs index f270890..6b74f9c 100644 --- a/components/library/src/taxonomies/mod.rs +++ b/components/library/src/taxonomies/mod.rs @@ -48,7 +48,7 @@ pub struct TaxonomyItem { } impl TaxonomyItem { - pub fn new(name: &str, path: &str, config: &Config, keys: Vec, library: &Library) -> Self { + pub fn new(name: &str, taxonomy: &TaxonomyConfig, config: &Config, keys: Vec, library: &Library) -> Self { // Taxonomy are almost always used for blogs so we filter by dates // and it's not like we can sort things across sections by anything other // than dates @@ -64,7 +64,11 @@ impl TaxonomyItem { .collect(); let (mut pages, ignored_pages) = sort_pages_by_date(data); let slug = slugify(name); - let permalink = config.make_permalink(&format!("/{}/{}", path, slug)); + let permalink = if let Some(ref lang) = taxonomy.lang { + config.make_permalink(&format!("/{}/{}/{}", lang, taxonomy.name, slug)) + } else { + config.make_permalink(&format!("/{}/{}", taxonomy.name, slug)) + }; // We still append pages without dates at the end pages.extend(ignored_pages); @@ -108,7 +112,7 @@ impl Taxonomy { ) -> Taxonomy { let mut sorted_items = vec![]; for (name, pages) in items { - sorted_items.push(TaxonomyItem::new(&name, &kind.name, config, pages, library)); + sorted_items.push(TaxonomyItem::new(&name, &kind, config, pages, library)); } sorted_items.sort_by(|a, b| a.name.cmp(&b.name)); @@ -186,6 +190,14 @@ pub fn find_taxonomies(config: &Config, library: &Library) -> Result t = Some(x), + "categories" => c = Some(x), + "auteurs" => a = Some(x), + _ => unreachable!(), + } + } + (t.unwrap(), c.unwrap(), a.unwrap()) + }; + + assert_eq!(tags.items.len(), 2); + assert_eq!(categories.items.len(), 2); + assert_eq!(authors.items.len(), 1); + + 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].pages.len(), 1); + + assert_eq!(tags.items[1].name, "rust"); + assert_eq!(tags.items[1].slug, "rust"); + assert_eq!(tags.items[1].permalink, "http://a-website.com/tags/rust/"); + assert_eq!(tags.items[1].pages.len(), 2); + + assert_eq!(authors.items[0].name, "Vincent Prouillet"); + assert_eq!(authors.items[0].slug, "vincent-prouillet"); + assert_eq!(authors.items[0].permalink, "http://a-website.com/fr/auteurs/vincent-prouillet/"); + assert_eq!(authors.items[0].pages.len(), 1); + + assert_eq!(categories.items[0].name, "Other"); + assert_eq!(categories.items[0].slug, "other"); + assert_eq!(categories.items[0].permalink, "http://a-website.com/categories/other/"); + assert_eq!(categories.items[0].pages.len(), 1); + + assert_eq!(categories.items[1].name, "Programming tutorials"); + assert_eq!(categories.items[1].slug, "programming-tutorials"); + assert_eq!( + categories.items[1].permalink, + "http://a-website.com/categories/programming-tutorials/" + ); + assert_eq!(categories.items[1].pages.len(), 1); + } + + #[test] + fn errors_on_taxonomy_of_different_language() { + let mut config = Config::default(); + config.languages.push(Language {rss: false, code: "fr".to_string()}); + let mut library = Library::new(2, 0, false); + + config.taxonomies = + vec![TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }]; + + let mut page1 = Page::default(); + page1.lang = Some("fr".to_string()); + let mut taxo_page1 = HashMap::new(); + taxo_page1.insert("tags".to_string(), vec!["rust".to_string(), "db".to_string()]); + page1.meta.taxonomies = taxo_page1; + library.insert_page(page1); + + let taxonomies = find_taxonomies(&config, &library); + assert!(taxonomies.is_err()); + let err = taxonomies.unwrap_err(); + // no path as this is created by Default + assert_eq!( + err.description(), + "Page `` has taxonomy `tags` which is not available in that language" + ); + } } diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index a7fbb4c..2308cbc 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -723,7 +723,13 @@ impl Site { } ensure_directory_exists(&self.output_path)?; - let output_path = self.output_path.join(&taxonomy.kind.name); + let output_path = if let Some(ref lang) = taxonomy.kind.lang { + let mid_path = self.output_path.join(lang); + create_directory(&mid_path)?; + mid_path.join(&taxonomy.kind.name) + } else { + self.output_path.join(&taxonomy.kind.name) + }; let list_output = taxonomy.render_all_terms(&self.tera, &self.config, &self.library)?; create_directory(&output_path)?; create_file(&output_path.join("index.html"), &self.inject_livereload(list_output))?; diff --git a/components/site/tests/site.rs b/components/site/tests/site.rs index f347bc7..b1cab79 100644 --- a/components/site/tests/site.rs +++ b/components/site/tests/site.rs @@ -479,6 +479,7 @@ fn can_build_site_with_pagination_for_taxonomy() { paginate_by: Some(2), paginate_path: None, rss: true, + lang: None, }); site.load().unwrap(); diff --git a/components/site/tests/site_i18n.rs b/components/site/tests/site_i18n.rs index cba0002..9023a73 100644 --- a/components/site/tests/site_i18n.rs +++ b/components/site/tests/site_i18n.rs @@ -125,4 +125,18 @@ fn can_build_multilingual_site() { assert!(file_contains!(public, "fr/rss.xml", "https://example.com/fr/blog/something-else/")); // Italian doesn't have RSS enabled assert!(!file_exists!(public, "it/rss.xml")); + + // Taxonomies are per-language + assert!(file_exists!(public, "authors/index.html")); + assert!(file_contains!(public, "authors/index.html", "Queen")); + assert!(!file_contains!(public, "authors/index.html", "Vincent")); + assert!(!file_exists!(public, "auteurs/index.html")); + assert!(file_exists!(public, "authors/queen-elizabeth/rss.xml")); + + assert!(!file_exists!(public, "fr/authors/index.html")); + assert!(file_exists!(public, "fr/auteurs/index.html")); + assert!(!file_contains!(public, "fr/auteurs/index.html", "Queen")); + assert!(file_contains!(public, "fr/auteurs/index.html", "Vincent")); + assert!(!file_exists!(public, "fr/auteurs/vincent-prouillet/rss.xml")); + } diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index 24ba393..310b265 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -297,7 +297,7 @@ mod tests { fn can_get_taxonomy() { let taxo_config = TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; let library = Library::new(0, 0, false); - let tag = TaxonomyItem::new("Programming", "tags", &Config::default(), vec![], &library); + let tag = TaxonomyItem::new("Programming", &taxo_config, &Config::default(), vec![], &library); let tags = Taxonomy { kind: taxo_config, items: vec![tag] }; let taxonomies = vec![tags.clone()]; @@ -336,7 +336,7 @@ mod tests { fn can_get_taxonomy_url() { let taxo_config = TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; let library = Library::new(0, 0, false); - let tag = TaxonomyItem::new("Programming", "tags", &Config::default(), vec![], &library); + let tag = TaxonomyItem::new("Programming", &taxo_config, &Config::default(), vec![], &library); let tags = Taxonomy { kind: taxo_config, items: vec![tag] }; let taxonomies = vec![tags.clone()]; diff --git a/docs/content/documentation/content/multilingual.md b/docs/content/documentation/content/multilingual.md index 5dd1aaa..d788972 100644 --- a/docs/content/documentation/content/multilingual.md +++ b/docs/content/documentation/content/multilingual.md @@ -16,6 +16,9 @@ languages = [ ] ``` +If you want to use per-language taxonomies, ensure you set the `lang` field in their +configuration. + ## Content Once the languages are added in, you can start to translate your content. Zola uses the filename to detect the language: diff --git a/docs/content/documentation/content/taxonomies.md b/docs/content/documentation/content/taxonomies.md index 20c0f98..b446fa0 100644 --- a/docs/content/documentation/content/taxonomies.md +++ b/docs/content/documentation/content/taxonomies.md @@ -7,13 +7,14 @@ Zola has built-in support for taxonomies. The first step is to define the taxonomies in your [config.toml](./documentation/getting-started/configuration.md). -A taxonomy has 4 variables: +A taxonomy has 5 variables: - `name`: a required string that will be used in the URLs, usually the plural version (i.e. tags, categories etc) - `paginate_by`: if this is set to a number, each term page will be paginated by this much. - `paginate_path`: if set, will be the path used by paginated page and the page number will be appended after it. For example the default would be page/1 - `rss`: if set to `true`, a RSS feed will be generated for each individual term. +- `lang`: only set this if you are making a multilingual site and want to indicate which language this taxonomy is for Once this is done, you can then set taxonomies in your content and Zola will pick them up: diff --git a/test_site_i18n/config.toml b/test_site_i18n/config.toml index 0a6635a..98be3c6 100644 --- a/test_site_i18n/config.toml +++ b/test_site_i18n/config.toml @@ -13,6 +13,11 @@ build_search_index = false generate_rss = true +taxonomies = [ + {name = "authors", rss = true}, + {name = "auteurs", lang = "fr"}, +] + languages = [ {code = "fr", rss = true}, {code = "it", rss = false}, diff --git a/test_site_i18n/content/blog/something.fr.md b/test_site_i18n/content/blog/something.fr.md index bfb19b8..22579a8 100644 --- a/test_site_i18n/content/blog/something.fr.md +++ b/test_site_i18n/content/blog/something.fr.md @@ -1,6 +1,9 @@ +++ title = "Quelque chose" date = 2018-10-09 + +[taxonomies] +auteurs = ["Vincent Prouillet"] +++ Un article diff --git a/test_site_i18n/content/blog/something.md b/test_site_i18n/content/blog/something.md index ee990de..587edd8 100644 --- a/test_site_i18n/content/blog/something.md +++ b/test_site_i18n/content/blog/something.md @@ -1,6 +1,9 @@ +++ title = "Something" date = 2018-10-09 + +[taxonomies] +authors = ["Queen Elizabeth"] +++ A blog post diff --git a/test_site_i18n/templates/auteurs/list.html b/test_site_i18n/templates/auteurs/list.html new file mode 100644 index 0000000..5dfaaf8 --- /dev/null +++ b/test_site_i18n/templates/auteurs/list.html @@ -0,0 +1,3 @@ +{% for author in terms %} + {{ author.name }} {{ author.slug }} {{ author.pages | length }} +{% endfor %} diff --git a/test_site_i18n/templates/auteurs/single.html b/test_site_i18n/templates/auteurs/single.html new file mode 100644 index 0000000..0c3f8fb --- /dev/null +++ b/test_site_i18n/templates/auteurs/single.html @@ -0,0 +1,21 @@ +{% if not paginator %} + Tag: {{ term.name }} + + {% for page in term.pages %} + + {% endfor %} +{% else %} + Tag: {{ term.name }} + {% for page in paginator.pages %} + {{page.title|safe}} + {% endfor %} + Num pagers: {{ paginator.number_pagers }} + Page size: {{ paginator.paginate_by }} + Current index: {{ paginator.current_index }} + First: {{ paginator.first | safe }} + Last: {{ paginator.last | safe }} + {% if paginator.previous %}has_prev{% endif%} + {% if paginator.next %}has_next{% endif%} +{% endif %} diff --git a/test_site_i18n/templates/authors/list.html b/test_site_i18n/templates/authors/list.html new file mode 100644 index 0000000..3b8116f --- /dev/null +++ b/test_site_i18n/templates/authors/list.html @@ -0,0 +1,3 @@ +{% for term in terms %} + {{ term.name }} {{ term.slug }} {{ term.pages | length }} +{% endfor %} diff --git a/test_site_i18n/templates/authors/single.html b/test_site_i18n/templates/authors/single.html new file mode 100644 index 0000000..0c3f8fb --- /dev/null +++ b/test_site_i18n/templates/authors/single.html @@ -0,0 +1,21 @@ +{% if not paginator %} + Tag: {{ term.name }} + + {% for page in term.pages %} + + {% endfor %} +{% else %} + Tag: {{ term.name }} + {% for page in paginator.pages %} + {{page.title|safe}} + {% endfor %} + Num pagers: {{ paginator.number_pagers }} + Page size: {{ paginator.paginate_by }} + Current index: {{ paginator.current_index }} + First: {{ paginator.first | safe }} + Last: {{ paginator.last | safe }} + {% if paginator.previous %}has_prev{% endif%} + {% if paginator.next %}has_next{% endif%} +{% endif %} From c027cd97d6f2ba1942825247fffbd4dc0028a808 Mon Sep 17 00:00:00 2001 From: Peng Guanwen Date: Sat, 12 Jan 2019 16:55:52 +0800 Subject: [PATCH 29/82] Footnote is now supported in headers This fixes #569 . `markdown_to_html` is heavily refactored, header-related things is handled in a second pass. --- components/rendering/src/markdown.rs | 180 +++++++++--------- components/rendering/src/table_of_contents.rs | 48 ----- components/rendering/tests/markdown.rs | 37 +++- components/utils/src/lib.rs | 1 + components/utils/src/vec.rs | 44 +++++ 5 files changed, 167 insertions(+), 143 deletions(-) create mode 100644 components/utils/src/vec.rs diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index dc409ce..f01eb29 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -1,22 +1,25 @@ use std::borrow::Cow::{Borrowed, Owned}; -use self::cmark::{Event, Options, Parser, Tag}; use pulldown_cmark as cmark; use slug::slugify; use syntect::easy::HighlightLines; use syntect::html::{ - start_highlighted_html_snippet, styled_line_to_highlighted_html, IncludeBackground, + IncludeBackground, start_highlighted_html_snippet, styled_line_to_highlighted_html, }; use config::highlighting::{get_highlighter, SYNTAX_SET, THEME_SET}; +use context::RenderContext; use errors::Result; +use front_matter::InsertAnchor; use link_checker::check_url; +use table_of_contents::{Header, make_table_of_contents, TempHeader}; use utils::site::resolve_internal_link; +use utils::vec::InsertMany; -use context::RenderContext; -use table_of_contents::{make_table_of_contents, Header, TempHeader}; +use self::cmark::{Event, Options, Parser, Tag}; const CONTINUE_READING: &str = "

\n"; +const ANCHOR_LINK_TEMPLATE: &str = "anchor-link.html"; #[derive(Debug)] pub struct Rendered { @@ -25,6 +28,18 @@ pub struct Rendered { pub toc: Vec
, } +struct HeaderIndex { + start: usize, + end: usize, + level: i32, +} + +impl HeaderIndex { + fn new(start: usize, level: i32) -> HeaderIndex { + HeaderIndex { start, end: 0, level } + } +} + // We might have cases where the slug is already present in our list of anchor // for example an article could have several titles named Example // We add a counter after the slug if the slug is already present, which @@ -65,7 +80,8 @@ fn fix_link(link: &str, context: &RenderContext) -> Result { format!("{}{}", context.current_page_permalink, link) } else if context.config.check_external_links && !link.starts_with('#') - && !link.starts_with("mailto:") { + && !link.starts_with("mailto:") + { let res = check_url(&link); if res.is_valid() { link.to_string() @@ -80,35 +96,36 @@ fn fix_link(link: &str, context: &RenderContext) -> Result { Ok(result) } -fn push_start_tag(temp_header: &mut TempHeader, tag: &Tag) -> bool { - match tag { - Tag::Emphasis => temp_header.add_html(""), - Tag::Strong => temp_header.add_html(""), - Tag::Code => temp_header.add_html(""), - // Tag::Link is handled in `markdown_to_html` - _ => return false, - } - true -} +/// get only text in a slice of events +fn get_text(parser_slice: &[Event]) -> String { + let mut title = String::new(); -fn push_end_tag(temp_header: &mut TempHeader, tag: &Tag) -> bool { - match tag { - Tag::Emphasis => temp_header.add_html(""), - Tag::Strong => temp_header.add_html(""), - Tag::Code => temp_header.add_html(""), - Tag::Link(_, _) => temp_header.add_html(""), - _ => return false, + for event in parser_slice.iter() { + if let Event::Text(text) = event { + title += text; + } } - true + + title } -/// returns true if event have been processed -fn push_to_temp_header(event: &Event, temp_header: &mut TempHeader) -> bool { - match event { - Event::Start(tag) => push_start_tag(temp_header, tag), - Event::End(tag) => push_end_tag(temp_header, tag), - _ => false, +fn get_header_indexes(events: &[Event]) -> Vec { + let mut header_indexes = vec![]; + + for (i, event) in events.iter().enumerate() { + match event { + Event::Start(Tag::Header(level)) => { + header_indexes.push(HeaderIndex::new(i, *level)); + } + Event::End(Tag::Header(_)) => { + let msg = "Header end before start?"; + header_indexes.last_mut().expect(msg).end = i; + } + _ => (), + } } + + header_indexes } pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { @@ -119,17 +136,9 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result = None; - // If we get text in header, we need to insert the id and a anchor - let mut in_header = false; - // pulldown_cmark can send several text events for a title if there are markdown - // specific characters like `!` in them. We only want to insert the anchor the first time - let mut header_created = false; - let mut anchors: Vec = vec![]; - - let mut headers = vec![]; - // Defaults to a 0 level so not a real header - // It should be an Option ideally but not worth the hassle to update - let mut temp_header = TempHeader::default(); + + let mut inserted_anchors: Vec = vec![]; + let mut headers: Vec = vec![]; let mut opts = Options::empty(); let mut has_summary = false; @@ -137,26 +146,9 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { - // Header first - if in_header { - if header_created { - temp_header.add_text(&text); - return Event::Html(Borrowed("")); - } - // += as we might have some or other things already there - temp_header.add_text(&text); - header_created = true; - return Event::Html(Borrowed("")); - } - // if we are in the middle of a code block if let Some((ref mut highlighter, in_extra)) = highlighter { let highlighted = if in_extra { @@ -217,47 +209,55 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result", fixed_link) - } else { - format!("", fixed_link, title) - }; - temp_header.add_html(&html); - return Event::Html(Borrowed("")); - } - Event::Start(Tag::Link(Owned(fixed_link), title)) } - Event::Start(Tag::Header(num)) => { - in_header = true; - temp_header = TempHeader::new(num); - Event::Html(Borrowed("")) - } - Event::End(Tag::Header(_)) => { - // End of a header, reset all the things and return the header string - - let id = find_anchor(&anchors, slugify(&temp_header.title), 0); - anchors.push(id.clone()); - temp_header.permalink = format!("{}#{}", context.current_page_permalink, id); - temp_header.id = id; - - in_header = false; - header_created = false; - let val = temp_header.to_string(context.tera, context.insert_anchor); - headers.push(temp_header.clone()); - temp_header = TempHeader::default(); - Event::Html(Owned(val)) - } Event::Html(ref markup) if markup.contains("") => { has_summary = true; Event::Html(Borrowed(CONTINUE_READING)) } _ => event, } - }); + }).collect::>(); // We need to collect the events to make a second pass + + let mut header_indexes = get_header_indexes(&events); + + let mut anchors_to_insert = vec![]; + + for header_idx in header_indexes { + let start_idx = header_idx.start; + let end_idx = header_idx.end; + let title = get_text(&events[start_idx + 1 .. end_idx]); + let id = find_anchor(&inserted_anchors, slugify(&title), 0); + inserted_anchors.push(id.clone()); + + // insert `id` to the tag + let html = format!("", lvl = header_idx.level, id = id); + events[start_idx] = Event::Html(Owned(html)); + + // generate anchors and places to insert them + if context.insert_anchor != InsertAnchor::None { + let anchor_idx = match context.insert_anchor { + InsertAnchor::Left => start_idx + 1, + InsertAnchor::Right => end_idx, + InsertAnchor::None => 0, // Not important + }; + let mut c = tera::Context::new(); + c.insert("id", &id); + let anchor_link = context.tera.render(ANCHOR_LINK_TEMPLATE, &c).unwrap(); + anchors_to_insert.push((anchor_idx, Event::Html(Owned(anchor_link)))); + } + + // record header to make table of contents + let permalink = format!("{}#{}", context.current_page_permalink, id); + let temp_header = TempHeader { level: header_idx.level, id, permalink, title }; + headers.push(temp_header); + } + + if context.insert_anchor != InsertAnchor::None { + events.insert_many(anchors_to_insert); + } - cmark::html::push_html(&mut html, parser); + cmark::html::push_html(&mut html, events.into_iter()); } if let Some(e) = error { diff --git a/components/rendering/src/table_of_contents.rs b/components/rendering/src/table_of_contents.rs index 5cc115e..777d5f2 100644 --- a/components/rendering/src/table_of_contents.rs +++ b/components/rendering/src/table_of_contents.rs @@ -1,6 +1,3 @@ -use front_matter::InsertAnchor; -use tera::{Context as TeraContext, Tera}; - #[derive(Debug, PartialEq, Clone, Serialize)] pub struct Header { #[serde(skip_serializing)] @@ -30,7 +27,6 @@ pub struct TempHeader { pub id: String, pub permalink: String, pub title: String, - pub html: String, } impl TempHeader { @@ -40,50 +36,6 @@ impl TempHeader { id: String::new(), permalink: String::new(), title: String::new(), - html: String::new(), - } - } - - pub fn add_html(&mut self, val: &str) { - self.html += val; - } - - pub fn add_text(&mut self, val: &str) { - self.html += val; - self.title += val; - } - - /// Transform all the information we have about this header into the HTML string for it - pub fn to_string(&self, tera: &Tera, insert_anchor: InsertAnchor) -> String { - let anchor_link = if insert_anchor != InsertAnchor::None { - let mut c = TeraContext::new(); - c.insert("id", &self.id); - tera.render("anchor-link.html", &c).unwrap() - } else { - String::new() - }; - - match insert_anchor { - InsertAnchor::None => format!( - "{t}\n", - lvl = self.level, - t = self.html, - id = self.id - ), - InsertAnchor::Left => format!( - "{a}{t}\n", - lvl = self.level, - a = anchor_link, - t = self.html, - id = self.id - ), - InsertAnchor::Right => format!( - "{t}{a}\n", - lvl = self.level, - a = anchor_link, - t = self.html, - id = self.id - ), } } } diff --git a/components/rendering/tests/markdown.rs b/components/rendering/tests/markdown.rs index 6149e4f..a85829d 100644 --- a/components/rendering/tests/markdown.rs +++ b/components/rendering/tests/markdown.rs @@ -375,6 +375,19 @@ fn can_insert_anchor_right() { ); } +#[test] +fn can_insert_anchor_for_multi_header() { + let permalinks_ctx = HashMap::new(); + let config = Config::default(); + let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::Right); + let res = render_content("# Hello\n# World", &context).unwrap(); + assert_eq!( + res.body, + "

Hello🔗\n

\n\ +

World🔗\n

\n" + ); +} + // See https://github.com/Keats/gutenberg/issues/42 #[test] fn can_insert_anchor_with_exclamation_mark() { @@ -528,7 +541,7 @@ fn can_understand_emphasis_in_header() { let config = Config::default(); let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); let res = render_content("# *Emphasis* text", &context).unwrap(); - assert_eq!(res.body, "

Emphasis text

\n") + assert_eq!(res.body, "

Emphasis text

\n"); } #[test] @@ -537,7 +550,7 @@ fn can_understand_strong_in_header() { let config = Config::default(); let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); let res = render_content("# **Strong** text", &context).unwrap(); - assert_eq!(res.body, "

Strong text

\n") + assert_eq!(res.body, "

Strong text

\n"); } #[test] @@ -546,7 +559,21 @@ fn can_understand_code_in_header() { let config = Config::default(); let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); let res = render_content("# `Code` text", &context).unwrap(); - assert_eq!(res.body, "

Code text

\n") + assert_eq!(res.body, "

Code text

\n"); +} + +// See https://github.com/getzola/zola/issues/569 +#[test] +fn can_understand_footnote_in_header() { + let permalinks_ctx = HashMap::new(); + let config = Config::default(); + let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); + let res = render_content("# text [^1] there\n[^1]: footnote", &context).unwrap(); + assert_eq!(res.body, r##"

text 1 there

+
1 +

footnote

+
+"##); } #[test] @@ -641,8 +668,8 @@ fn can_validate_valid_external_links() { &permalinks_ctx, InsertAnchor::None, ); - let res = render_content("[a link](http://google.com)", &context).unwrap(); - assert_eq!(res.body, "

a link

\n"); + let res = render_content("[a link](http://bing.com)", &context).unwrap(); + assert_eq!(res.body, "

a link

\n"); } #[test] diff --git a/components/utils/src/lib.rs b/components/utils/src/lib.rs index 25581e8..8e462cc 100644 --- a/components/utils/src/lib.rs +++ b/components/utils/src/lib.rs @@ -14,3 +14,4 @@ pub mod fs; pub mod net; pub mod site; pub mod templates; +pub mod vec; diff --git a/components/utils/src/vec.rs b/components/utils/src/vec.rs new file mode 100644 index 0000000..eac02dc --- /dev/null +++ b/components/utils/src/vec.rs @@ -0,0 +1,44 @@ +pub trait InsertMany { + type Element; + fn insert_many(&mut self, elem_to_insert: Vec<(usize, Self::Element)>); +} + +impl InsertMany for Vec { + type Element = T; + + /// Efficiently insert multiple element in their specified index. + /// The index should be sorted in ascending order. + /// + /// This is done in O(n) time. + fn insert_many(&mut self, elem_to_insert: Vec<(usize, T)>) { + let mut inserted = vec![]; + let mut last_idx = 0; + + for (idx, elem) in elem_to_insert.into_iter() { + let head_len = idx - last_idx; + inserted.extend(self.splice(0 .. head_len, std::iter::empty())); + inserted.push(elem); + last_idx = idx; + } + let len = self.len(); + inserted.extend(self.drain(0..len)); + + *self = inserted; + } +} + +#[cfg(test)] +mod test { + use super::InsertMany; + + #[test] + fn insert_many_works() { + let mut v = vec![1, 2, 3, 4, 5]; + v.insert_many(vec![(0, 0), (2, -1), (5, 6)]); + assert_eq!(v, &[0, 1, 2, -1, 3, 4, 5, 6]); + + let mut v2 = vec![1, 2, 3, 4, 5]; + v2.insert_many(vec![(0, 0), (2, -1)]); + assert_eq!(v2, &[0, 1, 2, -1, 3, 4, 5]); + } +} \ No newline at end of file From 80786a2fbbcc7760bd522ad59ce907b8a1c759c4 Mon Sep 17 00:00:00 2001 From: Peng Guanwen Date: Sat, 12 Jan 2019 17:25:01 +0800 Subject: [PATCH 30/82] Revert accidentally change --- components/rendering/tests/markdown.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/components/rendering/tests/markdown.rs b/components/rendering/tests/markdown.rs index a85829d..aaa108f 100644 --- a/components/rendering/tests/markdown.rs +++ b/components/rendering/tests/markdown.rs @@ -668,8 +668,8 @@ fn can_validate_valid_external_links() { &permalinks_ctx, InsertAnchor::None, ); - let res = render_content("[a link](http://bing.com)", &context).unwrap(); - assert_eq!(res.body, "

a link

\n"); + let res = render_content("[a link](http://google.com)", &context).unwrap(); + assert_eq!(res.body, "

a link

\n"); } #[test] From 0bcc706a55bb74b2c71aef9153156beb9abb9433 Mon Sep 17 00:00:00 2001 From: Ryan McGrath Date: Tue, 15 Jan 2019 14:20:47 -0800 Subject: [PATCH 31/82] One more time, Dracula theme, lol --- .../getting-started/configuration.md | 1 + sublime_themes/all.themedump | Bin 21844 -> 22646 bytes sublime_themes/dracula.tmTheme | 938 ++++++++++++++++++ 3 files changed, 939 insertions(+) create mode 100755 sublime_themes/dracula.tmTheme diff --git a/docs/content/documentation/getting-started/configuration.md b/docs/content/documentation/getting-started/configuration.md index 2acba61..0ce7b32 100644 --- a/docs/content/documentation/getting-started/configuration.md +++ b/docs/content/documentation/getting-started/configuration.md @@ -108,6 +108,7 @@ Zola currently has the following highlight themes available: - [classic-modified](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Classic%20Modified) - [demain](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Demain) - [dimmed-fluid](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Dimmed%20Fluid) +- [dracula](https://draculatheme.com/) - [gray-matter-dark](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Gray%20Matter%20Dark) - [gruvbox-dark](https://github.com/morhetz/gruvbox) - [gruvbox-light](https://github.com/morhetz/gruvbox) diff --git a/sublime_themes/all.themedump b/sublime_themes/all.themedump index 25e76899c4cfc54f738a89f3ced372613e90a89a..e47484f465ec56ddae17ebf86c77aaa041970213 100644 GIT binary patch literal 22646 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 ByjuVO literal 21844 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%0AsXB;S9%Xn~Z_ zi;#STUbKWSqcFQv1UV0jH{xCqVB}`qYH=D$ldvT`)GVFwVc-R!MqCyKUqJFx8?sqS z$nijk&D_%@lMu@%(eu%*BCG~NoQ=V&Aj#uZhU6P@vPnuX@Pey^uU+eyD&aOx+4&#J z92Sv-!SA2x7ECFE_8Tq#J(PXm74h7;`ClfjWe*WqA_Df*9C(3r+I`>MgfYO-ob0)r{it><hQbJ7_WwMktO&EbLLa&$!6M62ZAoJRbsoZ6+tz8 zh1w>JoR*15z7}q-S5?n26ZL2Mn<8oE3kg+?!Hx^0Rc0t8U$B?cymO~h{gM1+^5vxt z{wO_QXIwrbU?Mq$;TOKcweR4d(Nr|}W6^b8KKXznnm&!c3gwVEw|;Ho90<_4O5yKP z2&S_itvUI5KSbd)5JioW?wfdxnPDs*)?zX-3VL&z&6yl1`-X&eH0YbJUVow=Ga0+# zI+vB|5a-pV|EnF2#}cRj?93^{^BpFU^TiQGt&kTQTszVXkE7|rC0hQmQ^F5+KGxd^ z89vE|NY^cfgaveN{zQ8-I@#w|V99LQIKGMw)GObxJx@xt?StqlvsqKI14Yyf<{JnC z{q+o$K6r-ea0R|{eR-As$8SsdQC0sQuJgZJz8NQlVox_X$NaGGjUs*(x8mMSwtB#{ z8V?nZe;u`{Gg-R6vb)_8;94b>g7rkpL$(|FQ;PqP4}TSV3hFuU@SCokxT1tm#kl^B zyndjSde(OB_)IQdf==)=r;`X$qTasp*=>_8QH~ycIT~4!|)H*54c~3N- zdEE?+MYFL3bvBU8EmG3CB4!zf-bEz5OFKBN@ZF@ zmGWLr5}Qr~DS7=6o-s%_cfy>;stuT=dn;3on3P6bxF>5yJKnQ=hS*+fN!GqA73;tu zKc4U1X-;O(^6i5c2g$9Dq)DpX!r#~`Ur)bby|q%z2zisgtCEXcQ3FC$pT>@d z$vBDCYHKjWJ0k=oWwi~ZoP0}MnDTB{kCL_<-2YL>@ z;y(gUAy$$=;Hg!aK6jWhkak&(^k2B$MpHK^Mm;^A@ez)Gl%e~TJV1Z?4PSm0awO+K zy%R9~I0?V?1I!~)ThqDx8vtRr$83%1h|vy8}SL zChOvT>w%#7JAln031KZUwRB6yWGM#51_y&BIcu$_P*W)Jb)2- z6P@bVZ%c|NJg)jimNpCSM5=dLsCtnJ=OwJ~^Civ&wJF%at(x^Jnn5wiGit zPhMqICl)>21vgnVE1!N~t}l=Bjk6pcj%^BZ>U1G>y;)!)sdvi&N;Ubo?0l;LN+*Xb zp`a}{?6;B@0P#8g!RosTVdI7vjy~kI?S?hiTq12>-kYNI@3+>2ovG5S4TUCa71PSa z^Yf#)x!<>>_nrMn7Je%Ry(VJ`@uMoDr%t|omvt$|B~`NS@4Iqc>q^dnne+=9jZaY$ zb|99@IuAn*9qt^pQ)=V;a_PiL9y{%UXmO$Sr+iAI-r53xigF6>h|74RwIwp9sVhG* z_cGOzieP=x_1l;~E`8;^)vMl%I6qH->Q?NLF8&Lg0}GQ8jlY+%JAHH zD1=^iA-)ok@4;;&GBW>)&H3zjNq^s0N&jAwp8SDl&3ZQ?sb76GM*S>LV`ro;P*Z&P$@pJ~;>Ah+47oro~^nTjLlD1yq^k?(P zGVcEUk;%E1UcX;+?T?@iPI22<1*SVW6hLp95d|juC<#>DxTgR?1Uaw1^Zx=y;x8$H zV%%^##$X6JaClkHQy`EVexPVbnia_lH%@35-o{XCi|&eONX?OCwL;4PKzeOc(k!tk z0lBCbCMb0`7>a;cBoxUBr#o~0Oq#XXi@zcVhCx=7bw9{<_@;$+d%*6_SMFft+d1Z% z`>7qBF>U#~?fIC8w_MNmJ}^Yb#79N^IT<5Q`o8L~3{9|+vsek=P1rE)W$>{fQ#~QS zynm8nMz!THXzMxdp8cRm6WJP_a?wcDh(qV%|2xV|raNKN#&Pt1Nmr{4V;_V(0rrBG z-;yV5hLso-)a~TJpYr*@_2GR^vD7~}BPRy<<6^iaUvl^Jj>f--ZMSy2*#^iqrJRDX zlVfddekoC#)w|WNs^s>XV@ff z@~Zdlzj<>1>S}jQ_{m_Ja4u^~!i_O{3l?Lx`^H_-fM%=NfEqQTIY^EIBYCP-kkAwZ z4b^S9S&%BxH_@~UrpQ#*iTHP=!l^>Rpi3#{#TomS|L^fcaL9&BXM=V)i7JaHcn!de zabAJ+mjDU-@N*WGQ+KF~pnNHFQXB_Ru?x68^LWFVc(9QrM!>FJZ}u%!SRE|BxngJR zeEMC74J>cdQ?hTOCDv}7U!>#~7u+dyW(roDD$@{C2OO#Bkp<{@!CZpc9KVR)8`#uw zxJ$o&e%?PShj5)t+uvKuK-&m^8^@M}1Zyd9zXsu!f!MRQwA%r`W~aE;F+R4Hl7lXT zk0oywVz4D)(VMijhcAPVvV6>XzGf}bacX-;em$|zfBl8S_U-+Q!=K;s#7x++XW5x% zyx6m_QZD1E3*q1tugG@?XNvari}VOiEw0|_Id=ZDmn zR3A&A)il_4LPZE@U`Zb{*hd;dkO}-+3?#q3S|ZahaASVe8jFsFC3H;N^-0r(NT9JA0D`&lJbLf6` zchDCapSkm95YvxPRpp2nr8dg9pD)&z)#bo-_1keHu=$7?J^s0H2Kx%C3@T$0~cABm@QBP$@4tyx;0I&4Gve$PN^6DCQ`QqyQaBUs=M%q0_%J6plCPx#;Y9DRHHY78U&t>R*FTTRiwSU-=2ISmxBT*WtH=V^ z{iW*m-dXxb%tU}i)_cPf#~Pl${dKqKrd-JnMZkC=%&))LcpXik_QkT50|?= L@3r;x$g}?e(AF4+ diff --git a/sublime_themes/dracula.tmTheme b/sublime_themes/dracula.tmTheme new file mode 100755 index 0000000..0a1630a --- /dev/null +++ b/sublime_themes/dracula.tmTheme @@ -0,0 +1,938 @@ + + + + + + + + name + Dracula + settings + + + settings + + background + #282a36 + caret + #f8f8f0 + foreground + #f8f8f2 + invisibles + #3B3A32 + lineHighlight + #44475a + selection + #44475a + findHighlight + #effb7b + findHighlightForeground + #000000 + selectionBorder + #222218 + activeGuide + #9D550FB0 + bracketsForeground + #F8F8F2A5 + bracketsOptions + underline + bracketContentsForeground + #F8F8F2A5 + bracketContentsOptions + underline + tagsOptions + stippled_underline + + + + name + Comment + scope + comment + settings + + foreground + #6272a4 + fontStyle + + + + + name + String + scope + string + settings + + foreground + #f1fa8c + + + + name + Number + scope + constant.numeric + settings + + foreground + #bd93f9 + + + + name + Built-in constant + scope + constant.language + settings + + foreground + #bd93f9 + + + + name + User-defined constant + scope + constant.character, constant.other + settings + + foreground + #bd93f9 + + + + name + Variable + scope + variable + settings + + fontStyle + + + + + name + Ruby's @variable + scope + variable.other.readwrite.instance + settings + + fontStyle + + foreground + #ffb86c + + + + name + String interpolation + scope + constant.character.escaped, constant.character.escape, string source, string source.ruby + settings + + fontStyle + + foreground + #ff79c6 + + + + name + Ruby Regexp + scope + source.ruby string.regexp.classic.ruby,source.ruby string.regexp.mod-r.ruby + settings + + fontStyle + + foreground + #ff5555 + + + + name + Keyword + scope + keyword + settings + + foreground + #ff79c6 + + + + name + Storage + scope + storage + settings + + fontStyle + + foreground + #ff79c6 + + + + name + Storage type + scope + storage.type + settings + + fontStyle + italic + foreground + #8be9fd + + + + name + Storage Type Namespace + scope + storage.type.namespace + settings + + fontStyle + italic + foreground + #8be9fd + + + + name + Storage Type Class + scope + storage.type.class + settings + + fontStyle + italic + foreground + #ff79c6 + + + + name + Class name + scope + entity.name.class + settings + + fontStyle + underline + foreground + #8be9fd + + + + name + Meta Path + scope + meta.path + settings + + fontStyle + underline + foreground + #66d9ef + + + + name + Inherited class + scope + entity.other.inherited-class + settings + + fontStyle + italic underline + foreground + #8be9fd + + + + name + Function name + scope + entity.name.function + settings + + fontStyle + + foreground + #50fa7b + + + + name + Function argument + scope + variable.parameter + settings + + fontStyle + italic + foreground + #ffb86c + + + + name + Tag name + scope + entity.name.tag + settings + + fontStyle + + foreground + #ff79c6 + + + + name + Tag attribute + scope + entity.other.attribute-name + settings + + fontStyle + + foreground + #50fa7b + + + + name + Library function + scope + support.function + settings + + fontStyle + + foreground + #8be9fd + + + + name + Library constant + scope + support.constant + settings + + fontStyle + + foreground + #6be5fd + + + + name + Library class/type + scope + support.type, support.class + settings + + fontStyle + italic + foreground + #66d9ef + + + + name + Library variable + scope + support.other.variable + settings + + fontStyle + + + + + name + Support Other Namespace + scope + support.other.namespace + settings + + fontStyle + italic + foreground + #66d9ef + + + + name + Invalid + scope + invalid + settings + + background + #ff79c6 + fontStyle + + foreground + #F8F8F0 + + + + name + Invalid deprecated + scope + invalid.deprecated + settings + + background + #bd93f9 + foreground + #F8F8F0 + + + + name + JSON String + scope + meta.structure.dictionary.json string.quoted.double.json + settings + + foreground + #CFCFC2 + + + + name + diff.header + scope + meta.diff, meta.diff.header + settings + + foreground + #6272a4 + + + + name + diff.deleted + scope + markup.deleted + settings + + foreground + #ff79c6 + + + + name + diff.inserted + scope + markup.inserted + settings + + foreground + #50fa7b + + + + name + diff.changed + scope + markup.changed + settings + + foreground + #E6DB74 + + + + scope + constant.numeric.line-number.find-in-files - match + settings + + foreground + #bd93f9 + + + + scope + entity.name.filename + settings + + foreground + #E6DB74 + + + + scope + message.error + settings + + foreground + #F83333 + + + + name + JSON Punctuation + scope + punctuation.definition.string.begin.json - meta.structure.dictionary.value.json, punctuation.definition.string.end.json - meta.structure.dictionary.value.json + settings + + foreground + #EEEEEE + + + + name + JSON Structure + scope + meta.structure.dictionary.json string.quoted.double.json + settings + + foreground + #8be9fd + + + + name + JSON String + scope + meta.structure.dictionary.value.json string.quoted.double.json + settings + + foreground + #f1fa8c + + + + name + JSON: 6 deep + scope + meta meta meta meta meta meta meta.structure.dictionary.value string + settings + + foreground + #50fa7b + + + + name + JSON: 5 deep + scope + meta meta meta meta meta meta.structure.dictionary.value string + settings + + foreground + #ffb86c + + + + name + JSON: 4 deep + scope + meta meta meta meta meta.structure.dictionary.value string + settings + + foreground + #ff79c6 + + + + name + JSON: 3 deep + scope + meta meta meta meta.structure.dictionary.value string + settings + + foreground + #bd93f9 + + + + name + JSON: 2 deep + scope + meta meta meta.structure.dictionary.value string + settings + + foreground + #50fa7b + + + + name + JSON: 1 deep + scope + meta meta.structure.dictionary.value string + settings + + foreground + #ffb86c + + + + + + name + Markup: strike + scope + markup.strike + settings + + fontStyle + italic + foreground + #FFB86C + + + + name + Markup: bold + scope + markup.bold + settings + + fontStyle + bold + foreground + #FFB86C + + + + name + Markup: italic + scope + markup.italic + settings + + fontStyle + italic + foreground + #FFB86C + + + + name + Markdown: heading + scope + markup.heading + settings + + foreground + #8BE9FD + + + + name + Markdown: List Items Punctuation + scope + punctuation.definition.list_item.markdown + settings + + foreground + #FF79C6 + + + + name + Markdown: Blockquote + scope + markup.quote + settings + + fontStyle + italic + foreground + #6272A4 + + + + name + Markdown: Blockquote Punctuation + scope + punctuation.definition.blockquote.markdown + settings + + fontStyle + italic + background + #6272A4 + foreground + #6272A4 + + + + name + Markdown: Separator + scope + meta.separator + settings + + foreground + #6272A4 + + + + name + Markup: raw inline + scope + text.html.markdown markup.raw.inline + settings + + foreground + #50FA7B + + + + name + Markup: underline + scope + markup.underline + settings + + fontStyle + underline + foreground + #BD93F9 + + + + name + Markup: Raw block + scope + markup.raw.block + settings + + foreground + #CFCFC2 + + + + name + Markdown: Raw Block fenced source + scope + markup.raw.block.fenced.markdown source + settings + + foreground + #F8F8F2 + + + + name + Markdown: Fenced Bode Block + scope + punctuation.definition.fenced.markdown, variable.language.fenced.markdown + settings + + fontStyle + italic + foreground + #6272A4 + + + + name + Markdown: Fenced Language + scope + variable.language.fenced.markdown + settings + + fontStyle + italic + foreground + #6272A4 + + + + name + Punctuation Accessor + scope + punctuation.accessor + settings + + foreground + #FF79C6 + + + + name + Meta Function Return Type + scope + meta.function.return-type + settings + + foreground + #FF79C6 + + + + name + Punctuation Section Block Begin + scope + punctuation.section.block.begin + settings + + foreground + #ffffff + + + + name + Punctuation Section Block End + scope + punctuation.section.block.end + settings + + foreground + #ffffff + + + + name + Punctuation Section Embedded Begin + scope + punctuation.section.embedded.begin + settings + + foreground + #ff79c6 + + + + name + Punctuation Section Embedded End + scope + punctuation.section.embedded.end + settings + + foreground + #ff79c6 + + + + name + Punctuation Separator Namespace + scope + punctuation.separator.namespace + settings + + foreground + #ff79c6 + + + + name + Variable Function + scope + variable.function + settings + + foreground + #50fa7b + + + + name + Variable Other + scope + variable.other + settings + + foreground + #ffffff + + + + name + Variable Language + scope + variable.language + settings + + foreground + #bd93f9 + + + + name + Entity Name Module Ruby + scope + entity.name.module.ruby + settings + + foreground + #8be9fd + + + + name + Entity Name Constant Ruby + scope + entity.name.constant.ruby + settings + + foreground + #bd93f9 + + + + name + Support Function Builtin Ruby + scope + support.function.builtin.ruby + settings + + foreground + #ffffff + + + + name + Storage Type Namespace CS + scope + storage.type.namespace.cs + settings + + foreground + #ff79c6 + + + + name + Entity Name Namespace CS + scope + entity.name.namespace.cs + settings + + foreground + #8be9fd + + + + uuid + 83091B89-765E-4F0D-9275-0EC6CB084126 + colorSpaceName + sRGB + semanticClass + theme.dracula + author + Zeno Rocha + + From 1dbd8874c0bf19757f79f026c47692bd6d9014b4 Mon Sep 17 00:00:00 2001 From: Peng Guanwen Date: Wed, 16 Jan 2019 17:09:23 +0800 Subject: [PATCH 32/82] derive Debug for HeaderIndex --- components/rendering/src/markdown.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index f01eb29..6279e73 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -28,6 +28,7 @@ pub struct Rendered { pub toc: Vec
, } +#[derive(Debug)] struct HeaderIndex { start: usize, end: usize, From 69fb399726f5947958eeef554d00b2b812e44e10 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 10 Jan 2019 17:17:07 +0100 Subject: [PATCH 33/82] Add failing shortcode body split test --- components/rendering/tests/markdown.rs | 27 ++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/components/rendering/tests/markdown.rs b/components/rendering/tests/markdown.rs index 6149e4f..6f189ed 100644 --- a/components/rendering/tests/markdown.rs +++ b/components/rendering/tests/markdown.rs @@ -748,3 +748,30 @@ fn doesnt_try_to_highlight_content_from_shortcode() { let res = render_content(markdown_string, &context).unwrap(); assert_eq!(res.body, expected); } + +// https://github.com/Keats/tera/issues/373 +#[test] +fn can_split_lines_shortcode_body() { + let permalinks_ctx = HashMap::new(); + let mut tera = Tera::default(); + tera.extend(&ZOLA_TERA).unwrap(); + + let shortcode = r#"{{ body | split(pat="\n") }}"#; + + let markdown_string = r#" +{% alert() %} +multi +ple +lines +{% end %} + "#; + + let expected = r#"

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

"#; + + 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 res = render_content(markdown_string, &context).unwrap(); + assert_eq!(res.body, expected); +} From 5caf24f06c9eb39d8d73b18c5a59b54b39c88f99 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 11 Jan 2019 20:29:46 +0100 Subject: [PATCH 34/82] Remove error-chain Closes #576 --- Cargo.lock | 3 +- components/config/Cargo.toml | 1 + components/config/src/config.rs | 24 ++--- components/config/src/lib.rs | 8 +- components/config/src/theme.rs | 20 ++-- components/errors/Cargo.toml | 1 - components/errors/src/lib.rs | 101 ++++++++++++++++++--- components/front_matter/src/lib.rs | 10 +- components/imageproc/src/lib.rs | 4 +- components/library/src/content/page.rs | 6 +- components/library/src/content/section.rs | 6 +- components/library/src/pagination/mod.rs | 4 +- components/library/src/taxonomies/mod.rs | 10 +- components/rendering/src/shortcode.rs | 4 +- components/rendering/tests/markdown.rs | 2 +- components/site/src/lib.rs | 10 +- components/templates/Cargo.toml | 1 - components/templates/src/global_fns/mod.rs | 2 - components/templates/src/lib.rs | 4 +- components/utils/src/fs.rs | 22 ++++- docs/templates/page.html | 1 + src/cmd/serve.rs | 10 +- src/console.rs | 8 +- 23 files changed, 175 insertions(+), 87 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index df0e952..6f7a003 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -342,6 +342,7 @@ dependencies = [ "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", + "utils 0.1.0", ] [[package]] @@ -616,7 +617,6 @@ dependencies = [ name = "errors" version = "0.1.0" dependencies = [ - "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "image 0.20.1 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2229,7 +2229,6 @@ dependencies = [ "base64 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "config 0.1.0", "csv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "errors 0.1.0", "imageproc 0.1.0", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", diff --git a/components/config/Cargo.toml b/components/config/Cargo.toml index ad0f929..a8090aa 100644 --- a/components/config/Cargo.toml +++ b/components/config/Cargo.toml @@ -13,3 +13,4 @@ lazy_static = "1" syntect = "3" errors = { path = "../errors" } +utils = { path = "../utils" } diff --git a/components/config/src/config.rs b/components/config/src/config.rs index 57c8284..4c02086 100644 --- a/components/config/src/config.rs +++ b/components/config/src/config.rs @@ -1,6 +1,4 @@ use std::collections::HashMap; -use std::fs::File; -use std::io::prelude::*; use std::path::{Path, PathBuf}; use chrono::Utc; @@ -9,9 +7,10 @@ use syntect::parsing::{SyntaxSet, SyntaxSetBuilder}; use toml; use toml::Value as Toml; -use errors::{Result, ResultExt}; +use errors::Result; use highlighting::THEME_SET; use theme::Theme; +use utils::fs::read_file_with_error; // We want a default base url for tests static DEFAULT_BASE_URL: &'static str = "http://a-website.com"; @@ -66,7 +65,13 @@ impl Taxonomy { impl Default for Taxonomy { fn default() -> Taxonomy { - Taxonomy { name: String::new(), paginate_by: None, paginate_path: None, rss: false, lang: None } + Taxonomy { + name: String::new(), + paginate_by: None, + paginate_path: None, + rss: false, + lang: None, + } } } @@ -172,15 +177,12 @@ impl Config { /// Parses a config file from the given path pub fn from_file>(path: P) -> Result { - let mut content = String::new(); let path = path.as_ref(); let file_name = path.file_name().unwrap(); - File::open(path) - .chain_err(|| { - format!("No `{:?}` file found. Are you in the right directory?", file_name) - })? - .read_to_string(&mut content)?; - + let content = read_file_with_error( + path, + &format!("No `{:?}` file found. Are you in the right directory?", file_name), + )?; Config::parse(&content) } diff --git a/components/config/src/lib.rs b/components/config/src/lib.rs index b7a4ebc..3c7443a 100644 --- a/components/config/src/lib.rs +++ b/components/config/src/lib.rs @@ -1,14 +1,16 @@ #[macro_use] extern crate serde_derive; -extern crate toml; -#[macro_use] -extern crate errors; extern crate chrono; extern crate globset; +extern crate toml; #[macro_use] extern crate lazy_static; extern crate syntect; +#[macro_use] +extern crate errors; +extern crate utils; + mod config; pub mod highlighting; mod theme; diff --git a/components/config/src/theme.rs b/components/config/src/theme.rs index 1bce6bf..d6bd40c 100644 --- a/components/config/src/theme.rs +++ b/components/config/src/theme.rs @@ -1,11 +1,10 @@ use std::collections::HashMap; -use std::fs::File; -use std::io::prelude::*; use std::path::PathBuf; use toml::Value as Toml; -use errors::{Result, ResultExt}; +use errors::Result; +use utils::fs::read_file_with_error; /// Holds the data from a `theme.toml` file. /// There are other fields than `extra` in it but Zola @@ -40,15 +39,12 @@ impl Theme { /// Parses a theme file from the given path pub fn from_file(path: &PathBuf) -> Result { - let mut content = String::new(); - File::open(path) - .chain_err(|| { - "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?" - })? - .read_to_string(&mut content)?; - + 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?", + )?; Theme::parse(&content) } } diff --git a/components/errors/Cargo.toml b/components/errors/Cargo.toml index eacf916..c065109 100644 --- a/components/errors/Cargo.toml +++ b/components/errors/Cargo.toml @@ -4,7 +4,6 @@ version = "0.1.0" authors = ["Vincent Prouillet "] [dependencies] -error-chain = "0.12" tera = "0.11" toml = "0.4" image = "0.20" diff --git a/components/errors/src/lib.rs b/components/errors/src/lib.rs index 0d0a32d..5c2c2da 100755 --- a/components/errors/src/lib.rs +++ b/components/errors/src/lib.rs @@ -1,26 +1,101 @@ -#![allow(unused_doc_comments)] - -#[macro_use] -extern crate error_chain; extern crate image; extern crate syntect; extern crate tera; extern crate toml; -error_chain! { - errors {} +use std::convert::Into; +use std::error::Error as StdError; +use std::fmt; + +#[derive(Debug)] +pub enum ErrorKind { + Msg(String), + Tera(tera::Error), + Io(::std::io::Error), + Toml(toml::de::Error), + Image(image::ImageError), + Syntect(syntect::LoadingError), +} + +/// The Error type +#[derive(Debug)] +pub struct Error { + /// Kind of error + pub kind: ErrorKind, + pub source: Option>, +} +unsafe impl Sync for Error {} +unsafe impl Send for Error {} + +impl StdError for Error { + fn source(&self) -> Option<&(dyn StdError + 'static)> { + self.source.as_ref().map(|c| &**c) + } +} + +impl fmt::Display for Error { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + match self.kind { + ErrorKind::Msg(ref message) => write!(f, "{}", message), + ErrorKind::Tera(ref e) => write!(f, "{}", e), + ErrorKind::Io(ref e) => write!(f, "{}", e), + ErrorKind::Toml(ref e) => write!(f, "{}", e), + ErrorKind::Image(ref e) => write!(f, "{}", e), + ErrorKind::Syntect(ref e) => write!(f, "{}", e), + } + } +} - links { - Tera(tera::Error, tera::ErrorKind); +impl Error { + /// Creates generic error + pub fn msg(value: impl ToString) -> Self { + Self { kind: ErrorKind::Msg(value.to_string()), source: None } } - foreign_links { - Io(::std::io::Error); - Toml(toml::de::Error); - Image(image::ImageError); - Syntect(syntect::LoadingError); + /// Creates generic error with a cause + pub fn chain(value: impl ToString, source: impl Into>) -> Self { + Self { kind: ErrorKind::Msg(value.to_string()), source: Some(source.into()) } + } +} + + +impl From<&str> for Error { + fn from(e: &str) -> Self { + Self::msg(e) + } +} +impl From for Error { + fn from(e: String) -> Self { + Self::msg(e) + } +} +impl From for Error { + fn from(e: toml::de::Error) -> Self { + Self { kind: ErrorKind::Toml(e), source: None } + } +} +impl From for Error { + fn from(e: syntect::LoadingError) -> Self { + Self { kind: ErrorKind::Syntect(e), source: None } + } +} +impl From for Error { + fn from(e: tera::Error) -> Self { + Self { kind: ErrorKind::Tera(e), source: None } + } +} +impl From<::std::io::Error> for Error { + fn from(e: ::std::io::Error) -> Self { + Self { kind: ErrorKind::Io(e), source: None } + } +} +impl From for Error { + fn from(e: image::ImageError) -> Self { + Self { kind: ErrorKind::Image(e), source: None } } } +/// Convenient wrapper around std::Result. +pub type Result = ::std::result::Result; // So we can use bail! in all other crates #[macro_export] diff --git a/components/front_matter/src/lib.rs b/components/front_matter/src/lib.rs index 986399c..c0ca8b7 100644 --- a/components/front_matter/src/lib.rs +++ b/components/front_matter/src/lib.rs @@ -12,7 +12,7 @@ extern crate toml; extern crate errors; extern crate utils; -use errors::{Result, ResultExt}; +use errors::{Result, Error}; use regex::Regex; use std::path::Path; @@ -71,8 +71,8 @@ pub fn split_section_content( content: &str, ) -> Result<(SectionFrontMatter, String)> { let (front_matter, content) = split_content(file_path, content)?; - let meta = SectionFrontMatter::parse(&front_matter).chain_err(|| { - format!("Error when parsing front matter of section `{}`", file_path.to_string_lossy()) + let meta = SectionFrontMatter::parse(&front_matter).map_err(|e| { + Error::chain(format!("Error when parsing front matter of section `{}`", file_path.to_string_lossy()), e) })?; Ok((meta, content)) } @@ -81,8 +81,8 @@ pub fn split_section_content( /// Returns a parsed `PageFrontMatter` and the rest of the content pub fn split_page_content(file_path: &Path, content: &str) -> Result<(PageFrontMatter, String)> { let (front_matter, content) = split_content(file_path, content)?; - let meta = PageFrontMatter::parse(&front_matter).chain_err(|| { - format!("Error when parsing front matter of page `{}`", file_path.to_string_lossy()) + let meta = PageFrontMatter::parse(&front_matter).map_err(|e| { + Error::chain(format!("Error when parsing front matter of page `{}`", file_path.to_string_lossy()), e) })?; Ok((meta, content)) } diff --git a/components/imageproc/src/lib.rs b/components/imageproc/src/lib.rs index e195184..4ebdbea 100644 --- a/components/imageproc/src/lib.rs +++ b/components/imageproc/src/lib.rs @@ -20,7 +20,7 @@ use image::{FilterType, GenericImageView}; use rayon::prelude::*; use regex::Regex; -use errors::{Result, ResultExt}; +use errors::{Result, Error}; use utils::fs as ufs; static RESIZED_SUBDIR: &'static str = "processed_images"; @@ -456,7 +456,7 @@ impl Processor { let target = self.resized_path.join(Self::op_filename(*hash, op.collision_id, op.format)); op.perform(&self.content_path, &target) - .chain_err(|| format!("Failed to process image: {}", op.source)) + .map_err(|e| Error::chain(format!("Failed to process image: {}", op.source), e)) }) .collect::>() } diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 5736e17..9a80014 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -8,7 +8,7 @@ use slug::slugify; use tera::{Context as TeraContext, Tera}; use config::Config; -use errors::{Result, ResultExt}; +use errors::{Result, Error}; use front_matter::{split_page_content, InsertAnchor, PageFrontMatter}; use library::Library; use rendering::{render_content, Header, RenderContext}; @@ -234,7 +234,7 @@ impl Page { context.tera_context.insert("page", &SerializingPage::from_page_basic(self, None)); let res = render_content(&self.raw_content, &context) - .chain_err(|| format!("Failed to render content of {}", self.file.path.display()))?; + .map_err(|e| 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.content = res.body; @@ -258,7 +258,7 @@ impl Page { context.insert("lang", &self.lang); render_template(&tpl_name, tera, &context, &config.theme) - .chain_err(|| format!("Failed to render page '{}'", self.file.path.display())) + .map_err(|e| Error::chain(format!("Failed to render page '{}'", self.file.path.display()), e)) } /// Creates a vectors of asset URLs. diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index 041b9ac..cb2d940 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -5,7 +5,7 @@ use slotmap::Key; use tera::{Context as TeraContext, Tera}; use config::Config; -use errors::{Result, ResultExt}; +use errors::{Result, Error}; use front_matter::{split_section_content, SectionFrontMatter}; use rendering::{render_content, Header, RenderContext}; use utils::fs::{find_related_assets, read_file}; @@ -172,7 +172,7 @@ impl Section { context.tera_context.insert("section", &SerializingSection::from_section_basic(self, None)); let res = render_content(&self.raw_content, &context) - .chain_err(|| format!("Failed to render content of {}", self.file.path.display()))?; + .map_err(|e| Error::chain(format!("Failed to render content of {}", self.file.path.display()), e))?; self.content = res.body; self.toc = res.toc; Ok(()) @@ -190,7 +190,7 @@ impl Section { context.insert("lang", &self.lang); render_template(tpl_name, tera, &context, &config.theme) - .chain_err(|| format!("Failed to render section '{}'", self.file.path.display())) + .map_err(|e| Error::chain(format!("Failed to render section '{}'", self.file.path.display()), e)) } /// Is this the index section? diff --git a/components/library/src/pagination/mod.rs b/components/library/src/pagination/mod.rs index ad02385..da2c1c1 100644 --- a/components/library/src/pagination/mod.rs +++ b/components/library/src/pagination/mod.rs @@ -4,7 +4,7 @@ use slotmap::Key; use tera::{to_value, Context, Tera, Value}; use config::Config; -use errors::{Result, ResultExt}; +use errors::{Result, Error}; use utils::templates::render_template; use content::{Section, SerializingPage, SerializingSection}; @@ -222,7 +222,7 @@ impl<'a> Paginator<'a> { context.insert("paginator", &self.build_paginator_context(pager)); render_template(&self.template, tera, &context, &config.theme) - .chain_err(|| format!("Failed to render pager {}", pager.index)) + .map_err(|e| Error::chain(format!("Failed to render pager {}", pager.index), e)) } } diff --git a/components/library/src/taxonomies/mod.rs b/components/library/src/taxonomies/mod.rs index 6b74f9c..c44265c 100644 --- a/components/library/src/taxonomies/mod.rs +++ b/components/library/src/taxonomies/mod.rs @@ -5,7 +5,7 @@ use slug::slugify; use tera::{Context, Tera}; use config::{Config, Taxonomy as TaxonomyConfig}; -use errors::{Result, ResultExt}; +use errors::{Result, Error}; use utils::templates::render_template; use content::SerializingPage; @@ -145,7 +145,7 @@ impl Taxonomy { context.insert("current_path", &format!("/{}/{}", self.kind.name, item.slug)); render_template(&format!("{}/single.html", self.kind.name), tera, &context, &config.theme) - .chain_err(|| format!("Failed to render single term {} page.", self.kind.name)) + .map_err(|e| Error::chain(format!("Failed to render single term {} page.", self.kind.name), e)) } pub fn render_all_terms( @@ -164,7 +164,7 @@ impl Taxonomy { context.insert("current_path", &self.kind.name); render_template(&format!("{}/list.html", self.kind.name), tera, &context, &config.theme) - .chain_err(|| format!("Failed to render a list of {} page.", self.kind.name)) + .map_err(|e| Error::chain(format!("Failed to render a list of {} page.", self.kind.name), e)) } pub fn to_serialized<'a>(&'a self, library: &'a Library) -> SerializedTaxonomy<'a> { @@ -334,7 +334,7 @@ mod tests { let err = taxonomies.unwrap_err(); // no path as this is created by Default assert_eq!( - err.description(), + format!("{}", err), "Page `` has taxonomy `tags` which is not defined in config.toml" ); } @@ -442,7 +442,7 @@ mod tests { let err = taxonomies.unwrap_err(); // no path as this is created by Default assert_eq!( - err.description(), + format!("{}", err), "Page `` has taxonomy `tags` which is not available in that language" ); } diff --git a/components/rendering/src/shortcode.rs b/components/rendering/src/shortcode.rs index 804b487..6836b20 100644 --- a/components/rendering/src/shortcode.rs +++ b/components/rendering/src/shortcode.rs @@ -4,7 +4,7 @@ use regex::Regex; use tera::{to_value, Context, Map, Value}; use context::RenderContext; -use errors::{Result, ResultExt}; +use errors::{Result, Error}; // This include forces recompiling this source file if the grammar file changes. // Uncomment it when doing changes to the .pest file @@ -116,7 +116,7 @@ fn render_shortcode( let res = context .tera .render(&tpl_name, &tera_context) - .chain_err(|| format!("Failed to render {} shortcode", name))?; + .map_err(|e| Error::chain(format!("Failed to render {} shortcode", name), e))?; // Small hack to avoid having multiple blank lines because of Tera tags for example // A blank like will cause the markdown parser to think we're out of HTML and start looking diff --git a/components/rendering/tests/markdown.rs b/components/rendering/tests/markdown.rs index 6f189ed..ebd7494 100644 --- a/components/rendering/tests/markdown.rs +++ b/components/rendering/tests/markdown.rs @@ -660,7 +660,7 @@ fn can_show_error_message_for_invalid_external_links() { let res = render_content("[a link](http://google.comy)", &context); assert!(res.is_err()); let err = res.unwrap_err(); - assert!(err.description().contains("Link http://google.comy is not valid")); + assert!(format!("{}", err).contains("Link http://google.comy is not valid")); } #[test] diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 2308cbc..9b59e56 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -30,7 +30,7 @@ use sass_rs::{compile_file, Options as SassOptions, OutputStyle}; use tera::{Context, Tera}; use config::{get_config, Config}; -use errors::{Result, ResultExt}; +use errors::{Result, Error}; use front_matter::InsertAnchor; use library::{ find_taxonomies, sort_actual_pages_by_date, Library, Page, Paginator, Section, Taxonomy, @@ -87,7 +87,7 @@ impl Site { format!("{}/{}", path.to_string_lossy().replace("\\", "/"), "templates/**/*.*ml"); // 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).chain_err(|| "Error parsing templates")?; + let mut tera = Tera::parse(&tpl_glob).map_err(|e| Error::chain("Error parsing templates", e))?; 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"))?; @@ -104,9 +104,9 @@ impl Site { format!("themes/{}/templates/**/*.*ml", theme) ); let mut tera_theme = - Tera::parse(&theme_tpl_glob).chain_err(|| "Error parsing templates from themes")?; + Tera::parse(&theme_tpl_glob).map_err(|e| Error::chain("Error parsing templates from themes", e))?; rewrite_theme_paths(&mut tera_theme, &theme); - // TODO: same as below + // TODO: we do that twice, make it dry? if theme_path.join("templates").join("robots.txt").exists() { tera_theme .add_template_file(theme_path.join("templates").join("robots.txt"), None)?; @@ -470,7 +470,7 @@ impl Site { pub fn clean(&self) -> Result<()> { if self.output_path.exists() { // Delete current `public` directory so we can start fresh - remove_dir_all(&self.output_path).chain_err(|| "Couldn't delete output directory")?; + remove_dir_all(&self.output_path).map_err(|e| Error::chain("Couldn't delete output directory", e))?; } Ok(()) diff --git a/components/templates/Cargo.toml b/components/templates/Cargo.toml index c3001f4..b84e15b 100644 --- a/components/templates/Cargo.toml +++ b/components/templates/Cargo.toml @@ -11,7 +11,6 @@ pulldown-cmark = "0.2" toml = "0.4" csv = "1" serde_json = "1.0" -error-chain = "0.12" reqwest = "0.9" url = "1.5" diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index 310b265..ffb390b 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -1,5 +1,3 @@ -extern crate error_chain; - use std::collections::HashMap; use std::sync::{Arc, Mutex}; diff --git a/components/templates/src/lib.rs b/components/templates/src/lib.rs index c9723fb..a75e2ff 100644 --- a/components/templates/src/lib.rs +++ b/components/templates/src/lib.rs @@ -25,7 +25,7 @@ pub mod global_fns; use tera::{Context, Tera}; -use errors::{Result, ResultExt}; +use errors::{Result, Error}; lazy_static! { pub static ref ZOLA_TERA: Tera = { @@ -57,5 +57,5 @@ pub fn render_redirect_template(url: &str, tera: &Tera) -> Result { context.insert("url", &url); tera.render("internal/alias.html", &context) - .chain_err(|| format!("Failed to render alias for '{}'", url)) + .map_err(|e| Error::chain(format!("Failed to render alias for '{}'", url), e)) } diff --git a/components/utils/src/fs.rs b/components/utils/src/fs.rs index ec08d3f..fdbccbd 100644 --- a/components/utils/src/fs.rs +++ b/components/utils/src/fs.rs @@ -4,7 +4,7 @@ use std::path::{Path, PathBuf}; use std::time::SystemTime; use walkdir::WalkDir; -use errors::{Result, ResultExt}; +use errors::{Result, Error}; pub fn is_path_in_directory(parent: &Path, path: &Path) -> Result { let canonical_path = path @@ -19,7 +19,8 @@ pub fn is_path_in_directory(parent: &Path, path: &Path) -> Result { /// Create a file with the content given pub fn create_file(path: &Path, content: &str) -> Result<()> { - let mut file = File::create(&path).chain_err(|| format!("Failed to create {:?}", path))?; + let mut file = File::create(&path) + .map_err(|e| Error::chain(format!("Failed to create {:?}", path), e))?; file.write_all(content.as_bytes())?; Ok(()) } @@ -37,7 +38,7 @@ pub fn ensure_directory_exists(path: &Path) -> Result<()> { pub fn create_directory(path: &Path) -> Result<()> { if !path.exists() { create_dir_all(path) - .chain_err(|| format!("Was not able to create folder {}", path.display()))?; + .map_err(|e| Error::chain(format!("Was not able to create folder {}", path.display()), e))?; } Ok(()) } @@ -46,7 +47,7 @@ pub fn create_directory(path: &Path) -> Result<()> { pub fn read_file(path: &Path) -> Result { let mut content = String::new(); File::open(path) - .chain_err(|| format!("Failed to open '{:?}'", path.display()))? + .map_err(|e| Error::chain(format!("Failed to open '{:?}'", path.display()), e))? .read_to_string(&mut content)?; // Remove utf-8 BOM if any. @@ -57,6 +58,19 @@ 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 allocation 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 { diff --git a/docs/templates/page.html b/docs/templates/page.html index 8f6c09b..723f0b1 100644 --- a/docs/templates/page.html +++ b/docs/templates/page.html @@ -4,4 +4,5 @@ {% block doc_content %}

{{page.title}}

{{page.content | safe}} +{{hey}} {% endblock doc_content %} diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index 7672aac..43408ef 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -36,7 +36,7 @@ use ctrlc; use notify::{watcher, RecursiveMode, Watcher}; use ws::{Message, Sender, WebSocket}; -use errors::{Result, ResultExt}; +use errors::{Result, Error as ZolaError}; use site::Site; use utils::fs::copy_file; @@ -179,23 +179,23 @@ pub fn serve( let mut watcher = watcher(tx, Duration::from_secs(1)).unwrap(); watcher .watch("content/", RecursiveMode::Recursive) - .chain_err(|| "Can't watch the `content` folder. Does it exist?")?; + .map_err(|e| ZolaError::chain("Can't watch the `content` folder. Does it exist?", e))?; watcher .watch(config_file, RecursiveMode::Recursive) - .chain_err(|| "Can't watch the `config` file. Does it exist?")?; + .map_err(|e| ZolaError::chain("Can't watch the `config` file. Does it exist?", e))?; if Path::new("static").exists() { watching_static = true; watcher .watch("static/", RecursiveMode::Recursive) - .chain_err(|| "Can't watch the `static` folder.")?; + .map_err(|e| ZolaError::chain("Can't watch the `static` folder.", e))?; } if Path::new("templates").exists() { watching_templates = true; watcher .watch("templates/", RecursiveMode::Recursive) - .chain_err(|| "Can't watch the `templates` folder.")?; + .map_err(|e| ZolaError::chain("Can't watch the `templates` folder.", e))?; } // Sass support is optional so don't make it an error to no have a sass folder diff --git a/src/console.rs b/src/console.rs index 4d1ba19..2d50ca9 100644 --- a/src/console.rs +++ b/src/console.rs @@ -1,4 +1,5 @@ use std::env; +use std::error::Error as StdError; use std::io::Write; use std::time::Instant; @@ -6,7 +7,6 @@ use atty; use chrono::Duration; use termcolor::{Color, ColorChoice, ColorSpec, StandardStream, WriteColor}; -use errors::Error; use site::Site; lazy_static! { @@ -91,13 +91,15 @@ pub fn report_elapsed_time(instant: Instant) { } /// Display an error message and the actual error(s) -pub fn unravel_errors(message: &str, error: &Error) { +pub fn unravel_errors(message: &str, error: &StdError) { if !message.is_empty() { self::error(message); } self::error(&format!("Error: {}", error)); - for e in error.iter().skip(1) { + let mut cause = error.source(); + while let Some(e) = cause { self::error(&format!("Reason: {}", e)); + cause = e.source(); } } From 83472a53d728e6a1f5788996c99abed275e461e9 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 17 Jan 2019 18:18:02 +0100 Subject: [PATCH 35/82] Register load_data early Closes #582 --- CHANGELOG.md | 5 ++++- components/site/src/lib.rs | 8 ++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9c2d8b2..e3c7e58 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,10 @@ - Add support for content in multiple languages - Lower latency on serve before rebuilding from 2 to 1 second - Allow processing PNG and produced images are less blurry -- Add an id (`zola-continue-reading`) +- Add an id (`zola-continue-reading`) to the paragraph generated after a summary +- Add Dracula syntax highlighting theme +- Fix using inline styles in headers + ## 0.5.1 (2018-12-14) diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 9b59e56..bffc3fe 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -335,6 +335,10 @@ impl Site { "resize_image", global_fns::make_resize_image(self.imageproc.clone()), ); + self.tera.register_function( + "load_data", + global_fns::make_load_data(self.content_path.clone(), self.base_path.clone()), + ); } pub fn register_tera_global_fns(&mut self) { @@ -349,10 +353,6 @@ impl Site { "get_taxonomy_url", global_fns::make_get_taxonomy_url(&self.taxonomies), ); - self.tera.register_function( - "load_data", - global_fns::make_load_data(self.content_path.clone(), self.base_path.clone()), - ); } /// Add a page to the site From 1b4cfd49d0290a4f3e827f4cd2310d72c7820cd7 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 17 Jan 2019 18:29:18 +0100 Subject: [PATCH 36/82] More early tera fns and mention limitation of shortcodes in docs --- components/site/src/lib.rs | 10 +++++----- docs/content/documentation/content/shortcodes.md | 4 ++++ 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index bffc3fe..5c3a98f 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -339,20 +339,20 @@ impl Site { "load_data", global_fns::make_load_data(self.content_path.clone(), self.base_path.clone()), ); + self.tera.register_function("trans", global_fns::make_trans(self.config.clone())); + self.tera.register_function( + "get_taxonomy_url", + global_fns::make_get_taxonomy_url(&self.taxonomies), + ); } pub fn register_tera_global_fns(&mut self) { - self.tera.register_function("trans", global_fns::make_trans(self.config.clone())); self.tera.register_function("get_page", global_fns::make_get_page(&self.library)); self.tera.register_function("get_section", global_fns::make_get_section(&self.library)); self.tera.register_function( "get_taxonomy", global_fns::make_get_taxonomy(&self.taxonomies, &self.library), ); - self.tera.register_function( - "get_taxonomy_url", - global_fns::make_get_taxonomy_url(&self.taxonomies), - ); } /// Add a page to the site diff --git a/docs/content/documentation/content/shortcodes.md b/docs/content/documentation/content/shortcodes.md index edcdbc6..290c2c3 100644 --- a/docs/content/documentation/content/shortcodes.md +++ b/docs/content/documentation/content/shortcodes.md @@ -36,6 +36,10 @@ That's it, Zola will now recognise this template as a shortcode named `youtube` The markdown renderer will wrap an inline HTML node like `` or `` into a paragraph. If you want to disable that, simply wrap your shortcode in a `div`. +Shortcodes are rendered before parsing the markdown so it doesn't have access to the table of contents. Because of that, +you also cannot use the `get_page`/`get_section`/`get_taxonomy` global function. It might work while running `zola serve` because +it has been loaded but it will fail during `zola build`. + ## Using shortcodes There are two kinds of shortcodes: From 5ab3466e2bbf85bd0f696d494025aa6d4ed0125d Mon Sep 17 00:00:00 2001 From: Peng Guanwen Date: Fri, 18 Jan 2019 22:46:18 +0800 Subject: [PATCH 37/82] Doc improvements --- components/rendering/src/markdown.rs | 35 ++++++++++++++-------------- components/utils/src/vec.rs | 2 +- 2 files changed, 19 insertions(+), 18 deletions(-) diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index 6279e73..01e31af 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -28,16 +28,17 @@ pub struct Rendered { pub toc: Vec
, } +// tracks a header in a slice of pulldown-cmark events #[derive(Debug)] -struct HeaderIndex { - start: usize, - end: usize, +struct HeaderRef { + start_idx: usize, + end_idx: usize, level: i32, } -impl HeaderIndex { - fn new(start: usize, level: i32) -> HeaderIndex { - HeaderIndex { start, end: 0, level } +impl HeaderRef { + fn new(start: usize, level: i32) -> HeaderRef { + HeaderRef { start_idx: start, end_idx: 0, level } } } @@ -110,23 +111,23 @@ fn get_text(parser_slice: &[Event]) -> String { title } -fn get_header_indexes(events: &[Event]) -> Vec { - let mut header_indexes = vec![]; +fn get_header_refs(events: &[Event]) -> Vec { + let mut header_refs = vec![]; for (i, event) in events.iter().enumerate() { match event { Event::Start(Tag::Header(level)) => { - header_indexes.push(HeaderIndex::new(i, *level)); + header_refs.push(HeaderRef::new(i, *level)); } Event::End(Tag::Header(_)) => { let msg = "Header end before start?"; - header_indexes.last_mut().expect(msg).end = i; + header_refs.last_mut().expect(msg).end_idx = i; } _ => (), } } - header_indexes + header_refs } pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { @@ -220,19 +221,19 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result>(); // We need to collect the events to make a second pass - let mut header_indexes = get_header_indexes(&events); + let header_refs = get_header_refs(&events); let mut anchors_to_insert = vec![]; - for header_idx in header_indexes { - let start_idx = header_idx.start; - let end_idx = header_idx.end; + for header_ref in header_refs { + let start_idx = header_ref.start_idx; + let end_idx = header_ref.end_idx; let title = get_text(&events[start_idx + 1 .. end_idx]); let id = find_anchor(&inserted_anchors, slugify(&title), 0); inserted_anchors.push(id.clone()); // insert `id` to the tag - let html = format!("", lvl = header_idx.level, id = id); + let html = format!("", lvl = header_ref.level, id = id); events[start_idx] = Event::Html(Owned(html)); // generate anchors and places to insert them @@ -250,7 +251,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result InsertMany for Vec { type Element = T; /// Efficiently insert multiple element in their specified index. - /// The index should be sorted in ascending order. + /// The elements should sorted in ascending order by their index. /// /// This is done in O(n) time. fn insert_many(&mut self, elem_to_insert: Vec<(usize, T)>) { From b65979fac78dbfaf4242d0aabda7497e35bf8e14 Mon Sep 17 00:00:00 2001 From: Nicolas Pochet Date: Wed, 16 Jan 2019 10:59:29 +0100 Subject: [PATCH 38/82] Render the theme template files if present * Change the behavior of the template rendering: * Check if the template bare name is present * Check if the template is part of a theme * Fallback to defaults * Change the behavior of the shortcode rendering: * Call the template rendering function * Prepend `__zola_builtins/` to most of the default elements in `ZOLA_TERA` * Add a test to verify the presence and content of a `404.html` page from a theme's template --- components/rendering/src/shortcode.rs | 12 +++++------ components/site/tests/site.rs | 11 ++++++++++ components/templates/src/lib.rs | 25 +++++++++++++++------- components/utils/src/templates.rs | 13 ++++++++++- test_site/themes/sample/templates/404.html | 1 + 5 files changed, 47 insertions(+), 15 deletions(-) create mode 100644 test_site/themes/sample/templates/404.html diff --git a/components/rendering/src/shortcode.rs b/components/rendering/src/shortcode.rs index 6836b20..e45838e 100644 --- a/components/rendering/src/shortcode.rs +++ b/components/rendering/src/shortcode.rs @@ -4,7 +4,7 @@ use regex::Regex; use tera::{to_value, Context, Map, Value}; use context::RenderContext; -use errors::{Result, Error}; +use errors::{Error, Result}; // This include forces recompiling this source file if the grammar file changes. // Uncomment it when doing changes to the .pest file @@ -111,12 +111,12 @@ fn render_shortcode( tera_context.insert("body", b.trim_right()); } tera_context.extend(context.tera_context.clone()); - let tpl_name = format!("shortcodes/{}.html", name); - let res = context - .tera - .render(&tpl_name, &tera_context) - .map_err(|e| Error::chain(format!("Failed to render {} shortcode", name), e))?; + let template_name = format!("shortcodes/{}.html", name); + + let res = + utils::templates::render_template(&template_name, &context.tera, &tera_context, &None) + .map_err(|e| Error::chain(format!("Failed to render {} shortcode", name), e))?; // Small hack to avoid having multiple blank lines because of Tera tags for example // A blank like will cause the markdown parser to think we're out of HTML and start looking diff --git a/components/site/tests/site.rs b/components/site/tests/site.rs index b1cab79..7c4a55c 100644 --- a/components/site/tests/site.rs +++ b/components/site/tests/site.rs @@ -629,3 +629,14 @@ fn can_apply_page_templates() { assert_eq!(child.meta.template, Some("page_template_child.html".into())); assert_eq!(child.meta.title, Some("Local section override".into())); } + +// https://github.com/getzola/zola/issues/571 +#[test] +fn can_build_site_custom_builtins_from_theme() { + let (_, _tmp_dir, public) = build_site("test_site"); + + assert!(&public.exists()); + // 404.html is a theme template. + assert!(file_exists!(public, "404.html")); + assert!(file_contains!(public, "404.html", "Oops")); +} diff --git a/components/templates/src/lib.rs b/components/templates/src/lib.rs index a75e2ff..c9c48ca 100644 --- a/components/templates/src/lib.rs +++ b/components/templates/src/lib.rs @@ -31,15 +31,24 @@ lazy_static! { pub static ref ZOLA_TERA: Tera = { let mut tera = Tera::default(); tera.add_raw_templates(vec![ - ("404.html", include_str!("builtins/404.html")), - ("rss.xml", include_str!("builtins/rss.xml")), - ("sitemap.xml", include_str!("builtins/sitemap.xml")), - ("robots.txt", include_str!("builtins/robots.txt")), + ("__zola_builtins/404.html", include_str!("builtins/404.html")), + ("__zola_builtins/rss.xml", include_str!("builtins/rss.xml")), + ("__zola_builtins/sitemap.xml", include_str!("builtins/sitemap.xml")), + ("__zola_builtins/robots.txt", include_str!("builtins/robots.txt")), ("anchor-link.html", include_str!("builtins/anchor-link.html")), - ("shortcodes/youtube.html", include_str!("builtins/shortcodes/youtube.html")), - ("shortcodes/vimeo.html", include_str!("builtins/shortcodes/vimeo.html")), - ("shortcodes/gist.html", include_str!("builtins/shortcodes/gist.html")), - ("shortcodes/streamable.html", include_str!("builtins/shortcodes/streamable.html")), + ( + "__zola_builtins/shortcodes/youtube.html", + include_str!("builtins/shortcodes/youtube.html"), + ), + ( + "__zola_builtins/shortcodes/vimeo.html", + include_str!("builtins/shortcodes/vimeo.html"), + ), + ("__zola_builtins/shortcodes/gist.html", include_str!("builtins/shortcodes/gist.html")), + ( + "__zola_builtins/shortcodes/streamable.html", + include_str!("builtins/shortcodes/streamable.html"), + ), ("internal/alias.html", include_str!("builtins/internal/alias.html")), ]) .unwrap(); diff --git a/components/utils/src/templates.rs b/components/utils/src/templates.rs index 2b0ee29..b2f4c41 100644 --- a/components/utils/src/templates.rs +++ b/components/utils/src/templates.rs @@ -25,12 +25,23 @@ pub fn render_template( context: &Context, theme: &Option, ) -> Result { + // check if it is in the templates if tera.templates.contains_key(name) { return tera.render(name, context).map_err(|e| e.into()); } + // check if it is part of a theme if let Some(ref t) = *theme { - return tera.render(&format!("{}/templates/{}", t, name), context).map_err(|e| e.into()); + let theme_template_name = format!("{}/templates/{}", t, name); + if tera.templates.contains_key(&theme_template_name) { + return tera.render(&theme_template_name, context).map_err(|e| e.into()); + } + } + + // check if it is part of ZOLA_TERA defaults + let default_name = format!("__zola_builtins/{}", name); + if tera.templates.contains_key(&default_name) { + return tera.render(&default_name, context).map_err(|e| e.into()); } // maybe it's a default one? diff --git a/test_site/themes/sample/templates/404.html b/test_site/themes/sample/templates/404.html new file mode 100644 index 0000000..8d430af --- /dev/null +++ b/test_site/themes/sample/templates/404.html @@ -0,0 +1 @@ +Oops \ No newline at end of file From e119b685338cd2d50888e30f1d232abc5268572c Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 21 Jan 2019 17:54:44 +0100 Subject: [PATCH 39/82] Remove earlier/later/lighter/heavier from pages when rendering sections --- CHANGELOG.md | 5 + Cargo.lock | 546 ++++++++++-------- components/errors/Cargo.toml | 2 +- components/imageproc/Cargo.toml | 2 +- components/library/src/content/ser.rs | 2 +- .../documentation/templates/pages-sections.md | 2 + 6 files changed, 311 insertions(+), 248 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e3c7e58..7a60d66 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,11 @@ ## 0.6.0 (unreleased) +### Breaking +- `earlier/later` and `lighter/heavier` are not set anymore on pages when rendering +a section + +### Other - Add support for content in multiple languages - Lower latency on serve before rebuilding from 2 to 1 second - Allow processing PNG and produced images are less blurry diff --git a/Cargo.lock b/Cargo.lock index 6f7a003..9f58670 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,9 +1,9 @@ [[package]] name = "MacTypes-sys" -version = "1.3.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -18,10 +18,10 @@ dependencies = [ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -47,7 +47,7 @@ dependencies = [ "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -61,12 +61,11 @@ dependencies = [ [[package]] name = "actix-web" -version = "0.7.17" +version = "0.7.18" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "actix 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)", "actix-net 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "askama_escape 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "base64 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -76,29 +75,29 @@ dependencies = [ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "h2 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "h2 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "mime 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)", + "mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -106,6 +105,7 @@ dependencies = [ "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", + "v_htmlescape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -114,9 +114,9 @@ name = "actix_derive" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -129,7 +129,7 @@ name = "aho-corasick" version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "memchr 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -171,24 +171,19 @@ dependencies = [ "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", ] -[[package]] -name = "askama_escape" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - [[package]] name = "atty" version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "autocfg" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -196,10 +191,10 @@ name = "backtrace" version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -210,7 +205,7 @@ version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -236,7 +231,7 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -299,8 +294,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -338,8 +333,8 @@ dependencies = [ "errors 0.1.0", "globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", @@ -350,7 +345,7 @@ name = "cookie" version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -360,7 +355,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -368,7 +363,7 @@ name = "core-foundation-sys" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -394,8 +389,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -465,7 +460,7 @@ version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "csv-core 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -473,7 +468,7 @@ name = "csv-core" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "memchr 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -525,9 +520,9 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rust-stemmers 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", "strum 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "strum_macros 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -617,7 +612,7 @@ dependencies = [ name = "errors" version = "0.1.0" dependencies = [ - "image 0.20.1 (registry+https://github.com/rust-lang/crates.io-index)", + "image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -637,9 +632,9 @@ name = "failure_derive" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -654,8 +649,8 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -664,7 +659,7 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "miniz-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "miniz_oxide_c_api 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -695,8 +690,8 @@ dependencies = [ "errors 0.1.0", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", @@ -714,7 +709,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -722,7 +717,7 @@ name = "fsevent-sys" version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -800,13 +795,13 @@ dependencies = [ "aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "memchr 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "h2" -version = "0.1.14" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -816,8 +811,8 @@ dependencies = [ "http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "string 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "string 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -834,7 +829,7 @@ name = "hostname" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "winutil 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -846,9 +841,9 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "markup5ever 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -881,20 +876,20 @@ dependencies = [ [[package]] name = "hyper" -version = "0.12.19" +version = "0.12.21" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "h2 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "h2 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -912,7 +907,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.12.19 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper 0.12.21 (registry+https://github.com/rust-lang/crates.io-index)", "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -929,7 +924,7 @@ dependencies = [ [[package]] name = "image" -version = "0.20.1" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -939,7 +934,8 @@ dependencies = [ "num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", "num-rational 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "png 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "png 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "safe-transmute 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tiff 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -949,7 +945,7 @@ name = "imageproc" version = "0.1.0" dependencies = [ "errors 0.1.0", - "image 0.20.1 (registry+https://github.com/rust-lang/crates.io-index)", + "image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -978,7 +974,7 @@ dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "inotify-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -989,7 +985,7 @@ name = "inotify-sys" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -997,7 +993,7 @@ name = "iovec" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1053,7 +1049,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "libc" -version = "0.2.46" +version = "0.2.47" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1079,8 +1075,8 @@ dependencies = [ "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rendering 0.1.0", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "slotmap 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1094,7 +1090,7 @@ name = "link_checker" version = "0.1.0" dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "reqwest 0.9.5 (registry+https://github.com/rust-lang/crates.io-index)", + "reqwest 0.9.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1154,9 +1150,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1169,12 +1165,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "memchr" -version = "2.1.2" +version = "2.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", - "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1184,7 +1179,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "mime" -version = "0.3.12" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "unicase 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1195,7 +1190,7 @@ name = "mime_guess" version = "2.0.0-alpha.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "mime 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)", + "mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1207,7 +1202,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1225,7 +1220,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "miniz_oxide 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1239,11 +1234,11 @@ dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1255,7 +1250,7 @@ dependencies = [ "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1264,7 +1259,7 @@ version = "0.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1285,14 +1280,14 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", "schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", - "security-framework 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "security-framework-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "security-framework 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1302,7 +1297,7 @@ version = "0.2.33" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1322,7 +1317,7 @@ dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1331,6 +1326,14 @@ name = "nodrop" version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "nom" +version = "4.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "notify" version = "4.0.6" @@ -1342,7 +1345,7 @@ dependencies = [ "fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "inotify 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1355,9 +1358,9 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1396,27 +1399,26 @@ name = "num_cpus" version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "onig" -version = "4.2.1" +version = "4.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", - "onig_sys 69.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "onig_sys 69.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "onig_sys" -version = "69.0.0" +version = "69.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1429,7 +1431,7 @@ dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1444,7 +1446,7 @@ version = "0.9.40" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1471,10 +1473,10 @@ name = "parking_lot_core" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1507,9 +1509,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pest_meta 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1545,7 +1547,7 @@ version = "0.7.24" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1570,13 +1572,13 @@ dependencies = [ "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "xml-rs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "png" -version = "0.12.0" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1592,7 +1594,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "proc-macro2" -version = "0.4.24" +version = "0.4.26" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1614,19 +1616,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "quote" -version = "0.6.10" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand" -version = "0.4.3" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1637,23 +1641,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand" -version = "0.6.3" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_os 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_os 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1664,7 +1668,7 @@ name = "rand_chacha" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1699,13 +1703,14 @@ dependencies = [ [[package]] name = "rand_os" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1743,10 +1748,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rdrand" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "rebuild" version = "0.1.0" @@ -1761,7 +1774,7 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.1.50" +version = "0.1.51" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1769,7 +1782,7 @@ name = "redox_termios" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1778,7 +1791,7 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", - "memchr 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", "utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1813,8 +1826,8 @@ dependencies = [ "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", @@ -1824,33 +1837,36 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.9.5" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)", + "base64 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "encoding_rs 0.8.14 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.12.19 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper 0.12.21 (registry+https://github.com/rust-lang/crates.io-index)", "hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "libflate 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "mime 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)", + "mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "uuid 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "resolv-conf" -version = "0.6.1" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "hostname 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1862,8 +1878,8 @@ name = "rust-stemmers" version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1884,6 +1900,11 @@ name = "ryu" version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "safe-transmute" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "safemem" version = "0.3.0" @@ -1902,7 +1923,7 @@ name = "sass-rs" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "sass-sys 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1912,7 +1933,7 @@ version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1948,23 +1969,23 @@ dependencies = [ [[package]] name = "security-framework" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "core-foundation 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", - "security-framework-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "security-framework-sys" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "MacTypes-sys 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "MacTypes-sys 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1982,28 +2003,28 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde" -version = "1.0.84" +version = "1.0.85" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde_derive" -version = "1.0.84" +version = "1.0.85" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "serde_json" -version = "1.0.34" +version = "1.0.36" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2013,7 +2034,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2039,7 +2060,7 @@ version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arc-swap 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2060,8 +2081,8 @@ dependencies = [ "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "sass-rs 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "search 0.1.0", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2070,7 +2091,7 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -2088,7 +2109,7 @@ dependencies = [ [[package]] name = "smallvec" -version = "0.6.7" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2100,8 +2121,8 @@ version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2112,7 +2133,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "string" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -2124,7 +2145,7 @@ dependencies = [ "new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2136,8 +2157,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2162,18 +2183,18 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "syn" -version = "0.15.24" +version = "0.15.26" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2182,9 +2203,9 @@ name = "synstructure" version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2199,12 +2220,12 @@ dependencies = [ "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "onig 4.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "onig 4.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "plist 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "yaml-rust 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2215,9 +2236,9 @@ version = "3.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2234,8 +2255,8 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "library 0.1.0", "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "reqwest 0.9.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", + "reqwest 0.9.8 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2265,8 +2286,8 @@ dependencies = [ "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "unic-segment 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2285,8 +2306,8 @@ name = "termion" version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2319,11 +2340,11 @@ dependencies = [ [[package]] name = "time" -version = "0.1.41" +version = "0.1.42" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2409,7 +2430,7 @@ dependencies = [ "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2420,7 +2441,7 @@ version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "signal-hook 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2454,7 +2475,7 @@ dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2465,7 +2486,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2491,7 +2512,7 @@ dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2505,7 +2526,7 @@ name = "toml" version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2528,7 +2549,7 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", "socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2541,7 +2562,7 @@ dependencies = [ [[package]] name = "trust-dns-proto" -version = "0.6.1" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2551,7 +2572,7 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", "socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2574,10 +2595,10 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "resolv-conf 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", + "resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", - "trust-dns-proto 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "trust-dns-proto 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2722,7 +2743,7 @@ name = "utils" version = "0.1.0" dependencies = [ "errors 0.1.0", - "serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2738,6 +2759,36 @@ dependencies = [ "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "v_escape" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "v_escape_derive 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "v_escape_derive" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "nom 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "v_htmlescape" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "v_escape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "vcpkg" version = "0.2.6" @@ -2856,9 +2907,9 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2891,7 +2942,7 @@ dependencies = [ name = "zola" version = "0.6.0" dependencies = [ - "actix-web 0.7.17 (registry+https://github.com/rust-lang/crates.io-index)", + "actix-web 0.7.18 (registry+https://github.com/rust-lang/crates.io-index)", "atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2910,10 +2961,10 @@ dependencies = [ ] [metadata] -"checksum MacTypes-sys 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7dbbe033994ae2198a18517c7132d952a29fb1db44249a1234779da7c50f4698" +"checksum MacTypes-sys 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "eaf9f0d0b1cc33a4d2aee14fb4b2eac03462ef4db29c8ac4057327d8a71ad86f" "checksum actix 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6c616db5fa4b0c40702fb75201c2af7f8aa8f3a2e2c1dda3b0655772aa949666" "checksum actix-net 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "8bebfbe6629e0131730746718c9e032b58f02c6ce06ed7c982b9fef6c8545acd" -"checksum actix-web 0.7.17 (registry+https://github.com/rust-lang/crates.io-index)" = "ed4d8a167b9e2f20e6d6d4bd92cd81839d5a551096e700f70a9fefe078583e56" +"checksum actix-web 0.7.18 (registry+https://github.com/rust-lang/crates.io-index)" = "e9f33c941e5e69a58a6bfef33853228042ed3799fc4b5a4923a36a85776fb690" "checksum actix_derive 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4300e9431455322ae393d43a2ba1ef96b8080573c0fc23b196219efedfb6ba69" "checksum adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7e522997b529f05601e05166c07ed17789691f562762c7f3b987263d2dedee5c" "checksum aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1e9a933f4e58658d7b12defcf96dc5c720f20832deebe3e0a19efd3b6aaeeb9e" @@ -2922,9 +2973,8 @@ dependencies = [ "checksum arc-swap 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1025aeae2b664ca0ea726a89d574fe8f4e77dd712d443236ad1de00379450cf6" "checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee" "checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" -"checksum askama_escape 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "719b48039ffac1564f67d70162109ba9341125cee0096a540e478355b3c724a7" "checksum atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652" -"checksum autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4e5f34df7a019573fb8bdc7e24a2bfebe51a2a1d6bfdbaeccedb3c41fc574727" +"checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799" "checksum backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "b5b493b66e03090ebc4343eb02f94ff944e0cbc9ac6571491d170ba026741eb5" "checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6" "checksum base64 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "621fc7ecb8008f86d7fb9b95356cd692ce9514b80a86d85b397f32a22da7b9e2" @@ -2995,7 +3045,7 @@ dependencies = [ "checksum gif 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4bca55ac1f213920ce3527ccd62386f1f15fa3f1714aeee1cf93f2c416903f" "checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" "checksum globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4743617a7464bbda3c8aec8558ff2f9429047e025771037df561d383337ff865" -"checksum h2 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "1ac030ae20dee464c5d0f36544d8b914a6bc606da44a57e052d2b0f5dae129e0" +"checksum h2 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "30e0b8e55b4d7ffedade2b9605851f8e85f5010663e7ad170ef3c0f0681bc43f" "checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" "checksum hostname 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "21ceb46a83a85e824ef93669c8b390009623863b5c195d1ba747292c0c72f94e" "checksum html5ever 0.22.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c213fa6a618dc1da552f54f85cba74b05d8e883c92ec4e89067736938084c26e" @@ -3003,10 +3053,10 @@ dependencies = [ "checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83" "checksum humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" "checksum humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ca7e5f2e110db35f93b837c81797f3714500b81d517bf20c431b16d3ca4f114" -"checksum hyper 0.12.19 (registry+https://github.com/rust-lang/crates.io-index)" = "f1ebec079129e43af5e234ef36ee3d7e6085687d145b7ea653b262d16c6b65f1" +"checksum hyper 0.12.21 (registry+https://github.com/rust-lang/crates.io-index)" = "6d6b1a3d01ac8035b8d2d94e0e5254eab82746f09046baed763751b00253232b" "checksum hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "32cd73f14ad370d3b4d4b7dce08f69b81536c82e39fcc89731930fe5788cd661" "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" -"checksum image 0.20.1 (registry+https://github.com/rust-lang/crates.io-index)" = "44665b4395d1844c96e7dc8ed5754782a1cdfd9ef458a80bbe45702681450504" +"checksum image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)" = "52fb0666a1273dac46f9725aa4859bcd5595fc3554cf3495051b4de8db745e7d" "checksum indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7e81a7c05f79578dbc15793d8b619db9ba32b4577003ef3af1a91c416798c58d" "checksum inflate 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "84c683bde2d8413b8f1be3e459c30e4817672b6e7a31d9212b0323154e76eba7" "checksum inotify 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "40b54539f3910d6f84fbf9a643efd6e3aa6e4f001426c0329576128255994718" @@ -3019,7 +3069,7 @@ dependencies = [ "checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" "checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" -"checksum libc 0.2.46 (registry+https://github.com/rust-lang/crates.io-index)" = "023a4cd09b2ff695f9734c1934145a315594b7986398496841c7031a5a1bbdbd" +"checksum libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)" = "48450664a984b25d5b479554c29cc04e3150c97aa4c01da5604a2d4ed9151476" "checksum libflate 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "bff3ac7d6f23730d3b533c35ed75eef638167634476a499feef16c428d74b57b" "checksum linked-hash-map 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7860ec297f7008ff7a1e3382d7f7e1dcd69efc94751a2284bafc3d013c2aa939" "checksum linked-hash-map 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "70fb39025bc7cdd76305867c4eccf2f2dcf6e9a57f5b21a93e1c2d86cd03ec9e" @@ -3031,9 +3081,9 @@ dependencies = [ "checksum maplit 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "08cbb6b4fef96b6d77bfc40ec491b1690c779e77b05cd9f07f787ed376fd4c43" "checksum markup5ever 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "897636f9850c3eef4905a5540683ed53dc9393860f0846cab2c2ddf9939862ff" "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" -"checksum memchr 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "db4c41318937f6e76648f42826b1d9ade5c09cafb5aef7e351240a70f39206e9" +"checksum memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e1dd4eaac298c32ce07eb6ed9242eda7d82955b9170b7d6db59b2e02cc63fcb8" "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" -"checksum mime 0.3.12 (registry+https://github.com/rust-lang/crates.io-index)" = "0a907b83e7b9e987032439a387e187119cddafc92d5c2aaeb1d92580a793f630" +"checksum mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "3e27ca21f40a310bd06d9031785f4801710d566c184a6e15bad4f1d9b65f9425" "checksum mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30de2e4613efcba1ec63d8133f344076952090c122992a903359be5a4f99c3ed" "checksum miniz-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "0300eafb20369952951699b68243ab4334f4b10a88f411c221d444b36c40e649" "checksum miniz_oxide 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5ad30a47319c16cde58d0314f5d98202a80c9083b5f61178457403dfb14e509c" @@ -3047,6 +3097,7 @@ dependencies = [ "checksum new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0cdc457076c78ab54d5e0d6fa7c47981757f1e34dc39ff92787f217dede586c4" "checksum nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17" "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" +"checksum nom 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9c349f68f25f596b9f44cf0e7c69752a5c633b0550c3ff849518bfba0233774a" "checksum notify 4.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "873ecfd8c174964ae30f401329d140142312c8e5590719cf1199d5f1717d8078" "checksum num-derive 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8af1847c907c2f04d7bfd572fb25bbb4385c637fe5be163cf2f8c5d778fe1e7d" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" @@ -3054,8 +3105,8 @@ dependencies = [ "checksum num-rational 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4e96f040177bb3da242b5b1ecf3f54b5d5af3efbbfb18608977a5d2767b22f10" "checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1" "checksum num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5a69d464bdc213aaaff628444e99578ede64e9c854025aa43b9796530afa9238" -"checksum onig 4.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3febe8cb22362af9e662c9c35e4d8a675de50b1b119823aa556892ac967fb776" -"checksum onig_sys 69.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "78c04019a39ebac42dfd8c7822af0a009043720845a812ddbb95e403298b0183" +"checksum onig 4.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2e69a05d35a8f30d626a1df53c8636fe1b689407d744c0c7623aa825c0a3356e" +"checksum onig_sys 69.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388410bf5fa341f10e58e6db3975f4bea1ac30247dd79d37a9e5ced3cb4cc3b0" "checksum openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ec7bd7ca4cce6dbdc77e7c1230682740d307d1218a87fb0349a571272be749f9" "checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" "checksum openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)" = "1bb974e77de925ef426b6bc82fce15fd45bdcbeb5728bffcfc7cdeeb7ce1c2d6" @@ -3073,36 +3124,38 @@ dependencies = [ "checksum phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0" "checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c" "checksum plist 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0c7316832d9ac5da02786bdc89a3faf0ca07070212b388766e969078fd593edc" -"checksum png 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f54b9600d584d3b8a739e1662a595fab051329eff43f20e7d8cc22872962145b" +"checksum png 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9adebf7fb91ccf5eac9da1a8e00e83cb8ae882c3e8d8e4ad59da73cb8c82a2c9" "checksum precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" -"checksum proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)" = "77619697826f31a02ae974457af0b29b723e5619e113e9397b8b82c6bd253f09" +"checksum proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)" = "38fddd23d98b2144d197c0eca5705632d4fe2667d14a6be5df8934f8d74f1978" "checksum pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "eef52fac62d0ea7b9b4dc7da092aa64ea7ec3d90af6679422d3d7e0e14b6ee15" "checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0" -"checksum quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "53fa22a1994bd0f9372d7a816207d8a2677ad0325b073f5c5332760f0fb62b5c" -"checksum rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8356f47b32624fef5b3301c1be97e5944ecdd595409cc5da11d05f211db6cfbd" +"checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1" +"checksum rand 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "dee497e66d8d76bf08ce20c8d36e16f93749ab0bf89975b4f8ae5cee660c2da2" "checksum rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e464cd887e869cddcae8792a4ee31d23c7edd516700695608f5b98c67ee0131c" -"checksum rand 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b65e163105a6284f841bd23100a015895f54340e88a5ffc9ca7b8b33827cfce0" +"checksum rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3906503e80ac6cbcacb2c2973fa8e473f24d7e2747c8c92bb230c2441cad96b5" "checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" "checksum rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1961a422c4d189dfb50ffa9320bf1f2a9bd54ecb92792fb9477f99a1045f3372" "checksum rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0905b6b7079ec73b314d4c748701f6931eb79fd97c668caa3f1899b22b32c6db" "checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" "checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" -"checksum rand_os 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de5ac4de1c2973e1391dc305cb0fbf8788cb58068e98255439b7485a77022273" +"checksum rand_os 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f46fbd5550acf75b0c2730f5dd1873751daf9beb8f11b44027778fae50d7feca" "checksum rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "086bd09a33c7044e56bb44d5bdde5a60e7f119a9e95b0775f545de759a32fe05" "checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" "checksum rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "373814f27745b2686b350dd261bfd24576a6fb0e2c5919b3a2b6005f820b0473" "checksum rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b055d1e92aba6877574d8fe604a63c8b5df60f60e5982bf7ccbb1338ea527356" -"checksum redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)" = "52ee9a534dc1301776eff45b4fa92d2c39b1d8c3d3357e6eb593e0d795506fc2" +"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" +"checksum redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)" = "423e376fffca3dfa06c9e9790a9ccd282fafb3cc6e6397d01dbf64f9bacc6b85" "checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76" "checksum regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "37e7cbbd370869ce2e8dff25c7018702d10b21a20ef7135316f8daecd6c25b7f" "checksum regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4e47a2ed29da7a9e1960e1639e7a982e6edc6d49be308a3b02daf511504a16d1" "checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5" -"checksum reqwest 0.9.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ab52e462d1e15891441aeefadff68bdea005174328ce3da0a314f2ad313ec837" -"checksum resolv-conf 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c62bd95a41841efdf7fca2ae9951e64a8d8eae7e5da196d8ce489a2241491a92" +"checksum reqwest 0.9.8 (registry+https://github.com/rust-lang/crates.io-index)" = "0e60f169af3915c294818d55dde549f00d2966cef36d6c5e7255d75df3f2b16f" +"checksum resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b263b4aa1b5de9ffc0054a2386f96992058bb6870aab516f8cdeb8a667d56dcb" "checksum rust-stemmers 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "fbf06149ec391025664a5634200ced1afb489f0f3f8a140d515ebc0eb04b4bc0" "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" +"checksum safe-transmute 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9604873ffe1980bc1f179103704a65c8aca141c248d9e52b7af95ff10578166e" "checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9" "checksum same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8f20c4be53a8a1ff4c1f1b2bd14570d2f634628709752f0702ecdd2b3f9a5267" "checksum sass-rs 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90f8cf6e645aa843ffffcbdc1e8752b1f221dfa314c81895aeb229a77aea7e05" @@ -3110,32 +3163,32 @@ dependencies = [ "checksum schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "0e1a231dc10abf6749cfa5d7767f25888d484201accbd919b66ab5413c502d56" "checksum scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" -"checksum security-framework 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "697d3f3c23a618272ead9e1fb259c1411102b31c6af8b93f1d64cca9c3b0e8e0" -"checksum security-framework-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "40d95f3d7da09612affe897f320d78264f0d2320f3e8eea27d12bd1bd94445e2" +"checksum security-framework 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfab8dda0e7a327c696d893df9ffa19cadc4bd195797997f5223cf5831beaf05" +"checksum security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3d6696852716b589dff9e886ff83778bb635150168e83afa8ac6b8a78cb82abc" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -"checksum serde 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)" = "0e732ed5a5592c17d961555e3b552985baf98d50ce418b7b655f31f6ba7eb1b7" -"checksum serde_derive 1.0.84 (registry+https://github.com/rust-lang/crates.io-index)" = "b4d6115a3ca25c224e409185325afc16a0d5aaaabc15c42b09587d6f1ba39a5b" -"checksum serde_json 1.0.34 (registry+https://github.com/rust-lang/crates.io-index)" = "bdf540260cfee6da923831f4776ddc495ada940c30117977c70f1313a6130545" +"checksum serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)" = "534b8b91a95e0f71bca3ed5824752d558da048d4248c91af873b63bd60519752" +"checksum serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)" = "a915306b0f1ac5607797697148c223bedeaa36bcc2e28a01441cd638cc6567b4" +"checksum serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)" = "574378d957d6dcdf1bbb5d562a15cbd5e644159432f84634b94e485267abbcc7" "checksum serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d48f9f99cd749a2de71d29da5f948de7f2764cc5a9d7f3c97e3514d4ee6eabf2" "checksum sha-1 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "51b9d1f3b5de8a167ab06834a7c883bd197f2191e1dda1a22d9ccfeedbf9aded" "checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" "checksum signal-hook 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1f272d1b7586bec132ed427f532dd418d8beca1ca7f2caf7df35569b1415a4b4" "checksum siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac" -"checksum slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5f9776d6b986f77b35c6cf846c11ad986ff128fe0b2b63a3628e3755e8d3102d" +"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" "checksum slotmap 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4ed041f7f2ff35f2bf7d688bf30686976512f8300e37433c2c73ea9f4cf14b" "checksum slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b3bc762e6a4b6c6fcaade73e77f9ebc6991b676f88bb2358bddb56560f073373" -"checksum smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "b73ea3738b47563803ef814925e69be00799a8c07420be8b996f8e98fb2336db" +"checksum smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)" = "88aea073965ab29f6edb5493faf96ad662fb18aa9eeb186a3b7057951605ed15" "checksum socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "c4d11a52082057d87cb5caa31ad812f4504b97ab44732cd8359df2e9ff9f48e7" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" -"checksum string 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "98998cced76115b1da46f63388b909d118a37ae0be0f82ad35773d4a4bc9d18d" +"checksum string 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b639411d0b9c738748b5397d5ceba08e648f4f1992231aa859af1a017f31f60b" "checksum string_cache 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "25d70109977172b127fe834e5449e5ab1740b9ba49fa18a2020f509174f25423" "checksum string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1eea1eee654ef80933142157fdad9dd8bc43cf7c74e999e369263496f04ff4da" "checksum string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b1884d1bc09741d466d9b14e6d37ac89d6909cbcac41dd9ae982d4d063bbedfc" "checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550" "checksum strum 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f6c3a2071519ab6a48f465808c4c1ffdd00dfc8e93111d02b4fc5abab177676e" "checksum strum_macros 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8baacebd7b7c9b864d83a6ba7a246232983e277b86fa5cdec77f565715a4b136" -"checksum syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)" = "734ecc29cd36e8123850d9bf21dfd62ef8300aaa8f879aabaa899721808be37c" +"checksum syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)" = "f92e629aa1d9c827b2bb8297046c1ccffc57c99b947a680d3ccff1f136a3bee9" "checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" "checksum syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e02dd9df97a68a2d005ace28ff24c610abfc3ce17afcfdb22a077645dabb599a" "checksum tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "7e91405c14320e5c79b3d148e1c86f40749a36e490642202a31689cb1a3452b2" @@ -3146,7 +3199,7 @@ dependencies = [ "checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6" "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" "checksum tiff 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a2cc6c4fd13cb1cfd20abdb196e794ceccb29371855b7e7f575945f920a5b3c2" -"checksum time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)" = "847da467bf0db05882a9e2375934a8a55cffdc9db0d128af1518200260ba1f6c" +"checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" "checksum tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4790d0be6f4ba6ae4f48190efa2ed7780c9e3567796abdb285003cf39840d9c5" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" "checksum tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "331c8acc267855ec06eb0c94618dcbbfea45bed2d20b77252940095273fb58f6" @@ -3163,7 +3216,7 @@ dependencies = [ "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" "checksum tower-service 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b32f72af77f1bfe3d3d4da8516a238ebe7039b51dd8637a09841ac7f16d2c987" "checksum trust-dns-proto 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0838272e89f1c693b4df38dc353412e389cf548ceed6f9fd1af5a8d6e0e7cf74" -"checksum trust-dns-proto 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e33f29df428f112ffeda24b328b814b61d6916be29aa89f19bc3f684ba5437b8" +"checksum trust-dns-proto 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "30dde452f5d142d5e316a3b32386da95280c98b7e266639f8f3bc6fdf507d279" "checksum trust-dns-resolver 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "de630f95a192f793436ffae5137e88253cc4142a97d9a8e73c8d804fa85ddf0a" "checksum try-lock 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382" "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" @@ -3187,6 +3240,9 @@ dependencies = [ "checksum utf-8 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "05e42f7c18b8f902290b009cde6d651262f956c98bc51bca4cd1d511c9cd85c7" "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" "checksum uuid 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dab5c5526c5caa3d106653401a267fed923e7046f35895ffcb5ca42db64942e6" +"checksum v_escape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c8b50688edb86f4c092a1a9fe8bda004b0faa3197100897653809e97e09a2814" +"checksum v_escape_derive 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7cd994c63b487fef7aad31e5394ec04b9e24de7b32ea5251c9fb499cd2cbf44c" +"checksum v_htmlescape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "020cae817dc82693aa523f01087b291b1c7a9ac8cea5c12297963f21769fb27f" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" "checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a" "checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" diff --git a/components/errors/Cargo.toml b/components/errors/Cargo.toml index c065109..828b26e 100644 --- a/components/errors/Cargo.toml +++ b/components/errors/Cargo.toml @@ -6,5 +6,5 @@ authors = ["Vincent Prouillet "] [dependencies] tera = "0.11" toml = "0.4" -image = "0.20" +image = "0.21" syntect = "3" diff --git a/components/imageproc/Cargo.toml b/components/imageproc/Cargo.toml index 0851e01..785fc0b 100644 --- a/components/imageproc/Cargo.toml +++ b/components/imageproc/Cargo.toml @@ -7,7 +7,7 @@ authors = ["VojtÄ›ch Král "] lazy_static = "1" regex = "1.0" tera = "0.11" -image = "0.20" +image = "0.21" rayon = "1" errors = { path = "../errors" } diff --git a/components/library/src/content/ser.rs b/components/library/src/content/ser.rs index 5008c80..3404952 100644 --- a/components/library/src/content/ser.rs +++ b/components/library/src/content/ser.rs @@ -225,7 +225,7 @@ impl<'a> SerializingSection<'a> { let mut subsections = Vec::with_capacity(section.subsections.len()); for k in §ion.pages { - pages.push(library.get_page_by_key(*k).to_serialized(library)); + pages.push(library.get_page_by_key(*k).to_serialized_basic(library)); } for k in §ion.subsections { diff --git a/docs/content/documentation/templates/pages-sections.md b/docs/content/documentation/templates/pages-sections.md index b311bfa..0a3525c 100644 --- a/docs/content/documentation/templates/pages-sections.md +++ b/docs/content/documentation/templates/pages-sections.md @@ -32,9 +32,11 @@ word_count: Number; // Based on https://help.medium.com/hc/en-us/articles/214991667-Read-time reading_time: Number; // `earlier` and `later` are only populated if the section variable `sort_by` is set to `date` +// and only set when rendering the page itself earlier: Page?; later: Page?; // `heavier` and `lighter` are only populated if the section variable `sort_by` is set to `weight` +// and only set when rendering the page itself heavier: Page?; lighter: Page?; // See the Table of contents section below for more details From 4259fcad79a2fd4ae966878d7b30645cc8ec9b32 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 22 Jan 2019 17:26:09 +0100 Subject: [PATCH 40/82] woops --- docs/templates/page.html | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/templates/page.html b/docs/templates/page.html index 723f0b1..8f6c09b 100644 --- a/docs/templates/page.html +++ b/docs/templates/page.html @@ -4,5 +4,4 @@ {% block doc_content %}

{{page.title}}

{{page.content | safe}} -{{hey}} {% endblock doc_content %} From 8fa316fba9397e7a2b48a36e9ce82c06329641b9 Mon Sep 17 00:00:00 2001 From: Shaleen Jain Date: Wed, 23 Jan 2019 13:24:53 +0530 Subject: [PATCH 41/82] Add my blog website to examples file --- EXAMPLES.md | 1 + 1 file changed, 1 insertion(+) diff --git a/EXAMPLES.md b/EXAMPLES.md index 5d4883d..9861a40 100644 --- a/EXAMPLES.md +++ b/EXAMPLES.md @@ -20,3 +20,4 @@ | [Jens Getreu's blog](https://blog.getreu.net) | | | [Matthias Endler](https://matthias-endler.de) | https://github.com/mre/mre.github.io | | [Michael Plotke](https://michael.plotke.me) | https://gitlab.com/bdjnk/michael | +| [shaleenjain.com](https://shaleenjain.com) | https://github.com/shalzz/shalzz.github.io | From 3375e7a8f1fa0af8632220b0384f5c16a1ee6f04 Mon Sep 17 00:00:00 2001 From: Shaleen Jain Date: Wed, 23 Jan 2019 13:30:50 +0530 Subject: [PATCH 42/82] doc: add a Github Action to deploy to Github Pages --- docs/content/documentation/deployment/github-pages.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/content/documentation/deployment/github-pages.md b/docs/content/documentation/deployment/github-pages.md index 6ca934d..ecf273f 100644 --- a/docs/content/documentation/deployment/github-pages.md +++ b/docs/content/documentation/deployment/github-pages.md @@ -7,6 +7,13 @@ By default, GitHub Pages uses Jekyll (A ruby based static site generator), but you can use whatever you want provided you have an `index.html` file in the root of a branch called `gh-pages`. That branch name can also be manually changed in the settings of a repository. +We can use any CI server to build and deploy our site. For example: + + * [Github Actions](https://github.com/shalzz/zola-deploy-action) + * [Travis CI](#travis-ci) + +## Travis CI + We are going to use [TravisCI](https://travis-ci.org) to automatically publish the site. If you are not using Travis already, you will need to login with the GitHub OAuth and activate Travis for the repository. Don't forget to also check if your repository allows GitHub Pages in its settings. From 1e2dd9ce0354747ec79c6ab6c374b951533d1f4e Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 23 Jan 2019 19:20:02 +0100 Subject: [PATCH 43/82] Update tera to v1 alpha --- Cargo.lock | 232 ++++++----- components/errors/Cargo.toml | 2 +- components/front_matter/Cargo.toml | 2 +- components/imageproc/Cargo.toml | 2 +- components/library/Cargo.toml | 2 +- components/library/src/content/page.rs | 2 +- components/library/src/content/section.rs | 2 +- components/library/src/pagination/mod.rs | 2 +- components/library/src/taxonomies/mod.rs | 4 +- components/rendering/Cargo.toml | 2 +- components/rendering/src/markdown.rs | 6 +- components/rendering/src/shortcode.rs | 2 +- components/site/Cargo.toml | 2 +- components/site/src/lib.rs | 24 +- components/templates/Cargo.toml | 2 +- components/templates/src/filters.rs | 20 +- .../templates/src/global_fns/load_data.rs | 77 ++-- components/templates/src/global_fns/mod.rs | 377 ++++++++++-------- components/templates/src/lib.rs | 2 +- components/utils/Cargo.toml | 2 +- components/utils/src/templates.rs | 4 +- 21 files changed, 432 insertions(+), 338 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 9f58670..b176634 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3,7 +3,7 @@ name = "MacTypes-sys" version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -18,7 +18,7 @@ dependencies = [ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -76,7 +76,7 @@ dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "h2 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -176,7 +176,7 @@ name = "atty" version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -194,7 +194,7 @@ dependencies = [ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -205,7 +205,7 @@ version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -355,7 +355,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -363,7 +363,7 @@ name = "core-foundation-sys" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -600,21 +600,13 @@ dependencies = [ "backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", ] -[[package]] -name = "error-chain" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "errors" version = "0.1.0" dependencies = [ "image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -649,7 +641,7 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -659,9 +651,9 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "miniz-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "miniz_oxide_c_api 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "miniz_oxide_c_api 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -692,7 +684,7 @@ dependencies = [ "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -709,7 +701,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -717,7 +709,7 @@ name = "fsevent-sys" version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -799,6 +791,15 @@ dependencies = [ "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "globwalk" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "ignore 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "h2" version = "0.1.15" @@ -808,7 +809,7 @@ dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -829,7 +830,7 @@ name = "hostname" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "winutil 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -848,7 +849,7 @@ dependencies = [ [[package]] name = "http" -version = "0.1.14" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -883,7 +884,7 @@ dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "h2 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -919,7 +920,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "ignore" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", + "globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", + "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", + "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -949,7 +967,7 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -974,7 +992,7 @@ dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "inotify-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -985,7 +1003,7 @@ name = "inotify-sys" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -993,7 +1011,7 @@ name = "iovec" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1049,7 +1067,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "libc" -version = "0.2.47" +version = "0.2.48" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1080,7 +1098,7 @@ dependencies = [ "slotmap 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -1169,7 +1187,7 @@ version = "2.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1202,12 +1220,12 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "miniz_oxide" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1215,13 +1233,13 @@ dependencies = [ [[package]] name = "miniz_oxide_c_api" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", - "miniz_oxide 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "miniz_oxide 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1234,7 +1252,7 @@ dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1259,7 +1277,7 @@ version = "0.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1280,7 +1298,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1297,7 +1315,7 @@ version = "0.2.33" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1317,7 +1335,7 @@ dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1336,7 +1354,7 @@ dependencies = [ [[package]] name = "notify" -version = "4.0.6" +version = "4.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1345,7 +1363,7 @@ dependencies = [ "fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "inotify 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1399,7 +1417,7 @@ name = "num_cpus" version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1409,7 +1427,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "onig_sys 69.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1431,7 +1449,7 @@ dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1446,7 +1464,7 @@ version = "0.9.40" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1473,7 +1491,7 @@ name = "parking_lot_core" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1628,7 +1646,7 @@ version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1641,7 +1659,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1652,7 +1670,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1708,7 +1726,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1748,7 +1766,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1831,7 +1849,7 @@ dependencies = [ "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", - "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -1844,7 +1862,7 @@ dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "encoding_rs 0.8.14 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "hyper 0.12.21 (registry+https://github.com/rust-lang/crates.io-index)", "hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "libflate 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1923,7 +1941,7 @@ name = "sass-rs" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "sass-sys 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1933,7 +1951,7 @@ version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1974,7 +1992,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "core-foundation 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1985,7 +2003,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "MacTypes-sys 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2060,7 +2078,7 @@ version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arc-swap 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2085,7 +2103,7 @@ dependencies = [ "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", - "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -2121,7 +2139,7 @@ version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2236,7 +2254,7 @@ version = "3.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2257,7 +2275,7 @@ dependencies = [ "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "reqwest 0.9.8 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", @@ -2275,12 +2293,11 @@ dependencies = [ [[package]] name = "tera" -version = "0.11.20" +version = "1.0.0-alpha.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", - "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", + "globwalk 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2289,8 +2306,9 @@ dependencies = [ "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "unic-segment 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-segment 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", + "v_htmlescape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2306,7 +2324,7 @@ name = "termion" version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2343,7 +2361,7 @@ name = "time" version = "0.1.42" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2441,7 +2459,7 @@ version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "signal-hook 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2512,7 +2530,7 @@ dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2623,46 +2641,46 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "unic-char-property" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "unic-char-range 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-char-range 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "unic-char-range" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "unic-common" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "unic-segment" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "unic-ucd-segment 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-ucd-segment 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "unic-ucd-segment" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "unic-char-property 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "unic-char-range 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "unic-ucd-version 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-char-property 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-char-range 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-ucd-version 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "unic-ucd-version" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "unic-common 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-common 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2691,8 +2709,11 @@ dependencies = [ [[package]] name = "unicode-normalization" -version = "0.1.7" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "unicode-segmentation" @@ -2745,7 +2766,7 @@ dependencies = [ "errors 0.1.0", "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2950,7 +2971,7 @@ dependencies = [ "errors 0.1.0", "front_matter 0.1.0", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "notify 4.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "notify 4.0.7 (registry+https://github.com/rust-lang/crates.io-index)", "rebuild 0.1.0", "site 0.1.0", "termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3022,7 +3043,6 @@ dependencies = [ "checksum encoding-index-tradchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fd0e20d5688ce3cab59eb3ef3a2083a5c77bf496cb798dc6fcdb75f323890c18" "checksum encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569" "checksum encoding_rs 0.8.14 (registry+https://github.com/rust-lang/crates.io-index)" = "a69d152eaa438a291636c1971b0a370212165ca8a75759eb66818c5ce9b538f7" -"checksum error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07e791d3be96241c77c43846b665ef1384606da2cd2a48730abe606a12906e02" "checksum error-chain 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6930e04918388a9a2e41d518c25cf679ccafe26733fb4127dbf21993f2575d46" "checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2" "checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1" @@ -3045,17 +3065,19 @@ dependencies = [ "checksum gif 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4bca55ac1f213920ce3527ccd62386f1f15fa3f1714aeee1cf93f2c416903f" "checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" "checksum globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4743617a7464bbda3c8aec8558ff2f9429047e025771037df561d383337ff865" +"checksum globwalk 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4be0267260c9bb4e278dfb2291de9518a595cb625cf6f5f385c4b7d8d1aa7112" "checksum h2 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "30e0b8e55b4d7ffedade2b9605851f8e85f5010663e7ad170ef3c0f0681bc43f" "checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" "checksum hostname 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "21ceb46a83a85e824ef93669c8b390009623863b5c195d1ba747292c0c72f94e" "checksum html5ever 0.22.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c213fa6a618dc1da552f54f85cba74b05d8e883c92ec4e89067736938084c26e" -"checksum http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "02096a6d2c55e63f7fcb800690e4f889a25f6ec342e3adb4594e293b625215ab" +"checksum http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "1a10e5b573b9a0146545010f50772b9e8b1dd0a256564cc4307694c68832a2f5" "checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83" "checksum humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" "checksum humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ca7e5f2e110db35f93b837c81797f3714500b81d517bf20c431b16d3ca4f114" "checksum hyper 0.12.21 (registry+https://github.com/rust-lang/crates.io-index)" = "6d6b1a3d01ac8035b8d2d94e0e5254eab82746f09046baed763751b00253232b" "checksum hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "32cd73f14ad370d3b4d4b7dce08f69b81536c82e39fcc89731930fe5788cd661" "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" +"checksum ignore 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ad03ca67dc12474ecd91fdb94d758cbd20cb4e7a78ebe831df26a9b7511e1162" "checksum image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)" = "52fb0666a1273dac46f9725aa4859bcd5595fc3554cf3495051b4de8db745e7d" "checksum indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7e81a7c05f79578dbc15793d8b619db9ba32b4577003ef3af1a91c416798c58d" "checksum inflate 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "84c683bde2d8413b8f1be3e459c30e4817672b6e7a31d9212b0323154e76eba7" @@ -3069,7 +3091,7 @@ dependencies = [ "checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" "checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" -"checksum libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)" = "48450664a984b25d5b479554c29cc04e3150c97aa4c01da5604a2d4ed9151476" +"checksum libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)" = "e962c7641008ac010fa60a7dfdc1712449f29c44ef2d4702394aea943ee75047" "checksum libflate 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "bff3ac7d6f23730d3b533c35ed75eef638167634476a499feef16c428d74b57b" "checksum linked-hash-map 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7860ec297f7008ff7a1e3382d7f7e1dcd69efc94751a2284bafc3d013c2aa939" "checksum linked-hash-map 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "70fb39025bc7cdd76305867c4eccf2f2dcf6e9a57f5b21a93e1c2d86cd03ec9e" @@ -3086,8 +3108,8 @@ dependencies = [ "checksum mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "3e27ca21f40a310bd06d9031785f4801710d566c184a6e15bad4f1d9b65f9425" "checksum mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30de2e4613efcba1ec63d8133f344076952090c122992a903359be5a4f99c3ed" "checksum miniz-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "0300eafb20369952951699b68243ab4334f4b10a88f411c221d444b36c40e649" -"checksum miniz_oxide 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5ad30a47319c16cde58d0314f5d98202a80c9083b5f61178457403dfb14e509c" -"checksum miniz_oxide_c_api 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "28edaef377517fd9fe3e085c37d892ce7acd1fbeab9239c5a36eec352d8a8b7e" +"checksum miniz_oxide 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c468f2369f07d651a5d0bb2c9079f8488a66d5466efe42d0c5c6466edcb7f71e" +"checksum miniz_oxide_c_api 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b7fe927a42e3807ef71defb191dc87d4e24479b221e67015fe38ae2b7b447bab" "checksum mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)" = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432" "checksum mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "46e73a04c2fa6250b8d802134d56d554a9ec2922bf977777c805ea5def61ce40" "checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" @@ -3098,7 +3120,7 @@ dependencies = [ "checksum nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17" "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" "checksum nom 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9c349f68f25f596b9f44cf0e7c69752a5c633b0550c3ff849518bfba0233774a" -"checksum notify 4.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "873ecfd8c174964ae30f401329d140142312c8e5590719cf1199d5f1717d8078" +"checksum notify 4.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "c968cf37cf949114b00d51b0b23536d1c3a4a3963767cf4c969c65a6af78dc7d" "checksum num-derive 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8af1847c907c2f04d7bfd572fb25bbb4385c637fe5be163cf2f8c5d778fe1e7d" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" "checksum num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "af3fdbbc3291a5464dc57b03860ec37ca6bf915ed6ee385e7c6c052c422b2124" @@ -3193,7 +3215,7 @@ dependencies = [ "checksum syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e02dd9df97a68a2d005ace28ff24c610abfc3ce17afcfdb22a077645dabb599a" "checksum tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "7e91405c14320e5c79b3d148e1c86f40749a36e490642202a31689cb1a3452b2" "checksum tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "707feda9f2582d5d680d733e38755547a3e8fb471e7ba11452ecfd9ce93a5d3b" -"checksum tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)" = "4b505279e19d8f7d24b1a9dc58327c9c36174b1a2c7ebdeac70792d017cb64f3" +"checksum tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8f5847f6a7882d3068732f542fd9144314233f3e9eed3e1223518994e951683d" "checksum termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4096add70612622289f2fdcdbd5086dc81c1e2675e6ae58d6c4f62a16c6d7f2f" "checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096" "checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6" @@ -3222,16 +3244,16 @@ dependencies = [ "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" "checksum ucd-trie 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "71a9c5b1fe77426cf144cc30e49e955270f5086e31a6441dfa8b32efc09b9d77" "checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86" -"checksum unic-char-property 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ce36d3f7ce754afdbccccf8ff0dd0134e50fb44aaae579f96218856e9e5dbd1e" -"checksum unic-char-range 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9ab85fab42ad1b26cafc03bf891f69cb4d6e15f491030e89a0122197baa8ae8" -"checksum unic-common 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff8d4a7ade929ef7d971e16ced21a8cd56a63869aa6032dfb8cb083cf7d077bf" -"checksum unic-segment 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c9ca47cbb09fb5fcd066b5867d11dc528302fa465277882797d6a836e1ee6f9e" -"checksum unic-ucd-segment 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "48f1a08ce0409a9e391b88d1930118eec48af12742fc538bcec55f775865776e" -"checksum unic-ucd-version 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1f5e6c6c53c2d0ece4a5964bc55fcff8602153063cb4fab20958ff32998ff6" +"checksum unic-char-property 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "70aaa0e0c676362a3a4945c9f69b095201b11fbe967c7fc0e414b9c8dba89b20" +"checksum unic-char-range 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7232ba52475caa78979e29fcfd596f502e035bca9f8b42ae0061b24f7960c282" +"checksum unic-common 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "927243420dad0c87b8aa487c84d28dc2d66088d5383c1c3f1c352043a4b33b2a" +"checksum unic-segment 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7bf6ab996840832e606c29f54e9b37c2ceb03c24af640b6022b09fdeb0067f7f" +"checksum unic-ucd-segment 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "54959cc93f681cae3d977532c42181a5f363cb95625bfcc71854486e8a5640ff" +"checksum unic-ucd-version 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f6bfaa7ddcc6772ec63932876639daf4b1eeff7683e15c7f9247724d4a6c910" "checksum unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33" "checksum unicase 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9d3218ea14b4edcaccfa0df0a64a3792a2c32cc706f1b336e48867f9d3147f90" "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" -"checksum unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "6a0180bc61fc5a987082bfa111f4cc95c4caff7f9799f3e46df09163a937aa25" +"checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" "checksum unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1" "checksum unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" diff --git a/components/errors/Cargo.toml b/components/errors/Cargo.toml index 828b26e..11b0863 100644 --- a/components/errors/Cargo.toml +++ b/components/errors/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" authors = ["Vincent Prouillet "] [dependencies] -tera = "0.11" +tera = "1.0.0-alpha.3" toml = "0.4" image = "0.21" syntect = "3" diff --git a/components/front_matter/Cargo.toml b/components/front_matter/Cargo.toml index 1de7545..3b80d83 100644 --- a/components/front_matter/Cargo.toml +++ b/components/front_matter/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" authors = ["Vincent Prouillet "] [dependencies] -tera = "0.11" +tera = "1.0.0-alpha.3" chrono = "0.4" serde = "1" serde_derive = "1" diff --git a/components/imageproc/Cargo.toml b/components/imageproc/Cargo.toml index 785fc0b..2a88794 100644 --- a/components/imageproc/Cargo.toml +++ b/components/imageproc/Cargo.toml @@ -6,7 +6,7 @@ authors = ["Vojtěch Král "] [dependencies] lazy_static = "1" regex = "1.0" -tera = "0.11" +tera = "1.0.0-alpha.3" image = "0.21" rayon = "1" diff --git a/components/library/Cargo.toml b/components/library/Cargo.toml index 1391189..289d3e3 100644 --- a/components/library/Cargo.toml +++ b/components/library/Cargo.toml @@ -7,7 +7,7 @@ authors = ["Vincent Prouillet "] slotmap = "0.2" rayon = "1" chrono = { version = "0.4", features = ["serde"] } -tera = "0.11" +tera = "1.0.0-alpha.3" serde = "1" serde_derive = "1" slug = "0.1" diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 9a80014..cc5407c 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -257,7 +257,7 @@ impl Page { context.insert("page", &self.to_serialized(library)); context.insert("lang", &self.lang); - render_template(&tpl_name, tera, &context, &config.theme) + render_template(&tpl_name, tera, context, &config.theme) .map_err(|e| Error::chain(format!("Failed to render page '{}'", self.file.path.display()), e)) } diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index cb2d940..5405689 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -189,7 +189,7 @@ impl Section { context.insert("section", &self.to_serialized(library)); context.insert("lang", &self.lang); - render_template(tpl_name, tera, &context, &config.theme) + render_template(tpl_name, tera, context, &config.theme) .map_err(|e| Error::chain(format!("Failed to render section '{}'", self.file.path.display()), e)) } diff --git a/components/library/src/pagination/mod.rs b/components/library/src/pagination/mod.rs index da2c1c1..6f47cbe 100644 --- a/components/library/src/pagination/mod.rs +++ b/components/library/src/pagination/mod.rs @@ -221,7 +221,7 @@ impl<'a> Paginator<'a> { context.insert("current_path", &pager.path); context.insert("paginator", &self.build_paginator_context(pager)); - render_template(&self.template, tera, &context, &config.theme) + render_template(&self.template, tera, context, &config.theme) .map_err(|e| Error::chain(format!("Failed to render pager {}", pager.index), e)) } } diff --git a/components/library/src/taxonomies/mod.rs b/components/library/src/taxonomies/mod.rs index c44265c..6d949d3 100644 --- a/components/library/src/taxonomies/mod.rs +++ b/components/library/src/taxonomies/mod.rs @@ -144,7 +144,7 @@ impl Taxonomy { ); context.insert("current_path", &format!("/{}/{}", self.kind.name, item.slug)); - render_template(&format!("{}/single.html", self.kind.name), tera, &context, &config.theme) + render_template(&format!("{}/single.html", self.kind.name), tera, context, &config.theme) .map_err(|e| Error::chain(format!("Failed to render single term {} page.", self.kind.name), e)) } @@ -163,7 +163,7 @@ impl Taxonomy { context.insert("current_url", &config.make_permalink(&self.kind.name)); context.insert("current_path", &self.kind.name); - render_template(&format!("{}/list.html", self.kind.name), tera, &context, &config.theme) + render_template(&format!("{}/list.html", self.kind.name), tera, context, &config.theme) .map_err(|e| Error::chain(format!("Failed to render a list of {} page.", self.kind.name), e)) } diff --git a/components/rendering/Cargo.toml b/components/rendering/Cargo.toml index 21815e1..b0eca64 100644 --- a/components/rendering/Cargo.toml +++ b/components/rendering/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" authors = ["Vincent Prouillet "] [dependencies] -tera = { version = "0.11", features = ["preserve_order"] } +tera = { version = "1.0.0-alpha.3", features = ["preserve_order"] } syntect = "3" pulldown-cmark = "0.2" slug = "0.1" diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index 01e31af..7e7611f 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -9,7 +9,7 @@ use syntect::html::{ use config::highlighting::{get_highlighter, SYNTAX_SET, THEME_SET}; use context::RenderContext; -use errors::Result; +use errors::{Error, Result}; use front_matter::InsertAnchor; use link_checker::check_url; use table_of_contents::{Header, make_table_of_contents, TempHeader}; @@ -245,7 +245,9 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result"] [dependencies] -tera = "0.11" +tera = "1.0.0-alpha.3" glob = "0.2" rayon = "1" serde = "1" diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 5c3a98f..1406063 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -329,29 +329,29 @@ impl Site { pub fn register_early_global_fns(&mut self) { self.tera.register_function( "get_url", - global_fns::make_get_url(self.permalinks.clone(), self.config.clone()), + global_fns::GetUrl::new(self.config.clone(), self.permalinks.clone()), ); self.tera.register_function( "resize_image", - global_fns::make_resize_image(self.imageproc.clone()), + global_fns::ResizeImage::new(self.imageproc.clone()), ); self.tera.register_function( "load_data", - global_fns::make_load_data(self.content_path.clone(), self.base_path.clone()), + global_fns::LoadData::new(self.content_path.clone(), self.base_path.clone()), ); - self.tera.register_function("trans", global_fns::make_trans(self.config.clone())); + self.tera.register_function("trans", global_fns::Trans::new(self.config.clone())); self.tera.register_function( "get_taxonomy_url", - global_fns::make_get_taxonomy_url(&self.taxonomies), + global_fns::GetTaxonomyUrl::new(&self.taxonomies), ); } pub fn register_tera_global_fns(&mut self) { - self.tera.register_function("get_page", global_fns::make_get_page(&self.library)); - self.tera.register_function("get_section", global_fns::make_get_section(&self.library)); + self.tera.register_function("get_page", global_fns::GetPage::new(&self.library)); + self.tera.register_function("get_section", global_fns::GetSection::new(&self.library)); self.tera.register_function( "get_taxonomy", - global_fns::make_get_taxonomy(&self.taxonomies, &self.library), + global_fns::GetTaxonomy::new(&self.taxonomies, &self.library), ); } @@ -693,7 +693,7 @@ impl Site { ensure_directory_exists(&self.output_path)?; let mut context = Context::new(); context.insert("config", &self.config); - let output = render_template("404.html", &self.tera, &context, &self.config.theme)?; + let output = render_template("404.html", &self.tera, context, &self.config.theme)?; create_file(&self.output_path.join("404.html"), &self.inject_livereload(output)) } @@ -704,7 +704,7 @@ impl Site { context.insert("config", &self.config); create_file( &self.output_path.join("robots.txt"), - &render_template("robots.txt", &self.tera, &context, &self.config.theme)?, + &render_template("robots.txt", &self.tera, context, &self.config.theme)?, ) } @@ -841,7 +841,7 @@ impl Site { context.insert("taxonomies", &taxonomies); context.insert("config", &self.config); - let sitemap = &render_template("sitemap.xml", &self.tera, &context, &self.config.theme)?; + let sitemap = &render_template("sitemap.xml", &self.tera, context, &self.config.theme)?; create_file(&self.output_path.join("sitemap.xml"), sitemap)?; @@ -891,7 +891,7 @@ impl Site { context.insert("feed_url", &rss_feed_url); - let feed = &render_template("rss.xml", &self.tera, &context, &self.config.theme)?; + let feed = &render_template("rss.xml", &self.tera, context, &self.config.theme)?; if let Some(ref base) = base_path { let mut output_path = self.output_path.clone(); diff --git a/components/templates/Cargo.toml b/components/templates/Cargo.toml index b84e15b..4f95aac 100644 --- a/components/templates/Cargo.toml +++ b/components/templates/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" authors = ["Vincent Prouillet "] [dependencies] -tera = "0.11" +tera = "1.0.0-alpha.3" base64 = "0.10" lazy_static = "1" pulldown-cmark = "0.2" diff --git a/components/templates/src/filters.rs b/components/templates/src/filters.rs index 901c0f6..a8911af 100644 --- a/components/templates/src/filters.rs +++ b/components/templates/src/filters.rs @@ -4,7 +4,7 @@ use base64::{decode, encode}; use pulldown_cmark as cmark; use tera::{to_value, Result as TeraResult, Value}; -pub fn markdown(value: Value, args: HashMap) -> TeraResult { +pub fn markdown(value: &Value, args: &HashMap) -> TeraResult { let s = try_get_value!("markdown", "value", String, value); let inline = match args.get("inline") { Some(val) => try_get_value!("markdown", "inline", bool, val), @@ -30,12 +30,12 @@ pub fn markdown(value: Value, args: HashMap) -> TeraResult Ok(to_value(&html).unwrap()) } -pub fn base64_encode(value: Value, _: HashMap) -> TeraResult { +pub fn base64_encode(value: &Value, _: &HashMap) -> TeraResult { let s = try_get_value!("base64_encode", "value", String, value); Ok(to_value(&encode(s.as_bytes())).unwrap()) } -pub fn base64_decode(value: Value, _: HashMap) -> TeraResult { +pub fn base64_decode(value: &Value, _: &HashMap) -> TeraResult { let s = try_get_value!("base64_decode", "value", String, value); Ok(to_value(&String::from_utf8(decode(s.as_bytes()).unwrap()).unwrap()).unwrap()) } @@ -50,7 +50,7 @@ mod tests { #[test] fn markdown_filter() { - let result = markdown(to_value(&"# Hey").unwrap(), HashMap::new()); + let result = markdown(&to_value(&"# Hey").unwrap(), &HashMap::new()); assert!(result.is_ok()); assert_eq!(result.unwrap(), to_value(&"

Hey

\n").unwrap()); } @@ -60,8 +60,8 @@ mod tests { let mut args = HashMap::new(); args.insert("inline".to_string(), to_value(true).unwrap()); let result = markdown( - to_value(&"Using `map`, `filter`, and `fold` instead of `for`").unwrap(), - args, + &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()); @@ -73,7 +73,7 @@ mod tests { let mut args = HashMap::new(); args.insert("inline".to_string(), to_value(true).unwrap()); let result = markdown( - to_value( + &to_value( &r#" |id|author_id| timestamp_created|title |content | |-:|--------:|-----------------------:|:---------------------|:-----------------| @@ -82,7 +82,7 @@ mod tests { "#, ) .unwrap(), - args, + &args, ); assert!(result.is_ok()); assert!(result.unwrap().as_str().unwrap().contains("")); @@ -102,7 +102,7 @@ mod tests { ]; for (input, expected) in tests { let args = HashMap::new(); - let result = base64_encode(to_value(input).unwrap(), args); + let result = base64_encode(&to_value(input).unwrap(), &args); assert!(result.is_ok()); assert_eq!(result.unwrap(), to_value(expected).unwrap()); } @@ -121,7 +121,7 @@ mod tests { ]; for (input, expected) in tests { let args = HashMap::new(); - let result = base64_decode(to_value(input).unwrap(), args); + let result = base64_decode(&to_value(input).unwrap(), &args); assert!(result.is_ok()); assert_eq!(result.unwrap(), to_value(expected).unwrap()); } diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index e6ad349..4fec8a9 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -16,7 +16,7 @@ use std::sync::{Arc, Mutex}; use csv::Reader; use std::collections::HashMap; -use tera::{from_value, to_value, Error, GlobalFn, Map, Result, Value}; +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"; @@ -170,28 +170,37 @@ fn get_output_format_from_args( OutputFormat::from_str(from_extension) } -/// A global function to load data from a file or from a URL +/// A Tera function to load data from a file or from a URL /// Currently the supported formats are json, toml, csv and plain text -pub fn make_load_data(content_path: PathBuf, base_path: PathBuf) -> GlobalFn { - let mut headers = header::HeaderMap::new(); - headers.insert(header::USER_AGENT, "zola".parse().unwrap()); - let client = Arc::new(Mutex::new(Client::builder().build().expect("reqwest client build"))); - let result_cache: Arc>> = Arc::new(Mutex::new(HashMap::new())); - Box::new(move |args| -> Result { - let data_source = get_data_source_from_args(&content_path, &args)?; +#[derive(Debug)] +pub struct LoadData { + content_path: PathBuf, + base_path: PathBuf, + client: Arc>, + result_cache: Arc>>, +} +impl LoadData { + pub fn new(content_path: PathBuf, base_path: PathBuf) -> Self { + let client = Arc::new(Mutex::new(Client::builder().build().expect("reqwest client build"))); + let result_cache = Arc::new(Mutex::new(HashMap::new())); + Self {content_path, base_path, client, result_cache} + } +} +impl TeraFn for LoadData { + fn call(&self, args: &HashMap) -> Result { + let data_source = get_data_source_from_args(&self.content_path, &args)?; let file_format = get_output_format_from_args(&args, &data_source)?; - let cache_key = data_source.get_cache_key(&file_format); - let mut cache = result_cache.lock().expect("result cache lock"); - let response_client = client.lock().expect("response client lock"); + 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(&base_path, path), + DataSource::Path(path) => read_data_file(&self.base_path, path), DataSource::Url(url) => { let mut response = response_client .get(url.as_str()) @@ -223,7 +232,7 @@ pub fn make_load_data(content_path: PathBuf, base_path: PathBuf) -> GlobalFn { } result_value - }) + } } /// Parse a JSON string and convert it to a Tera Value @@ -301,12 +310,12 @@ fn load_csv(csv_data: String) -> Result { #[cfg(test)] mod tests { - use super::{make_load_data, DataSource, OutputFormat}; + use super::{LoadData, DataSource, OutputFormat}; use std::collections::HashMap; use std::path::PathBuf; - use tera::to_value; + use tera::{to_value, Function}; fn get_test_file(filename: &str) -> PathBuf { let test_files = PathBuf::from("../utils/test-files").canonicalize().unwrap(); @@ -316,26 +325,26 @@ mod tests { #[test] fn fails_when_missing_file() { let static_fn = - make_load_data(PathBuf::from("../utils/test-files"), PathBuf::from("../utils")); + LoadData::new(PathBuf::from("../utils/test-files"), PathBuf::from("../utils")); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("../../../READMEE.md").unwrap()); - let result = static_fn(args); + let result = static_fn.call(&args); assert!(result.is_err()); - assert!(result.unwrap_err().description().contains("READMEE.md doesn't exist")); + assert!(result.unwrap_err().to_string().contains("READMEE.md doesn't exist")); } #[test] fn cant_load_outside_content_dir() { let static_fn = - make_load_data(PathBuf::from("../utils/test-files"), PathBuf::from("../utils")); + LoadData::new(PathBuf::from("../utils/test-files"), 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(args); + let result = static_fn.call(&args); assert!(result.is_err()); assert!(result .unwrap_err() - .description() + .to_string() .contains("README.md is not inside the base site directory")); } @@ -377,11 +386,11 @@ mod tests { #[test] fn can_load_remote_data() { - let static_fn = make_load_data(PathBuf::new(), PathBuf::new()); + let static_fn = LoadData::new(PathBuf::new(), PathBuf::new()); let mut args = HashMap::new(); args.insert("url".to_string(), to_value("https://httpbin.org/json").unwrap()); args.insert("format".to_string(), to_value("json").unwrap()); - let result = static_fn(args).unwrap(); + let result = static_fn.call(&args).unwrap(); assert_eq!( result.get("slideshow").unwrap().get("title").unwrap(), &to_value("Sample Slide Show").unwrap() @@ -390,29 +399,29 @@ mod tests { #[test] fn fails_when_request_404s() { - let static_fn = make_load_data(PathBuf::new(), PathBuf::new()); + let static_fn = LoadData::new(PathBuf::new(), PathBuf::new()); let mut args = HashMap::new(); args.insert("url".to_string(), to_value("https://httpbin.org/status/404/").unwrap()); args.insert("format".to_string(), to_value("json").unwrap()); - let result = static_fn(args); + let result = static_fn.call(&args); assert!(result.is_err()); assert_eq!( - result.unwrap_err().description(), + result.unwrap_err().to_string(), "Failed to request https://httpbin.org/status/404/: 404 Not Found" ); } #[test] fn can_load_toml() { - let static_fn = make_load_data( + let static_fn = LoadData::new( PathBuf::from("../utils/test-files"), PathBuf::from("../utils/test-files"), ); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.toml").unwrap()); - let result = static_fn(args.clone()).unwrap(); + let result = static_fn.call(&args.clone()).unwrap(); - //TOML does not load in order + // TOML does not load in order assert_eq!( result, json!({ @@ -426,13 +435,13 @@ mod tests { #[test] fn can_load_csv() { - let static_fn = make_load_data( + let static_fn = LoadData::new( PathBuf::from("../utils/test-files"), PathBuf::from("../utils/test-files"), ); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.csv").unwrap()); - let result = static_fn(args.clone()).unwrap(); + let result = static_fn.call(&args.clone()).unwrap(); assert_eq!( result, @@ -448,13 +457,13 @@ mod tests { #[test] fn can_load_json() { - let static_fn = make_load_data( + let static_fn = LoadData::new( PathBuf::from("../utils/test-files"), PathBuf::from("../utils/test-files"), ); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.json").unwrap()); - let result = static_fn(args.clone()).unwrap(); + let result = static_fn.call(&args.clone()).unwrap(); assert_eq!( result, diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index ffb390b..533173b 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -1,7 +1,7 @@ use std::collections::HashMap; use std::sync::{Arc, Mutex}; -use tera::{from_value, to_value, GlobalFn, Result, Value}; +use tera::{from_value, to_value, Function as TeraFn, Result, Value}; use config::Config; use library::{Library, Taxonomy}; @@ -14,82 +14,39 @@ mod macros; mod load_data; -pub use self::load_data::make_load_data; + pub use self::load_data::LoadData; -pub fn make_trans(config: Config) -> GlobalFn { - let translations_config = config.translations; - let default_lang = config.default_language.clone(); - - Box::new(move |args| -> Result { +#[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(|| default_lang.clone()); - let translations = &translations_config[lang.as_str()]; + .unwrap_or_else(|| self.config.default_language.clone()); + let translations = &self.config.translations[lang.as_str()]; Ok(to_value(&translations[key.as_str()]).unwrap()) - }) -} - -pub fn make_get_page(library: &Library) -> GlobalFn { - let mut pages = HashMap::new(); - for page in library.pages_values() { - pages.insert( - page.file.relative.clone(), - to_value(library.get_page(&page.file.path).unwrap().to_serialized(library)).unwrap(), - ); } - - Box::new(move |args| -> Result { - let path = required_arg!( - String, - args.get("path"), - "`get_page` requires a `path` argument with a string value" - ); - match pages.get(&path) { - Some(p) => Ok(p.clone()), - None => Err(format!("Page `{}` not found.", path).into()), - } - }) } -pub fn make_get_section(library: &Library) -> GlobalFn { - let mut sections = HashMap::new(); - let mut sections_basic = HashMap::new(); - for section in library.sections_values() { - sections.insert( - section.file.relative.clone(), - to_value(library.get_section(§ion.file.path).unwrap().to_serialized(library)) - .unwrap(), - ); - - sections_basic.insert( - section.file.relative.clone(), - to_value(library.get_section(§ion.file.path).unwrap().to_serialized_basic(library)) - .unwrap(), - ); +#[derive(Debug)] +pub struct GetUrl { + config: Config, + permalinks: HashMap, +} +impl GetUrl { + pub fn new(config: Config, permalinks: HashMap) -> Self { + Self {config, permalinks} } - - Box::new(move |args| -> 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 container = if metadata_only { §ions_basic } else { §ions }; - - match container.get(&path) { - Some(p) => Ok(p.clone()), - None => Err(format!("Section `{}` not found.", path).into()), - } - }) } - -pub fn make_get_url(permalinks: HashMap, config: Config) -> GlobalFn { - Box::new(move |args| -> Result { +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)); @@ -103,7 +60,7 @@ pub fn make_get_url(permalinks: HashMap, config: Config) -> Glob "`get_url` requires a `path` argument with a string value" ); if path.starts_with("./") { - match resolve_internal_link(&path, &permalinks) { + match resolve_internal_link(&path, &self.permalinks) { Ok(url) => Ok(to_value(url).unwrap()), Err(_) => { Err(format!("Could not resolve URL for link `{}` not found.", path).into()) @@ -111,58 +68,96 @@ pub fn make_get_url(permalinks: HashMap, config: Config) -> Glob } } else { // anything else - let mut permalink = config.make_permalink(&path); + let mut permalink = self.config.make_permalink(&path); if !trailing_slash && permalink.ends_with('/') { permalink.pop(); // Removes the slash } if cachebust { - permalink = format!("{}?t={}", permalink, config.build_timestamp.unwrap()); + permalink = format!("{}?t={}", permalink, self.config.build_timestamp.unwrap()); } Ok(to_value(permalink).unwrap()) } - }) + } } -pub fn make_get_taxonomy(all_taxonomies: &[Taxonomy], library: &Library) -> GlobalFn { - let mut taxonomies = HashMap::new(); - for taxonomy in all_taxonomies { - taxonomies - .insert(taxonomy.kind.name.clone(), to_value(taxonomy.to_serialized(library)).unwrap()); +#[derive(Debug)] +pub struct ResizeImage { + imageproc: Arc>, +} +impl ResizeImage { + pub fn new(imageproc: Arc>) -> Self { + Self {imageproc} } +} - Box::new(move |args| -> Result { - let kind = required_arg!( +static DEFAULT_OP: &'static str = "fill"; +static DEFAULT_FMT: &'static str = "auto"; +const DEFAULT_Q: u8 = 75; + +impl TeraFn for ResizeImage { + fn call(&self, args: &HashMap) -> Result { + let path = required_arg!( String, - args.get("kind"), - "`get_taxonomy` requires a `kind` argument with a string value" + args.get("path"), + "`resize_image` requires a `path` argument with a string value" ); - let container = match taxonomies.get(&kind) { - Some(c) => c, - None => { - return Err(format!( - "`get_taxonomy` received an unknown taxonomy as kind: {}", - kind - ) - .into()); - } - }; + 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()); - Ok(to_value(container).unwrap()) - }) -} + let format = + optional_arg!(String, args.get("format"), "`resize_image`: `format` must be a string") + .unwrap_or_else(|| DEFAULT_FMT.to_string()); -pub fn make_get_taxonomy_url(all_taxonomies: &[Taxonomy]) -> GlobalFn { - let mut taxonomies = HashMap::new(); - for taxonomy in all_taxonomies { - let mut items = HashMap::new(); - for item in &taxonomy.items { - items.insert(item.name.clone(), item.permalink.clone()); + 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()); + } + + let mut imageproc = self.imageproc.lock().unwrap(); + if !imageproc.source_exists(&path) { + return Err(format!("`resize_image`: Cannot find path: {}", path).into()); } - taxonomies.insert(taxonomy.kind.name.clone(), items); + + 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()) } +} - Box::new(move |args| -> Result { +#[derive(Debug)] +pub struct GetTaxonomyUrl { + taxonomies: HashMap>, +} +impl GetTaxonomyUrl { + pub fn new(all_taxonomies: &[Taxonomy]) -> Self { + let mut taxonomies = HashMap::new(); + for taxonomy in all_taxonomies { + let mut items = HashMap::new(); + for item in &taxonomy.items { + items.insert(item.name.clone(), item.permalink.clone()); + } + taxonomies.insert(taxonomy.kind.name.clone(), items); + } + Self {taxonomies} + } +} +impl TeraFn for GetTaxonomyUrl { + fn call(&self, args: &HashMap) -> Result { let kind = required_arg!( String, args.get("kind"), @@ -173,7 +168,7 @@ pub fn make_get_taxonomy_url(all_taxonomies: &[Taxonomy]) -> GlobalFn { args.get("name"), "`get_taxonomy_url` requires a `name` argument with a string value" ); - let container = match taxonomies.get(&kind) { + let container = match self.taxonomies.get(&kind) { Some(c) => c, None => { return Err(format!( @@ -189,64 +184,130 @@ pub fn make_get_taxonomy_url(all_taxonomies: &[Taxonomy]) -> GlobalFn { } Err(format!("`get_taxonomy_url`: couldn't find `{}` in `{}` taxonomy", name, kind).into()) - }) + } } -pub fn make_resize_image(imageproc: Arc>) -> GlobalFn { - static DEFAULT_OP: &'static str = "fill"; - static DEFAULT_FMT: &'static str = "auto"; - const DEFAULT_Q: u8 = 75; - Box::new(move |args| -> Result { +#[derive(Debug)] +pub struct GetPage { + pages: HashMap, +} +impl GetPage { + pub fn new(library: &Library) -> Self { + let mut pages = HashMap::new(); + for page in library.pages_values() { + pages.insert( + page.file.relative.clone(), + to_value(library.get_page(&page.file.path).unwrap().to_serialized(library)).unwrap(), + ); + } + Self {pages} + } +} +impl TeraFn for GetPage { + 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" + "`get_page` requires a `path` argument with a string value" ); - let height = optional_arg!( - u32, - args.get("height"), - "`resize_image`: `height` must be a non-negative integer" + match self.pages.get(&path) { + Some(p) => Ok(p.clone()), + None => Err(format!("Page `{}` not found.", path).into()), + } + } +} + +#[derive(Debug)] +pub struct GetSection { + sections: HashMap, + sections_basic: HashMap, +} +impl GetSection { + pub fn new(library: &Library) -> Self { + let mut sections = HashMap::new(); + let mut sections_basic = HashMap::new(); + for section in library.sections_values() { + sections.insert( + section.file.relative.clone(), + to_value(library.get_section(§ion.file.path).unwrap().to_serialized(library)) + .unwrap(), + ); + + sections_basic.insert( + section.file.relative.clone(), + to_value(library.get_section(§ion.file.path).unwrap().to_serialized_basic(library)) + .unwrap(), + ); + } + Self {sections, sections_basic} + } +} +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 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 metadata_only = args + .get("metadata_only") + .map_or(false, |c| from_value::(c.clone()).unwrap_or(false)); - 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()); - } + let container = if metadata_only { &self.sections_basic } else { &self.sections }; - let mut imageproc = imageproc.lock().unwrap(); - if !imageproc.source_exists(&path) { - return Err(format!("`resize_image`: Cannot find path: {}", path).into()); + match container.get(&path) { + Some(p) => Ok(p.clone()), + None => Err(format!("Section `{}` not found.", 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 GetTaxonomy { + taxonomies: HashMap, +} +impl GetTaxonomy { + pub fn new(all_taxonomies: &[Taxonomy], library: &Library) -> Self { + let mut taxonomies = HashMap::new(); + for taxonomy in all_taxonomies { + taxonomies + .insert(taxonomy.kind.name.clone(), to_value(taxonomy.to_serialized(library)).unwrap()); + } + Self {taxonomies} + } +} +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 container = match self.taxonomies.get(&kind) { + Some(c) => c, + None => { + return Err(format!( + "`get_taxonomy` received an unknown taxonomy as kind: {}", + kind + ) + .into()); + } + }; + + Ok(to_value(container).unwrap()) + } } #[cfg(test)] mod tests { - use super::{make_get_taxonomy, make_get_taxonomy_url, make_get_url, make_trans}; + use super::{GetTaxonomy, GetTaxonomyUrl, GetUrl, Trans}; use std::collections::HashMap; - use tera::{to_value, Value}; + use tera::{to_value, Value, Function}; use config::{Config, Taxonomy as TaxonomyConfig}; use library::{Library, Taxonomy, TaxonomyItem}; @@ -254,41 +315,41 @@ mod tests { #[test] fn can_add_cachebust_to_url() { let config = Config::default(); - let static_fn = make_get_url(HashMap::new(), config); + let static_fn = GetUrl::new(config, 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(args).unwrap(), "http://a-website.com/app.css?t=1"); + assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css?t=1"); } #[test] fn can_add_trailing_slashes() { let config = Config::default(); - let static_fn = make_get_url(HashMap::new(), config); + let static_fn = GetUrl::new(config, 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(args).unwrap(), "http://a-website.com/app.css/"); + 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 = make_get_url(HashMap::new(), config); + let static_fn = GetUrl::new(config, 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(args).unwrap(), "http://a-website.com/app.css/?t=1"); + assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css/?t=1"); } #[test] fn can_link_to_some_static_file() { let config = Config::default(); - let static_fn = make_get_url(HashMap::new(), config); + let static_fn = GetUrl::new(config, HashMap::new()); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("app.css").unwrap()); - assert_eq!(static_fn(args).unwrap(), "http://a-website.com/app.css"); + assert_eq!(static_fn.call(&args).unwrap(), "http://a-website.com/app.css"); } #[test] @@ -299,11 +360,11 @@ mod tests { let tags = Taxonomy { kind: taxo_config, items: vec![tag] }; let taxonomies = vec![tags.clone()]; - let static_fn = make_get_taxonomy(&taxonomies, &library); + let static_fn = GetTaxonomy::new(&taxonomies, &library); // can find it correctly let mut args = HashMap::new(); args.insert("kind".to_string(), to_value("tags").unwrap()); - let res = static_fn(args).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); @@ -327,7 +388,7 @@ mod tests { // 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(args).is_err()); + assert!(static_fn.call(&args).is_err()); } #[test] @@ -338,20 +399,20 @@ mod tests { let tags = Taxonomy { kind: taxo_config, items: vec![tag] }; let taxonomies = vec![tags.clone()]; - let static_fn = make_get_taxonomy_url(&taxonomies); + let static_fn = GetTaxonomyUrl::new(&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(args).unwrap(), + static_fn.call(&args).unwrap(), to_value("http://a-website.com/tags/programming/").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(args).is_err()); + assert!(static_fn.call(&args).is_err()); } #[test] @@ -370,16 +431,16 @@ title = "A title" "#; let config = Config::parse(trans_config).unwrap(); - let static_fn = make_trans(config); + let static_fn = Trans::new(config); let mut args = HashMap::new(); args.insert("key".to_string(), to_value("title").unwrap()); - assert_eq!(static_fn(args.clone()).unwrap(), "Un titre"); + assert_eq!(static_fn.call(&args).unwrap(), "Un titre"); args.insert("lang".to_string(), to_value("en").unwrap()); - assert_eq!(static_fn(args.clone()).unwrap(), "A title"); + assert_eq!(static_fn.call(&args).unwrap(), "A title"); args.insert("lang".to_string(), to_value("fr").unwrap()); - assert_eq!(static_fn(args.clone()).unwrap(), "Un titre"); + assert_eq!(static_fn.call(&args).unwrap(), "Un titre"); } } diff --git a/components/templates/src/lib.rs b/components/templates/src/lib.rs index c9c48ca..9f54ca8 100644 --- a/components/templates/src/lib.rs +++ b/components/templates/src/lib.rs @@ -65,6 +65,6 @@ pub fn render_redirect_template(url: &str, tera: &Tera) -> Result { let mut context = Context::new(); context.insert("url", &url); - tera.render("internal/alias.html", &context) + tera.render("internal/alias.html", context) .map_err(|e| Error::chain(format!("Failed to render alias for '{}'", url), e)) } diff --git a/components/utils/Cargo.toml b/components/utils/Cargo.toml index e6c558d..9759871 100644 --- a/components/utils/Cargo.toml +++ b/components/utils/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Vincent Prouillet "] [dependencies] errors = { path = "../errors" } -tera = "0.11" +tera = "1.0.0-alpha.3" unicode-segmentation = "1.2" walkdir = "2" toml = "0.4" diff --git a/components/utils/src/templates.rs b/components/utils/src/templates.rs index b2f4c41..3b36698 100644 --- a/components/utils/src/templates.rs +++ b/components/utils/src/templates.rs @@ -11,7 +11,7 @@ macro_rules! render_default_tpl { let mut context = Context::new(); context.insert("filename", $filename); context.insert("url", $url); - Tera::one_off(DEFAULT_TPL, &context, true).map_err(|e| e.into()) + Tera::one_off(DEFAULT_TPL, context, true).map_err(|e| e.into()) }}; } @@ -22,7 +22,7 @@ macro_rules! render_default_tpl { pub fn render_template( name: &str, tera: &Tera, - context: &Context, + context: Context, theme: &Option, ) -> Result { // check if it is in the templates From 986c49daf1474c2fb516aaa0441ef64837fe804c Mon Sep 17 00:00:00 2001 From: Robert O'Callahan Date: Fri, 25 Jan 2019 13:47:30 +1300 Subject: [PATCH 44/82] Fix --watch-only to actually rebuild the site --- src/cmd/serve.rs | 112 ++++++++++++++++++++++------------------------- 1 file changed, 52 insertions(+), 60 deletions(-) diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index 43408ef..2deba22 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -90,23 +90,25 @@ fn livereload_handler(_: &HttpRequest) -> &'static str { LIVE_RELOAD } -fn rebuild_done_handling(broadcaster: &Sender, res: Result<()>, reload_path: &str) { +fn rebuild_done_handling(broadcaster: &Option, res: Result<()>, reload_path: &str) { match res { Ok(_) => { - broadcaster - .send(format!( - r#" - {{ - "command": "reload", - "path": "{}", - "originalPath": "", - "liveCSS": true, - "liveImg": true, - "protocol": ["http://livereload.com/protocols/official-7"] - }}"#, - reload_path - )) - .unwrap(); + if let Some(broadcaster) = broadcaster.as_ref() { + broadcaster + .send(format!( + r#" + {{ + "command": "reload", + "path": "{}", + "originalPath": "", + "liveCSS": true, + "liveImg": true, + "protocol": ["http://livereload.com/protocols/official-7"] + }}"#, + reload_path + )) + .unwrap(); + } } Err(e) => console::unravel_errors("Failed to build the site", &e), } @@ -293,14 +295,12 @@ pub fn serve( format!("-> Template changed {}", path.display()) }; console::info(&msg); - if let Some(ref broadcaster) = broadcaster { - // Force refresh - rebuild_done_handling( - broadcaster, - rebuild::after_template_change(site, &path), - "/x.js", - ); - } + // Force refresh + rebuild_done_handling( + &broadcaster, + rebuild::after_template_change(site, &path), + "/x.js", + ); }; let reload_sass = |site: &Site, path: &Path, partial_path: &Path| { @@ -310,13 +310,11 @@ pub fn serve( format!("-> Sass file changed {}", path.display()) }; console::info(&msg); - if let Some(ref broadcaster) = broadcaster { - rebuild_done_handling( - &broadcaster, - site.compile_sass(&site.base_path), - &partial_path.to_string_lossy(), - ); - } + rebuild_done_handling( + &broadcaster, + site.compile_sass(&site.base_path), + &partial_path.to_string_lossy(), + ); }; let copy_static = |site: &Site, path: &Path, partial_path: &Path| { @@ -332,20 +330,18 @@ pub fn serve( }; console::info(&msg); - if let Some(ref broadcaster) = broadcaster { - if path.is_dir() { - rebuild_done_handling( - broadcaster, - site.copy_static_directories(), - &path.to_string_lossy(), - ); - } else { - rebuild_done_handling( - broadcaster, - copy_file(&path, &site.output_path, &site.static_path), - &partial_path.to_string_lossy(), - ); - } + if path.is_dir() { + rebuild_done_handling( + &broadcaster, + site.copy_static_directories(), + &path.to_string_lossy(), + ); + } else { + rebuild_done_handling( + &broadcaster, + copy_file(&path, &site.output_path, &site.static_path), + &partial_path.to_string_lossy(), + ); } }; @@ -373,14 +369,12 @@ pub fn serve( match change_kind { ChangeKind::Content => { console::info(&format!("-> Content renamed {}", path.display())); - if let Some(ref broadcaster) = broadcaster { - // Force refresh - rebuild_done_handling( - broadcaster, - rebuild::after_content_rename(&mut site, &old_path, &path), - "/x.js", - ); - } + // Force refresh + rebuild_done_handling( + &broadcaster, + rebuild::after_content_rename(&mut site, &old_path, &path), + "/x.js", + ); } ChangeKind::Templates => reload_templates(&mut site, &path), ChangeKind::StaticFiles => copy_static(&site, &path, &partial_path), @@ -414,14 +408,12 @@ pub fn serve( match detect_change_kind(&pwd, &path) { (ChangeKind::Content, _) => { console::info(&format!("-> Content changed {}", path.display())); - if let Some(ref broadcaster) = broadcaster { - // Force refresh - rebuild_done_handling( - broadcaster, - rebuild::after_content_change(&mut site, &path), - "/x.js", - ); - } + // Force refresh + rebuild_done_handling( + &broadcaster, + rebuild::after_content_change(&mut site, &path), + "/x.js", + ); } (ChangeKind::Templates, _) => reload_templates(&mut site, &path), (ChangeKind::StaticFiles, p) => copy_static(&site, &path, &p), From 702b9310792c8c88bc3b87c34e7d0261dfac46cf Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 25 Jan 2019 14:54:53 +0100 Subject: [PATCH 45/82] Update deps --- Cargo.lock | 146 ++++++++++++++++++++++++++++++++++------------------- 1 file changed, 94 insertions(+), 52 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b176634..46c0ca1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -66,7 +66,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "actix 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)", "actix-net 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "base64 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -75,7 +75,7 @@ dependencies = [ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "h2 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", + "h2 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -92,7 +92,7 @@ dependencies = [ "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -219,7 +219,7 @@ dependencies = [ [[package]] name = "base64" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -519,10 +519,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rust-stemmers 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rust-stemmers 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", "strum 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "strum_macros 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -606,7 +606,7 @@ version = "0.1.0" dependencies = [ "image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -684,7 +684,7 @@ dependencies = [ "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -802,7 +802,7 @@ dependencies = [ [[package]] name = "h2" -version = "0.1.15" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -877,13 +877,13 @@ dependencies = [ [[package]] name = "hyper" -version = "0.12.21" +version = "0.12.23" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "h2 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", + "h2 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -908,7 +908,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.12.21 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper 0.12.23 (registry+https://github.com/rust-lang/crates.io-index)", "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -967,7 +967,7 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -1098,7 +1098,7 @@ dependencies = [ "slotmap 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -1108,7 +1108,7 @@ name = "link_checker" version = "0.1.0" dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "reqwest 0.9.8 (registry+https://github.com/rust-lang/crates.io-index)", + "reqwest 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1170,7 +1170,7 @@ dependencies = [ "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1647,7 +1647,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1672,7 +1672,7 @@ dependencies = [ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_os 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1687,7 +1687,7 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1695,12 +1695,20 @@ name = "rand_core" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand_core" -version = "0.3.0" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rand_core" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1708,7 +1716,7 @@ name = "rand_hc" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1716,7 +1724,7 @@ name = "rand_isaac" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1727,7 +1735,7 @@ dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1737,7 +1745,7 @@ name = "rand_pcg" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1746,7 +1754,7 @@ name = "rand_xorshift" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1775,7 +1783,7 @@ name = "rdrand" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1849,21 +1857,21 @@ dependencies = [ "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", - "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] [[package]] name = "reqwest" -version = "0.9.8" +version = "0.9.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "base64 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "encoding_rs 0.8.14 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.12.21 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper 0.12.23 (registry+https://github.com/rust-lang/crates.io-index)", "hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "libflate 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1871,7 +1879,7 @@ dependencies = [ "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1893,7 +1901,7 @@ dependencies = [ [[package]] name = "rust-stemmers" -version = "1.0.2" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2036,7 +2044,7 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.36" +version = "1.0.37" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2103,7 +2111,7 @@ dependencies = [ "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", - "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -2243,7 +2251,7 @@ dependencies = [ "regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "yaml-rust 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2265,7 +2273,7 @@ dependencies = [ name = "templates" version = "0.1.0" dependencies = [ - "base64 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "config 0.1.0", "csv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "errors 0.1.0", @@ -2273,9 +2281,9 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "library 0.1.0", "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "reqwest 0.9.8 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", + "reqwest 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", @@ -2293,7 +2301,7 @@ dependencies = [ [[package]] name = "tera" -version = "1.0.0-alpha.3" +version = "1.0.0-alpha.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2304,11 +2312,11 @@ dependencies = [ "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "unic-segment 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "v_htmlescape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "v_htmlescape 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2766,7 +2774,7 @@ dependencies = [ "errors 0.1.0", "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2789,6 +2797,15 @@ dependencies = [ "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "v_escape" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "v_escape_derive 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "v_escape_derive" version = "0.2.1" @@ -2800,6 +2817,17 @@ dependencies = [ "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "v_escape_derive" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "nom 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "v_htmlescape" version = "0.3.2" @@ -2810,6 +2838,16 @@ dependencies = [ "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "v_htmlescape" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "v_escape 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "vcpkg" version = "0.2.6" @@ -2998,7 +3036,7 @@ dependencies = [ "checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799" "checksum backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "b5b493b66e03090ebc4343eb02f94ff944e0cbc9ac6571491d170ba026741eb5" "checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6" -"checksum base64 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "621fc7ecb8008f86d7fb9b95356cd692ce9514b80a86d85b397f32a22da7b9e2" +"checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e" "checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643" "checksum bincode 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9f2fb9e29e72fd6bc12071533d5dc7664cb01480c59406f656d7ac25c7bd8ff7" "checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d" @@ -3066,7 +3104,7 @@ dependencies = [ "checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" "checksum globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4743617a7464bbda3c8aec8558ff2f9429047e025771037df561d383337ff865" "checksum globwalk 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4be0267260c9bb4e278dfb2291de9518a595cb625cf6f5f385c4b7d8d1aa7112" -"checksum h2 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "30e0b8e55b4d7ffedade2b9605851f8e85f5010663e7ad170ef3c0f0681bc43f" +"checksum h2 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ddb2b25a33e231484694267af28fec74ac63b5ccf51ee2065a5e313b834d836e" "checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" "checksum hostname 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "21ceb46a83a85e824ef93669c8b390009623863b5c195d1ba747292c0c72f94e" "checksum html5ever 0.22.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c213fa6a618dc1da552f54f85cba74b05d8e883c92ec4e89067736938084c26e" @@ -3074,7 +3112,7 @@ dependencies = [ "checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83" "checksum humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" "checksum humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ca7e5f2e110db35f93b837c81797f3714500b81d517bf20c431b16d3ca4f114" -"checksum hyper 0.12.21 (registry+https://github.com/rust-lang/crates.io-index)" = "6d6b1a3d01ac8035b8d2d94e0e5254eab82746f09046baed763751b00253232b" +"checksum hyper 0.12.23 (registry+https://github.com/rust-lang/crates.io-index)" = "860faf61a9957c9cb0e23e69f1c8290e92f6eb660fcdd1f2d6777043a2ae1a46" "checksum hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "32cd73f14ad370d3b4d4b7dce08f69b81536c82e39fcc89731930fe5788cd661" "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" "checksum ignore 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ad03ca67dc12474ecd91fdb94d758cbd20cb4e7a78ebe831df26a9b7511e1162" @@ -3157,7 +3195,8 @@ dependencies = [ "checksum rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3906503e80ac6cbcacb2c2973fa8e473f24d7e2747c8c92bb230c2441cad96b5" "checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" "checksum rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1961a422c4d189dfb50ffa9320bf1f2a9bd54ecb92792fb9477f99a1045f3372" -"checksum rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0905b6b7079ec73b314d4c748701f6931eb79fd97c668caa3f1899b22b32c6db" +"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" +"checksum rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0" "checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" "checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" "checksum rand_os 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f46fbd5550acf75b0c2730f5dd1873751daf9beb8f11b44027778fae50d7feca" @@ -3171,9 +3210,9 @@ dependencies = [ "checksum regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "37e7cbbd370869ce2e8dff25c7018702d10b21a20ef7135316f8daecd6c25b7f" "checksum regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4e47a2ed29da7a9e1960e1639e7a982e6edc6d49be308a3b02daf511504a16d1" "checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5" -"checksum reqwest 0.9.8 (registry+https://github.com/rust-lang/crates.io-index)" = "0e60f169af3915c294818d55dde549f00d2966cef36d6c5e7255d75df3f2b16f" +"checksum reqwest 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)" = "09d6e187a58d923ee132fcda141c94e716bcfe301c2ea2bef5c81536e0085376" "checksum resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b263b4aa1b5de9ffc0054a2386f96992058bb6870aab516f8cdeb8a667d56dcb" -"checksum rust-stemmers 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "fbf06149ec391025664a5634200ced1afb489f0f3f8a140d515ebc0eb04b4bc0" +"checksum rust-stemmers 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05928c187b85b38f6b98db43057a24f0245163635a5ce6325a4f77a833d646aa" "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" @@ -3191,7 +3230,7 @@ dependencies = [ "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" "checksum serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)" = "534b8b91a95e0f71bca3ed5824752d558da048d4248c91af873b63bd60519752" "checksum serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)" = "a915306b0f1ac5607797697148c223bedeaa36bcc2e28a01441cd638cc6567b4" -"checksum serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)" = "574378d957d6dcdf1bbb5d562a15cbd5e644159432f84634b94e485267abbcc7" +"checksum serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)" = "4b90a9fbe1211e57d3e1c15670f1cb00802988fb23a1a4aad7a2b63544f1920e" "checksum serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d48f9f99cd749a2de71d29da5f948de7f2764cc5a9d7f3c97e3514d4ee6eabf2" "checksum sha-1 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "51b9d1f3b5de8a167ab06834a7c883bd197f2191e1dda1a22d9ccfeedbf9aded" "checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" @@ -3215,7 +3254,7 @@ dependencies = [ "checksum syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e02dd9df97a68a2d005ace28ff24c610abfc3ce17afcfdb22a077645dabb599a" "checksum tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "7e91405c14320e5c79b3d148e1c86f40749a36e490642202a31689cb1a3452b2" "checksum tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "707feda9f2582d5d680d733e38755547a3e8fb471e7ba11452ecfd9ce93a5d3b" -"checksum tera 1.0.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8f5847f6a7882d3068732f542fd9144314233f3e9eed3e1223518994e951683d" +"checksum tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)" = "0fbadfbcaeb99c662f4855b43b023cb9ad98c62007263c64a5ffe78d4bf0a3d2" "checksum termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4096add70612622289f2fdcdbd5086dc81c1e2675e6ae58d6c4f62a16c6d7f2f" "checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096" "checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6" @@ -3263,8 +3302,11 @@ dependencies = [ "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" "checksum uuid 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dab5c5526c5caa3d106653401a267fed923e7046f35895ffcb5ca42db64942e6" "checksum v_escape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c8b50688edb86f4c092a1a9fe8bda004b0faa3197100897653809e97e09a2814" +"checksum v_escape 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6177565a30b7091835dd4a33a81fc4f064e671729a6b7cb964675b2a0bb295a1" "checksum v_escape_derive 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7cd994c63b487fef7aad31e5394ec04b9e24de7b32ea5251c9fb499cd2cbf44c" +"checksum v_escape_derive 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ebc450df00e6b12b42f963f620156611891dfc6475533d9b7d5a607a527a403d" "checksum v_htmlescape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "020cae817dc82693aa523f01087b291b1c7a9ac8cea5c12297963f21769fb27f" +"checksum v_htmlescape 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "168b0208dc58f378f35a743f39c93f199dd981be5ed24615f2b467d55f37e959" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" "checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a" "checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" From 7c260eb5b20a710b667ef2e706ebec365c59132d Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 25 Jan 2019 16:18:48 +0100 Subject: [PATCH 46/82] Fix multilingual tests --- components/site/tests/site_i18n.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/components/site/tests/site_i18n.rs b/components/site/tests/site_i18n.rs index 9023a73..ad85bdc 100644 --- a/components/site/tests/site_i18n.rs +++ b/components/site/tests/site_i18n.rs @@ -87,7 +87,7 @@ fn can_build_multilingual_site() { assert!(file_contains!( public, "fr/blog/index.html", - "Translated in : My blog https://example.com/blog/" + "Translated in en: My blog https://example.com/blog/" )); assert!(file_contains!( public, @@ -107,7 +107,7 @@ fn can_build_multilingual_site() { assert!(file_contains!( public, "fr/blog/something/index.html", - "Translated in : Something https://example.com/blog/something/" + "Translated in en: Something https://example.com/blog/something/" )); // sitemap contains all languages From d1154d236f23808dfa6cdcbdb9444b2399e49a55 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 26 Jan 2019 11:46:54 +0100 Subject: [PATCH 47/82] Comment out failing test while its getting fixed in Tera --- components/rendering/tests/markdown.rs | 51 +++++++++++++------------- 1 file changed, 26 insertions(+), 25 deletions(-) diff --git a/components/rendering/tests/markdown.rs b/components/rendering/tests/markdown.rs index dbceae8..da722a4 100644 --- a/components/rendering/tests/markdown.rs +++ b/components/rendering/tests/markdown.rs @@ -776,29 +776,30 @@ fn doesnt_try_to_highlight_content_from_shortcode() { assert_eq!(res.body, expected); } +// TODO: re-enable once it's fixed in Tera // https://github.com/Keats/tera/issues/373 -#[test] -fn can_split_lines_shortcode_body() { - let permalinks_ctx = HashMap::new(); - let mut tera = Tera::default(); - tera.extend(&ZOLA_TERA).unwrap(); - - let shortcode = r#"{{ body | split(pat="\n") }}"#; - - let markdown_string = r#" -{% alert() %} -multi -ple -lines -{% end %} - "#; - - let expected = r#"

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

"#; - - 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 res = render_content(markdown_string, &context).unwrap(); - assert_eq!(res.body, expected); -} +//#[test] +//fn can_split_lines_shortcode_body() { +// let permalinks_ctx = HashMap::new(); +// let mut tera = Tera::default(); +// tera.extend(&ZOLA_TERA).unwrap(); +// +// let shortcode = r#"{{ body | split(pat="\n") }}"#; +// +// let markdown_string = r#" +//{% alert() %} +//multi +//ple +//lines +//{% end %} +// "#; +// +// let expected = r#"

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

"#; +// +// 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 res = render_content(markdown_string, &context).unwrap(); +// assert_eq!(res.body, expected); +//} From 21d67235ae95711470c05c7e58f6174d77157f06 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sun, 27 Jan 2019 18:57:07 +0100 Subject: [PATCH 48/82] Arc-ify Library --- Cargo.lock | 154 ++++++++++++--------- components/rebuild/src/lib.rs | 94 +++++++------ components/site/src/lib.rs | 97 +++++++------ components/site/tests/site.rs | 126 +++++++++-------- components/site/tests/site_i18n.rs | 21 +-- components/templates/src/global_fns/mod.rs | 95 ++++++------- src/console.rs | 13 +- 7 files changed, 325 insertions(+), 275 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 46c0ca1..fa0d547 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -22,16 +22,16 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-signal 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-proto 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "trust-dns-resolver 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", + "trust-dns-resolver 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)", "uuid 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -48,15 +48,15 @@ dependencies = [ "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", "tower-service 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "trust-dns-resolver 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", + "trust-dns-resolver 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -98,12 +98,12 @@ dependencies = [ "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "v_htmlescape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -382,6 +382,21 @@ dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "crossbeam" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-epoch 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "crossbeam-channel" version = "0.3.6" @@ -712,6 +727,11 @@ dependencies = [ "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "fuchsia-cprng" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "fuchsia-zircon" version = "0.3.3" @@ -891,13 +911,13 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", "want 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -937,7 +957,7 @@ dependencies = [ "same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1372,10 +1392,9 @@ dependencies = [ [[package]] name = "num-derive" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1642,10 +1661,10 @@ dependencies = [ [[package]] name = "rand" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-cprng 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1654,13 +1673,13 @@ dependencies = [ [[package]] name = "rand" -version = "0.5.5" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-cprng 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1690,14 +1709,6 @@ dependencies = [ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] -[[package]] -name = "rand_core" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "rand_core" version = "0.3.1" @@ -1818,14 +1829,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", "utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "regex-syntax" -version = "0.6.4" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1881,11 +1892,11 @@ dependencies = [ "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "uuid 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1941,7 +1952,7 @@ name = "same-file" version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "winapi-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2248,7 +2259,7 @@ dependencies = [ "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "onig 4.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "plist 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2360,7 +2371,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", - "num-derive 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "num-derive 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2376,7 +2387,7 @@ dependencies = [ [[package]] name = "tokio" -version = "0.1.14" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2389,9 +2400,10 @@ dependencies = [ "tokio-fs 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-sync 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2431,7 +2443,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2477,6 +2489,14 @@ dependencies = [ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tokio-sync" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tokio-tcp" version = "0.1.3" @@ -2492,9 +2512,10 @@ dependencies = [ [[package]] name = "tokio-threadpool" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ + "crossbeam 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2502,12 +2523,13 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-timer" -version = "0.2.8" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2574,21 +2596,21 @@ dependencies = [ "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", "socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "trust-dns-proto" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2597,21 +2619,21 @@ dependencies = [ "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", "socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "trust-dns-resolver" -version = "0.10.2" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2623,8 +2645,8 @@ dependencies = [ "lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", - "trust-dns-proto 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", + "trust-dns-proto 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2785,7 +2807,7 @@ name = "uuid" version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2875,7 +2897,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2919,7 +2941,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "winapi-util" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2936,7 +2958,7 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2966,7 +2988,7 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3057,6 +3079,7 @@ dependencies = [ "checksum core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "716c271e8613ace48344f723b60b900a93150271e5be206212d052bbc0883efa" "checksum crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb" "checksum crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e91d5240c6975ef33aeb5f148f35275c25eda8e8a5f95abe421978b05b8bf192" +"checksum crossbeam 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ad4c7ea749d9fb09e23c5cb17e3b70650860553a0e2744e38446b1803bf7db94" "checksum crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "137bc235f622ffaa0428e3854e24acb53291fc0b3ff6fb2cb75a8be6fb02f06b" "checksum crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f739f8c5363aca78cfb059edf753d8f0d36908c348f3d8d1503f03d8b75d9cf3" "checksum crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13" @@ -3093,6 +3116,7 @@ dependencies = [ "checksum fs_extra 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5f2a4a2034423744d2cc7ca2068453168dcdb82c438419e639a26bd87839c674" "checksum fsevent 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)" = "c4bbbf71584aeed076100b5665ac14e3d85eeb31fdbb45fbd41ef9a682b5ec05" "checksum fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "1a772d36c338d07a032d5375a36f15f9a7043bf0cb8ce7cee658e037c6032874" +"checksum fuchsia-cprng 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "81f7f8eb465745ea9b02e2704612a9946a59fa40572086c6fd49d6ddcf30bf31" "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" "checksum futf 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "7c9c1ce3fa9336301af935ab852c437817d14cd33690446569392e65170aac3b" @@ -3159,7 +3183,7 @@ dependencies = [ "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" "checksum nom 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9c349f68f25f596b9f44cf0e7c69752a5c633b0550c3ff849518bfba0233774a" "checksum notify 4.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "c968cf37cf949114b00d51b0b23536d1c3a4a3963767cf4c969c65a6af78dc7d" -"checksum num-derive 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8af1847c907c2f04d7bfd572fb25bbb4385c637fe5be163cf2f8c5d778fe1e7d" +"checksum num-derive 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d9fe8fcafd1b86a37ce8a1cfa15ae504817e0c8c2e7ad42767371461ac1d316d" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" "checksum num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "af3fdbbc3291a5464dc57b03860ec37ca6bf915ed6ee385e7c6c052c422b2124" "checksum num-rational 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4e96f040177bb3da242b5b1ecf3f54b5d5af3efbbfb18608977a5d2767b22f10" @@ -3190,11 +3214,10 @@ dependencies = [ "checksum pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "eef52fac62d0ea7b9b4dc7da092aa64ea7ec3d90af6679422d3d7e0e14b6ee15" "checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0" "checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1" -"checksum rand 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "dee497e66d8d76bf08ce20c8d36e16f93749ab0bf89975b4f8ae5cee660c2da2" -"checksum rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e464cd887e869cddcae8792a4ee31d23c7edd516700695608f5b98c67ee0131c" +"checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" +"checksum rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9" "checksum rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3906503e80ac6cbcacb2c2973fa8e473f24d7e2747c8c92bb230c2441cad96b5" "checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" -"checksum rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1961a422c4d189dfb50ffa9320bf1f2a9bd54ecb92792fb9477f99a1045f3372" "checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" "checksum rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0" "checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" @@ -3208,7 +3231,7 @@ dependencies = [ "checksum redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)" = "423e376fffca3dfa06c9e9790a9ccd282fafb3cc6e6397d01dbf64f9bacc6b85" "checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76" "checksum regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "37e7cbbd370869ce2e8dff25c7018702d10b21a20ef7135316f8daecd6c25b7f" -"checksum regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4e47a2ed29da7a9e1960e1639e7a982e6edc6d49be308a3b02daf511504a16d1" +"checksum regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "8c2f35eedad5295fdf00a63d7d4b238135723f92b434ec06774dad15c7ab0861" "checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5" "checksum reqwest 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)" = "09d6e187a58d923ee132fcda141c94e716bcfe301c2ea2bef5c81536e0085376" "checksum resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b263b4aa1b5de9ffc0054a2386f96992058bb6870aab516f8cdeb8a667d56dcb" @@ -3261,7 +3284,7 @@ dependencies = [ "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" "checksum tiff 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a2cc6c4fd13cb1cfd20abdb196e794ceccb29371855b7e7f575945f920a5b3c2" "checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" -"checksum tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4790d0be6f4ba6ae4f48190efa2ed7780c9e3567796abdb285003cf39840d9c5" +"checksum tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "e0500b88064f08bebddd0c0bed39e19f5c567a5f30975bee52b0c0d3e2eeb38c" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" "checksum tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "331c8acc267855ec06eb0c94618dcbbfea45bed2d20b77252940095273fb58f6" "checksum tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30c6dbf2d1ad1de300b393910e8a3aa272b724a400b6531da03eed99e329fbf0" @@ -3269,16 +3292,17 @@ dependencies = [ "checksum tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "b53aeb9d3f5ccf2ebb29e19788f96987fa1355f8fe45ea193928eaaaf3ae820f" "checksum tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "afbcdb0f0d2a1e4c440af82d7bbf0bf91a8a8c0575bcd20c05d15be7e9d3a02f" "checksum tokio-signal 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "dd6dc5276ea05ce379a16de90083ec80836440d5ef8a6a39545a3207373b8296" +"checksum tokio-sync 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0d65a58e2215c13179e6eeb2cf00511e0aee455cad40a9bfaef15a2fd8aab1c7" "checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119" -"checksum tokio-threadpool 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "17465013014410310f9f61fa10bf4724803c149ea1d51efece131c38efca93aa" -"checksum tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "4f37f0111d76cc5da132fe9bc0590b9b9cfd079bc7e75ac3846278430a299ff8" +"checksum tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "c3fd86cb15547d02daa2b21aadaf4e37dee3368df38a526178a5afa3c034d2fb" +"checksum tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)" = "21c04a314a1f69f73c0227beba6250e06cdc1e9a62e7eff912bf54a59b6d1b94" "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92" "checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" "checksum tower-service 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b32f72af77f1bfe3d3d4da8516a238ebe7039b51dd8637a09841ac7f16d2c987" "checksum trust-dns-proto 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0838272e89f1c693b4df38dc353412e389cf548ceed6f9fd1af5a8d6e0e7cf74" -"checksum trust-dns-proto 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "30dde452f5d142d5e316a3b32386da95280c98b7e266639f8f3bc6fdf507d279" -"checksum trust-dns-resolver 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "de630f95a192f793436ffae5137e88253cc4142a97d9a8e73c8d804fa85ddf0a" +"checksum trust-dns-proto 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "09144f0992b0870fa8d2972cc069cbf1e3c0fda64d1f3d45c4d68d0e0b52ad4e" +"checksum trust-dns-resolver 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8a9f877f7a1ad821ab350505e1f1b146a4960402991787191d6d8cab2ce2de2c" "checksum try-lock 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382" "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" "checksum ucd-trie 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "71a9c5b1fe77426cf144cc30e49e955270f5086e31a6441dfa8b32efc09b9d77" @@ -3318,7 +3342,7 @@ dependencies = [ "checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0" "checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" "checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" -"checksum winapi-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "afc5508759c5bf4285e61feb862b6083c8480aec864fa17a81fdec6f69b461ab" +"checksum winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7168bab6e1daee33b4557efd0e95d5ca70a03706d39fa5f3fe7a236f584b03c9" "checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" "checksum wincolor 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "561ed901ae465d6185fa7864d63fbd5720d0ef718366c9a4dc83cf6170d7e9ba" "checksum winreg 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a27a759395c1195c4cc5cda607ef6f8f6498f64e78f7900f5de0a127a424704a" diff --git a/components/rebuild/src/lib.rs b/components/rebuild/src/lib.rs index 1f59ba5..7ef87a1 100644 --- a/components/rebuild/src/lib.rs +++ b/components/rebuild/src/lib.rs @@ -98,22 +98,21 @@ fn find_page_front_matter_changes( /// Handles a path deletion: could be a page, a section, a folder fn delete_element(site: &mut Site, path: &Path, is_section: bool) -> Result<()> { - // Ignore the event if this path was not known - if !site.library.contains_section(&path.to_path_buf()) - && !site.library.contains_page(&path.to_path_buf()) { - return Ok(()); - } - - if is_section { - if let Some(s) = site.library.remove_section(&path.to_path_buf()) { - site.permalinks.remove(&s.file.relative); + let mut library = site.library.write().unwrap(); + // Ignore the event if this path was not known + if !library.contains_section(&path.to_path_buf()) + && !library.contains_page(&path.to_path_buf()) + { + return Ok(()); } - } else if let Some(p) = site.library.remove_page(&path.to_path_buf()) { - site.permalinks.remove(&p.file.relative); - if !p.meta.taxonomies.is_empty() { - site.populate_taxonomies()?; + if is_section { + if let Some(s) = library.remove_section(&path.to_path_buf()) { + site.permalinks.remove(&s.file.relative); + } + } else if let Some(p) = library.remove_page(&path.to_path_buf()) { + site.permalinks.remove(&p.file.relative); } } @@ -135,28 +134,32 @@ fn handle_section_editing(site: &mut Site, path: &Path) -> Result<()> { // Updating a section Some(prev) => { site.populate_sections(); + { + let library = site.library.read().unwrap(); - if site.library.get_section(&pathbuf).unwrap().meta == prev.meta { - // Front matter didn't change, only content did - // so we render only the section page, not its pages - return site.render_section(&site.library.get_section(&pathbuf).unwrap(), false); + if library.get_section(&pathbuf).unwrap().meta == prev.meta { + // Front matter didn't change, only content did + // so we render only the section page, not its pages + return site.render_section(&library.get_section(&pathbuf).unwrap(), false); + } } // Front matter changed - for changes in find_section_front_matter_changes( - &site.library.get_section(&pathbuf).unwrap().meta, + let changes = find_section_front_matter_changes( + &site.library.read().unwrap().get_section(&pathbuf).unwrap().meta, &prev.meta, - ) { + ); + for change in changes { // Sort always comes first if present so the rendering will be fine - match changes { + match change { SectionChangesNeeded::Sort => { site.register_tera_global_fns(); } SectionChangesNeeded::Render => { - site.render_section(&site.library.get_section(&pathbuf).unwrap(), false)? + site.render_section(&site.library.read().unwrap().get_section(&pathbuf).unwrap(), false)? } SectionChangesNeeded::RenderWithPages => { - site.render_section(&site.library.get_section(&pathbuf).unwrap(), true)? + site.render_section(&site.library.read().unwrap().get_section(&pathbuf).unwrap(), true)? } // not a common enough operation to make it worth optimizing SectionChangesNeeded::Delete | SectionChangesNeeded::Transparent => { @@ -170,14 +173,14 @@ fn handle_section_editing(site: &mut Site, path: &Path) -> Result<()> { None => { site.populate_sections(); site.register_tera_global_fns(); - site.render_section(&site.library.get_section(&pathbuf).unwrap(), true) + site.render_section(&site.library.read().unwrap().get_section(&pathbuf).unwrap(), true) } } } macro_rules! render_parent_section { ($site: expr, $path: expr) => { - if let Some(s) = $site.library.find_parent_section($path) { + if let Some(s) = $site.library.read().unwrap().find_parent_section($path) { $site.render_section(s, false)?; }; }; @@ -192,27 +195,31 @@ fn handle_page_editing(site: &mut Site, path: &Path) -> Result<()> { Some(prev) => { site.populate_sections(); site.populate_taxonomies()?; + site.register_tera_global_fns(); + { + let library = site.library.read().unwrap(); - // Front matter didn't change, only content did - if site.library.get_page(&pathbuf).unwrap().meta == prev.meta { - // Other than the page itself, the summary might be seen - // on a paginated list for a blog for example - if site.library.get_page(&pathbuf).unwrap().summary.is_some() { - render_parent_section!(site, path); + // Front matter didn't change, only content did + if library.get_page(&pathbuf).unwrap().meta == prev.meta { + // Other than the page itself, the summary might be seen + // on a paginated list for a blog for example + if library.get_page(&pathbuf).unwrap().summary.is_some() { + render_parent_section!(site, path); + } + return site.render_page(&library.get_page(&pathbuf).unwrap()); } - site.register_tera_global_fns(); - return site.render_page(&site.library.get_page(&pathbuf).unwrap()); } // Front matter changed - for changes in find_page_front_matter_changes( - &site.library.get_page(&pathbuf).unwrap().meta, + let changes = find_page_front_matter_changes( + &site.library.read().unwrap().get_page(&pathbuf).unwrap().meta, &prev.meta, - ) { + ); + for change in changes { site.register_tera_global_fns(); // Sort always comes first if present so the rendering will be fine - match changes { + match change { PageChangesNeeded::Taxonomies => { site.populate_taxonomies()?; site.render_taxonomies()?; @@ -222,7 +229,7 @@ fn handle_page_editing(site: &mut Site, path: &Path) -> Result<()> { } PageChangesNeeded::Render => { render_parent_section!(site, path); - site.render_page(&site.library.get_page(&path.to_path_buf()).unwrap())?; + site.render_page(&site.library.read().unwrap().get_page(&path.to_path_buf()).unwrap())?; } }; } @@ -275,8 +282,11 @@ pub fn after_content_rename(site: &mut Site, old: &Path, new: &Path) -> Result<( if new_path.file_name().unwrap() == "_index.md" { // We aren't entirely sure where the original thing was so just try to delete whatever was // at the old path - site.library.remove_page(&old.to_path_buf()); - site.library.remove_section(&old.to_path_buf()); + { + let mut library = site.library.write().unwrap(); + library.remove_page(&old.to_path_buf()); + library.remove_section(&old.to_path_buf()); + } return handle_section_editing(site, &new_path); } @@ -287,7 +297,7 @@ pub fn after_content_rename(site: &mut Site, old: &Path, new: &Path) -> Result<( } else { old.to_path_buf() }; - site.library.remove_page(&old_path); + site.library.write().unwrap().remove_page(&old_path); handle_page_editing(site, &new_path) } @@ -350,7 +360,7 @@ pub fn after_template_change(site: &mut Site, path: &Path) -> Result<()> { match filename { "sitemap.xml" => site.render_sitemap(), - "rss.xml" => site.render_rss_feed(site.library.pages_values(), None), + "rss.xml" => site.render_rss_feed(site.library.read().unwrap().pages_values(), None), "robots.txt" => site.render_robots(), "single.html" | "list.html" => site.render_taxonomies(), "page.html" => { diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 1406063..bc84def 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -22,7 +22,7 @@ extern crate tempfile; use std::collections::HashMap; use std::fs::{copy, create_dir_all, remove_dir_all}; use std::path::{Path, PathBuf}; -use std::sync::{Arc, Mutex}; +use std::sync::{Arc, Mutex, RwLock}; use glob::glob; use rayon::prelude::*; @@ -72,7 +72,7 @@ pub struct Site { /// We need that if there are relative links in the content that need to be resolved pub permalinks: HashMap, /// Contains all pages and sections of the site - pub library: Library, + pub library: Arc>, } impl Site { @@ -141,7 +141,7 @@ impl Site { taxonomies: Vec::new(), permalinks: HashMap::new(), // We will allocate it properly later on - library: Library::new(0, 0, false), + library: Arc::new(RwLock::new(Library::new(0, 0, false))), }; Ok(site) @@ -167,9 +167,9 @@ impl Site { self.live_reload = get_available_port(port_to_avoid); } - /// Get all the orphan (== without section) pages in the site - pub fn get_all_orphan_pages(&self) -> Vec<&Page> { - self.library.get_all_orphan_pages() + /// Get the number of orphan (== without section) pages in the site + pub fn get_number_orphan_pages(&self) -> usize { + self.library.read().unwrap().get_all_orphan_pages().len() } pub fn set_base_url(&mut self, base_url: String) { @@ -197,7 +197,7 @@ impl Site { }); self.library = - Library::new(page_entries.len(), section_entries.len(), self.config.is_multilingual()); + Arc::new(RwLock::new(Library::new(page_entries.len(), section_entries.len(), self.config.is_multilingual()))); let sections = { let config = &self.config; @@ -233,7 +233,7 @@ impl Site { // Insert a default index section for each language if necessary so we don't need to create // a _index.md to render the index page at the root of the site for (index_path, lang) in self.index_section_paths() { - if let Some(ref index_section) = self.library.get_section(&index_path) { + if let Some(ref index_section) = self.library.read().unwrap().get_section(&index_path) { if self.config.build_search_index && !index_section.meta.in_search_index { bail!( "You have enabled search in the config but disabled it in the index section: \ @@ -242,8 +242,9 @@ impl Site { ) } } + let mut library = self.library.write().expect("Get lock for load"); // Not in else because of borrow checker - if !self.library.contains_section(&index_path) { + if !library.contains_section(&index_path) { let mut index_section = Section::default(); index_section.file.parent = self.content_path.clone(); index_section.file.filename = @@ -261,7 +262,7 @@ impl Site { index_section.file.path = self.content_path.join("_index.md"); index_section.file.relative = "_index.md".to_string(); } - self.library.insert_section(index_section); + library.insert_section(index_section); } } @@ -295,14 +296,15 @@ impl Site { // This is needed in the first place because of silly borrow checker let mut pages_insert_anchors = HashMap::new(); - for (_, p) in self.library.pages() { + for (_, p) in self.library.read().unwrap().pages() { pages_insert_anchors.insert( p.file.path.clone(), self.find_parent_section_insert_anchor(&p.file.parent.clone(), &p.lang), ); } - self.library + let mut library = self.library.write().expect("Get lock for render_markdown"); + library .pages_mut() .values_mut() .collect::>() @@ -313,7 +315,7 @@ impl Site { }) .collect::>()?; - self.library + library .sections_mut() .values_mut() .collect::>() @@ -347,11 +349,11 @@ impl Site { } pub fn register_tera_global_fns(&mut self) { - self.tera.register_function("get_page", global_fns::GetPage::new(&self.library)); - self.tera.register_function("get_section", global_fns::GetSection::new(&self.library)); + self.tera.register_function("get_page", global_fns::GetPage::new(self.base_path.clone(), self.library.clone())); + self.tera.register_function("get_section", global_fns::GetSection::new(self.base_path.clone(), self.library.clone())); self.tera.register_function( "get_taxonomy", - global_fns::GetTaxonomy::new(&self.taxonomies, &self.library), + global_fns::GetTaxonomy::new(self.taxonomies.clone(), self.library.clone()), ); } @@ -366,8 +368,9 @@ impl Site { self.find_parent_section_insert_anchor(&page.file.parent, &page.lang); page.render_markdown(&self.permalinks, &self.tera, &self.config, insert_anchor)?; } - let prev = self.library.remove_page(&page.file.path); - self.library.insert_page(page); + let mut library = self.library.write().expect("Get lock for add_page"); + let prev = library.remove_page(&page.file.path); + library.insert_page(page); Ok(prev) } @@ -381,8 +384,9 @@ impl Site { if render { section.render_markdown(&self.permalinks, &self.tera, &self.config)?; } - let prev = self.library.remove_section(§ion.file.path); - self.library.insert_section(section); + let mut library = self.library.write().expect("Get lock for add_section"); + let prev = library.remove_section(§ion.file.path); + library.insert_section(section); Ok(prev) } @@ -399,7 +403,7 @@ impl Site { } else { parent_path.join("_index.md") }; - match self.library.get_section(&parent) { + match self.library.read().unwrap().get_section(&parent) { Some(s) => s.meta.insert_anchor_links, None => InsertAnchor::None, } @@ -408,7 +412,8 @@ impl Site { /// Find out the direct subsections of each subsection if there are some /// as well as the pages for each section pub fn populate_sections(&mut self) { - self.library.populate_sections(); + let mut library = self.library.write().expect("Get lock for populate_sections"); + library.populate_sections(); } /// Find all the tags and categories if it's asked in the config @@ -417,7 +422,7 @@ impl Site { return Ok(()); } - self.taxonomies = find_taxonomies(&self.config, &self.library)?; + self.taxonomies = find_taxonomies(&self.config, &self.library.read().unwrap())?; Ok(()) } @@ -495,7 +500,7 @@ impl Site { create_directory(¤t_path)?; // Finally, create a index.html file there with the page rendered - let output = page.render_html(&self.tera, &self.config, &self.library)?; + let output = page.render_html(&self.tera, &self.config, &self.library.read().unwrap())?; create_file(¤t_path.join("index.html"), &self.inject_livereload(output))?; // Copy any asset we found previously into the same directory as the index.html @@ -520,16 +525,17 @@ impl Site { self.render_orphan_pages()?; self.render_sitemap()?; + let library = self.library.read().unwrap(); if self.config.generate_rss { let pages = if self.config.is_multilingual() { - self.library + library .pages_values() .iter() .filter(|p| p.lang.is_none()) .map(|p| *p) .collect() } else { - self.library.pages_values() + library.pages_values() }; self.render_rss_feed(pages, None)?; } @@ -538,8 +544,7 @@ impl Site { if !lang.rss { continue; } - let pages = self - .library + let pages = library .pages_values() .iter() .filter(|p| if let Some(ref l) = p.lang { l == &lang.code } else { false }) @@ -579,7 +584,7 @@ impl Site { &self.output_path.join(&format!("search_index.{}.js", self.config.default_language)), &format!( "window.searchIndex = {};", - search::build_index(&self.config.default_language, &self.library)? + search::build_index(&self.config.default_language, &self.library.read().unwrap())? ), )?; @@ -656,7 +661,7 @@ impl Site { pub fn render_aliases(&self) -> Result<()> { ensure_directory_exists(&self.output_path)?; - for (_, page) in self.library.pages() { + for (_, page) in self.library.read().unwrap().pages() { for alias in &page.meta.aliases { let mut output_path = self.output_path.to_path_buf(); let mut split = alias.split('/').collect::>(); @@ -730,10 +735,10 @@ impl Site { } else { self.output_path.join(&taxonomy.kind.name) }; - let list_output = taxonomy.render_all_terms(&self.tera, &self.config, &self.library)?; + let list_output = taxonomy.render_all_terms(&self.tera, &self.config, &self.library.read().unwrap())?; create_directory(&output_path)?; create_file(&output_path.join("index.html"), &self.inject_livereload(list_output))?; - + let library = self.library.read().unwrap(); taxonomy .items .par_iter() @@ -742,18 +747,18 @@ impl Site { if taxonomy.kind.is_paginated() { self.render_paginated( &path, - &Paginator::from_taxonomy(&taxonomy, item, &self.library), + &Paginator::from_taxonomy(&taxonomy, item, &library), )?; } else { let single_output = - taxonomy.render_term(item, &self.tera, &self.config, &self.library)?; + taxonomy.render_term(item, &self.tera, &self.config, &library)?; create_directory(&path)?; create_file(&path.join("index.html"), &self.inject_livereload(single_output))?; } if taxonomy.kind.rss { self.render_rss_feed( - item.pages.iter().map(|p| self.library.get_page_by_key(*p)).collect(), + item.pages.iter().map(|p| library.get_page_by_key(*p)).collect(), Some(&PathBuf::from(format!("{}/{}", taxonomy.kind.name, item.slug))), ) } else { @@ -771,6 +776,8 @@ impl Site { let mut pages = self .library + .read() + .unwrap() .pages_values() .iter() .filter(|p| !p.is_draft()) @@ -787,12 +794,13 @@ impl Site { let mut sections = self .library + .read().unwrap() .sections_values() .iter() .map(|s| SitemapEntry::new(s.permalink.clone(), None)) .collect::>(); for section in - self.library.sections_values().iter().filter(|s| s.meta.paginate_by.is_some()) + self.library.read().unwrap().sections_values().iter().filter(|s| s.meta.paginate_by.is_some()) { let number_pagers = (section.pages.len() as f64 / section.meta.paginate_by.unwrap() as f64) @@ -872,12 +880,13 @@ impl Site { pages.par_sort_unstable_by(sort_actual_pages_by_date); context.insert("last_build_date", &pages[0].meta.date.clone()); + let library = self.library.read().unwrap(); // limit to the last n elements if the limit is set; otherwise use all. let num_entries = self.config.rss_limit.unwrap_or_else(|| pages.len()); let p = pages .iter() .take(num_entries) - .map(|x| x.to_serialized_basic(&self.library)) + .map(|x| x.to_serialized_basic(&library)) .collect::>(); context.insert("pages", &p); @@ -943,7 +952,7 @@ impl Site { section .pages .par_iter() - .map(|k| self.render_page(self.library.get_page_by_key(*k))) + .map(|k| self.render_page(self.library.read().unwrap().get_page_by_key(*k))) .collect::>()?; } @@ -961,9 +970,9 @@ impl Site { } if section.meta.is_paginated() { - self.render_paginated(&output_path, &Paginator::from_section(§ion, &self.library))?; + self.render_paginated(&output_path, &Paginator::from_section(§ion, &self.library.read().unwrap()))?; } else { - let output = section.render_html(&self.tera, &self.config, &self.library)?; + let output = section.render_html(&self.tera, &self.config, &self.library.read().unwrap())?; create_file(&output_path.join("index.html"), &self.inject_livereload(output))?; } @@ -975,6 +984,7 @@ impl Site { self.render_section( &self .library + .read().unwrap() .get_section(&self.content_path.join("_index.md")) .expect("Failed to get index section"), false, @@ -984,6 +994,7 @@ impl Site { /// Renders all sections pub fn render_sections(&self) -> Result<()> { self.library + .read().unwrap() .sections_values() .into_par_iter() .map(|s| self.render_section(s, true)) @@ -993,8 +1004,8 @@ impl Site { /// Renders all pages that do not belong to any sections pub fn render_orphan_pages(&self) -> Result<()> { ensure_directory_exists(&self.output_path)?; - - for page in self.get_all_orphan_pages() { + let library = self.library.read().unwrap(); + for page in library.get_all_orphan_pages() { self.render_page(page)?; } @@ -1015,7 +1026,7 @@ impl Site { let page_path = folder_path.join(&format!("{}", pager.index)); create_directory(&page_path)?; let output = - paginator.render_pager(pager, &self.config, &self.tera, &self.library)?; + paginator.render_pager(pager, &self.config, &self.tera, &self.library.read().unwrap())?; if pager.index > 1 { create_file(&page_path.join("index.html"), &self.inject_livereload(output))?; } else { diff --git a/components/site/tests/site.rs b/components/site/tests/site.rs index 7c4a55c..3a13fb9 100644 --- a/components/site/tests/site.rs +++ b/components/site/tests/site.rs @@ -16,59 +16,59 @@ fn can_parse_site() { path.push("test_site"); let mut site = Site::new(&path, "config.toml").unwrap(); site.load().unwrap(); + let library = site.library.read().unwrap(); // Correct number of pages (sections do not count as pages) - assert_eq!(site.library.pages().len(), 22); + assert_eq!(library.pages().len(), 22); let posts_path = path.join("content").join("posts"); // Make sure the page with a url doesn't have any sections - let url_post = site.library.get_page(&posts_path.join("fixed-url.md")).unwrap(); + let url_post = library.get_page(&posts_path.join("fixed-url.md")).unwrap(); assert_eq!(url_post.path, "a-fixed-url/"); // Make sure the article in a folder with only asset doesn't get counted as a section let asset_folder_post = - site.library.get_page(&posts_path.join("with-assets").join("index.md")).unwrap(); + library.get_page(&posts_path.join("with-assets").join("index.md")).unwrap(); assert_eq!(asset_folder_post.file.components, vec!["posts".to_string()]); // That we have the right number of sections - assert_eq!(site.library.sections().len(), 11); + assert_eq!(library.sections().len(), 11); // And that the sections are correct - let index_section = site.library.get_section(&path.join("content").join("_index.md")).unwrap(); + let index_section = library.get_section(&path.join("content").join("_index.md")).unwrap(); assert_eq!(index_section.subsections.len(), 4); assert_eq!(index_section.pages.len(), 1); assert!(index_section.ancestors.is_empty()); - let posts_section = site.library.get_section(&posts_path.join("_index.md")).unwrap(); + let posts_section = library.get_section(&posts_path.join("_index.md")).unwrap(); assert_eq!(posts_section.subsections.len(), 2); assert_eq!(posts_section.pages.len(), 10); assert_eq!( posts_section.ancestors, - vec![*site.library.get_section_key(&index_section.file.path).unwrap()] + vec![*library.get_section_key(&index_section.file.path).unwrap()] ); // Make sure we remove all the pwd + content from the sections - let basic = site.library.get_page(&posts_path.join("simple.md")).unwrap(); + let basic = library.get_page(&posts_path.join("simple.md")).unwrap(); assert_eq!(basic.file.components, vec!["posts".to_string()]); assert_eq!( basic.ancestors, vec![ - *site.library.get_section_key(&index_section.file.path).unwrap(), - *site.library.get_section_key(&posts_section.file.path).unwrap(), + *library.get_section_key(&index_section.file.path).unwrap(), + *library.get_section_key(&posts_section.file.path).unwrap(), ] ); let tutorials_section = - site.library.get_section(&posts_path.join("tutorials").join("_index.md")).unwrap(); + library.get_section(&posts_path.join("tutorials").join("_index.md")).unwrap(); assert_eq!(tutorials_section.subsections.len(), 2); - let sub1 = site.library.get_section_by_key(tutorials_section.subsections[0]); - let sub2 = site.library.get_section_by_key(tutorials_section.subsections[1]); + let sub1 = library.get_section_by_key(tutorials_section.subsections[0]); + let sub2 = library.get_section_by_key(tutorials_section.subsections[1]); assert_eq!(sub1.clone().meta.title.unwrap(), "Programming"); assert_eq!(sub2.clone().meta.title.unwrap(), "DevOps"); assert_eq!(tutorials_section.pages.len(), 0); - let devops_section = site - .library + let devops_section = library .get_section(&posts_path.join("tutorials").join("devops").join("_index.md")) .unwrap(); assert_eq!(devops_section.subsections.len(), 0); @@ -76,14 +76,13 @@ fn can_parse_site() { assert_eq!( devops_section.ancestors, vec![ - *site.library.get_section_key(&index_section.file.path).unwrap(), - *site.library.get_section_key(&posts_section.file.path).unwrap(), - *site.library.get_section_key(&tutorials_section.file.path).unwrap(), + *library.get_section_key(&index_section.file.path).unwrap(), + *library.get_section_key(&posts_section.file.path).unwrap(), + *library.get_section_key(&tutorials_section.file.path).unwrap(), ] ); - let prog_section = site - .library + let prog_section = library .get_section(&posts_path.join("tutorials").join("programming").join("_index.md")) .unwrap(); assert_eq!(prog_section.subsections.len(), 0); @@ -234,15 +233,18 @@ fn can_build_site_with_live_reload() { fn can_build_site_with_taxonomies() { let (site, _tmp_dir, public) = build_site_with_setup("test_site", |mut site| { site.load().unwrap(); - for (i, (_, page)) in site.library.pages_mut().iter_mut().enumerate() { - page.meta.taxonomies = { - let mut taxonomies = HashMap::new(); - taxonomies.insert( - "categories".to_string(), - vec![if i % 2 == 0 { "A" } else { "B" }.to_string()], - ); - taxonomies - }; + { + let mut library = site.library.write().unwrap(); + for (i, (_, page)) in library.pages_mut().iter_mut().enumerate() { + page.meta.taxonomies = { + let mut taxonomies = HashMap::new(); + taxonomies.insert( + "categories".to_string(), + vec![if i % 2 == 0 { "A" } else { "B" }.to_string()], + ); + taxonomies + }; + } } site.populate_taxonomies().unwrap(); (site, false) @@ -311,12 +313,15 @@ fn can_build_site_and_insert_anchor_links() { fn can_build_site_with_pagination_for_section() { let (_, _tmp_dir, public) = build_site_with_setup("test_site", |mut site| { site.load().unwrap(); - for (_, section) in site.library.sections_mut() { - if section.is_index() { - continue; + { + let mut library = site.library.write().unwrap(); + for (_, section) in library.sections_mut() { + if section.is_index() { + continue; + } + section.meta.paginate_by = Some(2); + section.meta.template = Some("section_paginated.html".to_string()); } - section.meta.paginate_by = Some(2); - section.meta.template = Some("section_paginated.html".to_string()); } (site, false) }); @@ -425,12 +430,14 @@ fn can_build_site_with_pagination_for_index() { let (_, _tmp_dir, public) = build_site_with_setup("test_site", |mut site| { site.load().unwrap(); { - let index = site - .library - .get_section_mut(&site.base_path.join("content").join("_index.md")) - .unwrap(); - index.meta.paginate_by = Some(2); - index.meta.template = Some("index_paginated.html".to_string()); + let mut library = site.library.write().unwrap(); + { + let index = library + .get_section_mut(&site.base_path.join("content").join("_index.md")) + .unwrap(); + index.meta.paginate_by = Some(2); + index.meta.template = Some("index_paginated.html".to_string()); + } } (site, false) }); @@ -482,16 +489,19 @@ fn can_build_site_with_pagination_for_taxonomy() { lang: None, }); site.load().unwrap(); - - for (i, (_, page)) in site.library.pages_mut().iter_mut().enumerate() { - page.meta.taxonomies = { - let mut taxonomies = HashMap::new(); - taxonomies.insert( - "tags".to_string(), - vec![if i % 2 == 0 { "A" } else { "B" }.to_string()], - ); - taxonomies - }; + { + let mut library = site.library.write().unwrap(); + + for (i, (_, page)) in library.pages_mut().iter_mut().enumerate() { + page.meta.taxonomies = { + let mut taxonomies = HashMap::new(); + taxonomies.insert( + "tags".to_string(), + vec![if i % 2 == 0 { "A" } else { "B" }.to_string()], + ); + taxonomies + }; + } } site.populate_taxonomies().unwrap(); (site, false) @@ -594,38 +604,38 @@ fn can_apply_page_templates() { site.load().unwrap(); let template_path = path.join("content").join("applying_page_template"); + let library = site.library.read().unwrap(); - let template_section = site.library.get_section(&template_path.join("_index.md")).unwrap(); + let template_section = library.get_section(&template_path.join("_index.md")).unwrap(); assert_eq!(template_section.subsections.len(), 2); assert_eq!(template_section.pages.len(), 2); - let from_section_config = site.library.get_page_by_key(template_section.pages[0]); + let from_section_config = library.get_page_by_key(template_section.pages[0]); assert_eq!(from_section_config.meta.template, Some("page_template.html".into())); assert_eq!(from_section_config.meta.title, Some("From section config".into())); - let override_page_template = site.library.get_page_by_key(template_section.pages[1]); + let override_page_template = library.get_page_by_key(template_section.pages[1]); assert_eq!(override_page_template.meta.template, Some("page_template_override.html".into())); assert_eq!(override_page_template.meta.title, Some("Override".into())); // It should have applied recursively as well let another_section = - site.library.get_section(&template_path.join("another_section").join("_index.md")).unwrap(); + library.get_section(&template_path.join("another_section").join("_index.md")).unwrap(); assert_eq!(another_section.subsections.len(), 0); assert_eq!(another_section.pages.len(), 1); - let changed_recursively = site.library.get_page_by_key(another_section.pages[0]); + let changed_recursively = library.get_page_by_key(another_section.pages[0]); assert_eq!(changed_recursively.meta.template, Some("page_template.html".into())); assert_eq!(changed_recursively.meta.title, Some("Changed recursively".into())); // But it should not have override a children page_template - let yet_another_section = site - .library + let yet_another_section = library .get_section(&template_path.join("yet_another_section").join("_index.md")) .unwrap(); assert_eq!(yet_another_section.subsections.len(), 0); assert_eq!(yet_another_section.pages.len(), 1); - let child = site.library.get_page_by_key(yet_another_section.pages[0]); + let child = library.get_page_by_key(yet_another_section.pages[0]); assert_eq!(child.meta.template, Some("page_template_child.html".into())); assert_eq!(child.meta.title, Some("Local section override".into())); } diff --git a/components/site/tests/site_i18n.rs b/components/site/tests/site_i18n.rs index ad85bdc..6ccb790 100644 --- a/components/site/tests/site_i18n.rs +++ b/components/site/tests/site_i18n.rs @@ -13,44 +13,45 @@ fn can_parse_multilingual_site() { let mut site = Site::new(&path, "config.toml").unwrap(); site.load().unwrap(); - assert_eq!(site.library.pages().len(), 10); - assert_eq!(site.library.sections().len(), 6); + let library = site.library.read().unwrap(); + assert_eq!(library.pages().len(), 10); + assert_eq!(library.sections().len(), 6); // default index sections let default_index_section = - site.library.get_section(&path.join("content").join("_index.md")).unwrap(); + library.get_section(&path.join("content").join("_index.md")).unwrap(); assert_eq!(default_index_section.pages.len(), 1); assert!(default_index_section.ancestors.is_empty()); let fr_index_section = - site.library.get_section(&path.join("content").join("_index.fr.md")).unwrap(); + library.get_section(&path.join("content").join("_index.fr.md")).unwrap(); assert_eq!(fr_index_section.pages.len(), 1); assert!(fr_index_section.ancestors.is_empty()); // blog sections get only their own language pages let blog_path = path.join("content").join("blog"); - let default_blog = site.library.get_section(&blog_path.join("_index.md")).unwrap(); + let default_blog = library.get_section(&blog_path.join("_index.md")).unwrap(); assert_eq!(default_blog.subsections.len(), 0); assert_eq!(default_blog.pages.len(), 4); assert_eq!( default_blog.ancestors, - vec![*site.library.get_section_key(&default_index_section.file.path).unwrap()] + vec![*library.get_section_key(&default_index_section.file.path).unwrap()] ); for key in &default_blog.pages { - let page = site.library.get_page_by_key(*key); + let page = library.get_page_by_key(*key); assert_eq!(page.lang, None); } - let fr_blog = site.library.get_section(&blog_path.join("_index.fr.md")).unwrap(); + let fr_blog = library.get_section(&blog_path.join("_index.fr.md")).unwrap(); assert_eq!(fr_blog.subsections.len(), 0); assert_eq!(fr_blog.pages.len(), 3); assert_eq!( fr_blog.ancestors, - vec![*site.library.get_section_key(&fr_index_section.file.path).unwrap()] + vec![*library.get_section_key(&fr_index_section.file.path).unwrap()] ); for key in &fr_blog.pages { - let page = site.library.get_page_by_key(*key); + let page = library.get_page_by_key(*key); assert_eq!(page.lang, Some("fr".to_string())); } } diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index 533173b..bb7344b 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -1,5 +1,6 @@ use std::collections::HashMap; -use std::sync::{Arc, Mutex}; +use std::path::PathBuf; +use std::sync::{Arc, Mutex, RwLock}; use tera::{from_value, to_value, Function as TeraFn, Result, Value}; @@ -190,18 +191,12 @@ impl TeraFn for GetTaxonomyUrl { #[derive(Debug)] pub struct GetPage { - pages: HashMap, + base_path: PathBuf, + library: Arc>, } impl GetPage { - pub fn new(library: &Library) -> Self { - let mut pages = HashMap::new(); - for page in library.pages_values() { - pages.insert( - page.file.relative.clone(), - to_value(library.get_page(&page.file.path).unwrap().to_serialized(library)).unwrap(), - ); - } - Self {pages} + pub fn new(base_path: PathBuf, library: Arc>) -> Self { + Self {base_path: base_path.join("content"), library} } } impl TeraFn for GetPage { @@ -211,8 +206,12 @@ impl TeraFn for GetPage { args.get("path"), "`get_page` requires a `path` argument with a string value" ); - match self.pages.get(&path) { - Some(p) => Ok(p.clone()), + 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()), } } @@ -220,27 +219,12 @@ impl TeraFn for GetPage { #[derive(Debug)] pub struct GetSection { - sections: HashMap, - sections_basic: HashMap, + base_path: PathBuf, + library: Arc>, } impl GetSection { - pub fn new(library: &Library) -> Self { - let mut sections = HashMap::new(); - let mut sections_basic = HashMap::new(); - for section in library.sections_values() { - sections.insert( - section.file.relative.clone(), - to_value(library.get_section(§ion.file.path).unwrap().to_serialized(library)) - .unwrap(), - ); - - sections_basic.insert( - section.file.relative.clone(), - to_value(library.get_section(§ion.file.path).unwrap().to_serialized_basic(library)) - .unwrap(), - ); - } - Self {sections, sections_basic} + pub fn new(base_path: PathBuf, library: Arc>) -> Self { + Self {base_path: base_path.join("content"), library} } } impl TeraFn for GetSection { @@ -255,10 +239,17 @@ impl TeraFn for GetSection { .get("metadata_only") .map_or(false, |c| from_value::(c.clone()).unwrap_or(false)); - let container = if metadata_only { &self.sections_basic } else { &self.sections }; + let full_path = self.base_path.join(&path); + let library = self.library.read().unwrap(); - match container.get(&path) { - Some(p) => Ok(p.clone()), + 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()), } } @@ -267,16 +258,16 @@ impl TeraFn for GetSection { #[derive(Debug)] pub struct GetTaxonomy { - taxonomies: HashMap, + library: Arc>, + taxonomies: HashMap, } impl GetTaxonomy { - pub fn new(all_taxonomies: &[Taxonomy], library: &Library) -> Self { + pub fn new(all_taxonomies: Vec, library: Arc>) -> Self { let mut taxonomies = HashMap::new(); - for taxonomy in all_taxonomies { - taxonomies - .insert(taxonomy.kind.name.clone(), to_value(taxonomy.to_serialized(library)).unwrap()); + for taxo in all_taxonomies { + taxonomies.insert(taxo.kind.name.clone(), taxo); } - Self {taxonomies} + Self {taxonomies, library} } } impl TeraFn for GetTaxonomy { @@ -286,18 +277,19 @@ impl TeraFn for GetTaxonomy { args.get("kind"), "`get_taxonomy` requires a `kind` argument with a string value" ); - let container = match self.taxonomies.get(&kind) { - Some(c) => c, + + match self.taxonomies.get(&kind) { + Some(t) => { + Ok(to_value(t.to_serialized(&self.library.read().unwrap())).unwrap()) + }, None => { - return Err(format!( + Err(format!( "`get_taxonomy` received an unknown taxonomy as kind: {}", kind ) - .into()); + .into()) } - }; - - Ok(to_value(container).unwrap()) + } } } @@ -306,6 +298,7 @@ mod tests { use super::{GetTaxonomy, GetTaxonomyUrl, GetUrl, Trans}; use std::collections::HashMap; + use std::sync::{RwLock, Arc}; use tera::{to_value, Value, Function}; @@ -355,12 +348,12 @@ mod tests { #[test] fn can_get_taxonomy() { let taxo_config = TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; - let library = Library::new(0, 0, false); - let tag = TaxonomyItem::new("Programming", &taxo_config, &Config::default(), vec![], &library); + let library = Arc::new(RwLock::new(Library::new(0, 0, false))); + let tag = TaxonomyItem::new("Programming", &taxo_config, &Config::default(), vec![], &library.read().unwrap()); let tags = Taxonomy { kind: taxo_config, items: vec![tag] }; let taxonomies = vec![tags.clone()]; - let static_fn = GetTaxonomy::new(&taxonomies, &library); + let static_fn = GetTaxonomy::new(taxonomies.clone(), library.clone()); // can find it correctly let mut args = HashMap::new(); args.insert("kind".to_string(), to_value("tags").unwrap()); diff --git a/src/console.rs b/src/console.rs index 2d50ca9..5151cf8 100644 --- a/src/console.rs +++ b/src/console.rs @@ -47,23 +47,24 @@ fn colorize(message: &str, color: &ColorSpec) { /// Display in the console the number of pages/sections in the site pub fn notify_site_size(site: &Site) { + let library = site.library.read().unwrap(); println!( "-> Creating {} pages ({} orphan), {} sections, and processing {} images", - site.library.pages().len(), - site.get_all_orphan_pages().len(), - site.library.sections().len() - 1, // -1 since we do not the index as a section + library.pages().len(), + site.get_number_orphan_pages(), + library.sections().len() - 1, // -1 since we do not the index as a section site.num_img_ops(), ); } /// Display a warning in the console if there are ignored pages in the site pub fn warn_about_ignored_pages(site: &Site) { - let ignored_pages: Vec<_> = site - .library + let library = site.library.read().unwrap(); + let ignored_pages: Vec<_> = library .sections_values() .iter() .flat_map(|s| { - s.ignored_pages.iter().map(|k| site.library.get_page_by_key(*k).file.path.clone()) + s.ignored_pages.iter().map(|k| library.get_page_by_key(*k).file.path.clone()) }) .collect(); From 9398ab789c401db60b81b62491b8cc478ec52156 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 28 Jan 2019 00:34:18 +0100 Subject: [PATCH 49/82] Clone-less toc making --- components/rendering/src/markdown.rs | 10 +- components/rendering/src/table_of_contents.rs | 150 ++++++------------ 2 files changed, 54 insertions(+), 106 deletions(-) diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index 7e7611f..3c6f20b 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -12,7 +12,7 @@ use context::RenderContext; use errors::{Error, Result}; use front_matter::InsertAnchor; use link_checker::check_url; -use table_of_contents::{Header, make_table_of_contents, TempHeader}; +use table_of_contents::{Header, make_table_of_contents}; use utils::site::resolve_internal_link; use utils::vec::InsertMany; @@ -140,7 +140,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result = None; let mut inserted_anchors: Vec = vec![]; - let mut headers: Vec = vec![]; + let mut headers: Vec
= vec![]; let mut opts = Options::empty(); let mut has_summary = false; @@ -253,8 +253,8 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result Result, } impl Header { - pub fn from_temp_header(tmp: &TempHeader, children: Vec
) -> Header { + pub fn new(level: i32) -> Header { Header { - level: tmp.level, - id: tmp.id.clone(), - title: tmp.title.clone(), - permalink: tmp.permalink.clone(), - children, - } - } -} - -/// Populated while receiving events from the markdown parser -#[derive(Debug, PartialEq, Clone)] -pub struct TempHeader { - pub level: i32, - pub id: String, - pub permalink: String, - pub title: String, -} - -impl TempHeader { - pub fn new(level: i32) -> TempHeader { - TempHeader { level, id: String::new(), permalink: String::new(), title: String::new(), + children: Vec::new(), } } } -impl Default for TempHeader { +impl Default for Header { fn default() -> Self { - TempHeader::new(0) - } -} - -/// Recursively finds children of a header -fn find_children( - parent_level: i32, - start_at: usize, - temp_headers: &[TempHeader], -) -> (usize, Vec
) { - let mut headers = vec![]; - - let mut start_at = start_at; - // If we have children, we will need to skip some headers since they are already inserted - let mut to_skip = 0; - - for h in &temp_headers[start_at..] { - // stop when we encounter a title at the same level or higher - // than the parent one. Here a lower integer is considered higher as we are talking about - // HTML headers: h1, h2, h3, h4, h5 and h6 - if h.level <= parent_level { - return (start_at, headers); - } - - // Do we need to skip some headers? - if to_skip > 0 { - to_skip -= 1; - continue; - } - - let (end, children) = find_children(h.level, start_at + 1, temp_headers); - headers.push(Header::from_temp_header(h, children)); - - // we didn't find any children - if end == start_at { - start_at += 1; - to_skip = 0; - } else { - // calculates how many we need to skip. Since the find_children start_at starts at 1, - // we need to remove 1 to ensure correctness - to_skip = end - start_at - 1; - start_at = end; - } - - // we don't want to index out of bounds - if start_at + 1 > temp_headers.len() { - return (start_at, headers); - } + Header::new(0) } - - (start_at, headers) } /// Converts the flat temp headers into a nested set of headers /// representing the hierarchy -pub fn make_table_of_contents(temp_headers: &[TempHeader]) -> Vec
{ +pub fn make_table_of_contents(headers: Vec
) -> Vec
{ let mut toc = vec![]; - let mut start_idx = 0; - for (i, h) in temp_headers.iter().enumerate() { - if i < start_idx { + 'parent: for header in headers { + if toc.is_empty() { + toc.push(header); continue; } - let (end_idx, children) = find_children(h.level, start_idx + 1, temp_headers); - start_idx = end_idx; - toc.push(Header::from_temp_header(h, children)); + + // See if we have to insert as a child of a previous header + for h in toc.iter_mut().rev() { + // Look in its children first + for child in h.children.iter_mut().rev() { + if header.level > child.level { + child.children.push(header); + continue 'parent; + } + } + if header.level > h.level { + h.children.push(header); + continue 'parent; + } + } + + // Nop, just insert it + toc.push(header) } toc @@ -118,25 +65,25 @@ mod tests { #[test] fn can_make_basic_toc() { - let input = vec![TempHeader::new(1), TempHeader::new(1), TempHeader::new(1)]; - let toc = make_table_of_contents(&input); + let input = vec![Header::new(1), Header::new(1), Header::new(1)]; + let toc = make_table_of_contents(input); assert_eq!(toc.len(), 3); } #[test] fn can_make_more_complex_toc() { let input = vec![ - TempHeader::new(1), - TempHeader::new(2), - TempHeader::new(2), - TempHeader::new(3), - TempHeader::new(2), - TempHeader::new(1), - TempHeader::new(2), - TempHeader::new(3), - TempHeader::new(3), + Header::new(1), + Header::new(2), + Header::new(2), + Header::new(3), + Header::new(2), + Header::new(1), + Header::new(2), + Header::new(3), + Header::new(3), ]; - let toc = make_table_of_contents(&input); + let toc = make_table_of_contents(input); assert_eq!(toc.len(), 2); assert_eq!(toc[0].children.len(), 3); assert_eq!(toc[1].children.len(), 1); @@ -147,15 +94,16 @@ mod tests { #[test] fn can_make_messy_toc() { let input = vec![ - TempHeader::new(3), - TempHeader::new(2), - TempHeader::new(2), - TempHeader::new(3), - TempHeader::new(2), - TempHeader::new(1), - TempHeader::new(4), + Header::new(3), + Header::new(2), + Header::new(2), + Header::new(3), + Header::new(2), + Header::new(1), + Header::new(4), ]; - let toc = make_table_of_contents(&input); + let toc = make_table_of_contents(input); + println!("{:#?}", toc); assert_eq!(toc.len(), 5); assert_eq!(toc[2].children.len(), 1); assert_eq!(toc[4].children.len(), 1); From 0b897ce7c728e9c520a3ff56ba7deba94c1e2f4c Mon Sep 17 00:00:00 2001 From: Peng Guanwen Date: Tue, 29 Jan 2019 16:30:54 +0800 Subject: [PATCH 50/82] Replace trim_{left, right} with trim_{start, end} trim_{start, end} is introduced in rust 1.30.0 and trim_{left, right} is deprecated since 1.33.0. --- components/library/src/content/page.rs | 2 +- components/rendering/src/shortcode.rs | 2 +- components/templates/src/filters.rs | 4 ++-- src/cmd/init.rs | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index cc5407c..89796d4 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -153,7 +153,7 @@ impl Page { }; if let Some(ref p) = page.meta.path { - page.path = p.trim().trim_left_matches('/').to_string(); + page.path = p.trim().trim_start_matches('/').to_string(); } else { let mut path = if page.file.components.is_empty() { page.slug.clone() diff --git a/components/rendering/src/shortcode.rs b/components/rendering/src/shortcode.rs index 2645084..e5bd679 100644 --- a/components/rendering/src/shortcode.rs +++ b/components/rendering/src/shortcode.rs @@ -108,7 +108,7 @@ fn render_shortcode( } if let Some(ref b) = body { // Trimming right to avoid most shortcodes with bodies ending up with a HTML new line - tera_context.insert("body", b.trim_right()); + tera_context.insert("body", b.trim_end()); } tera_context.extend(context.tera_context.clone()); diff --git a/components/templates/src/filters.rs b/components/templates/src/filters.rs index a8911af..133feb8 100644 --- a/components/templates/src/filters.rs +++ b/components/templates/src/filters.rs @@ -21,9 +21,9 @@ pub fn markdown(value: &Value, args: &HashMap) -> TeraResult") + .trim_start_matches("

") // pulldown_cmark finishes a paragraph with `

\n` - .trim_right_matches("

\n") + .trim_end_matches("

\n") .to_string(); } diff --git a/src/cmd/init.rs b/src/cmd/init.rs index c47ef5d..b263482 100644 --- a/src/cmd/init.rs +++ b/src/cmd/init.rs @@ -41,7 +41,7 @@ pub fn create_new_project(name: &str) -> Result<()> { let search = ask_bool("> Do you want to build a search index of the content?", false)?; let config = CONFIG - .trim_left() + .trim_start() .replace("%BASE_URL%", &base_url) .replace("%COMPILE_SASS%", &format!("{}", compile_sass)) .replace("%SEARCH%", &format!("{}", search)) From 1c7729cac65e0b95eceb85f45b4a651624b64e42 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 29 Jan 2019 19:20:03 +0100 Subject: [PATCH 51/82] Default lang to config.default_language --- Cargo.lock | 100 ++++++++++-------- components/config/src/config.rs | 13 ++- components/library/src/content/file_info.rs | 16 +-- components/library/src/content/page.rs | 18 ++-- components/library/src/content/section.rs | 14 +-- components/library/src/content/ser.rs | 6 +- components/library/src/library.rs | 7 +- components/library/src/taxonomies/mod.rs | 28 +++-- components/site/src/lib.rs | 20 ++-- components/site/tests/site.rs | 2 +- components/site/tests/site_i18n.rs | 4 +- components/templates/src/global_fns/mod.rs | 10 +- .../documentation/templates/pages-sections.md | 8 +- 13 files changed, 137 insertions(+), 109 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index fa0d547..61483e5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -14,7 +14,7 @@ dependencies = [ "actix_derive 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -32,7 +32,7 @@ dependencies = [ "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-proto 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-resolver 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)", - "uuid 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -89,7 +89,7 @@ dependencies = [ "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", @@ -388,10 +388,10 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-epoch 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -399,12 +399,10 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.3.6" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -422,8 +420,8 @@ name = "crossbeam-deque" version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-epoch 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -442,12 +440,12 @@ dependencies = [ [[package]] name = "crossbeam-epoch" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -463,10 +461,11 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.6.3" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -948,7 +947,7 @@ name = "ignore" version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1366,10 +1365,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "nom" -version = "4.1.1" +version = "4.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1511,7 +1511,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1584,7 +1584,7 @@ version = "0.7.24" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1685,16 +1685,17 @@ dependencies = [ [[package]] name = "rand" -version = "0.6.4" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_os 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_jitter 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_os 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1739,14 +1740,24 @@ dependencies = [ ] [[package]] -name = "rand_os" +name = "rand_jitter" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rand_os" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-cprng 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1898,7 +1909,7 @@ dependencies = [ "tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "uuid 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2274,7 +2285,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2432,7 +2443,7 @@ name = "tokio-executor" version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2461,7 +2472,7 @@ name = "tokio-reactor" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2516,13 +2527,13 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2532,7 +2543,7 @@ name = "tokio-timer" version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2804,10 +2815,10 @@ dependencies = [ [[package]] name = "uuid" -version = "0.7.1" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2833,7 +2844,7 @@ name = "v_escape_derive" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "nom 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "nom 4.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2844,7 +2855,7 @@ name = "v_escape_derive" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "nom 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "nom 4.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3080,13 +3091,13 @@ dependencies = [ "checksum crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb" "checksum crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e91d5240c6975ef33aeb5f148f35275c25eda8e8a5f95abe421978b05b8bf192" "checksum crossbeam 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ad4c7ea749d9fb09e23c5cb17e3b70650860553a0e2744e38446b1803bf7db94" -"checksum crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "137bc235f622ffaa0428e3854e24acb53291fc0b3ff6fb2cb75a8be6fb02f06b" +"checksum crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "0f0ed1a4de2235cabda8558ff5840bffb97fcb64c97827f354a451307df5f72b" "checksum crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f739f8c5363aca78cfb059edf753d8f0d36908c348f3d8d1503f03d8b75d9cf3" "checksum crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13" "checksum crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "927121f5407de9956180ff5e936fe3cf4324279280001cd56b669d28ee7e9150" -"checksum crossbeam-epoch 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f10a4f8f409aaac4b16a5474fb233624238fcdeefb9ba50d5ea059aab63ba31c" +"checksum crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "04c9e3102cc2d69cd681412141b390abd55a362afc1540965dad0ad4d34280b4" "checksum crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2760899e32a1d58d5abb31129f8fae5de75220bc2176e77ff7c627ae45c918d9" -"checksum crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "41ee4864f4797060e52044376f7d107429ce1fb43460021b126424b7180ee21a" +"checksum crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "f8306fcef4a7b563b76b7dd949ca48f52bc1141aa067d2ea09565f3e2652aa5c" "checksum csv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "9fd1c44c58078cfbeaf11fbb3eac9ae5534c23004ed770cc4bfb48e658ae4f04" "checksum csv-core 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fa5cdef62f37e6ffe7d1f07a381bc0db32b7a3ff1cac0de56cb0d81e71f53d65" "checksum ctrlc 3.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "630391922b1b893692c6334369ff528dcc3a9d8061ccf4c803aa8f83cb13db5e" @@ -3181,7 +3192,7 @@ dependencies = [ "checksum new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0cdc457076c78ab54d5e0d6fa7c47981757f1e34dc39ff92787f217dede586c4" "checksum nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17" "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" -"checksum nom 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9c349f68f25f596b9f44cf0e7c69752a5c633b0550c3ff849518bfba0233774a" +"checksum nom 4.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b30adc557058ce00c9d0d7cb3c6e0b5bc6f36e2e2eabe74b0ba726d194abd588" "checksum notify 4.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "c968cf37cf949114b00d51b0b23536d1c3a4a3963767cf4c969c65a6af78dc7d" "checksum num-derive 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d9fe8fcafd1b86a37ce8a1cfa15ae504817e0c8c2e7ad42767371461ac1d316d" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" @@ -3216,13 +3227,14 @@ dependencies = [ "checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1" "checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" "checksum rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9" -"checksum rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3906503e80ac6cbcacb2c2973fa8e473f24d7e2747c8c92bb230c2441cad96b5" +"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" "checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" "checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" "checksum rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0" "checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" "checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" -"checksum rand_os 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f46fbd5550acf75b0c2730f5dd1873751daf9beb8f11b44027778fae50d7feca" +"checksum rand_jitter 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "29fe7b8bc348249f3b1bbb9ab8baa6fa3419196ecfbf213408bca1b2494710de" +"checksum rand_os 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b7c690732391ae0abafced5015ffb53656abfaec61b342290e5eb56b286a679d" "checksum rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "086bd09a33c7044e56bb44d5bdde5a60e7f119a9e95b0775f545de759a32fe05" "checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" "checksum rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "373814f27745b2686b350dd261bfd24576a6fb0e2c5919b3a2b6005f820b0473" @@ -3324,7 +3336,7 @@ dependencies = [ "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" "checksum utf-8 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "05e42f7c18b8f902290b009cde6d651262f956c98bc51bca4cd1d511c9cd85c7" "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" -"checksum uuid 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dab5c5526c5caa3d106653401a267fed923e7046f35895ffcb5ca42db64942e6" +"checksum uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0238db0c5b605dd1cf51de0f21766f97fba2645897024461d6a00c036819a768" "checksum v_escape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c8b50688edb86f4c092a1a9fe8bda004b0faa3197100897653809e97e09a2814" "checksum v_escape 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6177565a30b7091835dd4a33a81fc4f064e671729a6b7cb964675b2a0bb295a1" "checksum v_escape_derive 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7cd994c63b487fef7aad31e5394ec04b9e24de7b32ea5251c9fb499cd2cbf44c" diff --git a/components/config/src/config.rs b/components/config/src/config.rs index 4c02086..1f37192 100644 --- a/components/config/src/config.rs +++ b/components/config/src/config.rs @@ -41,8 +41,9 @@ pub struct Taxonomy { pub paginate_path: Option, /// Whether to generate a RSS feed only for each taxonomy term, defaults to false pub rss: bool, - /// The language for that taxonomy, only used in multilingual sites - pub lang: Option, + /// The language for that taxonomy, only used in multilingual sites. + /// Defaults to the config `default_language` if not set + pub lang: String, } impl Taxonomy { @@ -70,7 +71,7 @@ impl Default for Taxonomy { paginate_by: None, paginate_path: None, rss: false, - lang: None, + lang: String::new(), } } } @@ -172,6 +173,12 @@ 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(); + } + } + Ok(config) } diff --git a/components/library/src/content/file_info.rs b/components/library/src/content/file_info.rs index 7111fa5..94311b5 100644 --- a/components/library/src/content/file_info.rs +++ b/components/library/src/content/file_info.rs @@ -112,14 +112,14 @@ impl FileInfo { /// Look for a language in the filename. /// If a language has been found, update the name of the file in this struct to /// remove it and return the language code - pub fn find_language(&mut self, config: &Config) -> Result> { + pub fn find_language(&mut self, config: &Config) -> Result { // No languages? Nothing to do if !config.is_multilingual() { - return Ok(None); + return Ok(config.default_language.clone()); } if !self.name.contains('.') { - return Ok(None); + return Ok(config.default_language.clone()); } // Go with the assumption that no one is using `.` in filenames when using i18n @@ -136,7 +136,7 @@ impl FileInfo { self.canonical = self.parent.join(&self.name); let lang = parts.swap_remove(0); - Ok(Some(lang)) + Ok(lang) } } @@ -187,7 +187,7 @@ mod tests { )); let res = file.find_language(&config); assert!(res.is_ok()); - assert_eq!(res.unwrap(), Some(String::from("fr"))); + assert_eq!(res.unwrap(), "fr"); } #[test] @@ -200,7 +200,7 @@ mod tests { assert_eq!(file.components, ["posts".to_string(), "tutorials".to_string()]); let res = file.find_language(&config); assert!(res.is_ok()); - assert_eq!(res.unwrap(), Some(String::from("fr"))); + assert_eq!(res.unwrap(), "fr"); } #[test] @@ -211,7 +211,7 @@ mod tests { )); let res = file.find_language(&config); assert!(res.is_ok()); - assert!(res.unwrap().is_none()); + assert_eq!(res.unwrap(), config.default_language); } #[test] @@ -234,6 +234,6 @@ mod tests { )); let res = file.find_language(&config); assert!(res.is_ok()); - assert_eq!(res.unwrap(), Some(String::from("fr"))); + assert_eq!(res.unwrap(), "fr"); } } diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 89796d4..420e414 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -71,9 +71,9 @@ pub struct Page { /// How long would it take to read the raw content. /// See `get_reading_analytics` on how it is calculated pub reading_time: Option, - /// The language of that page. `None` if the user doesn't setup `languages` in config. + /// The language of that page. Equal to the default lang if the user doesn't setup `languages` in config. /// Corresponds to the lang in the {slug}.{lang}.md file scheme - pub lang: Option, + pub lang: String, /// Contains all the translated version of that page pub translations: Vec, } @@ -102,7 +102,7 @@ impl Page { toc: vec![], word_count: None, reading_time: None, - lang: None, + lang: String::new(), translations: Vec::new(), } } @@ -161,8 +161,8 @@ impl Page { format!("{}/{}", page.file.components.join("/"), page.slug) }; - if let Some(ref lang) = page.lang { - path = format!("{}/{}", lang, path); + if page.lang != config.default_language { + path = format!("{}/{}", page.lang, path); } page.path = path; @@ -302,7 +302,7 @@ impl Default for Page { toc: vec![], word_count: None, reading_time: None, - lang: None, + lang: String::new(), translations: Vec::new(), } } @@ -590,7 +590,7 @@ Bonjour le monde"# let res = Page::parse(Path::new("hello.fr.md"), &content, &config); assert!(res.is_ok()); let page = res.unwrap(); - assert_eq!(page.lang, Some("fr".to_string())); + assert_eq!(page.lang, "fr".to_string()); assert_eq!(page.slug, "hello"); assert_eq!(page.permalink, "http://a-website.com/fr/hello/"); } @@ -608,7 +608,7 @@ Bonjour le monde"# assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.meta.date, Some("2018-10-08".to_string())); - assert_eq!(page.lang, Some("fr".to_string())); + assert_eq!(page.lang, "fr".to_string()); assert_eq!(page.slug, "hello"); assert_eq!(page.permalink, "http://a-website.com/fr/hello/"); } @@ -626,7 +626,7 @@ Bonjour le monde"# let res = Page::parse(Path::new("hello.fr.md"), &content, &config); assert!(res.is_ok()); let page = res.unwrap(); - assert_eq!(page.lang, Some("fr".to_string())); + assert_eq!(page.lang, "fr".to_string()); assert_eq!(page.slug, "hello"); assert_eq!(page.permalink, "http://a-website.com/bonjour/"); } diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index 5405689..2a7c4df 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -51,9 +51,9 @@ pub struct Section { /// How long would it take to read the raw content. /// See `get_reading_analytics` on how it is calculated pub reading_time: Option, - /// The language of that section. `None` if the user doesn't setup `languages` in config. + /// 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: Option, + pub lang: String, /// Contains all the translated version of that section pub translations: Vec, } @@ -79,7 +79,7 @@ impl Section { toc: vec![], word_count: None, reading_time: None, - lang: None, + lang: String::new(), translations: Vec::new(), } } @@ -93,8 +93,8 @@ impl Section { section.word_count = Some(word_count); section.reading_time = Some(reading_time); let path = format!("{}/", section.file.components.join("/")); - if let Some(ref lang) = section.lang { - section.path = format!("{}/{}", lang, path); + if section.lang != config.default_language { + section.path = format!("{}/{}", section.lang, path); } else { section.path = path; } @@ -237,7 +237,7 @@ impl Default for Section { toc: vec![], reading_time: None, word_count: None, - lang: None, + lang: String::new(), translations: Vec::new(), } } @@ -315,7 +315,7 @@ Bonjour le monde"# let res = Section::parse(Path::new("content/hello/nested/_index.fr.md"), &content, &config); assert!(res.is_ok()); let section = res.unwrap(); - assert_eq!(section.lang, Some("fr".to_string())); + assert_eq!(section.lang, "fr".to_string()); assert_eq!(section.permalink, "http://a-website.com/fr/hello/nested/"); } } diff --git a/components/library/src/content/ser.rs b/components/library/src/content/ser.rs index 3404952..e8f311b 100644 --- a/components/library/src/content/ser.rs +++ b/components/library/src/content/ser.rs @@ -9,7 +9,7 @@ use rendering::Header; #[derive(Clone, Debug, PartialEq, Serialize)] pub struct TranslatedContent<'a> { - lang: &'a Option, + lang: &'a str, permalink: &'a str, title: &'a Option, } @@ -70,7 +70,7 @@ pub struct SerializingPage<'a> { toc: &'a [Header], assets: &'a [String], draft: bool, - lang: &'a Option, + lang: &'a str, lighter: Option>>, heavier: Option>>, earlier: Option>>, @@ -211,7 +211,7 @@ pub struct SerializingSection<'a> { components: &'a [String], word_count: Option, reading_time: Option, - lang: &'a Option, + lang: &'a str, toc: &'a [Header], assets: &'a [String], pages: Vec>, diff --git a/components/library/src/library.rs b/components/library/src/library.rs index 5552ee9..ad295e8 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -7,6 +7,7 @@ use front_matter::SortBy; use content::{Page, Section}; use sorting::{find_siblings, sort_pages_by_date, sort_pages_by_weight}; +use config::Config; /// Houses everything about pages and sections /// Think of it as a database where each page and section has an id (Key here) @@ -82,7 +83,7 @@ impl Library { /// Find out the direct subsections of each subsection if there are some /// as well as the pages for each section - pub fn populate_sections(&mut self) { + pub fn populate_sections(&mut self, config: &Config) { let root_path = self.sections.values().find(|s| s.is_index()).map(|s| s.file.parent.clone()).unwrap(); // We are going to get both the ancestors and grandparents for each section in one go @@ -128,8 +129,8 @@ impl Library { } for (key, page) in &mut self.pages { - let parent_filename = if let Some(ref lang) = page.lang { - format!("_index.{}.md", lang) + let parent_filename = if page.lang != config.default_language { + format!("_index.{}.md", page.lang) } else { "_index.md".to_string() }; diff --git a/components/library/src/taxonomies/mod.rs b/components/library/src/taxonomies/mod.rs index 6d949d3..0756b53 100644 --- a/components/library/src/taxonomies/mod.rs +++ b/components/library/src/taxonomies/mod.rs @@ -64,8 +64,8 @@ impl TaxonomyItem { .collect(); let (mut pages, ignored_pages) = sort_pages_by_date(data); let slug = slugify(name); - let permalink = if let Some(ref lang) = taxonomy.lang { - config.make_permalink(&format!("/{}/{}/{}", lang, taxonomy.name, slug)) + let permalink = if taxonomy.lang != config.default_language { + config.make_permalink(&format!("/{}/{}/{}", taxonomy.lang, taxonomy.name, slug)) } else { config.make_permalink(&format!("/{}/{}", taxonomy.name, slug)) }; @@ -242,9 +242,9 @@ mod tests { let mut library = Library::new(2, 0, false); config.taxonomies = vec![ - TaxonomyConfig { name: "categories".to_string(), ..TaxonomyConfig::default() }, - TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }, - TaxonomyConfig { name: "authors".to_string(), ..TaxonomyConfig::default() }, + 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: "authors".to_string(), lang: config.default_language.clone(), ..TaxonomyConfig::default() }, ]; let mut page1 = Page::default(); @@ -252,6 +252,7 @@ mod tests { taxo_page1.insert("tags".to_string(), vec!["rust".to_string(), "db".to_string()]); taxo_page1.insert("categories".to_string(), vec!["Programming tutorials".to_string()]); page1.meta.taxonomies = taxo_page1; + page1.lang = config.default_language.clone(); library.insert_page(page1); let mut page2 = Page::default(); @@ -259,6 +260,7 @@ mod tests { taxo_page2.insert("tags".to_string(), vec!["rust".to_string(), "js".to_string()]); taxo_page2.insert("categories".to_string(), vec!["Other".to_string()]); page2.meta.taxonomies = taxo_page2; + page2.lang = config.default_language.clone(); library.insert_page(page2); let mut page3 = Page::default(); @@ -266,6 +268,7 @@ mod tests { taxo_page3.insert("tags".to_string(), vec!["js".to_string()]); taxo_page3.insert("authors".to_string(), vec!["Vincent Prouillet".to_string()]); page3.meta.taxonomies = taxo_page3; + page3.lang = config.default_language.clone(); library.insert_page(page3); let taxonomies = find_taxonomies(&config, &library).unwrap(); @@ -322,11 +325,12 @@ mod tests { let mut library = Library::new(2, 0, false); config.taxonomies = - vec![TaxonomyConfig { name: "authors".to_string(), ..TaxonomyConfig::default() }]; + vec![TaxonomyConfig { name: "authors".to_string(), lang: config.default_language.clone(), ..TaxonomyConfig::default() }]; let mut page1 = Page::default(); let mut taxo_page1 = HashMap::new(); taxo_page1.insert("tags".to_string(), vec!["rust".to_string(), "db".to_string()]); page1.meta.taxonomies = taxo_page1; + page1.lang = config.default_language.clone(); library.insert_page(page1); let taxonomies = find_taxonomies(&config, &library); @@ -346,9 +350,9 @@ mod tests { let mut library = Library::new(2, 0, true); config.taxonomies = vec![ - TaxonomyConfig { name: "categories".to_string(), ..TaxonomyConfig::default() }, - TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }, - TaxonomyConfig { name: "auteurs".to_string(), lang: Some("fr".to_string()), ..TaxonomyConfig::default() }, + 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() }, ]; let mut page1 = Page::default(); @@ -356,6 +360,7 @@ mod tests { taxo_page1.insert("tags".to_string(), vec!["rust".to_string(), "db".to_string()]); taxo_page1.insert("categories".to_string(), vec!["Programming tutorials".to_string()]); page1.meta.taxonomies = taxo_page1; + page1.lang = config.default_language.clone(); library.insert_page(page1); let mut page2 = Page::default(); @@ -363,10 +368,11 @@ mod tests { taxo_page2.insert("tags".to_string(), vec!["rust".to_string()]); taxo_page2.insert("categories".to_string(), vec!["Other".to_string()]); page2.meta.taxonomies = taxo_page2; + page2.lang = config.default_language.clone(); library.insert_page(page2); let mut page3 = Page::default(); - page3.lang = Some("fr".to_string()); + page3.lang = "fr".to_string(); let mut taxo_page3 = HashMap::new(); taxo_page3.insert("auteurs".to_string(), vec!["Vincent Prouillet".to_string()]); page3.meta.taxonomies = taxo_page3; @@ -431,7 +437,7 @@ mod tests { vec![TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }]; let mut page1 = Page::default(); - page1.lang = Some("fr".to_string()); + page1.lang = "fr".to_string(); let mut taxo_page1 = HashMap::new(); taxo_page1.insert("tags".to_string(), vec!["rust".to_string(), "db".to_string()]); page1.meta.taxonomies = taxo_page1; diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index bc84def..8a8e0b7 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -396,10 +396,10 @@ impl Site { pub fn find_parent_section_insert_anchor( &self, parent_path: &PathBuf, - lang: &Option, + lang: &str, ) -> InsertAnchor { - let parent = if let Some(ref l) = lang { - parent_path.join(format!("_index.{}.md", l)) + let parent = if lang != self.config.default_language { + parent_path.join(format!("_index.{}.md", lang)) } else { parent_path.join("_index.md") }; @@ -413,7 +413,7 @@ impl Site { /// as well as the pages for each section pub fn populate_sections(&mut self) { let mut library = self.library.write().expect("Get lock for populate_sections"); - library.populate_sections(); + library.populate_sections(&self.config); } /// Find all the tags and categories if it's asked in the config @@ -531,7 +531,7 @@ impl Site { library .pages_values() .iter() - .filter(|p| p.lang.is_none()) + .filter(|p| p.lang == self.config.default_language) .map(|p| *p) .collect() } else { @@ -547,7 +547,7 @@ impl Site { let pages = library .pages_values() .iter() - .filter(|p| if let Some(ref l) = p.lang { l == &lang.code } else { false }) + .filter(|p| p.lang == lang.code) .map(|p| *p) .collect(); self.render_rss_feed(pages, Some(&PathBuf::from(lang.code.clone())))?; @@ -728,8 +728,8 @@ impl Site { } ensure_directory_exists(&self.output_path)?; - let output_path = if let Some(ref lang) = taxonomy.kind.lang { - let mid_path = self.output_path.join(lang); + let output_path = if taxonomy.kind.lang != self.config.default_language { + let mid_path = self.output_path.join(&taxonomy.kind.lang); create_directory(&mid_path)?; mid_path.join(&taxonomy.kind.name) } else { @@ -922,8 +922,8 @@ impl Site { ensure_directory_exists(&self.output_path)?; let mut output_path = self.output_path.clone(); - if let Some(ref lang) = section.lang { - output_path.push(lang); + if section.lang != self.config.default_language { + output_path.push(§ion.lang); if !output_path.exists() { create_directory(&output_path)?; } diff --git a/components/site/tests/site.rs b/components/site/tests/site.rs index 3a13fb9..7e025e7 100644 --- a/components/site/tests/site.rs +++ b/components/site/tests/site.rs @@ -486,7 +486,7 @@ fn can_build_site_with_pagination_for_taxonomy() { paginate_by: Some(2), paginate_path: None, rss: true, - lang: None, + lang: site.config.default_language.clone(), }); site.load().unwrap(); { diff --git a/components/site/tests/site_i18n.rs b/components/site/tests/site_i18n.rs index 6ccb790..f9b2a98 100644 --- a/components/site/tests/site_i18n.rs +++ b/components/site/tests/site_i18n.rs @@ -40,7 +40,7 @@ fn can_parse_multilingual_site() { ); for key in &default_blog.pages { let page = library.get_page_by_key(*key); - assert_eq!(page.lang, None); + assert_eq!(page.lang, "en"); } let fr_blog = library.get_section(&blog_path.join("_index.fr.md")).unwrap(); @@ -52,7 +52,7 @@ fn can_parse_multilingual_site() { ); for key in &fr_blog.pages { let page = library.get_page_by_key(*key); - assert_eq!(page.lang, Some("fr".to_string())); + assert_eq!(page.lang, "fr"); } } diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index bb7344b..2398386 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -347,9 +347,10 @@ mod tests { #[test] fn can_get_taxonomy() { - let taxo_config = TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; + let config = Config::default(); + let taxo_config = TaxonomyConfig { name: "tags".to_string(), lang: config.default_language.clone(), ..TaxonomyConfig::default() }; let library = Arc::new(RwLock::new(Library::new(0, 0, false))); - let tag = TaxonomyItem::new("Programming", &taxo_config, &Config::default(), vec![], &library.read().unwrap()); + let tag = TaxonomyItem::new("Programming", &taxo_config, &config, vec![], &library.read().unwrap()); let tags = Taxonomy { kind: taxo_config, items: vec![tag] }; let taxonomies = vec![tags.clone()]; @@ -386,9 +387,10 @@ mod tests { #[test] fn can_get_taxonomy_url() { - let taxo_config = TaxonomyConfig { name: "tags".to_string(), ..TaxonomyConfig::default() }; + let config = Config::default(); + let taxo_config = TaxonomyConfig { name: "tags".to_string(), lang: config.default_language.clone(), ..TaxonomyConfig::default() }; let library = Library::new(0, 0, false); - let tag = TaxonomyItem::new("Programming", &taxo_config, &Config::default(), vec![], &library); + let tag = TaxonomyItem::new("Programming", &taxo_config, &config, vec![], &library); let tags = Taxonomy { kind: taxo_config, items: vec![tag] }; let taxonomies = vec![tags.clone()]; diff --git a/docs/content/documentation/templates/pages-sections.md b/docs/content/documentation/templates/pages-sections.md index 0a3525c..c21ed77 100644 --- a/docs/content/documentation/templates/pages-sections.md +++ b/docs/content/documentation/templates/pages-sections.md @@ -53,8 +53,8 @@ assets: Array; ancestors: Array; // The relative path from the `content` directory to the markdown file relative_path: String; -// The language for the page if there is one -lang: 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 translations: Array; ``` @@ -99,8 +99,8 @@ assets: Array; ancestors: Array; // The relative path from the `content` directory to the markdown file relative_path: String; -// The language for the section if there is one -lang: String?; +// The language for the section if there is one. Default to the config `default_language` +lang: String; // Information about all the available languages for that content translations: Array; ``` From 5082e0f15a9a0cc39061c3ac91c96c634bb0b439 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 30 Jan 2019 09:15:46 +0100 Subject: [PATCH 52/82] Render all relevant parent sections on rebuild --- components/library/src/library.rs | 16 ++++++++++------ components/rebuild/src/lib.rs | 9 +++++---- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/components/library/src/library.rs b/components/library/src/library.rs index ad295e8..793e70f 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -331,15 +331,19 @@ impl Library { .collect() } - pub fn find_parent_section>(&self, path: P) -> Option<&Section> { - let page_key = self.paths_to_pages[path.as_ref()]; - for s in self.sections.values() { - if s.pages.contains(&page_key) { - return Some(s); + /// 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); } } - None + parents } /// Only used in tests diff --git a/components/rebuild/src/lib.rs b/components/rebuild/src/lib.rs index 7ef87a1..9ba83cb 100644 --- a/components/rebuild/src/lib.rs +++ b/components/rebuild/src/lib.rs @@ -178,9 +178,9 @@ fn handle_section_editing(site: &mut Site, path: &Path) -> Result<()> { } } -macro_rules! render_parent_section { +macro_rules! render_parent_sections { ($site: expr, $path: expr) => { - if let Some(s) = $site.library.read().unwrap().find_parent_section($path) { + for s in $site.library.read().unwrap().find_parent_sections($path) { $site.render_section(s, false)?; }; }; @@ -204,7 +204,7 @@ fn handle_page_editing(site: &mut Site, path: &Path) -> Result<()> { // Other than the page itself, the summary might be seen // on a paginated list for a blog for example if library.get_page(&pathbuf).unwrap().summary.is_some() { - render_parent_section!(site, path); + render_parent_sections!(site, path); } return site.render_page(&library.get_page(&pathbuf).unwrap()); } @@ -215,6 +215,7 @@ fn handle_page_editing(site: &mut Site, path: &Path) -> Result<()> { &site.library.read().unwrap().get_page(&pathbuf).unwrap().meta, &prev.meta, ); + for change in changes { site.register_tera_global_fns(); @@ -228,7 +229,7 @@ fn handle_page_editing(site: &mut Site, path: &Path) -> Result<()> { site.render_index()?; } PageChangesNeeded::Render => { - render_parent_section!(site, path); + render_parent_sections!(site, path); site.render_page(&site.library.read().unwrap().get_page(&path.to_path_buf()).unwrap())?; } }; From 260c413de406dd176605eb1db3a75d17c5418e64 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 30 Jan 2019 20:01:10 +0100 Subject: [PATCH 53/82] Fix double trailing slash for section permalinks Only happens for sections with lang != default --- components/library/src/content/section.rs | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index 2a7c4df..9994b57 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -92,11 +92,11 @@ impl Section { let (word_count, reading_time) = get_reading_analytics(§ion.raw_content); section.word_count = Some(word_count); section.reading_time = Some(reading_time); - let path = format!("{}/", section.file.components.join("/")); + let path = section.file.components.join("/"); if section.lang != config.default_language { section.path = format!("{}/{}", section.lang, path); } else { - section.path = path; + section.path = format!("{}/", path); } section.components = section .path @@ -318,4 +318,21 @@ Bonjour le monde"# assert_eq!(section.lang, "fr".to_string()); assert_eq!(section.permalink, "http://a-website.com/fr/hello/nested/"); } + + // https://zola.discourse.group/t/rfc-i18n/13/17?u=keats + #[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"), rss: false }); + let content = r#" ++++ ++++ +Bonjour le monde"# + .to_string(); + let res = Section::parse(Path::new("content/_index.fr.md"), &content, &config); + assert!(res.is_ok()); + let section = res.unwrap(); + assert_eq!(section.lang, "fr".to_string()); + assert_eq!(section.permalink, "http://a-website.com/fr/"); + } } From 776bf411236579c394d4e1024d5edf53808a312f Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 30 Jan 2019 20:42:53 +0100 Subject: [PATCH 54/82] Show actual Tera source error --- components/errors/src/lib.rs | 12 +++++++++++- src/console.rs | 3 ++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/components/errors/src/lib.rs b/components/errors/src/lib.rs index 5c2c2da..c8ada64 100755 --- a/components/errors/src/lib.rs +++ b/components/errors/src/lib.rs @@ -29,7 +29,17 @@ unsafe impl Send for Error {} impl StdError for Error { fn source(&self) -> Option<&(dyn StdError + 'static)> { - self.source.as_ref().map(|c| &**c) + let mut source = self.source.as_ref().map(|c| &**c); + if source.is_none() { + match self.kind { + ErrorKind::Tera(ref err) => { + source = err.source() + }, + _ => () + }; + } + + source } } diff --git a/src/console.rs b/src/console.rs index 5151cf8..719f3ad 100644 --- a/src/console.rs +++ b/src/console.rs @@ -8,6 +8,7 @@ use chrono::Duration; use termcolor::{Color, ColorChoice, ColorSpec, StandardStream, WriteColor}; use site::Site; +use errors::Error; lazy_static! { /// Termcolor color choice. @@ -92,7 +93,7 @@ pub fn report_elapsed_time(instant: Instant) { } /// Display an error message and the actual error(s) -pub fn unravel_errors(message: &str, error: &StdError) { +pub fn unravel_errors(message: &str, error: &Error) { if !message.is_empty() { self::error(message); } From 97d11995c51fe25f9129df635956f6e87579d06b Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 31 Jan 2019 19:55:34 +0100 Subject: [PATCH 55/82] Skip render=false sections in sitemap Fix #604 --- CHANGELOG.md | 1 + components/site/src/lib.rs | 1 + components/site/tests/site.rs | 2 ++ 3 files changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7a60d66..cbf56d5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,7 @@ a section - Add an id (`zola-continue-reading`) to the paragraph generated after a summary - Add Dracula syntax highlighting theme - Fix using inline styles in headers +- Fix sections with render=false being shown in sitemap ## 0.5.1 (2018-12-14) diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 8a8e0b7..9445757 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -797,6 +797,7 @@ impl Site { .read().unwrap() .sections_values() .iter() + .filter(|s| s.meta.render) .map(|s| SitemapEntry::new(s.permalink.clone(), None)) .collect::>(); for section in diff --git a/components/site/tests/site.rs b/components/site/tests/site.rs index 7e025e7..c85033a 100644 --- a/components/site/tests/site.rs +++ b/components/site/tests/site.rs @@ -175,6 +175,8 @@ fn can_build_site_without_live_reload() { )); // Drafts are not in the sitemap assert!(!file_contains!(public, "sitemap.xml", "draft")); + // render: false sections are not in the sitemap either + assert!(!file_contains!(public, "sitemap.xml", "posts/2018/")); // robots.txt has been rendered from the template assert!(file_contains!(public, "robots.txt", "User-agent: zola")); From 844be8847274725f80042f55f552ca2caeaf495d Mon Sep 17 00:00:00 2001 From: Matthew Ziter Date: Mon, 4 Feb 2019 15:58:58 -0500 Subject: [PATCH 56/82] Handle csv parsing error to fix issue getzola/zola#588 --- .../templates/src/global_fns/load_data.rs | 39 +++++++++++++++++-- components/utils/test-files/uneven_rows.csv | 4 ++ 2 files changed, 40 insertions(+), 3 deletions(-) create mode 100644 components/utils/test-files/uneven_rows.csv diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 4fec8a9..48b7176 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -183,7 +183,7 @@ impl LoadData { pub fn new(content_path: PathBuf, base_path: PathBuf) -> Self { let client = Arc::new(Mutex::new(Client::builder().build().expect("reqwest client build"))); let result_cache = Arc::new(Mutex::new(HashMap::new())); - Self {content_path, base_path, client, result_cache} + Self { content_path, base_path, client, result_cache } } } @@ -291,7 +291,16 @@ fn load_csv(csv_data: String) -> Result { let mut records_array: Vec = Vec::new(); for result in records { - let record = result.unwrap(); + let record = match result { + Ok(r) => r, + Err(e) => { + return Err(tera::Error::chain( + String::from("Error encountered when parsing csv records"), + e, + )); + } + }; + let mut elements_array: Vec = Vec::new(); for e in record.into_iter() { @@ -310,7 +319,7 @@ fn load_csv(csv_data: String) -> Result { #[cfg(test)] mod tests { - use super::{LoadData, DataSource, OutputFormat}; + use super::{DataSource, LoadData, OutputFormat}; use std::collections::HashMap; use std::path::PathBuf; @@ -455,6 +464,30 @@ 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"), + PathBuf::from("../utils/test-files"), + ); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("uneven_rows.csv").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( diff --git a/components/utils/test-files/uneven_rows.csv b/components/utils/test-files/uneven_rows.csv new file mode 100644 index 0000000..f2f309c --- /dev/null +++ b/components/utils/test-files/uneven_rows.csv @@ -0,0 +1,4 @@ +Number,Title +1,Gutenberg +2,Printing +3,Typewriter,ExtraBadColumn From a42e6dfec46ce61de9ef27f7c107e698b58ace81 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 8 Feb 2019 19:06:01 +0100 Subject: [PATCH 57/82] Fix benches --- Cargo.lock | 286 ++++++++++++++++---------------- components/site/benches/site.rs | 7 +- 2 files changed, 146 insertions(+), 147 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 61483e5..705e048 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,3 +1,5 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. [[package]] name = "MacTypes-sys" version = "2.1.0" @@ -29,7 +31,7 @@ dependencies = [ "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-signal 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-proto 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-resolver 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)", "uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -54,7 +56,7 @@ dependencies = [ "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "tower-service 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-resolver 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -68,7 +70,7 @@ dependencies = [ "actix-net 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "cookie 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", @@ -91,8 +93,8 @@ dependencies = [ "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -103,7 +105,7 @@ dependencies = [ "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "v_htmlescape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -114,7 +116,7 @@ name = "actix_derive" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -204,7 +206,7 @@ name = "backtrace-sys" version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -213,7 +215,7 @@ name = "base64" version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -222,7 +224,7 @@ name = "base64" version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -230,8 +232,8 @@ name = "bincode" version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -265,7 +267,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "byteorder" -version = "1.2.7" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -273,13 +275,13 @@ name = "bytes" version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "cc" -version = "1.0.28" +version = "1.0.29" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -294,7 +296,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -333,8 +335,8 @@ dependencies = [ "errors 0.1.0", "globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", @@ -474,7 +476,7 @@ version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "csv-core 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -500,7 +502,7 @@ version = "0.7.19" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -534,9 +536,9 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rust-stemmers 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", "strum 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "strum_macros 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -600,7 +602,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "encoding_rs" -version = "0.8.14" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -620,7 +622,7 @@ version = "0.1.0" dependencies = [ "image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -638,7 +640,7 @@ name = "failure_derive" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -696,9 +698,9 @@ dependencies = [ "errors 0.1.0", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -728,7 +730,7 @@ dependencies = [ [[package]] name = "fuchsia-cprng" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -824,7 +826,7 @@ name = "h2" version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -861,7 +863,7 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "markup5ever 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -916,7 +918,7 @@ dependencies = [ "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "want 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -964,7 +966,7 @@ name = "image" version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "gif 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "jpeg-decoder 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -974,7 +976,7 @@ dependencies = [ "png 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "safe-transmute 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tiff 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tiff 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -986,7 +988,7 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -1009,12 +1011,8 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "inotify-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1056,7 +1054,7 @@ name = "jpeg-decoder" version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1095,7 +1093,7 @@ version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1112,12 +1110,12 @@ dependencies = [ "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rendering 0.1.0", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "slotmap 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", + "tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -1187,9 +1185,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1238,7 +1236,7 @@ name = "miniz-sys" version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1255,7 +1253,7 @@ name = "miniz_oxide_c_api" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", "crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "miniz_oxide 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1325,7 +1323,7 @@ dependencies = [ "schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "security-framework 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1352,7 +1350,7 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1374,7 +1372,7 @@ dependencies = [ [[package]] name = "notify" -version = "4.0.7" +version = "4.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1395,7 +1393,7 @@ name = "num-derive" version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1455,7 +1453,7 @@ name = "onig_sys" version = "69.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1482,7 +1480,7 @@ name = "openssl-sys" version = "0.9.40" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1546,7 +1544,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pest_meta 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1607,9 +1605,9 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "xml-rs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1631,7 +1629,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "proc-macro2" -version = "0.4.26" +version = "0.4.27" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1656,7 +1654,7 @@ name = "quote" version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1664,7 +1662,7 @@ name = "rand" version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "fuchsia-cprng 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1677,7 +1675,7 @@ version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-cprng 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1694,7 +1692,7 @@ dependencies = [ "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_jitter 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "rand_os 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1741,7 +1739,7 @@ dependencies = [ [[package]] name = "rand_jitter" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1755,7 +1753,7 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-cprng 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1817,7 +1815,7 @@ dependencies = [ "fs_extra 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "library 0.1.0", "site 0.1.0", - "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1874,12 +1872,12 @@ dependencies = [ "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", - "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -1890,7 +1888,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "encoding_rs 0.8.14 (registry+https://github.com/rust-lang/crates.io-index)", + "encoding_rs 0.8.16 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "hyper 0.12.23 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1900,14 +1898,14 @@ dependencies = [ "mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1926,8 +1924,8 @@ name = "rust-stemmers" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1980,7 +1978,7 @@ name = "sass-sys" version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2051,28 +2049,28 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde" -version = "1.0.85" +version = "1.0.87" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde_derive" -version = "1.0.85" +version = "1.0.87" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "serde_json" -version = "1.0.37" +version = "1.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2082,7 +2080,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2129,11 +2127,11 @@ dependencies = [ "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "sass-rs 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "search 0.1.0", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", - "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -2193,7 +2191,7 @@ dependencies = [ "new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2205,7 +2203,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2231,7 +2229,7 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2241,7 +2239,7 @@ name = "syn" version = "0.15.26" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2251,7 +2249,7 @@ name = "synstructure" version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2271,16 +2269,16 @@ dependencies = [ "onig 4.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "plist 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "yaml-rust 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tempfile" -version = "3.0.5" +version = "3.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2304,8 +2302,8 @@ dependencies = [ "library 0.1.0", "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "reqwest 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", @@ -2323,7 +2321,7 @@ dependencies = [ [[package]] name = "tera" -version = "1.0.0-alpha.4" +version = "1.0.0-alpha.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2333,12 +2331,12 @@ dependencies = [ "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "unic-segment 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "v_htmlescape 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "v_htmlescape 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2377,10 +2375,10 @@ dependencies = [ [[package]] name = "tiff" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "num-derive 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2411,10 +2409,10 @@ dependencies = [ "tokio-fs 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-sync 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-sync 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2502,7 +2500,7 @@ dependencies = [ [[package]] name = "tokio-sync" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2540,7 +2538,7 @@ dependencies = [ [[package]] name = "tokio-timer" -version = "0.2.9" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2585,7 +2583,7 @@ name = "toml" version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2601,7 +2599,7 @@ name = "trust-dns-proto" version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2614,7 +2612,7 @@ dependencies = [ "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2624,7 +2622,7 @@ name = "trust-dns-proto" version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2637,7 +2635,7 @@ dependencies = [ "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2805,9 +2803,9 @@ name = "utils" version = "0.1.0" dependencies = [ "errors 0.1.0", - "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", - "tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2832,10 +2830,10 @@ dependencies = [ [[package]] name = "v_escape" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "v_escape_derive 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "v_escape_derive 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2845,18 +2843,18 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "nom 4.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "v_escape_derive" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "nom 4.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2873,11 +2871,11 @@ dependencies = [ [[package]] name = "v_htmlescape" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "v_escape 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "v_escape 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2993,7 +2991,7 @@ name = "ws" version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3042,7 +3040,7 @@ dependencies = [ "errors 0.1.0", "front_matter 0.1.0", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "notify 4.0.7 (registry+https://github.com/rust-lang/crates.io-index)", + "notify 4.0.8 (registry+https://github.com/rust-lang/crates.io-index)", "rebuild 0.1.0", "site 0.1.0", "termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3077,9 +3075,9 @@ dependencies = [ "checksum block-buffer 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a076c298b9ecdb530ed9d967e74a6027d6a7478924520acddcddc24c1c8ab3ab" "checksum build_const 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "39092a32794787acd8525ee150305ff051b0aa6cc2abaf193924f5ab05425f39" "checksum byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "560c32574a12a89ecd91f5e742165893f86e3ab98d21f8ea548658eb9eef5f40" -"checksum byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "94f88df23a25417badc922ab0f5716cc1330e87f71ddd9203b3a3ccd9cedf75d" +"checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb" "checksum bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)" = "40ade3d27603c2cb345eb0912aec461a6dec7e06a4ae48589904e808335c7afa" -"checksum cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4a8b715cb4597106ea87c7c84b2f1d452c7492033765df7f32651e66fcf749" +"checksum cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)" = "4390a3b5f4f6bce9c1d0c00128379df433e53777fdd30e92f16a529332baec4e" "checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4" "checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878" "checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e" @@ -3114,7 +3112,7 @@ dependencies = [ "checksum encoding-index-singlebyte 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3351d5acffb224af9ca265f435b859c7c01537c0849754d3db3fdf2bfe2ae84a" "checksum encoding-index-tradchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fd0e20d5688ce3cab59eb3ef3a2083a5c77bf496cb798dc6fcdb75f323890c18" "checksum encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569" -"checksum encoding_rs 0.8.14 (registry+https://github.com/rust-lang/crates.io-index)" = "a69d152eaa438a291636c1971b0a370212165ca8a75759eb66818c5ce9b538f7" +"checksum encoding_rs 0.8.16 (registry+https://github.com/rust-lang/crates.io-index)" = "0535f350c60aac0b87ccf28319abc749391e912192255b0c00a2c12c6917bd73" "checksum error-chain 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6930e04918388a9a2e41d518c25cf679ccafe26733fb4127dbf21993f2575d46" "checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2" "checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1" @@ -3127,7 +3125,7 @@ dependencies = [ "checksum fs_extra 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5f2a4a2034423744d2cc7ca2068453168dcdb82c438419e639a26bd87839c674" "checksum fsevent 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)" = "c4bbbf71584aeed076100b5665ac14e3d85eeb31fdbb45fbd41ef9a682b5ec05" "checksum fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "1a772d36c338d07a032d5375a36f15f9a7043bf0cb8ce7cee658e037c6032874" -"checksum fuchsia-cprng 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "81f7f8eb465745ea9b02e2704612a9946a59fa40572086c6fd49d6ddcf30bf31" +"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" "checksum futf 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "7c9c1ce3fa9336301af935ab852c437817d14cd33690446569392e65170aac3b" @@ -3193,7 +3191,7 @@ dependencies = [ "checksum nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17" "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" "checksum nom 4.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b30adc557058ce00c9d0d7cb3c6e0b5bc6f36e2e2eabe74b0ba726d194abd588" -"checksum notify 4.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "c968cf37cf949114b00d51b0b23536d1c3a4a3963767cf4c969c65a6af78dc7d" +"checksum notify 4.0.8 (registry+https://github.com/rust-lang/crates.io-index)" = "c9b605e417814e88bb051c88a84f83655d6ad4fa32fc36d9a96296d86087692d" "checksum num-derive 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d9fe8fcafd1b86a37ce8a1cfa15ae504817e0c8c2e7ad42767371461ac1d316d" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" "checksum num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "af3fdbbc3291a5464dc57b03860ec37ca6bf915ed6ee385e7c6c052c422b2124" @@ -3221,7 +3219,7 @@ dependencies = [ "checksum plist 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0c7316832d9ac5da02786bdc89a3faf0ca07070212b388766e969078fd593edc" "checksum png 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9adebf7fb91ccf5eac9da1a8e00e83cb8ae882c3e8d8e4ad59da73cb8c82a2c9" "checksum precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" -"checksum proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)" = "38fddd23d98b2144d197c0eca5705632d4fe2667d14a6be5df8934f8d74f1978" +"checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915" "checksum pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "eef52fac62d0ea7b9b4dc7da092aa64ea7ec3d90af6679422d3d7e0e14b6ee15" "checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0" "checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1" @@ -3233,7 +3231,7 @@ dependencies = [ "checksum rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0" "checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" "checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" -"checksum rand_jitter 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "29fe7b8bc348249f3b1bbb9ab8baa6fa3419196ecfbf213408bca1b2494710de" +"checksum rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b9ea758282efe12823e0d952ddb269d2e1897227e464919a554f2a03ef1b832" "checksum rand_os 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b7c690732391ae0abafced5015ffb53656abfaec61b342290e5eb56b286a679d" "checksum rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "086bd09a33c7044e56bb44d5bdde5a60e7f119a9e95b0775f545de759a32fe05" "checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" @@ -3263,9 +3261,9 @@ dependencies = [ "checksum security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3d6696852716b589dff9e886ff83778bb635150168e83afa8ac6b8a78cb82abc" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -"checksum serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)" = "534b8b91a95e0f71bca3ed5824752d558da048d4248c91af873b63bd60519752" -"checksum serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)" = "a915306b0f1ac5607797697148c223bedeaa36bcc2e28a01441cd638cc6567b4" -"checksum serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)" = "4b90a9fbe1211e57d3e1c15670f1cb00802988fb23a1a4aad7a2b63544f1920e" +"checksum serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)" = "2e20fde37801e83c891a2dc4ebd3b81f0da4d1fb67a9e0a2a3b921e2536a58ee" +"checksum serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)" = "633e97856567e518b59ffb2ad7c7a4fd4c5d91d9c7f32dd38a27b2bf7e8114ea" +"checksum serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)" = "27dce848e7467aa0e2fcaf0a413641499c0b745452aaca1194d24dedde9e13c9" "checksum serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d48f9f99cd749a2de71d29da5f948de7f2764cc5a9d7f3c97e3514d4ee6eabf2" "checksum sha-1 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "51b9d1f3b5de8a167ab06834a7c883bd197f2191e1dda1a22d9ccfeedbf9aded" "checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" @@ -3287,14 +3285,14 @@ dependencies = [ "checksum syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)" = "f92e629aa1d9c827b2bb8297046c1ccffc57c99b947a680d3ccff1f136a3bee9" "checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" "checksum syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e02dd9df97a68a2d005ace28ff24c610abfc3ce17afcfdb22a077645dabb599a" -"checksum tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "7e91405c14320e5c79b3d148e1c86f40749a36e490642202a31689cb1a3452b2" +"checksum tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "37daa55a7240c4931c84559f03b3cad7d19535840d1c4a0cc4e9b2fb0dcf70ff" "checksum tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "707feda9f2582d5d680d733e38755547a3e8fb471e7ba11452ecfd9ce93a5d3b" -"checksum tera 1.0.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)" = "0fbadfbcaeb99c662f4855b43b023cb9ad98c62007263c64a5ffe78d4bf0a3d2" +"checksum tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)" = "31ef8198415b2431dfd105f99b377a5b53592b793e80db87dcdaee15c5befd81" "checksum termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4096add70612622289f2fdcdbd5086dc81c1e2675e6ae58d6c4f62a16c6d7f2f" "checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096" "checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6" "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" -"checksum tiff 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a2cc6c4fd13cb1cfd20abdb196e794ceccb29371855b7e7f575945f920a5b3c2" +"checksum tiff 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1e4834f28a0330cb9f3f2c87d2649dca723cb33802e2bdcf18da32759fbec7ce" "checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" "checksum tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "e0500b88064f08bebddd0c0bed39e19f5c567a5f30975bee52b0c0d3e2eeb38c" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" @@ -3304,10 +3302,10 @@ dependencies = [ "checksum tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "b53aeb9d3f5ccf2ebb29e19788f96987fa1355f8fe45ea193928eaaaf3ae820f" "checksum tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "afbcdb0f0d2a1e4c440af82d7bbf0bf91a8a8c0575bcd20c05d15be7e9d3a02f" "checksum tokio-signal 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "dd6dc5276ea05ce379a16de90083ec80836440d5ef8a6a39545a3207373b8296" -"checksum tokio-sync 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0d65a58e2215c13179e6eeb2cf00511e0aee455cad40a9bfaef15a2fd8aab1c7" +"checksum tokio-sync 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3742b64166c1ee9121f1921aea5a726098458926a6b732d906ef23b1f3ef6f4f" "checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119" "checksum tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "c3fd86cb15547d02daa2b21aadaf4e37dee3368df38a526178a5afa3c034d2fb" -"checksum tokio-timer 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)" = "21c04a314a1f69f73c0227beba6250e06cdc1e9a62e7eff912bf54a59b6d1b94" +"checksum tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2910970404ba6fa78c5539126a9ae2045d62e3713041e447f695f41405a120c6" "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92" "checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" @@ -3338,11 +3336,11 @@ dependencies = [ "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" "checksum uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0238db0c5b605dd1cf51de0f21766f97fba2645897024461d6a00c036819a768" "checksum v_escape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c8b50688edb86f4c092a1a9fe8bda004b0faa3197100897653809e97e09a2814" -"checksum v_escape 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6177565a30b7091835dd4a33a81fc4f064e671729a6b7cb964675b2a0bb295a1" +"checksum v_escape 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "38187e1fdbf09d7dcb6fd3dfa7fcc14a0d77d9f09be411431faec832a5476d75" "checksum v_escape_derive 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7cd994c63b487fef7aad31e5394ec04b9e24de7b32ea5251c9fb499cd2cbf44c" -"checksum v_escape_derive 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ebc450df00e6b12b42f963f620156611891dfc6475533d9b7d5a607a527a403d" +"checksum v_escape_derive 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4592e378ab72caf41ee682531446526c5e16bb1aaa4f7cd673da893ade308b79" "checksum v_htmlescape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "020cae817dc82693aa523f01087b291b1c7a9ac8cea5c12297963f21769fb27f" -"checksum v_htmlescape 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "168b0208dc58f378f35a743f39c93f199dd981be5ed24615f2b467d55f37e959" +"checksum v_htmlescape 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "72030ff9467f2e782051667b315875a117b9cef470d0796d5482c7f7da84524b" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" "checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a" "checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" diff --git a/components/site/benches/site.rs b/components/site/benches/site.rs index 0c507c1..c65badb 100644 --- a/components/site/benches/site.rs +++ b/components/site/benches/site.rs @@ -43,7 +43,7 @@ fn bench_render_rss_feed(b: &mut test::Bencher) { let tmp_dir = tempdir().expect("create temp dir"); let public = &tmp_dir.path().join("public"); site.set_output_path(&public); - b.iter(|| site.render_rss_feed(site.library.pages_values(), None).unwrap()); + b.iter(|| site.render_rss_feed(site.library.read().unwrap().pages_values(), None).unwrap()); } #[bench] @@ -61,8 +61,9 @@ fn bench_render_paginated(b: &mut test::Bencher) { let tmp_dir = tempdir().expect("create temp dir"); let public = &tmp_dir.path().join("public"); site.set_output_path(&public); - let section = site.library.sections_values()[0]; - let paginator = Paginator::from_section(§ion, &site.library); + let library = site.library.read().unwrap(); + let section = library.sections_values()[0]; + let paginator = Paginator::from_section(§ion, &library); b.iter(|| site.render_paginated(public, &paginator)); } From 9bc675f2a77b417b30f15d136ec6d816b2937c1a Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 9 Feb 2019 19:54:46 +0100 Subject: [PATCH 58/82] Fix colocated dates + rustfmt Closes #607 --- Cargo.lock | 13 +- components/errors/src/lib.rs | 7 +- components/front_matter/src/lib.rs | 12 +- components/imageproc/src/lib.rs | 2 +- components/library/src/content/page.rs | 54 +++++- components/library/src/content/section.rs | 12 +- components/library/src/library.rs | 2 +- components/library/src/pagination/mod.rs | 2 +- components/library/src/taxonomies/mod.rs | 72 ++++++-- components/rebuild/src/lib.rs | 20 ++- components/rendering/src/markdown.rs | 154 ++++++++++-------- components/rendering/src/shortcode.rs | 5 +- components/site/src/lib.rs | 74 ++++++--- components/site/tests/site.rs | 5 +- components/site/tests/site_i18n.rs | 4 +- .../templates/src/global_fns/load_data.rs | 4 +- components/templates/src/global_fns/mod.rs | 60 +++---- components/templates/src/lib.rs | 2 +- components/utils/src/fs.rs | 11 +- components/utils/src/vec.rs | 4 +- src/cmd/serve.rs | 8 +- src/console.rs | 6 +- 22 files changed, 326 insertions(+), 207 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 705e048..c2303b1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -229,9 +229,10 @@ dependencies = [ [[package]] name = "bincode" -version = "1.0.1" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ + "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1372,7 +1373,7 @@ dependencies = [ [[package]] name = "notify" -version = "4.0.8" +version = "4.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2260,7 +2261,7 @@ name = "syntect" version = "3.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bincode 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bincode 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "flate2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3040,7 +3041,7 @@ dependencies = [ "errors 0.1.0", "front_matter 0.1.0", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "notify 4.0.8 (registry+https://github.com/rust-lang/crates.io-index)", + "notify 4.0.9 (registry+https://github.com/rust-lang/crates.io-index)", "rebuild 0.1.0", "site 0.1.0", "termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3069,7 +3070,7 @@ dependencies = [ "checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6" "checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e" "checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643" -"checksum bincode 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9f2fb9e29e72fd6bc12071533d5dc7664cb01480c59406f656d7ac25c7bd8ff7" +"checksum bincode 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "58470ad6460f0b0e89b0df5f17b8bd77ebae26af69dca0bd9ddc8b9e38abb2ff" "checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d" "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" "checksum block-buffer 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a076c298b9ecdb530ed9d967e74a6027d6a7478924520acddcddc24c1c8ab3ab" @@ -3191,7 +3192,7 @@ dependencies = [ "checksum nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17" "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" "checksum nom 4.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b30adc557058ce00c9d0d7cb3c6e0b5bc6f36e2e2eabe74b0ba726d194abd588" -"checksum notify 4.0.8 (registry+https://github.com/rust-lang/crates.io-index)" = "c9b605e417814e88bb051c88a84f83655d6ad4fa32fc36d9a96296d86087692d" +"checksum notify 4.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "9cc7ed2bd4b7edad3ee93b659c38e53dabb619f7274e127a0fab054ad2bb998d" "checksum num-derive 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d9fe8fcafd1b86a37ce8a1cfa15ae504817e0c8c2e7ad42767371461ac1d316d" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" "checksum num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "af3fdbbc3291a5464dc57b03860ec37ca6bf915ed6ee385e7c6c052c422b2124" diff --git a/components/errors/src/lib.rs b/components/errors/src/lib.rs index c8ada64..e9a271f 100755 --- a/components/errors/src/lib.rs +++ b/components/errors/src/lib.rs @@ -32,10 +32,8 @@ impl StdError for Error { let mut source = self.source.as_ref().map(|c| &**c); if source.is_none() { match self.kind { - ErrorKind::Tera(ref err) => { - source = err.source() - }, - _ => () + ErrorKind::Tera(ref err) => source = err.source(), + _ => (), }; } @@ -68,7 +66,6 @@ impl Error { } } - impl From<&str> for Error { fn from(e: &str) -> Self { Self::msg(e) diff --git a/components/front_matter/src/lib.rs b/components/front_matter/src/lib.rs index c0ca8b7..204582c 100644 --- a/components/front_matter/src/lib.rs +++ b/components/front_matter/src/lib.rs @@ -12,7 +12,7 @@ extern crate toml; extern crate errors; extern crate utils; -use errors::{Result, Error}; +use errors::{Error, Result}; use regex::Regex; use std::path::Path; @@ -72,7 +72,10 @@ pub fn split_section_content( ) -> Result<(SectionFrontMatter, String)> { let (front_matter, content) = split_content(file_path, content)?; let meta = SectionFrontMatter::parse(&front_matter).map_err(|e| { - Error::chain(format!("Error when parsing front matter of section `{}`", file_path.to_string_lossy()), e) + Error::chain( + format!("Error when parsing front matter of section `{}`", file_path.to_string_lossy()), + e, + ) })?; Ok((meta, content)) } @@ -82,7 +85,10 @@ pub fn split_section_content( pub fn split_page_content(file_path: &Path, content: &str) -> Result<(PageFrontMatter, String)> { let (front_matter, content) = split_content(file_path, content)?; let meta = PageFrontMatter::parse(&front_matter).map_err(|e| { - Error::chain(format!("Error when parsing front matter of page `{}`", file_path.to_string_lossy()), e) + Error::chain( + format!("Error when parsing front matter of page `{}`", file_path.to_string_lossy()), + e, + ) })?; Ok((meta, content)) } diff --git a/components/imageproc/src/lib.rs b/components/imageproc/src/lib.rs index 4ebdbea..91d1ec3 100644 --- a/components/imageproc/src/lib.rs +++ b/components/imageproc/src/lib.rs @@ -20,7 +20,7 @@ use image::{FilterType, GenericImageView}; use rayon::prelude::*; use regex::Regex; -use errors::{Result, Error}; +use errors::{Error, Result}; use utils::fs as ufs; static RESIZED_SUBDIR: &'static str = "processed_images"; diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 420e414..c344d50 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -8,7 +8,7 @@ use slug::slugify; use tera::{Context as TeraContext, Tera}; use config::Config; -use errors::{Result, Error}; +use errors::{Error, Result}; use front_matter::{split_page_content, InsertAnchor, PageFrontMatter}; use library::Library; use rendering::{render_content, Header, RenderContext}; @@ -126,7 +126,16 @@ impl Page { page.reading_time = Some(reading_time); let mut slug_from_dated_filename = None; - if let Some(ref caps) = RFC3339_DATE.captures(&page.file.name.replace(".md", "")) { + let file_path = if page.file.name == "index" { + if let Some(parent) = page.file.path.parent() { + parent.file_name().unwrap().to_str().unwrap().to_string() + } else { + page.file.name.replace(".md", "") + } + } else { + page.file.name.replace(".md", "") + }; + if let Some(ref caps) = RFC3339_DATE.captures(&file_path) { slug_from_dated_filename = Some(caps.name("slug").unwrap().as_str().to_string()); if page.meta.date.is_none() { page.meta.date = Some(caps.name("datetime").unwrap().as_str().to_string()); @@ -139,7 +148,11 @@ impl Page { slug.trim().to_string() } else if page.file.name == "index" { if let Some(parent) = page.file.path.parent() { - slugify(parent.file_name().unwrap().to_str().unwrap()) + if let Some(slug) = slug_from_dated_filename { + slugify(&slug) + } else { + slugify(parent.file_name().unwrap().to_str().unwrap()) + } } else { slugify(&page.file.name) } @@ -233,8 +246,9 @@ impl Page { context.tera_context.insert("page", &SerializingPage::from_page_basic(self, None)); - let res = render_content(&self.raw_content, &context) - .map_err(|e| Error::chain(format!("Failed to render content of {}", self.file.path.display()), e))?; + let res = render_content(&self.raw_content, &context).map_err(|e| { + 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.content = res.body; @@ -257,8 +271,9 @@ impl Page { context.insert("page", &self.to_serialized(library)); context.insert("lang", &self.lang); - render_template(&tpl_name, tera, context, &config.theme) - .map_err(|e| Error::chain(format!("Failed to render page '{}'", self.file.path.display()), e)) + render_template(&tpl_name, tera, context, &config.theme).map_err(|e| { + Error::chain(format!("Failed to render page '{}'", self.file.path.display()), e) + }) } /// Creates a vectors of asset URLs. @@ -499,6 +514,31 @@ Hello world assert_eq!(page.permalink, "http://a-website.com/posts/hey/"); } + // https://github.com/getzola/zola/issues/607 + #[test] + fn page_with_assets_and_date_in_folder_name() { + let tmp_dir = tempdir().expect("create temp dir"); + let path = tmp_dir.path(); + create_dir(&path.join("content")).expect("create content temp dir"); + create_dir(&path.join("content").join("posts")).expect("create posts temp dir"); + let nested_path = path.join("content").join("posts").join("2013-06-02_with-assets"); + create_dir(&nested_path).expect("create nested temp dir"); + let mut f = File::create(nested_path.join("index.md")).unwrap(); + f.write_all(b"+++\n\n+++\n").unwrap(); + File::create(nested_path.join("example.js")).unwrap(); + File::create(nested_path.join("graph.jpg")).unwrap(); + File::create(nested_path.join("fail.png")).unwrap(); + + let res = Page::from_file(nested_path.join("index.md").as_path(), &Config::default()); + assert!(res.is_ok()); + let page = res.unwrap(); + assert_eq!(page.file.parent, path.join("content").join("posts")); + assert_eq!(page.slug, "with-assets"); + assert_eq!(page.meta.date, Some("2013-06-02".to_string())); + assert_eq!(page.assets.len(), 3); + assert_eq!(page.permalink, "http://a-website.com/posts/with-assets/"); + } + #[test] fn page_with_ignored_assets_filters_out_correct_files() { let tmp_dir = tempdir().expect("create temp dir"); diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index 9994b57..3da005e 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -5,7 +5,7 @@ use slotmap::Key; use tera::{Context as TeraContext, Tera}; use config::Config; -use errors::{Result, Error}; +use errors::{Error, Result}; use front_matter::{split_section_content, SectionFrontMatter}; use rendering::{render_content, Header, RenderContext}; use utils::fs::{find_related_assets, read_file}; @@ -171,8 +171,9 @@ impl Section { context.tera_context.insert("section", &SerializingSection::from_section_basic(self, None)); - let res = render_content(&self.raw_content, &context) - .map_err(|e| Error::chain(format!("Failed to render content of {}", self.file.path.display()), e))?; + let res = render_content(&self.raw_content, &context).map_err(|e| { + Error::chain(format!("Failed to render content of {}", self.file.path.display()), e) + })?; self.content = res.body; self.toc = res.toc; Ok(()) @@ -189,8 +190,9 @@ impl Section { context.insert("section", &self.to_serialized(library)); context.insert("lang", &self.lang); - render_template(tpl_name, tera, context, &config.theme) - .map_err(|e| Error::chain(format!("Failed to render section '{}'", self.file.path.display()), e)) + render_template(tpl_name, tera, context, &config.theme).map_err(|e| { + Error::chain(format!("Failed to render section '{}'", self.file.path.display()), e) + }) } /// Is this the index section? diff --git a/components/library/src/library.rs b/components/library/src/library.rs index 793e70f..c724a2e 100644 --- a/components/library/src/library.rs +++ b/components/library/src/library.rs @@ -5,9 +5,9 @@ use slotmap::{DenseSlotMap, Key}; use front_matter::SortBy; +use config::Config; use content::{Page, Section}; use sorting::{find_siblings, sort_pages_by_date, sort_pages_by_weight}; -use config::Config; /// Houses everything about pages and sections /// Think of it as a database where each page and section has an id (Key here) diff --git a/components/library/src/pagination/mod.rs b/components/library/src/pagination/mod.rs index 6f47cbe..fd7f57f 100644 --- a/components/library/src/pagination/mod.rs +++ b/components/library/src/pagination/mod.rs @@ -4,7 +4,7 @@ use slotmap::Key; use tera::{to_value, Context, Tera, Value}; use config::Config; -use errors::{Result, Error}; +use errors::{Error, Result}; use utils::templates::render_template; use content::{Section, SerializingPage, SerializingSection}; diff --git a/components/library/src/taxonomies/mod.rs b/components/library/src/taxonomies/mod.rs index 0756b53..a82c3e5 100644 --- a/components/library/src/taxonomies/mod.rs +++ b/components/library/src/taxonomies/mod.rs @@ -5,7 +5,7 @@ use slug::slugify; use tera::{Context, Tera}; use config::{Config, Taxonomy as TaxonomyConfig}; -use errors::{Result, Error}; +use errors::{Error, Result}; use utils::templates::render_template; use content::SerializingPage; @@ -48,7 +48,13 @@ pub struct TaxonomyItem { } impl TaxonomyItem { - pub fn new(name: &str, taxonomy: &TaxonomyConfig, config: &Config, keys: Vec, library: &Library) -> Self { + pub fn new( + name: &str, + taxonomy: &TaxonomyConfig, + config: &Config, + keys: Vec, + library: &Library, + ) -> Self { // Taxonomy are almost always used for blogs so we filter by dates // and it's not like we can sort things across sections by anything other // than dates @@ -145,7 +151,9 @@ impl Taxonomy { context.insert("current_path", &format!("/{}/{}", self.kind.name, item.slug)); render_template(&format!("{}/single.html", self.kind.name), tera, context, &config.theme) - .map_err(|e| Error::chain(format!("Failed to render single term {} page.", self.kind.name), e)) + .map_err(|e| { + Error::chain(format!("Failed to render single term {} page.", self.kind.name), e) + }) } pub fn render_all_terms( @@ -164,7 +172,9 @@ impl Taxonomy { context.insert("current_path", &self.kind.name); render_template(&format!("{}/list.html", self.kind.name), tera, context, &config.theme) - .map_err(|e| Error::chain(format!("Failed to render a list of {} page.", self.kind.name), e)) + .map_err(|e| { + Error::chain(format!("Failed to render a list of {} page.", self.kind.name), e) + }) } pub fn to_serialized<'a>(&'a self, library: &'a Library) -> SerializedTaxonomy<'a> { @@ -232,7 +242,7 @@ mod tests { use super::*; use std::collections::HashMap; - use config::{Config, Taxonomy as TaxonomyConfig, Language}; + use config::{Config, Language, Taxonomy as TaxonomyConfig}; use content::Page; use library::Library; @@ -242,9 +252,21 @@ mod tests { let mut library = Library::new(2, 0, false); 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: "authors".to_string(), lang: config.default_language.clone(), ..TaxonomyConfig::default() }, + 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: "authors".to_string(), + lang: config.default_language.clone(), + ..TaxonomyConfig::default() + }, ]; let mut page1 = Page::default(); @@ -324,8 +346,11 @@ mod tests { let mut config = Config::default(); let mut library = Library::new(2, 0, false); - config.taxonomies = - vec![TaxonomyConfig { name: "authors".to_string(), lang: config.default_language.clone(), ..TaxonomyConfig::default() }]; + config.taxonomies = vec![TaxonomyConfig { + name: "authors".to_string(), + lang: config.default_language.clone(), + ..TaxonomyConfig::default() + }]; let mut page1 = Page::default(); let mut taxo_page1 = HashMap::new(); taxo_page1.insert("tags".to_string(), vec!["rust".to_string(), "db".to_string()]); @@ -346,13 +371,25 @@ mod tests { #[test] fn can_make_taxonomies_in_multiple_languages() { let mut config = Config::default(); - config.languages.push(Language {rss: false, code: "fr".to_string()}); + config.languages.push(Language { rss: false, code: "fr".to_string() }); 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: "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() + }, ]; let mut page1 = Page::default(); @@ -410,7 +447,10 @@ mod tests { assert_eq!(authors.items[0].name, "Vincent Prouillet"); assert_eq!(authors.items[0].slug, "vincent-prouillet"); - assert_eq!(authors.items[0].permalink, "http://a-website.com/fr/auteurs/vincent-prouillet/"); + assert_eq!( + authors.items[0].permalink, + "http://a-website.com/fr/auteurs/vincent-prouillet/" + ); assert_eq!(authors.items[0].pages.len(), 1); assert_eq!(categories.items[0].name, "Other"); @@ -430,7 +470,7 @@ mod tests { #[test] fn errors_on_taxonomy_of_different_language() { let mut config = Config::default(); - config.languages.push(Language {rss: false, code: "fr".to_string()}); + config.languages.push(Language { rss: false, code: "fr".to_string() }); let mut library = Library::new(2, 0, false); config.taxonomies = diff --git a/components/rebuild/src/lib.rs b/components/rebuild/src/lib.rs index 9ba83cb..ca4250b 100644 --- a/components/rebuild/src/lib.rs +++ b/components/rebuild/src/lib.rs @@ -155,12 +155,14 @@ fn handle_section_editing(site: &mut Site, path: &Path) -> Result<()> { SectionChangesNeeded::Sort => { site.register_tera_global_fns(); } - SectionChangesNeeded::Render => { - site.render_section(&site.library.read().unwrap().get_section(&pathbuf).unwrap(), false)? - } - SectionChangesNeeded::RenderWithPages => { - site.render_section(&site.library.read().unwrap().get_section(&pathbuf).unwrap(), true)? - } + SectionChangesNeeded::Render => site.render_section( + &site.library.read().unwrap().get_section(&pathbuf).unwrap(), + false, + )?, + SectionChangesNeeded::RenderWithPages => site.render_section( + &site.library.read().unwrap().get_section(&pathbuf).unwrap(), + true, + )?, // not a common enough operation to make it worth optimizing SectionChangesNeeded::Delete | SectionChangesNeeded::Transparent => { site.build()?; @@ -182,7 +184,7 @@ macro_rules! render_parent_sections { ($site: expr, $path: expr) => { for s in $site.library.read().unwrap().find_parent_sections($path) { $site.render_section(s, false)?; - }; + } }; } @@ -230,7 +232,9 @@ fn handle_page_editing(site: &mut Site, path: &Path) -> Result<()> { } PageChangesNeeded::Render => { render_parent_sections!(site, path); - site.render_page(&site.library.read().unwrap().get_page(&path.to_path_buf()).unwrap())?; + site.render_page( + &site.library.read().unwrap().get_page(&path.to_path_buf()).unwrap(), + )?; } }; } diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index 3c6f20b..9bbb26a 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -4,7 +4,7 @@ use pulldown_cmark as cmark; use slug::slugify; use syntect::easy::HighlightLines; use syntect::html::{ - IncludeBackground, start_highlighted_html_snippet, styled_line_to_highlighted_html, + start_highlighted_html_snippet, styled_line_to_highlighted_html, IncludeBackground, }; use config::highlighting::{get_highlighter, SYNTAX_SET, THEME_SET}; @@ -12,13 +12,14 @@ use context::RenderContext; use errors::{Error, Result}; use front_matter::InsertAnchor; use link_checker::check_url; -use table_of_contents::{Header, make_table_of_contents}; +use table_of_contents::{make_table_of_contents, Header}; use utils::site::resolve_internal_link; use utils::vec::InsertMany; use self::cmark::{Event, Options, Parser, Tag}; -const CONTINUE_READING: &str = "

\n"; +const CONTINUE_READING: &str = + "

\n"; const ANCHOR_LINK_TEMPLATE: &str = "anchor-link.html"; #[derive(Debug)] @@ -88,9 +89,7 @@ fn fix_link(link: &str, context: &RenderContext) -> Result { if res.is_valid() { link.to_string() } else { - return Err( - format!("Link {} is not valid: {}", link, res.message()).into(), - ); + return Err(format!("Link {} is not valid: {}", link, res.message()).into()); } } else { link.to_string() @@ -148,78 +147,84 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { - // if we are in the middle of a code block - if let Some((ref mut highlighter, in_extra)) = highlighter { - let highlighted = if in_extra { - if let Some(ref extra) = context.config.extra_syntax_set { - highlighter.highlight(&text, &extra) + let mut events = Parser::new_ext(content, opts) + .map(|event| { + match event { + Event::Text(text) => { + // if we are in the middle of a code block + if let Some((ref mut highlighter, in_extra)) = highlighter { + let highlighted = if in_extra { + if let Some(ref extra) = context.config.extra_syntax_set { + highlighter.highlight(&text, &extra) + } else { + unreachable!( + "Got a highlighter from extra syntaxes but no extra?" + ); + } } else { - unreachable!("Got a highlighter from extra syntaxes but no extra?"); - } - } else { - highlighter.highlight(&text, &SYNTAX_SET) - }; - //let highlighted = &highlighter.highlight(&text, ss); - let html = styled_line_to_highlighted_html(&highlighted, background); - return Event::Html(Owned(html)); - } + highlighter.highlight(&text, &SYNTAX_SET) + }; + //let highlighted = &highlighter.highlight(&text, ss); + let html = styled_line_to_highlighted_html(&highlighted, background); + return Event::Html(Owned(html)); + } - // Business as usual - Event::Text(text) - } - Event::Start(Tag::CodeBlock(ref info)) => { - if !context.config.highlight_code { - return Event::Html(Borrowed("
"));
+                        // Business as usual
+                        Event::Text(text)
                     }
+                    Event::Start(Tag::CodeBlock(ref info)) => {
+                        if !context.config.highlight_code {
+                            return Event::Html(Borrowed("
"));
+                        }
 
-                    let theme = &THEME_SET.themes[&context.config.highlight_theme];
-                    highlighter = Some(get_highlighter(info, &context.config));
-                    // 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);
-                    background = IncludeBackground::IfDifferent(color);
-                    let snippet = start_highlighted_html_snippet(theme);
-                    Event::Html(Owned(snippet.0))
-                }
-                Event::End(Tag::CodeBlock(_)) => {
-                    if !context.config.highlight_code {
-                        return Event::Html(Borrowed("
\n")); + let theme = &THEME_SET.themes[&context.config.highlight_theme]; + highlighter = Some(get_highlighter(info, &context.config)); + // 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); + background = IncludeBackground::IfDifferent(color); + let snippet = start_highlighted_html_snippet(theme); + Event::Html(Owned(snippet.0)) } - // reset highlight and close the code block - highlighter = None; - Event::Html(Borrowed("
")) - } - Event::Start(Tag::Image(src, title)) => { - if is_colocated_asset_link(&src) { - return Event::Start(Tag::Image( - Owned(format!("{}{}", context.current_page_permalink, src)), - title, - )); + Event::End(Tag::CodeBlock(_)) => { + if !context.config.highlight_code { + return Event::Html(Borrowed("\n")); + } + // reset highlight and close the code block + highlighter = None; + Event::Html(Borrowed("")) } - - Event::Start(Tag::Image(src, title)) - } - Event::Start(Tag::Link(link, title)) => { - let fixed_link = match fix_link(&link, context) { - Ok(fixed_link) => fixed_link, - Err(err) => { - error = Some(err); - return Event::Html(Borrowed("")) + Event::Start(Tag::Image(src, title)) => { + if is_colocated_asset_link(&src) { + return Event::Start(Tag::Image( + Owned(format!("{}{}", context.current_page_permalink, src)), + title, + )); } - }; - Event::Start(Tag::Link(Owned(fixed_link), title)) - } - Event::Html(ref markup) if markup.contains("") => { - has_summary = true; - Event::Html(Borrowed(CONTINUE_READING)) + Event::Start(Tag::Image(src, title)) + } + Event::Start(Tag::Link(link, title)) => { + let fixed_link = match fix_link(&link, context) { + Ok(fixed_link) => fixed_link, + Err(err) => { + error = Some(err); + return Event::Html(Borrowed("")); + } + }; + + Event::Start(Tag::Link(Owned(fixed_link), title)) + } + Event::Html(ref markup) if markup.contains("") => { + has_summary = true; + Event::Html(Borrowed(CONTINUE_READING)) + } + _ => event, } - _ => event, - } - }).collect::>(); // We need to collect the events to make a second pass + }) + .collect::>(); // We need to collect the events to make a second pass let header_refs = get_header_refs(&events); @@ -228,7 +233,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result Result Result<()> { if self.output_path.exists() { // Delete current `public` directory so we can start fresh - remove_dir_all(&self.output_path).map_err(|e| Error::chain("Couldn't delete output directory", e))?; + remove_dir_all(&self.output_path) + .map_err(|e| Error::chain("Couldn't delete output directory", e))?; } Ok(()) @@ -544,12 +555,8 @@ impl Site { if !lang.rss { continue; } - let pages = library - .pages_values() - .iter() - .filter(|p| p.lang == lang.code) - .map(|p| *p) - .collect(); + let pages = + library.pages_values().iter().filter(|p| p.lang == lang.code).map(|p| *p).collect(); self.render_rss_feed(pages, Some(&PathBuf::from(lang.code.clone())))?; } @@ -735,7 +742,8 @@ impl Site { } else { self.output_path.join(&taxonomy.kind.name) }; - let list_output = taxonomy.render_all_terms(&self.tera, &self.config, &self.library.read().unwrap())?; + let list_output = + taxonomy.render_all_terms(&self.tera, &self.config, &self.library.read().unwrap())?; create_directory(&output_path)?; create_file(&output_path.join("index.html"), &self.inject_livereload(list_output))?; let library = self.library.read().unwrap(); @@ -794,14 +802,20 @@ impl Site { let mut sections = self .library - .read().unwrap() + .read() + .unwrap() .sections_values() .iter() .filter(|s| s.meta.render) .map(|s| SitemapEntry::new(s.permalink.clone(), None)) .collect::>(); - for section in - self.library.read().unwrap().sections_values().iter().filter(|s| s.meta.paginate_by.is_some()) + for section in self + .library + .read() + .unwrap() + .sections_values() + .iter() + .filter(|s| s.meta.paginate_by.is_some()) { let number_pagers = (section.pages.len() as f64 / section.meta.paginate_by.unwrap() as f64) @@ -971,9 +985,13 @@ impl Site { } if section.meta.is_paginated() { - self.render_paginated(&output_path, &Paginator::from_section(§ion, &self.library.read().unwrap()))?; + self.render_paginated( + &output_path, + &Paginator::from_section(§ion, &self.library.read().unwrap()), + )?; } else { - let output = section.render_html(&self.tera, &self.config, &self.library.read().unwrap())?; + let output = + section.render_html(&self.tera, &self.config, &self.library.read().unwrap())?; create_file(&output_path.join("index.html"), &self.inject_livereload(output))?; } @@ -985,7 +1003,8 @@ impl Site { self.render_section( &self .library - .read().unwrap() + .read() + .unwrap() .get_section(&self.content_path.join("_index.md")) .expect("Failed to get index section"), false, @@ -995,7 +1014,8 @@ impl Site { /// Renders all sections pub fn render_sections(&self) -> Result<()> { self.library - .read().unwrap() + .read() + .unwrap() .sections_values() .into_par_iter() .map(|s| self.render_section(s, true)) @@ -1026,8 +1046,12 @@ impl Site { .map(|pager| { let page_path = folder_path.join(&format!("{}", pager.index)); create_directory(&page_path)?; - let output = - paginator.render_pager(pager, &self.config, &self.tera, &self.library.read().unwrap())?; + let output = paginator.render_pager( + pager, + &self.config, + &self.tera, + &self.library.read().unwrap(), + )?; if pager.index > 1 { create_file(&page_path.join("index.html"), &self.inject_livereload(output))?; } else { diff --git a/components/site/tests/site.rs b/components/site/tests/site.rs index c85033a..9286b43 100644 --- a/components/site/tests/site.rs +++ b/components/site/tests/site.rs @@ -631,9 +631,8 @@ fn can_apply_page_templates() { assert_eq!(changed_recursively.meta.title, Some("Changed recursively".into())); // But it should not have override a children page_template - let yet_another_section = library - .get_section(&template_path.join("yet_another_section").join("_index.md")) - .unwrap(); + let yet_another_section = + library.get_section(&template_path.join("yet_another_section").join("_index.md")).unwrap(); assert_eq!(yet_another_section.subsections.len(), 0); assert_eq!(yet_another_section.pages.len(), 1); diff --git a/components/site/tests/site_i18n.rs b/components/site/tests/site_i18n.rs index f9b2a98..2f81c7c 100644 --- a/components/site/tests/site_i18n.rs +++ b/components/site/tests/site_i18n.rs @@ -23,8 +23,7 @@ fn can_parse_multilingual_site() { assert_eq!(default_index_section.pages.len(), 1); assert!(default_index_section.ancestors.is_empty()); - let fr_index_section = - library.get_section(&path.join("content").join("_index.fr.md")).unwrap(); + let fr_index_section = library.get_section(&path.join("content").join("_index.fr.md")).unwrap(); assert_eq!(fr_index_section.pages.len(), 1); assert!(fr_index_section.ancestors.is_empty()); @@ -139,5 +138,4 @@ fn can_build_multilingual_site() { assert!(!file_contains!(public, "fr/auteurs/index.html", "Queen")); assert!(file_contains!(public, "fr/auteurs/index.html", "Vincent")); assert!(!file_exists!(public, "fr/auteurs/vincent-prouillet/rss.xml")); - } diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 4fec8a9..bc89c1b 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -183,7 +183,7 @@ impl LoadData { pub fn new(content_path: PathBuf, base_path: PathBuf) -> Self { let client = Arc::new(Mutex::new(Client::builder().build().expect("reqwest client build"))); let result_cache = Arc::new(Mutex::new(HashMap::new())); - Self {content_path, base_path, client, result_cache} + Self { content_path, base_path, client, result_cache } } } @@ -310,7 +310,7 @@ fn load_csv(csv_data: String) -> Result { #[cfg(test)] mod tests { - use super::{LoadData, DataSource, OutputFormat}; + use super::{DataSource, LoadData, OutputFormat}; use std::collections::HashMap; use std::path::PathBuf; diff --git a/components/templates/src/global_fns/mod.rs b/components/templates/src/global_fns/mod.rs index 2398386..cc34740 100644 --- a/components/templates/src/global_fns/mod.rs +++ b/components/templates/src/global_fns/mod.rs @@ -15,7 +15,7 @@ mod macros; mod load_data; - pub use self::load_data::LoadData; +pub use self::load_data::LoadData; #[derive(Debug)] pub struct Trans { @@ -23,7 +23,7 @@ pub struct Trans { } impl Trans { pub fn new(config: Config) -> Self { - Self {config} + Self { config } } } impl TeraFn for Trans { @@ -43,7 +43,7 @@ pub struct GetUrl { } impl GetUrl { pub fn new(config: Config, permalinks: HashMap) -> Self { - Self {config, permalinks} + Self { config, permalinks } } } impl TeraFn for GetUrl { @@ -88,7 +88,7 @@ pub struct ResizeImage { } impl ResizeImage { pub fn new(imageproc: Arc>) -> Self { - Self {imageproc} + Self { imageproc } } } @@ -154,7 +154,7 @@ impl GetTaxonomyUrl { } taxonomies.insert(taxonomy.kind.name.clone(), items); } - Self {taxonomies} + Self { taxonomies } } } impl TeraFn for GetTaxonomyUrl { @@ -188,7 +188,6 @@ impl TeraFn for GetTaxonomyUrl { } } - #[derive(Debug)] pub struct GetPage { base_path: PathBuf, @@ -196,7 +195,7 @@ pub struct GetPage { } impl GetPage { pub fn new(base_path: PathBuf, library: Arc>) -> Self { - Self {base_path: base_path.join("content"), library} + Self { base_path: base_path.join("content"), library } } } impl TeraFn for GetPage { @@ -209,9 +208,7 @@ impl TeraFn for GetPage { 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()) - }, + Some(p) => Ok(to_value(p.to_serialized(&library)).unwrap()), None => Err(format!("Page `{}` not found.", path).into()), } } @@ -224,7 +221,7 @@ pub struct GetSection { } impl GetSection { pub fn new(base_path: PathBuf, library: Arc>) -> Self { - Self {base_path: base_path.join("content"), library} + Self { base_path: base_path.join("content"), library } } } impl TeraFn for GetSection { @@ -249,13 +246,12 @@ impl TeraFn for GetSection { } else { Ok(to_value(s.to_serialized(&library)).unwrap()) } - }, + } None => Err(format!("Section `{}` not found.", path).into()), } } } - #[derive(Debug)] pub struct GetTaxonomy { library: Arc>, @@ -267,7 +263,7 @@ impl GetTaxonomy { for taxo in all_taxonomies { taxonomies.insert(taxo.kind.name.clone(), taxo); } - Self {taxonomies, library} + Self { taxonomies, library } } } impl TeraFn for GetTaxonomy { @@ -278,16 +274,10 @@ impl TeraFn for GetTaxonomy { "`get_taxonomy` requires a `kind` argument with a string value" ); - match self.taxonomies.get(&kind) { - Some(t) => { - Ok(to_value(t.to_serialized(&self.library.read().unwrap())).unwrap()) - }, + match self.taxonomies.get(&kind) { + 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()) + Err(format!("`get_taxonomy` received an unknown taxonomy as kind: {}", kind).into()) } } } @@ -298,9 +288,9 @@ mod tests { use super::{GetTaxonomy, GetTaxonomyUrl, GetUrl, Trans}; use std::collections::HashMap; - use std::sync::{RwLock, Arc}; + use std::sync::{Arc, RwLock}; - use tera::{to_value, Value, Function}; + use tera::{to_value, Function, Value}; use config::{Config, Taxonomy as TaxonomyConfig}; use library::{Library, Taxonomy, TaxonomyItem}; @@ -348,9 +338,19 @@ mod tests { #[test] fn can_get_taxonomy() { let config = Config::default(); - let taxo_config = TaxonomyConfig { name: "tags".to_string(), lang: config.default_language.clone(), ..TaxonomyConfig::default() }; + let taxo_config = TaxonomyConfig { + name: "tags".to_string(), + lang: config.default_language.clone(), + ..TaxonomyConfig::default() + }; let library = Arc::new(RwLock::new(Library::new(0, 0, false))); - let tag = TaxonomyItem::new("Programming", &taxo_config, &config, vec![], &library.read().unwrap()); + let tag = TaxonomyItem::new( + "Programming", + &taxo_config, + &config, + vec![], + &library.read().unwrap(), + ); let tags = Taxonomy { kind: taxo_config, items: vec![tag] }; let taxonomies = vec![tags.clone()]; @@ -388,7 +388,11 @@ mod tests { #[test] fn can_get_taxonomy_url() { let config = Config::default(); - let taxo_config = TaxonomyConfig { name: "tags".to_string(), lang: config.default_language.clone(), ..TaxonomyConfig::default() }; + let taxo_config = TaxonomyConfig { + name: "tags".to_string(), + lang: config.default_language.clone(), + ..TaxonomyConfig::default() + }; let library = Library::new(0, 0, false); let tag = TaxonomyItem::new("Programming", &taxo_config, &config, vec![], &library); let tags = Taxonomy { kind: taxo_config, items: vec![tag] }; diff --git a/components/templates/src/lib.rs b/components/templates/src/lib.rs index 9f54ca8..05f782b 100644 --- a/components/templates/src/lib.rs +++ b/components/templates/src/lib.rs @@ -25,7 +25,7 @@ pub mod global_fns; use tera::{Context, Tera}; -use errors::{Result, Error}; +use errors::{Error, Result}; lazy_static! { pub static ref ZOLA_TERA: Tera = { diff --git a/components/utils/src/fs.rs b/components/utils/src/fs.rs index fdbccbd..f9eb4ea 100644 --- a/components/utils/src/fs.rs +++ b/components/utils/src/fs.rs @@ -4,7 +4,7 @@ use std::path::{Path, PathBuf}; use std::time::SystemTime; use walkdir::WalkDir; -use errors::{Result, Error}; +use errors::{Error, Result}; pub fn is_path_in_directory(parent: &Path, path: &Path) -> Result { let canonical_path = path @@ -19,8 +19,8 @@ pub fn is_path_in_directory(parent: &Path, path: &Path) -> Result { /// Create a file with the content given pub fn create_file(path: &Path, content: &str) -> Result<()> { - let mut file = File::create(&path) - .map_err(|e| Error::chain(format!("Failed to create {:?}", path), e))?; + let mut file = + File::create(&path).map_err(|e| Error::chain(format!("Failed to create {:?}", path), e))?; file.write_all(content.as_bytes())?; Ok(()) } @@ -37,8 +37,9 @@ pub fn ensure_directory_exists(path: &Path) -> Result<()> { /// exists before creating it pub fn create_directory(path: &Path) -> Result<()> { if !path.exists() { - create_dir_all(path) - .map_err(|e| Error::chain(format!("Was not able to create folder {}", path.display()), e))?; + create_dir_all(path).map_err(|e| { + Error::chain(format!("Was not able to create folder {}", path.display()), e) + })?; } Ok(()) } diff --git a/components/utils/src/vec.rs b/components/utils/src/vec.rs index 778de4a..346769c 100644 --- a/components/utils/src/vec.rs +++ b/components/utils/src/vec.rs @@ -16,7 +16,7 @@ impl InsertMany for Vec { for (idx, elem) in elem_to_insert.into_iter() { let head_len = idx - last_idx; - inserted.extend(self.splice(0 .. head_len, std::iter::empty())); + inserted.extend(self.splice(0..head_len, std::iter::empty())); inserted.push(elem); last_idx = idx; } @@ -41,4 +41,4 @@ mod test { v2.insert_many(vec![(0, 0), (2, -1)]); assert_eq!(v2, &[0, 1, 2, -1, 3, 4, 5]); } -} \ No newline at end of file +} diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index 2deba22..07544a0 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -36,7 +36,7 @@ use ctrlc; use notify::{watcher, RecursiveMode, Watcher}; use ws::{Message, Sender, WebSocket}; -use errors::{Result, Error as ZolaError}; +use errors::{Error as ZolaError, Result}; use site::Site; use utils::fs::copy_file; @@ -296,11 +296,7 @@ pub fn serve( }; console::info(&msg); // Force refresh - rebuild_done_handling( - &broadcaster, - rebuild::after_template_change(site, &path), - "/x.js", - ); + rebuild_done_handling(&broadcaster, rebuild::after_template_change(site, &path), "/x.js"); }; let reload_sass = |site: &Site, path: &Path, partial_path: &Path| { diff --git a/src/console.rs b/src/console.rs index 719f3ad..0241cf3 100644 --- a/src/console.rs +++ b/src/console.rs @@ -7,8 +7,8 @@ use atty; use chrono::Duration; use termcolor::{Color, ColorChoice, ColorSpec, StandardStream, WriteColor}; -use site::Site; use errors::Error; +use site::Site; lazy_static! { /// Termcolor color choice. @@ -64,9 +64,7 @@ pub fn warn_about_ignored_pages(site: &Site) { let ignored_pages: Vec<_> = library .sections_values() .iter() - .flat_map(|s| { - s.ignored_pages.iter().map(|k| library.get_page_by_key(*k).file.path.clone()) - }) + .flat_map(|s| s.ignored_pages.iter().map(|k| library.get_page_by_key(*k).file.path.clone())) .collect(); if !ignored_pages.is_empty() { From 705a30aa8d2e15a48df98944992e56d7d2ca83e2 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 9 Feb 2019 20:49:18 +0100 Subject: [PATCH 59/82] Move toc to be a rendering page/section variable level --- CHANGELOG.md | 2 ++ components/library/src/content/page.rs | 1 + components/library/src/content/section.rs | 1 + components/library/src/content/ser.rs | 6 ------ docs/content/documentation/templates/pages-sections.md | 6 +----- test_site/templates/page.html | 1 + 6 files changed, 6 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cbf56d5..becfe36 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,8 @@ ### Breaking - `earlier/later` and `lighter/heavier` are not set anymore on pages when rendering a section +- The table of content for a page/section is now only available as the `toc` variable when +rendering it and not anymore on the `page`/`section` variable ### Other - Add support for content in multiple languages diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index c344d50..8383e5b 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -270,6 +270,7 @@ impl Page { context.insert("current_path", &self.path); context.insert("page", &self.to_serialized(library)); context.insert("lang", &self.lang); + context.insert("toc", &self.toc); render_template(&tpl_name, tera, context, &config.theme).map_err(|e| { Error::chain(format!("Failed to render page '{}'", self.file.path.display()), e) diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index 3da005e..84166e8 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -189,6 +189,7 @@ impl Section { context.insert("current_path", &self.path); context.insert("section", &self.to_serialized(library)); context.insert("lang", &self.lang); + context.insert("toc", &self.toc); render_template(tpl_name, tera, context, &config.theme).map_err(|e| { Error::chain(format!("Failed to render section '{}'", self.file.path.display()), e) diff --git a/components/library/src/content/ser.rs b/components/library/src/content/ser.rs index e8f311b..83388d6 100644 --- a/components/library/src/content/ser.rs +++ b/components/library/src/content/ser.rs @@ -67,7 +67,6 @@ pub struct SerializingPage<'a> { summary: &'a Option, word_count: Option, reading_time: Option, - toc: &'a [Header], assets: &'a [String], draft: bool, lang: &'a str, @@ -129,7 +128,6 @@ impl<'a> SerializingPage<'a> { summary: &page.summary, word_count: page.word_count, reading_time: page.reading_time, - toc: &page.toc, assets: &page.serialized_assets, draft: page.is_draft(), lang: &page.lang, @@ -185,7 +183,6 @@ impl<'a> SerializingPage<'a> { summary: &page.summary, word_count: page.word_count, reading_time: page.reading_time, - toc: &page.toc, assets: &page.serialized_assets, draft: page.is_draft(), lang: &page.lang, @@ -212,7 +209,6 @@ pub struct SerializingSection<'a> { word_count: Option, reading_time: Option, lang: &'a str, - toc: &'a [Header], assets: &'a [String], pages: Vec>, subsections: Vec<&'a str>, @@ -251,7 +247,6 @@ impl<'a> SerializingSection<'a> { components: §ion.components, word_count: section.word_count, reading_time: section.reading_time, - toc: §ion.toc, assets: §ion.serialized_assets, lang: §ion.lang, pages, @@ -290,7 +285,6 @@ impl<'a> SerializingSection<'a> { components: §ion.components, word_count: section.word_count, reading_time: section.reading_time, - toc: §ion.toc, assets: §ion.serialized_assets, lang: §ion.lang, pages: vec![], diff --git a/docs/content/documentation/templates/pages-sections.md b/docs/content/documentation/templates/pages-sections.md index c21ed77..c1402d4 100644 --- a/docs/content/documentation/templates/pages-sections.md +++ b/docs/content/documentation/templates/pages-sections.md @@ -39,8 +39,6 @@ later: Page?; // and only set when rendering the page itself heavier: Page?; lighter: Page?; -// See the Table of contents section below for more details -toc: Array
; // Year/month/day is only set if the page has a date and month/day are 1-indexed year: Number?; month: Number?; @@ -89,8 +87,6 @@ subsections: Array; word_count: Number; // Based on https://help.medium.com/hc/en-us/articles/214991667-Read-time reading_time: Number; -// See the Table of contents section below for more details -toc: Array
; // Paths of colocated assets, relative to the content directory assets: Array; // The relative paths of the parent sections until the index onef for use with the `get_section` Tera function @@ -107,7 +103,7 @@ translations: Array; ## Table of contents -Both page and section have a `toc` field which corresponds to an array of `Header`. +Both page and section templates have a `toc` variable which corresponds to an array of `Header`. A `Header` has the following fields: ```ts diff --git a/test_site/templates/page.html b/test_site/templates/page.html index 275de86..d0e0f3e 100644 --- a/test_site/templates/page.html +++ b/test_site/templates/page.html @@ -3,6 +3,7 @@ {% block content %} {{ page.content | safe }} {{ page.relative_path | safe }} + {{ toc }} {% if page.earlier %}Previous article: {{ page.earlier.permalink }}{% endif %} {% if page.later %}Next article: {{ page.later.permalink }}{% endif %} From 25b943ec352de32ff8c983d2872e80f363762b46 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 16 Feb 2019 15:40:59 +0100 Subject: [PATCH 60/82] Print list of template names to debug Windows error --- Cargo.lock | 158 ++++++++++++++-------------- components/rebuild/tests/rebuild.rs | 1 + 2 files changed, 79 insertions(+), 80 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c2303b1..9ac0072 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -48,7 +48,7 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -88,12 +88,12 @@ dependencies = [ "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -131,7 +131,7 @@ name = "aho-corasick" version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -234,7 +234,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -297,7 +297,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -336,8 +336,8 @@ dependencies = [ "errors 0.1.0", "globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", @@ -396,7 +396,7 @@ dependencies = [ "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -477,7 +477,7 @@ version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "csv-core 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -485,7 +485,7 @@ name = "csv-core" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -537,8 +537,8 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rust-stemmers 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", "strum 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "strum_macros 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -623,7 +623,7 @@ version = "0.1.0" dependencies = [ "image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -699,9 +699,9 @@ dependencies = [ "errors 0.1.0", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -768,7 +768,7 @@ version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -809,7 +809,7 @@ dependencies = [ "aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -899,7 +899,7 @@ dependencies = [ [[package]] name = "hyper" -version = "0.12.23" +version = "0.12.24" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -930,7 +930,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.12.23 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper 0.12.24 (registry+https://github.com/rust-lang/crates.io-index)", "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -954,7 +954,7 @@ dependencies = [ "globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -989,7 +989,7 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -1000,7 +1000,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "inflate" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1111,12 +1111,12 @@ dependencies = [ "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rendering 0.1.0", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "slotmap 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -1186,8 +1186,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1201,10 +1201,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "memchr" -version = "2.1.3" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1367,7 +1366,7 @@ name = "nom" version = "4.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1432,7 +1431,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "num_cpus" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1440,7 +1439,7 @@ dependencies = [ [[package]] name = "onig" -version = "4.3.1" +version = "4.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1608,7 +1607,7 @@ dependencies = [ "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "xml-rs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1619,7 +1618,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "deflate 0.7.19 (registry+https://github.com/rust-lang/crates.io-index)", - "inflate 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)", + "inflate 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", "num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1796,7 +1795,7 @@ dependencies = [ "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1838,7 +1837,7 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", - "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", "utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1873,12 +1872,12 @@ dependencies = [ "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", - "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -1892,14 +1891,14 @@ dependencies = [ "encoding_rs 0.8.16 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.12.23 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper 0.12.24 (registry+https://github.com/rust-lang/crates.io-index)", "hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "libflate 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1925,8 +1924,8 @@ name = "rust-stemmers" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2050,12 +2049,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde" -version = "1.0.87" +version = "1.0.88" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde_derive" -version = "1.0.87" +version = "1.0.88" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2071,7 +2070,7 @@ dependencies = [ "indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2081,7 +2080,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2128,11 +2127,11 @@ dependencies = [ "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "sass-rs 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "search 0.1.0", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", - "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -2192,7 +2191,7 @@ dependencies = [ "new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2267,11 +2266,11 @@ dependencies = [ "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "onig 4.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "onig 4.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "plist 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "yaml-rust 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2304,7 +2303,7 @@ dependencies = [ "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "reqwest 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", @@ -2322,7 +2321,7 @@ dependencies = [ [[package]] name = "tera" -version = "1.0.0-alpha.5" +version = "1.0.0-beta.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2332,12 +2331,12 @@ dependencies = [ "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "unic-segment 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "v_htmlescape 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "v_htmlescape 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2403,7 +2402,7 @@ dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2476,7 +2475,7 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2531,7 +2530,7 @@ dependencies = [ "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2584,7 +2583,7 @@ name = "toml" version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2804,9 +2803,9 @@ name = "utils" version = "0.1.0" dependencies = [ "errors 0.1.0", - "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2831,7 +2830,7 @@ dependencies = [ [[package]] name = "v_escape" -version = "0.6.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "v_escape_derive 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2872,12 +2871,11 @@ dependencies = [ [[package]] name = "v_htmlescape" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "v_escape 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "v_escape 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -3146,13 +3144,13 @@ dependencies = [ "checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83" "checksum humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" "checksum humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ca7e5f2e110db35f93b837c81797f3714500b81d517bf20c431b16d3ca4f114" -"checksum hyper 0.12.23 (registry+https://github.com/rust-lang/crates.io-index)" = "860faf61a9957c9cb0e23e69f1c8290e92f6eb660fcdd1f2d6777043a2ae1a46" +"checksum hyper 0.12.24 (registry+https://github.com/rust-lang/crates.io-index)" = "fdfa9b401ef6c4229745bb6e9b2529192d07b920eed624cdee2a82348cd550af" "checksum hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "32cd73f14ad370d3b4d4b7dce08f69b81536c82e39fcc89731930fe5788cd661" "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" "checksum ignore 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ad03ca67dc12474ecd91fdb94d758cbd20cb4e7a78ebe831df26a9b7511e1162" "checksum image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)" = "52fb0666a1273dac46f9725aa4859bcd5595fc3554cf3495051b4de8db745e7d" "checksum indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7e81a7c05f79578dbc15793d8b619db9ba32b4577003ef3af1a91c416798c58d" -"checksum inflate 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "84c683bde2d8413b8f1be3e459c30e4817672b6e7a31d9212b0323154e76eba7" +"checksum inflate 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "1cdb29978cc5797bd8dcc8e5bf7de604891df2a8dc576973d71a281e916db2ff" "checksum inotify 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "40b54539f3910d6f84fbf9a643efd6e3aa6e4f001426c0329576128255994718" "checksum inotify-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e74a1aa87c59aeff6ef2cc2fa62d41bc43f54952f55652656b18a02fd5e356c0" "checksum iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08" @@ -3175,7 +3173,7 @@ dependencies = [ "checksum maplit 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "08cbb6b4fef96b6d77bfc40ec491b1690c779e77b05cd9f07f787ed376fd4c43" "checksum markup5ever 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "897636f9850c3eef4905a5540683ed53dc9393860f0846cab2c2ddf9939862ff" "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" -"checksum memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e1dd4eaac298c32ce07eb6ed9242eda7d82955b9170b7d6db59b2e02cc63fcb8" +"checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39" "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" "checksum mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "3e27ca21f40a310bd06d9031785f4801710d566c184a6e15bad4f1d9b65f9425" "checksum mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30de2e4613efcba1ec63d8133f344076952090c122992a903359be5a4f99c3ed" @@ -3198,8 +3196,8 @@ dependencies = [ "checksum num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "af3fdbbc3291a5464dc57b03860ec37ca6bf915ed6ee385e7c6c052c422b2124" "checksum num-rational 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4e96f040177bb3da242b5b1ecf3f54b5d5af3efbbfb18608977a5d2767b22f10" "checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1" -"checksum num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5a69d464bdc213aaaff628444e99578ede64e9c854025aa43b9796530afa9238" -"checksum onig 4.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2e69a05d35a8f30d626a1df53c8636fe1b689407d744c0c7623aa825c0a3356e" +"checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba" +"checksum onig 4.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a646989adad8a19f49be2090374712931c3a59835cb5277b4530f48b417f26e7" "checksum onig_sys 69.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388410bf5fa341f10e58e6db3975f4bea1ac30247dd79d37a9e5ced3cb4cc3b0" "checksum openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ec7bd7ca4cce6dbdc77e7c1230682740d307d1218a87fb0349a571272be749f9" "checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" @@ -3262,8 +3260,8 @@ dependencies = [ "checksum security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3d6696852716b589dff9e886ff83778bb635150168e83afa8ac6b8a78cb82abc" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -"checksum serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)" = "2e20fde37801e83c891a2dc4ebd3b81f0da4d1fb67a9e0a2a3b921e2536a58ee" -"checksum serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)" = "633e97856567e518b59ffb2ad7c7a4fd4c5d91d9c7f32dd38a27b2bf7e8114ea" +"checksum serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)" = "9f301d728f2b94c9a7691c90f07b0b4e8a4517181d9461be94c04bddeb4bd850" +"checksum serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)" = "beed18e6f5175aef3ba670e57c60ef3b1b74d250d962a26604bff4c80e970dd4" "checksum serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)" = "27dce848e7467aa0e2fcaf0a413641499c0b745452aaca1194d24dedde9e13c9" "checksum serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d48f9f99cd749a2de71d29da5f948de7f2764cc5a9d7f3c97e3514d4ee6eabf2" "checksum sha-1 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "51b9d1f3b5de8a167ab06834a7c883bd197f2191e1dda1a22d9ccfeedbf9aded" @@ -3288,7 +3286,7 @@ dependencies = [ "checksum syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e02dd9df97a68a2d005ace28ff24c610abfc3ce17afcfdb22a077645dabb599a" "checksum tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "37daa55a7240c4931c84559f03b3cad7d19535840d1c4a0cc4e9b2fb0dcf70ff" "checksum tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "707feda9f2582d5d680d733e38755547a3e8fb471e7ba11452ecfd9ce93a5d3b" -"checksum tera 1.0.0-alpha.5 (registry+https://github.com/rust-lang/crates.io-index)" = "31ef8198415b2431dfd105f99b377a5b53592b793e80db87dcdaee15c5befd81" +"checksum tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c8e39195166443c9ab187b0718c9351efddabfb2fa425ced513f8aa2d8c5a453" "checksum termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4096add70612622289f2fdcdbd5086dc81c1e2675e6ae58d6c4f62a16c6d7f2f" "checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096" "checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6" @@ -3337,11 +3335,11 @@ dependencies = [ "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" "checksum uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0238db0c5b605dd1cf51de0f21766f97fba2645897024461d6a00c036819a768" "checksum v_escape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c8b50688edb86f4c092a1a9fe8bda004b0faa3197100897653809e97e09a2814" -"checksum v_escape 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "38187e1fdbf09d7dcb6fd3dfa7fcc14a0d77d9f09be411431faec832a5476d75" +"checksum v_escape 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "973c504626bd18920d388344f98cdcafe77affd37f0a69ff946842d8ee1c7ef3" "checksum v_escape_derive 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7cd994c63b487fef7aad31e5394ec04b9e24de7b32ea5251c9fb499cd2cbf44c" "checksum v_escape_derive 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4592e378ab72caf41ee682531446526c5e16bb1aaa4f7cd673da893ade308b79" "checksum v_htmlescape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "020cae817dc82693aa523f01087b291b1c7a9ac8cea5c12297963f21769fb27f" -"checksum v_htmlescape 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "72030ff9467f2e782051667b315875a117b9cef470d0796d5482c7f7da84524b" +"checksum v_htmlescape 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9bc3140d4809e7f14ea901910b1bc8e80ac0421978690205931c9d569b80d47a" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" "checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a" "checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" diff --git a/components/rebuild/tests/rebuild.rs b/components/rebuild/tests/rebuild.rs index 621e8a8..6bd69be 100644 --- a/components/rebuild/tests/rebuild.rs +++ b/components/rebuild/tests/rebuild.rs @@ -240,6 +240,7 @@ fn can_rebuild_after_renaming_non_md_asset_in_colocated_folder() { fn can_rebuild_after_deleting_file() { let tmp_dir = tempdir().expect("create temp dir"); let (site_path, mut site) = load_and_build_site!(tmp_dir, "test_site"); + println!("{:#?}", site.tera.templates.keys().collect::>()); let path = site_path.join("content").join("posts").join("fixed-slug.md"); fs::remove_file(&path).unwrap(); From 84f10f6b692fcaa39291c8f5d6a79f37f58b01b0 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 16 Feb 2019 16:31:29 +0100 Subject: [PATCH 61/82] Use platform separator for shortcodes paths --- components/library/src/content/ser.rs | 1 - components/rebuild/tests/rebuild.rs | 1 - components/rendering/src/shortcode.rs | 4 +++- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/components/library/src/content/ser.rs b/components/library/src/content/ser.rs index 83388d6..f530484 100644 --- a/components/library/src/content/ser.rs +++ b/components/library/src/content/ser.rs @@ -5,7 +5,6 @@ use tera::{Map, Value}; use content::{Page, Section}; use library::Library; -use rendering::Header; #[derive(Clone, Debug, PartialEq, Serialize)] pub struct TranslatedContent<'a> { diff --git a/components/rebuild/tests/rebuild.rs b/components/rebuild/tests/rebuild.rs index 6bd69be..621e8a8 100644 --- a/components/rebuild/tests/rebuild.rs +++ b/components/rebuild/tests/rebuild.rs @@ -240,7 +240,6 @@ fn can_rebuild_after_renaming_non_md_asset_in_colocated_folder() { fn can_rebuild_after_deleting_file() { let tmp_dir = tempdir().expect("create temp dir"); let (site_path, mut site) = load_and_build_site!(tmp_dir, "test_site"); - println!("{:#?}", site.tera.templates.keys().collect::>()); let path = site_path.join("content").join("posts").join("fixed-slug.md"); fs::remove_file(&path).unwrap(); diff --git a/components/rendering/src/shortcode.rs b/components/rendering/src/shortcode.rs index 4bf7c69..0ef0488 100644 --- a/components/rendering/src/shortcode.rs +++ b/components/rendering/src/shortcode.rs @@ -1,3 +1,5 @@ +use std::path::MAIN_SEPARATOR; + use pest::iterators::Pair; use pest::Parser; use regex::Regex; @@ -112,7 +114,7 @@ fn render_shortcode( } tera_context.extend(context.tera_context.clone()); - let template_name = format!("shortcodes/{}.html", name); + let template_name = format!("shortcodes{}{}.html", MAIN_SEPARATOR, name); let res = utils::templates::render_template(&template_name, &context.tera, tera_context, &None) .map_err(|e| Error::chain(format!("Failed to render {} shortcode", name), e))?; From 11c58458e8bf3ffebf4c4dff4668ce4dff81fd69 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 22 Feb 2019 21:02:42 +0100 Subject: [PATCH 62/82] Revert useless change in shortcodes --- .gitignore | 1 + components/rendering/src/shortcode.rs | 4 +--- components/site/benches/gen.py | 1 + 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 777cd7b..fd58a41 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,7 @@ small-blog medium-blog big-blog huge-blog +extra-huge-blog small-kb medium-kb huge-kb diff --git a/components/rendering/src/shortcode.rs b/components/rendering/src/shortcode.rs index 0ef0488..4bf7c69 100644 --- a/components/rendering/src/shortcode.rs +++ b/components/rendering/src/shortcode.rs @@ -1,5 +1,3 @@ -use std::path::MAIN_SEPARATOR; - use pest::iterators::Pair; use pest::Parser; use regex::Regex; @@ -114,7 +112,7 @@ fn render_shortcode( } tera_context.extend(context.tera_context.clone()); - let template_name = format!("shortcodes{}{}.html", MAIN_SEPARATOR, name); + let template_name = format!("shortcodes/{}.html", name); let res = utils::templates::render_template(&template_name, &context.tera, tera_context, &None) .map_err(|e| Error::chain(format!("Failed to render {} shortcode", name), e))?; diff --git a/components/site/benches/gen.py b/components/site/benches/gen.py index 060104f..c30709b 100644 --- a/components/site/benches/gen.py +++ b/components/site/benches/gen.py @@ -169,6 +169,7 @@ if __name__ == "__main__": gen_site("medium-blog", [""], 250, is_blog=True) gen_site("big-blog", [""], 1000, is_blog=True) gen_site("huge-blog", [""], 10000, is_blog=True) + gen_site("extra-huge-blog", [""], 100000, is_blog=True) gen_site("small-kb", ["help", "help1", "help2", "help3", "help4", "help5", "help6", "help7", "help8", "help9"], 10) gen_site("medium-kb", ["help", "help1", "help2", "help3", "help4", "help5", "help6", "help7", "help8", "help9"], 100) From 974492bb7b62e91ad65d0e367225da58c3445328 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 22 Feb 2019 21:48:30 +0100 Subject: [PATCH 63/82] Ensure we don't delete root index without adding back default in rebuild Fix #620 --- components/rebuild/src/lib.rs | 3 +++ components/rebuild/tests/rebuild.rs | 17 ++++++++++++ components/site/src/lib.rs | 42 ++++++++++++++++------------- test_site/content/_index.md | 2 ++ 4 files changed, 46 insertions(+), 18 deletions(-) create mode 100644 test_site/content/_index.md diff --git a/components/rebuild/src/lib.rs b/components/rebuild/src/lib.rs index ca4250b..a93ef7f 100644 --- a/components/rebuild/src/lib.rs +++ b/components/rebuild/src/lib.rs @@ -116,6 +116,9 @@ fn delete_element(site: &mut Site, path: &Path, is_section: bool) -> Result<()> } } + // We might have delete the root _index.md so ensure we have at least the default one + // before populating + site.create_default_index_sections()?; site.populate_sections(); site.populate_taxonomies()?; // Ensure we have our fn updated so it doesn't contain the permalink(s)/section/page deleted diff --git a/components/rebuild/tests/rebuild.rs b/components/rebuild/tests/rebuild.rs index 621e8a8..f35c0c2 100644 --- a/components/rebuild/tests/rebuild.rs +++ b/components/rebuild/tests/rebuild.rs @@ -269,3 +269,20 @@ Edite assert!(res.is_ok()); assert!(file_contains!(site_path, "public/fr/blog/with-assets/index.html", "Edite")); } + +// https://github.com/getzola/zola/issues/620 +#[test] +fn can_rebuild_after_renaming_section_and_deleting_file() { + let tmp_dir = tempdir().expect("create temp dir"); + let (site_path, mut site) = load_and_build_site!(tmp_dir, "test_site"); + let (old_path, new_path) = rename!(site_path, "content/posts/", "post/"); + let res = after_content_rename(&mut site, &old_path, &new_path); + assert!(res.is_ok()); + + let path = site_path.join("content").join("_index.md"); + fs::remove_file(&path).unwrap(); + + let res = after_content_change(&mut site, &path); + println!("{:?}", res); + assert!(res.is_ok()); +} diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 9d40f75..643a10d 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -234,8 +234,30 @@ impl Site { self.add_section(s, false)?; } - // Insert a default index section for each language if necessary so we don't need to create - // a _index.md to render the index page at the root of the site + self.create_default_index_sections()?; + + let mut pages_insert_anchors = HashMap::new(); + for page in pages { + let p = page?; + pages_insert_anchors.insert( + p.file.path.clone(), + self.find_parent_section_insert_anchor(&p.file.parent.clone(), &p.lang), + ); + self.add_page(p, false)?; + } + + self.register_early_global_fns(); + self.populate_sections(); + self.render_markdown()?; + self.populate_taxonomies()?; + self.register_tera_global_fns(); + + Ok(()) + } + + /// Insert a default index section for each language if necessary so we don't need to create + /// a _index.md to render the index page at the root of the site + pub fn create_default_index_sections(&mut self) -> Result<()> { for (index_path, lang) in self.index_section_paths() { if let Some(ref index_section) = self.library.read().unwrap().get_section(&index_path) { if self.config.build_search_index && !index_section.meta.in_search_index { @@ -270,22 +292,6 @@ impl Site { } } - let mut pages_insert_anchors = HashMap::new(); - for page in pages { - let p = page?; - pages_insert_anchors.insert( - p.file.path.clone(), - self.find_parent_section_insert_anchor(&p.file.parent.clone(), &p.lang), - ); - self.add_page(p, false)?; - } - - self.register_early_global_fns(); - self.populate_sections(); - self.render_markdown()?; - self.populate_taxonomies()?; - self.register_tera_global_fns(); - Ok(()) } diff --git a/test_site/content/_index.md b/test_site/content/_index.md new file mode 100644 index 0000000..ac36e06 --- /dev/null +++ b/test_site/content/_index.md @@ -0,0 +1,2 @@ ++++ ++++ From 13b24d56fb60289263cd820a7336a13b89d733ff Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 23 Feb 2019 13:01:46 +0100 Subject: [PATCH 64/82] Update deps --- Cargo.lock | 270 +++++++++++++++++++++++++---------------------------- 1 file changed, 128 insertions(+), 142 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 9ac0072..f9a19bb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5,7 +5,7 @@ name = "MacTypes-sys" version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -20,10 +20,10 @@ dependencies = [ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -78,7 +78,7 @@ dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "h2 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -98,7 +98,7 @@ dependencies = [ "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -128,7 +128,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "aho-corasick" -version = "0.6.9" +version = "0.6.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -178,7 +178,7 @@ name = "atty" version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -190,13 +190,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "backtrace" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -207,7 +207,7 @@ version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -229,7 +229,7 @@ dependencies = [ [[package]] name = "bincode" -version = "1.1.1" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -358,7 +358,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -366,7 +366,7 @@ name = "core-foundation-sys" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -406,7 +406,7 @@ version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -526,7 +526,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "either" -version = "1.5.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -614,7 +614,7 @@ name = "error-chain" version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -623,7 +623,7 @@ version = "0.1.0" dependencies = [ "image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -632,7 +632,7 @@ name = "failure" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -658,7 +658,7 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -668,7 +668,7 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "miniz-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "miniz_oxide_c_api 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -701,7 +701,7 @@ dependencies = [ "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -718,7 +718,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -726,7 +726,7 @@ name = "fsevent-sys" version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -754,7 +754,7 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "new_debug_unreachable 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -806,7 +806,7 @@ name = "globset" version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -815,7 +815,7 @@ dependencies = [ [[package]] name = "globwalk" -version = "0.6.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "ignore 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -831,7 +831,7 @@ dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -852,7 +852,7 @@ name = "hostname" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "winutil 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -871,7 +871,7 @@ dependencies = [ [[package]] name = "http" -version = "0.1.15" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -906,7 +906,7 @@ dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "h2 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -989,7 +989,7 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -1013,7 +1013,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "inotify-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1021,7 +1021,7 @@ name = "inotify-sys" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1029,7 +1029,7 @@ name = "iovec" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1085,12 +1085,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "libc" -version = "0.2.48" +version = "0.2.49" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "libflate" -version = "0.1.19" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1115,8 +1115,8 @@ dependencies = [ "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "slotmap 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -1126,7 +1126,7 @@ name = "link_checker" version = "0.1.0" dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "reqwest 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)", + "reqwest 0.9.10 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1204,7 +1204,7 @@ name = "memchr" version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1237,7 +1237,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1255,7 +1255,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", "crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "miniz_oxide 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1269,7 +1269,7 @@ dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1294,7 +1294,7 @@ version = "0.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1315,15 +1315,15 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl 0.10.18 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-sys 0.9.41 (registry+https://github.com/rust-lang/crates.io-index)", "schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "security-framework 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1332,17 +1332,14 @@ version = "0.2.33" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "new_debug_unreachable" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", -] [[package]] name = "nix" @@ -1352,7 +1349,7 @@ dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1381,7 +1378,7 @@ dependencies = [ "fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "inotify 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1434,7 +1431,7 @@ name = "num_cpus" version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1444,7 +1441,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "onig_sys 69.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1459,15 +1456,15 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.16" +version = "0.10.18" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-sys 0.9.41 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1477,11 +1474,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "openssl-sys" -version = "0.9.40" +version = "0.9.41" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1508,10 +1505,10 @@ name = "parking_lot_core" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1663,7 +1660,7 @@ version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1676,7 +1673,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1687,14 +1684,14 @@ version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "rand_os 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1742,7 +1739,7 @@ name = "rand_jitter" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1754,7 +1751,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1762,11 +1759,11 @@ dependencies = [ [[package]] name = "rand_pcg" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1783,7 +1780,7 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "either 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1794,7 +1791,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1815,7 +1812,7 @@ dependencies = [ "fs_extra 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "library 0.1.0", "site 0.1.0", - "tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1836,7 +1833,7 @@ name = "regex" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1877,23 +1874,23 @@ dependencies = [ "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", - "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] [[package]] name = "reqwest" -version = "0.9.9" +version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "encoding_rs 0.8.16 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "hyper 0.12.24 (registry+https://github.com/rust-lang/crates.io-index)", "hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libflate 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", + "libflate 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1969,17 +1966,18 @@ name = "sass-rs" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "sass-sys 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "sass-sys 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "sass-sys" -version = "0.4.7" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2020,7 +2018,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "core-foundation 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2031,7 +2029,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "MacTypes-sys 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2106,7 +2104,7 @@ version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arc-swap 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2129,9 +2127,9 @@ dependencies = [ "search 0.1.0", "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", - "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -2155,11 +2153,8 @@ dependencies = [ [[package]] name = "smallvec" -version = "0.6.8" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", -] [[package]] name = "socket2" @@ -2167,7 +2162,7 @@ version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2188,7 +2183,7 @@ version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "new_debug_unreachable 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2260,7 +2255,7 @@ name = "syntect" version = "3.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bincode 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bincode 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "flate2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2278,11 +2273,11 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.0.6" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2301,9 +2296,9 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "library 0.1.0", "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "reqwest 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)", + "reqwest 0.9.10 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", @@ -2321,11 +2316,11 @@ dependencies = [ [[package]] name = "tera" -version = "1.0.0-beta.1" +version = "1.0.0-beta.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "globwalk 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "globwalk 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2352,7 +2347,7 @@ name = "termion" version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2389,7 +2384,7 @@ name = "time" version = "0.1.42" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2409,7 +2404,7 @@ dependencies = [ "tokio-fs 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-sync 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-sync 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2488,7 +2483,7 @@ version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "signal-hook 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2500,7 +2495,7 @@ dependencies = [ [[package]] name = "tokio-sync" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2569,7 +2564,7 @@ dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2606,7 +2601,7 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2629,7 +2624,7 @@ dependencies = [ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2653,7 +2648,7 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-proto 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2751,7 +2746,7 @@ name = "unicode-normalization" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2769,14 +2764,6 @@ name = "unicode-xid" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -[[package]] -name = "unreachable" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "url" version = "1.7.2" @@ -2804,8 +2791,8 @@ version = "0.1.0" dependencies = [ "errors 0.1.0", "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3056,7 +3043,7 @@ dependencies = [ "checksum actix-web 0.7.18 (registry+https://github.com/rust-lang/crates.io-index)" = "e9f33c941e5e69a58a6bfef33853228042ed3799fc4b5a4923a36a85776fb690" "checksum actix_derive 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4300e9431455322ae393d43a2ba1ef96b8080573c0fc23b196219efedfb6ba69" "checksum adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7e522997b529f05601e05166c07ed17789691f562762c7f3b987263d2dedee5c" -"checksum aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1e9a933f4e58658d7b12defcf96dc5c720f20832deebe3e0a19efd3b6aaeeb9e" +"checksum aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5" "checksum ammonia 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9c8cd3dff93e4471fff384645c5625cb8e4349000d8a730b9685bdbb19cbacb4" "checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" "checksum arc-swap 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1025aeae2b664ca0ea726a89d574fe8f4e77dd712d443236ad1de00379450cf6" @@ -3064,11 +3051,11 @@ dependencies = [ "checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" "checksum atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652" "checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799" -"checksum backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "b5b493b66e03090ebc4343eb02f94ff944e0cbc9ac6571491d170ba026741eb5" +"checksum backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "cd5a90e2b463010cd0e0ce9a11d4a9d5d58d9f41d4a6ba3dcaf9e68b466e88b4" "checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6" "checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e" "checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643" -"checksum bincode 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "58470ad6460f0b0e89b0df5f17b8bd77ebae26af69dca0bd9ddc8b9e38abb2ff" +"checksum bincode 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3efe0b4c8eaeed8600549c29f538a6a11bf422858d0ed435b1d70ec4ab101190" "checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d" "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" "checksum block-buffer 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a076c298b9ecdb530ed9d967e74a6027d6a7478924520acddcddc24c1c8ab3ab" @@ -3102,7 +3089,7 @@ dependencies = [ "checksum deunicode 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "850878694b7933ca4c9569d30a34b55031b9b139ee1fc7b94a527c4ef960d690" "checksum digest 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)" = "03b072242a8cbaf9c145665af9d250c59af3b958f83ed6824e13533cf76d5b90" "checksum dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6d301140eb411af13d3115f9a562c85cc6b541ade9dfa314132244aaee7489dd" -"checksum either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3be565ca5c557d7f59e7cfcf1844f9e3033650c929c6566f511e8005f205c1d0" +"checksum either 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c67353c641dc847124ea1902d69bd753dee9bb3beff9aa3662ecf86c971d1fac" "checksum elasticlunr-rs 2.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a99a310cd1f9770e7bf8e48810c7bcbb0e078c8fb23a8c7bcf0da4c2bf61a455" "checksum encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "6b0d943856b990d12d3b55b359144ff341533e516d94098b1d3fc1ac666d36ec" "checksum encoding-index-japanese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "04e8b2ff42e9a05335dbf8b5c6f7567e5591d0d916ccef4e0b1710d32a0d0c91" @@ -3135,12 +3122,12 @@ dependencies = [ "checksum gif 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4bca55ac1f213920ce3527ccd62386f1f15fa3f1714aeee1cf93f2c416903f" "checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" "checksum globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4743617a7464bbda3c8aec8558ff2f9429047e025771037df561d383337ff865" -"checksum globwalk 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4be0267260c9bb4e278dfb2291de9518a595cb625cf6f5f385c4b7d8d1aa7112" +"checksum globwalk 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4c7ee1ce235d766a01b481e593804b9356768d1dbd68fc0c063d04b407bee71a" "checksum h2 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ddb2b25a33e231484694267af28fec74ac63b5ccf51ee2065a5e313b834d836e" "checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" "checksum hostname 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "21ceb46a83a85e824ef93669c8b390009623863b5c195d1ba747292c0c72f94e" "checksum html5ever 0.22.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c213fa6a618dc1da552f54f85cba74b05d8e883c92ec4e89067736938084c26e" -"checksum http 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "1a10e5b573b9a0146545010f50772b9e8b1dd0a256564cc4307694c68832a2f5" +"checksum http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "fe67e3678f2827030e89cc4b9e7ecd16d52f132c0b940ab5005f88e821500f6a" "checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83" "checksum humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" "checksum humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ca7e5f2e110db35f93b837c81797f3714500b81d517bf20c431b16d3ca4f114" @@ -3161,8 +3148,8 @@ dependencies = [ "checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" "checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" -"checksum libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)" = "e962c7641008ac010fa60a7dfdc1712449f29c44ef2d4702394aea943ee75047" -"checksum libflate 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "bff3ac7d6f23730d3b533c35ed75eef638167634476a499feef16c428d74b57b" +"checksum libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)" = "413f3dfc802c5dc91dc570b05125b6cda9855edfaa9825c9849807876376e70e" +"checksum libflate 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)" = "54d1ddf9c52870243c5689d7638d888331c1116aa5b398f3ba1acfa7d8758ca1" "checksum linked-hash-map 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7860ec297f7008ff7a1e3382d7f7e1dcd69efc94751a2284bafc3d013c2aa939" "checksum linked-hash-map 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "70fb39025bc7cdd76305867c4eccf2f2dcf6e9a57f5b21a93e1c2d86cd03ec9e" "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" @@ -3186,7 +3173,7 @@ dependencies = [ "checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" "checksum native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ff8e08de0070bbf4c31f452ea2a70db092f36f6f2e4d897adf5674477d488fb2" "checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" -"checksum new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0cdc457076c78ab54d5e0d6fa7c47981757f1e34dc39ff92787f217dede586c4" +"checksum new_debug_unreachable 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "fe2deb65e9f08f6540e6766481b9dc3a36e73d2fdb96e82bc3cd56353fafe90a" "checksum nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17" "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" "checksum nom 4.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b30adc557058ce00c9d0d7cb3c6e0b5bc6f36e2e2eabe74b0ba726d194abd588" @@ -3199,9 +3186,9 @@ dependencies = [ "checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba" "checksum onig 4.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a646989adad8a19f49be2090374712931c3a59835cb5277b4530f48b417f26e7" "checksum onig_sys 69.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388410bf5fa341f10e58e6db3975f4bea1ac30247dd79d37a9e5ced3cb4cc3b0" -"checksum openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ec7bd7ca4cce6dbdc77e7c1230682740d307d1218a87fb0349a571272be749f9" +"checksum openssl 0.10.18 (registry+https://github.com/rust-lang/crates.io-index)" = "b90119d71b0a3596588da04bf7c2c42f2978cfa1217a94119d8ec9e963c7729c" "checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" -"checksum openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)" = "1bb974e77de925ef426b6bc82fce15fd45bdcbeb5728bffcfc7cdeeb7ce1c2d6" +"checksum openssl-sys 0.9.41 (registry+https://github.com/rust-lang/crates.io-index)" = "e4c77cdd67d31759b22aa72cfda3c65c12348f9e6c5420946b403c022fd0311a" "checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13" "checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" "checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" @@ -3232,7 +3219,7 @@ dependencies = [ "checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" "checksum rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b9ea758282efe12823e0d952ddb269d2e1897227e464919a554f2a03ef1b832" "checksum rand_os 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b7c690732391ae0abafced5015ffb53656abfaec61b342290e5eb56b286a679d" -"checksum rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "086bd09a33c7044e56bb44d5bdde5a60e7f119a9e95b0775f545de759a32fe05" +"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44" "checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" "checksum rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "373814f27745b2686b350dd261bfd24576a6fb0e2c5919b3a2b6005f820b0473" "checksum rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b055d1e92aba6877574d8fe604a63c8b5df60f60e5982bf7ccbb1338ea527356" @@ -3242,7 +3229,7 @@ dependencies = [ "checksum regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "37e7cbbd370869ce2e8dff25c7018702d10b21a20ef7135316f8daecd6c25b7f" "checksum regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "8c2f35eedad5295fdf00a63d7d4b238135723f92b434ec06774dad15c7ab0861" "checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5" -"checksum reqwest 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)" = "09d6e187a58d923ee132fcda141c94e716bcfe301c2ea2bef5c81536e0085376" +"checksum reqwest 0.9.10 (registry+https://github.com/rust-lang/crates.io-index)" = "f205a95638627fc0d21c53901671b06f439dc2830311ff11ecdff34ae2d839a8" "checksum resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b263b4aa1b5de9ffc0054a2386f96992058bb6870aab516f8cdeb8a667d56dcb" "checksum rust-stemmers 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05928c187b85b38f6b98db43057a24f0245163635a5ce6325a4f77a833d646aa" "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" @@ -3252,7 +3239,7 @@ dependencies = [ "checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9" "checksum same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8f20c4be53a8a1ff4c1f1b2bd14570d2f634628709752f0702ecdd2b3f9a5267" "checksum sass-rs 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90f8cf6e645aa843ffffcbdc1e8752b1f221dfa314c81895aeb229a77aea7e05" -"checksum sass-sys 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "173ac202b4585ecfb1521159491175a787584fcc346457d53a099b240c69cd41" +"checksum sass-sys 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "f88301b9780e715f1ef96b16d33a4d7d917c61ec1caccf26215ebc4bebca58dd" "checksum schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "0e1a231dc10abf6749cfa5d7767f25888d484201accbd919b66ab5413c502d56" "checksum scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" @@ -3271,7 +3258,7 @@ dependencies = [ "checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" "checksum slotmap 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4ed041f7f2ff35f2bf7d688bf30686976512f8300e37433c2c73ea9f4cf14b" "checksum slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b3bc762e6a4b6c6fcaade73e77f9ebc6991b676f88bb2358bddb56560f073373" -"checksum smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)" = "88aea073965ab29f6edb5493faf96ad662fb18aa9eeb186a3b7057951605ed15" +"checksum smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c4488ae950c49d403731982257768f48fada354a5203fe81f9bb6f43ca9002be" "checksum socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "c4d11a52082057d87cb5caa31ad812f4504b97ab44732cd8359df2e9ff9f48e7" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum string 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b639411d0b9c738748b5397d5ceba08e648f4f1992231aa859af1a017f31f60b" @@ -3284,9 +3271,9 @@ dependencies = [ "checksum syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)" = "f92e629aa1d9c827b2bb8297046c1ccffc57c99b947a680d3ccff1f136a3bee9" "checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" "checksum syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e02dd9df97a68a2d005ace28ff24c610abfc3ce17afcfdb22a077645dabb599a" -"checksum tempfile 3.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "37daa55a7240c4931c84559f03b3cad7d19535840d1c4a0cc4e9b2fb0dcf70ff" +"checksum tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "b86c784c88d98c801132806dadd3819ed29d8600836c4088e855cdf3e178ed8a" "checksum tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "707feda9f2582d5d680d733e38755547a3e8fb471e7ba11452ecfd9ce93a5d3b" -"checksum tera 1.0.0-beta.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c8e39195166443c9ab187b0718c9351efddabfb2fa425ced513f8aa2d8c5a453" +"checksum tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c027da6522d5abaca1e6633ac7a1085a86ca00f3a60178dbd9f0df6eef51e9a" "checksum termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4096add70612622289f2fdcdbd5086dc81c1e2675e6ae58d6c4f62a16c6d7f2f" "checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096" "checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6" @@ -3301,7 +3288,7 @@ dependencies = [ "checksum tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "b53aeb9d3f5ccf2ebb29e19788f96987fa1355f8fe45ea193928eaaaf3ae820f" "checksum tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "afbcdb0f0d2a1e4c440af82d7bbf0bf91a8a8c0575bcd20c05d15be7e9d3a02f" "checksum tokio-signal 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "dd6dc5276ea05ce379a16de90083ec80836440d5ef8a6a39545a3207373b8296" -"checksum tokio-sync 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3742b64166c1ee9121f1921aea5a726098458926a6b732d906ef23b1f3ef6f4f" +"checksum tokio-sync 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c73850a5ad497d73ccfcfc0ffb494a4502d93f35cb475cfeef4fcf2916d26040" "checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119" "checksum tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "c3fd86cb15547d02daa2b21aadaf4e37dee3368df38a526178a5afa3c034d2fb" "checksum tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2910970404ba6fa78c5539126a9ae2045d62e3713041e447f695f41405a120c6" @@ -3329,7 +3316,6 @@ dependencies = [ "checksum unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1" "checksum unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" -"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" "checksum utf-8 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "05e42f7c18b8f902290b009cde6d651262f956c98bc51bca4cd1d511c9cd85c7" "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" From 52cdffdfd45d5c1f9741eea2b33ba18aeba01adb Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 25 Feb 2019 18:11:16 +0100 Subject: [PATCH 65/82] Add PowerShell syntax Fix #613 --- .../content/syntax-highlighting.md | 1 + sublime_syntaxes/PowerShell.sublime-syntax | 466 ++++++++++++++++++ sublime_syntaxes/newlines.packdump | Bin 467306 -> 471422 bytes 3 files changed, 467 insertions(+) create mode 100644 sublime_syntaxes/PowerShell.sublime-syntax diff --git a/docs/content/documentation/content/syntax-highlighting.md b/docs/content/documentation/content/syntax-highlighting.md index bfb7f63..a824bf1 100644 --- a/docs/content/documentation/content/syntax-highlighting.md +++ b/docs/content/documentation/content/syntax-highlighting.md @@ -105,6 +105,7 @@ Here is a full list of the supported languages and the short names you can use: - Textile -> ["textile"] - XML -> ["xml", "xsd", "xslt", "tld", "dtml", "rss", "opml", "svg"] - YAML -> ["yaml", "yml", "sublime-syntax"] +- PowerShell -> ["ps1", "psm1", "psd1"] - SWI-Prolog -> ["pro"] - Reason -> ["re", "rei"] - CMake C Header -> ["h.in"] diff --git a/sublime_syntaxes/PowerShell.sublime-syntax b/sublime_syntaxes/PowerShell.sublime-syntax new file mode 100644 index 0000000..6348823 --- /dev/null +++ b/sublime_syntaxes/PowerShell.sublime-syntax @@ -0,0 +1,466 @@ +%YAML 1.2 +--- +# http://www.sublimetext.com/docs/3/syntax.html +name: PowerShell +file_extensions: + - ps1 + - psm1 + - psd1 +scope: source.powershell +contexts: + main: + - match: "<#" + captures: + 0: punctuation.definition.comment.block.begin.powershell + push: + - meta_scope: comment.block.powershell + - match: "#>" + captures: + 0: punctuation.definition.comment.block.end.powershell + pop: true + - include: commentEmbeddedDocs + - match: '[2-6]>&1|>>|>|<<|<|>|>\||[1-6]>|[1-6]>>' + scope: keyword.operator.redirection.powershell + - include: commands + - include: commentLine + - include: variable + - include: interpolatedStringContent + - include: function + - include: attribute + - include: UsingDirective + - include: type + - include: hashtable + - include: doubleQuotedString + - include: scriptblock + - include: doubleQuotedStringEscapes + - match: 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 z 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�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

1h#dL<^2Y1WV4)&4?D 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%0DJ7$!eRvo@jYb^(Q7G%y^JfBIEzAt(E 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%0D4BxX~zoJ9Wdd} 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 z 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%0AP1YC8#`JBOVre7;Of^@Q1-8ZxP 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

{ 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

a;tpf?1$0@@V6D9ah{cG<9^aoLBrX=t` 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 From 67ddabfa8b26984620935b1bf66c0a89b162d181 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Wed, 27 Feb 2019 17:59:09 +0100 Subject: [PATCH 66/82] Fix doc mentioning non-existent fields on sections --- docs/content/documentation/templates/pages-sections.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/content/documentation/templates/pages-sections.md b/docs/content/documentation/templates/pages-sections.md index c1402d4..3a8440c 100644 --- a/docs/content/documentation/templates/pages-sections.md +++ b/docs/content/documentation/templates/pages-sections.md @@ -70,8 +70,6 @@ with the following fields: content: String; title: String?; description: String?; -date: String?; -slug: String; path: String; // the path, split on '/' components: Array; From ea50b4ba904aa2f0a3b8fe04f02be597a417ed2a Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 8 Mar 2019 21:41:31 +0100 Subject: [PATCH 67/82] Update deps --- Cargo.lock | 751 ++++++++++++++++++++++++++--------------------------- 1 file changed, 372 insertions(+), 379 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f9a19bb..b3c4c49 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5,7 +5,7 @@ name = "MacTypes-sys" version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -15,20 +15,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "actix_derive 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-signal 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -43,18 +43,18 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "actix 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)", - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "tower-service 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -71,7 +71,7 @@ dependencies = [ "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "cookie 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -81,7 +81,7 @@ dependencies = [ "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", @@ -92,18 +92,18 @@ dependencies = [ "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -118,7 +118,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -140,7 +140,7 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "html5ever 0.22.5 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "maplit 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -178,7 +178,7 @@ name = "atty" version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -195,8 +195,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -206,17 +206,8 @@ name = "backtrace-sys" version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "base64" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -234,7 +225,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -273,7 +264,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "bytes" -version = "0.4.11" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -282,12 +273,12 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.29" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "cfg-if" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -297,7 +288,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -335,10 +326,10 @@ dependencies = [ "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "errors 0.1.0", "globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "syntect 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -358,7 +349,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -366,7 +357,7 @@ name = "core-foundation-sys" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -379,25 +370,10 @@ dependencies = [ [[package]] name = "crc32fast" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "crossbeam" -version = "0.6.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -420,7 +396,7 @@ dependencies = [ [[package]] name = "crossbeam-deque" -version = "0.6.3" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -433,9 +409,9 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -447,19 +423,27 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "crossbeam-queue" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "crossbeam-utils" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -467,8 +451,8 @@ name = "crossbeam-utils" version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -477,7 +461,7 @@ version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "csv-core 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -534,12 +518,12 @@ name = "elasticlunr-rs" version = "2.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "rust-stemmers 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", "strum 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "strum_macros 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -603,10 +587,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "encoding_rs" -version = "0.8.16" +version = "0.8.17" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -622,8 +606,8 @@ name = "errors" version = "0.1.0" dependencies = [ "image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)", - "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", + "syntect 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.3 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -643,7 +627,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -657,8 +641,8 @@ name = "filetime" version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -667,8 +651,8 @@ name = "flate2" version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "miniz-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "miniz_oxide_c_api 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -697,11 +681,11 @@ version = "0.1.0" dependencies = [ "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "errors 0.1.0", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.3 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -718,7 +702,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -726,7 +710,7 @@ name = "fsevent-sys" version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -754,7 +738,7 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "new_debug_unreachable 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "new_debug_unreachable 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -810,7 +794,7 @@ dependencies = [ "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -828,7 +812,7 @@ version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", @@ -836,7 +820,7 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "string 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -852,7 +836,7 @@ name = "hostname" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "winutil 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -866,7 +850,7 @@ dependencies = [ "markup5ever 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -874,7 +858,7 @@ name = "http" version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -899,10 +883,10 @@ dependencies = [ [[package]] name = "hyper" -version = "0.12.24" +version = "0.12.25" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "h2 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", @@ -912,13 +896,14 @@ dependencies = [ "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "want 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -928,11 +913,11 @@ name = "hyper-tls" version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.12.24 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper 0.12.25 (registry+https://github.com/rust-lang/crates.io-index)", "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -952,10 +937,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -986,10 +971,10 @@ version = "0.1.0" dependencies = [ "errors 0.1.0", "image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.3 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -1013,7 +998,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "inotify-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1021,7 +1006,7 @@ name = "inotify-sys" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1029,7 +1014,7 @@ name = "iovec" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1075,7 +1060,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "lazy_static" -version = "1.2.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1085,7 +1070,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "libc" -version = "0.2.49" +version = "0.2.50" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1095,7 +1080,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1107,26 +1092,34 @@ dependencies = [ "errors 0.1.0", "front_matter 0.1.0", "globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "rendering 0.1.0", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "slotmap 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.3 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] +[[package]] +name = "line-wrap" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "link_checker" version = "0.1.0" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "reqwest 0.9.10 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "reqwest 0.9.11 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1153,7 +1146,7 @@ name = "log" version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1186,9 +1179,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1204,7 +1197,7 @@ name = "memchr" version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1217,7 +1210,7 @@ name = "mime" version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "unicase 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unicase 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1236,8 +1229,8 @@ name = "miniz-sys" version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1253,9 +1246,9 @@ name = "miniz_oxide_c_api" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", "crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "miniz_oxide 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1269,7 +1262,7 @@ dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1294,7 +1287,7 @@ version = "0.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1314,13 +1307,13 @@ name = "native-tls" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl 0.10.18 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.41 (registry+https://github.com/rust-lang/crates.io-index)", - "schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)", + "schannel 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "security-framework 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1331,14 +1324,14 @@ name = "net2" version = "0.2.33" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "new_debug_unreachable" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1347,9 +1340,9 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1360,7 +1353,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "nom" -version = "4.2.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1369,7 +1362,7 @@ dependencies = [ [[package]] name = "notify" -version = "4.0.9" +version = "4.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1378,7 +1371,7 @@ dependencies = [ "fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "inotify 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1392,7 +1385,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1431,7 +1424,7 @@ name = "num_cpus" version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1440,8 +1433,8 @@ version = "4.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "onig_sys 69.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1450,21 +1443,21 @@ name = "onig_sys" version = "69.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "openssl" -version = "0.10.18" +version = "0.10.19" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.41 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1474,12 +1467,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "openssl-sys" -version = "0.9.41" +version = "0.9.42" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1505,7 +1499,7 @@ name = "parking_lot_core" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1543,7 +1537,7 @@ dependencies = [ "pest_meta 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1598,14 +1592,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "plist" -version = "0.3.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)", + "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "xml-rs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "line-wrap 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "xml-rs 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1660,7 +1655,7 @@ version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1673,7 +1668,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1684,13 +1679,13 @@ version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_os 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1739,19 +1734,19 @@ name = "rand_jitter" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand_os" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1790,8 +1785,8 @@ version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1830,7 +1825,7 @@ dependencies = [ [[package]] name = "regex" -version = "1.1.0" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1863,45 +1858,45 @@ dependencies = [ "config 0.1.0", "errors 0.1.0", "front_matter 0.1.0", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "link_checker 0.1.0", "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "syntect 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", - "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.3 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] [[package]] name = "reqwest" -version = "0.9.10" +version = "0.9.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "encoding_rs 0.8.16 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "encoding_rs 0.8.17 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.12.24 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper 0.12.25 (registry+https://github.com/rust-lang/crates.io-index)", "hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "libflate 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", "native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1921,8 +1916,8 @@ name = "rust-stemmers" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1966,7 +1961,7 @@ name = "sass-rs" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "sass-sys 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1975,18 +1970,18 @@ name = "sass-sys" version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "schannel" -version = "0.1.14" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2007,7 +2002,7 @@ dependencies = [ "ammonia 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "elasticlunr-rs 2.3.4 (registry+https://github.com/rust-lang/crates.io-index)", "errors 0.1.0", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "library 0.1.0", ] @@ -2018,7 +2013,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "core-foundation 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2029,7 +2024,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "MacTypes-sys 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2047,28 +2042,28 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde" -version = "1.0.88" +version = "1.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde_derive" -version = "1.0.88" +version = "1.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "serde_json" -version = "1.0.38" +version = "1.0.39" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2078,7 +2073,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2100,11 +2095,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "signal-hook" -version = "0.1.7" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arc-swap 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2125,11 +2120,11 @@ dependencies = [ "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "sass-rs 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "search 0.1.0", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", - "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.3 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -2161,8 +2156,8 @@ name = "socket2" version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2182,11 +2177,11 @@ name = "string_cache" version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "new_debug_unreachable 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "new_debug_unreachable 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", "precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2226,12 +2221,12 @@ dependencies = [ "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "syn" -version = "0.15.26" +version = "0.15.28" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2246,29 +2241,29 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "syntect" -version = "3.0.2" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bincode 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "flate2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "onig 4.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "plist 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "plist 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", "regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "yaml-rust 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "yaml-rust 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2276,8 +2271,8 @@ name = "tempfile" version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2293,12 +2288,12 @@ dependencies = [ "csv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "errors 0.1.0", "imageproc 0.1.0", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "library 0.1.0", "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "reqwest 0.9.10 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", + "reqwest 0.9.11 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.3 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", @@ -2316,22 +2311,22 @@ dependencies = [ [[package]] name = "tera" -version = "1.0.0-beta.2" +version = "1.0.0-beta.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "globwalk 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "unic-segment 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-segment 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "v_htmlescape 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "v_htmlescape 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2347,7 +2342,7 @@ name = "termion" version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2365,7 +2360,7 @@ name = "thread_local" version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2384,29 +2379,29 @@ name = "time" version = "0.1.42" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio" -version = "0.1.15" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-fs 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-sync 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-sync 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2417,14 +2412,14 @@ name = "tokio-codec" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-current-thread" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2442,39 +2437,40 @@ dependencies = [ [[package]] name = "tokio-fs" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-io" -version = "0.1.11" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-reactor" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-sync 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2483,21 +2479,22 @@ version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", - "signal-hook 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "signal-hook 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-sync" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2506,22 +2503,21 @@ name = "tokio-tcp" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-threadpool" -version = "0.1.11" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2547,13 +2543,13 @@ name = "tokio-udp" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2561,16 +2557,16 @@ name = "tokio-uds" version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2578,7 +2574,7 @@ name = "toml" version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2598,14 +2594,14 @@ dependencies = [ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2621,14 +2617,14 @@ dependencies = [ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2640,16 +2636,16 @@ name = "trust-dns-resolver" version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "ipconfig 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-proto 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2675,46 +2671,46 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "unic-char-property" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "unic-char-range 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-char-range 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "unic-char-range" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "unic-common" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "unic-segment" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "unic-ucd-segment 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-ucd-segment 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "unic-ucd-segment" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "unic-char-property 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "unic-char-range 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "unic-ucd-version 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-char-property 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-char-range 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-ucd-version 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "unic-ucd-version" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "unic-common 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unic-common 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2727,7 +2723,7 @@ dependencies = [ [[package]] name = "unicase" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2790,9 +2786,9 @@ name = "utils" version = "0.1.0" dependencies = [ "errors 0.1.0", - "serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tera 1.0.0-beta.3 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2817,10 +2813,10 @@ dependencies = [ [[package]] name = "v_escape" -version = "0.7.0" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "v_escape_derive 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "v_escape_derive 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)", "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2829,21 +2825,21 @@ name = "v_escape_derive" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "nom 4.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "nom 4.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "v_escape_derive" -version = "0.5.0" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "nom 4.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "nom 4.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2851,18 +2847,18 @@ name = "v_htmlescape" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "v_escape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "v_htmlescape" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "v_escape 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "v_escape 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2978,7 +2974,7 @@ version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3000,15 +2996,12 @@ dependencies = [ [[package]] name = "xml-rs" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", -] [[package]] name = "yaml-rust" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "linked-hash-map 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3025,8 +3018,8 @@ dependencies = [ "ctrlc 3.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "errors 0.1.0", "front_matter 0.1.0", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "notify 4.0.9 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "notify 4.0.10 (registry+https://github.com/rust-lang/crates.io-index)", "rebuild 0.1.0", "site 0.1.0", "termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3054,7 +3047,6 @@ dependencies = [ "checksum backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "cd5a90e2b463010cd0e0ce9a11d4a9d5d58d9f41d4a6ba3dcaf9e68b466e88b4" "checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6" "checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e" -"checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643" "checksum bincode 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3efe0b4c8eaeed8600549c29f538a6a11bf422858d0ed435b1d70ec4ab101190" "checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d" "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" @@ -3062,9 +3054,9 @@ dependencies = [ "checksum build_const 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "39092a32794787acd8525ee150305ff051b0aa6cc2abaf193924f5ab05425f39" "checksum byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "560c32574a12a89ecd91f5e742165893f86e3ab98d21f8ea548658eb9eef5f40" "checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb" -"checksum bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)" = "40ade3d27603c2cb345eb0912aec461a6dec7e06a4ae48589904e808335c7afa" -"checksum cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)" = "4390a3b5f4f6bce9c1d0c00128379df433e53777fdd30e92f16a529332baec4e" -"checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4" +"checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" +"checksum cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)" = "d01c69d08ff207f231f07196e30f84c70f1c815b04f980f8b7b01ff01f05eb92" +"checksum cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "11d43355396e872eefb45ce6342e4374ed7bc2b3a502d1b28e36d6e23c05d1f4" "checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878" "checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e" "checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" @@ -3073,13 +3065,13 @@ dependencies = [ "checksum core-foundation 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "286e0b41c3a20da26536c6000a280585d519fd07b3956b43aed8a79e9edce980" "checksum core-foundation-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "716c271e8613ace48344f723b60b900a93150271e5be206212d052bbc0883efa" "checksum crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb" -"checksum crc32fast 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e91d5240c6975ef33aeb5f148f35275c25eda8e8a5f95abe421978b05b8bf192" -"checksum crossbeam 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ad4c7ea749d9fb09e23c5cb17e3b70650860553a0e2744e38446b1803bf7db94" +"checksum crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1" "checksum crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "0f0ed1a4de2235cabda8558ff5840bffb97fcb64c97827f354a451307df5f72b" "checksum crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f739f8c5363aca78cfb059edf753d8f0d36908c348f3d8d1503f03d8b75d9cf3" -"checksum crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13" +"checksum crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b18cd2e169ad86297e6bc0ad9aa679aee9daa4f19e8163860faf7c164e4f5a71" "checksum crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "927121f5407de9956180ff5e936fe3cf4324279280001cd56b669d28ee7e9150" "checksum crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "04c9e3102cc2d69cd681412141b390abd55a362afc1540965dad0ad4d34280b4" +"checksum crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b" "checksum crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2760899e32a1d58d5abb31129f8fae5de75220bc2176e77ff7c627ae45c918d9" "checksum crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "f8306fcef4a7b563b76b7dd949ca48f52bc1141aa067d2ea09565f3e2652aa5c" "checksum csv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "9fd1c44c58078cfbeaf11fbb3eac9ae5534c23004ed770cc4bfb48e658ae4f04" @@ -3098,7 +3090,7 @@ dependencies = [ "checksum encoding-index-singlebyte 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3351d5acffb224af9ca265f435b859c7c01537c0849754d3db3fdf2bfe2ae84a" "checksum encoding-index-tradchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fd0e20d5688ce3cab59eb3ef3a2083a5c77bf496cb798dc6fcdb75f323890c18" "checksum encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569" -"checksum encoding_rs 0.8.16 (registry+https://github.com/rust-lang/crates.io-index)" = "0535f350c60aac0b87ccf28319abc749391e912192255b0c00a2c12c6917bd73" +"checksum encoding_rs 0.8.17 (registry+https://github.com/rust-lang/crates.io-index)" = "4155785c79f2f6701f185eb2e6b4caf0555ec03477cb4c70db67b465311620ed" "checksum error-chain 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6930e04918388a9a2e41d518c25cf679ccafe26733fb4127dbf21993f2575d46" "checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2" "checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1" @@ -3131,7 +3123,7 @@ dependencies = [ "checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83" "checksum humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" "checksum humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ca7e5f2e110db35f93b837c81797f3714500b81d517bf20c431b16d3ca4f114" -"checksum hyper 0.12.24 (registry+https://github.com/rust-lang/crates.io-index)" = "fdfa9b401ef6c4229745bb6e9b2529192d07b920eed624cdee2a82348cd550af" +"checksum hyper 0.12.25 (registry+https://github.com/rust-lang/crates.io-index)" = "7d5b6658b016965ae301fa995306db965c93677880ea70765a84235a96eae896" "checksum hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "32cd73f14ad370d3b4d4b7dce08f69b81536c82e39fcc89731930fe5788cd661" "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" "checksum ignore 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ad03ca67dc12474ecd91fdb94d758cbd20cb4e7a78ebe831df26a9b7511e1162" @@ -3146,10 +3138,11 @@ dependencies = [ "checksum jpeg-decoder 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "c8b7d43206b34b3f94ea9445174bda196e772049b9bddbc620c9d29b2d20110d" "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" "checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" -"checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1" +"checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" -"checksum libc 0.2.49 (registry+https://github.com/rust-lang/crates.io-index)" = "413f3dfc802c5dc91dc570b05125b6cda9855edfaa9825c9849807876376e70e" +"checksum libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)" = "aab692d7759f5cd8c859e169db98ae5b52c924add2af5fbbca11d12fefb567c1" "checksum libflate 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)" = "54d1ddf9c52870243c5689d7638d888331c1116aa5b398f3ba1acfa7d8758ca1" +"checksum line-wrap 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f30344350a2a51da54c1d53be93fade8a237e545dbcc4bdbe635413f2117cab9" "checksum linked-hash-map 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7860ec297f7008ff7a1e3382d7f7e1dcd69efc94751a2284bafc3d013c2aa939" "checksum linked-hash-map 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "70fb39025bc7cdd76305867c4eccf2f2dcf6e9a57f5b21a93e1c2d86cd03ec9e" "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" @@ -3173,11 +3166,11 @@ dependencies = [ "checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" "checksum native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ff8e08de0070bbf4c31f452ea2a70db092f36f6f2e4d897adf5674477d488fb2" "checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" -"checksum new_debug_unreachable 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "fe2deb65e9f08f6540e6766481b9dc3a36e73d2fdb96e82bc3cd56353fafe90a" +"checksum new_debug_unreachable 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f40f005c60db6e03bae699e414c58bf9aa7ea02a2d0b9bfbcf19286cc4c82b30" "checksum nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17" "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" -"checksum nom 4.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b30adc557058ce00c9d0d7cb3c6e0b5bc6f36e2e2eabe74b0ba726d194abd588" -"checksum notify 4.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "9cc7ed2bd4b7edad3ee93b659c38e53dabb619f7274e127a0fab054ad2bb998d" +"checksum nom 4.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "22293d25d3f33a8567cc8a1dc20f40c7eeb761ce83d0fcca059858580790cac3" +"checksum notify 4.0.10 (registry+https://github.com/rust-lang/crates.io-index)" = "abb1581693e44d8a0ec347ef12289625063f52a1dddc3f3c9befd5fc59e88943" "checksum num-derive 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d9fe8fcafd1b86a37ce8a1cfa15ae504817e0c8c2e7ad42767371461ac1d316d" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" "checksum num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "af3fdbbc3291a5464dc57b03860ec37ca6bf915ed6ee385e7c6c052c422b2124" @@ -3186,9 +3179,9 @@ dependencies = [ "checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba" "checksum onig 4.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a646989adad8a19f49be2090374712931c3a59835cb5277b4530f48b417f26e7" "checksum onig_sys 69.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388410bf5fa341f10e58e6db3975f4bea1ac30247dd79d37a9e5ced3cb4cc3b0" -"checksum openssl 0.10.18 (registry+https://github.com/rust-lang/crates.io-index)" = "b90119d71b0a3596588da04bf7c2c42f2978cfa1217a94119d8ec9e963c7729c" +"checksum openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)" = "84321fb9004c3bce5611188a644d6171f895fa2889d155927d528782edb21c5d" "checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" -"checksum openssl-sys 0.9.41 (registry+https://github.com/rust-lang/crates.io-index)" = "e4c77cdd67d31759b22aa72cfda3c65c12348f9e6c5420946b403c022fd0311a" +"checksum openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)" = "cb534d752bf98cf363b473950659ac2546517f9c6be9723771614ab3f03bbc9e" "checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13" "checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" "checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" @@ -3202,7 +3195,7 @@ dependencies = [ "checksum phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662" "checksum phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0" "checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c" -"checksum plist 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0c7316832d9ac5da02786bdc89a3faf0ca07070212b388766e969078fd593edc" +"checksum plist 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f4739851c08dd9a62a78beff2edf1a438517268b2c563c42fc6d9d3139e42d2a" "checksum png 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9adebf7fb91ccf5eac9da1a8e00e83cb8ae882c3e8d8e4ad59da73cb8c82a2c9" "checksum precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" "checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915" @@ -3218,7 +3211,7 @@ dependencies = [ "checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" "checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" "checksum rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b9ea758282efe12823e0d952ddb269d2e1897227e464919a554f2a03ef1b832" -"checksum rand_os 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b7c690732391ae0abafced5015ffb53656abfaec61b342290e5eb56b286a679d" +"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071" "checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44" "checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" "checksum rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "373814f27745b2686b350dd261bfd24576a6fb0e2c5919b3a2b6005f820b0473" @@ -3226,10 +3219,10 @@ dependencies = [ "checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" "checksum redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)" = "423e376fffca3dfa06c9e9790a9ccd282fafb3cc6e6397d01dbf64f9bacc6b85" "checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76" -"checksum regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "37e7cbbd370869ce2e8dff25c7018702d10b21a20ef7135316f8daecd6c25b7f" +"checksum regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "53ee8cfdddb2e0291adfb9f13d31d3bbe0a03c9a402c01b1e24188d86c35b24f" "checksum regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "8c2f35eedad5295fdf00a63d7d4b238135723f92b434ec06774dad15c7ab0861" "checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5" -"checksum reqwest 0.9.10 (registry+https://github.com/rust-lang/crates.io-index)" = "f205a95638627fc0d21c53901671b06f439dc2830311ff11ecdff34ae2d839a8" +"checksum reqwest 0.9.11 (registry+https://github.com/rust-lang/crates.io-index)" = "e542d9f077c126af32536b6aacc75bb7325400eab8cd0743543be5d91660780d" "checksum resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b263b4aa1b5de9ffc0054a2386f96992058bb6870aab516f8cdeb8a667d56dcb" "checksum rust-stemmers 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05928c187b85b38f6b98db43057a24f0245163635a5ce6325a4f77a833d646aa" "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" @@ -3240,20 +3233,20 @@ dependencies = [ "checksum same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8f20c4be53a8a1ff4c1f1b2bd14570d2f634628709752f0702ecdd2b3f9a5267" "checksum sass-rs 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90f8cf6e645aa843ffffcbdc1e8752b1f221dfa314c81895aeb229a77aea7e05" "checksum sass-sys 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "f88301b9780e715f1ef96b16d33a4d7d917c61ec1caccf26215ebc4bebca58dd" -"checksum schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "0e1a231dc10abf6749cfa5d7767f25888d484201accbd919b66ab5413c502d56" +"checksum schannel 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "f2f6abf258d99c3c1c5c2131d99d064e94b7b3dd5f416483057f308fea253339" "checksum scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum security-framework 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfab8dda0e7a327c696d893df9ffa19cadc4bd195797997f5223cf5831beaf05" "checksum security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3d6696852716b589dff9e886ff83778bb635150168e83afa8ac6b8a78cb82abc" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -"checksum serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)" = "9f301d728f2b94c9a7691c90f07b0b4e8a4517181d9461be94c04bddeb4bd850" -"checksum serde_derive 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)" = "beed18e6f5175aef3ba670e57c60ef3b1b74d250d962a26604bff4c80e970dd4" -"checksum serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)" = "27dce848e7467aa0e2fcaf0a413641499c0b745452aaca1194d24dedde9e13c9" +"checksum serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)" = "92514fb95f900c9b5126e32d020f5c6d40564c27a5ea6d1d7d9f157a96623560" +"checksum serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)" = "bb6eabf4b5914e88e24eea240bb7c9f9a2cbc1bbbe8d961d381975ec3c6b806c" +"checksum serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)" = "5a23aa71d4a4d43fdbfaac00eff68ba8a06a51759a89ac3304323e800c4dd40d" "checksum serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d48f9f99cd749a2de71d29da5f948de7f2764cc5a9d7f3c97e3514d4ee6eabf2" "checksum sha-1 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "51b9d1f3b5de8a167ab06834a7c883bd197f2191e1dda1a22d9ccfeedbf9aded" "checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" -"checksum signal-hook 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1f272d1b7586bec132ed427f532dd418d8beca1ca7f2caf7df35569b1415a4b4" +"checksum signal-hook 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "97a47ae722318beceb0294e6f3d601205a1e6abaa4437d9d33e3a212233e3021" "checksum siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac" "checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" "checksum slotmap 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4ed041f7f2ff35f2bf7d688bf30686976512f8300e37433c2c73ea9f4cf14b" @@ -3268,29 +3261,29 @@ dependencies = [ "checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550" "checksum strum 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f6c3a2071519ab6a48f465808c4c1ffdd00dfc8e93111d02b4fc5abab177676e" "checksum strum_macros 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8baacebd7b7c9b864d83a6ba7a246232983e277b86fa5cdec77f565715a4b136" -"checksum syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)" = "f92e629aa1d9c827b2bb8297046c1ccffc57c99b947a680d3ccff1f136a3bee9" +"checksum syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)" = "218aa5a01ab9805df6e9e48074c8d88f317cc9660b1ad6c3dabac2d627d185d6" "checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" -"checksum syntect 3.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e02dd9df97a68a2d005ace28ff24c610abfc3ce17afcfdb22a077645dabb599a" +"checksum syntect 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "72fed41b91655133c9819f68d0b9a194dcbf36aa46e80033b6e9ae169f58b211" "checksum tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "b86c784c88d98c801132806dadd3819ed29d8600836c4088e855cdf3e178ed8a" "checksum tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "707feda9f2582d5d680d733e38755547a3e8fb471e7ba11452ecfd9ce93a5d3b" -"checksum tera 1.0.0-beta.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c027da6522d5abaca1e6633ac7a1085a86ca00f3a60178dbd9f0df6eef51e9a" +"checksum tera 1.0.0-beta.3 (registry+https://github.com/rust-lang/crates.io-index)" = "dc35f9f4098f84b32579af1fd3d9c850d5c713ea2490c81e1f792a5fbb22e278" "checksum termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4096add70612622289f2fdcdbd5086dc81c1e2675e6ae58d6c4f62a16c6d7f2f" "checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096" "checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6" "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" "checksum tiff 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1e4834f28a0330cb9f3f2c87d2649dca723cb33802e2bdcf18da32759fbec7ce" "checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" -"checksum tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "e0500b88064f08bebddd0c0bed39e19f5c567a5f30975bee52b0c0d3e2eeb38c" +"checksum tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "fcaabb3cec70485d0df6e9454fe514393ad1c4070dee8915f11041e95630b230" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" -"checksum tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "331c8acc267855ec06eb0c94618dcbbfea45bed2d20b77252940095273fb58f6" +"checksum tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c756b04680eea21902a46fca4e9f410a2332c04995af590e07ff262e2193a9a3" "checksum tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30c6dbf2d1ad1de300b393910e8a3aa272b724a400b6531da03eed99e329fbf0" -"checksum tokio-fs 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0e9cbbc8a3698b7ab652340f46633364f9eaa928ddaaee79d8b8f356dd79a09d" -"checksum tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "b53aeb9d3f5ccf2ebb29e19788f96987fa1355f8fe45ea193928eaaaf3ae820f" -"checksum tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "afbcdb0f0d2a1e4c440af82d7bbf0bf91a8a8c0575bcd20c05d15be7e9d3a02f" +"checksum tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "3fe6dc22b08d6993916647d108a1a7d15b9cd29c4f4496c62b92c45b5041b7af" +"checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926" +"checksum tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6af16bfac7e112bea8b0442542161bfc41cbfa4466b580bdda7d18cb88b911ce" "checksum tokio-signal 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "dd6dc5276ea05ce379a16de90083ec80836440d5ef8a6a39545a3207373b8296" -"checksum tokio-sync 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c73850a5ad497d73ccfcfc0ffb494a4502d93f35cb475cfeef4fcf2916d26040" +"checksum tokio-sync 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1bf2b9dac2a0509b5cfd1df5aa25eafacb616a42a491a13604d6bbeab4486363" "checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119" -"checksum tokio-threadpool 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "c3fd86cb15547d02daa2b21aadaf4e37dee3368df38a526178a5afa3c034d2fb" +"checksum tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "742e511f6ce2298aeb86fc9ea0d8df81c2388c6ebae3dc8a7316e8c9df0df801" "checksum tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2910970404ba6fa78c5539126a9ae2045d62e3713041e447f695f41405a120c6" "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92" "checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" @@ -3303,14 +3296,14 @@ dependencies = [ "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" "checksum ucd-trie 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "71a9c5b1fe77426cf144cc30e49e955270f5086e31a6441dfa8b32efc09b9d77" "checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86" -"checksum unic-char-property 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "70aaa0e0c676362a3a4945c9f69b095201b11fbe967c7fc0e414b9c8dba89b20" -"checksum unic-char-range 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7232ba52475caa78979e29fcfd596f502e035bca9f8b42ae0061b24f7960c282" -"checksum unic-common 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "927243420dad0c87b8aa487c84d28dc2d66088d5383c1c3f1c352043a4b33b2a" -"checksum unic-segment 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7bf6ab996840832e606c29f54e9b37c2ceb03c24af640b6022b09fdeb0067f7f" -"checksum unic-ucd-segment 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "54959cc93f681cae3d977532c42181a5f363cb95625bfcc71854486e8a5640ff" -"checksum unic-ucd-version 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f6bfaa7ddcc6772ec63932876639daf4b1eeff7683e15c7f9247724d4a6c910" +"checksum unic-char-property 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a8c57a407d9b6fa02b4795eb81c5b6652060a15a7903ea981f3d723e6c0be221" +"checksum unic-char-range 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0398022d5f700414f6b899e10b8348231abf9173fa93144cbc1a43b9793c1fbc" +"checksum unic-common 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "80d7ff825a6a654ee85a63e80f92f054f904f21e7d12da4e22f9834a4aaa35bc" +"checksum unic-segment 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e4ed5d26be57f84f176157270c112ef57b86debac9cd21daaabbe56db0f88f23" +"checksum unic-ucd-segment 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2079c122a62205b421f499da10f3ee0f7697f012f55b675e002483c73ea34700" +"checksum unic-ucd-version 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "96bd2f2237fe450fcd0a1d2f5f4e91711124f7857ba2e964247776ebeeb7b0c4" "checksum unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33" -"checksum unicase 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9d3218ea14b4edcaccfa0df0a64a3792a2c32cc706f1b336e48867f9d3147f90" +"checksum unicase 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "41d17211f887da8e4a70a45b9536f26fc5de166b81e2d5d80de4a17fd22553bd" "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" "checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" "checksum unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1" @@ -3321,11 +3314,11 @@ dependencies = [ "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" "checksum uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0238db0c5b605dd1cf51de0f21766f97fba2645897024461d6a00c036819a768" "checksum v_escape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c8b50688edb86f4c092a1a9fe8bda004b0faa3197100897653809e97e09a2814" -"checksum v_escape 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "973c504626bd18920d388344f98cdcafe77affd37f0a69ff946842d8ee1c7ef3" +"checksum v_escape 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8865501b78eef9193c1b45486acf18ba889e5662eba98854d6fc59d8ecf3542d" "checksum v_escape_derive 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7cd994c63b487fef7aad31e5394ec04b9e24de7b32ea5251c9fb499cd2cbf44c" -"checksum v_escape_derive 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4592e378ab72caf41ee682531446526c5e16bb1aaa4f7cd673da893ade308b79" +"checksum v_escape_derive 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "306896ff4b75998501263a1dc000456de442e21d68fe8c8bdf75c66a33a58e23" "checksum v_htmlescape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "020cae817dc82693aa523f01087b291b1c7a9ac8cea5c12297963f21769fb27f" -"checksum v_htmlescape 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9bc3140d4809e7f14ea901910b1bc8e80ac0421978690205931c9d569b80d47a" +"checksum v_htmlescape 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7fbbe0fa88dd36f9c8cf61a218d4b953ba669de4d0785832f33cc72bd081e1be" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" "checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a" "checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" @@ -3344,5 +3337,5 @@ dependencies = [ "checksum winutil 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7daf138b6b14196e3830a588acf1e86966c694d3e8fb026fb105b8b5dca07e6e" "checksum ws 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)" = "329d3e6dd450a9c5c73024e1047f0be7e24121a68484eb0b5368977bee3cf8c3" "checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" -"checksum xml-rs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c1cb601d29fe2c2ac60a2b2e5e293994d87a1f6fa9687a31a15270f909be9c2" -"checksum yaml-rust 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "95acf0db5515d07da9965ec0e0ba6cc2d825e2caeb7303b66ca441729801254e" +"checksum xml-rs 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "541b12c998c5b56aa2b4e6f18f03664eef9a4fd0a246a55594efae6cc2d964b5" +"checksum yaml-rust 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "65923dd1784f44da1d2c3dbbc5e822045628c590ba72123e1c73d3c230c4434d" From eccb1e9986475736381a0d0956cdfd8468f43ba0 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 8 Mar 2019 23:26:57 +0100 Subject: [PATCH 68/82] Strip base_path from page/section paths To ensure we will get the right `content` directory. Fix #629 --- components/library/src/content/file_info.rs | 70 ++++++++++------ components/library/src/content/page.rs | 89 +++++++++++++++------ components/library/src/content/section.rs | 46 ++++++++--- components/library/src/pagination/mod.rs | 3 +- components/library/src/sorting.rs | 5 +- components/rebuild/src/lib.rs | 4 +- components/site/src/lib.rs | 4 +- 7 files changed, 153 insertions(+), 68 deletions(-) diff --git a/components/library/src/content/file_info.rs b/components/library/src/content/file_info.rs index 94311b5..8d58ebe 100644 --- a/components/library/src/content/file_info.rs +++ b/components/library/src/content/file_info.rs @@ -52,11 +52,13 @@ pub struct FileInfo { } impl FileInfo { - pub fn new_page(path: &Path) -> FileInfo { + pub fn new_page(path: &Path, base_path: &PathBuf) -> FileInfo { let file_path = path.to_path_buf(); - let mut parent = file_path.parent().unwrap().to_path_buf(); + let mut parent = file_path.parent().expect("Get parent of page").to_path_buf(); let name = path.file_stem().unwrap().to_string_lossy().to_string(); - let mut components = find_content_components(&file_path); + let mut components = find_content_components( + &file_path.strip_prefix(base_path).expect("Strip base path prefix for page"), + ); let relative = if !components.is_empty() { format!("{}/{}.md", components.join("/"), name) } else { @@ -85,11 +87,13 @@ impl FileInfo { } } - pub fn new_section(path: &Path) -> FileInfo { + pub fn new_section(path: &Path, base_path: &PathBuf) -> FileInfo { let file_path = path.to_path_buf(); - let parent = path.parent().unwrap().to_path_buf(); + let parent = path.parent().expect("Get parent of section").to_path_buf(); let name = path.file_stem().unwrap().to_string_lossy().to_string(); - let components = find_content_components(path); + let components = find_content_components( + &file_path.strip_prefix(base_path).expect("Strip base path prefix for section"), + ); let relative = if !components.is_empty() { format!("{}/{}.md", components.join("/"), name) } else { @@ -158,7 +162,7 @@ impl Default for FileInfo { #[cfg(test)] mod tests { - use std::path::Path; + use std::path::{Path, PathBuf}; use config::{Config, Language}; @@ -170,11 +174,22 @@ mod tests { find_content_components("/home/vincent/code/site/content/posts/tutorials/python.md"); assert_eq!(res, ["posts".to_string(), "tutorials".to_string()]); } + #[test] fn can_find_components_in_page_with_assets() { - let file = FileInfo::new_page(&Path::new( - "/home/vincent/code/site/content/posts/tutorials/python/index.md", - )); + let file = FileInfo::new_page( + &Path::new("/home/vincent/code/site/content/posts/tutorials/python/index.md"), + &PathBuf::new(), + ); + assert_eq!(file.components, ["posts".to_string(), "tutorials".to_string()]); + } + + #[test] + fn doesnt_fail_with_multiple_content_directories() { + 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"), + ); assert_eq!(file.components, ["posts".to_string(), "tutorials".to_string()]); } @@ -182,9 +197,10 @@ mod tests { fn can_find_valid_language_in_page() { let mut config = Config::default(); config.languages.push(Language { code: String::from("fr"), rss: false }); - let mut file = FileInfo::new_page(&Path::new( - "/home/vincent/code/site/content/posts/tutorials/python.fr.md", - )); + let mut file = FileInfo::new_page( + &Path::new("/home/vincent/code/site/content/posts/tutorials/python.fr.md"), + &PathBuf::new(), + ); let res = file.find_language(&config); assert!(res.is_ok()); assert_eq!(res.unwrap(), "fr"); @@ -194,9 +210,10 @@ mod tests { fn can_find_valid_language_in_page_with_assets() { let mut config = Config::default(); config.languages.push(Language { code: String::from("fr"), rss: false }); - let mut file = FileInfo::new_page(&Path::new( - "/home/vincent/code/site/content/posts/tutorials/python/index.fr.md", - )); + let mut file = FileInfo::new_page( + &Path::new("/home/vincent/code/site/content/posts/tutorials/python/index.fr.md"), + &PathBuf::new(), + ); assert_eq!(file.components, ["posts".to_string(), "tutorials".to_string()]); let res = file.find_language(&config); assert!(res.is_ok()); @@ -206,9 +223,10 @@ mod tests { #[test] fn do_nothing_on_unknown_language_in_page_with_i18n_off() { let config = Config::default(); - let mut file = FileInfo::new_page(&Path::new( - "/home/vincent/code/site/content/posts/tutorials/python.fr.md", - )); + let mut file = FileInfo::new_page( + &Path::new("/home/vincent/code/site/content/posts/tutorials/python.fr.md"), + &PathBuf::new(), + ); let res = file.find_language(&config); assert!(res.is_ok()); assert_eq!(res.unwrap(), config.default_language); @@ -218,9 +236,10 @@ mod tests { fn errors_on_unknown_language_in_page_with_i18n_on() { let mut config = Config::default(); config.languages.push(Language { code: String::from("it"), rss: false }); - let mut file = FileInfo::new_page(&Path::new( - "/home/vincent/code/site/content/posts/tutorials/python.fr.md", - )); + let mut file = FileInfo::new_page( + &Path::new("/home/vincent/code/site/content/posts/tutorials/python.fr.md"), + &PathBuf::new(), + ); let res = file.find_language(&config); assert!(res.is_err()); } @@ -229,9 +248,10 @@ mod tests { fn can_find_valid_language_in_section() { let mut config = Config::default(); config.languages.push(Language { code: String::from("fr"), rss: false }); - let mut file = FileInfo::new_section(&Path::new( - "/home/vincent/code/site/content/posts/tutorials/_index.fr.md", - )); + let mut file = FileInfo::new_section( + &Path::new("/home/vincent/code/site/content/posts/tutorials/_index.fr.md"), + &PathBuf::new(), + ); let res = file.find_language(&config); assert!(res.is_ok()); assert_eq!(res.unwrap(), "fr"); diff --git a/components/library/src/content/page.rs b/components/library/src/content/page.rs index 8383e5b..679764d 100644 --- a/components/library/src/content/page.rs +++ b/components/library/src/content/page.rs @@ -79,11 +79,11 @@ pub struct Page { } impl Page { - pub fn new>(file_path: P, meta: PageFrontMatter) -> Page { + pub fn new>(file_path: P, meta: PageFrontMatter, base_path: &PathBuf) -> Page { let file_path = file_path.as_ref(); Page { - file: FileInfo::new_page(file_path), + file: FileInfo::new_page(file_path, base_path), meta, ancestors: vec![], raw_content: "".to_string(), @@ -114,9 +114,14 @@ impl Page { /// Parse a page given the content of the .md file /// Files without front matter or with invalid front matter are considered /// erroneous - pub fn parse(file_path: &Path, content: &str, config: &Config) -> Result { + pub fn parse( + file_path: &Path, + content: &str, + config: &Config, + base_path: &PathBuf, + ) -> Result { let (meta, content) = split_page_content(file_path, content)?; - let mut page = Page::new(file_path, meta); + let mut page = Page::new(file_path, meta, base_path); page.lang = page.file.find_language(config)?; @@ -196,10 +201,14 @@ impl Page { } /// Read and parse a .md file into a Page struct - pub fn from_file>(path: P, config: &Config) -> Result { + pub fn from_file>( + path: P, + config: &Config, + base_path: &PathBuf, + ) -> Result { let path = path.as_ref(); let content = read_file(path)?; - let mut page = Page::parse(path, &content, config)?; + let mut page = Page::parse(path, &content, config, base_path)?; if page.file.name == "index" { let parent_dir = path.parent().unwrap(); @@ -329,7 +338,7 @@ mod tests { use std::collections::HashMap; use std::fs::{create_dir, File}; use std::io::Write; - use std::path::Path; + use std::path::{Path, PathBuf}; use globset::{Glob, GlobSetBuilder}; use tempfile::tempdir; @@ -348,7 +357,7 @@ description = "hey there" slug = "hello-world" +++ Hello world"#; - let res = Page::parse(Path::new("post.md"), content, &Config::default()); + let res = Page::parse(Path::new("post.md"), content, &Config::default(), &PathBuf::new()); assert!(res.is_ok()); let mut page = res.unwrap(); page.render_markdown( @@ -374,7 +383,8 @@ Hello world"#; Hello world"#; let mut conf = Config::default(); conf.base_url = "http://hello.com/".to_string(); - let res = Page::parse(Path::new("content/posts/intro/start.md"), content, &conf); + let res = + Page::parse(Path::new("content/posts/intro/start.md"), content, &conf, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.path, "posts/intro/hello-world/"); @@ -390,7 +400,7 @@ Hello world"#; +++ Hello world"#; let config = Config::default(); - let res = Page::parse(Path::new("start.md"), content, &config); + let res = Page::parse(Path::new("start.md"), content, &config, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.path, "hello-world/"); @@ -406,7 +416,12 @@ Hello world"#; +++ Hello world"#; let config = Config::default(); - let res = Page::parse(Path::new("content/posts/intro/start.md"), content, &config); + let res = Page::parse( + Path::new("content/posts/intro/start.md"), + content, + &config, + &PathBuf::new(), + ); assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.path, "hello-world/"); @@ -422,7 +437,12 @@ Hello world"#; +++ Hello world"#; let config = Config::default(); - let res = Page::parse(Path::new("content/posts/intro/start.md"), content, &config); + let res = Page::parse( + Path::new("content/posts/intro/start.md"), + content, + &config, + &PathBuf::new(), + ); assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.path, "hello-world/"); @@ -438,14 +458,15 @@ Hello world"#; slug = "hello-world" +++ Hello world"#; - let res = Page::parse(Path::new("start.md"), content, &Config::default()); + let res = Page::parse(Path::new("start.md"), content, &Config::default(), &PathBuf::new()); assert!(res.is_err()); } #[test] fn can_make_slug_from_non_slug_filename() { let config = Config::default(); - let res = Page::parse(Path::new(" file with space.md"), "+++\n+++", &config); + let res = + Page::parse(Path::new(" file with space.md"), "+++\n+++", &config, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.slug, "file-with-space"); @@ -461,7 +482,7 @@ Hello world"#; Hello world "# .to_string(); - let res = Page::parse(Path::new("hello.md"), &content, &config); + 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) @@ -483,7 +504,11 @@ Hello world File::create(nested_path.join("graph.jpg")).unwrap(); File::create(nested_path.join("fail.png")).unwrap(); - let res = Page::from_file(nested_path.join("index.md").as_path(), &Config::default()); + let res = Page::from_file( + nested_path.join("index.md").as_path(), + &Config::default(), + &PathBuf::new(), + ); assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.file.parent, path.join("content").join("posts")); @@ -506,7 +531,11 @@ Hello world File::create(nested_path.join("graph.jpg")).unwrap(); File::create(nested_path.join("fail.png")).unwrap(); - let res = Page::from_file(nested_path.join("index.md").as_path(), &Config::default()); + let res = Page::from_file( + nested_path.join("index.md").as_path(), + &Config::default(), + &PathBuf::new(), + ); assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.file.parent, path.join("content").join("posts")); @@ -530,7 +559,11 @@ Hello world File::create(nested_path.join("graph.jpg")).unwrap(); File::create(nested_path.join("fail.png")).unwrap(); - let res = Page::from_file(nested_path.join("index.md").as_path(), &Config::default()); + let res = Page::from_file( + nested_path.join("index.md").as_path(), + &Config::default(), + &PathBuf::new(), + ); assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.file.parent, path.join("content").join("posts")); @@ -559,7 +592,7 @@ Hello world let mut config = Config::default(); config.ignored_content_globset = Some(gsb.build().unwrap()); - let res = Page::from_file(nested_path.join("index.md").as_path(), &config); + let res = Page::from_file(nested_path.join("index.md").as_path(), &config, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); @@ -576,7 +609,7 @@ Hello world Hello world "# .to_string(); - let res = Page::parse(Path::new("2018-10-08_hello.md"), &content, &config); + let res = Page::parse(Path::new("2018-10-08_hello.md"), &content, &config, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); @@ -593,7 +626,12 @@ Hello world Hello world "# .to_string(); - let res = Page::parse(Path::new("2018-10-02T15:00:00Z-hello.md"), &content, &config); + let res = Page::parse( + Path::new("2018-10-02T15:00:00Z-hello.md"), + &content, + &config, + &PathBuf::new(), + ); assert!(res.is_ok()); let page = res.unwrap(); @@ -611,7 +649,7 @@ date = 2018-09-09 Hello world "# .to_string(); - let res = Page::parse(Path::new("2018-10-08_hello.md"), &content, &config); + let res = Page::parse(Path::new("2018-10-08_hello.md"), &content, &config, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); @@ -628,7 +666,7 @@ Hello world +++ Bonjour le monde"# .to_string(); - let res = Page::parse(Path::new("hello.fr.md"), &content, &config); + let res = Page::parse(Path::new("hello.fr.md"), &content, &config, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.lang, "fr".to_string()); @@ -645,7 +683,8 @@ Bonjour le monde"# +++ Bonjour le monde"# .to_string(); - let res = Page::parse(Path::new("2018-10-08_hello.fr.md"), &content, &config); + let res = + Page::parse(Path::new("2018-10-08_hello.fr.md"), &content, &config, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.meta.date, Some("2018-10-08".to_string())); @@ -664,7 +703,7 @@ path = "bonjour" +++ Bonjour le monde"# .to_string(); - let res = Page::parse(Path::new("hello.fr.md"), &content, &config); + let res = Page::parse(Path::new("hello.fr.md"), &content, &config, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); assert_eq!(page.lang, "fr".to_string()); diff --git a/components/library/src/content/section.rs b/components/library/src/content/section.rs index 84166e8..ebc9ca1 100644 --- a/components/library/src/content/section.rs +++ b/components/library/src/content/section.rs @@ -59,11 +59,15 @@ pub struct Section { } impl Section { - pub fn new>(file_path: P, meta: SectionFrontMatter) -> Section { + pub fn new>( + file_path: P, + meta: SectionFrontMatter, + base_path: &PathBuf, + ) -> Section { let file_path = file_path.as_ref(); Section { - file: FileInfo::new_section(file_path), + file: FileInfo::new_section(file_path, base_path), meta, ancestors: vec![], path: "".to_string(), @@ -84,9 +88,14 @@ impl Section { } } - pub fn parse(file_path: &Path, content: &str, config: &Config) -> Result

{ + pub fn parse( + file_path: &Path, + content: &str, + config: &Config, + base_path: &PathBuf, + ) -> Result
{ let (meta, content) = split_section_content(file_path, content)?; - let mut section = Section::new(file_path, meta); + let mut section = Section::new(file_path, meta, base_path); section.lang = section.file.find_language(config)?; section.raw_content = content; let (word_count, reading_time) = get_reading_analytics(§ion.raw_content); @@ -109,10 +118,14 @@ impl Section { } /// Read and parse a .md file into a Page struct - pub fn from_file>(path: P, config: &Config) -> Result
{ + pub fn from_file>( + path: P, + config: &Config, + base_path: &PathBuf, + ) -> Result
{ let path = path.as_ref(); let content = read_file(path)?; - let mut section = Section::parse(path, &content, config)?; + let mut section = Section::parse(path, &content, config, base_path)?; let parent_dir = path.parent().unwrap(); let assets = find_related_assets(parent_dir); @@ -250,7 +263,7 @@ impl Default for Section { mod tests { use std::fs::{create_dir, File}; use std::io::Write; - use std::path::Path; + use std::path::{Path, PathBuf}; use globset::{Glob, GlobSetBuilder}; use tempfile::tempdir; @@ -272,7 +285,11 @@ mod tests { File::create(nested_path.join("graph.jpg")).unwrap(); File::create(nested_path.join("fail.png")).unwrap(); - let res = Section::from_file(nested_path.join("_index.md").as_path(), &Config::default()); + let res = Section::from_file( + nested_path.join("_index.md").as_path(), + &Config::default(), + &PathBuf::new(), + ); assert!(res.is_ok()); let section = res.unwrap(); assert_eq!(section.assets.len(), 3); @@ -298,7 +315,8 @@ mod tests { let mut config = Config::default(); config.ignored_content_globset = Some(gsb.build().unwrap()); - let res = Section::from_file(nested_path.join("_index.md").as_path(), &config); + let res = + Section::from_file(nested_path.join("_index.md").as_path(), &config, &PathBuf::new()); assert!(res.is_ok()); let page = res.unwrap(); @@ -315,7 +333,12 @@ mod tests { +++ Bonjour le monde"# .to_string(); - let res = Section::parse(Path::new("content/hello/nested/_index.fr.md"), &content, &config); + let res = Section::parse( + Path::new("content/hello/nested/_index.fr.md"), + &content, + &config, + &PathBuf::new(), + ); assert!(res.is_ok()); let section = res.unwrap(); assert_eq!(section.lang, "fr".to_string()); @@ -332,7 +355,8 @@ Bonjour le monde"# +++ Bonjour le monde"# .to_string(); - let res = Section::parse(Path::new("content/_index.fr.md"), &content, &config); + let res = + Section::parse(Path::new("content/_index.fr.md"), &content, &config, &PathBuf::new()); assert!(res.is_ok()); let section = res.unwrap(); assert_eq!(section.lang, "fr".to_string()); diff --git a/components/library/src/pagination/mod.rs b/components/library/src/pagination/mod.rs index fd7f57f..2fc9203 100644 --- a/components/library/src/pagination/mod.rs +++ b/components/library/src/pagination/mod.rs @@ -228,6 +228,7 @@ impl<'a> Paginator<'a> { #[cfg(test)] mod tests { + use std::path::PathBuf; use tera::to_value; use config::Taxonomy as TaxonomyConfig; @@ -242,7 +243,7 @@ mod tests { let mut f = SectionFrontMatter::default(); f.paginate_by = Some(2); f.paginate_path = "page".to_string(); - let mut s = Section::new("content/_index.md", f); + let mut s = Section::new("content/_index.md", f, &PathBuf::new()); if !is_index { s.path = "posts/".to_string(); s.permalink = "https://vincent.is/posts/".to_string(); diff --git a/components/library/src/sorting.rs b/components/library/src/sorting.rs index 20844d8..c6cfd67 100644 --- a/components/library/src/sorting.rs +++ b/components/library/src/sorting.rs @@ -113,6 +113,7 @@ pub fn find_siblings(sorted: Vec<(&Key, bool)>) -> Vec<(Key, Option, Option #[cfg(test)] mod tests { use slotmap::DenseSlotMap; + use std::path::PathBuf; use super::{find_siblings, sort_pages_by_date, sort_pages_by_weight}; use content::Page; @@ -122,13 +123,13 @@ mod tests { let mut front_matter = PageFrontMatter::default(); front_matter.date = Some(date.to_string()); front_matter.date_to_datetime(); - Page::new("content/hello.md", front_matter) + 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); - Page::new("content/hello.md", front_matter) + Page::new("content/hello.md", front_matter, &PathBuf::new()) } #[test] diff --git a/components/rebuild/src/lib.rs b/components/rebuild/src/lib.rs index a93ef7f..32f8e58 100644 --- a/components/rebuild/src/lib.rs +++ b/components/rebuild/src/lib.rs @@ -131,7 +131,7 @@ fn delete_element(site: &mut Site, path: &Path, is_section: bool) -> Result<()> /// Handles a `_index.md` (a section) being edited in some ways fn handle_section_editing(site: &mut Site, path: &Path) -> Result<()> { - let section = Section::from_file(path, &site.config)?; + let section = Section::from_file(path, &site.config, &site.base_path)?; let pathbuf = path.to_path_buf(); match site.add_section(section, true)? { // Updating a section @@ -193,7 +193,7 @@ macro_rules! render_parent_sections { /// Handles a page being edited in some ways fn handle_page_editing(site: &mut Site, path: &Path) -> Result<()> { - let page = Page::from_file(path, &site.config)?; + let page = Page::from_file(path, &site.config, &site.base_path)?; let pathbuf = path.to_path_buf(); match site.add_page(page, true)? { // Updating a page diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 643a10d..634664d 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -210,7 +210,7 @@ impl Site { .into_par_iter() .map(|entry| { let path = entry.as_path(); - Section::from_file(path, config) + Section::from_file(path, config, &self.base_path) }) .collect::>() }; @@ -222,7 +222,7 @@ impl Site { .into_par_iter() .map(|entry| { let path = entry.as_path(); - Page::from_file(path, config) + Page::from_file(path, config, &self.base_path) }) .collect::>() }; From 135dc5d5bc845b624a057af211a8b9cf5906ae8b Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 11 Mar 2019 20:21:13 +0100 Subject: [PATCH 69/82] Change default directory for load_data --- CHANGELOG.md | 1 + components/site/src/lib.rs | 2 +- .../templates/src/global_fns/load_data.rs | 21 +++++++------------ 3 files changed, 10 insertions(+), 14 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index becfe36..0e700a2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ a section - The table of content for a page/section is now only available as the `toc` variable when rendering it and not anymore on the `page`/`section` variable +- Default directory for `load_data` is now the root of the site instead of the `content` directory ### Other - Add support for content in multiple languages diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 634664d..60d9afc 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -349,7 +349,7 @@ impl Site { ); self.tera.register_function( "load_data", - global_fns::LoadData::new(self.content_path.clone(), self.base_path.clone()), + global_fns::LoadData::new(self.base_path.clone()), ); self.tera.register_function("trans", global_fns::Trans::new(self.config.clone())); self.tera.register_function( diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 48b7176..5bc506f 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -174,22 +174,21 @@ fn get_output_format_from_args( /// Currently the supported formats are json, toml, csv and plain text #[derive(Debug)] pub struct LoadData { - content_path: PathBuf, base_path: PathBuf, client: Arc>, result_cache: Arc>>, } impl LoadData { - pub fn new(content_path: PathBuf, base_path: PathBuf) -> Self { + pub fn new(base_path: PathBuf) -> Self { let client = Arc::new(Mutex::new(Client::builder().build().expect("reqwest client build"))); let result_cache = Arc::new(Mutex::new(HashMap::new())); - Self { content_path, base_path, client, result_cache } + Self { base_path, client, result_cache } } } impl TeraFn for LoadData { fn call(&self, args: &HashMap) -> Result { - let data_source = get_data_source_from_args(&self.content_path, &args)?; + let data_source = get_data_source_from_args(&self.base_path, &args)?; let file_format = get_output_format_from_args(&args, &data_source)?; let cache_key = data_source.get_cache_key(&file_format); @@ -334,7 +333,7 @@ mod tests { #[test] fn fails_when_missing_file() { let static_fn = - LoadData::new(PathBuf::from("../utils/test-files"), PathBuf::from("../utils")); + LoadData::new(PathBuf::from("../utils")); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("../../../READMEE.md").unwrap()); let result = static_fn.call(&args); @@ -345,9 +344,9 @@ mod tests { #[test] fn cant_load_outside_content_dir() { let static_fn = - LoadData::new(PathBuf::from("../utils/test-files"), PathBuf::from("../utils")); + LoadData::new(PathBuf::from(PathBuf::from("../utils"))); let mut args = HashMap::new(); - args.insert("path".to_string(), to_value("../../../README.md").unwrap()); + 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()); @@ -395,7 +394,7 @@ mod tests { #[test] fn can_load_remote_data() { - let static_fn = LoadData::new(PathBuf::new(), PathBuf::new()); + let static_fn = LoadData::new(PathBuf::new()); let mut args = HashMap::new(); args.insert("url".to_string(), to_value("https://httpbin.org/json").unwrap()); args.insert("format".to_string(), to_value("json").unwrap()); @@ -408,7 +407,7 @@ mod tests { #[test] fn fails_when_request_404s() { - let static_fn = LoadData::new(PathBuf::new(), PathBuf::new()); + let static_fn = LoadData::new(PathBuf::new()); let mut args = HashMap::new(); args.insert("url".to_string(), to_value("https://httpbin.org/status/404/").unwrap()); args.insert("format".to_string(), to_value("json").unwrap()); @@ -424,7 +423,6 @@ mod tests { fn can_load_toml() { let static_fn = LoadData::new( PathBuf::from("../utils/test-files"), - PathBuf::from("../utils/test-files"), ); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.toml").unwrap()); @@ -446,7 +444,6 @@ mod tests { fn can_load_csv() { let static_fn = LoadData::new( PathBuf::from("../utils/test-files"), - PathBuf::from("../utils/test-files"), ); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.csv").unwrap()); @@ -469,7 +466,6 @@ mod tests { fn bad_csv_should_result_in_error() { let static_fn = LoadData::new( PathBuf::from("../utils/test-files"), - PathBuf::from("../utils/test-files"), ); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("uneven_rows.csv").unwrap()); @@ -492,7 +488,6 @@ mod tests { fn can_load_json() { let static_fn = LoadData::new( PathBuf::from("../utils/test-files"), - PathBuf::from("../utils/test-files"), ); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.json").unwrap()); From 3b8a95eb8ff54f435b82f996cb113cbd84bc5318 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 11 Mar 2019 20:25:28 +0100 Subject: [PATCH 70/82] Generate assets before rendering templates --- components/site/src/lib.rs | 38 ++++++++++++++++++++------------------ 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 60d9afc..1d3c27e 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -536,6 +536,26 @@ impl Site { /// Deletes the `public` directory and builds the site pub fn build(&self) -> Result<()> { self.clean()?; + + // Generate/move all assets before rendering any content + if let Some(ref theme) = self.config.theme { + let theme_path = self.base_path.join("themes").join(theme); + if theme_path.join("sass").exists() { + self.compile_sass(&theme_path)?; + } + } + + if self.config.compile_sass { + self.compile_sass(&self.base_path)?; + } + + self.process_images()?; + self.copy_static_directories()?; + + if self.config.build_search_index { + self.build_search_index()?; + } + // Render aliases first to allow overwriting self.render_aliases()?; self.render_sections()?; @@ -570,24 +590,6 @@ impl Site { self.render_robots()?; self.render_taxonomies()?; - if let Some(ref theme) = self.config.theme { - let theme_path = self.base_path.join("themes").join(theme); - if theme_path.join("sass").exists() { - self.compile_sass(&theme_path)?; - } - } - - if self.config.compile_sass { - self.compile_sass(&self.base_path)?; - } - - self.process_images()?; - self.copy_static_directories()?; - - if self.config.build_search_index { - self.build_search_index()?; - } - Ok(()) } From 2a0d0b9b77ae2298c3f50bc5fcaea2edfb752e0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Mariaux?= <35563610+newbisebi@users.noreply.github.com> Date: Thu, 14 Mar 2019 20:57:22 +0100 Subject: [PATCH 71/82] Split sitemap (#619) Split sitemap when it is getting too big --- .github/ISSUE_TEMPLATE/documentation.md | 2 +- components/rebuild/src/lib.rs | 1 + components/site/src/lib.rs | 49 +++++++++++++++---- components/templates/src/builtins/sitemap.xml | 22 ++------- .../src/builtins/split_sitemap_index.xml | 7 +++ components/templates/src/lib.rs | 3 +- 6 files changed, 55 insertions(+), 29 deletions(-) create mode 100644 components/templates/src/builtins/split_sitemap_index.xml diff --git a/.github/ISSUE_TEMPLATE/documentation.md b/.github/ISSUE_TEMPLATE/documentation.md index d046687..8e455bd 100644 --- a/.github/ISSUE_TEMPLATE/documentation.md +++ b/.github/ISSUE_TEMPLATE/documentation.md @@ -10,5 +10,5 @@ What is the issue? Is the documentation unclear? Is it missing information? ## Proposed solution A quick explanation of what you would like to see to solve the issue. -If you want to add content, please explain what you were looking fod and what was +If you want to add content, please explain what you were looking for and what was your process while looking at the current documentation. diff --git a/components/rebuild/src/lib.rs b/components/rebuild/src/lib.rs index 32f8e58..41b4fc4 100644 --- a/components/rebuild/src/lib.rs +++ b/components/rebuild/src/lib.rs @@ -369,6 +369,7 @@ pub fn after_template_change(site: &mut Site, path: &Path) -> Result<()> { match filename { "sitemap.xml" => site.render_sitemap(), "rss.xml" => site.render_rss_feed(site.library.read().unwrap().pages_values(), None), + "split_sitemap_index.xml" => site.render_sitemap(), "robots.txt" => site.render_robots(), "single.html" | "list.html" => site.render_taxonomies(), "page.html" => { diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index 1d3c27e..d8bada6 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -788,8 +788,6 @@ impl Site { pub fn render_sitemap(&self) -> Result<()> { ensure_directory_exists(&self.output_path)?; - let mut context = Context::new(); - let mut pages = self .library .read() @@ -806,7 +804,6 @@ impl Site { }) .collect::>(); pages.sort_by(|a, b| a.permalink.cmp(&b.permalink)); - context.insert("pages", &pages); let mut sections = self .library @@ -835,7 +832,6 @@ impl Site { } } sections.sort_by(|a, b| a.permalink.cmp(&b.permalink)); - context.insert("sections", §ions); let mut taxonomies = vec![]; for taxonomy in &self.taxonomies { @@ -869,13 +865,46 @@ impl Site { taxonomies.push(terms); } - context.insert("taxonomies", &taxonomies); - context.insert("config", &self.config); - - let sitemap = &render_template("sitemap.xml", &self.tera, context, &self.config.theme)?; - - create_file(&self.output_path.join("sitemap.xml"), sitemap)?; + // Group all sitemap entries in one vector + let mut all_sitemap_entries = Vec::new(); + all_sitemap_entries.append(&mut pages); + all_sitemap_entries.append(&mut sections); + for terms in taxonomies { + let mut terms = terms; + all_sitemap_entries.append(&mut terms); + } + // Count total number of sitemap entries to include in sitemap + let total_number = all_sitemap_entries.len(); + let sitemap_limit = 30000; + + if total_number < sitemap_limit { + // Create single sitemap + let mut context = Context::new(); + context.insert("sitemap_entries", &all_sitemap_entries); + let sitemap = &render_template("sitemap.xml", &self.tera, context, &self.config.theme)?; + create_file(&self.output_path.join("sitemap.xml"), sitemap)?; + return Ok(()) + } + + // Create multiple sitemaps (max 30000 urls each) + let mut sitemap_index = Vec::new(); + for (i, chunk) in all_sitemap_entries.chunks(sitemap_limit).enumerate() { + let mut context = Context::new(); + context.insert("sitemap_entries", &chunk); + let sitemap = &render_template("sitemap.xml", &self.tera, context, &self.config.theme)?; + let file_name = format!("sitemap{}.xml", i+1); + create_file(&self.output_path.join(&file_name), sitemap)?; + let mut sitemap_url:String = self.config.make_permalink(&file_name); + sitemap_url.pop(); // Remove trailing slash + sitemap_index.push(sitemap_url); + } + // Create main sitemap that reference numbered sitemaps + let mut main_context = Context::new(); + main_context.insert("sitemaps", &sitemap_index); + let sitemap = &render_template("split_sitemap_index.xml", &self.tera, main_context, &self.config.theme)?; + create_file(&self.output_path.join("sitemap.xml"), sitemap)?; + Ok(()) } diff --git a/components/templates/src/builtins/sitemap.xml b/components/templates/src/builtins/sitemap.xml index 6eba3d7..3e92454 100644 --- a/components/templates/src/builtins/sitemap.xml +++ b/components/templates/src/builtins/sitemap.xml @@ -1,22 +1,10 @@ - {% for page in pages %} + {% for sitemap_entry in sitemap_entries %} - {{ page.permalink | safe }} - {% if page.date %} - {{ page.date }} + {{ sitemap_entry.permalink | safe }} + {% if sitemap_entry.date %} + {{ sitemap_entry.date }} {% endif %} {% endfor %} - {% for section in sections %} - - {{ section.permalink | safe }} - - {% endfor %} - {% for taxonomy in taxonomies %} - {% for entry in taxonomy %} - - {{ entry.permalink | safe }} - - {% endfor %} - {% endfor %} - + \ No newline at end of file diff --git a/components/templates/src/builtins/split_sitemap_index.xml b/components/templates/src/builtins/split_sitemap_index.xml new file mode 100644 index 0000000..1b883e4 --- /dev/null +++ b/components/templates/src/builtins/split_sitemap_index.xml @@ -0,0 +1,7 @@ + + {% for sitemap in sitemaps %} + + {{ sitemap }} + + {% endfor %} + \ No newline at end of file diff --git a/components/templates/src/lib.rs b/components/templates/src/lib.rs index 05f782b..eec3b1f 100644 --- a/components/templates/src/lib.rs +++ b/components/templates/src/lib.rs @@ -35,7 +35,8 @@ lazy_static! { ("__zola_builtins/rss.xml", include_str!("builtins/rss.xml")), ("__zola_builtins/sitemap.xml", include_str!("builtins/sitemap.xml")), ("__zola_builtins/robots.txt", include_str!("builtins/robots.txt")), - ("anchor-link.html", include_str!("builtins/anchor-link.html")), + ("__zola_builtins/split_sitemap_index.xml", include_str!("builtins/split_sitemap_index.xml")), + ("__zola_builtins/anchor-link.html", include_str!("builtins/anchor-link.html")), ( "__zola_builtins/shortcodes/youtube.html", include_str!("builtins/shortcodes/youtube.html"), From 7baf08cef2fe63ffe47397fda3d27347492156fc Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 14 Mar 2019 21:15:01 +0100 Subject: [PATCH 72/82] Update docs for sitemap --- CHANGELOG.md | 2 ++ components/site/src/lib.rs | 10 ++++---- components/templates/src/builtins/sitemap.xml | 4 ++-- .../documentation/templates/sitemap.md | 23 ++++++++++++------- 4 files changed, 24 insertions(+), 15 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0e700a2..15da4c0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ a section - The table of content for a page/section is now only available as the `toc` variable when rendering it and not anymore on the `page`/`section` variable - Default directory for `load_data` is now the root of the site instead of the `content` directory +- Change variable sent to the sitemap template, see documentation for details ### Other - Add support for content in multiple languages @@ -17,6 +18,7 @@ rendering it and not anymore on the `page`/`section` variable - Add Dracula syntax highlighting theme - Fix using inline styles in headers - Fix sections with render=false being shown in sitemap +- Sitemap is now split when there are more than 30 000 links in it ## 0.5.1 (2018-12-14) diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index d8bada6..f0a4d5c 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -881,17 +881,17 @@ impl Site { if total_number < sitemap_limit { // Create single sitemap let mut context = Context::new(); - context.insert("sitemap_entries", &all_sitemap_entries); + context.insert("entries", &all_sitemap_entries); let sitemap = &render_template("sitemap.xml", &self.tera, context, &self.config.theme)?; create_file(&self.output_path.join("sitemap.xml"), sitemap)?; return Ok(()) } - + // Create multiple sitemaps (max 30000 urls each) let mut sitemap_index = Vec::new(); for (i, chunk) in all_sitemap_entries.chunks(sitemap_limit).enumerate() { let mut context = Context::new(); - context.insert("sitemap_entries", &chunk); + context.insert("entries", &chunk); let sitemap = &render_template("sitemap.xml", &self.tera, context, &self.config.theme)?; let file_name = format!("sitemap{}.xml", i+1); create_file(&self.output_path.join(&file_name), sitemap)?; @@ -903,8 +903,8 @@ impl Site { let mut main_context = Context::new(); main_context.insert("sitemaps", &sitemap_index); let sitemap = &render_template("split_sitemap_index.xml", &self.tera, main_context, &self.config.theme)?; - create_file(&self.output_path.join("sitemap.xml"), sitemap)?; - + create_file(&self.output_path.join("sitemap.xml"), sitemap)?; + Ok(()) } diff --git a/components/templates/src/builtins/sitemap.xml b/components/templates/src/builtins/sitemap.xml index 3e92454..6d55d37 100644 --- a/components/templates/src/builtins/sitemap.xml +++ b/components/templates/src/builtins/sitemap.xml @@ -1,5 +1,5 @@ - {% for sitemap_entry in sitemap_entries %} + {% for sitemap_entry in entries %} {{ sitemap_entry.permalink | safe }} {% if sitemap_entry.date %} @@ -7,4 +7,4 @@ {% endif %} {% endfor %} - \ No newline at end of file + diff --git a/docs/content/documentation/templates/sitemap.md b/docs/content/documentation/templates/sitemap.md index 86f510c..13119c8 100644 --- a/docs/content/documentation/templates/sitemap.md +++ b/docs/content/documentation/templates/sitemap.md @@ -6,20 +6,27 @@ weight = 60 Zola will look for a `sitemap.xml` file in the `templates` directory or use the built-in one. +If your site has more than 30 000 pages, it will automatically split +the links into multiple sitemaps as recommended by [Google](https://support.google.com/webmasters/answer/183668?hl=en): -The sitemap template gets four variables in addition of the config: +> All formats limit a single sitemap to 50MB (uncompressed) and 50,000 URLs. +> If you have a larger file or more URLs, you will have to break your list into multiple sitemaps. +> You can optionally create a sitemap index file (a file that points to a list of sitemaps) and submit that single index file to Google. -- `pages`: all pages of the site -- `sections`: all sections of the site, including an index section -- `tags`: links the tags page and individual tag page, empty if no tags -- `categories`: links the categories page and individual category page, empty if no categories +In such a case, Zola will use a template called `split_sitemap_index.xml` to render the index sitemap. -As the sitemap only requires a link and an optional date for the `lastmod` field, -all the variables above are arrays of `SitemapEntry` with the following type: + +The `sitemap.xml` template gets a single variable: + +- `entries`: all pages of the site, as a list of `SitemapEntry` + +A `SitemapEntry` has the following fields: ```ts permalink: String; date: String?; ``` -All `SitemapEntry` are sorted in each variable by their permalink. +The `split_sitemap_index.xml` also gets a single variable: + +- `sitemaps`: a list of permalinks to the sitemaps From 9beaa26023c31241a78adf3e54aadd0b77c49c42 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 14 Mar 2019 21:30:53 +0100 Subject: [PATCH 73/82] Add link to sitemap to robots.txt --- CHANGELOG.md | 1 + components/templates/src/builtins/robots.txt | 1 + 2 files changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 15da4c0..b04cb34 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,7 @@ rendering it and not anymore on the `page`/`section` variable - Fix using inline styles in headers - Fix sections with render=false being shown in sitemap - Sitemap is now split when there are more than 30 000 links in it +- Add link to sitemap in robots.txt ## 0.5.1 (2018-12-14) diff --git a/components/templates/src/builtins/robots.txt b/components/templates/src/builtins/robots.txt index 7d329b1..451ba12 100644 --- a/components/templates/src/builtins/robots.txt +++ b/components/templates/src/builtins/robots.txt @@ -1 +1,2 @@ User-agent: * +Sitemap: {{ get_url(path="sitemap.xml") }} From 8a802b1828890e2de138bb61b2f4997370629831 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Thu, 14 Mar 2019 21:53:07 +0100 Subject: [PATCH 74/82] Make sitemap entries in a set Close #633 --- components/site/src/lib.rs | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index f0a4d5c..f64dbd2 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -19,7 +19,7 @@ extern crate utils; #[cfg(test)] extern crate tempfile; -use std::collections::HashMap; +use std::collections::{HashMap, HashSet}; use std::fs::{copy, create_dir_all, remove_dir_all}; use std::path::{Path, PathBuf}; use std::sync::{Arc, Mutex, RwLock}; @@ -42,7 +42,7 @@ use utils::templates::{render_template, rewrite_theme_paths}; /// The sitemap only needs links and potentially date so we trim down /// all pages to only that -#[derive(Debug, Serialize)] +#[derive(Debug, Serialize, Eq, PartialEq, Hash)] struct SitemapEntry { permalink: String, date: Option, @@ -788,7 +788,7 @@ impl Site { pub fn render_sitemap(&self) -> Result<()> { ensure_directory_exists(&self.output_path)?; - let mut pages = self + let pages = self .library .read() .unwrap() @@ -803,7 +803,6 @@ impl Site { SitemapEntry::new(p.permalink.clone(), date) }) .collect::>(); - pages.sort_by(|a, b| a.permalink.cmp(&b.permalink)); let mut sections = self .library @@ -831,7 +830,6 @@ impl Site { sections.push(SitemapEntry::new(permalink, None)) } } - sections.sort_by(|a, b| a.permalink.cmp(&b.permalink)); let mut taxonomies = vec![]; for taxonomy in &self.taxonomies { @@ -861,17 +859,21 @@ impl Site { } } - terms.sort_by(|a, b| a.permalink.cmp(&b.permalink)); taxonomies.push(terms); } - // Group all sitemap entries in one vector - let mut all_sitemap_entries = Vec::new(); - all_sitemap_entries.append(&mut pages); - all_sitemap_entries.append(&mut sections); + + let mut all_sitemap_entries = HashSet::new(); + for p in pages { + all_sitemap_entries.insert(p); + } + for s in sections { + all_sitemap_entries.insert(s); + } for terms in taxonomies { - let mut terms = terms; - all_sitemap_entries.append(&mut terms); + for term in terms { + all_sitemap_entries.insert(term); + } } // Count total number of sitemap entries to include in sitemap @@ -889,7 +891,7 @@ impl Site { // Create multiple sitemaps (max 30000 urls each) let mut sitemap_index = Vec::new(); - for (i, chunk) in all_sitemap_entries.chunks(sitemap_limit).enumerate() { + for (i, chunk) in all_sitemap_entries.iter().collect::>().chunks(sitemap_limit).enumerate() { let mut context = Context::new(); context.insert("entries", &chunk); let sitemap = &render_template("sitemap.xml", &self.tera, context, &self.config.theme)?; From 3eaf13d49be4e93cd25a9e5b08c5cca1e4b5712b Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 15 Mar 2019 21:24:06 +0100 Subject: [PATCH 75/82] Update pulldown_cmark --- CHANGELOG.md | 1 + Cargo.lock | 119 +++++++++++++++---------- components/rendering/Cargo.toml | 2 +- components/rendering/src/markdown.rs | 41 +++++---- components/rendering/tests/markdown.rs | 16 +++- 5 files changed, 106 insertions(+), 73 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b04cb34..8bb9f93 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ rendering it and not anymore on the `page`/`section` variable - Fix sections with render=false being shown in sitemap - Sitemap is now split when there are more than 30 000 links in it - Add link to sitemap in robots.txt +- Markdown rendering is now fully CommonMark commpliant ## 0.5.1 (2018-12-14) diff --git a/Cargo.lock b/Cargo.lock index b3c4c49..7153ac4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -24,7 +24,7 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", @@ -50,7 +50,7 @@ dependencies = [ "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", @@ -77,7 +77,7 @@ dependencies = [ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "h2 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", + "h2 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -100,7 +100,7 @@ dependencies = [ "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", @@ -118,7 +118,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -206,7 +206,7 @@ name = "backtrace-sys" version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -273,7 +273,7 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.30" +version = "1.0.31" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -329,7 +329,7 @@ dependencies = [ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", - "syntect 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "syntect 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", ] @@ -606,7 +606,7 @@ name = "errors" version = "0.1.0" dependencies = [ "image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)", - "syntect 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "syntect 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "tera 1.0.0-beta.3 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -627,7 +627,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -648,7 +648,7 @@ dependencies = [ [[package]] name = "flate2" -version = "1.0.6" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -808,7 +808,7 @@ dependencies = [ [[package]] name = "h2" -version = "0.1.16" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -850,7 +850,7 @@ dependencies = [ "markup5ever 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -889,7 +889,7 @@ dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "h2 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", + "h2 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -898,7 +898,7 @@ dependencies = [ "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1075,7 +1075,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "libflate" -version = "0.1.20" +version = "0.1.21" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1229,7 +1229,7 @@ name = "miniz-sys" version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1246,7 +1246,7 @@ name = "miniz_oxide_c_api" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", "crc 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "miniz_oxide 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1340,7 +1340,7 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1385,7 +1385,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1443,7 +1443,7 @@ name = "onig_sys" version = "69.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1470,7 +1470,7 @@ name = "openssl-sys" version = "0.9.42" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1537,7 +1537,7 @@ dependencies = [ "pest_meta 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1636,6 +1636,16 @@ dependencies = [ "getopts 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "pulldown-cmark" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", + "getopts 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", + "unicase 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "quick-error" version = "1.2.2" @@ -1862,12 +1872,12 @@ dependencies = [ "link_checker 0.1.0", "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "pulldown-cmark 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "syntect 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "syntect 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "templates 0.1.0", "tera 1.0.0-beta.3 (registry+https://github.com/rust-lang/crates.io-index)", "utils 0.1.0", @@ -1885,7 +1895,7 @@ dependencies = [ "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "hyper 0.12.25 (registry+https://github.com/rust-lang/crates.io-index)", "hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libflate 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", + "libflate 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1893,7 +1903,7 @@ dependencies = [ "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1970,7 +1980,7 @@ name = "sass-sys" version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2052,7 +2062,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2221,12 +2231,12 @@ dependencies = [ "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "syn" -version = "0.15.28" +version = "0.15.29" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2241,18 +2251,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "syntect" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bincode 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "flate2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "flate2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2386,7 +2396,7 @@ dependencies = [ [[package]] name = "tokio" -version = "0.1.16" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2399,10 +2409,11 @@ dependencies = [ "tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-sync 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-sync 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-trace-core 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2470,7 +2481,7 @@ dependencies = [ "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-sync 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-sync 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2491,7 +2502,7 @@ dependencies = [ [[package]] name = "tokio-sync" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2538,6 +2549,14 @@ dependencies = [ "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tokio-trace-core" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tokio-udp" version = "0.1.3" @@ -2645,7 +2664,7 @@ dependencies = [ "lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-proto 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2828,7 +2847,7 @@ dependencies = [ "nom 4.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2839,7 +2858,7 @@ dependencies = [ "nom 4.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -3055,7 +3074,7 @@ dependencies = [ "checksum byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "560c32574a12a89ecd91f5e742165893f86e3ab98d21f8ea548658eb9eef5f40" "checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb" "checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" -"checksum cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)" = "d01c69d08ff207f231f07196e30f84c70f1c815b04f980f8b7b01ff01f05eb92" +"checksum cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)" = "c9ce8bb087aacff865633f0bd5aeaed910fe2fe55b55f4739527f2e023a2e53d" "checksum cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "11d43355396e872eefb45ce6342e4374ed7bc2b3a502d1b28e36d6e23c05d1f4" "checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878" "checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e" @@ -3096,7 +3115,7 @@ dependencies = [ "checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1" "checksum fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" "checksum filetime 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a2df5c1a8c4be27e7707789dc42ae65976e60b394afd293d1419ab915833e646" -"checksum flate2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2291c165c8e703ee54ef3055ad6188e3d51108e2ded18e9f2476e774fc5ad3d4" +"checksum flate2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "f87e68aa82b2de08a6e037f1385455759df6e445a8df5e005b4297191dbf18aa" "checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3" "checksum foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" "checksum foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" @@ -3115,7 +3134,7 @@ dependencies = [ "checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" "checksum globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4743617a7464bbda3c8aec8558ff2f9429047e025771037df561d383337ff865" "checksum globwalk 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4c7ee1ce235d766a01b481e593804b9356768d1dbd68fc0c063d04b407bee71a" -"checksum h2 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ddb2b25a33e231484694267af28fec74ac63b5ccf51ee2065a5e313b834d836e" +"checksum h2 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "910a5e7be6283a9c91b3982fa5188368c8719cce2a3cf3b86048673bf9d9c36b" "checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" "checksum hostname 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "21ceb46a83a85e824ef93669c8b390009623863b5c195d1ba747292c0c72f94e" "checksum html5ever 0.22.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c213fa6a618dc1da552f54f85cba74b05d8e883c92ec4e89067736938084c26e" @@ -3141,7 +3160,7 @@ dependencies = [ "checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" "checksum libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)" = "aab692d7759f5cd8c859e169db98ae5b52c924add2af5fbbca11d12fefb567c1" -"checksum libflate 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)" = "54d1ddf9c52870243c5689d7638d888331c1116aa5b398f3ba1acfa7d8758ca1" +"checksum libflate 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)" = "7346a83e8a2c3958d44d24225d905385dc31fc16e89dffb356c457b278914d20" "checksum line-wrap 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f30344350a2a51da54c1d53be93fade8a237e545dbcc4bdbe635413f2117cab9" "checksum linked-hash-map 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7860ec297f7008ff7a1e3382d7f7e1dcd69efc94751a2284bafc3d013c2aa939" "checksum linked-hash-map 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "70fb39025bc7cdd76305867c4eccf2f2dcf6e9a57f5b21a93e1c2d86cd03ec9e" @@ -3200,6 +3219,7 @@ dependencies = [ "checksum precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" "checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915" "checksum pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "eef52fac62d0ea7b9b4dc7da092aa64ea7ec3d90af6679422d3d7e0e14b6ee15" +"checksum pulldown-cmark 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "426175701ce727edeeef0a56535d88cc62afbdd977933e82be610044d645c4ec" "checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0" "checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1" "checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" @@ -3261,9 +3281,9 @@ dependencies = [ "checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550" "checksum strum 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f6c3a2071519ab6a48f465808c4c1ffdd00dfc8e93111d02b4fc5abab177676e" "checksum strum_macros 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8baacebd7b7c9b864d83a6ba7a246232983e277b86fa5cdec77f565715a4b136" -"checksum syn 0.15.28 (registry+https://github.com/rust-lang/crates.io-index)" = "218aa5a01ab9805df6e9e48074c8d88f317cc9660b1ad6c3dabac2d627d185d6" +"checksum syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)" = "1825685f977249735d510a242a6727b46efe914bb67e38d30c071b1b72b1d5c2" "checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" -"checksum syntect 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "72fed41b91655133c9819f68d0b9a194dcbf36aa46e80033b6e9ae169f58b211" +"checksum syntect 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e80b8831c5a543192ffc3727f01cf0e57579c6ac15558e3048bfb5708892167b" "checksum tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "b86c784c88d98c801132806dadd3819ed29d8600836c4088e855cdf3e178ed8a" "checksum tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "707feda9f2582d5d680d733e38755547a3e8fb471e7ba11452ecfd9ce93a5d3b" "checksum tera 1.0.0-beta.3 (registry+https://github.com/rust-lang/crates.io-index)" = "dc35f9f4098f84b32579af1fd3d9c850d5c713ea2490c81e1f792a5fbb22e278" @@ -3273,7 +3293,7 @@ dependencies = [ "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" "checksum tiff 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1e4834f28a0330cb9f3f2c87d2649dca723cb33802e2bdcf18da32759fbec7ce" "checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" -"checksum tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "fcaabb3cec70485d0df6e9454fe514393ad1c4070dee8915f11041e95630b230" +"checksum tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "1021bb1f4150435ab8f222eb7ed37c60b2d57037def63ba43085a79f387512d7" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" "checksum tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c756b04680eea21902a46fca4e9f410a2332c04995af590e07ff262e2193a9a3" "checksum tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30c6dbf2d1ad1de300b393910e8a3aa272b724a400b6531da03eed99e329fbf0" @@ -3281,10 +3301,11 @@ dependencies = [ "checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926" "checksum tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6af16bfac7e112bea8b0442542161bfc41cbfa4466b580bdda7d18cb88b911ce" "checksum tokio-signal 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "dd6dc5276ea05ce379a16de90083ec80836440d5ef8a6a39545a3207373b8296" -"checksum tokio-sync 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1bf2b9dac2a0509b5cfd1df5aa25eafacb616a42a491a13604d6bbeab4486363" +"checksum tokio-sync 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "fda385df506bf7546e70872767f71e81640f1f251bdf2fd8eb81a0eaec5fe022" "checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119" "checksum tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "742e511f6ce2298aeb86fc9ea0d8df81c2388c6ebae3dc8a7316e8c9df0df801" "checksum tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2910970404ba6fa78c5539126a9ae2045d62e3713041e447f695f41405a120c6" +"checksum tokio-trace-core 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "350c9edade9830dc185ae48ba45667a445ab59f6167ef6d0254ec9d2430d9dd3" "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92" "checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" diff --git a/components/rendering/Cargo.toml b/components/rendering/Cargo.toml index b0eca64..ef38a2c 100644 --- a/components/rendering/Cargo.toml +++ b/components/rendering/Cargo.toml @@ -6,7 +6,7 @@ authors = ["Vincent Prouillet "] [dependencies] tera = { version = "1.0.0-alpha.3", features = ["preserve_order"] } syntect = "3" -pulldown-cmark = "0.2" +pulldown-cmark = "0.3" slug = "0.1" serde = "1" serde_derive = "1" diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index 9bbb26a..5994f7d 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -1,5 +1,3 @@ -use std::borrow::Cow::{Borrowed, Owned}; - use pulldown_cmark as cmark; use slug::slugify; use syntect::easy::HighlightLines; @@ -16,7 +14,7 @@ use table_of_contents::{make_table_of_contents, Header}; use utils::site::resolve_internal_link; use utils::vec::InsertMany; -use self::cmark::{Event, Options, Parser, Tag}; +use self::cmark::{Event, Options, Parser, Tag, LinkType}; const CONTINUE_READING: &str = "

\n"; @@ -67,7 +65,10 @@ fn is_colocated_asset_link(link: &str) -> bool { && !link.starts_with("mailto:") } -fn fix_link(link: &str, context: &RenderContext) -> Result { +fn fix_link(link_type: LinkType, link: &str, context: &RenderContext) -> Result { + if link_type == LinkType::Email { + return Ok(link.to_string()); + } // A few situations here: // - it could be a relative link (starting with `./`) // - it could be a link to a co-located asset @@ -166,7 +167,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result Result { if !context.config.highlight_code { - return Event::Html(Borrowed("
"));
+                            return Event::Html("
".into());
                         }
 
                         let theme = &THEME_SET.themes[&context.config.highlight_theme];
@@ -186,40 +187,42 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result {
                         if !context.config.highlight_code {
-                            return Event::Html(Borrowed("
\n")); + return Event::Html("
\n".into()); } // reset highlight and close the code block highlighter = None; - Event::Html(Borrowed("")) + Event::Html("".into()) } - Event::Start(Tag::Image(src, title)) => { + Event::Start(Tag::Image(link_type, src, title)) => { if is_colocated_asset_link(&src) { + let link = format!("{}{}", context.current_page_permalink, &*src); return Event::Start(Tag::Image( - Owned(format!("{}{}", context.current_page_permalink, src)), + link_type, + link.into(), title, )); } - Event::Start(Tag::Image(src, title)) + Event::Start(Tag::Image(link_type, src, title)) } - Event::Start(Tag::Link(link, title)) => { - let fixed_link = match fix_link(&link, context) { + Event::Start(Tag::Link(link_type, link, title)) => { + let fixed_link = match fix_link(link_type, &link, context) { Ok(fixed_link) => fixed_link, Err(err) => { error = Some(err); - return Event::Html(Borrowed("")); + return Event::Html("".into()); } }; - Event::Start(Tag::Link(Owned(fixed_link), title)) + Event::Start(Tag::Link(link_type, fixed_link.into(), title)) } Event::Html(ref markup) if markup.contains("") => { has_summary = true; - Event::Html(Borrowed(CONTINUE_READING)) + Event::Html(CONTINUE_READING.into()) } _ => event, } @@ -239,7 +242,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result", lvl = header_ref.level, id = id); - events[start_idx] = Event::Html(Owned(html)); + events[start_idx] = Event::Html(html.into()); // generate anchors and places to insert them if context.insert_anchor != InsertAnchor::None { @@ -258,7 +261,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result\n$ gutenberg server\n$ ping\n" + "
\n$ gutenberg server\n$ ping\n
" ); } @@ -729,17 +729,25 @@ fn can_handle_summaries() { let config = Config::default(); let context = RenderContext::new(&tera_ctx, &config, "", &permalinks_ctx, InsertAnchor::None); let res = render_content( - "Hello [world]\n\n\n\nBla bla\n\n[world]: https://vincent.is/about/", + r#" +Hello [My site][world] + + + +Bla bla + +[world]: https://vincentprouillet.com +"#, &context, ) .unwrap(); assert_eq!( res.body, - "

Hello world

\n

\n

Bla bla

\n" + "

Hello My site

\n

\n

Bla bla

\n" ); assert_eq!( res.summary_len, - Some("

Hello world

\n".len()) + Some("

Hello My site

".len()) ); } From c63b7fde445e8c18283c6f8c6587e1ebafffbeae Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Sat, 16 Mar 2019 10:01:11 +0100 Subject: [PATCH 76/82] load_data now defaults to plain type + fix bug with get_taxonomy fn --- CHANGELOG.md | 4 ++- components/rendering/src/markdown.rs | 8 ++--- components/site/src/lib.rs | 27 ++++++++++------- .../templates/src/global_fns/load_data.rs | 30 +++++-------------- components/templates/src/lib.rs | 5 +++- .../documentation/templates/overview.md | 25 +++++++++------- 6 files changed, 48 insertions(+), 51 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8bb9f93..f95ed95 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,7 +20,9 @@ rendering it and not anymore on the `page`/`section` variable - Fix sections with render=false being shown in sitemap - Sitemap is now split when there are more than 30 000 links in it - Add link to sitemap in robots.txt -- Markdown rendering is now fully CommonMark commpliant +- Markdown rendering is now fully CommonMark compliant +- `load_data` now defaults to loading file as plain text, unless `format` is passed +or the extension matches csv/toml/json ## 0.5.1 (2018-12-14) diff --git a/components/rendering/src/markdown.rs b/components/rendering/src/markdown.rs index 5994f7d..6c34a58 100644 --- a/components/rendering/src/markdown.rs +++ b/components/rendering/src/markdown.rs @@ -14,7 +14,7 @@ use table_of_contents::{make_table_of_contents, Header}; use utils::site::resolve_internal_link; use utils::vec::InsertMany; -use self::cmark::{Event, Options, Parser, Tag, LinkType}; +use self::cmark::{Event, LinkType, Options, Parser, Tag}; const CONTINUE_READING: &str = "

\n"; @@ -200,11 +200,7 @@ pub fn markdown_to_html(content: &str, context: &RenderContext) -> Result { if is_colocated_asset_link(&src) { let link = format!("{}{}", context.current_page_permalink, &*src); - return Event::Start(Tag::Image( - link_type, - link.into(), - title, - )); + return Event::Start(Tag::Image(link_type, link.into(), title)); } Event::Start(Tag::Image(link_type, src, title)) diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index f64dbd2..bd41dae 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -246,10 +246,12 @@ impl Site { self.add_page(p, false)?; } + // taxonomy Tera fns are loaded in `register_early_global_fns` + // so we do need to populate it first. + self.populate_taxonomies()?; self.register_early_global_fns(); self.populate_sections(); self.render_markdown()?; - self.populate_taxonomies()?; self.register_tera_global_fns(); Ok(()) @@ -347,10 +349,7 @@ impl Site { "resize_image", global_fns::ResizeImage::new(self.imageproc.clone()), ); - self.tera.register_function( - "load_data", - global_fns::LoadData::new(self.base_path.clone()), - ); + self.tera.register_function("load_data", global_fns::LoadData::new(self.base_path.clone())); self.tera.register_function("trans", global_fns::Trans::new(self.config.clone())); self.tera.register_function( "get_taxonomy_url", @@ -862,7 +861,6 @@ impl Site { taxonomies.push(terms); } - let mut all_sitemap_entries = HashSet::new(); for p in pages { all_sitemap_entries.insert(p); @@ -886,25 +884,32 @@ impl Site { context.insert("entries", &all_sitemap_entries); let sitemap = &render_template("sitemap.xml", &self.tera, context, &self.config.theme)?; create_file(&self.output_path.join("sitemap.xml"), sitemap)?; - return Ok(()) + return Ok(()); } // Create multiple sitemaps (max 30000 urls each) let mut sitemap_index = Vec::new(); - for (i, chunk) in all_sitemap_entries.iter().collect::>().chunks(sitemap_limit).enumerate() { + for (i, chunk) in + all_sitemap_entries.iter().collect::>().chunks(sitemap_limit).enumerate() + { let mut context = Context::new(); context.insert("entries", &chunk); let sitemap = &render_template("sitemap.xml", &self.tera, context, &self.config.theme)?; - let file_name = format!("sitemap{}.xml", i+1); + let file_name = format!("sitemap{}.xml", i + 1); create_file(&self.output_path.join(&file_name), sitemap)?; - let mut sitemap_url:String = self.config.make_permalink(&file_name); + let mut sitemap_url: String = self.config.make_permalink(&file_name); sitemap_url.pop(); // Remove trailing slash sitemap_index.push(sitemap_url); } // Create main sitemap that reference numbered sitemaps let mut main_context = Context::new(); main_context.insert("sitemaps", &sitemap_index); - let sitemap = &render_template("split_sitemap_index.xml", &self.tera, main_context, &self.config.theme)?; + let sitemap = &render_template( + "split_sitemap_index.xml", + &self.tera, + main_context, + &self.config.theme, + )?; create_file(&self.output_path.join("sitemap.xml"), sitemap)?; Ok(()) diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 5bc506f..9e6449c 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -151,7 +151,7 @@ fn get_output_format_from_args( 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)" + "`load_data`: `format` needs to be an argument with a string value, being one of the supported `load_data` file types (csv, json, toml, plain)" ); if let Some(format) = format_arg { @@ -159,11 +159,7 @@ fn get_output_format_from_args( } let from_extension = if let DataSource::Path(path) = data_source { - let extension_result: Result<&str> = - path.extension().map(|extension| extension.to_str().unwrap()).ok_or_else(|| { - format!("Could not determine format for {} from extension", path.display()).into() - }); - extension_result? + path.extension().map(|extension| extension.to_str().unwrap()).unwrap_or_else(|| "plain") } else { "plain" }; @@ -332,8 +328,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")); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("../../../READMEE.md").unwrap()); let result = static_fn.call(&args); @@ -343,8 +338,7 @@ mod tests { #[test] fn cant_load_outside_content_dir() { - let static_fn = - LoadData::new(PathBuf::from(PathBuf::from("../utils"))); + 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()); @@ -421,9 +415,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")); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.toml").unwrap()); let result = static_fn.call(&args.clone()).unwrap(); @@ -442,9 +434,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")); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.csv").unwrap()); let result = static_fn.call(&args.clone()).unwrap(); @@ -464,9 +454,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")); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("uneven_rows.csv").unwrap()); let result = static_fn.call(&args.clone()); @@ -486,9 +474,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")); let mut args = HashMap::new(); args.insert("path".to_string(), to_value("test.json").unwrap()); let result = static_fn.call(&args.clone()).unwrap(); diff --git a/components/templates/src/lib.rs b/components/templates/src/lib.rs index eec3b1f..a1b6113 100644 --- a/components/templates/src/lib.rs +++ b/components/templates/src/lib.rs @@ -35,7 +35,10 @@ lazy_static! { ("__zola_builtins/rss.xml", include_str!("builtins/rss.xml")), ("__zola_builtins/sitemap.xml", include_str!("builtins/sitemap.xml")), ("__zola_builtins/robots.txt", include_str!("builtins/robots.txt")), - ("__zola_builtins/split_sitemap_index.xml", include_str!("builtins/split_sitemap_index.xml")), + ( + "__zola_builtins/split_sitemap_index.xml", + include_str!("builtins/split_sitemap_index.xml"), + ), ("__zola_builtins/anchor-link.html", include_str!("builtins/anchor-link.html")), ( "__zola_builtins/shortcodes/youtube.html", diff --git a/docs/content/documentation/templates/overview.md b/docs/content/documentation/templates/overview.md index bf9aad7..02349c8 100644 --- a/docs/content/documentation/templates/overview.md +++ b/docs/content/documentation/templates/overview.md @@ -146,34 +146,37 @@ Gets the whole taxonomy of a specific kind. ``` ### `load_data` -Loads data from a file or URL. Supported file types include *toml*, *json* and *csv*. +Loads data from a file or URL. Supported file types include *toml*, *json* and *csv*. +Any other file type will be loaded as plain text. -The `path` argument specifies the path to the data file relative to your content directory. +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 of the main site directory, your site will fail to build. ```jinja2 -{% set data = load_data(path="blog/story/data.toml") %} +{% set data = load_data(path="content/blog/story/data.toml") %} ``` 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"* -or *"plain"*. If the `format` argument isn't specified, then the paths extension is used. +within the file specified in the `path` argument. Valid entries are `toml`, `json`, `csv` +or `plain`. If the `format` argument isn't specified, then the paths extension is used. ```jinja2 -{% set data = load_data(path="blog/story/data.txt", format="json") %} +{% set data = load_data(path="content/blog/story/data.txt", format="json") %} ``` +Use the `plain` format for when your file has a toml/json/csv extension but you want to load it as plain text. + For *toml* and *json* the data is loaded into a structure matching the original data file, -however for *csv* there is no native notion of such a structure. Instead the data is seperated +however for *csv* there is no native notion of such a structure. Instead the data is separated into a data structure containing *headers* and *records*. See the example below to see how this works. In the template: ```jinja2 -{% set data = load_data(path="blog/story/data.csv") %} +{% set data = load_data(path="content/blog/story/data.csv") %} ``` -In the *blog/story/data.csv* file: +In the *content/blog/story/data.csv* file: ```csv Number, Title 1,Gutenberg @@ -211,7 +214,9 @@ By default, the response body will be returned with no parsing. This can be chan #### Data Caching -Data file loading and remote requests are cached in memory during build, so multiple requests aren't made to the same endpoint. URLs are cached based on the URL, and data files are cached based on the files modified time. The format is also taken into account when caching, so a request will be sent twice if it's loaded with 2 different formats. +Data file loading and remote requests are cached in memory during build, so multiple requests aren't made to the same endpoint. +URLs are cached based on the URL, and data files are cached based on the files modified time. +The format is also taken into account when caching, so a request will be sent twice if it's loaded with 2 different formats. ### `trans` Gets the translation of the given `key`, for the `default_language` or the `language given From 2a8d0de5326b3d19510a640677e8990debce4fa2 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 19 Mar 2019 20:42:16 +0100 Subject: [PATCH 77/82] Pass extra for page in sitemap entries --- CHANGELOG.md | 3 +- components/site/src/lib.rs | 116 ++-------------- components/site/src/sitemap.rs | 127 ++++++++++++++++++ .../documentation/templates/sitemap.md | 1 + 4 files changed, 141 insertions(+), 106 deletions(-) create mode 100644 components/site/src/sitemap.rs diff --git a/CHANGELOG.md b/CHANGELOG.md index f95ed95..4dfaace 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,11 +18,12 @@ rendering it and not anymore on the `page`/`section` variable - Add Dracula syntax highlighting theme - Fix using inline styles in headers - Fix sections with render=false being shown in sitemap -- Sitemap is now split when there are more than 30 000 links in it +- Sitemap is now split when there are more than 30 000 links in it - Add link to sitemap in robots.txt - Markdown rendering is now fully CommonMark compliant - `load_data` now defaults to loading file as plain text, unless `format` is passed or the extension matches csv/toml/json +- Sitemap entries get an additional `extra` field for pages only ## 0.5.1 (2018-12-14) diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index bd41dae..ea2467a 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -19,7 +19,10 @@ extern crate utils; #[cfg(test)] extern crate tempfile; -use std::collections::{HashMap, HashSet}; + +mod sitemap; + +use std::collections::{HashMap}; use std::fs::{copy, create_dir_all, remove_dir_all}; use std::path::{Path, PathBuf}; use std::sync::{Arc, Mutex, RwLock}; @@ -40,20 +43,6 @@ use utils::fs::{copy_directory, create_directory, create_file, ensure_directory_ use utils::net::get_available_port; use utils::templates::{render_template, rewrite_theme_paths}; -/// The sitemap only needs links and potentially date so we trim down -/// all pages to only that -#[derive(Debug, Serialize, Eq, PartialEq, Hash)] -struct SitemapEntry { - permalink: String, - date: Option, -} - -impl SitemapEntry { - pub fn new(permalink: String, date: Option) -> SitemapEntry { - SitemapEntry { permalink, date } - } -} - #[derive(Debug)] pub struct Site { /// The base path of the zola site @@ -787,98 +776,15 @@ impl Site { pub fn render_sitemap(&self) -> Result<()> { ensure_directory_exists(&self.output_path)?; - let pages = self - .library - .read() - .unwrap() - .pages_values() - .iter() - .filter(|p| !p.is_draft()) - .map(|p| { - let date = match p.meta.date { - Some(ref d) => Some(d.to_string()), - None => None, - }; - SitemapEntry::new(p.permalink.clone(), date) - }) - .collect::>(); - - let mut sections = self - .library - .read() - .unwrap() - .sections_values() - .iter() - .filter(|s| s.meta.render) - .map(|s| SitemapEntry::new(s.permalink.clone(), None)) - .collect::>(); - for section in self - .library - .read() - .unwrap() - .sections_values() - .iter() - .filter(|s| s.meta.paginate_by.is_some()) - { - let number_pagers = (section.pages.len() as f64 - / section.meta.paginate_by.unwrap() as f64) - .ceil() as isize; - for i in 1..=number_pagers { - let permalink = - format!("{}{}/{}/", section.permalink, section.meta.paginate_path, i); - sections.push(SitemapEntry::new(permalink, None)) - } - } - - let mut taxonomies = vec![]; - for taxonomy in &self.taxonomies { - let name = &taxonomy.kind.name; - let mut terms = vec![]; - terms.push(SitemapEntry::new(self.config.make_permalink(name), None)); - for item in &taxonomy.items { - terms.push(SitemapEntry::new( - self.config.make_permalink(&format!("{}/{}", &name, item.slug)), - None, - )); - - if taxonomy.kind.is_paginated() { - let number_pagers = (item.pages.len() as f64 - / taxonomy.kind.paginate_by.unwrap() as f64) - .ceil() as isize; - for i in 1..=number_pagers { - let permalink = self.config.make_permalink(&format!( - "{}/{}/{}/{}", - name, - item.slug, - taxonomy.kind.paginate_path(), - i - )); - terms.push(SitemapEntry::new(permalink, None)) - } - } - } - - taxonomies.push(terms); - } - - let mut all_sitemap_entries = HashSet::new(); - for p in pages { - all_sitemap_entries.insert(p); - } - for s in sections { - all_sitemap_entries.insert(s); - } - for terms in taxonomies { - for term in terms { - all_sitemap_entries.insert(term); - } - } - - // Count total number of sitemap entries to include in sitemap - let total_number = all_sitemap_entries.len(); + let library = self.library.read().unwrap(); + let all_sitemap_entries = sitemap::find_entries( + &library, + &self.taxonomies[..], + &self.config, + ); let sitemap_limit = 30000; - if total_number < sitemap_limit { + if all_sitemap_entries.len() < sitemap_limit { // Create single sitemap let mut context = Context::new(); context.insert("entries", &all_sitemap_entries); diff --git a/components/site/src/sitemap.rs b/components/site/src/sitemap.rs new file mode 100644 index 0000000..c38ed96 --- /dev/null +++ b/components/site/src/sitemap.rs @@ -0,0 +1,127 @@ +use std::borrow::Cow; +use std::hash::{Hash, Hasher}; +use std::collections::{HashSet}; + +use tera::{Map, Value}; +use config::{Config}; +use library::{Library, Taxonomy}; + +/// The sitemap only needs links, potentially date and extra for pages in case of updates +/// for examples so we trim down all entries to only that +#[derive(Debug, Serialize)] +pub struct SitemapEntry<'a> { + permalink: Cow<'a, str>, + date: Option, + extra: Option<&'a Map>, +} + +// Hash/Eq is not implemented for tera::Map but in our case we only care about the permalink +// when comparing/hashing so we implement it manually +impl<'a> Hash for SitemapEntry<'a> { + fn hash(&self, state: &mut H) { + self.permalink.hash(state); + } +} +impl<'a> PartialEq for SitemapEntry<'a> { + fn eq(&self, other: &SitemapEntry) -> bool { + self.permalink == other.permalink + } +} +impl<'a> Eq for SitemapEntry<'a> {} + +impl<'a> SitemapEntry<'a> { + pub fn new(permalink: Cow<'a, str>, date: Option) -> Self { + SitemapEntry { permalink, date, extra: None } + } + + pub fn add_extra(&mut self, extra: &'a Map) { + self.extra = Some(extra); + } +} + +/// Finds out all the links to put in a sitemap from the pages/sections/taxonomies +/// There are no duplicate permalinks in the output vec +pub fn find_entries<'a>(library: &'a Library, taxonomies: &'a [Taxonomy], config: &'a Config) -> Vec> { + let pages = library + .pages_values() + .iter() + .filter(|p| !p.is_draft()) + .map(|p| { + let date = match p.meta.date { + Some(ref d) => Some(d.to_string()), + None => None, + }; + let mut entry = SitemapEntry::new(Cow::Borrowed(&p.permalink), date); + entry.add_extra(&p.meta.extra); + entry + }) + .collect::>(); + + let mut sections = library + .sections_values() + .iter() + .filter(|s| s.meta.render) + .map(|s| SitemapEntry::new(Cow::Borrowed(&s.permalink), None)) + .collect::>(); + + for section in library + .sections_values() + .iter() + .filter(|s| s.meta.paginate_by.is_some()) + { + let number_pagers = (section.pages.len() as f64 + / section.meta.paginate_by.unwrap() as f64) + .ceil() as isize; + for i in 1..=number_pagers { + let permalink = + format!("{}{}/{}/", section.permalink, section.meta.paginate_path, i); + sections.push(SitemapEntry::new(Cow::Owned(permalink), None)) + } + } + + let mut taxonomies_entries = vec![]; + for taxonomy in taxonomies { + let name = &taxonomy.kind.name; + let mut terms = vec![]; + terms.push(SitemapEntry::new(Cow::Owned(config.make_permalink(name)), None)); + for item in &taxonomy.items { + terms.push(SitemapEntry::new( + Cow::Owned(config.make_permalink(&format!("{}/{}", name, item.slug))), + None, + )); + + if taxonomy.kind.is_paginated() { + let number_pagers = (item.pages.len() as f64 + / taxonomy.kind.paginate_by.unwrap() as f64) + .ceil() as isize; + for i in 1..=number_pagers { + let permalink = config.make_permalink(&format!( + "{}/{}/{}/{}", + name, + item.slug, + taxonomy.kind.paginate_path(), + i + )); + terms.push(SitemapEntry::new(Cow::Owned(permalink), None)) + } + } + } + + taxonomies_entries.push(terms); + } + + let mut all_sitemap_entries = HashSet::new(); + for p in pages { + all_sitemap_entries.insert(p); + } + for s in sections { + all_sitemap_entries.insert(s); + } + for terms in taxonomies_entries { + for term in terms { + all_sitemap_entries.insert(term); + } + } + + all_sitemap_entries.into_iter().collect::>() +} diff --git a/docs/content/documentation/templates/sitemap.md b/docs/content/documentation/templates/sitemap.md index 13119c8..74f0f5a 100644 --- a/docs/content/documentation/templates/sitemap.md +++ b/docs/content/documentation/templates/sitemap.md @@ -25,6 +25,7 @@ A `SitemapEntry` has the following fields: ```ts permalink: String; date: String?; +extra: Hashmap?; ``` The `split_sitemap_index.xml` also gets a single variable: From 283a15cd932a9487237cad576a3bebd21cda2c53 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 19 Mar 2019 21:35:49 +0100 Subject: [PATCH 78/82] Fix some deprecation notice of pest --- Cargo.lock | 7 ++++--- components/rendering/Cargo.toml | 2 +- components/rendering/src/shortcode.rs | 16 ++++++++-------- 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7153ac4..dc6b44a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1638,11 +1638,12 @@ dependencies = [ [[package]] name = "pulldown-cmark" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "getopts 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "unicase 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1872,7 +1873,7 @@ dependencies = [ "link_checker 0.1.0", "pest 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "pulldown-cmark 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "pulldown-cmark 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3219,7 +3220,7 @@ dependencies = [ "checksum precomputed-hash 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" "checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915" "checksum pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "eef52fac62d0ea7b9b4dc7da092aa64ea7ec3d90af6679422d3d7e0e14b6ee15" -"checksum pulldown-cmark 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "426175701ce727edeeef0a56535d88cc62afbdd977933e82be610044d645c4ec" +"checksum pulldown-cmark 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fa4987312f985c300f4d68d208a9e4b646268140b6dbe83388c09652cc19ed3f" "checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0" "checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1" "checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" diff --git a/components/rendering/Cargo.toml b/components/rendering/Cargo.toml index ef38a2c..a4a6408 100644 --- a/components/rendering/Cargo.toml +++ b/components/rendering/Cargo.toml @@ -6,7 +6,7 @@ authors = ["Vincent Prouillet "] [dependencies] tera = { version = "1.0.0-alpha.3", features = ["preserve_order"] } syntect = "3" -pulldown-cmark = "0.3" +pulldown-cmark = "0.4" slug = "0.1" serde = "1" serde_derive = "1" diff --git a/components/rendering/src/shortcode.rs b/components/rendering/src/shortcode.rs index 4bf7c69..6a47daf 100644 --- a/components/rendering/src/shortcode.rs +++ b/components/rendering/src/shortcode.rs @@ -58,7 +58,7 @@ fn parse_shortcode_call(pair: Pair) -> (String, Map) { for p in pair.into_inner() { match p.as_rule() { Rule::ident => { - name = Some(p.into_span().as_str().to_string()); + name = Some(p.as_span().as_str().to_string()); } Rule::kwarg => { let mut arg_name = None; @@ -66,7 +66,7 @@ fn parse_shortcode_call(pair: Pair) -> (String, Map) { for p2 in p.into_inner() { match p2.as_rule() { Rule::ident => { - arg_name = Some(p2.into_span().as_str().to_string()); + arg_name = Some(p2.as_span().as_str().to_string()); } Rule::literal => { arg_val = Some(parse_literal(p2)); @@ -169,7 +169,7 @@ pub fn render_shortcodes(content: &str, context: &RenderContext) -> Result res.push_str(p.into_span().as_str()), + Rule::text => res.push_str(p.as_span().as_str()), Rule::inline_shortcode => { let (name, args) = parse_shortcode_call(p); res.push_str(&render_shortcode(&name, &args, context, None)?); @@ -179,12 +179,12 @@ pub fn render_shortcodes(content: &str, context: &RenderContext) -> Result { res.push_str( - &p.into_span().as_str().replacen("{{/*", "{{", 1).replacen("*/}}", "}}", 1), + &p.as_span().as_str().replacen("{{/*", "{{", 1).replacen("*/}}", "}}", 1), ); } Rule::ignored_shortcode_with_body => { @@ -192,13 +192,13 @@ pub fn render_shortcodes(content: &str, context: &RenderContext) -> Result { res.push_str( - &p2.into_span() + &p2.as_span() .as_str() .replacen("{%/*", "{%", 1) .replacen("*/%}", "%}", 1), ); } - Rule::text_in_ignored_body_sc => res.push_str(p2.into_span().as_str()), + Rule::text_in_ignored_body_sc => res.push_str(p2.as_span().as_str()), _ => unreachable!("Got something weird in an ignored shortcode: {:?}", p2), } } @@ -230,7 +230,7 @@ mod tests { panic!(); } assert!(res.is_ok()); - assert_eq!(res.unwrap().last().unwrap().into_span().end(), $input.len()); + assert_eq!(res.unwrap().last().unwrap().as_span().end(), $input.len()); }; } From e00cd3e1b09025176657507ac6a164bb38a0f031 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 22 Mar 2019 20:34:02 +0100 Subject: [PATCH 79/82] Always default to plain for load_data on unknown extensions --- Cargo.lock | 61 +++++++------------ .../templates/src/global_fns/load_data.rs | 4 +- 2 files changed, 25 insertions(+), 40 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index dc6b44a..a1c249b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -910,7 +910,7 @@ dependencies = [ [[package]] name = "hyper-tls" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1073,16 +1073,6 @@ name = "libc" version = "0.2.50" source = "registry+https://github.com/rust-lang/crates.io-index" -[[package]] -name = "libflate" -version = "0.1.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "library" version = "0.1.0" @@ -1119,17 +1109,12 @@ name = "link_checker" version = "0.1.0" dependencies = [ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "reqwest 0.9.11 (registry+https://github.com/rust-lang/crates.io-index)", + "reqwest 0.9.12 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "linked-hash-map" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "linked-hash-map" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1151,10 +1136,10 @@ dependencies = [ [[package]] name = "lru-cache" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "linked-hash-map 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1310,9 +1295,9 @@ dependencies = [ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl 0.10.20 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-sys 0.9.43 (registry+https://github.com/rust-lang/crates.io-index)", "schannel 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "security-framework 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1449,7 +1434,7 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.19" +version = "0.10.20" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1457,7 +1442,7 @@ dependencies = [ "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-sys 0.9.43 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1467,7 +1452,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "openssl-sys" -version = "0.9.42" +version = "0.9.43" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1886,17 +1871,17 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.9.11" +version = "0.9.12" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "encoding_rs 0.8.17 (registry+https://github.com/rust-lang/crates.io-index)", + "flate2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "http 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "hyper 0.12.25 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libflate 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper-tls 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mime 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", "mime_guess 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2302,7 +2287,7 @@ dependencies = [ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "library 0.1.0", "pulldown-cmark 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "reqwest 0.9.11 (registry+https://github.com/rust-lang/crates.io-index)", + "reqwest 0.9.12 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", "tera 1.0.0-beta.3 (registry+https://github.com/rust-lang/crates.io-index)", "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2662,7 +2647,7 @@ dependencies = [ "ipconfig 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "lru-cache 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3024,7 +3009,7 @@ name = "yaml-rust" version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "linked-hash-map 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -3144,7 +3129,7 @@ dependencies = [ "checksum humansize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" "checksum humantime 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ca7e5f2e110db35f93b837c81797f3714500b81d517bf20c431b16d3ca4f114" "checksum hyper 0.12.25 (registry+https://github.com/rust-lang/crates.io-index)" = "7d5b6658b016965ae301fa995306db965c93677880ea70765a84235a96eae896" -"checksum hyper-tls 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "32cd73f14ad370d3b4d4b7dce08f69b81536c82e39fcc89731930fe5788cd661" +"checksum hyper-tls 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3a800d6aa50af4b5850b2b0f659625ce9504df908e9733b635720483be26174f" "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" "checksum ignore 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ad03ca67dc12474ecd91fdb94d758cbd20cb4e7a78ebe831df26a9b7511e1162" "checksum image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)" = "52fb0666a1273dac46f9725aa4859bcd5595fc3554cf3495051b4de8db745e7d" @@ -3161,13 +3146,11 @@ dependencies = [ "checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" "checksum libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)" = "aab692d7759f5cd8c859e169db98ae5b52c924add2af5fbbca11d12fefb567c1" -"checksum libflate 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)" = "7346a83e8a2c3958d44d24225d905385dc31fc16e89dffb356c457b278914d20" "checksum line-wrap 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f30344350a2a51da54c1d53be93fade8a237e545dbcc4bdbe635413f2117cab9" -"checksum linked-hash-map 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7860ec297f7008ff7a1e3382d7f7e1dcd69efc94751a2284bafc3d013c2aa939" -"checksum linked-hash-map 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "70fb39025bc7cdd76305867c4eccf2f2dcf6e9a57f5b21a93e1c2d86cd03ec9e" +"checksum linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ae91b68aebc4ddb91978b11a1b02ddd8602a05ec19002801c5666000e05e0f83" "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" "checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6" -"checksum lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4d06ff7ff06f729ce5f4e227876cb88d10bc59cd4ae1e09fbb2bde15c850dc21" +"checksum lru-cache 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c" "checksum lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7d947cbb889ed21c2a84be6ffbaebf5b4e0f4340638cba0444907e38b56be084" "checksum mac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4" "checksum maplit 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "08cbb6b4fef96b6d77bfc40ec491b1690c779e77b05cd9f07f787ed376fd4c43" @@ -3199,9 +3182,9 @@ dependencies = [ "checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba" "checksum onig 4.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a646989adad8a19f49be2090374712931c3a59835cb5277b4530f48b417f26e7" "checksum onig_sys 69.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388410bf5fa341f10e58e6db3975f4bea1ac30247dd79d37a9e5ced3cb4cc3b0" -"checksum openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)" = "84321fb9004c3bce5611188a644d6171f895fa2889d155927d528782edb21c5d" +"checksum openssl 0.10.20 (registry+https://github.com/rust-lang/crates.io-index)" = "5a0d6b781aac4ac1bd6cafe2a2f0ad8c16ae8e1dd5184822a16c50139f8838d9" "checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" -"checksum openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)" = "cb534d752bf98cf363b473950659ac2546517f9c6be9723771614ab3f03bbc9e" +"checksum openssl-sys 0.9.43 (registry+https://github.com/rust-lang/crates.io-index)" = "33c86834957dd5b915623e94f2f4ab2c70dd8f6b70679824155d5ae21dbd495d" "checksum owning_ref 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13" "checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" "checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" @@ -3243,7 +3226,7 @@ dependencies = [ "checksum regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "53ee8cfdddb2e0291adfb9f13d31d3bbe0a03c9a402c01b1e24188d86c35b24f" "checksum regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "8c2f35eedad5295fdf00a63d7d4b238135723f92b434ec06774dad15c7ab0861" "checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5" -"checksum reqwest 0.9.11 (registry+https://github.com/rust-lang/crates.io-index)" = "e542d9f077c126af32536b6aacc75bb7325400eab8cd0743543be5d91660780d" +"checksum reqwest 0.9.12 (registry+https://github.com/rust-lang/crates.io-index)" = "962fa64e670e70b9d3a81c3688832eb59293ef490e0af5ad169763f62016ac5e" "checksum resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b263b4aa1b5de9ffc0054a2386f96992058bb6870aab516f8cdeb8a667d56dcb" "checksum rust-stemmers 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05928c187b85b38f6b98db43057a24f0245163635a5ce6325a4f77a833d646aa" "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index 9e6449c..e7b0dbf 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -163,7 +163,9 @@ fn get_output_format_from_args( } else { "plain" }; - OutputFormat::from_str(from_extension) + + // Always default to Plain if we don't know what it is + OutputFormat::from_str(from_extension).or_else(|_| Ok(OutputFormat::Plain)) } /// A Tera function to load data from a file or from a URL From 97e796a724dbbdbac48969a8e469dd7c7744dcdb Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Fri, 22 Mar 2019 20:44:06 +0100 Subject: [PATCH 80/82] More tests for load_data --- .../templates/src/global_fns/load_data.rs | 44 +++++++++++++++++++ components/utils/test-files/test.css | 1 + 2 files changed, 45 insertions(+) create mode 100644 components/utils/test-files/test.css diff --git a/components/templates/src/global_fns/load_data.rs b/components/templates/src/global_fns/load_data.rs index e7b0dbf..b8f053c 100644 --- a/components/templates/src/global_fns/load_data.rs +++ b/components/templates/src/global_fns/load_data.rs @@ -155,6 +155,9 @@ fn get_output_format_from_args( ); if let Some(format) = format_arg { + if format == "plain" { + return Ok(OutputFormat::Plain); + } return OutputFormat::from_str(&format); } @@ -434,6 +437,47 @@ mod tests { ); } + #[test] + fn unknown_extension_defaults_to_plain() { + let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("test.css").unwrap()); + let result = static_fn.call(&args.clone()).unwrap(); + + assert_eq!( + result, + ".hello {}\n", + ); + } + + #[test] + fn can_override_known_extension_with_format() { + let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("test.csv").unwrap()); + args.insert("format".to_string(), to_value("plain").unwrap()); + let result = static_fn.call(&args.clone()).unwrap(); + + assert_eq!( + result, + "Number,Title\n1,Gutenberg\n2,Printing", + ); + } + + #[test] + fn will_use_format_on_unknown_extension() { + let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); + let mut args = HashMap::new(); + args.insert("path".to_string(), to_value("test.css").unwrap()); + args.insert("format".to_string(), to_value("plain").unwrap()); + let result = static_fn.call(&args.clone()).unwrap(); + + assert_eq!( + result, + ".hello {}\n", + ); + } + #[test] fn can_load_csv() { let static_fn = LoadData::new(PathBuf::from("../utils/test-files")); diff --git a/components/utils/test-files/test.css b/components/utils/test-files/test.css new file mode 100644 index 0000000..3a461fe --- /dev/null +++ b/components/utils/test-files/test.css @@ -0,0 +1 @@ +.hello {} From 1815155c1d48460348be165a4044cbd936f529db Mon Sep 17 00:00:00 2001 From: Blake Smith Date: Sat, 23 Mar 2019 20:14:01 -0500 Subject: [PATCH 81/82] Allow default base-path command line option to be set for building and serving --- Cargo.lock | 1 + components/site/src/lib.rs | 2 +- .../getting-started/cli-usage.md | 9 +++++ src/cli.rs | 10 ++++++ src/cmd/build.rs | 11 ++++-- src/cmd/serve.rs | 35 +++++++++++-------- src/main.rs | 18 ++++++++-- 7 files changed, 66 insertions(+), 20 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a1c249b..b94fc04 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,5 +1,6 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. + [[package]] name = "MacTypes-sys" version = "2.1.0" diff --git a/components/site/src/lib.rs b/components/site/src/lib.rs index ea2467a..57ba91d 100644 --- a/components/site/src/lib.rs +++ b/components/site/src/lib.rs @@ -66,7 +66,7 @@ pub struct Site { impl Site { /// Parse a site at the given path. Defaults to the current dir - /// Passing in a path is only used in tests + /// Passing in a path is possible using the `base-path` command line build option pub fn new>(path: P, config_file: &str) -> Result { let path = path.as_ref(); let mut config = get_config(path, config_file); diff --git a/docs/content/documentation/getting-started/cli-usage.md b/docs/content/documentation/getting-started/cli-usage.md index 95267f5..4b247ca 100644 --- a/docs/content/documentation/getting-started/cli-usage.md +++ b/docs/content/documentation/getting-started/cli-usage.md @@ -36,6 +36,14 @@ $ zola build --base-url $DEPLOY_URL This is useful for example when you want to deploy previews of a site to a dynamic URL, such as Netlify deploy previews. +You can override the default `base_path` by passing a new directory to the `base-path` flag. If no `base-path` flag +is provided, zola defaults to your current working directory. This is useful if your zola project is located in +a different directory from where you're executing zola from. + +```bash +$ zola build --base-path /path/to/zola/site +``` + You can override the default output directory 'public' by passing a other value to the `output-dir` flag. ```bash @@ -67,6 +75,7 @@ $ zola serve --interface 0.0.0.0 $ zola serve --interface 0.0.0.0 --port 2000 $ zola serve --interface 0.0.0.0 --base-url 127.0.0.1 $ zola serve --interface 0.0.0.0 --port 2000 --output-dir www/public +$ zola serve --interface 0.0.0.0 --port 2000 --base-path mysite/ --output-dir mysite/www/public $ zola serve --watch-only ``` diff --git a/src/cli.rs b/src/cli.rs index 304d135..500aa04 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -30,6 +30,11 @@ pub fn build_cli() -> App<'static, 'static> { .long("base-url") .takes_value(true) .help("Force the base URL to be that value (default to the one in config.toml)"), + Arg::with_name("base_path") + .short("b") + .long("base-path") + .takes_value(true) + .help("Force the base site path to a certain directory [default: the current working directory]"), Arg::with_name("output_dir") .short("o") .long("output-dir") @@ -56,6 +61,11 @@ pub fn build_cli() -> App<'static, 'static> { .default_value("public") .takes_value(true) .help("Outputs the generated site in the given path"), + Arg::with_name("base_path") + .short("b") + .long("base-path") + .takes_value(true) + .help("Force the base site path to a certain directory [default: the current working directory]"), Arg::with_name("base_url") .short("u") .long("base-url") diff --git a/src/cmd/build.rs b/src/cmd/build.rs index aca974e..6bc8dc8 100644 --- a/src/cmd/build.rs +++ b/src/cmd/build.rs @@ -1,12 +1,19 @@ use std::env; +use std::path::PathBuf; use errors::Result; use site::Site; use console; -pub fn build(config_file: &str, base_url: Option<&str>, output_dir: &str) -> Result<()> { - let mut site = Site::new(env::current_dir().unwrap(), config_file)?; +pub fn build( + config_file: &str, + base_path: Option<&str>, + base_url: Option<&str>, + output_dir: &str, +) -> Result<()> { + let bp = base_path.map(PathBuf::from).unwrap_or(env::current_dir().unwrap()); + let mut site = Site::new(bp, config_file)?; site.set_output_path(output_dir); if let Some(b) = base_url { site.set_base_url(b.to_string()); diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index 07544a0..50894c3 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -114,14 +114,15 @@ fn rebuild_done_handling(broadcaster: &Option, res: Result<()>, reload_p } } -fn create_new_site( +fn create_new_site>( interface: &str, port: u16, output_dir: &str, + base_path: P, base_url: &str, config_file: &str, ) -> Result<(Site, String)> { - let mut site = Site::new(env::current_dir().unwrap(), config_file)?; + let mut site = Site::new(base_path, config_file)?; let base_address = format!("{}:{}", base_url, port); let address = format!("{}:{}", interface, port); @@ -166,12 +167,15 @@ pub fn serve( interface: &str, port: u16, output_dir: &str, + base_path: Option<&str>, base_url: &str, config_file: &str, watch_only: bool, ) -> Result<()> { let start = Instant::now(); - let (mut site, address) = create_new_site(interface, port, output_dir, base_url, config_file)?; + let bp = base_path.map(PathBuf::from).unwrap_or(env::current_dir().unwrap()); + let (mut site, address) = + create_new_site(interface, port, output_dir, bp.clone(), base_url, config_file)?; console::report_elapsed_time(start); // Setup watchers @@ -180,28 +184,28 @@ pub fn serve( let (tx, rx) = channel(); let mut watcher = watcher(tx, Duration::from_secs(1)).unwrap(); watcher - .watch("content/", RecursiveMode::Recursive) + .watch(bp.join("content/"), RecursiveMode::Recursive) .map_err(|e| ZolaError::chain("Can't watch the `content` folder. Does it exist?", e))?; watcher - .watch(config_file, RecursiveMode::Recursive) + .watch(bp.join(config_file), RecursiveMode::Recursive) .map_err(|e| ZolaError::chain("Can't watch the `config` file. Does it exist?", e))?; - if Path::new("static").exists() { + if bp.join("static").exists() { watching_static = true; watcher - .watch("static/", RecursiveMode::Recursive) + .watch(bp.join("static/"), RecursiveMode::Recursive) .map_err(|e| ZolaError::chain("Can't watch the `static` folder.", e))?; } - if Path::new("templates").exists() { + if bp.join("templates").exists() { watching_templates = true; watcher - .watch("templates/", RecursiveMode::Recursive) + .watch(bp.join("templates/"), RecursiveMode::Recursive) .map_err(|e| ZolaError::chain("Can't watch the `templates` folder.", e))?; } // Sass support is optional so don't make it an error to no have a sass folder - let _ = watcher.watch("sass/", RecursiveMode::Recursive); + let _ = watcher.watch(bp.join("sass/"), RecursiveMode::Recursive); let ws_address = format!("{}:{}", interface, site.live_reload.unwrap()); let output_path = Path::new(output_dir).to_path_buf(); @@ -258,8 +262,6 @@ pub fn serve( None }; - let pwd = env::current_dir().unwrap(); - let mut watchers = vec!["content", "config.toml"]; if watching_static { watchers.push("static"); @@ -273,7 +275,7 @@ pub fn serve( println!( "Listening for changes in {}{}{{{}}}", - pwd.display(), + bp.display(), MAIN_SEPARATOR, watchers.join(", ") ); @@ -349,7 +351,8 @@ pub fn serve( if path.is_file() && is_temp_file(&path) { continue; } - let (change_kind, partial_path) = detect_change_kind(&pwd, &path); + let (change_kind, partial_path) = + detect_change_kind(&bp.canonicalize().unwrap(), &path); // We only care about changes in non-empty folders if path.is_dir() && is_folder_empty(&path) { @@ -381,6 +384,7 @@ pub fn serve( interface, port, output_dir, + bp.clone(), base_url, config_file, ) @@ -401,7 +405,7 @@ pub fn serve( ); let start = Instant::now(); - match detect_change_kind(&pwd, &path) { + match detect_change_kind(&bp.canonicalize().unwrap(), &path) { (ChangeKind::Content, _) => { console::info(&format!("-> Content changed {}", path.display())); // Force refresh @@ -420,6 +424,7 @@ pub fn serve( interface, port, output_dir, + bp.clone(), base_url, config_file, ) diff --git a/src/main.rs b/src/main.rs index 987e08b..2ad43ba 100644 --- a/src/main.rs +++ b/src/main.rs @@ -46,7 +46,12 @@ fn main() { console::info("Building site..."); let start = Instant::now(); let output_dir = matches.value_of("output_dir").unwrap(); - match cmd::build(config_file, matches.value_of("base_url"), output_dir) { + match cmd::build( + config_file, + matches.value_of("base_path"), + matches.value_of("base_url"), + output_dir, + ) { Ok(()) => console::report_elapsed_time(start), Err(e) => { console::unravel_errors("Failed to build the site", &e); @@ -79,9 +84,18 @@ fn main() { } let watch_only = matches.is_present("watch_only"); let output_dir = matches.value_of("output_dir").unwrap(); + let base_path = matches.value_of("base_path"); let base_url = matches.value_of("base_url").unwrap(); console::info("Building site..."); - match cmd::serve(interface, port, output_dir, base_url, config_file, watch_only) { + match cmd::serve( + interface, + port, + output_dir, + base_path, + base_url, + config_file, + watch_only, + ) { Ok(()) => (), Err(e) => { console::unravel_errors("", &e); From 6822c081f6d26707f13e152a5e867d467591cee9 Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Mon, 25 Mar 2019 10:00:11 +0100 Subject: [PATCH 82/82] Update changelog --- CHANGELOG.md | 1 + Cargo.lock | 81 ++++++++++++++++++++++++++-------------------------- 2 files changed, 41 insertions(+), 41 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4dfaace..1908ed2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,7 @@ rendering it and not anymore on the `page`/`section` variable - `load_data` now defaults to loading file as plain text, unless `format` is passed or the extension matches csv/toml/json - Sitemap entries get an additional `extra` field for pages only +- Add a `base-path` command line option to `build` and `serve` ## 0.5.1 (2018-12-14) diff --git a/Cargo.lock b/Cargo.lock index b94fc04..31ce1ae 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,6 +1,5 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. - [[package]] name = "MacTypes-sys" version = "2.1.0" @@ -25,9 +24,9 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-signal 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", @@ -35,7 +34,7 @@ dependencies = [ "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-proto 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-resolver 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)", - "uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", + "uuid 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -51,9 +50,9 @@ dependencies = [ "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-current-thread 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -101,8 +100,8 @@ dependencies = [ "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-current-thread 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -899,12 +898,12 @@ dependencies = [ "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "want 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1339,7 +1338,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "nom" -version = "4.2.2" +version = "4.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1890,13 +1889,13 @@ dependencies = [ "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", "serde_urlencoded 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", + "uuid 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2383,7 +2382,7 @@ dependencies = [ [[package]] name = "tokio" -version = "0.1.17" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2391,14 +2390,14 @@ dependencies = [ "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-current-thread 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-sync 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-trace-core 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2417,16 +2416,16 @@ dependencies = [ [[package]] name = "tokio-current-thread" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-executor" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2440,7 +2439,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2466,7 +2465,7 @@ dependencies = [ "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-sync 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2481,7 +2480,7 @@ dependencies = [ "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "signal-hook 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2511,7 +2510,7 @@ dependencies = [ [[package]] name = "tokio-threadpool" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2522,7 +2521,7 @@ dependencies = [ "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2533,7 +2532,7 @@ dependencies = [ "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2605,7 +2604,7 @@ dependencies = [ "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2628,7 +2627,7 @@ dependencies = [ "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "socket2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2651,7 +2650,7 @@ dependencies = [ "lru-cache 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)", "trust-dns-proto 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2802,7 +2801,7 @@ dependencies = [ [[package]] name = "uuid" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2831,7 +2830,7 @@ name = "v_escape_derive" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "nom 4.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "nom 4.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2842,7 +2841,7 @@ name = "v_escape_derive" version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "nom 4.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "nom 4.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3173,7 +3172,7 @@ dependencies = [ "checksum new_debug_unreachable 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f40f005c60db6e03bae699e414c58bf9aa7ea02a2d0b9bfbcf19286cc4c82b30" "checksum nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17" "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" -"checksum nom 4.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "22293d25d3f33a8567cc8a1dc20f40c7eeb761ce83d0fcca059858580790cac3" +"checksum nom 4.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2ad2a91a8e869eeb30b9cb3119ae87773a8f4ae617f41b1eb9c154b2905f7bd6" "checksum notify 4.0.10 (registry+https://github.com/rust-lang/crates.io-index)" = "abb1581693e44d8a0ec347ef12289625063f52a1dddc3f3c9befd5fc59e88943" "checksum num-derive 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d9fe8fcafd1b86a37ce8a1cfa15ae504817e0c8c2e7ad42767371461ac1d316d" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" @@ -3278,17 +3277,17 @@ dependencies = [ "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" "checksum tiff 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1e4834f28a0330cb9f3f2c87d2649dca723cb33802e2bdcf18da32759fbec7ce" "checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" -"checksum tokio 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "1021bb1f4150435ab8f222eb7ed37c60b2d57037def63ba43085a79f387512d7" +"checksum tokio 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)" = "65641e515a437b308ab131a82ce3042ff9795bef5d6c5a9be4eb24195c417fd9" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" -"checksum tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c756b04680eea21902a46fca4e9f410a2332c04995af590e07ff262e2193a9a3" -"checksum tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30c6dbf2d1ad1de300b393910e8a3aa272b724a400b6531da03eed99e329fbf0" +"checksum tokio-current-thread 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "d16217cad7f1b840c5a97dfb3c43b0c871fef423a6e8d2118c604e843662a443" +"checksum tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "83ea44c6c0773cc034771693711c35c677b4b5a4b21b9e7071704c54de7d555e" "checksum tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "3fe6dc22b08d6993916647d108a1a7d15b9cd29c4f4496c62b92c45b5041b7af" "checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926" "checksum tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6af16bfac7e112bea8b0442542161bfc41cbfa4466b580bdda7d18cb88b911ce" "checksum tokio-signal 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "dd6dc5276ea05ce379a16de90083ec80836440d5ef8a6a39545a3207373b8296" "checksum tokio-sync 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "fda385df506bf7546e70872767f71e81640f1f251bdf2fd8eb81a0eaec5fe022" "checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119" -"checksum tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "742e511f6ce2298aeb86fc9ea0d8df81c2388c6ebae3dc8a7316e8c9df0df801" +"checksum tokio-threadpool 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "ec5759cf26cf9659555f36c431b515e3d05f66831741c85b4b5d5dfb9cf1323c" "checksum tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2910970404ba6fa78c5539126a9ae2045d62e3713041e447f695f41405a120c6" "checksum tokio-trace-core 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "350c9edade9830dc185ae48ba45667a445ab59f6167ef6d0254ec9d2430d9dd3" "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92" @@ -3318,7 +3317,7 @@ dependencies = [ "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" "checksum utf-8 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "05e42f7c18b8f902290b009cde6d651262f956c98bc51bca4cd1d511c9cd85c7" "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" -"checksum uuid 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0238db0c5b605dd1cf51de0f21766f97fba2645897024461d6a00c036819a768" +"checksum uuid 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "600ef8213e9f8a0ac1f876e470e90780ae0478eabce7f76aff41b0f4ef0fd5c0" "checksum v_escape 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c8b50688edb86f4c092a1a9fe8bda004b0faa3197100897653809e97e09a2814" "checksum v_escape 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8865501b78eef9193c1b45486acf18ba889e5662eba98854d6fc59d8ecf3542d" "checksum v_escape_derive 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7cd994c63b487fef7aad31e5394ec04b9e24de7b32ea5251c9fb499cd2cbf44c"

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ʴ!0d(lymNaWUX@Bm^kyfUM;wH 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 KGx;+ZR^fNMtBte( delta 447942 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°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