Commit graph

233 commits

Author SHA1 Message Date
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 4571b067ea Fix ignored shortcode swallowing whitespace
Fix #383
2018-09-12 16:44:53 +02:00
Vincent Prouillet 5fe4590063 Default get_url to not add a trailing slash
Closes #388
2018-09-10 20:13:45 +02:00
Vincent Prouillet c2b76d1850 Enable markdown extensions for markdown filter
Closes #417
2018-09-10 17:22:36 +02:00
Vincent Prouillet b4158921dd Fix email links being checked by link checker
Closes #403
2018-09-10 12:40:31 +02:00
C Jones dabc614fb3 Change highlighting to not include duplicated background colors 2018-09-09 16:42:10 -04: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
Vincent Prouillet f98efe5311
Merge pull request #384 from Freaky/linkchecker-headers
link_checker: Set Accept header
2018-08-26 11:14:13 +02:00
Thomas Hurst 2a53955696 Fix rendering benchmarks. 2018-08-26 00:13:15 +01:00
Thomas Hurst 6a5ace62fc link_checker: Set Accept header
As mentioned in #381, crates.io 404's any request without an Accept:
text/html header.  It 200's any request with one, but at least
false-successes don't prevent checking any other links.

This also makes it easier to add a custom User-Agent if desired.

rustfmt and fix a clippy nit (unnecessary return) while I'm here.
2018-08-25 17:17:06 +01:00
Thomas Hurst 68690a2cf1 Add a test for summary handling in Markdown rendering. 2018-08-24 22:46:28 +01:00
Thomas Hurst c53c403790 Update rendering tests 2018-08-24 22:37:55 +01:00
Thomas Hurst 5f1f9efe7a Derive debug for markdown::Rendered 2018-08-24 22:37:39 +01:00
Thomas Hurst f2f3bed080 Markdown parsing: prefer Borrowed over Owned where possible
As mentioned in #376
2018-08-24 17:40:26 +01:00
Thomas Hurst c069bfdafa Rework summary handling.
Push summary handling into Markdown parsing, identifying the presence
of one by giving its length in the rendered markup.

Hopefully a better fix for #376.
2018-08-22 17:34:32 +01:00
Vincent Prouillet e0291cec65 Add Swift, MiniZinc syntax and update the rest
Also fix tests

