On Thu, Feb 5, 2009 at 12:24 AM, Jakub Narebski <jnareb@xxxxxxxxx> wrote: > On Mon, 26 Jan 2009, Giuseppe Bilotta wrote: > >> The RSS 2.0 specifications defines not one but _two_ dates for its >> channel element! Woohoo! Luckily, it seems that consensus seems to be >> that if both are present they should be equal, except for some very >> obscure and discouraged cases. Since lastBuildDate would make more sense >> for us and pubDate seems to be the most commonly used, we defined both >> and make them equal. > > Perhaps it would make sense to quote RSS 2.0 standard format here > in the commit message, e.g.: > > pubDate The publication date for the content in the channel. > lastBuildDate The last time the content of the channel changed. That sort of spoils the very non-technical tone of the message, but you're probably right 8-D >> Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@xxxxxxxxx> >> --- >> gitweb/gitweb.perl | 4 ++++ >> 1 files changed, 4 insertions(+), 0 deletions(-) >> >> diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl >> index cc6d0fb..756868a 100755 >> --- a/gitweb/gitweb.perl >> +++ b/gitweb/gitweb.perl >> @@ -6087,6 +6087,10 @@ XML >> "<link>$alt_url</link>\n" . >> "</image>\n"; >> } >> + if (%latest_date) { >> + print "<pubDate>$latest_date{'rfc2822'}</pubDate>\n"; >> + print "<lastBuildDate>$latest_date{'rfc2822'}</lastBuildDate>\n"; >> + } > > I think it is good approximation of intended meaning of those two > elements. However, this is still not perfect. While this is absolutely fine for rss feeds that point at an explicit commit hash, rss feeds that point to a dynamic ref (some branch head or whatever) can get an interesting but confusing situation: A updates his local clone of the repo. B gets the feed of the repo, which is not updated to include A changes. A pushes. B gets the feed: the dates are actually BEFORE the date he last retrieved the feed, although they are after the date shown the last time he retrieved the feed. Ideally, when the rss is publishing a dynamic ref, we should as buildDate (and as Last-modified: HTTP header!) the date when the ref was changed (e.g. the date of the push). However, I couldn't really think of a robust way of getting such a date, which is why I'm using the commit date which is what comes closest. -- Giuseppe "Oblomov" Bilotta -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html