Re: [go-nuts] Re: invalid months and years in time package

2018-10-23 Thread andrey mirtchovski
as https://golang.org/pkg/time/#Date says: The month, day, hour, min, sec, and nsec values may be outside their usual ranges and will be normalized during the conversion. For example, October 32 converts to November 1. On Tue, Oct 23, 2018 at 3:12 PM wrote: > > If you check the source code for th

[go-nuts] Re: invalid months and years in time package

2018-10-23 Thread alan . fox6
If you check the source code for the time.Date() function, you'll find that it does indeed normalize the date by calling a private 'norm' function. So, if you enter a month of 13, it will overflow into January of the following year. My guess is that they thought this was a better solution than

[go-nuts] Re: invalid months and years in time package

2018-10-23 Thread taras . di
Yes sorry -1 is a valid year. An invalid month is any integer outside of [1,12]. We can always define month 13 as January if we adopt Z_12, but I expected an error to occur. Accepting months outside of [1,12] violates the Principle of least astonishment. For comparison, python verifies the mon

[go-nuts] Re: invalid months and years in time package

2018-10-23 Thread Volker Dobler
Why is year -1 invalid and what is an "invalid" month given that 13==1 in Z_12? V. On Tuesday, 23 October 2018 16:01:00 UTC+2, Taras D wrote: > > Hi, > > I was surprised to find the following worked without any reported errors: > > t1 := time.Date(-1, 1, 10, 23, 0, 0, 0, time.UTC) // invalid ye