From 200fb31d0402c1f06475116da8908aa22e9a5b4b Mon Sep 17 00:00:00 2001 From: "http://smcv.pseudorandom.co.uk/" Date: Sat, 2 Aug 2008 09:48:32 -0400 Subject: [PATCH] Suggest how to solve this --- doc/bugs/recentchanges_feed_links.mdwn | 40 ++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/doc/bugs/recentchanges_feed_links.mdwn b/doc/bugs/recentchanges_feed_links.mdwn index 9a5627ec4..14f1c26ba 100644 --- a/doc/bugs/recentchanges_feed_links.mdwn +++ b/doc/bugs/recentchanges_feed_links.mdwn @@ -52,3 +52,43 @@ to turn on? --Chapman Flack >>>> not a very good guid.) If using an anchor for a guid is a problem, >>>> it could instead generate a random uuid, and use `\[[meta >>>> guid="urn:uuid:" permalink="http://url/recentchanges"]]` + +>>>>> I had a quick look into this after fixing the "prerequisite", but got +>>>>> bogged down in minor details. Anyway, I'd be happy to help. +>>>>> I think the guid stuff is actually fairly irrelevant, you just need +>>>>> `\[[!meta permalink]]` (and in fact you're using guid incorrectly, by +>>>>> expecting it to be treated as a link). +>>>>> +>>>>> My advice would be: first, fix the bug as reported, by +>>>>> using `\[[!meta permalink="http://blah/blah/blah#change-$rev"]]` (starting +>>>>> anchor names with a number isn't syntactically valid, if I remember +>>>>> correctly, so do have a prefix like "change-" or "rev-" or something). +>>>>> +>>>>> Then, optionally, force the guid too (although it defaults to the permalink +>>>>> anyway, so this shouldn't actually be necessary). +>>>>> +>>>>> Some more explanation of how guids work: it's actually easier to think +>>>>> about them in Atom terms than in RSS terms, since Atom has a clearer +>>>>> conceptual model. +>>>>> +>>>>> The `\[[!meta permalink]]` becomes the `` +>>>>> element in Atom, which contains a link that users can follow; if it's not +>>>>> explicitly given, ikiwiki uses its idea of the page's URL. +>>>>> +>>>>> The `\[[!meta guid]]` becomes the `` element in Atom, which contains an +>>>>> opaque, not-necessarily-resolvable identifier; if it's +>>>>> not explicitly given, ikiwiki uses the same URL as the ``. +>>>>> +>>>>> In RSS the semantics aren't so clear-cut (which is part of why Atom exists!), +>>>>> but the way ikiwiki interprets them is: +>>>>> +>>>>> * `` is the same as in Atom +>>>>> * if `\[[!meta guid]]` is explicitly given, put it in `` +>>>>> (the assumption in this case is that it's a UUID or something) +>>>>> * if `\[[!meta guid]]` is not explicitly given, copy the `` into the `` +>>>>> +>>>>> I believe RSS aggregators (are meant to) compare ``s as opaque +>>>>> strings, so using an anchor there should be fine. Atom aggregators are certainly +>>>>> required to compare ``s as opaque strings. +>>>>> +>>>>> --[[smcv]] -- 2.44.0