]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/commit
Revert "Assume that every page has been scanned by the time the scan phase ends"
authorSimon McVittie <smcv@debian.org>
Mon, 8 Jun 2015 22:20:22 +0000 (23:20 +0100)
committerSimon McVittie <smcv@debian.org>
Mon, 8 Jun 2015 22:47:14 +0000 (23:47 +0100)
commit5fd863b5b05449669ec56c6798d836e3302386e2
treed7e87e8cbd66cbc20a666a1ceb1eaddd67f3f2ad
parent983d6b097629fe8e2380250279c51343dce69b2e
Revert "Assume that every page has been scanned by the time the scan phase ends"

This reverts commit c04a26f3e70d654ccec5542daf8425e44cb5bac8, which
turns out to break the templatebody directive: readtemplate() relies
on scan() populating %templates, but if scan() is a no-op after
leaving the scan phase, we can't rely on that.

The assumption made by skipping scan() after the end of the render phase
is that everything that comes from a scan is already in the index.
However, we don't really want to put template bodies in the index:
that would force us to load and save them on every refresh, and
redundantly persist them to disk.

Test-case:

% make clean
% ./Makefile.PL
% make
% grep -E '<div class="notebox">|Use this template to' html/sandbox.html
% touch doc/sandbox/New_blog_entry.mdwn          # sandbox inlines this
% make
% grep -E '<div class="notebox">|Use this template to' html/sandbox.html

Good result: html/sandbox.html contains <div class="notebox"> both times

Bad result: html/sandbox.html contains "Use this template to..." the
second time
IkiWiki/Render.pm