Subject: Re: [PATCH v2 5/5] describe: Break annotated tag ties by tagger date

From: "Shawn O. Pearce" <[email-masked]>
Date: Tue, 13 Apr 2010 12:46:23 -0700

Junio C Hamano <[email-masked]> wrote:
> "Shawn O. Pearce" <[email-masked]> writes:
> 
> > Thomas Rast <[email-masked]> wrote:
> >> Shawn O. Pearce wrote:
> >> > If the tag is an older-style annotated tag with no tagger date,
> >> > we assume a date stamp of 1 second after the UNIX epoch.
> >> 
> >> This patch doesn't seem to actually set this, but as a minor nit: the
> >> '1 second' contradicts the 0 mentioned in the last patch.
> 
> Surely I can, but I am curious as to the motivation behind '1 second' in
> the original patch.  If you wanted to give these '1 second' ones slight
> preference over the ones with 'date stamp at the UNIX epoch', that logic
> is not there anymore in the re-rolled series, no?

The 1-second in the original patch had nothing to do about giving
one tag an edge over another tag.

The meaning of date in the original patch was:

  date = 0: we haven't yet looked up the date
  date = 1: we looked it up, but there is no tagger present
  date > 0: "valid" date, we can sort with it

So date = 1 was just about getting ourselves out of the !date case so
that we didn't keep parsing a tag which has no tagger field present.

In the new version this is handled by the standard parsed field
of struct object.  So I didn't need to overload the meaning of the
date field anymore.

Make sense?

-- 
Shawn.