Friday, March 1, 2024

Leap Year Bugs

Deborah Pickett:

Kazakhstan, which has not observed daylight saving for 20 years, is turning the clocks back at 0:00 on 1 March 2024, to 23:00 on leap day February 29 2024.

Definitely playing time zones on Hard Mode, Kazakhstan. Thanks for doing some QA on stacked edge cases for us all!

Greg Titus:

OH SURE, let’s do a daylight savings change right at midnight on a leap day. AND combine two time zone regions into one at the same time.

Rebecca Sloane:

today is the day that separates the haves read the calendar / date documentation from the have-nots read the docs but my custom logic works so I’m shipping it

Sami Samhuri:

It’s a great day to check your date math for bugs. Foundation’s calendar is forgiving and you might not want that. Using DateComponents to ask for 29-02-2023 will give you 01-03-2023.

Rachel Kroll:

Only half of the fun of a leap year happens on February 29th.

The rest of it happens in ten months, when a bunch more code finds out that it’s somehow day 366, and promptly flips out. Thus, instead of preparing to party, those people get to spend the day finding out why their device is being stupid all of the sudden.

Scharon Harding (Hacker News):

As reported by numerous international outlets, self-serve pumps in New Zealand were unable to accept card payments due to a problem with the gas pumps’ payment processing software.

See also: Did you encounter any leap year bugs today?.

Previously:

2 Comments RSS · Twitter · Mastodon

There are a few replies under Deborah's message already saying: it's not DST, it's a merging of timezones. But also it couldn't be a DST jump because Kazakhstan is in the northern hemisphere where it's springtime and: "Spring Forward", not backward.

I’m pretty sure my employer’s app (used for time reporting, absences and other boring stuff like that) had a leap year issue. It broke down on the 29th while the services themselves continued to operate as usual.

On the other hand, Apple’s operating systems recognize dates even up to 31.02. When you receive a text containing such date pressing and holding on it will reveal either 3rd or 2nd March.

Leave a Comment