pgsql: Sync our copy of the timezone library with IANA release tzcode20

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Sync our copy of the timezone library with IANA release tzcode20
Date: 2026-07-01 14:57:05
Message-ID: E1wewN7-000vla-0o@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Sync our copy of the timezone library with IANA release tzcode2026b.

This was moderately tedious, because upstream has been busy
since we last did this in 2020.

Notably, they changed the signatures of both tzload() and tzparse(),
which we'd unwisely exposed as API for callers to use. I concluded
that the best answer was to change them both back to "static" and
instead expose a new API function of our own choosing, pg_tzload().

That change may be a sufficient reason not to back-patch this update,
as I'd normally want to do. There's probably not a good reason for
extensions to be calling those functions, but on the other hand
there are few pressing reasons for a back-patch. The one bug we have
run into (a Valgrind uninitialized-data complaint about zic) appears
to have no field-visible consequences.

A few of the files generated by this version of zic are not
byte-for-byte the same as before, but "zdump -v" avers that
they represent the same sets of transitions.

Discussion: https://postgr.es/m/2294297.1780270682@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/aeb07c55fab5c17a600b77ffcdc3b71425d6a8e7

Modified Files
--------------
src/bin/initdb/findtimezone.c | 19 +-
src/timezone/README | 20 +-
src/timezone/localtime.c | 1299 ++++++++--------
src/timezone/pgtz.c | 44 +-
src/timezone/pgtz.h | 73 +-
src/timezone/private.h | 249 ++-
src/timezone/strftime.c | 41 +-
src/timezone/tzfile.h | 55 +-
src/timezone/zic.c | 3119 +++++++++++++++++++++++++-------------
src/tools/pgindent/typedefs.list | 2 +
10 files changed, 3043 insertions(+), 1878 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2026-07-01 15:33:59 pgsql: Improve the names generated for indexes on expressions.
Previous Message Tom Lane 2026-07-01 14:10:36 pgsql: Fix CPU-identification macros for RISC-V.