Commit Graph

73 Commits

Author SHA1 Message Date
scribu 1a351284ca rename get_base() to containing_dir() 2013-03-03 12:56:12 +02:00
scribu 78831d94cd don't mess with dir parameter 2013-02-09 23:19:35 +02:00
scribu 1ac46b17c4 Don't require date in draft filenames. 2013-02-09 21:35:41 +02:00
scribu 0ad623fb85 first pass at --drafts flag 2013-01-20 05:23:56 +02:00
Parker Moore faf5e44c47 Merge pull request #664 from Jashank/faster_lsi
faster_lsi: Massively accelerate LSI performance.
2013-01-16 18:36:01 -08:00
Parker Moore 5a3e05dbff Ensuring that layout is only set to the default value if layout is not specified 2013-01-12 15:31:14 -08:00
7rans e8c74fe7a8 Layouts default to page or post depending upon type. 2013-01-12 13:49:45 -08:00
Jashank Jeremy 68333cd221 Slight stylistic tweak to LSI initialisation.
Recommended-by: parkr
2013-01-11 20:02:31 +11:00
Tom Preston-Werner 4c70c036e7 TomDoc lib/jekyll/post.rb. 2013-01-03 22:20:42 -08:00
Nat Welch 934495b272 Adds some random docs for stuff I saw while skimming the code. 2012-12-18 22:42:42 -08:00
Jashank Jeremy 85f2dfffa6 faster_lsi: Massively accelerate LSI performance.
Currently, Classifier::LSI rebuilds the index every time an entry is
added.  This runs into massive performance overheads on my website;
theoretically, disabling automatic index rebuilds, and explicitly
rebuilding the LSI index at the end of the LSI repopulation should
speed things up nicely.

As a side note, here, I use pandoc-ruby to provide a more featureful
Markdown transformer, so be mindful that the numbers I quote here have
artifically imposed I/O overheads.

With just the 76 posts I wrote this year (abysmal, I know), I come up
with the following figures:

    Without faster_lsi:
      jekyll --lsi  16.91s user 0.88s system 97% cpu 18.302 total
    With faster_lsi:
      jekyll --lsi  2.72s user 0.77s system 88% cpu 3.940 total

With 109 posts, we begin to see even better improvements:

    Without faster_lsi:
      jekyll --lsi  51.00s user 1.47s system 98% cpu 53.060 total
    With faster_lsi:
      jekyll --lsi  5.04s user 1.12s system 91% cpu 6.735 total

At this point, we begin to see I/O overheads being slower than LSI
when faster_lsi is active.  I call that fairly conclusive.  But wait,
there's more.  I have 273 posts lying around... I wonder what happens
if I feed them all in.  With faster_lsi, it was nice and clippy.
Without it, I simply gave up, and went and refilled my cup of tea.
And it was still going.

    Without faster_lsi:
      jekyll --lsi  1277.86s user 10.90s system 99% cpu 21:30.29 total
    With faster_lsi:
      jekyll --lsi  34.62s user 4.43s system 96% cpu 40.430 total

That is, in anyone's books, a major improvement.  Note, however, that
I don't know just how well this will perform with `jekyll --auto`
because I don't know how it does the LSI rebuilds.  I _think_ (but
please, don't commit me on this) that the LSI is rebuilt every time
Jekyll picks up a file change.

So, all up, the performance improvement is massive, and scales
depending on how many files you have.  At the last point, the
improvement is just on 3200%.

A more optimal solution would be to cache the LSI index and/or content
data somehow.  I'll leave that to when faster_lsi takes over ten
minutes to run.
2012-10-31 22:19:59 +11:00
Neil-Smithline 3904fd9257 make yaml parsing errors more informative 2012-06-29 12:08:57 -04:00
Tom Preston-Werner 3c2519f07d Merge pull request #419 from vjt/master
Exception handler in Convertible references nonexisting method .name
2012-01-22 00:25:55 -08:00
Tom Preston-Werner 03ad973523 Update history. 2012-01-21 19:43:32 -08:00
Marcello Barnaba f0f99eae8a Fix exception thrown in exception handler at convertible.rb:81 2011-10-18 23:05:39 +02:00
Laurent Arnoud 1356e75811 Generate escaped url for categories with space.
Space in URLs should be encoded.

Signed-off-by: Laurent Arnoud <laurent@spkdev.net>
2011-07-10 23:56:56 +02:00
Tom Preston-Werner dce4ccc5a4 Better error message for invalid post date. 2011-03-11 17:52:25 -08:00
Aman Gupta 13cc44fb12 sanitize urls and ignore symlinks 2011-03-10 20:14:38 -08:00
Stefan Schüßler 5b680f8dd8 remove orphaned files in destination 2010-12-01 18:04:50 +01:00
Tom Preston-Werner 5335debfb2 Merge remote branch 'technoweenie/no-leading-zeroes'
Conflicts:
	lib/jekyll/post.rb
