git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] date.c: allow ISO 8601 reduced precision times

From
Junio C Hamano <gitster@pobox.com>
Date
Dec 16, 2022, 04:23 UTC
Message-ID
<xmqq359gnfhe.fsf@gitster.g>
In-Reply-To
<20221216033638.2582956-1-phil.hord@gmail.com>
Phil Hord <phil.hord@gmail.com> writes:
Show 10 quoted lines
> From: Phil Hord <phil.hord@gmail.com>
>
> ISO 8601 permits "reduced precision" time representations to omit the
> seconds value or both the minutes and the seconds values.  The
> abbreviate times could look like 17:45 or 1745 to omit the seconds,
> or simply as 17 to omit both the minutes and the seconds.
>
> parse_date_basic accepts the 17:45 format but it rejects the other two.
> Fix it to accept 4-digit and 2-digit time values when they follow a
> recognized date but no time has yet been parsed.

I worry a bit that this may conflict with other approxidate heuristics.

> $ test-tool date approxidate 2022-12-13T23:00 2022-12-13T2300 2022-12-13T23
> 2022-12-13T23:00 -> 2022-12-14 07:00:00 +0000
> 2022-12-13T2300 -> 2022-12-14 07:00:00 +0000
> 2022-12-13T23 -> 2022-12-14 07:00:00 +0000

All of these may be obvious improvements, but the thing is that there is nothing in the approxidate parsing code that insists on the presence of "T" to loosen the rule only for ISO-8601 case.

For example, with only 6 digits, do we still recognise our internal timestamp format (i.e. seconds since epoch) without the disambiguating '@' prefix?

Previous: Phil HordNext: Phil Hord
Message 2 of 12 in “date.c: allow ISO 8601 reduced precision times”
  1. date.c: allow ISO 8601 reduced precision timesPhil Hord, Dec 16, 2022
  2. Junio C HamanoDec 16, 2022
  3. Phil HordDec 16, 2022
  4. Phil HordJan 9, 2023
  5. Junio C HamanoJan 9, 2023
  6. Junio C HamanoJan 9, 2023
  7. Phil HordJan 9, 2023
  8. fixup! date.c: allow ISO 8601 reduced precision timesĐoàn Trần Công Danh, Jan 9, 2023
  9. date.c: limit less precision ISO-8601 with its markerĐoàn Trần Công Danh, Jan 9, 2023
  10. Phil HordJan 9, 2023
  11. date.c: allow ISO 8601 reduced precision timesĐoàn Trần Công Danh, Jan 11, 2023
  12. Junio C HamanoJan 13, 2023

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.