diff options
author | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2006-08-02 05:32:10 +0000 |
---|---|---|
committer | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2006-08-02 05:32:10 +0000 |
commit | 044a5eba9aefa211e3b0473e24c2ce9a1b3dd96f (patch) | |
tree | 5c294c37a37636b69c23e1289c264a517b1b14db /doc/bugs | |
parent | fae3da7ce3910d8aeb16ec875a5c2d4f095313ff (diff) |
thoughts
Diffstat (limited to 'doc/bugs')
-rw-r--r-- | doc/bugs/inline_page_not_updated_on_removal.mdwn | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/doc/bugs/inline_page_not_updated_on_removal.mdwn b/doc/bugs/inline_page_not_updated_on_removal.mdwn index 69dc6fb8d..7f5e49871 100644 --- a/doc/bugs/inline_page_not_updated_on_removal.mdwn +++ b/doc/bugs/inline_page_not_updated_on_removal.mdwn @@ -6,12 +6,27 @@ This only happens if the page is removed from the inlined pagespec due to a tag changing; the problem is that once the tag is changed, ikiwiki does not know that the page used to match before. +Another example would be a pagespec that allowed only matching new pages: + + newer(1 day) + +Obviously, the pages that matches are going to change, and again once they +do, ikiwiki will no longer know that they matched before, so it won't know +to remove them from a page that used that to inline them. + To fix, seems I would need to record the actual list of pages that are currently included on an inline page, and do a comparison to see if any -have changed. At first I thought, why not just add them to the dependencies -explicitly, but that fails because the dependencies pagespec fails to match -when a negated expression like "!tag(bugs/done)" is matched. +have changed. + +At first I thought, why not just add them to the dependencies +explicitly, but that failed because the dependencies GlobList failed to match +when a negated expression like "!tag(bugs/done)" is matched. It is, +however, doable with PageSpecs: + + (real deps here) or (list of all currently inlined pages here) + +However, it's not really clear to me how to _remove_ inlined pages from the +deps when they stop being inlined for whatever reason. So a separate list +would be better. -So, quick fixes aside, what's the generic mechanism here that a plugin can -use to let ikiwiki know that a page should be updated if some other page -stops matching its dependencies pagespec? +So this is blocked by [[todo/plugin_data_storage]] I suppose. |