From 1879fe63be1073fa0d55764e7d78af53afa4b265 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 9 Feb 2011 14:18:48 -0400 Subject: [PATCH] transient merged; bookkeeping --- debian/changelog | 12 ++++++++++++ debian/copyright | 4 ++++ doc/bugs/removal_of_transient_pages.mdwn | 17 +++++++++++++++++ .../autoindex_should_use_add__95__autofile.mdwn | 2 ++ doc/todo/transient_pages.mdwn | 15 +++++++++++++++ 5 files changed, 50 insertions(+) create mode 100644 doc/bugs/removal_of_transient_pages.mdwn diff --git a/debian/changelog b/debian/changelog index 87a280ed0..ec345f720 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,18 @@ ikiwiki (3.20110125) UNRELEASED; urgency=low * editpage: Avoid inheriting internal page types. * htmltidy: Avoid breaking the sidebar when websetup is running. + * transient: New utility plugin that allows transient pages to + be stored in .ikiwiki/transient/ (smcv) + * aggregate: Aggregated content is stored in the transient underlay. + (Existing aggregated content is not moved, since it will eventually + expire and be removed) (smcv) + * autoindex, tag: Added autoindex_commit and tag_autocreate_commit that + can be unset to make index files and tags respectively not be committed, + and instead be stored in the transient underlay. + Closes: #544322 (smcv) + * autoindex: Adapted to use add_autofile. Slight behavior changes + in edge cases that are probably really bug fixes. (smcv) + * recentchanges: Use transient underlay (smcv) -- Joey Hess Tue, 01 Feb 2011 21:00:57 -0400 diff --git a/debian/copyright b/debian/copyright index 799a354c4..7dfeff13d 100644 --- a/debian/copyright +++ b/debian/copyright @@ -135,6 +135,10 @@ Files: 404.pm Copyright: © 2009 Simon McVittie License: GPL-2+ +Files: transient.pm +Copyright: © 2011 Simon McVittie +License: GPL-2+ + Files: wmd.pm getsource.pm Copyright: © 2009 William Uther License: GPL-2+ diff --git a/doc/bugs/removal_of_transient_pages.mdwn b/doc/bugs/removal_of_transient_pages.mdwn new file mode 100644 index 000000000..ef7607c3a --- /dev/null +++ b/doc/bugs/removal_of_transient_pages.mdwn @@ -0,0 +1,17 @@ +The remove plugin cannot remove [[todo/transient_pages]]. + +> this turns out to be harder than +> I'd hoped, because I don't want to introduce a vulnerability in the +> non-regular-file detection, so I'd rather defer that. --[[smcv]] + +This is particularly a problem for tag pages, and autoindex +created pages. So both plugins default to not creating transient +pages, until this is fixed. --[[Joey]] + +> I'll try to work out which of the checks are required for security +> and which are just nice-to-have, but I'd appreciate any pointers +> you could give. --[[smcv]] + +>> I assume by "non-regular file", you are referring to the check +>> in remove that the file "Must exist on disk, and be a regular file" ? +>> --[[Joey]] diff --git a/doc/todo/autoindex_should_use_add__95__autofile.mdwn b/doc/todo/autoindex_should_use_add__95__autofile.mdwn index 908c85cb4..f3fb24c16 100644 --- a/doc/todo/autoindex_should_use_add__95__autofile.mdwn +++ b/doc/todo/autoindex_should_use_add__95__autofile.mdwn @@ -1,6 +1,8 @@ `add_autofile` is a generic version of [[plugins/autoindex]]'s code, so the latter should probably use the former. --[[smcv]] +> [[merged|done]] --[[Joey]] + ---- [[!template id=gitbranch branch=smcv/ready/autoindex-autofile author="[[smcv]]"]] diff --git a/doc/todo/transient_pages.mdwn b/doc/todo/transient_pages.mdwn index c08d54228..fe2259b40 100644 --- a/doc/todo/transient_pages.mdwn +++ b/doc/todo/transient_pages.mdwn @@ -19,6 +19,8 @@ It could also be used for an [[todo/alias_directive]]. --[[smcv]] +> All [[merged|done]] --[[Joey]] + -------------------------- [[!template id=gitbranch branch=smcv/ready/transient author="[[smcv]]"]] @@ -27,14 +29,24 @@ It could also be used for an [[todo/alias_directive]]. Related branches: * `ready/tag-test`: an extra regression test for tags + > merged --[[Joey]] * either `transient-relative` or `transient-relative-api`: avoid using `Cwd` on initialization + > merged the latter --[[Joey]] * `ready/transient-aggregate`: use for aggregate + > merged --[[Joey]] * `ready/transient-autoindex`: optionally use for autoindex, which is [[!debbug 544322]] (includes autoindex-autofile from [[todo/autoindex should use add__95__autofile]]) + > merged. I do note that this interacts badly with ikiwiki-hosting's + > backup/restore/branch handling, since that does not back up the + > transientdir by default, and so autoindex will not recreate the + > "deleted" pages. I'll probably have to make it back up the transientdir + > too. --[[Joey]] * `ready/transient-recentchanges`: use for recentchanges + > merged --[[Joey]] * `ready/transient-tag`: optionally use for tag (includes tag-test) + > merged --[[Joey]] I think this branch is now enough to be useful. It adds the following: @@ -146,6 +158,9 @@ Not done yet (in that branch, at least): >> you could give. Note that my branch wasn't meant to enable either >> by default, and now hopefully doesn't. --[[smcv]] + >>> Opened a new bug for this, [[bugs/removal_of_transient_pages]] + >>> --[[Joey]] + * Transient tags that don't match any pages aren't deleted: I'm not sure that that's a good idea anyway, though. Similarly, transient autoindexes of directories that become empty aren't deleted.