Close #367, #372
2018-08-15 15:42:43 +02:00
Nathan Ringo 48391dbafb
extra_syntaxes documentation 2018-08-14 09:54:24 -05:00
Nathan Ringo 9df5da4697
Fixes bug with extra syntaxes in non-root section, adds tests. 2018-08-14 02:12:04 -05:00
Nathan Ringo 64fa890aa9
Adds support for loading additional syntaxes via extra_syntaxes. 2018-08-12 02:08:50 -05:00
cmal 31479ff23b Remove condition that's always true (optimization) 2018-08-09 11:58:09 +02: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
cmal 8473dff23d Implement assets colocation in section 2018-08-07 12:12:12 +02:00
Vincent Prouillet 4f418a11b4 Fix live reload of section content 2018-08-05 10:30:01 +02:00
Vincent Prouillet 84a3193e97 Last fixes 2018-08-03 19:47:39 +02:00
Vincent Prouillet bd6578e71c Fix failing test 2018-08-03 18:32:30 +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 97f5065259 Fix formating/typos flaged in code review 2018-07-29 17:03:14 -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 3e48ff24b5 Add an external link checker
Close #115
2018-07-16 21:15:50 +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 7bf36642d9 Update deps 2018-07-16 11:03:45 +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
Vincent Prouillet 734beba0fd
Merge pull request #323 from onelson/actix-middleware-err-response
Custom 404 page
2018-07-05 17:22:40 +02:00
Vincent Prouillet 9e9fe50769 Fix rendering benchmark 2018-07-01 16:14:46 +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
Vincent Prouillet d47ba4aff0 Rebasing + tweaks 2018-06-25 19:13:21 +02:00
Vojtech Kral 17de3c9a97 imageproc: Rename _resized_images as _processed_images 2018-06-25 18:09:45 +02:00
Vojtech Kral 3e4aa82ecc imageproc: Use DefaultHasher from stdlib instead of twox-hash 2018-06-25 18:09:45 +02:00
Vojtech Kral a89768dab0 Remove page.images 2018-06-25 18:09:03 +02:00
Vincent Prouillet 8e8cdfeb7f Add year, month and day to page context with a date 2018-06-25 18:06:25 +02:00
Vojtech Kral 4a6244adcf imageproc: Cleanup and comments in hash collision resolution 2018-06-25 18:05:49 +02:00
Vojtech Kral 77bc526008 imageproc: Fix naming, cleanup 2018-06-25 18:05:49 +02:00
Vojtech Kral 6662014e55 Add image resizing support #225 2018-06-25 18:05:04 +02:00
Vincent Prouillet 3eb571fdbf Trim left every line of a shortcode to avoid the accidental markdown codeblock 2018-06-25 18:04:00 +02:00
Vincent Prouillet f07bb38c37 Fix image in markdown rendering 2018-06-25 18:04:00 +02:00
Vincent Prouillet 28641fc223 Add HTML aliases to changelog 2018-06-25 18:04:00 +02:00
Vincent Prouillet d334b1cf46 More shortcode docs update 2018-06-25 18:03:20 +02:00
Vincent Prouillet b120754862 Update shortcode parsing and docs 2018-06-25 18:02:21 +02:00
Vincent Prouillet 860d1f4d1f Indicate which file is failing to render on error 2018-06-25 18:02:07 +02:00
Clar Charr da3b0fcf0e Use proper Unicode word count; fixes #304 2018-06-25 18:02:07 +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 d69ada09d2 Make permalinks out of co-located images 2018-06-25 18:00:05 +02:00
Vincent Prouillet ef543b3d2b Make co-located asset link permalinks 2018-06-25 18:00:05 +02:00
Vincent Prouillet d39edd8ecb Allow links in headers 2018-06-25 18:00:05 +02:00
Vincent Prouillet 85e13483eb Use the new shortcode parser 2018-06-25 18:00:05 +02:00
Vincent Prouillet 204f514c0e WIP: new markdown rendering 2018-06-25 17:59:04 +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 7f48b9bee8 Update more deps and appveyor config 2018-06-22 13:39:29 +02:00
Vincent Prouillet d9dbf4d567 Fix internal links to content dir not working
Closes #275
2018-03-29 14:55:26 +02:00
Vincent Prouillet 9c0dd95bdb Fix theme shortcode not being useable
Closes #272
2018-03-28 21:09:08 +02:00
Vincent Prouillet d67211bfd6 Fix many shortcode parsing issues
Closes #228
Closes #229
2018-03-28 19:41:04 +02:00
Vincent Prouillet e40e97711f Some more bits about continue_reading anchor 2018-03-28 17:01:14 +02:00
Tim DuBois c8dfc5156a
Change naming convention 2018-03-27 07:38:04 +02:00
Tim DuBois 0a34184ac5
Anchor tag for summary 2018-03-25 13:05:42 +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 00729581f9 Break sorting ties by a-z ordering
Closes #259
2018-03-17 18:08:02 +01:00
Vincent Prouillet 3a2dab5974 Sort sitemap elements by permalink
Closes #257
2018-03-17 14:34:02 +01:00
Vincent Prouillet 2eacb8247b Fix config CLI option
Closes #254
2018-03-16 19:11:12 +01:00
Vincent Prouillet b3b2527c5d TIL about serde default 2018-03-12 20:11:03 +01:00
Vincent Prouillet 1e25117887 Fix date serializing in extra section of pages
Closes #238
2018-03-01 14:49:34 +01:00
Vincent Prouillet de80de1628 Mention 2x serde attributes is not a typo 2018-03-01 11:57:04 +01:00
Vincent Prouillet f218f2eaf5
Merge pull request #240 from PhilipDaniels/next
Filter ignored content in page.rs.
2018-02-27 08:37:26 +01:00
Philip Daniels 92f38d1b70 Remove unnecessary if when compiling the glob set. 2018-02-25 21:28:04 +00:00