Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.info
authorJoey Hess <joey@kodama.kitenet.net>
Sat, 12 Jul 2008 15:58:11 +0000 (11:58 -0400)
committerJoey Hess <joey@kodama.kitenet.net>
Sat, 12 Jul 2008 15:58:11 +0000 (11:58 -0400)
Conflicts:

doc/todo/aggregate_to_internal_pages.mdwn

1  2 
doc/todo/aggregate_to_internal_pages.mdwn

index 8b848093b3aeba653d17295da7e072dc60d6c564,7cbd9a57a833cc466497636abf23b6a8b13fc093..614407c9dc3a759674b181f7ea3fa2c290a72efe
@@@ -4,30 -4,6 +4,32 @@@ The new internal page feature is design
  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).
 ->
 +> [[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, it doesn't solve the transition problems, but
- > at least the feature is implemented.
++> 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]]