git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jakub Narebski <jnareb@gmail.com>
To: "J.H." <warthog9@eaglescrag.net>
Cc: Kevin Cernekee <cernekee@gmail.com>,
	git@vger.kernel.org, Junio Hamano <gitster@pobox.com>
Subject: Re: [PATCH 1/1] gitweb: javascript ability to adjust time based on timezone
Date: Fri, 25 Mar 2011 00:36:46 +0100	[thread overview]
Message-ID: <201103250036.49662.jnareb@gmail.com> (raw)
In-Reply-To: <4D8BCE0D.3080504@eaglescrag.net>

On Fri, 25 Mar 2011, J.H. wrote:
> On 03/24/2011 01:19 PM, Jakub Narebski wrote:
>> On Thu, 24 Mar 2011, Kevin Cernekee wrote:

>>> 4) IE6 does not seem to like ISO 8601 format:
>>>
>>> x = new Date("2011-03-09T03:29:09Z");
>>>
>>> This sets all fields to NaN.  I suspect that getTime() values
>>> (milliseconds since 1970-01-01) are more portable.
>> 
>> Do you mean using epoch in title attribute, or fallback to parsing
>> ISO 8601 UTC format with regexps?
> 
> Parsing it with regexps is doable if completely inelegant, that said
> this is Javascript...
> 
> Looky that MS provides Virtual PC images for compat testing for IE6
> http://www.microsoft.com/downloads/en/details.aspx?FamilyID=21eabb90-958f-4b64-b5f1-73d0a413c8ef&displaylang=en
> 
> Ok reading through the documentation I can find for MS and their
> Date.parse (
> http://msdn.microsoft.com/en-us/library/dctx55bc(v=VS7.1).aspx ) and
> some quick experimentation:
> 
> 2011-03-09 - breaks
> 2011/03/09 - works

I really don't like using '/' as a separator; not only this is not
ISO-8601, but it is easy to confuse with insane American way of
writing dates with MM/DD/YYYY (day in the middle).
 
> 2011/03/09T01:01:01  - works, sorta - the hour comes out as 10 vs. 01
> 2011/03/09 01:01:01  - works, hour is correct
> 2011/03/09 01:01:01Z - works and seems to get the TZ correct
> 2011/03/09T01:01:01Z - breaks

If it worked in all (or almost all) web browsers with

  2011-03-09 01:01:01Z - works and seems to get the TZ correct

then I would say go for it - this variant of ISO-8601 with ' ' instead
of 'T' to separate date part from time part is more human-readable.
 
> Not really sure what the "right" way to fix this is going to end up
> being.  Suppose our options are:
> 
> 1) Try and find a format that is generally accepted and parseable on all
> the browsers
> 2) Declare IE6 an unsupported browser
> 3) Trap what browser we are on and do a regex parsing of the string and
> do appropriate sets or a more verbose format that works everywhere

If web browser returned undefined value if they can't parse date, then
we could do regexp parsing based on this, not on user-string (which is
in most cases wrong solution).

> 4) Use a regex and sets for every browser.
> 5) Switch all the embedded times over to epochs in the title=""'s
> 
> 4 is probably the "most" right that I can see of those options, and
> avoids possible other browser inconsistencies with respect to date
> parsing.  I'm going to code that up (it shouldn't be terribly
> complicated), unless someone likes one of the other ideas better.
> Suppose we could even go down the more complicate microformat route and
> just write some code to parse that, just more complicated all the way
> around.

Right.

> 5 has the appeal that everything handles the epoch correctly, but it
> does have the downside of being less readable in the html code (and
> shifts us slightly further away from the accepted "standard" of the
> microcode formats)

Well, we could always use non-standard 'epoch' attribute, or something...
 
-- 
Jakub Narebski
Poland

  reply	other threads:[~2011-03-24 23:37 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-19  5:39 [PATCH 1/2] gitweb: rename parse_date() to format_date() Kevin Cernekee
2011-03-19  5:39 ` [PATCH v4 2/2] gitweb: introduce localtime feature Kevin Cernekee
2011-03-19 15:18   ` Jakub Narebski
2011-03-19 17:56   ` Junio C Hamano
2011-03-19 19:49     ` Kevin Cernekee
2011-03-19 21:09       ` Jakub Narebski
2011-03-19 21:22         ` Kevin Cernekee
2011-03-19 21:41           ` Jakub Narebski
2011-03-20 22:38   ` J.H.
2011-03-20 23:44     ` Kevin Cernekee
2011-03-21  0:20     ` Jakub Narebski
2011-03-21  2:35       ` J.H.
2011-03-21 16:01         ` Jakub Narebski
2011-03-21 18:39           ` Piotr Krukowiecki
2011-03-21 18:39           ` J.H.
2011-03-21 22:20             ` Jakub Narebski
2011-03-24  0:08   ` [PATCH 0/1] Gitweb: Change timezone John 'Warthog9' Hawley
2011-03-24  0:08   ` [PATCH 1/1] gitweb: javascript ability to adjust time based on timezone John 'Warthog9' Hawley
2011-03-24  5:23     ` Kevin Cernekee
2011-03-24  7:21       ` J.H.
2011-03-24 21:23         ` Jakub Narebski
2011-03-24 20:19       ` Jakub Narebski
2011-03-24 22:00         ` Kevin Cernekee
2011-03-24 22:29           ` J.H.
2011-03-24 23:04         ` J.H.
2011-03-24 23:36           ` Jakub Narebski [this message]
2011-03-24 15:17     ` Jakub Narebski
2011-03-25 15:20       ` [PATCH (BUGFIX)] gitweb: Fix handling of fractional timezones in parse_date Jakub Narebski
2011-03-25 16:26         ` Kevin Cernekee
2011-03-25 16:50           ` [PATCH (BUGFIX) v2] " Jakub Narebski
2011-03-25 17:15           ` [PATCH (BUGFIX)] " Junio C Hamano
2011-03-25 17:47             ` Jakub Narebski
2011-03-25 19:20             ` [PATCH (BUGFIX) v3] " Jakub Narebski
2011-03-19 10:33 ` [PATCH 1/2] gitweb: rename parse_date() to format_date() Jakub Narebski
2011-03-19 11:50   ` Jon Seymour
2011-03-19 18:00 ` 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

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

  git send-email \
    --in-reply-to=201103250036.49662.jnareb@gmail.com \
    --to=jnareb@gmail.com \
    --cc=cernekee@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=warthog9@eaglescrag.net \
    /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.
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 NNTP newsgroup(s).