diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/bugs/title__40____41___in_a_PageSpec__44___with_meta_enabled__44___causes_a_crash.mdwn | 25 | ||||
-rw-r--r-- | doc/todo/aggregate_to_internal_pages.mdwn | 28 |
2 files changed, 53 insertions, 0 deletions
diff --git a/doc/bugs/title__40____41___in_a_PageSpec__44___with_meta_enabled__44___causes_a_crash.mdwn b/doc/bugs/title__40____41___in_a_PageSpec__44___with_meta_enabled__44___causes_a_crash.mdwn new file mode 100644 index 000000000..2f9c10611 --- /dev/null +++ b/doc/bugs/title__40____41___in_a_PageSpec__44___with_meta_enabled__44___causes_a_crash.mdwn @@ -0,0 +1,25 @@ +When the meta plugin is enabled, use of the title() predicate in a [[PageSpec]] fails with "Undefined subroutine &IkiWiki::Plugin::meta::pagetitle called". The [[patch]] is to replace "pagetitle" with "IkiWiki::pagetitle" in the meta plugin, as in [this git commit](http://git.debian.org/?p=users/smcv/ikiwiki.git;a=commit;h=1f26a1bf1655b1d0223b24ba1db70579a3774eb1) (git://git.debian.org/git/users/smcv/ikiwiki.git, branch=master, commit=1f26a). + +Applying the changes shown here to ikiwiki's docwiki, and rebuilding its docwiki, is sufficient to reproduce this bug. + + diff --git a/doc/sandbox.mdwn b/doc/sandbox.mdwn + index 5c7368f..8aaa032 100644 + --- a/doc/sandbox.mdwn + +++ b/doc/sandbox.mdwn + @@ -78,4 +78,4 @@ The haiku will change after every save, mind you. + + This sandbox is also a [[ikiwiki/blog]]! + + -[[inline pages="sandbox/* and !*/Discussion" rootpage="sandbox" show="4" archive="yes"]] + +[[inline pages="sandbox/* and !title(*s3kr1t*) and !*/Discussion" rootpage="sandbox" show="4" archive="yes"]] + diff --git a/docwiki.setup b/docwiki.setup + index 0a6a866..65590f0 100644 + --- a/docwiki.setup + +++ b/docwiki.setup + @@ -15,5 +15,5 @@ use IkiWiki::Setup::Standard { + syslog => 0, + userdir => "users", + usedirs => 0, + - add_plugins => [qw{goodstuff version haiku polygen fortune}], + + add_plugins => [qw{goodstuff version haiku polygen fortune meta inline}], + } diff --git a/doc/todo/aggregate_to_internal_pages.mdwn b/doc/todo/aggregate_to_internal_pages.mdwn index b7b77fc03..614407c9d 100644 --- a/doc/todo/aggregate_to_internal_pages.mdwn +++ b/doc/todo/aggregate_to_internal_pages.mdwn @@ -5,3 +5,31 @@ How to transition to it though? inlines of aggregated content would need to change their pagespecs to use `internal()`. > [[patch]] in git://git.debian.org/git/users/smcv/ikiwiki.git, branch "aggregate"; [see also gitweb](http://git.debian.org/?p=users/smcv/ikiwiki.git;a=commit;h=01d7ae803710bb0d84fc8d172fd98fd57fb77e9d). --smcv.pseudorandom.co.uk +> Migration is a two-step process: first change all your pagespecs to use `internal()`, then add `internalize="yes"` to all your aggregate invocations. --smcv.pseudorandom.co.uk + +> Thanks for working on this. +> +> I see one problem, if internalize is flipped on and there are existing +> aggregated pages, htmlfn will not return the right filename for those +> pages when expiring them. Seems that `$was_internal` (or just the full +> source filename) should be recorded on a per-guid basis. Could you do +> that? +> +> I'm weighing the added complexity of having an internalize option +> (which people would have to add, and would probably forget), with just +> making aggregate create all new pages as internal, and having a flag day +> where all inlines and other uses of aggregated pages have to change +> pagespecs to use `isinternal()`. +> +> There are real bugs that are fixed by making +> aggregated plugins internal, including: +> - Avoids web edits to aggregated pages. (Arguably a security hole; +> though they can be locked..) +> - Significant speed improvements. +> - Less disk use. +> +> If internal has to be manually enabled, people will forget to. I'd rather +> not have to worry about these bugs in the future. So, I'm thinking flag +> day. --[[Joey]] + +[[patch]] |