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.) |
||
---|---|---|
.. | ||
.gitignore | ||
NEWS | ||
README.Debian | ||
changelog | ||
compat | ||
control | ||
copyright | ||
postinst | ||
preinst | ||
rules |
README.Debian
It's a good idea, and in some cases a requirement, to rebuild your wikis when upgrading to a new version of ikiwiki. If you have a lot of different wikis on a system, this can be a pain to do by hand, and it's a good idea to automate it anyway. This Debian package of ikiwiki supports rebuilding wikis on upgrade. It will run ikiwiki-mass-rebuild if necessary when upgraded. The file /etc/ikiwiki/wikilist lists the setup files of wikis to rebuild, as well as the user who owns the wiki. Edit this file and add any wikis you set up. You can also allow users to maintain their own list of wikis to rebuild, by listing their usernames in /etc/ikiwiki/wikilist without corresponding setup files. ikiwiki will then read their lists of wikis from .ikiwiki/wikilist in their home directories. The examples directory contains the source to some example wiki setups.