logoalt Hacker News

BoppreH • today at 5:15 PM • 6 replies • view on HN

Context: BIPM is responsible for the UTC time standard, and in this document they decide to stop adding (or removing) leap seconds, starting on 20th of May 2027 and lasting for the foreseeable future (until one leap hour is needed, but even then it's unclear if they'll do something). Together with the decision to not add a leap second in December, the 27 leap seconds that have been added so far should be the only ones, ever.

The page lists several good reasons for this, including:

- It's a common source of bugs.

- Solar time is not that important in a world of coarse timezones.

- IoT and anything that cannot receive time updates have trouble with leap seconds.

- Negative leap seconds have never occurred before, but might occur in the future, and almost no software has tested this case.

I'd also add:

- Unix timestamps are actually defined as "seconds since epoch minus however many leap seconds have happened". It's a hack to keep code that assumes "86400 seconds in a day" from breaking. It means that during a leap second the Unix timestamp goes back and repeats a previous value, making them ambiguous and non-monotonic.

- Leap second unpredictability can make it impossible to calculate how many seconds are between two UTC dates or Unix timestamps, for example the countdown to the year 2038 bug.

- The proper ISO8601 formatting of leap seconds ("23:59:60") is widely unsupported, breaking parsers, along with the assumption of how many seconds are in a minute, hour, or day.

---

EDIT: I've emailed [email protected] to change the title. It's avoiding editorialization, but I think it's also preventing the post from getting the attention it deserves.

I'm booking a yearly one-second-long holiday on my calendar, to celebrate all the headaches this will save me. Happy end of leap seconds!


Replies

creatonez • today at 8:53 PM

Any prospect for a leap hour is toast by the time we need it. Over a thousand years of ossification will mean our only option is to not care about aligning clock time to the sun. So it's kinda a joke to even talk about leap hours. I'm shocked they're even mentioning such an idea, they should have declared it as a non-solution.

➕ show 2 replies
gliffie • today at 5:41 PM

Thank you for providing context for other readers. I was unsure what do to with the title, as my experience is that editorialized titles are always eventually changed to the original title. The "actual" title here is "Resolution 5 (2026)", but I decided to go with the much more specific subheading "On the technical actions needed to ensure the continuity of UTC". Curiously, "On" was removed on submission.

➕ show 1 reply
throw0101c • today at 5:34 PM

> - Negative leap seconds have never occurred before, but might occur in the future, and almost no software has tested this case.

FreeBSD tests stuff like this for the code that they take care of:

* https://lists.freebsd.org/pipermail/freebsd-stable/2020-Nove...

Third-party stuff (like from Ports) is another question.

layer8 • today at 5:20 PM

> - Leap seconds make predicting the clock time of timestamps in the future impossible.

I don’t see that reason listed on the page, and future wall-clock times remain unpredictable due to changes in time zone rules.

What will become predictable is the relationship between posix time and elapsed time (in the sense of TAI), at least within the next few hundred years.

➕ show 1 reply
wodenokoto • today at 8:46 PM

Is my understanding correct that they maintain a time called UT1, which is basically UTC if it continued to have leap seconds?

➕ show 1 reply
likpok • today at 5:24 PM

> @dan: can we rename this to "BIPM decides to stop adding leap seconds to UTC" or something similar? This title is really downplaying the situation, I think readers over here care a lot about this.

@-tags like this don't do anything, you're better off sending an email. I think [email protected] is the address.

➕ show 1 reply