Re: Trying to use AUTHOR_DATE
- From
Linus Torvalds <torvalds@osdl.org>
- Date
- Apr 30, 2005, 20:32 UTC
- Message-ID
- <Pine.LNX.4.58.0504301322130.2296@ppc970.osdl.org>
- In-Reply-To
- <87r7gs87a9.fsf@windlord.stanford.edu>
On Sat, 30 Apr 2005, Russ Allbery wrote:
> > You really cannot get portable behavior in this area without something > akin to Autoconf probes, unfortunately.
Ok, since this only really matters for AUTHOR_DATE, which we pass in as a random string anyway, and which comes from various mail programs which may or may not follow all RFC's, I just rewrote it to give "almost correct results" for "pretty much any crap you throw at it".
As a test-bed, a "test-date" program that parses a date and then prints it out in git format _and_ in the local timezone format, here's a few examples:
./test-date "$(date)" "April 4th, 1992 at 13:45" "13:04:09 +0100 2004 Yesterday, Friday 13th, December"
results in
Sat Apr 30 13:26:52 PDT 2005 -> 1114892812 -0700 -> Sat Apr 30 13:26:52 2005
April 4th, 1992 at 13:45 -> 702395100 +0000 -> Sat Apr 4 05:45:00 1992
13:04:09 +0100 2004 Yesterday, Friday 13th, December -> 1102939449 +0100 -> Mon Dec 13 04:04:09 2004
which is just because it really doesn't check a hell of a lot.
For example, if you say
"I caught 14 fishes in December 1998"
test-date will happily parse this as
Sun Dec 13 16:00:00 1998
(That's "0:00:00 Dec 14th, 1998 UTC" shown in the local timezone ;). Or:
./test-date "12:15 4/17/2009"
12:15 4/17/2009 -> 1239970500 +0000 -> Fri Apr 17 05:15:00 2009
ie it just greedily tries to make _some_ sense of the random strings you throw at it.
It doesn't even try getting timezones right - it doesn't know about summertime or anything. Besides, I probably used the wrong timezone info anyway.
I'll probably tweak it a bit more (make "no timezone means local timezone", for example, rather than UTC like it is now).
Linus