]> sipb.mit.edu Git - ikiwiki.git/blob - doc/todo/plugin_dependency_calulation.mdwn
web commit by JamesWestby
[ikiwiki.git] / doc / todo / plugin_dependency_calulation.mdwn
1 A few plugins need more complex dependency calculations than ikiwiki can do
2 on its own:
3
4 * Use of a version plugin should only make the page rebuild when it's built
5   with a new version of ikiwiki.
6 * The [[plugins/sidebar]] plugin should make any page get rebuilt if a
7   sidebar is created "closer" to it than the current sidebar.
8 * Some plugin might want to _always_ rebuild the page that uses it.
9 * If backlinks were turned into a plugin, it would need to make a page
10   rebuild when its backlinks changed.
11
12 These suggest there should be a way for plugins to have hooks that tweak
13 the list of pages to rebuild.
14
15 Which in turn suggests that there should *be* a list of pages to rebuild;
16 currently there's not, and the best such an interface could do would be to
17 rebuild the pages even if they were already going to be rebuilt for some
18 other reason. (See [[optimisation]].)
19
20 It also suggests that plugins will want to examine pages and/or
21 [[store_data|plugin_data_storage]] about them to use in the dependency
22 calculations. For example, the version plugin would need to store info
23 about what pages use it.