Subject: Re: bug#78096: 31.0.50; calendar-iso-to-absolute and %W time string format are inconsistent

From: Andreas Schwab <[email-masked]>
Date: Mon, 28 Apr 2025 18:43:18 +0200

On Apr 28 2025, Ihor Radchenko wrote:

> Stephen Berman <[email-masked]> writes:
>
>> The doc string of `format-time-string' says:
>>
>> %U is the week number starting on Sunday, %W starting on Monday,
>>  %V the week number according to ISO 8601.
>>
>> (format-time-string
>>   "%Y-%m-%d W%V"
>>   (encode-time (parse-time-string "2025-01-06 00:00")))
>> => "2025-01-06 W02"
>
> That indeed explains it - %W and %V are apparently not the same and
> `calendar-iso-to-absolute' is closer to %V.

The difference is that %V is always the same for the whole week, whereas
%V and %W roll over on 01-01 (and use 0 for a partial first week).

$ for y in $(seq 2020 2025); do date -d "$y-01-01" +"%a %U %V %W"; done
Wed 00 01 00
Fri 00 53 00
Sat 00 52 00
Sun 01 52 00
Mon 00 01 01
Wed 00 01 00

-- 
Andreas Schwab, [email-masked]
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."