threads / bug / 53290

[BUG REPORT] --date argument doesn't validate dates

Subject: [BUG REPORT] --date argument doesn't validate dates

## tl;dr

2 messages between Apr 22, 2020 and Apr 22, 2020.

replies: 1people: 2as markdown or json

Yuri· Apr 22, 2020, 20:40 UTC · lore

For example, the following command accepts an invalid month "Dx" and an invalid year "20221" and sets the month to "Apr" and the year to "2020".

Yuri
$ git commit --amend --no-edit --date "Mon 20 Dx 20221 20:19:19 PST"
[master 668e255] Initial
  Date: Mon Apr 20 20:19:19 2020 -0700
  1 file changed, 1 insertion(+)
  create mode 100644 File
[yuri@yv /usr/home/yuri/github/git-date]$ git log
commit 668e255b54d08ed898e6d44f19954b2116d5a56c (HEAD -> master)
Author: Yuri <yuri@rawbw.com>
Date:   Mon Apr 20 20:19:19 2020 -0700
     Initial
brian m. carlson· Apr 22, 2020, 21:26 UTC · re: Yuri · lore

Re: [BUG REPORT] --date argument doesn't validate dates

On 2020-04-22 at 20:40:48, Yuri wrote:
> For example, the following command accepts an invalid month "Dx" and an
> invalid year "20221" and sets the month to "Apr" and the year to "2020".

The --date argument accepts a wide variety of formats, including some formally specified ones, as well generalized handling through the "approxidate" approach. So it's designed to operate on formats that are not well understood and do the best it can with them. This also allows it do things like ignore the irrelevant word "ago" in "5 days ago" and still do the right thing.

If you want to be sure that your date is uniformly understood, then the best approach is to either use the Git internal format or RFC 3339 (which is a profile of ISO 8601).

-- 
brian m. carlson: Houston, Texas, US
OpenPGP: https://keybase.io/bk2204

← back to recent threads