Phil Boswell wrote:
Just one question: if a given template is updated, and
it is decided that
the changes should be propagated, is it possible to do this automagically,
or does some poor sod have to go around "re-stabilising" a bunch of
articles?
Right now: No.
My initial implementation didn't use caching, because I assumed that as
templates shouldn't influence the article content, we could just protect
all templates by default. IMHO that would be reasonable, as templates do
influence a lot of articles.
Then someone on this list said no, we need to cache the article version
*as it is at the moment of "stabelizing"*. So what I did was to
partially run the parser on a version to be "stabelized", namely the
template replacement (and the <nowiki> and HTML-tag orgy). That
partially parsed text is then cached, and silently inserted via hook on
revision loading.
Now it's "well, *some* templates should change".
You can see how I am a little confused. Either an article version is
good as it is, or it isn't. A template change shouldn't alter that fact.
If it does, the version in question might not have been worth called
stable in the first place.
Implementing the "some" option means a lot of work (implementing a
front-end for saying which templates should be updated, finding the
articles that use it, find the *templates* that use it; if template A
uses template B, and template B is changed and the changes are
considered safe, should articles using template A be updates, even
though template A is not considered safe? And so on).
As a site note, when (notice the *when* instead of the *if*, almighty
roots!) my Tasks feature is going into production, many of the "daily
management" templates will not be used anymore, which makes changes to
these obsolete.
Magnus