@@ -6,6 +6,7 @@ | |||
- Add weight sorting | |||
- Remove `section` from the `page` rendering context: this is too expensive. Use | |||
the global function `get_section` if you need to get it | |||
- Fix next/previous in pagination being incorrect | |||
## 0.0.7 (2017-06-19) | |||
@@ -1,30 +1,9 @@ | |||
[root] | |||
name = "gutenberg" | |||
version = "0.0.7" | |||
name = "utils" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"clap 2.25.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"mount 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"notify 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"staticfile 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syntect 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"term-painter 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"ws 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
@@ -203,6 +182,33 @@ dependencies = [ | |||
"rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "config" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"rendering 0.1.0", | |||
"serde 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "content" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rendering 0.1.0", | |||
"serde 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "dbghelp-sys" | |||
version = "0.2.0" | |||
@@ -239,6 +245,15 @@ dependencies = [ | |||
"backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "errors" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "filetime" | |||
version = "0.1.10" | |||
@@ -261,6 +276,20 @@ name = "fnv" | |||
version = "1.0.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "front_matter" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "fsevent" | |||
version = "0.2.16" | |||
@@ -299,6 +328,26 @@ name = "glob" | |||
version = "0.2.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "gutenberg" | |||
version = "0.0.7" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"clap 2.25.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"content 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"mount 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"notify 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"site 0.1.0", | |||
"staticfile 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"term-painter 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
"ws 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "httparse" | |||
version = "1.2.3" | |||
@@ -607,6 +656,19 @@ dependencies = [ | |||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "pagination" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"content 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"serde 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "percent-encoding" | |||
version = "1.0.0" | |||
@@ -707,6 +769,24 @@ name = "regex-syntax" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rendering" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syntect 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"templates 0.1.0", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "rustc-demangle" | |||
version = "0.1.4" | |||
@@ -781,6 +861,25 @@ name = "sha1" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "site" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"content 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pagination 0.1.0", | |||
"rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"taxonomies 0.1.0", | |||
"tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"templates 0.1.0", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
"walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "slab" | |||
version = "0.1.3" | |||
@@ -853,6 +952,20 @@ dependencies = [ | |||
"yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "taxonomies" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"content 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"serde 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "tempdir" | |||
version = "0.3.5" | |||
@@ -861,6 +974,19 @@ dependencies = [ | |||
"rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "templates" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"content 0.1.0", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "tera" | |||
version = "0.10.8" | |||
@@ -13,25 +13,10 @@ keywords = ["static", "site", "generator", "blog"] | |||
name = "gutenberg" | |||
[dependencies] | |||
error-chain = "0.10" | |||
clap = "2" | |||
walkdir = "1" | |||
pulldown-cmark = "0" | |||
regex = "0.2" | |||
lazy_static = "0.2" | |||
glob = "0.2" | |||
serde = "1.0" | |||
serde_derive = "1.0" | |||
# tera = { path = "../tera" } | |||
# tera = { git = "https://github.com/Keats/tera" } | |||
tera = "0.10" | |||
slug = "0.1" | |||
syntect = { version = "1", features = ["static-onig"] } | |||
chrono = "0.4" | |||
toml = "0.4" | |||
term-painter = "0.2" | |||
base64 = "0.6" | |||
rayon = "0.8" | |||
# Below is for the serve cmd | |||
staticfile = "0.4" | |||
@@ -40,5 +25,22 @@ mount = "0.3" | |||
notify = "4" | |||
ws = "0.7" | |||
[dev-dependencies] | |||
tempdir = "0.3" | |||
site = { path = "components/site" } | |||
errors = { path = "components/errors" } | |||
content = { path = "components/content" } | |||
front_matter = { path = "components/front_matter" } | |||
utils = { path = "components/utils" } | |||
[workspace] | |||
members = [ | |||
"components/config", | |||
"components/content", | |||
"components/errors", | |||
"components/front_matter", | |||
"components/pagination", | |||
"components/rendering", | |||
"components/site", | |||
"components/taxonomies", | |||
"components/templates", | |||
"components/utils", | |||
] |
@@ -35,7 +35,7 @@ install: | |||
test_script: | |||
# we don't run the "test phase" when doing deploys | |||
- if [%APPVEYOR_REPO_TAG%]==[false] ( | |||
cargo test --target %TARGET% | |||
cargo test --all --target %TARGET% | |||
) | |||
before_deploy: | |||
@@ -0,0 +1,27 @@ | |||
//! Benchmarking separate functions of Gutenberg | |||
#![feature(test)] | |||
extern crate test; | |||
extern crate gutenberg; | |||
extern crate tempdir; | |||
use std::env; | |||
use tempdir::TempDir; | |||
use gutenberg::{Site, sort_pages, SortBy}; | |||
fn setup_site(name: &str) -> Site { | |||
let mut path = env::current_dir().unwrap().to_path_buf(); | |||
path.push("benches"); | |||
path.push(name); | |||
let mut site = Site::new(&path, "config.toml").unwrap(); | |||
site.load().unwrap(); | |||
site | |||
} | |||
#[bench] | |||
fn bench_sort_pages_medium_blog(b: &mut test::Bencher) { | |||
let mut site = setup_site("huge-blog"); | |||
let section = site.sections.values().next().unwrap().clone(); | |||
b.iter(|| sort_pages(section.pages.clone(), SortBy::None)); | |||
} |
@@ -8,7 +8,7 @@ extern crate tempdir; | |||
use std::env; | |||
use tempdir::TempDir; | |||
use gutenberg::Site; | |||
use gutenberg::{Site, sort_pages}; | |||
fn setup_site(name: &str) -> Site { | |||
@@ -58,3 +58,16 @@ fn bench_render_small_section_with_pages_and_no_pagination(b: &mut test::Bencher | |||
section.meta.template = None; | |||
b.iter(|| site.render_section(§ion, true).unwrap()); | |||
} | |||
#[bench] | |||
fn bench_sort_sections_pages_medium_blog(b: &mut test::Bencher) { | |||
let mut site = setup_site("medium-blog"); | |||
b.iter(|| site.sort_sections_pages(None)); | |||
} | |||
#[bench] | |||
fn bench_sort_sections_pages_medium_kb(b: &mut test::Bencher) { | |||
let mut site = setup_site("medium-kb"); | |||
b.iter(|| site.sort_sections_pages(None)); | |||
} |
@@ -11,8 +11,8 @@ main() { | |||
return | |||
fi | |||
cross test --target $TARGET | |||
cross test --target $TARGET --release | |||
cross test --all --target $TARGET | |||
cross test --all --target $TARGET --release | |||
} | |||
# we don't run the "test phase" when doing deploys | |||
@@ -0,0 +1,674 @@ | |||
[root] | |||
name = "config" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"rendering 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "aho-corasick" | |||
version = "0.6.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace" | |||
version = "0.3.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"dbghelp-sys 0.2.0 (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.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace-sys" | |||
version = "0.1.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "base64" | |||
version = "0.5.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bincode" | |||
version = "0.8.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.8.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.9.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "byteorder" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "cfg-if" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "chrono" | |||
version = "0.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "chrono" | |||
version = "0.4.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "cmake" | |||
version = "0.1.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dbghelp-sys" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dtoa" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "error-chain" | |||
version = "0.10.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "errors" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "flate2" | |||
version = "0.2.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "fnv" | |||
version = "1.0.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "front_matter" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "gcc" | |||
version = "0.3.51" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "getopts" | |||
version = "0.2.14" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "glob" | |||
version = "0.2.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "humansize" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "idna" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "itoa" | |||
version = "0.3.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "kernel32-sys" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "lazy_static" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "libc" | |||
version = "0.2.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "matches" | |||
version = "0.1.6" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "memchr" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "miniz-sys" | |||
version = "0.1.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-integer" | |||
version = "0.1.34" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-iter" | |||
version = "0.1.33" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-traits" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "onig" | |||
version = "1.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "onig_sys" | |||
version = "63.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "percent-encoding" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pest" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pkg-config" | |||
version = "0.3.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "plist" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "pulldown-cmark" | |||
version = "0.0.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "quote" | |||
version = "0.3.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "redox_syscall" | |||
version = "0.1.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "regex" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "regex-syntax" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rendering" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "rustc-demangle" | |||
version = "0.1.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "same-file" | |||
version = "0.1.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde_derive" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_derive_internals" | |||
version = "0.15.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_json" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "slug" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syn" | |||
version = "0.11.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "synom" | |||
version = "0.11.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syntect" | |||
version = "1.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "tera" | |||
version = "0.10.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "thread_local" | |||
version = "0.3.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "time" | |||
version = "0.1.37" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "toml" | |||
version = "0.4.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-bidi" | |||
version = "0.3.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-normalization" | |||
version = "0.1.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unicode-xid" | |||
version = "0.0.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unidecode" | |||
version = "0.2.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.5.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "utf8-ranges" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "void" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "walkdir" | |||
version = "1.0.7" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "winapi" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "winapi-build" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "xml-rs" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "yaml-rust" | |||
version = "0.3.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[metadata] | |||
"checksum aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "500909c4f87a9e52355b26626d890833e9e1d53ac566db76c36faa984b889699" | |||
"checksum backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "72f9b4182546f4b04ebc4ab7f84948953a118bd6021a1b6a6c909e3e94f6be76" | |||
"checksum backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "3a0d842ea781ce92be2bf78a9b38883948542749640b8378b3b2f03d1fd9f1ff" | |||
"checksum base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "30e93c03064e7590d0466209155251b90c22e37fab1daf2771582598b5827557" | |||
"checksum bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e103c8b299b28a9c6990458b7013dc4a8356a9b854c51b9883241f5866fac36e" | |||
"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d" | |||
"checksum bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1370e9fc2a6ae53aea8b7a5110edbd08836ed87c88736dfabccade1c2b44bff4" | |||
"checksum bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5" | |||
"checksum byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c40977b0ee6b9885c9013cd41d9feffdd22deb3bb4dc3a71d901cc7a77de18c8" | |||
"checksum cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d0c47d456a36ebf0536a6705c83c1cbbcb9255fbc1d905a6ded104f479268a29" | |||
"checksum chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "158b0bd7d75cbb6bf9c25967a48a2e9f77da95876b858eadfabaa99cd069de6e" | |||
"checksum chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7c20ebe0b2b08b0aeddba49c609fe7957ba2e33449882cb186a180bc60682fa9" | |||
"checksum cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b8ebbb35d3dc9cd09497168f33de1acb79b265d350ab0ac34133b98f8509af1f" | |||
"checksum dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "97590ba53bcb8ac28279161ca943a924d1fd4a8fb3fa63302591647c4fc5b850" | |||
"checksum dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "80c8b71fd71146990a9742fc06dcbbde19161a267e0ad4e572c35162f4578c90" | |||
"checksum error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9435d864e017c3c6afeac1654189b06cdb491cf2ff73dbf0d73b0f292f42ff8" | |||
"checksum flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)" = "36df0166e856739905cd3d7e0b210fe818592211a008862599845e012d8d304c" | |||
"checksum fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6cc484842f1e2884faf56f529f960cc12ad8c71ce96cc7abba0a067c98fee344" | |||
"checksum gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)" = "120d07f202dcc3f72859422563522b66fe6463a4c513df062874daad05f85f0a" | |||
"checksum getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9047cfbd08a437050b363d35ef160452c5fe8ea5187ae0a624708c91581d685" | |||
"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" | |||
"checksum humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "92d211e6e70b05749dce515b47684f29a3c8c38bbbb21c50b30aff9eca1b0bd3" | |||
"checksum idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2233d4940b1f19f0418c158509cd7396b8d70a5db5705ce410914dc8fa603b37" | |||
"checksum itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eb2f404fbc66fd9aac13e998248505e7ecb2ad8e44ab6388684c5fb11c6c251c" | |||
"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" | |||
"checksum lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3b37545ab726dd833ec6420aaba8231c5b320814b9029ad585555d2a03e94fbf" | |||
"checksum libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)" = "38f5c2b18a287cf78b4097db62e20f43cace381dc76ae5c0a3073067f78b7ddc" | |||
"checksum matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "100aabe6b8ff4e4a7e32c1c13523379802df0772b82466207ac25b013f193376" | |||
"checksum memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1dbccc0e46f1ea47b9f17e6d67c5a96bd27030519c519c9c91327e31275a47b4" | |||
"checksum miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "28eaee17666671fa872e567547e8428e83308ebe5808cdf6a0e28397dbe2c726" | |||
"checksum num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "2c3a3dc9f30bf824141521b30c908a859ab190b76e20435fcd89f35eb6583887" | |||
"checksum num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)" = "ef1a4bf6f9174aa5783a9b4cc892cacd11aebad6c69ad027a0b65c6ca5f8aa37" | |||
"checksum num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)" = "f7d1891bd7b936f12349b7d1403761c8a0b85a18b148e9da4429d5d102c1a41e" | |||
"checksum num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "1708c0628602a98b52fad936cf3edb9a107af06e52e49fdf0707e884456a6af6" | |||
"checksum onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee619da9cf707b167098e84fb00f10db61d5a662d1d29b59822bcac3a81553dd" | |||
"checksum onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "531682ab45a2cd40eff91f29340dae975f25336d2b61e624adabed39e61d7fb3" | |||
"checksum percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de154f638187706bde41d9b4738748933d64e6b37bdbffc0b47a97d16a6ae356" | |||
"checksum pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3e2e823a5967bb4cdc6d3e46f47baaf4ecfeae44413a642b74ad44e59e49c7f6" | |||
"checksum pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "3a8b4c6b8165cd1a1cd4b9b120978131389f64bdaf456435caa41e630edba903" | |||
"checksum plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1e2f7e9574aabcf57bc5e9f602caabdffffa8179b0c130a039f7895fea3dbdb5" | |||
"checksum pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)" = "378e941dbd392c101f2cb88097fa4d7167bc421d4b88de3ff7dbee503bc3233b" | |||
"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a" | |||
"checksum redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "e4a357d14a12e90a37d658725df0e6468504750b5948b9710f83f94a0c5818e8" | |||
"checksum regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1731164734096285ec2a5ec7fea5248ae2f5485b3feeb0115af4fda2183b2d1b" | |||
"checksum regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad890a5eef7953f55427c50575c680c42841653abd2b028b68cd223d157f62db" | |||
"checksum rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3058a43ada2c2d0b92b3ae38007a2d0fa5e9db971be260e0171408a4ff471c95" | |||
"checksum same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d931a44fdaa43b8637009e7632a02adc4f2b2e0733c08caa4cf00e8da4a117a7" | |||
"checksum serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6a7c6b751a2e8d5df57a5ff71b5b4fc8aaee9ee28ff1341d640dd130bb5f4f7a" | |||
"checksum serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "2f6ca58905ebd3c3b285a8a6d4f3ac92b92c0d7951d5649b1bdd212549c06639" | |||
"checksum serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)" = "37aee4e0da52d801acfbc0cc219eb1eda7142112339726e427926a6f6ee65d3a" | |||
"checksum serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "48b04779552e92037212c3615370f6bd57a40ebba7f20e554ff9f55e41a69a7b" | |||
"checksum slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f5ff4b43cb07b86c5f9236c92714a22cdf9e5a27a7d85e398e2c9403328cb8" | |||
"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" | |||
"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" | |||
"checksum syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2f436345e5b6ebbfdf51b20b95cd9bcb82576262c340bad9cf815078d76b082a" | |||
"checksum tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)" = "62736a6d748fd2c5a8b4be21010e37d79f78aea3c2e07a9e13ff5c70864a3129" | |||
"checksum thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1697c4b57aeeb7a536b647165a2825faddffb1d3bad386d507709bd51a90bb14" | |||
"checksum time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "ffd7ccbf969a892bf83f1e441126968a07a3941c24ff522a26af9f9f4585d1a3" | |||
"checksum toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b0601da6c97135c8d330c7a13a013ca6cd4143221b01de2f8d4edc50a9e551c7" | |||
"checksum unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a6a2c4e3710edd365cd7e78383153ed739fa31af19f9172f72d3575060f5a43a" | |||
"checksum unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "51ccda9ef9efa3f7ef5d91e8f9b83bbe6955f9bf86aec89d5cce2c874625920f" | |||
"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc" | |||
"checksum unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2adb95ee07cd579ed18131f2d9e7a17c25a4b76022935c7f2460d2bfae89fd2" | |||
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" | |||
"checksum url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eeb819346883532a271eb626deb43c4a1bb4c4dd47c519bd78137c3e72a4fe27" | |||
"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122" | |||
"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" | |||
"checksum walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "bb08f9e670fab86099470b97cd2b252d6527f0b3cc1401acdb595ffc9dd288ff" | |||
"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" | |||
"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" | |||
"checksum xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b46ee689ba7a669c08a1170c2348d2516c62dc461135c9e86b2f1f476e07be4a" | |||
"checksum yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e66366e18dc58b46801afbf2ca7661a9f59cc8c5962c29892b6039b4f86fa992" |
@@ -0,0 +1,12 @@ | |||
[package] | |||
name = "config" | |||
version = "0.1.0" | |||
authors = ["Vincent Prouillet <vincent@wearewizards.io>"] | |||
[dependencies] | |||
toml = "0.4" | |||
serde = "1.0" | |||
serde_derive = "1.0" | |||
errors = { path = "../errors" } | |||
rendering = { path = "../rendering" } |
@@ -1,9 +1,16 @@ | |||
#[macro_use] | |||
extern crate serde_derive; | |||
extern crate toml; | |||
#[macro_use] | |||
extern crate errors; | |||
extern crate rendering; | |||
use std::collections::HashMap; | |||
use std::fs::File; | |||
use std::io::prelude::*; | |||
use std::path::Path; | |||
use std::collections::HashMap; | |||
use toml::{Value as Toml, self}; | |||
use toml::{Value as Toml}; | |||
use errors::{Result, ResultExt}; | |||
use rendering::highlighting::THEME_SET; | |||
@@ -71,7 +78,7 @@ impl Config { | |||
if !THEME_SET.themes.contains_key(t) { | |||
bail!("Theme {} not available", t) | |||
} | |||
}, | |||
} | |||
None => config.highlight_theme = Some("base16-ocean-dark".to_string()) | |||
}; | |||
@@ -0,0 +1,779 @@ | |||
[root] | |||
name = "content" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rendering 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "aho-corasick" | |||
version = "0.6.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace" | |||
version = "0.3.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"dbghelp-sys 0.2.0 (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.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace-sys" | |||
version = "0.1.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "base64" | |||
version = "0.5.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bincode" | |||
version = "0.8.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.8.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.9.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "byteorder" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "cfg-if" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "chrono" | |||
version = "0.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "chrono" | |||
version = "0.4.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "cmake" | |||
version = "0.1.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "coco" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"either 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"scopeguard 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "config" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"rendering 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dbghelp-sys" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dtoa" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "either" | |||
version = "1.1.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "error-chain" | |||
version = "0.10.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "errors" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "flate2" | |||
version = "0.2.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "fnv" | |||
version = "1.0.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "front_matter" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "futures" | |||
version = "0.1.14" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "gcc" | |||
version = "0.3.51" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "getopts" | |||
version = "0.2.14" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "glob" | |||
version = "0.2.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "humansize" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "idna" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "itoa" | |||
version = "0.3.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "kernel32-sys" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "lazy_static" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "libc" | |||
version = "0.2.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "matches" | |||
version = "0.1.6" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "memchr" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "miniz-sys" | |||
version = "0.1.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-integer" | |||
version = "0.1.34" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-iter" | |||
version = "0.1.33" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-traits" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "num_cpus" | |||
version = "1.6.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "onig" | |||
version = "1.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "onig_sys" | |||
version = "63.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "percent-encoding" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pest" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pkg-config" | |||
version = "0.3.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "plist" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "pulldown-cmark" | |||
version = "0.0.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "quote" | |||
version = "0.3.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rand" | |||
version = "0.3.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "rayon" | |||
version = "0.8.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"rayon-core 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "rayon-core" | |||
version = "1.2.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"coco 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"futures 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num_cpus 1.6.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "redox_syscall" | |||
version = "0.1.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "regex" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "regex-syntax" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rendering" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "rustc-demangle" | |||
version = "0.1.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "same-file" | |||
version = "0.1.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "scopeguard" | |||
version = "0.3.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde_derive" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_derive_internals" | |||
version = "0.15.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_json" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "slug" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syn" | |||
version = "0.11.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "synom" | |||
version = "0.11.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syntect" | |||
version = "1.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "tempdir" | |||
version = "0.3.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "tera" | |||
version = "0.10.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "thread_local" | |||
version = "0.3.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "time" | |||
version = "0.1.37" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "toml" | |||
version = "0.4.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-bidi" | |||
version = "0.3.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-normalization" | |||
version = "0.1.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unicode-xid" | |||
version = "0.0.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unidecode" | |||
version = "0.2.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.5.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "utf8-ranges" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "utils" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
] | |||
[[package]] | |||
name = "void" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "walkdir" | |||
version = "1.0.7" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "winapi" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "winapi-build" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "xml-rs" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "yaml-rust" | |||
version = "0.3.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[metadata] | |||
"checksum aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "500909c4f87a9e52355b26626d890833e9e1d53ac566db76c36faa984b889699" | |||
"checksum backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "72f9b4182546f4b04ebc4ab7f84948953a118bd6021a1b6a6c909e3e94f6be76" | |||
"checksum backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "3a0d842ea781ce92be2bf78a9b38883948542749640b8378b3b2f03d1fd9f1ff" | |||
"checksum base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "30e93c03064e7590d0466209155251b90c22e37fab1daf2771582598b5827557" | |||
"checksum bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e103c8b299b28a9c6990458b7013dc4a8356a9b854c51b9883241f5866fac36e" | |||
"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d" | |||
"checksum bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1370e9fc2a6ae53aea8b7a5110edbd08836ed87c88736dfabccade1c2b44bff4" | |||
"checksum bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5" | |||
"checksum byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c40977b0ee6b9885c9013cd41d9feffdd22deb3bb4dc3a71d901cc7a77de18c8" | |||
"checksum cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d0c47d456a36ebf0536a6705c83c1cbbcb9255fbc1d905a6ded104f479268a29" | |||
"checksum chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "158b0bd7d75cbb6bf9c25967a48a2e9f77da95876b858eadfabaa99cd069de6e" | |||
"checksum chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7c20ebe0b2b08b0aeddba49c609fe7957ba2e33449882cb186a180bc60682fa9" | |||
"checksum cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b8ebbb35d3dc9cd09497168f33de1acb79b265d350ab0ac34133b98f8509af1f" | |||
"checksum coco 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c06169f5beb7e31c7c67ebf5540b8b472d23e3eade3b2ec7d1f5b504a85f91bd" | |||
"checksum dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "97590ba53bcb8ac28279161ca943a924d1fd4a8fb3fa63302591647c4fc5b850" | |||
"checksum dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "80c8b71fd71146990a9742fc06dcbbde19161a267e0ad4e572c35162f4578c90" | |||
"checksum either 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "18785c1ba806c258137c937e44ada9ee7e69a37e3c72077542cd2f069d78562a" | |||
"checksum error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9435d864e017c3c6afeac1654189b06cdb491cf2ff73dbf0d73b0f292f42ff8" | |||
"checksum flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)" = "36df0166e856739905cd3d7e0b210fe818592211a008862599845e012d8d304c" | |||
"checksum fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6cc484842f1e2884faf56f529f960cc12ad8c71ce96cc7abba0a067c98fee344" | |||
"checksum futures 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4b63a4792d4f8f686defe3b39b92127fea6344de5d38202b2ee5a11bbbf29d6a" | |||
"checksum gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)" = "120d07f202dcc3f72859422563522b66fe6463a4c513df062874daad05f85f0a" | |||
"checksum getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9047cfbd08a437050b363d35ef160452c5fe8ea5187ae0a624708c91581d685" | |||
"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" | |||
"checksum humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "92d211e6e70b05749dce515b47684f29a3c8c38bbbb21c50b30aff9eca1b0bd3" | |||
"checksum idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2233d4940b1f19f0418c158509cd7396b8d70a5db5705ce410914dc8fa603b37" | |||
"checksum itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eb2f404fbc66fd9aac13e998248505e7ecb2ad8e44ab6388684c5fb11c6c251c" | |||
"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" | |||
"checksum lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3b37545ab726dd833ec6420aaba8231c5b320814b9029ad585555d2a03e94fbf" | |||
"checksum libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)" = "38f5c2b18a287cf78b4097db62e20f43cace381dc76ae5c0a3073067f78b7ddc" | |||
"checksum matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "100aabe6b8ff4e4a7e32c1c13523379802df0772b82466207ac25b013f193376" | |||
"checksum memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1dbccc0e46f1ea47b9f17e6d67c5a96bd27030519c519c9c91327e31275a47b4" | |||
"checksum miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "28eaee17666671fa872e567547e8428e83308ebe5808cdf6a0e28397dbe2c726" | |||
"checksum num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "2c3a3dc9f30bf824141521b30c908a859ab190b76e20435fcd89f35eb6583887" | |||
"checksum num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)" = "ef1a4bf6f9174aa5783a9b4cc892cacd11aebad6c69ad027a0b65c6ca5f8aa37" | |||
"checksum num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)" = "f7d1891bd7b936f12349b7d1403761c8a0b85a18b148e9da4429d5d102c1a41e" | |||
"checksum num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "1708c0628602a98b52fad936cf3edb9a107af06e52e49fdf0707e884456a6af6" | |||
"checksum num_cpus 1.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "aec53c34f2d0247c5ca5d32cca1478762f301740468ee9ee6dcb7a0dd7a0c584" | |||
"checksum onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee619da9cf707b167098e84fb00f10db61d5a662d1d29b59822bcac3a81553dd" | |||
"checksum onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "531682ab45a2cd40eff91f29340dae975f25336d2b61e624adabed39e61d7fb3" | |||
"checksum percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de154f638187706bde41d9b4738748933d64e6b37bdbffc0b47a97d16a6ae356" | |||
"checksum pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3e2e823a5967bb4cdc6d3e46f47baaf4ecfeae44413a642b74ad44e59e49c7f6" | |||
"checksum pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "3a8b4c6b8165cd1a1cd4b9b120978131389f64bdaf456435caa41e630edba903" | |||
"checksum plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1e2f7e9574aabcf57bc5e9f602caabdffffa8179b0c130a039f7895fea3dbdb5" | |||
"checksum pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)" = "378e941dbd392c101f2cb88097fa4d7167bc421d4b88de3ff7dbee503bc3233b" | |||
"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a" | |||
"checksum rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "022e0636ec2519ddae48154b028864bdce4eaf7d35226ab8e65c611be97b189d" | |||
"checksum rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b614fe08b6665cb9a231d07ac1364b0ef3cb3698f1239ee0c4c3a88a524f54c8" | |||
"checksum rayon-core 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7febc28567082c345f10cddc3612c6ea020fc3297a1977d472cf9fdb73e6e493" | |||
"checksum redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "e4a357d14a12e90a37d658725df0e6468504750b5948b9710f83f94a0c5818e8" | |||
"checksum regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1731164734096285ec2a5ec7fea5248ae2f5485b3feeb0115af4fda2183b2d1b" | |||
"checksum regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad890a5eef7953f55427c50575c680c42841653abd2b028b68cd223d157f62db" | |||
"checksum rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3058a43ada2c2d0b92b3ae38007a2d0fa5e9db971be260e0171408a4ff471c95" | |||
"checksum same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d931a44fdaa43b8637009e7632a02adc4f2b2e0733c08caa4cf00e8da4a117a7" | |||
"checksum scopeguard 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c79eb2c3ac4bc2507cda80e7f3ac5b88bd8eae4c0914d5663e6a8933994be918" | |||
"checksum serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6a7c6b751a2e8d5df57a5ff71b5b4fc8aaee9ee28ff1341d640dd130bb5f4f7a" | |||
"checksum serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "2f6ca58905ebd3c3b285a8a6d4f3ac92b92c0d7951d5649b1bdd212549c06639" | |||
"checksum serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)" = "37aee4e0da52d801acfbc0cc219eb1eda7142112339726e427926a6f6ee65d3a" | |||
"checksum serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "48b04779552e92037212c3615370f6bd57a40ebba7f20e554ff9f55e41a69a7b" | |||
"checksum slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f5ff4b43cb07b86c5f9236c92714a22cdf9e5a27a7d85e398e2c9403328cb8" | |||
"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" | |||
"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" | |||
"checksum syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2f436345e5b6ebbfdf51b20b95cd9bcb82576262c340bad9cf815078d76b082a" | |||
"checksum tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "87974a6f5c1dfb344d733055601650059a3363de2a6104819293baff662132d6" | |||
"checksum tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)" = "62736a6d748fd2c5a8b4be21010e37d79f78aea3c2e07a9e13ff5c70864a3129" | |||
"checksum thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1697c4b57aeeb7a536b647165a2825faddffb1d3bad386d507709bd51a90bb14" | |||
"checksum time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "ffd7ccbf969a892bf83f1e441126968a07a3941c24ff522a26af9f9f4585d1a3" | |||
"checksum toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b0601da6c97135c8d330c7a13a013ca6cd4143221b01de2f8d4edc50a9e551c7" | |||
"checksum unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a6a2c4e3710edd365cd7e78383153ed739fa31af19f9172f72d3575060f5a43a" | |||
"checksum unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "51ccda9ef9efa3f7ef5d91e8f9b83bbe6955f9bf86aec89d5cce2c874625920f" | |||
"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc" | |||
"checksum unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2adb95ee07cd579ed18131f2d9e7a17c25a4b76022935c7f2460d2bfae89fd2" | |||
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" | |||
"checksum url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eeb819346883532a271eb626deb43c4a1bb4c4dd47c519bd78137c3e72a4fe27" | |||
"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122" | |||
"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" | |||
"checksum walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "bb08f9e670fab86099470b97cd2b252d6527f0b3cc1401acdb595ffc9dd288ff" | |||
"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" | |||
"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" | |||
"checksum xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b46ee689ba7a669c08a1170c2348d2516c62dc461135c9e86b2f1f476e07be4a" | |||
"checksum yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e66366e18dc58b46801afbf2ca7661a9f59cc8c5962c29892b6039b4f86fa992" |
@@ -0,0 +1,19 @@ | |||
[package] | |||
name = "content" | |||
version = "0.1.0" | |||
authors = ["Vincent Prouillet <vincent@wearewizards.io>"] | |||
[dependencies] | |||
tera = "0.10" | |||
serde = "1.0" | |||
slug = "0.1" | |||
rayon = "0.8" | |||
errors = { path = "../errors" } | |||
config = { path = "../config" } | |||
utils = { path = "../utils" } | |||
rendering = { path = "../rendering" } | |||
front_matter = { path = "../front_matter" } | |||
[dev-dependencies] | |||
tempdir = "0.3" |
@@ -0,0 +1,135 @@ | |||
#![feature(test)] | |||
extern crate test; | |||
extern crate tera; | |||
extern crate content; | |||
extern crate front_matter; | |||
extern crate config; | |||
use std::collections::HashMap; | |||
use config::Config; | |||
use tera::Tera; | |||
use front_matter::{SortBy, InsertAnchor}; | |||
use content::{Page, sort_pages, populate_previous_and_next_pages}; | |||
fn create_pages(number: usize, sort_by: SortBy) -> Vec<Page> { | |||
let mut pages = vec![]; | |||
let config = Config::default(); | |||
let tera = Tera::default(); | |||
let permalinks = HashMap::new(); | |||
for i in 0..number { | |||
let mut page = Page::default(); | |||
match sort_by { | |||
SortBy::Weight => { page.meta.weight = Some(i); }, | |||
SortBy::Order => { page.meta.order = Some(i); }, | |||
_ => (), | |||
}; | |||
page.raw_content = r#" | |||
# Modus cognitius profanam ne duae virtutis mundi | |||
## Ut vita | |||
Lorem markdownum litora, care ponto nomina, et ut aspicit gelidas sui et | |||
purpureo genuit. Tamen colla venientis [delphina](http://nil-sol.com/ecquis) | |||
Tusci et temptata citaeque curam isto ubi vult vulnere reppulit. | |||
- Seque vidit flendoque de quodam | |||
- Dabit minimos deiecto caputque noctis pluma | |||
- Leti coniunx est Helicen | |||
- Illius pulvereumque Icare inpositos | |||
- Vivunt pereo pluvio tot ramos Olenios gelidis | |||
- Quater teretes natura inde | |||
### A subsection | |||
Protinus dicunt, breve per, et vivacis genus Orphei munere. Me terram [dimittere | |||
casside](http://corpus.org/) pervenit saxo primoque frequentat genuum sorori | |||
praeferre causas Libys. Illud in serpit adsuetam utrimque nunc haberent, | |||
**terrae si** veni! Hectoreis potes sumite [Mavortis retusa](http://tua.org/) | |||
granum captantur potuisse Minervae, frugum. | |||
> Clivo sub inprovisoque nostrum minus fama est, discordia patrem petebat precatur | |||
absumitur, poena per sit. Foramina *tamen cupidine* memor supplex tollentes | |||
dictum unam orbem, Anubis caecae. Viderat formosior tegebat satis, Aethiopasque | |||
sit submisso coniuge tristis ubi! | |||
## Praeceps Corinthus totidem quem crus vultum cape | |||
```rs | |||
#[derive(Debug)] | |||
pub struct Site { | |||
/// The base path of the gutenberg site | |||
pub base_path: PathBuf, | |||
/// The parsed config for the site | |||
pub config: Config, | |||
pub pages: HashMap<PathBuf, Page>, | |||
pub sections: HashMap<PathBuf, Section>, | |||
pub tera: Tera, | |||
live_reload: bool, | |||
output_path: PathBuf, | |||
static_path: PathBuf, | |||
pub tags: Option<Taxonomy>, | |||
pub categories: Option<Taxonomy>, | |||
/// A map of all .md files (section and pages) and their permalink | |||
/// We need that if there are relative links in the content that need to be resolved | |||
pub permalinks: HashMap<String, String>, | |||
} | |||
``` | |||
## More stuff | |||
And a shortcode: | |||
{{ youtube(id="my_youtube_id") }} | |||
### Another subsection | |||
Gotta make the toc do a little bit of work | |||
# A big title | |||
- hello | |||
- world | |||
- ! | |||
```py | |||
if __name__ == "__main__": | |||
gen_site("basic-blog", [""], 250, paginate=True) | |||
``` | |||
"#.to_string(); | |||
page.render_markdown(&permalinks, &tera, &config, InsertAnchor::None).unwrap(); | |||
pages.push(page); | |||
} | |||
pages | |||
} | |||
// Most of the time spent in those benches are due to the .clone()... | |||
// but i don't know how to remove them so there are some baseline bench with | |||
// just the cloning and with a bit of math we can figure it out | |||
#[bench] | |||
fn bench_baseline_cloning(b: &mut test::Bencher) { | |||
let pages = create_pages(250, SortBy::Order); | |||
b.iter(|| pages.clone()); | |||
} | |||
#[bench] | |||
fn bench_sorting_none(b: &mut test::Bencher) { | |||
let pages = create_pages(250, SortBy::Order); | |||
b.iter(|| sort_pages(pages.clone(), SortBy::None)); | |||
} | |||
#[bench] | |||
fn bench_sorting_order(b: &mut test::Bencher) { | |||
let pages = create_pages(250, SortBy::Order); | |||
b.iter(|| sort_pages(pages.clone(), SortBy::Order)); | |||
} | |||
#[bench] | |||
fn bench_populate_previous_and_next_pages(b: &mut test::Bencher) { | |||
let pages = create_pages(250, SortBy::Order); | |||
let (sorted_pages, _) = sort_pages(pages, SortBy::Order); | |||
b.iter(|| populate_previous_and_next_pages(sorted_pages.clone())); | |||
} |
@@ -0,0 +1,24 @@ | |||
extern crate tera; | |||
extern crate slug; | |||
extern crate serde; | |||
extern crate rayon; | |||
extern crate errors; | |||
extern crate config; | |||
extern crate front_matter; | |||
extern crate rendering; | |||
extern crate utils; | |||
#[cfg(test)] | |||
extern crate tempdir; | |||
mod file_info; | |||
mod page; | |||
mod section; | |||
mod sorting; | |||
pub use file_info::FileInfo; | |||
pub use page::Page; | |||
pub use section::Section; | |||
pub use sorting::{sort_pages, populate_previous_and_next_pages}; |
@@ -10,13 +10,12 @@ use slug::slugify; | |||
use errors::{Result, ResultExt}; | |||
use config::Config; | |||
use utils::fs::{read_file, find_related_assets}; | |||
use utils::site::get_reading_analytics; | |||
use front_matter::{PageFrontMatter, InsertAnchor, split_page_content}; | |||
use rendering::markdown::markdown_to_html; | |||
use rendering::context::Context; | |||
use fs::{read_file}; | |||
use content::utils::{find_related_assets, get_reading_analytics}; | |||
use content::file_info::FileInfo; | |||
use content::{Header}; | |||
use rendering::{Context, Header, markdown_to_html}; | |||
use file_info::FileInfo; | |||
#[derive(Clone, Debug, PartialEq)] | |||
@@ -121,7 +120,14 @@ impl Page { | |||
/// We need access to all pages url to render links relative to content | |||
/// so that can't happen at the same time as parsing | |||
pub fn render_markdown(&mut self, permalinks: &HashMap<String, String>, tera: &Tera, config: &Config, anchor_insert: InsertAnchor) -> Result<()> { | |||
let context = Context::new(tera, config, &self.permalink, permalinks, anchor_insert); | |||
let context = Context::new( | |||
tera, | |||
config.highlight_code.unwrap(), | |||
config.highlight_theme.clone().unwrap(), | |||
&self.permalink, | |||
permalinks, | |||
anchor_insert | |||
); | |||
let res = markdown_to_html(&self.raw_content, &context)?; | |||
self.content = res.0; | |||
self.toc = res.1; |
@@ -8,12 +8,11 @@ use serde::ser::{SerializeStruct, self}; | |||
use config::Config; | |||
use front_matter::{SectionFrontMatter, split_section_content}; | |||
use errors::{Result, ResultExt}; | |||
use fs::{read_file}; | |||
use rendering::markdown::markdown_to_html; | |||
use rendering::context::Context; | |||
use content::Page; | |||
use content::file_info::FileInfo; | |||
use content::Header; | |||
use utils::fs::read_file; | |||
use rendering::{Context, Header, markdown_to_html}; | |||
use page::Page; | |||
use file_info::FileInfo; | |||
#[derive(Clone, Debug, PartialEq)] | |||
@@ -90,7 +89,14 @@ impl Section { | |||
/// We need access to all pages url to render links relative to content | |||
/// so that can't happen at the same time as parsing | |||
pub fn render_markdown(&mut self, permalinks: &HashMap<String, String>, tera: &Tera, config: &Config) -> Result<()> { | |||
let context = Context::new(tera, config, &self.permalink, permalinks, self.meta.insert_anchor.unwrap()); | |||
let context = Context::new( | |||
tera, | |||
config.highlight_code.unwrap(), | |||
config.highlight_theme.clone().unwrap(), | |||
&self.permalink, | |||
permalinks, | |||
self.meta.insert_anchor.unwrap() | |||
); | |||
let res = markdown_to_html(&self.raw_content, &context)?; | |||
self.content = res.0; | |||
self.toc = res.1; |
@@ -1,83 +1,61 @@ | |||
use content::Page; | |||
#[derive(Debug, Copy, Clone, PartialEq, Serialize, Deserialize)] | |||
#[serde(rename_all = "lowercase")] | |||
pub enum SortBy { | |||
Date, | |||
Order, | |||
Weight, | |||
None, | |||
} | |||
use rayon::prelude::*; | |||
use page::Page; | |||
use front_matter::SortBy; | |||
/// Sort pages using the method for the given section | |||
/// Sort pages by the given criteria | |||
/// | |||
/// Any pages that doesn't have a date when the sorting method is date or order | |||
/// when the sorting method is order will be ignored. | |||
/// Any pages that doesn't have a the required field when the sorting method is other than none | |||
/// will be ignored. | |||
pub fn sort_pages(pages: Vec<Page>, sort_by: SortBy) -> (Vec<Page>, Vec<Page>) { | |||
match sort_by { | |||
SortBy::Date => { | |||
let mut can_be_sorted = vec![]; | |||
let mut cannot_be_sorted = vec![]; | |||
for page in pages { | |||
if page.meta.date.is_some() { | |||
can_be_sorted.push(page); | |||
} else { | |||
cannot_be_sorted.push(page); | |||
} | |||
} | |||
can_be_sorted.sort_by(|a, b| b.meta.date().unwrap().cmp(&a.meta.date().unwrap())); | |||
(can_be_sorted, cannot_be_sorted) | |||
}, | |||
SortBy::Order | SortBy::Weight => { | |||
let mut can_be_sorted = vec![]; | |||
let mut cannot_be_sorted = vec![]; | |||
for page in pages { | |||
if page.meta.order.is_some() { | |||
can_be_sorted.push(page); | |||
} else { | |||
cannot_be_sorted.push(page); | |||
} | |||
} | |||
if sort_by == SortBy::Order { | |||
can_be_sorted.sort_by(|a, b| b.meta.order().cmp(&a.meta.order())); | |||
} else { | |||
can_be_sorted.sort_by(|a, b| a.meta.order().cmp(&b.meta.order())); | |||
if sort_by == SortBy::None { | |||
return (pages, vec![]); | |||
} | |||
let (mut can_be_sorted, cannot_be_sorted): (Vec<_>, Vec<_>) = pages | |||
.into_par_iter() | |||
.partition(|ref page| { | |||
match sort_by { | |||
SortBy::Date => page.meta.date.is_some(), | |||
SortBy::Order => page.meta.order.is_some(), | |||
SortBy::Weight => page.meta.weight.is_some(), | |||
_ => unreachable!() | |||
} | |||
}); | |||
(can_be_sorted, cannot_be_sorted) | |||
}, | |||
SortBy::None => (pages, vec![]) | |||
} | |||
match sort_by { | |||
SortBy::Date => can_be_sorted.par_sort_unstable_by(|a, b| b.meta.date().unwrap().cmp(&a.meta.date().unwrap())), | |||
SortBy::Order => can_be_sorted.par_sort_unstable_by(|a, b| b.meta.order().cmp(&a.meta.order())), | |||
SortBy::Weight => can_be_sorted.par_sort_unstable_by(|a, b| a.meta.weight().cmp(&b.meta.weight())), | |||
_ => unreachable!() | |||
}; | |||
(can_be_sorted, cannot_be_sorted) | |||
} | |||
/// Horribly inefficient way to set previous and next on each pages | |||
/// So many clones | |||
pub fn populate_previous_and_next_pages(input: &[Page]) -> Vec<Page> { | |||
let pages = input.to_vec(); | |||
let mut res = Vec::new(); | |||
pub fn populate_previous_and_next_pages(input: Vec<Page>) -> Vec<Page> { | |||
let mut res = Vec::with_capacity(input.len()); | |||
// the input is already sorted | |||
// We might put prev/next randomly if a page is missing date/order, probably fine | |||
for (i, page) in input.iter().enumerate() { | |||
let mut new_page = page.clone(); | |||
// The input is already sorted | |||
for (i, _) in input.iter().enumerate() { | |||
let mut new_page = input[i].clone(); | |||
if i > 0 { | |||
let next = &pages[i - 1]; | |||
let mut next_page = next.clone(); | |||
let mut previous_page = input[i - 1].clone(); | |||
// Remove prev/next otherwise we serialise the whole thing... | |||
next_page.previous = None; | |||
next_page.next = None; | |||
new_page.next = Some(Box::new(next_page)); | |||
previous_page.previous = None; | |||
previous_page.next = None; | |||
new_page.previous = Some(Box::new(previous_page)); | |||
} | |||
if i < input.len() - 1 { | |||
let previous = &pages[i + 1]; | |||
let mut next_page = input[i + 1].clone(); | |||
// Remove prev/next otherwise we serialise the whole thing... | |||
let mut previous_page = previous.clone(); | |||
previous_page.previous = None; | |||
previous_page.next = None; | |||
new_page.previous = Some(Box::new(previous_page)); | |||
next_page.previous = None; | |||
next_page.next = None; | |||
new_page.next = Some(Box::new(next_page)); | |||
} | |||
res.push(new_page); | |||
} | |||
@@ -87,9 +65,9 @@ pub fn populate_previous_and_next_pages(input: &[Page]) -> Vec<Page> { | |||
#[cfg(test)] | |||
mod tests { | |||
use front_matter::{PageFrontMatter}; | |||
use content::Page; | |||
use super::{SortBy, sort_pages, populate_previous_and_next_pages}; | |||
use front_matter::{PageFrontMatter, SortBy}; | |||
use page::Page; | |||
use super::{sort_pages, populate_previous_and_next_pages}; | |||
fn create_page_with_date(date: &str) -> Page { | |||
let mut front_matter = PageFrontMatter::default(); | |||
@@ -103,6 +81,12 @@ mod tests { | |||
Page::new("content/hello.md", front_matter) | |||
} | |||
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) | |||
} | |||
#[test] | |||
fn can_sort_by_dates() { | |||
let input = vec![ | |||
@@ -134,15 +118,15 @@ mod tests { | |||
#[test] | |||
fn can_sort_by_weight() { | |||
let input = vec![ | |||
create_page_with_order(2), | |||
create_page_with_order(3), | |||
create_page_with_order(1), | |||
create_page_with_weight(2), | |||
create_page_with_weight(3), | |||
create_page_with_weight(1), | |||
]; | |||
let (pages, _) = sort_pages(input, SortBy::Weight); | |||
// Should be sorted by date | |||
assert_eq!(pages[0].clone().meta.order.unwrap(), 1); | |||
assert_eq!(pages[1].clone().meta.order.unwrap(), 2); | |||
assert_eq!(pages[2].clone().meta.order.unwrap(), 3); | |||
assert_eq!(pages[0].clone().meta.weight.unwrap(), 1); | |||
assert_eq!(pages[1].clone().meta.weight.unwrap(), 2); | |||
assert_eq!(pages[2].clone().meta.weight.unwrap(), 3); | |||
} | |||
#[test] | |||
@@ -174,23 +158,23 @@ mod tests { | |||
#[test] | |||
fn can_populate_previous_and_next_pages() { | |||
let input = vec![ | |||
create_page_with_order(3), | |||
create_page_with_order(2), | |||
create_page_with_order(1), | |||
create_page_with_order(2), | |||
create_page_with_order(3), | |||
]; | |||
let pages = populate_previous_and_next_pages(input.as_slice()); | |||
let pages = populate_previous_and_next_pages(input); | |||
assert!(pages[0].clone().next.is_none()); | |||
assert!(pages[0].clone().previous.is_some()); | |||
assert_eq!(pages[0].clone().previous.unwrap().meta.order.unwrap(), 2); | |||
assert!(pages[0].clone().previous.is_none()); | |||
assert!(pages[0].clone().next.is_some()); | |||
assert_eq!(pages[0].clone().next.unwrap().meta.order.unwrap(), 2); | |||
assert!(pages[1].clone().next.is_some()); | |||
assert!(pages[1].clone().previous.is_some()); | |||
assert_eq!(pages[1].clone().next.unwrap().meta.order.unwrap(), 3); | |||
assert_eq!(pages[1].clone().previous.unwrap().meta.order.unwrap(), 1); | |||
assert_eq!(pages[1].clone().next.unwrap().meta.order.unwrap(), 3); | |||
assert!(pages[2].clone().next.is_some()); | |||
assert!(pages[2].clone().previous.is_none()); | |||
assert_eq!(pages[2].clone().next.unwrap().meta.order.unwrap(), 2); | |||
assert!(pages[2].clone().next.is_none()); | |||
assert!(pages[2].clone().previous.is_some()); | |||
assert_eq!(pages[2].clone().previous.unwrap().meta.order.unwrap(), 2); | |||
} | |||
} |
@@ -0,0 +1,9 @@ | |||
[package] | |||
name = "errors" | |||
version = "0.1.0" | |||
authors = ["Vincent Prouillet <vincent@wearewizards.io>"] | |||
[dependencies] | |||
error-chain = "0.10" | |||
tera = "0.10" | |||
toml = "0.4" |
@@ -0,0 +1,29 @@ | |||
#[macro_use] | |||
extern crate error_chain; | |||
extern crate tera; | |||
extern crate toml; | |||
error_chain! { | |||
errors {} | |||
links { | |||
Tera(tera::Error, tera::ErrorKind); | |||
} | |||
foreign_links { | |||
Io(::std::io::Error); | |||
Toml(toml::de::Error); | |||
} | |||
} | |||
// So we can use bail! in all other crates | |||
#[macro_export] | |||
macro_rules! bail { | |||
($e:expr) => { | |||
return Err($e.into()); | |||
}; | |||
($fmt:expr, $($arg:tt)+) => { | |||
return Err(format!($fmt, $($arg)+).into()); | |||
}; | |||
} | |||
@@ -0,0 +1,445 @@ | |||
[root] | |||
name = "front_matter" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"core 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "aho-corasick" | |||
version = "0.6.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace" | |||
version = "0.3.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"dbghelp-sys 0.2.0 (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.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace-sys" | |||
version = "0.1.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "cfg-if" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "chrono" | |||
version = "0.4.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "core" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dbghelp-sys" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dtoa" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "error-chain" | |||
version = "0.10.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "gcc" | |||
version = "0.3.51" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "glob" | |||
version = "0.2.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "humansize" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "idna" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "itoa" | |||
version = "0.3.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "kernel32-sys" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "lazy_static" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "libc" | |||
version = "0.2.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "matches" | |||
version = "0.1.6" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "memchr" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-integer" | |||
version = "0.1.34" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-iter" | |||
version = "0.1.33" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-traits" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "percent-encoding" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pest" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "quote" | |||
version = "0.3.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "redox_syscall" | |||
version = "0.1.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "regex" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "regex-syntax" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rustc-demangle" | |||
version = "0.1.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde_derive" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_derive_internals" | |||
version = "0.15.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_json" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "slug" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syn" | |||
version = "0.11.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "synom" | |||
version = "0.11.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "tera" | |||
version = "0.10.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "thread_local" | |||
version = "0.3.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "time" | |||
version = "0.1.37" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "toml" | |||
version = "0.4.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-bidi" | |||
version = "0.3.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-normalization" | |||
version = "0.1.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unicode-xid" | |||
version = "0.0.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unidecode" | |||
version = "0.2.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.5.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "utf8-ranges" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "void" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "winapi" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "winapi-build" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[metadata] | |||
"checksum aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "500909c4f87a9e52355b26626d890833e9e1d53ac566db76c36faa984b889699" | |||
"checksum backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "72f9b4182546f4b04ebc4ab7f84948953a118bd6021a1b6a6c909e3e94f6be76" | |||
"checksum backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "3a0d842ea781ce92be2bf78a9b38883948542749640b8378b3b2f03d1fd9f1ff" | |||
"checksum cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d0c47d456a36ebf0536a6705c83c1cbbcb9255fbc1d905a6ded104f479268a29" | |||
"checksum chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7c20ebe0b2b08b0aeddba49c609fe7957ba2e33449882cb186a180bc60682fa9" | |||
"checksum dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "97590ba53bcb8ac28279161ca943a924d1fd4a8fb3fa63302591647c4fc5b850" | |||
"checksum dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "80c8b71fd71146990a9742fc06dcbbde19161a267e0ad4e572c35162f4578c90" | |||
"checksum error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9435d864e017c3c6afeac1654189b06cdb491cf2ff73dbf0d73b0f292f42ff8" | |||
"checksum gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)" = "120d07f202dcc3f72859422563522b66fe6463a4c513df062874daad05f85f0a" | |||
"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" | |||
"checksum humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "92d211e6e70b05749dce515b47684f29a3c8c38bbbb21c50b30aff9eca1b0bd3" | |||
"checksum idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2233d4940b1f19f0418c158509cd7396b8d70a5db5705ce410914dc8fa603b37" | |||
"checksum itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eb2f404fbc66fd9aac13e998248505e7ecb2ad8e44ab6388684c5fb11c6c251c" | |||
"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" | |||
"checksum lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3b37545ab726dd833ec6420aaba8231c5b320814b9029ad585555d2a03e94fbf" | |||
"checksum libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)" = "38f5c2b18a287cf78b4097db62e20f43cace381dc76ae5c0a3073067f78b7ddc" | |||
"checksum matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "100aabe6b8ff4e4a7e32c1c13523379802df0772b82466207ac25b013f193376" | |||
"checksum memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1dbccc0e46f1ea47b9f17e6d67c5a96bd27030519c519c9c91327e31275a47b4" | |||
"checksum num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "2c3a3dc9f30bf824141521b30c908a859ab190b76e20435fcd89f35eb6583887" | |||
"checksum num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)" = "ef1a4bf6f9174aa5783a9b4cc892cacd11aebad6c69ad027a0b65c6ca5f8aa37" | |||
"checksum num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)" = "f7d1891bd7b936f12349b7d1403761c8a0b85a18b148e9da4429d5d102c1a41e" | |||
"checksum num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "1708c0628602a98b52fad936cf3edb9a107af06e52e49fdf0707e884456a6af6" | |||
"checksum percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de154f638187706bde41d9b4738748933d64e6b37bdbffc0b47a97d16a6ae356" | |||
"checksum pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3e2e823a5967bb4cdc6d3e46f47baaf4ecfeae44413a642b74ad44e59e49c7f6" | |||
"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a" | |||
"checksum redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "e4a357d14a12e90a37d658725df0e6468504750b5948b9710f83f94a0c5818e8" | |||
"checksum regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1731164734096285ec2a5ec7fea5248ae2f5485b3feeb0115af4fda2183b2d1b" | |||
"checksum regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad890a5eef7953f55427c50575c680c42841653abd2b028b68cd223d157f62db" | |||
"checksum rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3058a43ada2c2d0b92b3ae38007a2d0fa5e9db971be260e0171408a4ff471c95" | |||
"checksum serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6a7c6b751a2e8d5df57a5ff71b5b4fc8aaee9ee28ff1341d640dd130bb5f4f7a" | |||
"checksum serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "2f6ca58905ebd3c3b285a8a6d4f3ac92b92c0d7951d5649b1bdd212549c06639" | |||
"checksum serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)" = "37aee4e0da52d801acfbc0cc219eb1eda7142112339726e427926a6f6ee65d3a" | |||
"checksum serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "48b04779552e92037212c3615370f6bd57a40ebba7f20e554ff9f55e41a69a7b" | |||
"checksum slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f5ff4b43cb07b86c5f9236c92714a22cdf9e5a27a7d85e398e2c9403328cb8" | |||
"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" | |||
"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" | |||
"checksum tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)" = "62736a6d748fd2c5a8b4be21010e37d79f78aea3c2e07a9e13ff5c70864a3129" | |||
"checksum thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1697c4b57aeeb7a536b647165a2825faddffb1d3bad386d507709bd51a90bb14" | |||
"checksum time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "ffd7ccbf969a892bf83f1e441126968a07a3941c24ff522a26af9f9f4585d1a3" | |||
"checksum toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b0601da6c97135c8d330c7a13a013ca6cd4143221b01de2f8d4edc50a9e551c7" | |||
"checksum unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a6a2c4e3710edd365cd7e78383153ed739fa31af19f9172f72d3575060f5a43a" | |||
"checksum unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "51ccda9ef9efa3f7ef5d91e8f9b83bbe6955f9bf86aec89d5cce2c874625920f" | |||
"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc" | |||
"checksum unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2adb95ee07cd579ed18131f2d9e7a17c25a4b76022935c7f2460d2bfae89fd2" | |||
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" | |||
"checksum url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eeb819346883532a271eb626deb43c4a1bb4c4dd47c519bd78137c3e72a4fe27" | |||
"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122" | |||
"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" | |||
"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" | |||
"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" |
@@ -0,0 +1,16 @@ | |||
[package] | |||
name = "front_matter" | |||
version = "0.1.0" | |||
authors = ["Vincent Prouillet <vincent@wearewizards.io>"] | |||
[dependencies] | |||
tera = "0.10" | |||
chrono = "0.4" | |||
serde = "1.0" | |||
serde_derive = "1.0" | |||
toml = "0.4" | |||
regex = "0.2" | |||
lazy_static = "0.2" | |||
errors = { path = "../errors" } |
@@ -1,19 +1,48 @@ | |||
use std::path::Path; | |||
#[macro_use] | |||
extern crate lazy_static; | |||
#[macro_use] | |||
extern crate serde_derive; | |||
extern crate serde; | |||
extern crate toml; | |||
extern crate regex; | |||
extern crate tera; | |||
extern crate chrono; | |||
#[macro_use] | |||
extern crate errors; | |||
use std::path::Path; | |||
use regex::Regex; | |||
use errors::{Result, ResultExt}; | |||
mod page; | |||
mod section; | |||
pub use self::page::PageFrontMatter; | |||
pub use self::section::{SectionFrontMatter, InsertAnchor}; | |||
pub use page::PageFrontMatter; | |||
pub use section::SectionFrontMatter; | |||
lazy_static! { | |||
static ref PAGE_RE: Regex = Regex::new(r"^[[:space:]]*\+\+\+\r?\n((?s).*?(?-s))\+\+\+\r?\n?((?s).*(?-s))$").unwrap(); | |||
} | |||
#[derive(Debug, Copy, Clone, PartialEq, Serialize, Deserialize)] | |||
#[serde(rename_all = "lowercase")] | |||
pub enum SortBy { | |||
Date, | |||
Order, | |||
Weight, | |||
None, | |||
} | |||
#[derive(Debug, Copy, Clone, PartialEq, Serialize, Deserialize)] | |||
#[serde(rename_all = "lowercase")] | |||
pub enum InsertAnchor { | |||
Left, | |||
Right, | |||
None, | |||
} | |||
/// Split a file between the front matter and its content | |||
/// Will return an error if the front matter wasn't found | |||
fn split_content(file_path: &Path, content: &str) -> Result<(String, String)> { |
@@ -4,7 +4,7 @@ use chrono::prelude::*; | |||
use tera::Value; | |||
use toml; | |||
use errors::{Result}; | |||
use errors::Result; | |||
/// The front matter of every page | |||
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)] | |||
@@ -28,6 +28,8 @@ pub struct PageFrontMatter { | |||
pub category: Option<String>, | |||
/// Integer to use to order content. Lowest is at the bottom, highest first | |||
pub order: Option<usize>, | |||
/// Integer to use to order content. Highest is at the bottom, lowest first | |||
pub weight: Option<usize>, | |||
/// All aliases for that page. Gutenberg will create HTML templates that will | |||
#[serde(skip_serializing)] | |||
pub aliases: Option<Vec<String>>, | |||
@@ -84,6 +86,10 @@ impl PageFrontMatter { | |||
self.order.unwrap() | |||
} | |||
pub fn weight(&self) -> usize { | |||
self.weight.unwrap() | |||
} | |||
pub fn has_tags(&self) -> bool { | |||
match self.tags { | |||
Some(ref t) => !t.is_empty(), | |||
@@ -103,6 +109,7 @@ impl Default for PageFrontMatter { | |||
tags: None, | |||
category: None, | |||
order: None, | |||
weight: None, | |||
aliases: None, | |||
template: None, | |||
extra: None, |
@@ -3,19 +3,12 @@ use std::collections::HashMap; | |||
use tera::Value; | |||
use toml; | |||
use errors::{Result}; | |||
use content::SortBy; | |||
use errors::Result; | |||
static DEFAULT_PAGINATE_PATH: &'static str = "page"; | |||
use super::{SortBy, InsertAnchor}; | |||
static DEFAULT_PAGINATE_PATH: &'static str = "page"; | |||
#[derive(Debug, Copy, Clone, PartialEq, Serialize, Deserialize)] | |||
#[serde(rename_all = "lowercase")] | |||
pub enum InsertAnchor { | |||
Left, | |||
Right, | |||
None, | |||
} | |||
/// The front matter of every section | |||
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)] |
@@ -0,0 +1,741 @@ | |||
[root] | |||
name = "pagination" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"content 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "aho-corasick" | |||
version = "0.6.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace" | |||
version = "0.3.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"dbghelp-sys 0.2.0 (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.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace-sys" | |||
version = "0.1.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "base64" | |||
version = "0.5.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "base64" | |||
version = "0.6.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"safemem 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bincode" | |||
version = "0.8.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.8.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.9.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "byteorder" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "cfg-if" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "chrono" | |||
version = "0.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "chrono" | |||
version = "0.4.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "cmake" | |||
version = "0.1.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "config" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"rendering 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "content" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"rendering 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "dbghelp-sys" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dtoa" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "error-chain" | |||
version = "0.10.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "errors" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "flate2" | |||
version = "0.2.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "fnv" | |||
version = "1.0.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "front_matter" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "gcc" | |||
version = "0.3.51" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "getopts" | |||
version = "0.2.14" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "glob" | |||
version = "0.2.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "humansize" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "idna" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "itoa" | |||
version = "0.3.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "kernel32-sys" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "lazy_static" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "libc" | |||
version = "0.2.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "matches" | |||
version = "0.1.6" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "memchr" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "miniz-sys" | |||
version = "0.1.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-integer" | |||
version = "0.1.34" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-iter" | |||
version = "0.1.33" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-traits" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "onig" | |||
version = "1.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "onig_sys" | |||
version = "63.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "percent-encoding" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pest" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pkg-config" | |||
version = "0.3.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "plist" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "pulldown-cmark" | |||
version = "0.0.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "quote" | |||
version = "0.3.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "redox_syscall" | |||
version = "0.1.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "regex" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "regex-syntax" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rendering" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"templates 0.1.0", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "rustc-demangle" | |||
version = "0.1.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "safemem" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "same-file" | |||
version = "0.1.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde_derive" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_derive_internals" | |||
version = "0.15.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_json" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "slug" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syn" | |||
version = "0.11.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "synom" | |||
version = "0.11.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syntect" | |||
version = "1.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "templates" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "tera" | |||
version = "0.10.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "thread_local" | |||
version = "0.3.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "time" | |||
version = "0.1.37" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "toml" | |||
version = "0.4.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-bidi" | |||
version = "0.3.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-normalization" | |||
version = "0.1.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unicode-xid" | |||
version = "0.0.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unidecode" | |||
version = "0.2.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.5.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "utf8-ranges" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "utils" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
] | |||
[[package]] | |||
name = "void" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "walkdir" | |||
version = "1.0.7" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "winapi" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "winapi-build" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "xml-rs" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "yaml-rust" | |||
version = "0.3.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[metadata] | |||
"checksum aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "500909c4f87a9e52355b26626d890833e9e1d53ac566db76c36faa984b889699" | |||
"checksum backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "72f9b4182546f4b04ebc4ab7f84948953a118bd6021a1b6a6c909e3e94f6be76" | |||
"checksum backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "3a0d842ea781ce92be2bf78a9b38883948542749640b8378b3b2f03d1fd9f1ff" | |||
"checksum base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "30e93c03064e7590d0466209155251b90c22e37fab1daf2771582598b5827557" | |||
"checksum base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "96434f987501f0ed4eb336a411e0631ecd1afa11574fe148587adc4ff96143c9" | |||
"checksum bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e103c8b299b28a9c6990458b7013dc4a8356a9b854c51b9883241f5866fac36e" | |||
"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d" | |||
"checksum bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1370e9fc2a6ae53aea8b7a5110edbd08836ed87c88736dfabccade1c2b44bff4" | |||
"checksum bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5" | |||
"checksum byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c40977b0ee6b9885c9013cd41d9feffdd22deb3bb4dc3a71d901cc7a77de18c8" | |||
"checksum cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d0c47d456a36ebf0536a6705c83c1cbbcb9255fbc1d905a6ded104f479268a29" | |||
"checksum chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "158b0bd7d75cbb6bf9c25967a48a2e9f77da95876b858eadfabaa99cd069de6e" | |||
"checksum chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7c20ebe0b2b08b0aeddba49c609fe7957ba2e33449882cb186a180bc60682fa9" | |||
"checksum cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b8ebbb35d3dc9cd09497168f33de1acb79b265d350ab0ac34133b98f8509af1f" | |||
"checksum dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "97590ba53bcb8ac28279161ca943a924d1fd4a8fb3fa63302591647c4fc5b850" | |||
"checksum dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "80c8b71fd71146990a9742fc06dcbbde19161a267e0ad4e572c35162f4578c90" | |||
"checksum error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9435d864e017c3c6afeac1654189b06cdb491cf2ff73dbf0d73b0f292f42ff8" | |||
"checksum flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)" = "36df0166e856739905cd3d7e0b210fe818592211a008862599845e012d8d304c" | |||
"checksum fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6cc484842f1e2884faf56f529f960cc12ad8c71ce96cc7abba0a067c98fee344" | |||
"checksum gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)" = "120d07f202dcc3f72859422563522b66fe6463a4c513df062874daad05f85f0a" | |||
"checksum getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9047cfbd08a437050b363d35ef160452c5fe8ea5187ae0a624708c91581d685" | |||
"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" | |||
"checksum humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "92d211e6e70b05749dce515b47684f29a3c8c38bbbb21c50b30aff9eca1b0bd3" | |||
"checksum idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2233d4940b1f19f0418c158509cd7396b8d70a5db5705ce410914dc8fa603b37" | |||
"checksum itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eb2f404fbc66fd9aac13e998248505e7ecb2ad8e44ab6388684c5fb11c6c251c" | |||
"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" | |||
"checksum lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3b37545ab726dd833ec6420aaba8231c5b320814b9029ad585555d2a03e94fbf" | |||
"checksum libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)" = "38f5c2b18a287cf78b4097db62e20f43cace381dc76ae5c0a3073067f78b7ddc" | |||
"checksum matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "100aabe6b8ff4e4a7e32c1c13523379802df0772b82466207ac25b013f193376" | |||
"checksum memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1dbccc0e46f1ea47b9f17e6d67c5a96bd27030519c519c9c91327e31275a47b4" | |||
"checksum miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "28eaee17666671fa872e567547e8428e83308ebe5808cdf6a0e28397dbe2c726" | |||
"checksum num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "2c3a3dc9f30bf824141521b30c908a859ab190b76e20435fcd89f35eb6583887" | |||
"checksum num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)" = "ef1a4bf6f9174aa5783a9b4cc892cacd11aebad6c69ad027a0b65c6ca5f8aa37" | |||
"checksum num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)" = "f7d1891bd7b936f12349b7d1403761c8a0b85a18b148e9da4429d5d102c1a41e" | |||
"checksum num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "1708c0628602a98b52fad936cf3edb9a107af06e52e49fdf0707e884456a6af6" | |||
"checksum onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee619da9cf707b167098e84fb00f10db61d5a662d1d29b59822bcac3a81553dd" | |||
"checksum onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "531682ab45a2cd40eff91f29340dae975f25336d2b61e624adabed39e61d7fb3" | |||
"checksum percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de154f638187706bde41d9b4738748933d64e6b37bdbffc0b47a97d16a6ae356" | |||
"checksum pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3e2e823a5967bb4cdc6d3e46f47baaf4ecfeae44413a642b74ad44e59e49c7f6" | |||
"checksum pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "3a8b4c6b8165cd1a1cd4b9b120978131389f64bdaf456435caa41e630edba903" | |||
"checksum plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1e2f7e9574aabcf57bc5e9f602caabdffffa8179b0c130a039f7895fea3dbdb5" | |||
"checksum pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)" = "378e941dbd392c101f2cb88097fa4d7167bc421d4b88de3ff7dbee503bc3233b" | |||
"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a" | |||
"checksum redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "e4a357d14a12e90a37d658725df0e6468504750b5948b9710f83f94a0c5818e8" | |||
"checksum regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1731164734096285ec2a5ec7fea5248ae2f5485b3feeb0115af4fda2183b2d1b" | |||
"checksum regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad890a5eef7953f55427c50575c680c42841653abd2b028b68cd223d157f62db" | |||
"checksum rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3058a43ada2c2d0b92b3ae38007a2d0fa5e9db971be260e0171408a4ff471c95" | |||
"checksum safemem 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e27a8b19b835f7aea908818e871f5cc3a5a186550c30773be987e155e8163d8f" | |||
"checksum same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d931a44fdaa43b8637009e7632a02adc4f2b2e0733c08caa4cf00e8da4a117a7" | |||
"checksum serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6a7c6b751a2e8d5df57a5ff71b5b4fc8aaee9ee28ff1341d640dd130bb5f4f7a" | |||
"checksum serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "2f6ca58905ebd3c3b285a8a6d4f3ac92b92c0d7951d5649b1bdd212549c06639" | |||
"checksum serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)" = "37aee4e0da52d801acfbc0cc219eb1eda7142112339726e427926a6f6ee65d3a" | |||
"checksum serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "48b04779552e92037212c3615370f6bd57a40ebba7f20e554ff9f55e41a69a7b" | |||
"checksum slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f5ff4b43cb07b86c5f9236c92714a22cdf9e5a27a7d85e398e2c9403328cb8" | |||
"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" | |||
"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" | |||
"checksum syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2f436345e5b6ebbfdf51b20b95cd9bcb82576262c340bad9cf815078d76b082a" | |||
"checksum tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)" = "62736a6d748fd2c5a8b4be21010e37d79f78aea3c2e07a9e13ff5c70864a3129" | |||
"checksum thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1697c4b57aeeb7a536b647165a2825faddffb1d3bad386d507709bd51a90bb14" | |||
"checksum time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "ffd7ccbf969a892bf83f1e441126968a07a3941c24ff522a26af9f9f4585d1a3" | |||
"checksum toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b0601da6c97135c8d330c7a13a013ca6cd4143221b01de2f8d4edc50a9e551c7" | |||
"checksum unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a6a2c4e3710edd365cd7e78383153ed739fa31af19f9172f72d3575060f5a43a" | |||
"checksum unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "51ccda9ef9efa3f7ef5d91e8f9b83bbe6955f9bf86aec89d5cce2c874625920f" | |||
"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc" | |||
"checksum unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2adb95ee07cd579ed18131f2d9e7a17c25a4b76022935c7f2460d2bfae89fd2" | |||
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" | |||
"checksum url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eeb819346883532a271eb626deb43c4a1bb4c4dd47c519bd78137c3e72a4fe27" | |||
"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122" | |||
"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" | |||
"checksum walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "bb08f9e670fab86099470b97cd2b252d6527f0b3cc1401acdb595ffc9dd288ff" | |||
"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" | |||
"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" | |||
"checksum xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b46ee689ba7a669c08a1170c2348d2516c62dc461135c9e86b2f1f476e07be4a" | |||
"checksum yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e66366e18dc58b46801afbf2ca7661a9f59cc8c5962c29892b6039b4f86fa992" |
@@ -0,0 +1,16 @@ | |||
[package] | |||
name = "pagination" | |||
version = "0.1.0" | |||
authors = ["Vincent Prouillet <vincent@wearewizards.io>"] | |||
[dependencies] | |||
tera = "0.10" | |||
serde = "1.0" | |||
serde_derive = "1.0" | |||
errors = { path = "../errors" } | |||
config = { path = "../config" } | |||
content = { path = "../content" } | |||
[dev-dependencies] | |||
front_matter = { path = "../front_matter" } |
@@ -1,9 +1,22 @@ | |||
#[macro_use] | |||
extern crate serde_derive; | |||
extern crate tera; | |||
extern crate errors; | |||
extern crate config; | |||
extern crate content; | |||
#[cfg(test)] | |||
extern crate front_matter; | |||
use std::collections::HashMap; | |||
use tera::{Context, to_value, Value}; | |||
use std::path::PathBuf; | |||
use tera::{Tera, Context, to_value, Value}; | |||
use errors::{Result, ResultExt}; | |||
use config::Config; | |||
use content::{Page, Section}; | |||
use site::Site; | |||
/// A list of all the pages in the paginator with their index and links | |||
@@ -134,30 +147,30 @@ impl<'a> Paginator<'a> { | |||
paginator | |||
} | |||
pub fn render_pager(&self, pager: &Pager, site: &Site) -> Result<String> { | |||
pub fn render_pager(&self, pager: &Pager, config: &Config, sections: &HashMap<PathBuf, Section>, tera: &Tera) -> Result<String> { | |||
let mut context = Context::new(); | |||
context.add("config", &site.config); | |||
context.add("config", &config); | |||
context.add("section", self.section); | |||
context.add("current_url", &pager.permalink); | |||
context.add("current_path", &pager.path); | |||
context.add("paginator", &self.build_paginator_context(pager)); | |||
if self.section.is_index() { | |||
context.add("section", &site.sections); | |||
context.add("section", §ions); | |||
} | |||
site.tera.render(&self.section.get_template_name(), &context) | |||
tera.render(&self.section.get_template_name(), &context) | |||
.chain_err(|| format!("Failed to render pager {} of section '{}'", pager.index, self.section.file.path.display())) | |||
} | |||
} | |||
#[cfg(test)] | |||
mod tests { | |||
use tera::{to_value}; | |||
use tera::to_value; | |||
use front_matter::SectionFrontMatter; | |||
use content::{Page, Section}; | |||
use super::{Paginator}; | |||
use super::Paginator; | |||
fn create_section(is_index: bool) -> Section { | |||
let mut f = SectionFrontMatter::default(); |
@@ -0,0 +1,702 @@ | |||
[root] | |||
name = "rendering" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"templates 0.1.0", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "aho-corasick" | |||
version = "0.6.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace" | |||
version = "0.3.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"dbghelp-sys 0.2.0 (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.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace-sys" | |||
version = "0.1.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "base64" | |||
version = "0.5.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "base64" | |||
version = "0.6.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"safemem 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bincode" | |||
version = "0.8.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.8.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.9.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "byteorder" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "cfg-if" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "chrono" | |||
version = "0.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "chrono" | |||
version = "0.4.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "cmake" | |||
version = "0.1.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dbghelp-sys" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dtoa" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "error-chain" | |||
version = "0.10.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "errors" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "flate2" | |||
version = "0.2.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "fnv" | |||
version = "1.0.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "front_matter" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "gcc" | |||
version = "0.3.51" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "getopts" | |||
version = "0.2.14" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "glob" | |||
version = "0.2.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "humansize" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "idna" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "itoa" | |||
version = "0.3.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "kernel32-sys" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "lazy_static" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "libc" | |||
version = "0.2.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "matches" | |||
version = "0.1.6" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "memchr" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "miniz-sys" | |||
version = "0.1.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-integer" | |||
version = "0.1.34" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-iter" | |||
version = "0.1.33" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-traits" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "onig" | |||
version = "1.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "onig_sys" | |||
version = "63.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "percent-encoding" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pest" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pkg-config" | |||
version = "0.3.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "plist" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "pulldown-cmark" | |||
version = "0.0.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "quote" | |||
version = "0.3.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "redox_syscall" | |||
version = "0.1.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "regex" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "regex-syntax" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rustc-demangle" | |||
version = "0.1.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "safemem" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "same-file" | |||
version = "0.1.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde_derive" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_derive_internals" | |||
version = "0.15.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_json" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "slug" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syn" | |||
version = "0.11.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "synom" | |||
version = "0.11.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syntect" | |||
version = "1.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "templates" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "tera" | |||
version = "0.10.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "thread_local" | |||
version = "0.3.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "time" | |||
version = "0.1.37" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "toml" | |||
version = "0.4.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-bidi" | |||
version = "0.3.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-normalization" | |||
version = "0.1.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unicode-xid" | |||
version = "0.0.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unidecode" | |||
version = "0.2.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.5.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "utf8-ranges" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "utils" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
] | |||
[[package]] | |||
name = "void" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "walkdir" | |||
version = "1.0.7" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "winapi" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "winapi-build" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "xml-rs" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "yaml-rust" | |||
version = "0.3.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[metadata] | |||
"checksum aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "500909c4f87a9e52355b26626d890833e9e1d53ac566db76c36faa984b889699" | |||
"checksum backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "72f9b4182546f4b04ebc4ab7f84948953a118bd6021a1b6a6c909e3e94f6be76" | |||
"checksum backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "3a0d842ea781ce92be2bf78a9b38883948542749640b8378b3b2f03d1fd9f1ff" | |||
"checksum base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "30e93c03064e7590d0466209155251b90c22e37fab1daf2771582598b5827557" | |||
"checksum base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "96434f987501f0ed4eb336a411e0631ecd1afa11574fe148587adc4ff96143c9" | |||
"checksum bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e103c8b299b28a9c6990458b7013dc4a8356a9b854c51b9883241f5866fac36e" | |||
"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d" | |||
"checksum bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1370e9fc2a6ae53aea8b7a5110edbd08836ed87c88736dfabccade1c2b44bff4" | |||
"checksum bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5" | |||
"checksum byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c40977b0ee6b9885c9013cd41d9feffdd22deb3bb4dc3a71d901cc7a77de18c8" | |||
"checksum cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d0c47d456a36ebf0536a6705c83c1cbbcb9255fbc1d905a6ded104f479268a29" | |||
"checksum chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "158b0bd7d75cbb6bf9c25967a48a2e9f77da95876b858eadfabaa99cd069de6e" | |||
"checksum chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7c20ebe0b2b08b0aeddba49c609fe7957ba2e33449882cb186a180bc60682fa9" | |||
"checksum cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b8ebbb35d3dc9cd09497168f33de1acb79b265d350ab0ac34133b98f8509af1f" | |||
"checksum dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "97590ba53bcb8ac28279161ca943a924d1fd4a8fb3fa63302591647c4fc5b850" | |||
"checksum dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "80c8b71fd71146990a9742fc06dcbbde19161a267e0ad4e572c35162f4578c90" | |||
"checksum error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9435d864e017c3c6afeac1654189b06cdb491cf2ff73dbf0d73b0f292f42ff8" | |||
"checksum flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)" = "36df0166e856739905cd3d7e0b210fe818592211a008862599845e012d8d304c" | |||
"checksum fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6cc484842f1e2884faf56f529f960cc12ad8c71ce96cc7abba0a067c98fee344" | |||
"checksum gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)" = "120d07f202dcc3f72859422563522b66fe6463a4c513df062874daad05f85f0a" | |||
"checksum getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9047cfbd08a437050b363d35ef160452c5fe8ea5187ae0a624708c91581d685" | |||
"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" | |||
"checksum humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "92d211e6e70b05749dce515b47684f29a3c8c38bbbb21c50b30aff9eca1b0bd3" | |||
"checksum idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2233d4940b1f19f0418c158509cd7396b8d70a5db5705ce410914dc8fa603b37" | |||
"checksum itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eb2f404fbc66fd9aac13e998248505e7ecb2ad8e44ab6388684c5fb11c6c251c" | |||
"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" | |||
"checksum lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3b37545ab726dd833ec6420aaba8231c5b320814b9029ad585555d2a03e94fbf" | |||
"checksum libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)" = "38f5c2b18a287cf78b4097db62e20f43cace381dc76ae5c0a3073067f78b7ddc" | |||
"checksum matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "100aabe6b8ff4e4a7e32c1c13523379802df0772b82466207ac25b013f193376" | |||
"checksum memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1dbccc0e46f1ea47b9f17e6d67c5a96bd27030519c519c9c91327e31275a47b4" | |||
"checksum miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "28eaee17666671fa872e567547e8428e83308ebe5808cdf6a0e28397dbe2c726" | |||
"checksum num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "2c3a3dc9f30bf824141521b30c908a859ab190b76e20435fcd89f35eb6583887" | |||
"checksum num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)" = "ef1a4bf6f9174aa5783a9b4cc892cacd11aebad6c69ad027a0b65c6ca5f8aa37" | |||
"checksum num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)" = "f7d1891bd7b936f12349b7d1403761c8a0b85a18b148e9da4429d5d102c1a41e" | |||
"checksum num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "1708c0628602a98b52fad936cf3edb9a107af06e52e49fdf0707e884456a6af6" | |||
"checksum onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee619da9cf707b167098e84fb00f10db61d5a662d1d29b59822bcac3a81553dd" | |||
"checksum onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "531682ab45a2cd40eff91f29340dae975f25336d2b61e624adabed39e61d7fb3" | |||
"checksum percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de154f638187706bde41d9b4738748933d64e6b37bdbffc0b47a97d16a6ae356" | |||
"checksum pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3e2e823a5967bb4cdc6d3e46f47baaf4ecfeae44413a642b74ad44e59e49c7f6" | |||
"checksum pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "3a8b4c6b8165cd1a1cd4b9b120978131389f64bdaf456435caa41e630edba903" | |||
"checksum plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1e2f7e9574aabcf57bc5e9f602caabdffffa8179b0c130a039f7895fea3dbdb5" | |||
"checksum pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)" = "378e941dbd392c101f2cb88097fa4d7167bc421d4b88de3ff7dbee503bc3233b" | |||
"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a" | |||
"checksum redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "e4a357d14a12e90a37d658725df0e6468504750b5948b9710f83f94a0c5818e8" | |||
"checksum regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1731164734096285ec2a5ec7fea5248ae2f5485b3feeb0115af4fda2183b2d1b" | |||
"checksum regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad890a5eef7953f55427c50575c680c42841653abd2b028b68cd223d157f62db" | |||
"checksum rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3058a43ada2c2d0b92b3ae38007a2d0fa5e9db971be260e0171408a4ff471c95" | |||
"checksum safemem 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e27a8b19b835f7aea908818e871f5cc3a5a186550c30773be987e155e8163d8f" | |||
"checksum same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d931a44fdaa43b8637009e7632a02adc4f2b2e0733c08caa4cf00e8da4a117a7" | |||
"checksum serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6a7c6b751a2e8d5df57a5ff71b5b4fc8aaee9ee28ff1341d640dd130bb5f4f7a" | |||
"checksum serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "2f6ca58905ebd3c3b285a8a6d4f3ac92b92c0d7951d5649b1bdd212549c06639" | |||
"checksum serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)" = "37aee4e0da52d801acfbc0cc219eb1eda7142112339726e427926a6f6ee65d3a" | |||
"checksum serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "48b04779552e92037212c3615370f6bd57a40ebba7f20e554ff9f55e41a69a7b" | |||
"checksum slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f5ff4b43cb07b86c5f9236c92714a22cdf9e5a27a7d85e398e2c9403328cb8" | |||
"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" | |||
"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" | |||
"checksum syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2f436345e5b6ebbfdf51b20b95cd9bcb82576262c340bad9cf815078d76b082a" | |||
"checksum tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)" = "62736a6d748fd2c5a8b4be21010e37d79f78aea3c2e07a9e13ff5c70864a3129" | |||
"checksum thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1697c4b57aeeb7a536b647165a2825faddffb1d3bad386d507709bd51a90bb14" | |||
"checksum time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "ffd7ccbf969a892bf83f1e441126968a07a3941c24ff522a26af9f9f4585d1a3" | |||
"checksum toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b0601da6c97135c8d330c7a13a013ca6cd4143221b01de2f8d4edc50a9e551c7" | |||
"checksum unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a6a2c4e3710edd365cd7e78383153ed739fa31af19f9172f72d3575060f5a43a" | |||
"checksum unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "51ccda9ef9efa3f7ef5d91e8f9b83bbe6955f9bf86aec89d5cce2c874625920f" | |||
"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc" | |||
"checksum unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2adb95ee07cd579ed18131f2d9e7a17c25a4b76022935c7f2460d2bfae89fd2" | |||
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" | |||
"checksum url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eeb819346883532a271eb626deb43c4a1bb4c4dd47c519bd78137c3e72a4fe27" | |||
"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122" | |||
"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" | |||
"checksum walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "bb08f9e670fab86099470b97cd2b252d6527f0b3cc1401acdb595ffc9dd288ff" | |||
"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" | |||
"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" | |||
"checksum xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b46ee689ba7a669c08a1170c2348d2516c62dc461135c9e86b2f1f476e07be4a" | |||
"checksum yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e66366e18dc58b46801afbf2ca7661a9f59cc8c5962c29892b6039b4f86fa992" |
@@ -0,0 +1,22 @@ | |||
[package] | |||
name = "rendering" | |||
version = "0.1.0" | |||
authors = ["Vincent Prouillet <vincent@wearewizards.io>"] | |||
[dependencies] | |||
tera = "0.10" | |||
regex = "0.2" | |||
lazy_static = "0.2" | |||
syntect = { version = "1", features = ["static-onig"] } | |||
pulldown-cmark = "0" | |||
slug = "0.1" | |||
serde = "1.0" | |||
serde_derive = "1.0" | |||
errors = { path = "../errors" } | |||
front_matter = { path = "../front_matter" } | |||
utils = { path = "../utils" } | |||
[dev-dependencies] | |||
templates = { path = "../templates" } |
@@ -2,7 +2,6 @@ use std::collections::HashMap; | |||
use tera::Tera; | |||
use config::Config; | |||
use front_matter::InsertAnchor; | |||
@@ -20,7 +19,8 @@ pub struct Context<'a> { | |||
impl<'a> Context<'a> { | |||
pub fn new( | |||
tera: &'a Tera, | |||
config: &'a Config, | |||
highlight_code: bool, | |||
highlight_theme: String, | |||
current_page_permalink: &str, | |||
permalinks: &'a HashMap<String, String>, | |||
insert_anchor: InsertAnchor, | |||
@@ -30,8 +30,8 @@ impl<'a> Context<'a> { | |||
current_page_permalink: current_page_permalink.to_string(), | |||
permalinks, | |||
insert_anchor, | |||
highlight_code: config.highlight_code.unwrap(), | |||
highlight_theme: config.highlight_theme.clone().unwrap(), | |||
highlight_code, | |||
highlight_theme, | |||
} | |||
} | |||
@@ -4,13 +4,13 @@ use syntect::highlighting::ThemeSet; | |||
thread_local!{ | |||
pub static SYNTAX_SET: SyntaxSet = { | |||
let mut ss: SyntaxSet = from_binary(include_bytes!("../../sublime_syntaxes/newlines.packdump")); | |||
let mut ss: SyntaxSet = from_binary(include_bytes!("../../../sublime_syntaxes/newlines.packdump")); | |||
ss.link_syntaxes(); | |||
ss | |||
}; | |||
} | |||
lazy_static!{ | |||
pub static ref THEME_SET: ThemeSet = from_binary(include_bytes!("../../sublime_themes/all.themedump")); | |||
pub static ref THEME_SET: ThemeSet = from_binary(include_bytes!("../../../sublime_themes/all.themedump")); | |||
} | |||
@@ -0,0 +1,27 @@ | |||
#[macro_use] | |||
extern crate lazy_static; | |||
extern crate regex; | |||
extern crate tera; | |||
extern crate syntect; | |||
extern crate pulldown_cmark; | |||
extern crate slug; | |||
#[macro_use] | |||
extern crate serde_derive; | |||
extern crate serde; | |||
extern crate errors; | |||
extern crate front_matter; | |||
extern crate utils; | |||
#[cfg(test)] | |||
extern crate templates; | |||
mod context; | |||
pub mod highlighting; | |||
mod markdown; | |||
mod short_code; | |||
mod table_of_contents; | |||
pub use context::Context; | |||
pub use markdown::markdown_to_html; | |||
pub use table_of_contents::Header; |
@@ -2,23 +2,18 @@ use std::borrow::Cow::Owned; | |||
use pulldown_cmark as cmark; | |||
use self::cmark::{Parser, Event, Tag, Options, OPTION_ENABLE_TABLES, OPTION_ENABLE_FOOTNOTES}; | |||
use regex::Regex; | |||
use slug::slugify; | |||
use syntect::easy::HighlightLines; | |||
use syntect::html::{start_coloured_html_snippet, styles_to_coloured_html, IncludeBackground}; | |||
use tera::{Context as TeraContext}; | |||
use errors::{Result}; | |||
use site::resolve_internal_link; | |||
use errors::Result; | |||
use utils::site::resolve_internal_link; | |||
use front_matter::InsertAnchor; | |||
use rendering::context::Context; | |||
use rendering::highlighting::{SYNTAX_SET, THEME_SET}; | |||
use rendering::short_code::{ShortCode, parse_shortcode, render_simple_shortcode}; | |||
use content::{TempHeader, Header, make_table_of_contents}; | |||
lazy_static!{ | |||
static ref SHORTCODE_RE: Regex = Regex::new(r#"\{(?:%|\{)\s+([[:alnum:]]+?)\(([[:alnum:]]+?="?.+?"?)\)\s+(?:%|\})\}"#).unwrap(); | |||
} | |||
use context::Context; | |||
use highlighting::{SYNTAX_SET, THEME_SET}; | |||
use short_code::{SHORTCODE_RE, ShortCode, parse_shortcode, render_simple_shortcode}; | |||
use table_of_contents::{TempHeader, Header, make_table_of_contents}; | |||
pub fn markdown_to_html(content: &str, context: &Context) -> Result<(String, Vec<Header>)> { | |||
@@ -275,10 +270,9 @@ mod tests { | |||
use tera::Tera; | |||
use config::Config; | |||
use front_matter::InsertAnchor; | |||
use templates::GUTENBERG_TERA; | |||
use rendering::context::Context; | |||
use context::Context; | |||
use super::markdown_to_html; | |||
@@ -286,8 +280,7 @@ mod tests { | |||
fn can_do_markdown_to_html_simple() { | |||
let tera_ctx = Tera::default(); | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&tera_ctx, &config_ctx, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = Context::new(&tera_ctx, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::None); | |||
let res = markdown_to_html("hello", &context).unwrap(); | |||
assert_eq!(res.0, "<p>hello</p>\n"); | |||
} | |||
@@ -296,8 +289,7 @@ mod tests { | |||
fn doesnt_highlight_code_block_with_highlighting_off() { | |||
let tera_ctx = Tera::default(); | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let mut context = Context::new(&tera_ctx, &config_ctx, "", &permalinks_ctx, InsertAnchor::None); | |||
let mut context = Context::new(&tera_ctx, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::None); | |||
context.highlight_code = false; | |||
let res = markdown_to_html("```\n$ gutenberg server\n```", &context).unwrap(); | |||
assert_eq!( | |||
@@ -310,8 +302,7 @@ mod tests { | |||
fn can_highlight_code_block_no_lang() { | |||
let tera_ctx = Tera::default(); | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&tera_ctx, &config_ctx, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = Context::new(&tera_ctx, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::None); | |||
let res = markdown_to_html("```\n$ gutenberg server\n$ ping\n```", &context).unwrap(); | |||
assert_eq!( | |||
res.0, | |||
@@ -323,8 +314,7 @@ mod tests { | |||
fn can_highlight_code_block_with_lang() { | |||
let tera_ctx = Tera::default(); | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&tera_ctx, &config_ctx, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = Context::new(&tera_ctx, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::None); | |||
let res = markdown_to_html("```python\nlist.append(1)\n```", &context).unwrap(); | |||
assert_eq!( | |||
res.0, | |||
@@ -336,8 +326,7 @@ mod tests { | |||
fn can_higlight_code_block_with_unknown_lang() { | |||
let tera_ctx = Tera::default(); | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&tera_ctx, &config_ctx, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = Context::new(&tera_ctx, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::None); | |||
let res = markdown_to_html("```yolo\nlist.append(1)\n```", &context).unwrap(); | |||
// defaults to plain text | |||
assert_eq!( | |||
@@ -349,8 +338,7 @@ mod tests { | |||
#[test] | |||
fn can_render_shortcode() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&GUTENBERG_TERA, &config_ctx, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = Context::new(&GUTENBERG_TERA, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::None); | |||
let res = markdown_to_html(r#" | |||
Hello | |||
@@ -363,8 +351,7 @@ Hello | |||
#[test] | |||
fn can_render_several_shortcode_in_row() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&GUTENBERG_TERA, &config_ctx, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = Context::new(&GUTENBERG_TERA, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::None); | |||
let res = markdown_to_html(r#" | |||
Hello | |||
@@ -389,8 +376,7 @@ Hello | |||
#[test] | |||
fn doesnt_render_shortcode_in_code_block() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&GUTENBERG_TERA, &config_ctx, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = Context::new(&GUTENBERG_TERA, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::None); | |||
let res = markdown_to_html(r#"```{{ youtube(id="w7Ft2ymGmfc") }}```"#, &context).unwrap(); | |||
assert_eq!(res.0, "<p><code>{{ youtube(id="w7Ft2ymGmfc") }}</code></p>\n"); | |||
} | |||
@@ -401,8 +387,7 @@ Hello | |||
tera.extend(&GUTENBERG_TERA).unwrap(); | |||
tera.add_raw_template("shortcodes/quote.html", "<blockquote>{{ body }} - {{ author}}</blockquote>").unwrap(); | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&tera, &config_ctx, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = Context::new(&tera, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::None); | |||
let res = markdown_to_html(r#" | |||
Hello | |||
@@ -417,8 +402,7 @@ A quote | |||
fn errors_rendering_unknown_shortcode() { | |||
let tera_ctx = Tera::default(); | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&tera_ctx, &config_ctx, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = Context::new(&tera_ctx, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::None); | |||
let res = markdown_to_html("{{ hello(flash=true) }}", &context); | |||
assert!(res.is_err()); | |||
} | |||
@@ -428,8 +412,7 @@ A quote | |||
let mut permalinks = HashMap::new(); | |||
permalinks.insert("pages/about.md".to_string(), "https://vincent.is/about".to_string()); | |||
let tera_ctx = Tera::default(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&tera_ctx, &config_ctx, "", &permalinks, InsertAnchor::None); | |||
let context = Context::new(&tera_ctx, true, "base16-ocean-dark".to_string(), "", &permalinks, InsertAnchor::None); | |||
let res = markdown_to_html( | |||
r#"[rel link](./pages/about.md), [abs link](https://vincent.is/about)"#, | |||
&context | |||
@@ -445,8 +428,7 @@ A quote | |||
let mut permalinks = HashMap::new(); | |||
permalinks.insert("pages/about.md".to_string(), "https://vincent.is/about".to_string()); | |||
let tera_ctx = Tera::default(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&tera_ctx, &config_ctx, "", &permalinks, InsertAnchor::None); | |||
let context = Context::new(&tera_ctx, true, "base16-ocean-dark".to_string(), "", &permalinks, InsertAnchor::None); | |||
let res = markdown_to_html(r#"[rel link](./pages/about.md#cv)"#, &context).unwrap(); | |||
assert!( | |||
@@ -458,8 +440,7 @@ A quote | |||
fn errors_relative_link_inexistant() { | |||
let tera_ctx = Tera::default(); | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&tera_ctx, &config_ctx, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = Context::new(&tera_ctx, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::None); | |||
let res = markdown_to_html("[rel link](./pages/about.md)", &context); | |||
assert!(res.is_err()); | |||
} | |||
@@ -468,8 +449,7 @@ A quote | |||
fn can_add_id_to_headers() { | |||
let tera_ctx = Tera::default(); | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&tera_ctx, &config_ctx, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = Context::new(&tera_ctx, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::None); | |||
let res = markdown_to_html(r#"# Hello"#, &context).unwrap(); | |||
assert_eq!(res.0, "<h1 id=\"hello\">Hello</h1>\n"); | |||
} | |||
@@ -478,8 +458,7 @@ A quote | |||
fn can_add_id_to_headers_same_slug() { | |||
let tera_ctx = Tera::default(); | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&tera_ctx, &config_ctx, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = Context::new(&tera_ctx, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::None); | |||
let res = markdown_to_html("# Hello\n# Hello", &context).unwrap(); | |||
assert_eq!(res.0, "<h1 id=\"hello\">Hello</h1>\n<h1 id=\"hello-1\">Hello</h1>\n"); | |||
} | |||
@@ -487,8 +466,7 @@ A quote | |||
#[test] | |||
fn can_insert_anchor_left() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&GUTENBERG_TERA, &config_ctx, "", &permalinks_ctx, InsertAnchor::Left); | |||
let context = Context::new(&GUTENBERG_TERA, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::Left); | |||
let res = markdown_to_html("# Hello", &context).unwrap(); | |||
assert_eq!( | |||
res.0, | |||
@@ -499,8 +477,7 @@ A quote | |||
#[test] | |||
fn can_insert_anchor_right() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&GUTENBERG_TERA, &config_ctx, "", &permalinks_ctx, InsertAnchor::Right); | |||
let context = Context::new(&GUTENBERG_TERA, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::Right); | |||
let res = markdown_to_html("# Hello", &context).unwrap(); | |||
assert_eq!( | |||
res.0, | |||
@@ -512,8 +489,7 @@ A quote | |||
#[test] | |||
fn can_insert_anchor_with_exclamation_mark() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&GUTENBERG_TERA, &config_ctx, "", &permalinks_ctx, InsertAnchor::Left); | |||
let context = Context::new(&GUTENBERG_TERA, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::Left); | |||
let res = markdown_to_html("# Hello!", &context).unwrap(); | |||
assert_eq!( | |||
res.0, | |||
@@ -525,8 +501,7 @@ A quote | |||
#[test] | |||
fn can_insert_anchor_with_link() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&GUTENBERG_TERA, &config_ctx, "", &permalinks_ctx, InsertAnchor::Left); | |||
let context = Context::new(&GUTENBERG_TERA, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::Left); | |||
let res = markdown_to_html("## [](#xresources)Xresources", &context).unwrap(); | |||
assert_eq!( | |||
res.0, | |||
@@ -537,8 +512,7 @@ A quote | |||
#[test] | |||
fn can_insert_anchor_with_other_special_chars() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new(&GUTENBERG_TERA, &config_ctx, "", &permalinks_ctx, InsertAnchor::Left); | |||
let context = Context::new(&GUTENBERG_TERA, true, "base16-ocean-dark".to_string(), "", &permalinks_ctx, InsertAnchor::Left); | |||
let res = markdown_to_html("# Hello*_()", &context).unwrap(); | |||
assert_eq!( | |||
res.0, | |||
@@ -549,10 +523,10 @@ A quote | |||
#[test] | |||
fn can_make_toc() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config_ctx = Config::default(); | |||
let context = Context::new( | |||
&GUTENBERG_TERA, | |||
&config_ctx, | |||
true, | |||
"base16-ocean-dark".to_string(), | |||
"https://mysite.com/something", | |||
&permalinks_ctx, | |||
InsertAnchor::Left |
@@ -6,7 +6,7 @@ use tera::{Tera, Context}; | |||
use errors::{Result, ResultExt}; | |||
lazy_static!{ | |||
static ref SHORTCODE_RE: Regex = Regex::new(r#"\{(?:%|\{)\s+([[:alnum:]]+?)\(([[:alnum:]]+?="?.+?"?)\)\s+(?:%|\})\}"#).unwrap(); | |||
pub static ref SHORTCODE_RE: Regex = Regex::new(r#"\{(?:%|\{)\s+([[:alnum:]]+?)\(([[:alnum:]]+?="?.+?"?)\)\s+(?:%|\})\}"#).unwrap(); | |||
} | |||
/// A shortcode that has a body | |||
@@ -73,7 +73,7 @@ pub fn render_simple_shortcode(tera: &Tera, name: &str, args: &HashMap<String, S | |||
#[cfg(test)] | |||
mod tests { | |||
use super::{parse_shortcode}; | |||
use super::parse_shortcode; | |||
#[test] | |||
fn can_parse_simple_shortcode_one_arg() { |
@@ -21,7 +21,6 @@ impl Header { | |||
} | |||
} | |||
/// Used in | |||
#[derive(Debug, PartialEq, Clone)] | |||
pub struct TempHeader { | |||
pub level: i32, |
@@ -0,0 +1,852 @@ | |||
[root] | |||
name = "site" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"content 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pagination 0.1.0", | |||
"rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"taxonomies 0.1.0", | |||
"tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"templates 0.1.0", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
"walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "aho-corasick" | |||
version = "0.6.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace" | |||
version = "0.3.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"dbghelp-sys 0.2.0 (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.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace-sys" | |||
version = "0.1.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "base64" | |||
version = "0.5.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "base64" | |||
version = "0.6.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"safemem 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bincode" | |||
version = "0.8.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.8.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.9.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "byteorder" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "cfg-if" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "chrono" | |||
version = "0.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "chrono" | |||
version = "0.4.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "cmake" | |||
version = "0.1.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "coco" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"either 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"scopeguard 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "config" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"rendering 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "content" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rendering 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "dbghelp-sys" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dtoa" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "either" | |||
version = "1.1.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "error-chain" | |||
version = "0.10.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "errors" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "flate2" | |||
version = "0.2.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "fnv" | |||
version = "1.0.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "front_matter" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "futures" | |||
version = "0.1.14" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "gcc" | |||
version = "0.3.51" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "getopts" | |||
version = "0.2.14" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "glob" | |||
version = "0.2.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "humansize" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "idna" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "itoa" | |||
version = "0.3.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "kernel32-sys" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "lazy_static" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "libc" | |||
version = "0.2.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "matches" | |||
version = "0.1.6" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "memchr" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "miniz-sys" | |||
version = "0.1.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-integer" | |||
version = "0.1.34" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-iter" | |||
version = "0.1.33" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-traits" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "num_cpus" | |||
version = "1.6.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "onig" | |||
version = "1.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "onig_sys" | |||
version = "63.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "pagination" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"content 0.1.0", | |||
"errors 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "percent-encoding" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pest" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pkg-config" | |||
version = "0.3.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "plist" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "pulldown-cmark" | |||
version = "0.0.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "quote" | |||
version = "0.3.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rand" | |||
version = "0.3.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "rayon" | |||
version = "0.8.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"rayon-core 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "rayon-core" | |||
version = "1.2.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"coco 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"futures 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num_cpus 1.6.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "redox_syscall" | |||
version = "0.1.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "regex" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "regex-syntax" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rendering" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "rustc-demangle" | |||
version = "0.1.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "safemem" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "same-file" | |||
version = "0.1.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "scopeguard" | |||
version = "0.3.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde_derive" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_derive_internals" | |||
version = "0.15.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_json" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "slug" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syn" | |||
version = "0.11.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "synom" | |||
version = "0.11.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syntect" | |||
version = "1.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "taxonomies" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"content 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "tempdir" | |||
version = "0.3.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "templates" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"content 0.1.0", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "tera" | |||
version = "0.10.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "thread_local" | |||
version = "0.3.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "time" | |||
version = "0.1.37" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "toml" | |||
version = "0.4.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-bidi" | |||
version = "0.3.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-normalization" | |||
version = "0.1.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unicode-xid" | |||
version = "0.0.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unidecode" | |||
version = "0.2.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.5.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "utf8-ranges" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "utils" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
] | |||
[[package]] | |||
name = "void" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "walkdir" | |||
version = "1.0.7" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "winapi" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "winapi-build" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "xml-rs" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "yaml-rust" | |||
version = "0.3.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[metadata] | |||
"checksum aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "500909c4f87a9e52355b26626d890833e9e1d53ac566db76c36faa984b889699" | |||
"checksum backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "72f9b4182546f4b04ebc4ab7f84948953a118bd6021a1b6a6c909e3e94f6be76" | |||
"checksum backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "3a0d842ea781ce92be2bf78a9b38883948542749640b8378b3b2f03d1fd9f1ff" | |||
"checksum base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "30e93c03064e7590d0466209155251b90c22e37fab1daf2771582598b5827557" | |||
"checksum base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "96434f987501f0ed4eb336a411e0631ecd1afa11574fe148587adc4ff96143c9" | |||
"checksum bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e103c8b299b28a9c6990458b7013dc4a8356a9b854c51b9883241f5866fac36e" | |||
"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d" | |||
"checksum bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1370e9fc2a6ae53aea8b7a5110edbd08836ed87c88736dfabccade1c2b44bff4" | |||
"checksum bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5" | |||
"checksum byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c40977b0ee6b9885c9013cd41d9feffdd22deb3bb4dc3a71d901cc7a77de18c8" | |||
"checksum cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d0c47d456a36ebf0536a6705c83c1cbbcb9255fbc1d905a6ded104f479268a29" | |||
"checksum chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "158b0bd7d75cbb6bf9c25967a48a2e9f77da95876b858eadfabaa99cd069de6e" | |||
"checksum chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7c20ebe0b2b08b0aeddba49c609fe7957ba2e33449882cb186a180bc60682fa9" | |||
"checksum cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b8ebbb35d3dc9cd09497168f33de1acb79b265d350ab0ac34133b98f8509af1f" | |||
"checksum coco 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c06169f5beb7e31c7c67ebf5540b8b472d23e3eade3b2ec7d1f5b504a85f91bd" | |||
"checksum dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "97590ba53bcb8ac28279161ca943a924d1fd4a8fb3fa63302591647c4fc5b850" | |||
"checksum dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "80c8b71fd71146990a9742fc06dcbbde19161a267e0ad4e572c35162f4578c90" | |||
"checksum either 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "18785c1ba806c258137c937e44ada9ee7e69a37e3c72077542cd2f069d78562a" | |||
"checksum error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9435d864e017c3c6afeac1654189b06cdb491cf2ff73dbf0d73b0f292f42ff8" | |||
"checksum flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)" = "36df0166e856739905cd3d7e0b210fe818592211a008862599845e012d8d304c" | |||
"checksum fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6cc484842f1e2884faf56f529f960cc12ad8c71ce96cc7abba0a067c98fee344" | |||
"checksum futures 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4b63a4792d4f8f686defe3b39b92127fea6344de5d38202b2ee5a11bbbf29d6a" | |||
"checksum gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)" = "120d07f202dcc3f72859422563522b66fe6463a4c513df062874daad05f85f0a" | |||
"checksum getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9047cfbd08a437050b363d35ef160452c5fe8ea5187ae0a624708c91581d685" | |||
"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" | |||
"checksum humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "92d211e6e70b05749dce515b47684f29a3c8c38bbbb21c50b30aff9eca1b0bd3" | |||
"checksum idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2233d4940b1f19f0418c158509cd7396b8d70a5db5705ce410914dc8fa603b37" | |||
"checksum itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eb2f404fbc66fd9aac13e998248505e7ecb2ad8e44ab6388684c5fb11c6c251c" | |||
"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" | |||
"checksum lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3b37545ab726dd833ec6420aaba8231c5b320814b9029ad585555d2a03e94fbf" | |||
"checksum libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)" = "38f5c2b18a287cf78b4097db62e20f43cace381dc76ae5c0a3073067f78b7ddc" | |||
"checksum matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "100aabe6b8ff4e4a7e32c1c13523379802df0772b82466207ac25b013f193376" | |||
"checksum memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1dbccc0e46f1ea47b9f17e6d67c5a96bd27030519c519c9c91327e31275a47b4" | |||
"checksum miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "28eaee17666671fa872e567547e8428e83308ebe5808cdf6a0e28397dbe2c726" | |||
"checksum num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "2c3a3dc9f30bf824141521b30c908a859ab190b76e20435fcd89f35eb6583887" | |||
"checksum num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)" = "ef1a4bf6f9174aa5783a9b4cc892cacd11aebad6c69ad027a0b65c6ca5f8aa37" | |||
"checksum num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)" = "f7d1891bd7b936f12349b7d1403761c8a0b85a18b148e9da4429d5d102c1a41e" | |||
"checksum num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "1708c0628602a98b52fad936cf3edb9a107af06e52e49fdf0707e884456a6af6" | |||
"checksum num_cpus 1.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "aec53c34f2d0247c5ca5d32cca1478762f301740468ee9ee6dcb7a0dd7a0c584" | |||
"checksum onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee619da9cf707b167098e84fb00f10db61d5a662d1d29b59822bcac3a81553dd" | |||
"checksum onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "531682ab45a2cd40eff91f29340dae975f25336d2b61e624adabed39e61d7fb3" | |||
"checksum percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de154f638187706bde41d9b4738748933d64e6b37bdbffc0b47a97d16a6ae356" | |||
"checksum pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3e2e823a5967bb4cdc6d3e46f47baaf4ecfeae44413a642b74ad44e59e49c7f6" | |||
"checksum pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "3a8b4c6b8165cd1a1cd4b9b120978131389f64bdaf456435caa41e630edba903" | |||
"checksum plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1e2f7e9574aabcf57bc5e9f602caabdffffa8179b0c130a039f7895fea3dbdb5" | |||
"checksum pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)" = "378e941dbd392c101f2cb88097fa4d7167bc421d4b88de3ff7dbee503bc3233b" | |||
"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a" | |||
"checksum rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "022e0636ec2519ddae48154b028864bdce4eaf7d35226ab8e65c611be97b189d" | |||
"checksum rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b614fe08b6665cb9a231d07ac1364b0ef3cb3698f1239ee0c4c3a88a524f54c8" | |||
"checksum rayon-core 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7febc28567082c345f10cddc3612c6ea020fc3297a1977d472cf9fdb73e6e493" | |||
"checksum redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "e4a357d14a12e90a37d658725df0e6468504750b5948b9710f83f94a0c5818e8" | |||
"checksum regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1731164734096285ec2a5ec7fea5248ae2f5485b3feeb0115af4fda2183b2d1b" | |||
"checksum regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad890a5eef7953f55427c50575c680c42841653abd2b028b68cd223d157f62db" | |||
"checksum rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3058a43ada2c2d0b92b3ae38007a2d0fa5e9db971be260e0171408a4ff471c95" | |||
"checksum safemem 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e27a8b19b835f7aea908818e871f5cc3a5a186550c30773be987e155e8163d8f" | |||
"checksum same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d931a44fdaa43b8637009e7632a02adc4f2b2e0733c08caa4cf00e8da4a117a7" | |||
"checksum scopeguard 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c79eb2c3ac4bc2507cda80e7f3ac5b88bd8eae4c0914d5663e6a8933994be918" | |||
"checksum serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6a7c6b751a2e8d5df57a5ff71b5b4fc8aaee9ee28ff1341d640dd130bb5f4f7a" | |||
"checksum serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "2f6ca58905ebd3c3b285a8a6d4f3ac92b92c0d7951d5649b1bdd212549c06639" | |||
"checksum serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)" = "37aee4e0da52d801acfbc0cc219eb1eda7142112339726e427926a6f6ee65d3a" | |||
"checksum serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "48b04779552e92037212c3615370f6bd57a40ebba7f20e554ff9f55e41a69a7b" | |||
"checksum slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f5ff4b43cb07b86c5f9236c92714a22cdf9e5a27a7d85e398e2c9403328cb8" | |||
"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" | |||
"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" | |||
"checksum syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2f436345e5b6ebbfdf51b20b95cd9bcb82576262c340bad9cf815078d76b082a" | |||
"checksum tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "87974a6f5c1dfb344d733055601650059a3363de2a6104819293baff662132d6" | |||
"checksum tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)" = "62736a6d748fd2c5a8b4be21010e37d79f78aea3c2e07a9e13ff5c70864a3129" | |||
"checksum thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1697c4b57aeeb7a536b647165a2825faddffb1d3bad386d507709bd51a90bb14" | |||
"checksum time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "ffd7ccbf969a892bf83f1e441126968a07a3941c24ff522a26af9f9f4585d1a3" | |||
"checksum toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b0601da6c97135c8d330c7a13a013ca6cd4143221b01de2f8d4edc50a9e551c7" | |||
"checksum unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a6a2c4e3710edd365cd7e78383153ed739fa31af19f9172f72d3575060f5a43a" | |||
"checksum unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "51ccda9ef9efa3f7ef5d91e8f9b83bbe6955f9bf86aec89d5cce2c874625920f" | |||
"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc" | |||
"checksum unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2adb95ee07cd579ed18131f2d9e7a17c25a4b76022935c7f2460d2bfae89fd2" | |||
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" | |||
"checksum url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eeb819346883532a271eb626deb43c4a1bb4c4dd47c519bd78137c3e72a4fe27" | |||
"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122" | |||
"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" | |||
"checksum walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "bb08f9e670fab86099470b97cd2b252d6527f0b3cc1401acdb595ffc9dd288ff" | |||
"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" | |||
"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" | |||
"checksum xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b46ee689ba7a669c08a1170c2348d2516c62dc461135c9e86b2f1f476e07be4a" | |||
"checksum yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e66366e18dc58b46801afbf2ca7661a9f59cc8c5962c29892b6039b4f86fa992" |
@@ -0,0 +1,22 @@ | |||
[package] | |||
name = "site" | |||
version = "0.1.0" | |||
authors = ["Vincent Prouillet <vincent@wearewizards.io>"] | |||
[dependencies] | |||
tera = "0.10" | |||
glob = "0.2" | |||
walkdir = "1" | |||
rayon = "0.8" | |||
errors = { path = "../errors" } | |||
config = { path = "../config" } | |||
utils = { path = "../utils" } | |||
templates = { path = "../templates" } | |||
front_matter = { path = "../front_matter" } | |||
pagination = { path = "../pagination" } | |||
taxonomies = { path = "../taxonomies" } | |||
content = { path = "../content" } | |||
[dev-dependencies] | |||
tempdir = "0.3" |
@@ -1,5 +1,23 @@ | |||
extern crate tera; | |||
extern crate rayon; | |||
extern crate glob; | |||
extern crate walkdir; | |||
extern crate errors; | |||
extern crate config; | |||
extern crate utils; | |||
extern crate front_matter; | |||
extern crate templates; | |||
extern crate pagination; | |||
extern crate taxonomies; | |||
extern crate content; | |||
#[cfg(test)] | |||
extern crate tempdir; | |||
use std::collections::HashMap; | |||
use std::fs::{remove_dir_all, copy, create_dir_all}; | |||
use std::mem; | |||
use std::path::{Path, PathBuf}; | |||
use glob::glob; | |||
@@ -8,10 +26,12 @@ use walkdir::WalkDir; | |||
use errors::{Result, ResultExt}; | |||
use config::{Config, get_config}; | |||
use fs::{create_file, create_directory, ensure_directory_exists}; | |||
use content::{Page, Section, Paginator, SortBy, Taxonomy, populate_previous_and_next_pages, sort_pages}; | |||
use utils::fs::{create_file, create_directory, ensure_directory_exists}; | |||
use content::{Page, Section, populate_previous_and_next_pages, sort_pages}; | |||
use templates::{GUTENBERG_TERA, global_fns, render_redirect_template}; | |||
use front_matter::InsertAnchor; | |||
use front_matter::{SortBy, InsertAnchor}; | |||
use taxonomies::Taxonomy; | |||
use pagination::Paginator; | |||
use rayon::prelude::*; | |||
@@ -270,8 +290,9 @@ impl Site { | |||
continue; | |||
} | |||
} | |||
let (sorted_pages, cannot_be_sorted_pages) = sort_pages(section.pages.clone(), section.meta.sort_by()); | |||
section.pages = populate_previous_and_next_pages(&sorted_pages); | |||
let pages = mem::replace(&mut section.pages, vec![]); | |||
let (sorted_pages, cannot_be_sorted_pages) = sort_pages(pages, section.meta.sort_by()); | |||
section.pages = populate_previous_and_next_pages(sorted_pages); | |||
section.ignored_pages = cannot_be_sorted_pages; | |||
} | |||
} | |||
@@ -286,7 +307,7 @@ impl Site { | |||
// TODO: can we pass a reference? | |||
let (tags, categories) = Taxonomy::find_tags_and_categories( | |||
self.pages.values().cloned().collect::<Vec<_>>() | |||
self.pages.values().cloned().collect::<Vec<_>>().as_slice() | |||
); | |||
if generate_tags_pages { | |||
self.tags = Some(tags); | |||
@@ -639,7 +660,7 @@ impl Site { | |||
.map(|(i, pager)| { | |||
let page_path = folder_path.join(&format!("{}", i + 1)); | |||
create_directory(&page_path)?; | |||
let output = paginator.render_pager(pager, self)?; | |||
let output = paginator.render_pager(pager, &self.config, &self.sections, &self.tera)?; | |||
if i > 0 { | |||
create_file(&page_path.join("index.html"), &self.inject_livereload(output))?; | |||
} else { | |||
@@ -654,51 +675,3 @@ impl Site { | |||
} | |||
/// Resolves an internal link (of the `./posts/something.md#hey` sort) to its absolute link | |||
pub fn resolve_internal_link(link: &str, permalinks: &HashMap<String, String>) -> Result<String> { | |||
// First we remove the ./ since that's gutenberg specific | |||
let clean_link = link.replacen("./", "", 1); | |||
// Then we remove any potential anchor | |||
// parts[0] will be the file path and parts[1] the anchor if present | |||
let parts = clean_link.split('#').collect::<Vec<_>>(); | |||
match permalinks.get(parts[0]) { | |||
Some(p) => { | |||
if parts.len() > 1 { | |||
Ok(format!("{}#{}", p, parts[1])) | |||
} else { | |||
Ok(p.to_string()) | |||
} | |||
}, | |||
None => bail!(format!("Relative link {} not found.", link)), | |||
} | |||
} | |||
#[cfg(test)] | |||
mod tests { | |||
use std::collections::HashMap; | |||
use super::resolve_internal_link; | |||
#[test] | |||
fn can_resolve_valid_internal_link() { | |||
let mut permalinks = HashMap::new(); | |||
permalinks.insert("pages/about.md".to_string(), "https://vincent.is/about".to_string()); | |||
let res = resolve_internal_link("./pages/about.md", &permalinks).unwrap(); | |||
assert_eq!(res, "https://vincent.is/about"); | |||
} | |||
#[test] | |||
fn can_resolve_internal_links_with_anchors() { | |||
let mut permalinks = HashMap::new(); | |||
permalinks.insert("pages/about.md".to_string(), "https://vincent.is/about".to_string()); | |||
let res = resolve_internal_link("./pages/about.md#hello", &permalinks).unwrap(); | |||
assert_eq!(res, "https://vincent.is/about#hello"); | |||
} | |||
#[test] | |||
fn errors_resolve_inexistant_internal_link() { | |||
let res = resolve_internal_link("./pages/about.md#hello", &HashMap::new()); | |||
assert!(res.is_err()); | |||
} | |||
} |
@@ -1,4 +1,4 @@ | |||
extern crate gutenberg; | |||
extern crate site; | |||
extern crate tempdir; | |||
extern crate glob; | |||
@@ -8,7 +8,7 @@ use std::fs::File; | |||
use std::io::prelude::*; | |||
use tempdir::TempDir; | |||
use gutenberg::{Site}; | |||
use site::Site; | |||
#[test] |
@@ -0,0 +1,812 @@ | |||
[root] | |||
name = "taxonomies" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"content 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "aho-corasick" | |||
version = "0.6.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace" | |||
version = "0.3.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"dbghelp-sys 0.2.0 (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.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace-sys" | |||
version = "0.1.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "base64" | |||
version = "0.5.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "base64" | |||
version = "0.6.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"safemem 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bincode" | |||
version = "0.8.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.8.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.9.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "byteorder" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "cfg-if" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "chrono" | |||
version = "0.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "chrono" | |||
version = "0.4.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "cmake" | |||
version = "0.1.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "coco" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"either 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"scopeguard 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "config" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"rendering 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "content" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rendering 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "dbghelp-sys" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dtoa" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "either" | |||
version = "1.1.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "error-chain" | |||
version = "0.10.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "errors" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "flate2" | |||
version = "0.2.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "fnv" | |||
version = "1.0.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "front_matter" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "futures" | |||
version = "0.1.14" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "gcc" | |||
version = "0.3.51" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "getopts" | |||
version = "0.2.14" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "glob" | |||
version = "0.2.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "humansize" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "idna" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "itoa" | |||
version = "0.3.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "kernel32-sys" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "lazy_static" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "libc" | |||
version = "0.2.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "matches" | |||
version = "0.1.6" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "memchr" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "miniz-sys" | |||
version = "0.1.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-integer" | |||
version = "0.1.34" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-iter" | |||
version = "0.1.33" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-traits" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "num_cpus" | |||
version = "1.6.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "onig" | |||
version = "1.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "onig_sys" | |||
version = "63.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "percent-encoding" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pest" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pkg-config" | |||
version = "0.3.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "plist" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "pulldown-cmark" | |||
version = "0.0.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "quote" | |||
version = "0.3.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rand" | |||
version = "0.3.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "rayon" | |||
version = "0.8.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"rayon-core 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "rayon-core" | |||
version = "1.2.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"coco 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"futures 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num_cpus 1.6.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "redox_syscall" | |||
version = "0.1.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "regex" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "regex-syntax" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rendering" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"templates 0.1.0", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "rustc-demangle" | |||
version = "0.1.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "safemem" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "same-file" | |||
version = "0.1.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "scopeguard" | |||
version = "0.3.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde_derive" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_derive_internals" | |||
version = "0.15.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_json" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "slug" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syn" | |||
version = "0.11.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "synom" | |||
version = "0.11.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syntect" | |||
version = "1.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "templates" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "tera" | |||
version = "0.10.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "thread_local" | |||
version = "0.3.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "time" | |||
version = "0.1.37" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "toml" | |||
version = "0.4.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-bidi" | |||
version = "0.3.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-normalization" | |||
version = "0.1.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unicode-xid" | |||
version = "0.0.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unidecode" | |||
version = "0.2.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.5.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "utf8-ranges" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "utils" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
] | |||
[[package]] | |||
name = "void" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "walkdir" | |||
version = "1.0.7" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "winapi" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "winapi-build" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "xml-rs" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "yaml-rust" | |||
version = "0.3.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[metadata] | |||
"checksum aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "500909c4f87a9e52355b26626d890833e9e1d53ac566db76c36faa984b889699" | |||
"checksum backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "72f9b4182546f4b04ebc4ab7f84948953a118bd6021a1b6a6c909e3e94f6be76" | |||
"checksum backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "3a0d842ea781ce92be2bf78a9b38883948542749640b8378b3b2f03d1fd9f1ff" | |||
"checksum base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "30e93c03064e7590d0466209155251b90c22e37fab1daf2771582598b5827557" | |||
"checksum base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "96434f987501f0ed4eb336a411e0631ecd1afa11574fe148587adc4ff96143c9" | |||
"checksum bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e103c8b299b28a9c6990458b7013dc4a8356a9b854c51b9883241f5866fac36e" | |||
"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d" | |||
"checksum bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1370e9fc2a6ae53aea8b7a5110edbd08836ed87c88736dfabccade1c2b44bff4" | |||
"checksum bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5" | |||
"checksum byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c40977b0ee6b9885c9013cd41d9feffdd22deb3bb4dc3a71d901cc7a77de18c8" | |||
"checksum cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d0c47d456a36ebf0536a6705c83c1cbbcb9255fbc1d905a6ded104f479268a29" | |||
"checksum chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "158b0bd7d75cbb6bf9c25967a48a2e9f77da95876b858eadfabaa99cd069de6e" | |||
"checksum chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7c20ebe0b2b08b0aeddba49c609fe7957ba2e33449882cb186a180bc60682fa9" | |||
"checksum cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b8ebbb35d3dc9cd09497168f33de1acb79b265d350ab0ac34133b98f8509af1f" | |||
"checksum coco 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c06169f5beb7e31c7c67ebf5540b8b472d23e3eade3b2ec7d1f5b504a85f91bd" | |||
"checksum dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "97590ba53bcb8ac28279161ca943a924d1fd4a8fb3fa63302591647c4fc5b850" | |||
"checksum dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "80c8b71fd71146990a9742fc06dcbbde19161a267e0ad4e572c35162f4578c90" | |||
"checksum either 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "18785c1ba806c258137c937e44ada9ee7e69a37e3c72077542cd2f069d78562a" | |||
"checksum error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9435d864e017c3c6afeac1654189b06cdb491cf2ff73dbf0d73b0f292f42ff8" | |||
"checksum flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)" = "36df0166e856739905cd3d7e0b210fe818592211a008862599845e012d8d304c" | |||
"checksum fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6cc484842f1e2884faf56f529f960cc12ad8c71ce96cc7abba0a067c98fee344" | |||
"checksum futures 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4b63a4792d4f8f686defe3b39b92127fea6344de5d38202b2ee5a11bbbf29d6a" | |||
"checksum gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)" = "120d07f202dcc3f72859422563522b66fe6463a4c513df062874daad05f85f0a" | |||
"checksum getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9047cfbd08a437050b363d35ef160452c5fe8ea5187ae0a624708c91581d685" | |||
"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" | |||
"checksum humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "92d211e6e70b05749dce515b47684f29a3c8c38bbbb21c50b30aff9eca1b0bd3" | |||
"checksum idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2233d4940b1f19f0418c158509cd7396b8d70a5db5705ce410914dc8fa603b37" | |||
"checksum itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eb2f404fbc66fd9aac13e998248505e7ecb2ad8e44ab6388684c5fb11c6c251c" | |||
"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" | |||
"checksum lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3b37545ab726dd833ec6420aaba8231c5b320814b9029ad585555d2a03e94fbf" | |||
"checksum libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)" = "38f5c2b18a287cf78b4097db62e20f43cace381dc76ae5c0a3073067f78b7ddc" | |||
"checksum matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "100aabe6b8ff4e4a7e32c1c13523379802df0772b82466207ac25b013f193376" | |||
"checksum memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1dbccc0e46f1ea47b9f17e6d67c5a96bd27030519c519c9c91327e31275a47b4" | |||
"checksum miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "28eaee17666671fa872e567547e8428e83308ebe5808cdf6a0e28397dbe2c726" | |||
"checksum num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "2c3a3dc9f30bf824141521b30c908a859ab190b76e20435fcd89f35eb6583887" | |||
"checksum num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)" = "ef1a4bf6f9174aa5783a9b4cc892cacd11aebad6c69ad027a0b65c6ca5f8aa37" | |||
"checksum num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)" = "f7d1891bd7b936f12349b7d1403761c8a0b85a18b148e9da4429d5d102c1a41e" | |||
"checksum num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "1708c0628602a98b52fad936cf3edb9a107af06e52e49fdf0707e884456a6af6" | |||
"checksum num_cpus 1.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "aec53c34f2d0247c5ca5d32cca1478762f301740468ee9ee6dcb7a0dd7a0c584" | |||
"checksum onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee619da9cf707b167098e84fb00f10db61d5a662d1d29b59822bcac3a81553dd" | |||
"checksum onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "531682ab45a2cd40eff91f29340dae975f25336d2b61e624adabed39e61d7fb3" | |||
"checksum percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de154f638187706bde41d9b4738748933d64e6b37bdbffc0b47a97d16a6ae356" | |||
"checksum pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3e2e823a5967bb4cdc6d3e46f47baaf4ecfeae44413a642b74ad44e59e49c7f6" | |||
"checksum pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "3a8b4c6b8165cd1a1cd4b9b120978131389f64bdaf456435caa41e630edba903" | |||
"checksum plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1e2f7e9574aabcf57bc5e9f602caabdffffa8179b0c130a039f7895fea3dbdb5" | |||
"checksum pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)" = "378e941dbd392c101f2cb88097fa4d7167bc421d4b88de3ff7dbee503bc3233b" | |||
"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a" | |||
"checksum rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "022e0636ec2519ddae48154b028864bdce4eaf7d35226ab8e65c611be97b189d" | |||
"checksum rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b614fe08b6665cb9a231d07ac1364b0ef3cb3698f1239ee0c4c3a88a524f54c8" | |||
"checksum rayon-core 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7febc28567082c345f10cddc3612c6ea020fc3297a1977d472cf9fdb73e6e493" | |||
"checksum redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "e4a357d14a12e90a37d658725df0e6468504750b5948b9710f83f94a0c5818e8" | |||
"checksum regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1731164734096285ec2a5ec7fea5248ae2f5485b3feeb0115af4fda2183b2d1b" | |||
"checksum regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad890a5eef7953f55427c50575c680c42841653abd2b028b68cd223d157f62db" | |||
"checksum rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3058a43ada2c2d0b92b3ae38007a2d0fa5e9db971be260e0171408a4ff471c95" | |||
"checksum safemem 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e27a8b19b835f7aea908818e871f5cc3a5a186550c30773be987e155e8163d8f" | |||
"checksum same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d931a44fdaa43b8637009e7632a02adc4f2b2e0733c08caa4cf00e8da4a117a7" | |||
"checksum scopeguard 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c79eb2c3ac4bc2507cda80e7f3ac5b88bd8eae4c0914d5663e6a8933994be918" | |||
"checksum serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6a7c6b751a2e8d5df57a5ff71b5b4fc8aaee9ee28ff1341d640dd130bb5f4f7a" | |||
"checksum serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "2f6ca58905ebd3c3b285a8a6d4f3ac92b92c0d7951d5649b1bdd212549c06639" | |||
"checksum serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)" = "37aee4e0da52d801acfbc0cc219eb1eda7142112339726e427926a6f6ee65d3a" | |||
"checksum serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "48b04779552e92037212c3615370f6bd57a40ebba7f20e554ff9f55e41a69a7b" | |||
"checksum slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f5ff4b43cb07b86c5f9236c92714a22cdf9e5a27a7d85e398e2c9403328cb8" | |||
"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" | |||
"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" | |||
"checksum syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2f436345e5b6ebbfdf51b20b95cd9bcb82576262c340bad9cf815078d76b082a" | |||
"checksum tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)" = "62736a6d748fd2c5a8b4be21010e37d79f78aea3c2e07a9e13ff5c70864a3129" | |||
"checksum thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1697c4b57aeeb7a536b647165a2825faddffb1d3bad386d507709bd51a90bb14" | |||
"checksum time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "ffd7ccbf969a892bf83f1e441126968a07a3941c24ff522a26af9f9f4585d1a3" | |||
"checksum toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b0601da6c97135c8d330c7a13a013ca6cd4143221b01de2f8d4edc50a9e551c7" | |||
"checksum unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a6a2c4e3710edd365cd7e78383153ed739fa31af19f9172f72d3575060f5a43a" | |||
"checksum unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "51ccda9ef9efa3f7ef5d91e8f9b83bbe6955f9bf86aec89d5cce2c874625920f" | |||
"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc" | |||
"checksum unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2adb95ee07cd579ed18131f2d9e7a17c25a4b76022935c7f2460d2bfae89fd2" | |||
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" | |||
"checksum url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eeb819346883532a271eb626deb43c4a1bb4c4dd47c519bd78137c3e72a4fe27" | |||
"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122" | |||
"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" | |||
"checksum walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "bb08f9e670fab86099470b97cd2b252d6527f0b3cc1401acdb595ffc9dd288ff" | |||
"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" | |||
"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" | |||
"checksum xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b46ee689ba7a669c08a1170c2348d2516c62dc461135c9e86b2f1f476e07be4a" | |||
"checksum yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e66366e18dc58b46801afbf2ca7661a9f59cc8c5962c29892b6039b4f86fa992" |
@@ -0,0 +1,15 @@ | |||
[package] | |||
name = "taxonomies" | |||
version = "0.1.0" | |||
authors = ["Vincent Prouillet <vincent@wearewizards.io>"] | |||
[dependencies] | |||
tera = "0.10" | |||
slug = "0.1" | |||
serde = "1.0" | |||
serde_derive = "1.0" | |||
errors = { path = "../errors" } | |||
config = { path = "../config" } | |||
content = { path = "../content" } | |||
front_matter = { path = "../front_matter" } |
@@ -1,3 +1,13 @@ | |||
#[macro_use] | |||
extern crate serde_derive; | |||
extern crate tera; | |||
extern crate slug; | |||
extern crate errors; | |||
extern crate config; | |||
extern crate content; | |||
extern crate front_matter; | |||
use std::collections::HashMap; | |||
use slug::slugify; | |||
@@ -5,8 +15,8 @@ use tera::{Context, Tera}; | |||
use config::Config; | |||
use errors::{Result, ResultExt}; | |||
use content::Page; | |||
use content::sorting::{SortBy, sort_pages}; | |||
use content::{Page, sort_pages}; | |||
use front_matter::SortBy; | |||
#[derive(Debug, Copy, Clone, PartialEq)] | |||
@@ -27,6 +37,7 @@ impl TaxonomyItem { | |||
pub fn new(name: &str, pages: Vec<Page>) -> TaxonomyItem { | |||
// We shouldn't have any pages without dates there | |||
let (sorted_pages, _) = sort_pages(pages, SortBy::Date); | |||
TaxonomyItem { | |||
name: name.to_string(), | |||
slug: slugify(name), | |||
@@ -45,7 +56,7 @@ pub struct Taxonomy { | |||
impl Taxonomy { | |||
// TODO: take a Vec<&'a Page> if it makes a difference in terms of perf for actual sites | |||
pub fn find_tags_and_categories(all_pages: Vec<Page>) -> (Taxonomy, Taxonomy) { | |||
pub fn find_tags_and_categories(all_pages: &[Page]) -> (Taxonomy, Taxonomy) { | |||
let mut tags = HashMap::new(); | |||
let mut categories = HashMap::new(); | |||
@@ -0,0 +1,798 @@ | |||
[root] | |||
name = "templates" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"content 0.1.0", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "aho-corasick" | |||
version = "0.6.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace" | |||
version = "0.3.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"dbghelp-sys 0.2.0 (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.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace-sys" | |||
version = "0.1.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "base64" | |||
version = "0.5.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "base64" | |||
version = "0.6.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"safemem 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bincode" | |||
version = "0.8.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.8.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "bitflags" | |||
version = "0.9.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "byteorder" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "cfg-if" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "chrono" | |||
version = "0.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "chrono" | |||
version = "0.4.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "cmake" | |||
version = "0.1.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "coco" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"either 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"scopeguard 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "config" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"rendering 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "content" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"config 0.1.0", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rendering 0.1.0", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "dbghelp-sys" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dtoa" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "either" | |||
version = "1.1.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "error-chain" | |||
version = "0.10.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "errors" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "flate2" | |||
version = "0.2.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "fnv" | |||
version = "1.0.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "front_matter" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "futures" | |||
version = "0.1.14" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "gcc" | |||
version = "0.3.51" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "getopts" | |||
version = "0.2.14" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "glob" | |||
version = "0.2.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "humansize" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "idna" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "itoa" | |||
version = "0.3.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "kernel32-sys" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "lazy_static" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "libc" | |||
version = "0.2.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "matches" | |||
version = "0.1.6" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "memchr" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "miniz-sys" | |||
version = "0.1.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-integer" | |||
version = "0.1.34" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-iter" | |||
version = "0.1.33" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-traits" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "num_cpus" | |||
version = "1.6.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "onig" | |||
version = "1.3.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "onig_sys" | |||
version = "63.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "percent-encoding" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pest" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pkg-config" | |||
version = "0.3.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "plist" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "pulldown-cmark" | |||
version = "0.0.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "quote" | |||
version = "0.3.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rand" | |||
version = "0.3.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "rayon" | |||
version = "0.8.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"rayon-core 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "rayon-core" | |||
version = "1.2.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"coco 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"futures 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num_cpus 1.6.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "redox_syscall" | |||
version = "0.1.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "regex" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "regex-syntax" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rendering" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
] | |||
[[package]] | |||
name = "rustc-demangle" | |||
version = "0.1.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "safemem" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "same-file" | |||
version = "0.1.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "scopeguard" | |||
version = "0.3.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde_derive" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_derive_internals" | |||
version = "0.15.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "serde_json" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "slug" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syn" | |||
version = "0.11.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "synom" | |||
version = "0.11.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "syntect" | |||
version = "1.7.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "tera" | |||
version = "0.10.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "thread_local" | |||
version = "0.3.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "time" | |||
version = "0.1.37" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "toml" | |||
version = "0.4.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-bidi" | |||
version = "0.3.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-normalization" | |||
version = "0.1.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unicode-xid" | |||
version = "0.0.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unidecode" | |||
version = "0.2.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.5.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "utf8-ranges" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "utils" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
] | |||
[[package]] | |||
name = "void" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "walkdir" | |||
version = "1.0.7" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "winapi" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "winapi-build" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "xml-rs" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "yaml-rust" | |||
version = "0.3.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[metadata] | |||
"checksum aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "500909c4f87a9e52355b26626d890833e9e1d53ac566db76c36faa984b889699" | |||
"checksum backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "72f9b4182546f4b04ebc4ab7f84948953a118bd6021a1b6a6c909e3e94f6be76" | |||
"checksum backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "3a0d842ea781ce92be2bf78a9b38883948542749640b8378b3b2f03d1fd9f1ff" | |||
"checksum base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "30e93c03064e7590d0466209155251b90c22e37fab1daf2771582598b5827557" | |||
"checksum base64 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "96434f987501f0ed4eb336a411e0631ecd1afa11574fe148587adc4ff96143c9" | |||
"checksum bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e103c8b299b28a9c6990458b7013dc4a8356a9b854c51b9883241f5866fac36e" | |||
"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d" | |||
"checksum bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1370e9fc2a6ae53aea8b7a5110edbd08836ed87c88736dfabccade1c2b44bff4" | |||
"checksum bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5" | |||
"checksum byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c40977b0ee6b9885c9013cd41d9feffdd22deb3bb4dc3a71d901cc7a77de18c8" | |||
"checksum cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d0c47d456a36ebf0536a6705c83c1cbbcb9255fbc1d905a6ded104f479268a29" | |||
"checksum chrono 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "158b0bd7d75cbb6bf9c25967a48a2e9f77da95876b858eadfabaa99cd069de6e" | |||
"checksum chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7c20ebe0b2b08b0aeddba49c609fe7957ba2e33449882cb186a180bc60682fa9" | |||
"checksum cmake 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b8ebbb35d3dc9cd09497168f33de1acb79b265d350ab0ac34133b98f8509af1f" | |||
"checksum coco 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c06169f5beb7e31c7c67ebf5540b8b472d23e3eade3b2ec7d1f5b504a85f91bd" | |||
"checksum dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "97590ba53bcb8ac28279161ca943a924d1fd4a8fb3fa63302591647c4fc5b850" | |||
"checksum dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "80c8b71fd71146990a9742fc06dcbbde19161a267e0ad4e572c35162f4578c90" | |||
"checksum either 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "18785c1ba806c258137c937e44ada9ee7e69a37e3c72077542cd2f069d78562a" | |||
"checksum error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9435d864e017c3c6afeac1654189b06cdb491cf2ff73dbf0d73b0f292f42ff8" | |||
"checksum flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)" = "36df0166e856739905cd3d7e0b210fe818592211a008862599845e012d8d304c" | |||
"checksum fnv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6cc484842f1e2884faf56f529f960cc12ad8c71ce96cc7abba0a067c98fee344" | |||
"checksum futures 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4b63a4792d4f8f686defe3b39b92127fea6344de5d38202b2ee5a11bbbf29d6a" | |||
"checksum gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)" = "120d07f202dcc3f72859422563522b66fe6463a4c513df062874daad05f85f0a" | |||
"checksum getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9047cfbd08a437050b363d35ef160452c5fe8ea5187ae0a624708c91581d685" | |||
"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" | |||
"checksum humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "92d211e6e70b05749dce515b47684f29a3c8c38bbbb21c50b30aff9eca1b0bd3" | |||
"checksum idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2233d4940b1f19f0418c158509cd7396b8d70a5db5705ce410914dc8fa603b37" | |||
"checksum itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eb2f404fbc66fd9aac13e998248505e7ecb2ad8e44ab6388684c5fb11c6c251c" | |||
"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" | |||
"checksum lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3b37545ab726dd833ec6420aaba8231c5b320814b9029ad585555d2a03e94fbf" | |||
"checksum libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)" = "38f5c2b18a287cf78b4097db62e20f43cace381dc76ae5c0a3073067f78b7ddc" | |||
"checksum matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "100aabe6b8ff4e4a7e32c1c13523379802df0772b82466207ac25b013f193376" | |||
"checksum memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1dbccc0e46f1ea47b9f17e6d67c5a96bd27030519c519c9c91327e31275a47b4" | |||
"checksum miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "28eaee17666671fa872e567547e8428e83308ebe5808cdf6a0e28397dbe2c726" | |||
"checksum num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "2c3a3dc9f30bf824141521b30c908a859ab190b76e20435fcd89f35eb6583887" | |||
"checksum num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)" = "ef1a4bf6f9174aa5783a9b4cc892cacd11aebad6c69ad027a0b65c6ca5f8aa37" | |||
"checksum num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)" = "f7d1891bd7b936f12349b7d1403761c8a0b85a18b148e9da4429d5d102c1a41e" | |||
"checksum num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "1708c0628602a98b52fad936cf3edb9a107af06e52e49fdf0707e884456a6af6" | |||
"checksum num_cpus 1.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "aec53c34f2d0247c5ca5d32cca1478762f301740468ee9ee6dcb7a0dd7a0c584" | |||
"checksum onig 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee619da9cf707b167098e84fb00f10db61d5a662d1d29b59822bcac3a81553dd" | |||
"checksum onig_sys 63.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "531682ab45a2cd40eff91f29340dae975f25336d2b61e624adabed39e61d7fb3" | |||
"checksum percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de154f638187706bde41d9b4738748933d64e6b37bdbffc0b47a97d16a6ae356" | |||
"checksum pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3e2e823a5967bb4cdc6d3e46f47baaf4ecfeae44413a642b74ad44e59e49c7f6" | |||
"checksum pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "3a8b4c6b8165cd1a1cd4b9b120978131389f64bdaf456435caa41e630edba903" | |||
"checksum plist 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1e2f7e9574aabcf57bc5e9f602caabdffffa8179b0c130a039f7895fea3dbdb5" | |||
"checksum pulldown-cmark 0.0.15 (registry+https://github.com/rust-lang/crates.io-index)" = "378e941dbd392c101f2cb88097fa4d7167bc421d4b88de3ff7dbee503bc3233b" | |||
"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a" | |||
"checksum rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "022e0636ec2519ddae48154b028864bdce4eaf7d35226ab8e65c611be97b189d" | |||
"checksum rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b614fe08b6665cb9a231d07ac1364b0ef3cb3698f1239ee0c4c3a88a524f54c8" | |||
"checksum rayon-core 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7febc28567082c345f10cddc3612c6ea020fc3297a1977d472cf9fdb73e6e493" | |||
"checksum redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "e4a357d14a12e90a37d658725df0e6468504750b5948b9710f83f94a0c5818e8" | |||
"checksum regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1731164734096285ec2a5ec7fea5248ae2f5485b3feeb0115af4fda2183b2d1b" | |||
"checksum regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad890a5eef7953f55427c50575c680c42841653abd2b028b68cd223d157f62db" | |||
"checksum rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3058a43ada2c2d0b92b3ae38007a2d0fa5e9db971be260e0171408a4ff471c95" | |||
"checksum safemem 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e27a8b19b835f7aea908818e871f5cc3a5a186550c30773be987e155e8163d8f" | |||
"checksum same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d931a44fdaa43b8637009e7632a02adc4f2b2e0733c08caa4cf00e8da4a117a7" | |||
"checksum scopeguard 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c79eb2c3ac4bc2507cda80e7f3ac5b88bd8eae4c0914d5663e6a8933994be918" | |||
"checksum serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6a7c6b751a2e8d5df57a5ff71b5b4fc8aaee9ee28ff1341d640dd130bb5f4f7a" | |||
"checksum serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "2f6ca58905ebd3c3b285a8a6d4f3ac92b92c0d7951d5649b1bdd212549c06639" | |||
"checksum serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)" = "37aee4e0da52d801acfbc0cc219eb1eda7142112339726e427926a6f6ee65d3a" | |||
"checksum serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "48b04779552e92037212c3615370f6bd57a40ebba7f20e554ff9f55e41a69a7b" | |||
"checksum slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f5ff4b43cb07b86c5f9236c92714a22cdf9e5a27a7d85e398e2c9403328cb8" | |||
"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" | |||
"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" | |||
"checksum syntect 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2f436345e5b6ebbfdf51b20b95cd9bcb82576262c340bad9cf815078d76b082a" | |||
"checksum tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)" = "62736a6d748fd2c5a8b4be21010e37d79f78aea3c2e07a9e13ff5c70864a3129" | |||
"checksum thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1697c4b57aeeb7a536b647165a2825faddffb1d3bad386d507709bd51a90bb14" | |||
"checksum time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "ffd7ccbf969a892bf83f1e441126968a07a3941c24ff522a26af9f9f4585d1a3" | |||
"checksum toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b0601da6c97135c8d330c7a13a013ca6cd4143221b01de2f8d4edc50a9e551c7" | |||
"checksum unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a6a2c4e3710edd365cd7e78383153ed739fa31af19f9172f72d3575060f5a43a" | |||
"checksum unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "51ccda9ef9efa3f7ef5d91e8f9b83bbe6955f9bf86aec89d5cce2c874625920f" | |||
"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc" | |||
"checksum unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2adb95ee07cd579ed18131f2d9e7a17c25a4b76022935c7f2460d2bfae89fd2" | |||
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" | |||
"checksum url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eeb819346883532a271eb626deb43c4a1bb4c4dd47c519bd78137c3e72a4fe27" | |||
"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122" | |||
"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" | |||
"checksum walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "bb08f9e670fab86099470b97cd2b252d6527f0b3cc1401acdb595ffc9dd288ff" | |||
"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" | |||
"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" | |||
"checksum xml-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b46ee689ba7a669c08a1170c2348d2516c62dc461135c9e86b2f1f476e07be4a" | |||
"checksum yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e66366e18dc58b46801afbf2ca7661a9f59cc8c5962c29892b6039b4f86fa992" |
@@ -0,0 +1,14 @@ | |||
[package] | |||
name = "templates" | |||
version = "0.1.0" | |||
authors = ["Vincent Prouillet <vincent@wearewizards.io>"] | |||
[dependencies] | |||
tera = "0.10" | |||
base64 = "0.6" | |||
lazy_static = "0.2" | |||
pulldown-cmark = "0" | |||
errors = { path = "../errors" } | |||
utils = { path = "../utils" } | |||
content = { path = "../content" } |
@@ -1,10 +1,9 @@ | |||
use std::collections::{HashMap}; | |||
use std::collections::HashMap; | |||
use base64::{encode, decode}; | |||
use pulldown_cmark as cmark; | |||
use tera::{Value, to_value, Result as TeraResult}; | |||
// fn(Value, HashMap<String, Value>) -> Result<Value> | |||
pub fn markdown(value: Value, _: HashMap<String, Value>) -> TeraResult<Value> { | |||
let s = try_get_value!("markdown", "value", String, value); |
@@ -4,7 +4,7 @@ use std::path::{PathBuf}; | |||
use tera::{GlobalFn, Value, from_value, to_value, Result}; | |||
use content::{Page, Section}; | |||
use site::resolve_internal_link; | |||
use utils::site::resolve_internal_link; | |||
pub fn make_get_page(all_pages: &HashMap<PathBuf, Page>) -> GlobalFn { |
@@ -1,10 +1,21 @@ | |||
use tera::{Tera, Context}; | |||
#[macro_use] | |||
extern crate lazy_static; | |||
#[macro_use] | |||
extern crate tera; | |||
extern crate base64; | |||
extern crate pulldown_cmark; | |||
use errors::{Result, ResultExt}; | |||
extern crate errors; | |||
extern crate utils; | |||
extern crate content; | |||
pub mod filters; | |||
pub mod global_fns; | |||
use tera::{Tera, Context}; | |||
use errors::{Result, ResultExt}; | |||
lazy_static! { | |||
pub static ref GUTENBERG_TERA: Tera = { | |||
let mut tera = Tera::default(); |
@@ -0,0 +1,404 @@ | |||
[root] | |||
name = "utils" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"errors 0.1.0", | |||
"tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "aho-corasick" | |||
version = "0.6.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace" | |||
version = "0.3.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"dbghelp-sys 0.2.0 (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.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "backtrace-sys" | |||
version = "0.1.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "cfg-if" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "chrono" | |||
version = "0.4.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dbghelp-sys" | |||
version = "0.2.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "dtoa" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "error-chain" | |||
version = "0.10.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "errors" | |||
version = "0.1.0" | |||
dependencies = [ | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "gcc" | |||
version = "0.3.51" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "glob" | |||
version = "0.2.11" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "humansize" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "idna" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "itoa" | |||
version = "0.3.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "kernel32-sys" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "lazy_static" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "libc" | |||
version = "0.2.24" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "matches" | |||
version = "0.1.6" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "memchr" | |||
version = "1.0.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-integer" | |||
version = "0.1.34" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-iter" | |||
version = "0.1.33" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "num-traits" | |||
version = "0.1.39" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "percent-encoding" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "pest" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rand" | |||
version = "0.3.15" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "redox_syscall" | |||
version = "0.1.19" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "regex" | |||
version = "0.2.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "regex-syntax" | |||
version = "0.4.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "rustc-demangle" | |||
version = "0.1.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde" | |||
version = "1.0.9" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "serde_json" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "slug" | |||
version = "0.1.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "tempdir" | |||
version = "0.3.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "tera" | |||
version = "0.10.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "thread_local" | |||
version = "0.3.4" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "time" | |||
version = "0.1.37" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "toml" | |||
version = "0.4.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-bidi" | |||
version = "0.3.3" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "unicode-normalization" | |||
version = "0.1.5" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "unidecode" | |||
version = "0.2.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.5.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
dependencies = [ | |||
"idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "utf8-ranges" | |||
version = "1.0.0" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "void" | |||
version = "1.0.2" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "winapi" | |||
version = "0.2.8" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[[package]] | |||
name = "winapi-build" | |||
version = "0.1.1" | |||
source = "registry+https://github.com/rust-lang/crates.io-index" | |||
[metadata] | |||
"checksum aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "500909c4f87a9e52355b26626d890833e9e1d53ac566db76c36faa984b889699" | |||
"checksum backtrace 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "72f9b4182546f4b04ebc4ab7f84948953a118bd6021a1b6a6c909e3e94f6be76" | |||
"checksum backtrace-sys 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "3a0d842ea781ce92be2bf78a9b38883948542749640b8378b3b2f03d1fd9f1ff" | |||
"checksum cfg-if 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d0c47d456a36ebf0536a6705c83c1cbbcb9255fbc1d905a6ded104f479268a29" | |||
"checksum chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7c20ebe0b2b08b0aeddba49c609fe7957ba2e33449882cb186a180bc60682fa9" | |||
"checksum dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "97590ba53bcb8ac28279161ca943a924d1fd4a8fb3fa63302591647c4fc5b850" | |||
"checksum dtoa 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "80c8b71fd71146990a9742fc06dcbbde19161a267e0ad4e572c35162f4578c90" | |||
"checksum error-chain 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9435d864e017c3c6afeac1654189b06cdb491cf2ff73dbf0d73b0f292f42ff8" | |||
"checksum gcc 0.3.51 (registry+https://github.com/rust-lang/crates.io-index)" = "120d07f202dcc3f72859422563522b66fe6463a4c513df062874daad05f85f0a" | |||
"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" | |||
"checksum humansize 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "92d211e6e70b05749dce515b47684f29a3c8c38bbbb21c50b30aff9eca1b0bd3" | |||
"checksum idna 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2233d4940b1f19f0418c158509cd7396b8d70a5db5705ce410914dc8fa603b37" | |||
"checksum itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eb2f404fbc66fd9aac13e998248505e7ecb2ad8e44ab6388684c5fb11c6c251c" | |||
"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" | |||
"checksum lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3b37545ab726dd833ec6420aaba8231c5b320814b9029ad585555d2a03e94fbf" | |||
"checksum libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)" = "38f5c2b18a287cf78b4097db62e20f43cace381dc76ae5c0a3073067f78b7ddc" | |||
"checksum matches 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "100aabe6b8ff4e4a7e32c1c13523379802df0772b82466207ac25b013f193376" | |||
"checksum memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1dbccc0e46f1ea47b9f17e6d67c5a96bd27030519c519c9c91327e31275a47b4" | |||
"checksum num 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "2c3a3dc9f30bf824141521b30c908a859ab190b76e20435fcd89f35eb6583887" | |||
"checksum num-integer 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)" = "ef1a4bf6f9174aa5783a9b4cc892cacd11aebad6c69ad027a0b65c6ca5f8aa37" | |||
"checksum num-iter 0.1.33 (registry+https://github.com/rust-lang/crates.io-index)" = "f7d1891bd7b936f12349b7d1403761c8a0b85a18b148e9da4429d5d102c1a41e" | |||
"checksum num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "1708c0628602a98b52fad936cf3edb9a107af06e52e49fdf0707e884456a6af6" | |||
"checksum percent-encoding 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de154f638187706bde41d9b4738748933d64e6b37bdbffc0b47a97d16a6ae356" | |||
"checksum pest 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3e2e823a5967bb4cdc6d3e46f47baaf4ecfeae44413a642b74ad44e59e49c7f6" | |||
"checksum rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "022e0636ec2519ddae48154b028864bdce4eaf7d35226ab8e65c611be97b189d" | |||
"checksum redox_syscall 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "e4a357d14a12e90a37d658725df0e6468504750b5948b9710f83f94a0c5818e8" | |||
"checksum regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1731164734096285ec2a5ec7fea5248ae2f5485b3feeb0115af4fda2183b2d1b" | |||
"checksum regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad890a5eef7953f55427c50575c680c42841653abd2b028b68cd223d157f62db" | |||
"checksum rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3058a43ada2c2d0b92b3ae38007a2d0fa5e9db971be260e0171408a4ff471c95" | |||
"checksum serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6a7c6b751a2e8d5df57a5ff71b5b4fc8aaee9ee28ff1341d640dd130bb5f4f7a" | |||
"checksum serde_json 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "48b04779552e92037212c3615370f6bd57a40ebba7f20e554ff9f55e41a69a7b" | |||
"checksum slug 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f5ff4b43cb07b86c5f9236c92714a22cdf9e5a27a7d85e398e2c9403328cb8" | |||
"checksum tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "87974a6f5c1dfb344d733055601650059a3363de2a6104819293baff662132d6" | |||
"checksum tera 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)" = "62736a6d748fd2c5a8b4be21010e37d79f78aea3c2e07a9e13ff5c70864a3129" | |||
"checksum thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1697c4b57aeeb7a536b647165a2825faddffb1d3bad386d507709bd51a90bb14" | |||
"checksum time 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "ffd7ccbf969a892bf83f1e441126968a07a3941c24ff522a26af9f9f4585d1a3" | |||
"checksum toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b0601da6c97135c8d330c7a13a013ca6cd4143221b01de2f8d4edc50a9e551c7" | |||
"checksum unicode-bidi 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a6a2c4e3710edd365cd7e78383153ed739fa31af19f9172f72d3575060f5a43a" | |||
"checksum unicode-normalization 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "51ccda9ef9efa3f7ef5d91e8f9b83bbe6955f9bf86aec89d5cce2c874625920f" | |||
"checksum unidecode 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2adb95ee07cd579ed18131f2d9e7a17c25a4b76022935c7f2460d2bfae89fd2" | |||
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" | |||
"checksum url 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "eeb819346883532a271eb626deb43c4a1bb4c4dd47c519bd78137c3e72a4fe27" | |||
"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122" | |||
"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" | |||
"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" | |||
"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" |
@@ -0,0 +1,11 @@ | |||
[package] | |||
name = "utils" | |||
version = "0.1.0" | |||
authors = ["Vincent Prouillet <vincent@wearewizards.io>"] | |||
[dependencies] | |||
errors = { path = "../errors" } | |||
[dev-dependencies] | |||
tempdir = "0.3" |
@@ -1,6 +1,44 @@ | |||
use std::fs::read_dir; | |||
use std::io::prelude::*; | |||
use std::fs::{File, create_dir_all, read_dir}; | |||
use std::path::{Path, PathBuf}; | |||
use errors::{Result, ResultExt}; | |||
/// Create a file with the content given | |||
pub fn create_file(path: &Path, content: &str) -> Result<()> { | |||
let mut file = File::create(&path)?; | |||
file.write_all(content.as_bytes())?; | |||
Ok(()) | |||
} | |||
/// Create a directory at the given path if it doesn't exist already | |||
pub fn ensure_directory_exists(path: &Path) -> Result<()> { | |||
if !path.exists() { | |||
create_directory(path)?; | |||
} | |||
Ok(()) | |||
} | |||
/// Very similar to `create_dir` from the std except it checks if the folder | |||
/// exists before creating it | |||
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()))?; | |||
} | |||
Ok(()) | |||
} | |||
/// Return the content of a file, with error handling added | |||
pub fn read_file(path: &Path) -> Result<String> { | |||
let mut content = String::new(); | |||
File::open(path) | |||
.chain_err(|| format!("Failed to open '{:?}'", path.display()))? | |||
.read_to_string(&mut content)?; | |||
Ok(content) | |||
} | |||
/// Looks into the current folder for the path and see if there's anything that is not a .md | |||
/// file. Those will be copied next to the rendered .html file | |||
pub fn find_related_assets(path: &Path) -> Vec<PathBuf> { | |||
@@ -22,23 +60,13 @@ pub fn find_related_assets(path: &Path) -> Vec<PathBuf> { | |||
assets | |||
} | |||
/// Get word count and estimated reading time | |||
pub fn get_reading_analytics(content: &str) -> (usize, usize) { | |||
// Only works for latin language but good enough for a start | |||
let word_count: usize = content.split_whitespace().count(); | |||
// https://help.medium.com/hc/en-us/articles/214991667-Read-time | |||
// 275 seems a bit too high though | |||
(word_count, (word_count / 200)) | |||
} | |||
#[cfg(test)] | |||
mod tests { | |||
use std::fs::File; | |||
use tempdir::TempDir; | |||
use super::{find_related_assets, get_reading_analytics}; | |||
use super::{find_related_assets}; | |||
#[test] | |||
fn can_find_related_assets() { | |||
@@ -55,22 +83,4 @@ mod tests { | |||
assert_eq!(assets.iter().filter(|p| p.file_name().unwrap() == "graph.jpg").count(), 1); | |||
assert_eq!(assets.iter().filter(|p| p.file_name().unwrap() == "fail.png").count(), 1); | |||
} | |||
#[test] | |||
fn reading_analytics_short_text() { | |||
let (word_count, reading_time) = get_reading_analytics("Hello World"); | |||
assert_eq!(word_count, 2); | |||
assert_eq!(reading_time, 0); | |||
} | |||
#[test] | |||
fn reading_analytics_long_text() { | |||
let mut content = String::new(); | |||
for _ in 0..1000 { | |||
content.push_str(" Hello world"); | |||
} | |||
let (word_count, reading_time) = get_reading_analytics(&content); | |||
assert_eq!(word_count, 2000); | |||
assert_eq!(reading_time, 10); | |||
} | |||
} |
@@ -0,0 +1,8 @@ | |||
#[macro_use] | |||
extern crate errors; | |||
#[cfg(test)] | |||
extern crate tempdir; | |||
pub mod fs; | |||
pub mod site; |
@@ -0,0 +1,80 @@ | |||
use std::collections::HashMap; | |||
use errors::Result; | |||
/// Get word count and estimated reading time | |||
pub fn get_reading_analytics(content: &str) -> (usize, usize) { | |||
// Only works for latin language but good enough for a start | |||
let word_count: usize = content.split_whitespace().count(); | |||
// https://help.medium.com/hc/en-us/articles/214991667-Read-time | |||
// 275 seems a bit too high though | |||
(word_count, (word_count / 200)) | |||
} | |||
/// Resolves an internal link (of the `./posts/something.md#hey` sort) to its absolute link | |||
pub fn resolve_internal_link(link: &str, permalinks: &HashMap<String, String>) -> Result<String> { | |||
// First we remove the ./ since that's gutenberg specific | |||
let clean_link = link.replacen("./", "", 1); | |||
// Then we remove any potential anchor | |||
// parts[0] will be the file path and parts[1] the anchor if present | |||
let parts = clean_link.split('#').collect::<Vec<_>>(); | |||
match permalinks.get(parts[0]) { | |||
Some(p) => { | |||
if parts.len() > 1 { | |||
Ok(format!("{}#{}", p, parts[1])) | |||
} else { | |||
Ok(p.to_string()) | |||
} | |||
}, | |||
None => bail!(format!("Relative link {} not found.", link)), | |||
} | |||
} | |||
#[cfg(test)] | |||
mod tests { | |||
use std::collections::HashMap; | |||
use super::{resolve_internal_link, get_reading_analytics}; | |||
#[test] | |||
fn can_resolve_valid_internal_link() { | |||
let mut permalinks = HashMap::new(); | |||
permalinks.insert("pages/about.md".to_string(), "https://vincent.is/about".to_string()); | |||
let res = resolve_internal_link("./pages/about.md", &permalinks).unwrap(); | |||
assert_eq!(res, "https://vincent.is/about"); | |||
} | |||
#[test] | |||
fn can_resolve_internal_links_with_anchors() { | |||
let mut permalinks = HashMap::new(); | |||
permalinks.insert("pages/about.md".to_string(), "https://vincent.is/about".to_string()); | |||
let res = resolve_internal_link("./pages/about.md#hello", &permalinks).unwrap(); | |||
assert_eq!(res, "https://vincent.is/about#hello"); | |||
} | |||
#[test] | |||
fn errors_resolve_inexistant_internal_link() { | |||
let res = resolve_internal_link("./pages/about.md#hello", &HashMap::new()); | |||
assert!(res.is_err()); | |||
} | |||
#[test] | |||
fn reading_analytics_short_text() { | |||
let (word_count, reading_time) = get_reading_analytics("Hello World"); | |||
assert_eq!(word_count, 2); | |||
assert_eq!(reading_time, 0); | |||
} | |||
#[test] | |||
fn reading_analytics_long_text() { | |||
let mut content = String::new(); | |||
for _ in 0..1000 { | |||
content.push_str(" Hello world"); | |||
} | |||
let (word_count, reading_time) = get_reading_analytics(&content); | |||
assert_eq!(word_count, 2000); | |||
assert_eq!(reading_time, 10); | |||
} | |||
} |
@@ -1,7 +1,7 @@ | |||
use std::env; | |||
use gutenberg::errors::Result; | |||
use gutenberg::Site; | |||
use errors::Result; | |||
use site::Site; | |||
use console; | |||
@@ -1,9 +1,8 @@ | |||
use std::fs::{create_dir}; | |||
use std::fs::create_dir; | |||
use std::path::Path; | |||
use gutenberg::errors::Result; | |||
use gutenberg::create_file; | |||
use errors::Result; | |||
use utils::fs::create_file; | |||
const CONFIG: &'static str = r#" |
@@ -33,8 +33,8 @@ use mount::Mount; | |||
use staticfile::Static; | |||
use notify::{Watcher, RecursiveMode, watcher}; | |||
use ws::{WebSocket, Sender, Message}; | |||
use gutenberg::Site; | |||
use gutenberg::errors::{Result, ResultExt}; | |||
use site::Site; | |||
use errors::{Result, ResultExt}; | |||
use console; | |||
use rebuild; |
@@ -4,8 +4,8 @@ use chrono::Duration; | |||
use term_painter::ToStyle; | |||
use term_painter::Color::*; | |||
use gutenberg::errors::Error; | |||
use gutenberg::Site; | |||
use errors::Error; | |||
use site::Site; | |||
pub fn info(message: &str) { |