Commit graph

320 commits

Author SHA1 Message Date
Vincent Prouillet
c63b7fde44 load_data now defaults to plain type + fix bug with get_taxonomy fn 2019-03-16 10:01:11 +01:00
Vincent Prouillet
8a802b1828 Make sitemap entries in a set
Close #633
2019-03-14 21:53:29 +01:00
Vincent Prouillet
7baf08cef2 Update docs for sitemap 2019-03-14 21:15:01 +01:00
Sébastien Mariaux
2a0d0b9b77 Split sitemap (#619)
Split sitemap when it is getting too big
2019-03-14 20:57:22 +01:00
Vincent Prouillet
3b8a95eb8f Generate assets before rendering templates 2019-03-11 20:25:28 +01:00
Vincent Prouillet
135dc5d5bc Change default directory for load_data 2019-03-11 20:21:13 +01:00
Vincent Prouillet
eccb1e9986 Strip base_path from page/section paths
To ensure we will get the right `content`
directory.
Fix #629
2019-03-08 23:30:43 +01:00
Vincent Prouillet
974492bb7b Ensure we don't delete root index without
adding back default in rebuild

Fix #620
2019-02-22 21:48:31 +01:00
Vincent Prouillet
11c58458e8 Revert useless change in shortcodes 2019-02-22 21:02:42 +01:00
Vincent Prouillet
9bc675f2a7 Fix colocated dates + rustfmt
Closes #607
2019-02-09 19:54:47 +01:00
Vincent Prouillet
a42e6dfec4 Fix benches 2019-02-08 19:06:01 +01:00
Vincent Prouillet
97d11995c5 Skip render=false sections in sitemap
Fix #604
2019-01-31 19:55:36 +01:00
Vincent Prouillet
1c7729cac6 Default lang to config.default_language 2019-01-29 19:20:11 +01:00
Vincent Prouillet
21d67235ae Arc-ify Library 2019-01-27 18:57:07 +01:00
Vincent Prouillet
7c260eb5b2 Fix multilingual tests 2019-01-25 16:18:48 +01:00
Vincent Prouillet
1e2dd9ce03 Update tera to v1 alpha 2019-01-23 19:20:43 +01:00
Nicolas Pochet
b65979fac7
Render the theme template files if present
* Change the behavior of the template rendering:
    * Check if the template bare name is present
    * Check if the template is part of a theme
    * Fallback to defaults
* Change the behavior of the shortcode rendering:
    * Call the template rendering function
* Prepend `__zola_builtins/` to most of the default elements in `ZOLA_TERA`
* Add a test to verify the presence and content of a `404.html` page
from a theme's template
2019-01-19 18:06:51 +01:00
Vincent Prouillet
1b4cfd49d0 More early tera fns and mention limitation of shortcodes in docs 2019-01-17 18:29:18 +01:00
Vincent Prouillet
83472a53d7 Register load_data early
Closes #582
2019-01-17 18:18:03 +01:00
Vincent Prouillet
5caf24f06c Remove error-chain
Closes #576
2019-01-17 14:31:47 +01:00
Vincent Prouillet
538866487b Add multilingual taxonomies 2019-01-07 21:03:34 +01:00
Vincent Prouillet
2e126b3a08 Fix race condition with language folder creation 2019-01-04 21:57:27 +01:00
Vincent Prouillet
f45293ab25 cargo fmt 2019-01-04 20:34:28 +01:00
Vincent Prouillet
19075191ff Add translations to page/sections 2019-01-04 20:31:31 +01:00
Vincent Prouillet
3d22b4f1f9 Generate per language RSS feed 2019-01-02 22:11:34 +01:00
Vincent Prouillet
a12e9512bc fmt/clippy 2018-12-29 11:17:43 +01:00
Vincent Prouillet
7313b41f4d Start adding some tests for building multilingual sites 2018-12-28 17:30:47 +01:00
Vincent Prouillet
1d06324a65 Load multi-languages pages/sections 2018-12-28 12:15:17 +01:00
Vincent Prouillet
c0bbe16eac cargo fmt + update 2018-12-10 18:21:08 +01:00
Anton Lazarev
885c7ded80
inject livereloader for 404 template 2018-12-07 20:47:01 -05:00
Vincent Prouillet
0cf8e8ca1c Fix pagers not being in sitemap
Closes #521
2018-11-29 21:48:04 +01:00
Vincent Prouillet
b3004c69ef Fix broken taxonomies pagination
Closes #533
2018-11-29 20:24:46 +01:00
Shotaro Yamada
692103bff4 Remove redundant clone 2018-11-19 23:08:34 +09:00
Vincent Prouillet
aee41f279c Fix reload with taxonomies 2018-11-16 23:51:11 +01:00
Vincent Prouillet
7af314c61e Update deps + fmt 2018-11-14 17:34:21 +01:00
Vincent Prouillet
20a05da475 Fix bug with pages starting with dates 2018-11-13 00:08:46 +01:00
Vincent Prouillet
59f3e54e4e Add test for nested page_template 2018-11-07 20:48:39 +01:00
Vincent Prouillet
56af4ca7f9 Add page_template to sections
To override all child pages

Closes #397
Tests from PR #434
2018-11-07 19:42:23 +01:00
Vincent Prouillet
a3b0f1e103 Add transparent sections
Closes #413
Closes #408
2018-11-06 00:46:13 +01:00
Vincent Prouillet
b7ce4e59fb rustfmt 2018-10-31 08:18:57 +01:00
Jake Howard
aad12d829f Remote data (#494) 2018-10-29 20:13:09 +01:00
Vincent Prouillet
19b4341957 Fix test 2018-10-22 22:34:38 +02:00
Magnus Hovland Hoff
05b8bb4ac6 Ensure root output directory exists explicitly.
Aliases that have no directory nesting sneakily avoid the code path that ensures the directories exist
2018-10-22 22:17:51 +02:00
Vincent Prouillet
4c9fd0d302 Do not panic if something is already bound to 1111 in serve 2018-10-19 16:33:11 +02:00
Vincent Prouillet
f84ae7c93b Rename all occurrences of gutenberg to zola in code 2018-10-18 22:50:06 +02:00
Vincent Prouillet
83b04a561c Expose relative path of pages & sections
Closes #485
2018-10-18 18:00:40 +02:00
Luke Frisken
1baa7750f3 CSV and TOML loading global functions (#379)
Local CSV/TOML/JSON loading Tera function
2018-10-18 17:32:30 +02:00
Vincent Prouillet
957c6bed9d Have a list of ancestors instead of only parent section 2018-10-18 15:54:51 +02:00
Vincent Prouillet
f14dbcbdf4 section.subsections is now an array of paths
Close #446
Close #260
Close #478
Close #284
Close #480
2018-10-15 22:28:27 +02:00
Chris Krycho
56c5036abc
Allow inclusion of all items in RSS feeds.
Switch to an `Option<usize>` for the serialized value of `rss_items`.
This lets us just set a blank value in the configuration and thereby
include *all* items.

This is a backwards-compatible change; it does not affect the behavior
of existing configurations.

Fixes #468. Closes #471.
2018-10-09 20:20:09 -06:00
Vincent Prouillet
ee3f4dc511 Update to syntect 3 2018-10-09 14:33:43 +02:00
Vincent Prouillet
0ce3a0f070
Merge pull request #459 from Keats/database
Slotmap refactor
2018-10-09 11:30:49 +02:00
Vincent Prouillet
6843ec5c9c Rebuild more things now that it is more performant to do so
Fix #122
2018-10-06 13:52:40 +02:00
Vincent Prouillet
cdcebaea26 Cleanup of slotmap impl
Fix #205
2018-10-05 19:46:04 +02:00
Vincent Prouillet
396d237673 Use Tera render_with_borrowed 2018-10-05 15:03:22 +02:00
Vincent Prouillet
10aba20fe5 Slotmap refactor 2018-10-03 16:29:29 +02:00
Greizgh
fec58054b4 Inject config in robots.txt context
This allow to use base_url in robots.txt, to reference a sitemap for
example.
2018-10-02 08:15:26 +02:00
Vincent Prouillet
2cf99c3cfc Fix robots.txt template for real this time 2018-10-01 17:50:42 +02:00
Vincent Prouillet
99215a4523
Merge pull request #455 from ccoors/fix-clippy
Fix some clippy warnings
2018-09-30 23:54:50 +02:00
Vincent Prouillet
c0090513a0 Remove printlnt 2018-09-30 23:28:08 +02:00
Christian Friedrich Coors
85529186e4 Fix some clippy warnings 2018-09-30 21:15:09 +02:00
Vincent Prouillet
a11f8232de Fix robots.txt not being loaded in Tera
Closes #443
2018-09-30 19:05:59 +02:00
Vincent Prouillet
69dce561c8 Do not clone pages in taxonomies 2018-09-20 23:03:16 +02:00
Vincent Prouillet
14560f224e No clone when rendering rss feed 2018-09-20 22:47:43 +02:00
Vincent Prouillet
ccaf36ee94 Avoid the use of enumerate in render_paginated 2018-09-18 19:18:50 +02:00
Vincent Prouillet
91adc03bdd Some more benches 2018-09-18 17:19:59 +02:00
Vincent Prouillet
5876a67100 Remove useless benches and add more useful ones 2018-09-18 16:01:44 +02:00
Thomas Hurst
088b3df79a Replace fold/reduce over Result::and with collect
Not only is this tidier, but it avoids making these iterators
Rayon-specific.
2018-09-13 19:17:05 +01:00
Vincent Prouillet
d11f4aa56a Do not load markdown files starting with a . 2018-09-13 17:07:14 +02:00
Thomas Hurst
34d17e613d Make get_all_orphan_pages more idiomatic 2018-09-13 00:23:49 +01:00
Thomas Hurst
2d7315676b Use a HashSet for detecting orphan pages
This offers a big performance bump for large sites:

  small-kb (100 pages)
    before: 530ms
     after: 500ms

  medium-kb (1000 pages)
    before: 2.9s
     after: 1.5s

  huge-kb (10,000 pages)
    before: 150s
     after:   9.1s
2018-09-12 23:54:15 +01:00
Vincent Prouillet
67698a3aa1 Move to non-deprecated fns 2018-09-12 16:45:52 +02:00
Vincent Prouillet
b4158921dd Fix email links being checked by link checker
Closes #403
2018-09-10 12:40:31 +02:00
Vincent Prouillet
367f58b0a3 Fix loading html files in themes outside of templates
Fix #412
2018-09-09 20:12:55 +02:00
Vincent Prouillet
38b30eb144 Update deps and fix deprecrations 2018-09-09 19:43:14 +02:00
Vincent Prouillet
a6adbabb3d Fix benches 2018-09-03 19:05:24 +02:00
Nathan Ringo
9df5da4697
Fixes bug with extra syntaxes in non-root section, adds tests. 2018-08-14 02:12:04 -05:00
cmal
739c2011a7 Remove redundant filtering operation (optimization) 2018-08-09 11:55:27 +02:00
cmal
77f8d96c9c Make comment more explicit 2018-08-09 11:53:45 +02:00
cmal
3b9c8c71b5 Revert "Start implementing _index folder for section content/assets"
This reverts commit c7156a84f0.
2018-08-09 11:51:01 +02:00
cmal
c7156a84f0 Start implementing _index folder for section content/assets 2018-08-08 10:51:40 +02:00
cmal
15190962ba Copy relevant assets in case of colocation for section 2018-08-07 12:14:59 +02:00
Vincent Prouillet
efddb24b95 We actually need get_taxonomy_url. Also update docs 2018-07-31 16:35:16 +02:00
Vincent Prouillet
60a52fd2cc Some intellij reformatting 2018-07-31 15:30:49 +02:00
Daniel Sockwell
77ac196f46 Change populate_next_and_previous_page
Replace `populate_next_and_previous_page` with `populate_siblings`
2018-07-30 22:41:27 -04:00
Daniel Sockwell
c2437cc0eb Remove order and add heavier/later
This commit removes the option to sort by order and also removes
`page.next` and `page.previous` variables.  Instead, pages can be sorted
by two methods `date` and `weight`.  The Tera `reverse` filter will
reverse either of those sorts, so the old `order` behavior can be
achieved by using the `reverse` filter with `weight`.

In place of the `previous`/`next` variables, this commit adds the
`page.earlier`/`page.later` variables (which are set when the page is
sorted by date) and the `page.heavier`/`page.lighter` variables (which
are set when the page is sorted by weight).  These variables have the
advantage of not having confusing semantics when the `reverse` filter is
used.
2018-07-27 23:00:28 -04:00
Vincent Prouillet
9972b72d91 Register get_taxonomy global fn 2018-07-27 18:45:19 +02:00
Vincent Prouillet
18bef00671 Rename taxonomies paginate and error on unknown ones 2018-07-16 18:14:48 +02:00
Vincent Prouillet
2f100ecd01 Fix path in windows for taxo rss 2018-07-16 12:01:03 +02:00
Vincent Prouillet
1ae0702494
Custom taxonomies (#330) 2018-07-16 10:54:05 +02:00
Vincent Prouillet
735bb38bd7 Update docs for 404 and enable preserve-order of tera 2018-07-05 17:43:48 +02:00
Owen Nelson
8f460dc28b Custom 404 page now template driven.
Since we are using a builtin template, we can be assured to have the
target file in place. Middleware renamed since it is bound directly to
the concept of handling 404s.
2018-06-25 23:24:57 -07:00
Vojtech Kral
6662014e55 Add image resizing support #225 2018-06-25 18:05:04 +02:00
James Munns
fbb57253a3 Add html-alias test 2018-06-25 18:02:07 +02:00
James Munns
cf1f8317bb Reduce the number of allocations 2018-06-25 18:02:07 +02:00
James Munns
40ef634439 Allow creation of specific html aliases 2018-06-25 18:02:07 +02:00
Vincent Prouillet
b892c07ed3 Don't hardcode the ws port
Closes #282
2018-06-25 17:59:04 +02:00
Vincent Prouillet
3e6054a9ac tempdir -> tempfile 2018-06-25 17:57:33 +02:00
Vincent Prouillet
9c0dd95bdb Fix theme shortcode not being useable
Closes #272
2018-03-28 21:09:08 +02:00
Vincent Prouillet
e40e97711f Some more bits about continue_reading anchor 2018-03-28 17:01:14 +02:00
Vincent Prouillet
73ddbf7152 Write some docs 2018-03-21 16:18:24 +01:00
Vincent Prouillet
2c538d3776 Fix some bugs in search 2018-03-20 23:08:20 +01:00
Vincent Prouillet
b0363298f5 Search is working now 2018-03-20 21:27:33 +01:00
Vincent Prouillet
ddf8970ad8 [WIP] Search 2018-03-20 18:43:30 +01:00
Vincent Prouillet
f1abbd0860 Move copy utils to utils crate 2018-03-20 18:43:17 +01:00
Vincent Prouillet
bcf42a0c10 The wonders of serde default, take 2 2018-03-20 18:42:42 +01:00
Vincent Prouillet
d0137377d5
Merge pull request #264 from ErichDonGubler/sass-indented-syntax
Make indented syntax available for SASS via the "sass" file extension
2018-03-19 18:46:07 +01:00
Erich Gubler
0d8dc656f1 CR review: s/Options/SassOptions/, break bail args in compile_sass into multiple lines 2018-03-19 10:04:48 -06:00
Vincent Prouillet
43db3a43ff Do not require themes to have a static folder 2018-03-18 09:34:37 +01:00
Vincent Prouillet
ac8f3a6353
Merge pull request #255 from ErichDonGubler/sass-folders
Preserve folder structure of SCSS content
2018-03-17 20:39:19 +01:00
Erich Gubler
ea4cc63aa9 Make indented syntax available for SASS via the "sass" file extension 2018-03-17 13:23:02 -06:00
Erich Gubler
9fbbcca3c6 Preserve folder structure of SCSS content 2018-03-17 13:22:23 -06:00
Vincent Prouillet
3a2dab5974 Sort sitemap elements by permalink
Closes #257
2018-03-17 14:34:02 +01:00
Vincent Prouillet
b3b2527c5d TIL about serde default 2018-03-12 20:11:03 +01:00
Vincent Prouillet
45fc1ee761 Release 0.3.1 2018-02-15 10:41:49 +01:00
Vincent Prouillet
54841b19bb
Merge pull request #220 from Keats/markdown-inline
Markdown inline
2018-02-02 17:29:16 +01:00
Vincent Prouillet
16f658c70c Move test_site and turn rebuild.rs into a component 2018-01-29 18:40:12 +01:00
Vincent Prouillet
49793314a0 Update benchmarks 2018-01-26 16:07:44 +01:00
Vincent Prouillet
a44dd5f49a serve cleans after itself now
Closes #199
2018-01-22 18:11:28 +01:00
Vincent Prouillet
11bfd7b2be Tera 0.11 has been released 2018-01-22 15:10:03 +01:00
Vincent Prouillet
8c7e3d7358 Remove stray println 2018-01-22 13:54:10 +01:00
Vincent Prouillet
b06f012be4 Fix tests wrt language_code 2018-01-16 13:49:49 +01:00
Baptiste Darthenay
046de8c998 Config with i18n 2018-01-15 17:54:06 +01:00
Vincent Prouillet
1d1ff74d88 Use TOML dates in front-matter rather than strings
Closes #210
2018-01-14 18:04:01 +01:00
Vincent Prouillet
892c987152 Livereload shortcode changes
Fix #204
2018-01-09 23:39:21 +01:00
Vincent Prouillet
bfdc93f948 Cargo update 2017-12-29 19:51:22 +01:00
Vincent Prouillet
14edd2b875 Add output-dir option to build & serve
From #191
2017-12-29 19:26:17 +01:00
Vincent Prouillet
cfefb45913 Update to Tera 0.11 beta 2017-11-26 10:07:34 +01:00
Vincent Prouillet
322d2f30fb Add get_taxonomy_url global_fn
And fix bug with taxonomies urls
2017-11-26 10:07:34 +01:00
Vincent Prouillet
c8f07d8242 Update deps 2017-10-31 17:02:34 +01:00
Vincent Prouillet
1d8df5774f Allow static folder to be missing 2017-10-25 14:49:54 +02:00
Vincent Prouillet
d4779aa2ed Fix generated index section not found in get_section 2017-10-24 20:32:46 +02:00
Vincent Prouillet
404240ef82 Fix some index related bugs 2017-10-24 20:11:39 +02:00
Vincent Prouillet
7d7efdd6ea Handle markdown parser potentially splitting shortcodes 2017-10-23 14:18:05 +02:00
Vincent Prouillet
bddf2b53fd Add a test for shortcodes with arg 2017-10-23 10:57:39 +02:00
Vincent Prouillet
ca5bdc8f3c Do not ignore shortcodes without args 2017-10-23 10:49:23 +02:00
Vincent Prouillet
f26b9d53bd url -> path in page front-matter 2017-10-04 09:35:37 +09:00
Vincent Prouillet
a24851790c Fix bug with colocated folders 2017-10-04 09:23:25 +09:00
Vincent Prouillet
5aed3a4a1d Default to compressed sass output 2017-10-04 00:03:06 +09:00
Vincent Prouillet
97d5561569 Next version will be 0.2.0 2017-10-03 20:50:34 +09:00
Vincent Prouillet
20c1947b47 Clippy run 2017-10-02 20:16:56 +09:00
Vincent Prouillet
952b6679ce Change taxonomies to be sorted a-z and add permalinks 2017-10-01 14:04:30 +09:00
Vincent Prouillet
57b87aa50a Add more docs pages 2017-10-01 12:51:43 +09:00
Vincent Prouillet
dee1dbe667 Working on site
And some tweaks as I write the docs
2017-09-29 15:37:58 +09:00
Vincent Prouillet
5d7e0bb33e Register all Tera global fns on change 2017-09-26 17:25:55 +09:00
Vincent Prouillet
b248b03045 Allow sorting subsections by weight 2017-09-26 17:04:18 +09:00
Vincent Prouillet
2d97786e67 Add back drafts 2017-09-25 18:55:43 +09:00
Vincent Prouillet
195b760fdc Fix subsection pages not being filled correctly 2017-09-12 16:13:10 +09:00
Vincent Prouillet
f58e416b96 Clippy run 2017-08-31 18:01:26 +09:00
Vincent Prouillet
e1ee6b9dc4 Add test for extending theme template 2017-08-30 22:11:17 +09:00
Vincent Prouillet
edc3fd2295 Only build inheritance chain for user tpls after adding theme tpl 2017-08-30 17:48:13 +09:00
Vincent Prouillet
262ff5ec00 Rewrite theme tera paths and merge theme.toml data 2017-08-25 08:38:03 +09:00
Vincent Prouillet
521b9755f8 Remove local crates Cargo.lock 2017-08-23 19:22:21 +09:00
Vincent Prouillet
c77cc9b170 First draft of theme support 2017-08-23 19:17:24 +09:00
Vincent Prouillet
8a11d8e049 Fold get_static_url in get_url 2017-08-07 23:29:58 +09:00
Vincent Prouillet
fc63765ee1 Add a get_static_url global fn
Fix #108
2017-08-07 20:38:14 +09:00
Vincent Prouillet
2beb0621ca Add a redirect_to parameter to section front matter
Close #103
2017-07-25 16:58:00 +09:00
Vincent Prouillet
26011e4c94 Update sass-rs 2017-07-25 16:57:31 +09:00
Vincent Prouillet
c61518225b Fix RSS feed; close #101 2017-07-15 12:51:43 +09:00
Vincent Prouillet
ce597c1b43 Use released version of sass-rs 2017-07-14 16:53:48 +09:00
Vincent Prouillet
e2b09d4d27 Sass works on windows; try to use msvc on appveyor 2017-07-13 22:45:31 +09:00
Vincent Prouillet
b3d002f54d Clippy run 2017-07-11 22:51:02 +09:00
Vincent Prouillet
7ace63a6c5 Use compile_file for sass 2017-07-09 11:37:05 +09:00
Vincent Prouillet
d78477b619 Add Sass support for *nix 2017-07-06 22:19:50 +09:00
Vincent Prouillet
3cb4641f1f Remove sections for index page and clean up pager 2017-07-06 18:51:36 +09:00
Vincent Prouillet
ae8335c84b Parallelize taxonomy rendering 2017-07-05 19:34:41 +09:00
Vincent Prouillet
015f146792 Put back a limit on rss feed number of pages 2017-07-05 12:18:37 +09:00
Vincent Prouillet
998283d17c Faster render_sitemap 2017-07-05 08:27:27 +09:00
Vincent Prouillet
37af36186a Improve sorting speed 2017-07-04 18:33:58 +09:00
Vincent Prouillet
c3b525745e Convert project to a workspace 2017-07-01 16:47:41 +09:00