git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
To: Jakub Narebski <jnareb@gmail.com>
Cc: git@vger.kernel.org, Junio C Hamano <gitster@pobox.com>
Subject: Re: [PATCHv2 4/6] gitweb: rss channel date
Date: Fri, 6 Feb 2009 12:10:36 +0100	[thread overview]
Message-ID: <cb7bb73a0902060310s3fa19788t7f4ad0d39928d77@mail.gmail.com> (raw)
In-Reply-To: <200902050024.43634.jnareb@gmail.com>

On Thu, Feb 5, 2009 at 12:24 AM, Jakub Narebski <jnareb@gmail.com> 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@gmail.com>
>> ---
>>  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

  reply	other threads:[~2009-02-06 11:12 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-26 11:50 [PATCHv2 0/6] gitweb: feed metadata enhancements Giuseppe Bilotta
2009-01-26 11:50 ` [PATCHv2 1/6] gitweb: channel image in rss feed Giuseppe Bilotta
2009-01-26 11:50   ` [PATCHv2 2/6] gitweb: feed generator metadata Giuseppe Bilotta
2009-01-26 11:50     ` [PATCHv2 3/6] gitweb: rss feed managingEditor Giuseppe Bilotta
2009-01-26 11:50       ` [PATCHv2 4/6] gitweb: rss channel date Giuseppe Bilotta
2009-01-26 11:50         ` [PATCHv2 5/6] gitweb: last-modified time should be commiter, not author Giuseppe Bilotta
2009-01-26 11:50           ` [PATCHv2 6/6] gitweb: check if-modified-since for feeds Giuseppe Bilotta
2009-02-05  2:03             ` Jakub Narebski
2009-02-06 11:19               ` Giuseppe Bilotta
2009-02-04 23:38           ` [PATCHv2 5/6] gitweb: last-modified time should be commiter, not author Jakub Narebski
2009-02-06 11:14             ` Giuseppe Bilotta
2009-02-06 21:12               ` Jakub Narebski
2009-02-06 23:00                 ` Giuseppe Bilotta
2009-02-11  3:10                   ` Deskin Miller
2009-02-11  9:02                     ` Giuseppe Bilotta
2009-02-11  9:18                       ` Jakub Narebski
2009-02-11  9:54                         ` Giuseppe Bilotta
2009-02-12  4:50                           ` Deskin Miller
2009-02-12  9:07                           ` Jakub Narebski
2009-02-12  9:52                             ` Giuseppe Bilotta
2009-02-12 10:11                               ` Jakub Narebski
2009-02-12 11:23                                 ` Giuseppe Bilotta
2009-02-04 23:24         ` [PATCHv2 4/6] gitweb: rss channel date Jakub Narebski
2009-02-06 11:10           ` Giuseppe Bilotta [this message]
2009-02-04 23:19       ` [PATCHv2 3/6] gitweb: rss feed managingEditor Jakub Narebski
2009-02-06 11:03         ` Giuseppe Bilotta
2009-02-04 23:15     ` [PATCHv2 2/6] gitweb: feed generator metadata Jakub Narebski
2009-02-06 11:01       ` Giuseppe Bilotta
2009-02-06 11:21         ` Jakub Narebski
2009-02-04 22:56   ` [PATCHv2 1/6] gitweb: channel image in rss feed Jakub Narebski
2009-02-06 10:55     ` Giuseppe Bilotta
2009-01-28 20:58 ` [PATCHv2 0/6] gitweb: feed metadata enhancements Junio C Hamano
2009-01-28 21:48   ` Jakub Narebski
2009-01-28 21:57   ` Giuseppe Bilotta
2009-01-28 22:03     ` Junio C Hamano
2009-02-06 22:42 ` Jakub Narebski
2009-02-07  0:24   ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cb7bb73a0902060310s3fa19788t7f4ad0d39928d77@mail.gmail.com \
    --to=giuseppe.bilotta@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=jnareb@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).