ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Steve Loughran <>
Subject Re: cvs commit: ant/src/testcases/org/apache/tools/ant/util
Date Tue, 24 Jun 2003 15:59:50 GMT
Martin Gainty wrote:
> Alright I'll ask the dumb question
> What happened on Jan 1 1601???
> -Martin

probably lots of things relevant to the people at the time.

Of most interest to clocks is that by that day, the start of the 
seventeenth century, most of the western world had updated their 
calendars to adopt the no-leap-centuries-except-on-millennium rule that 
kept the wall time more in sync with astronomicial time. So if you 
ignore dates before 1601 you dont have to worry so much about when 
different countries skipped a fair few days to catch up.

Russia didnt adopt the (gregorian, right?) calendar till after the 
October Revolution, a revolution which took place in November as far as 
the rest of the world is concerned.

MS have a track record of doing odd things with date and time. Excel 
time fields used to begin at 00:00 on 1-jan-1900, but because the 
developers got the leap century rule wrong, its epoch was redeclared to 
be 00:00 on 31-dec-1899. For all dates after 1-feb-1900 these values are 
the same. Excel time fields survive as OLETIME, one of the COM datatypes 
you may still encounter.

We are nominally fortunate that they dropped OLETIME in the SOAP era, 
replacing it with xsd:dateTime. That format requires you to specify the 
timezone, yet because the .NET Date structure is like java.util.Date, a 
time_t with no timezone, they get it wrong and always assume local tz. 
so you cannot reliably send date & time across the wire using the SOAP 
datatypes, not between Java (whose Calendar class is TZ aware) and .NET.


(trivia related to WGS-84 'gps time' and current UTC omitted)

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message