On Mar 8, 2026, at 4:41 AM, Dag-Erling Smørgrav <[email protected]> wrote:

> Guy Harris via tz <[email protected]> writes:
>> Paul Eggert via tz <[email protected]> writes:
>>> On my Ubuntu 25.10 platform, my email client (Thunderbird) uses the
>>> GNU C library to read TZif data. I was talking about that usage, not
>>> any ICU usage.
>> So that's a case of an independent reimplementation of the same
>> C/POSIX API that the tzcode implements.  [...]
> 
> Yes, an independent reimplementation maintained by [checks notes] some
> guy named Paul Eggert.  I bet he sucks.

And not as independent as I'd originally thrught:

        
https://lists.iana.org/hyperkitty/list/[email protected]/thread/3TRCQROTP2WT4OKEWC6UKAQ34WOJT5OH/

"The GNU C Library (see prep.ai.mit.edu:pub/gnu/glibc-1.05.tar.z) is derived 
from Olson's 1989 code. Here are its changes:..."

and there was, perhaps, *another* Olson-derived implementation originally used 
on Linux:

"Linux's code for timezones (see 
tsx-11.mit.edu:pub/linux/sources/sbin/timesrc.tar.Z) is also derived from 
Olson's 1989 code, but it has only the following minor changes: ..."

The GNU libc code was, as I remember, originally done by Roland McGrath.

Looking at the current tip-of-main-branch code from GNU libc (which is what I 
think many Linux distributions use), it looks different - and not just in 
coding style - from the current tzcode version. I don't know who's responsible 
for those changes.

The musl C library, used by some *other* Linux distributions, has its own 
separate implementation.

And then there's the code used by at least a plurality of smartphones on the 
planet, from the Bionic C library, which looks more directly tzcode-derived.

I don't know what code Huawei's doing in its collection of various operating 
systems all of which, at least from the collection of Wikipedia pages about 
those various operating systems, seem to be based on each other in some cyclic 
graph, uses, so I can't speak for their smartphones.

But most of those have, as I noted, constraints stemming from a desire to Look 
Somewhat Like C and Unix.

Various *other* programming languages have their own libraries. I don't have a 
list of which ones are wrappers around the C/POSIX APIs and which are 
completely independent. Some of the latter, as noted, don't read TZif files.

Reply via email to