crazy optimisation to work around slow markdown
authorJoey Hess <joey@kodama.kitenet.net>
Fri, 21 Mar 2008 08:48:26 +0000 (04:48 -0400)
committerJoey Hess <joey@kodama.kitenet.net>
Fri, 21 Mar 2008 08:48:26 +0000 (04:48 -0400)
commitf937c1fb8074a512d8bb788fa275f5e90595cd47
tree3f6b5b137c33528df10450bc95ff2829bf865622
parent0b9e849aba38f0695491ad5ca27de11632627ffe
crazy optimisation to work around slow markdown

Markdown is slow. Especially if it has to process an enormous page. The
most common enormous page is currently the recentchanges page, which gets
processed a lot, and contains very little actual markdown. Most of it is a
big <div>, which markdown skips ... slowly.

This is a rather sick optimisation to work around markdown's speed issues.
Now inline inserts a small, dummy div, allows markdown to quickly render
the actual page content, then replaces the dummy with the actual inlined
pages later.

Results: Rendering just a recentchanges page, with diffs included, dropped
from 4.5 seconds to 2.7 seconds on my laptop. Building the entire wiki
dropped from 46.6 seconds to 39.5 seconds.

(It would be better if inline were a *post*-processor directive.)
IkiWiki/Plugin/inline.pm
debian/changelog