2010-06-18 15:34:56 -07:00
rick e8d119ef0a add :i_day and :i_month permalink values so you can get urls like /2010/6/1/title 2010-05-31 23:28:39 -07:00
Kris Brown cedda3afa3 move converters to classes 2010-02-27 22:14:27 +00:00
Kris Brown 5a807aa12e pages now present in the site payload and can be used through the site.pages variable 2010-02-27 08:09:13 +00:00
Kris Brown 355b20265e removed whitespace from lazyeye's commit 2010-02-26 21:33:56 +00:00
lazyeye cfd6ebc747 pass time object to liquid when time is specified in front matter 2010-02-26 21:31:01 +00:00
Tom Preston-Werner a4f3f5c583 Merge commit '0a1e3cd2508c797d7b8d1038636a6e7111e5cd3d'. Fixes #33.
Conflicts:
	features/post_data.feature
2010-01-14 20:00:19 -08:00
Kris Brown a0aa3fa6dc Merge branch 'enh_post_date_in_front_matter_issue_62' 2010-01-10 21:58:34 +00:00
Kris Brown a1550b3378 allow date to be specified in the front matter and override the value from the file name, fixes #62 and #38 2010-01-10 21:55:54 +00:00
Kris Brown ce228ac1c4 removed accessor method and fixed tests 2010-01-10 16:24:56 +00:00
Kris Brown 93c029d62e fixed #73 and #84 2010-01-10 16:14:25 +00:00
Kris Brown 6b74454a07 resetting to upstream 2010-01-10 10:11:44 +00:00
Kris Brown 7806a0d6bb separated up the attrs required by convertible and made tags and categories always non-nil as empty front matter entries could cause them to be nil 2010-01-06 15:19:39 +00:00
eugenebolshakov e0ceee2e89 Added trailing slash to pretty url template
Signed-off-by: Nick Quaranto <nick@quaran.to>
2009-06-23 08:10:27 -04:00
Thomas Jack 0a1e3cd250 stop sorting post categories so they show up in order in the url 2009-06-08 19:26:29 -05:00
Urban Hafner 8379958d95 Order posts by slug name if the date is the same 2009-06-03 08:48:16 +03:00
Nick Quaranto 99098dd8c7 Removing the extremely brittle generated_site test and moving the tags check into post.rb so pages don't break 2009-05-18 18:28:56 -04:00
Nick Quaranto 102f6be6a2 Added tags to posts. Based off Henrik's implementation in 072d9e7. 2009-05-18 18:28:56 -04:00
Nick Quaranto 921aee23d3 Removing topics for good 2009-05-18 18:28:56 -04:00
Bjørn Arild Mæland 4bcece18ae Issue 7: CGI escape post titles
Signed-off-by: Nick Quaranto <nick@quaran.to>
2009-04-28 08:09:42 -04:00
Nick Quaranto 080108b0f0 Making sure permalinks were set right, and only generating the url once 2009-04-25 01:07:05 -04:00
Nick Quaranto 9da140fcb2 Getting there, prefixes work great 2009-04-25 00:58:28 -04:00
Nick Quaranto 288d5045d2 Changing to the template permalink system, only test_post passing so far 2009-04-25 00:17:10 -04:00
Juan Lupion 2e187864cf Next and previous posts
Signed-off-by: Nick Quaranto <nick@quaran.to>
2009-04-22 19:51:41 -04:00
Nick Quaranto 829530be36 Adding the categories back into the post payload 2009-04-01 07:36:56 -04:00
Tom Preston-Werner 73d42b24ad Huge refactor to move all config into Jekyll::Site
This commit makes Jekyll threadsafe (or at least makes it possible to be so).
It also makes it a ton easier to use Jekyll as a library for scripted site
transformation. I did, however, break all the tests. =(
2009-03-12 19:05:43 -07:00
Tom Preston-Werner 54d713b26a Merge commit 'fab8442432f473ba647c682608bc8ff9ced6cca2' 2009-03-10 16:51:26 -07:00
Tom Preston-Werner 86e72a8b25 a few style changes and readme for pretty permalink 2009-03-10 16:39:44 -07:00
Tim Dysinger 7655c745c4 small patch to support wordpress style pretty blog urls 2009-02-26 09:13:45 -10:00
Bjørn Arild Mæland 0ec9a1330a Made it possible to enter categories from YAML as an array. 2009-02-22 19:09:16 +01:00
Nick Quaranto ad617da4e0 Added publish flag to posts, not preventing it from being in the destination directory yet. 2009-02-10 01:13:31 -05:00