Subject: Re: bug#23664: Date Problem: Wrong return using last month today (2016-05-31)
From: Eric Blake <[email-masked]>
To: Felippe Silvestre <[email-masked]>, [email-masked]
Date: Tue, 31 May 2016 13:32:04 -0600
List-Id: <debbugs-submit.debbugs.gnu.org>

tag 23664 notabug
thanks

On 05/31/2016 12:14 PM, Felippe Silvestre wrote:
> [root@superdssbox999 ~]# date
> 
> Tue May 31 15:10:47 BRT 2016
> 
>  
> 
> [root@superdssbox999 ~]# date -d"last month"
> 
> Sun May  1 15:10:52 BRT 2016

You've hit a FAQ; relative date terms like "last month" are easier to
code if they merely add a fixed amount of 30 days, rather than a
variable logical amount, particularly since the amount that would be
variable may depend on things like daylight savings changes.

https://www.gnu.org/software/coreutils/faq/coreutils-faq.html#The-date-command-is-not-working-right_002e

There is work underway to add a 'date --debug' option that will make it
more obvious HOW date is arriving at its results when presented with
inherently ambiguous requests, such as using "last month" near the
boundary of a month.

I'm closing out this particular request in the bug database, since it is
known behavior, but feel free to add more comments or even provide a
reason that it should be reopened if what has been mentioned above is
insufficient to help you with your use of 'date'.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org