]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/bugs/wrong_rendering_of_templatebody.mdwn
remove the small buttons for livejournal/flickr/wordpress/aol
[git.ikiwiki.info.git] / doc / bugs / wrong_rendering_of_templatebody.mdwn
index 91c86d2c6174e36452906cb05c91ff63bca23e81..20d906023e83690cf3226b862da736eed58f8574 100644 (file)
@@ -3,6 +3,16 @@ Debian wheezy backports) to the version 5.20141016 which I built from git, by
 pulling the tag. One of the new things I have now is the templatebody
 directive.
 
+> Not directly relevant to this bug, but if you want the latest ikiwiki release
+> for a Debian derivative, you can fetch it from Debian unstable (normally)
+> or Debian experimental (during the Debian release freeze, e.g. now) -
+> the correct way is to get the (signed) source package with `dget`
+> or similar, check the GPG signature (which should be from me or Joey), and
+> rebuild it for your distribution. Just getting the binary `.deb` from Debian
+> is a little more risky, depending how far your distribution has diverged from
+> Debian, but in the case of ikiwiki it should usually work fine in practice.
+> --[[smcv]]
+
 I started using it in my templates, and I suddenly notice strange behavior: one
 of my templates renders as the *rest* of the template page when used, instead of
 the body part. In other words, it renders exactly the part it should hide (the
@@ -11,6 +21,44 @@ description) and ignores the body itself (which is inside \[[!templatebody]]).
 When I manually re-generate the wiki, it suddenly renders right. As soon as the
 page gets rebuilt automatically after some git push, it renders the wrong way.
 
+> Where did you install the newer ikiwiki? `/usr/local`? Somewhere else?
+>
+> It sounds to me as though manual re-generation is using ikiwiki ≥ 3.20140916
+> with the `templatebody` directive enabled, but the git hook is using
+> ikiwiki < 3.20140916 and/or has the `templatebody` disabled. This might
+> result from having a different `PERL5LIB` environment variable in
+> the two situations, for instance.
+>
+> It might help to debug this if you edit your older and newer ikiwiki's
+> `IkiWiki.pm`, `IkiWiki/Render.pm` and/or `IkiWiki/Plugin/templatebody.pm`
+> so they do `print STDERR "loaded (old/new) (whatever).pm"` at some fairly
+> early stage - I would suggest `getsetup()`, `refresh()` and `import()`
+> respectively. --[[smcv]]
+
+>> Yes, I installed in `/usr/local`, but I also removed the deb package. So I
+>> only have 1 ikiwiki version now.
+>>
+>> I also noticed the following behavior. I created a set of pages, each of them
+>> containing several occurences of a certain template. Then I created another
+>> page, which inlines all of them. All good. Then, I edited that main page to do
+>> different sorting (using inline directive's sort option). After comitting the change,
+>> suddenly all the inlined pages have the templates inside them contain the
+>> template info instead of template body. How is that even related to the minor
+>> change I did - change the sorting? :-P
+>>
+>> I'll look at the templatebody.pm file and try debug prints. I hope I can see them in
+>> the git push output, because rendering the wiki from command line doesn't have this
+>> problem.
+>>
+>> One more thing, my setup uses the pingee plugin. When doing a git push, it browses to
+>> the wiki page using wget with `?do=ping` parameter, and then ikiwiki responds by rebuilding
+>> the necessary pages.
+>>
+>> Thanks for the pointers.
+>>
+>> --[[fr33domlover]]
+
+
 [[This|http://www.rel4tion.org/languages/haskell/]] is the page, and
 [[this|http://www.rel4tion.org/templates/wikitag/]] is a template it uses. Right
 now the template is rendered on that page exactly like the template page itself.