From eggert at cs.ucla.edu Thu Mar 17 02:59:21 2022 From: eggert at cs.ucla.edu (Paul Eggert) Date: Wed, 16 Mar 2022 19:59:21 -0700 Subject: [tz-announce] 2022a release of tz code and data available Message-ID: The 2022a release of the tz code and data is available. This release reflects the following changes: Briefly: Palestine will spring forward on 2022-03-27, not -03-26. zdump -v now outputs better failure indications. Bug fixes for code that reads corrupted TZif data. Changes to future timestamps Palestine will spring forward on 2022-03-27, not 2022-03-26. (Thanks to Heba Hamad.) Predict future transitions for first Sunday >= March 25. Additionally, predict fallbacks to be the first Friday on or after October 23, not October's last Friday, to be more consistent with recent practice. The first differing fallback prediction is on 2025-10-24, not 2025-10-31. Changes to past timestamps From 1992 through spring 1996, Ukraine's DST transitions were at 02:00 standard time, not at 01:00 UTC. (Thanks to Alois Treindl.) Chile's Santiago Mean Time and its LMT precursor have been adjusted eastward by 1 second to align with past and present law. Changes to commentary Add several references for Chile's 1946/1947 transitions, some of which only affected portions of the country. Changes to code Fix bug when mktime gets confused by truncated TZif files with unspecified local time. (Problem reported by Almaz Mingaleev.) Fix bug when 32-bit time_t code reads malformed 64-bit TZif data. (Problem reported by Christos Zoulas.) When reading a version 2 or later TZif file, the TZif reader now validates the version 1 header and data block only enough to skip over them, as recommended by RFC 8536 section 4. Also, the TZif reader no longer mistakenly attempts to parse a version 1 TZIf file header as a TZ string. zdump -v now outputs "(localtime failed)" and "(gmtime failed)" when local time and UT cannot be determined for a timestamp. Changes to build procedure Distribution tarballs now use standard POSIX.1-1988 ustar format instead of GNU format. Although the formats are almost identical for these tarballs, ustar headers' magic fields contain "ustar" instead of "ustar ", and their version fields contain "00" instead of " ". The two formats are planned to diverge more significantly for tzdb releases after 2242-03-16 12:56:31 UTC, when the ustar format becomes obsolete and the tarballs switch to pax format, an extension of ustar. For details about these formats, please see "pax - portable archive interchange", IEEE Std 1003.1-2017, . Here are links to the release files: https://www.iana.org/time-zones/repository/releases/tzcode2022a.tar.gz https://www.iana.org/time-zones/repository/releases/tzdata2022a.tar.gz https://www.iana.org/time-zones/repository/releases/tzdb-2022a.tar.lz The following convenience links are also available, although they may point to the previous release until the relevant caches are refreshed: https://www.iana.org/time-zones/repository/tzcode-latest.tar.gz https://www.iana.org/time-zones/repository/tzdata-latest.tar.gz https://www.iana.org/time-zones/repository/tzdb-latest.tar.lz Links are also available via plain HTTP, and via FTP from ftp://ftp.iana.org/tz/releases with the same basenames as above. Each release file has a GPG signature, which can be retrieved by appending ".asc" to the above URLs. Copies of these signatures are appended to this message. This release corresponds to commit 95ecc37d29c2f5cf711af43b0ef3a35fc2847aa1 dated 2022-03-15 23:02:01 -0700 and tagged '2022a' in the development GitHub repository at . Here are the SHA-512 checksums for the release files: 3f047a6f414ae3df4a3d6bb9b39a1790833d191ae48e6320ab9438cd326dc455475186a02c44e4cde96b48101ab000880919b1e0e8092aed7254443ed2c831ed tzcode2022a.tar.gz 542e4559beac8fd8c4af7d08d816fd12cfe7ffcb6f20bba4ff1c20eba717749ef96e5cf599b2fe03b5b8469c0467f8cb1c893008160da281055a123dd9e810d9 tzdata2022a.tar.gz ece0b7a9ad3d365f8605e8f98a8a78b7fdbbb8aa615b585f21256d9401c59845fcdc951f5fc876293f1b7956b1a2d3fa2baf85099d637a91d4199ee30cf4307e tzdb-2022a.tar.lz Here are the GPG digital signatures for the release files: -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEfjeSqdis99YzvBWI7ZfpDmKqfjQFAmIxfhAACgkQ7ZfpDmKq fjRXfw/8DC6daRCaFirmN6821H+CA0D/e0Iod9e2g/Z5/yyx5HGCEAfRBhJ6ThWA O1I8oCuwp2kaP2ZH87+HKXT1WXGMx/819FU5fqY2TNncHAUxVUSmAm1yVHWaY2nU qFt3gDTx4vDV0lfSDtKYJJdVeE+VcAdSDUDnYIqMNCKuTkKdTfPVparsAPIZ8egr EC4IBiGolLoLkMiiwvvPNg0J505I+DUYeHEuo+ezhgBzBiLNhCWDfCcghoDYakHr CEH+aq6BVhhn/3w1203ExN7iEr/5iTwC/PjRZoJlBqDS7eAhycgFYHjglHGYSs8P RVNnkTAhDMxONZH97QqKlOo56a5QLMvTDNbBLdX0b4K4lmEfCRe03MbH4ybDkA9S +eYfkeX2kUYKnHTT3XXTiVvjDFGemu+l8QGlJoF9Qu44cUGLPZQZEq/YzbZUw8ax RaT4V0ZkH3+yMYAAWaoa85xXs7a/MnE7Gl9glSFzlijC6iZoRmrXy2ra44TzvwWr E/7Het1lctaiKWcdYH5+vYyzzWZTt4hKAXsCUgBGQy0/mE2KoHRQHk6zfZPY1TvD ib6Dkh9LWYrXsNGCe1H4SpjKEX51Nb27FgIw1DNrbOJpTna5/OKmceu5IIlGJseF nfwPHZ3ATpVfVwdiRqbNC9GNVBev9n5UI67zGQ2494kknR2JMhs= =4JUm -----END PGP SIGNATURE----- -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEfjeSqdis99YzvBWI7ZfpDmKqfjQFAmIxfhAACgkQ7ZfpDmKq fjTlWw/7BrBTwRx7HvTlNaIbCaj/uOIEomJafNOq8Kdbx2JXrZu8qhj/0vMdwIzQ CEIqVuGKD8WJB4nsBYlFU8Jn1JfRbglnWK1f7yRY1EaXuIFh+FMbRYEk8O3HYPy2 14QCJNjsCwIzztmiuxXqET2eQRpT2iojGKhZbToJE4DpC/w5xCPrUqAIsK8nfC3u TZC8l09zL/xTSl/QMStH/Kh8oJD4uftVMxYZE5zakZaH5M017gwjDdM/7I/D4MME sTm7XEL7IdzzZyTxzeVVbXfyqoEb1ueJJImYnQfGgCnoJKtMjVROzL6BBJSZLkZN tR7/V9mHZKoItzhOv5gwfk0YMy8792rAioqfMUG/KvrvCTNy3PqrE1jO1/nv+FPS WWuixsnRx1Xz2COb88pKnYX17Zt8rBIumcfpgolsBvLKGI7ZLEAekjteKubgpebn jnf6CLAdcRoIdauG483LG/OQ6M9PEUBYTrX56Q8/C3kdOPuuMJ/6qd6k7lNt/fWx O2lBg+lkIagZu8j5pU5mHOsVe2P1f7p7oIt1NF2oAD2cIq6EFWOdcOCyvgC69xE1 +jt6lIQkIfBM8dfxf70z9KZQvOr9bwZaCirWNTgIMxrn/n4vvo5HCbYx+P4LSAhH G1UY/x67Swnl0p6+69d8Ww/SrdOP3T30KxjIaQXx5NgjeU2zIEo= =OX/x -----END PGP SIGNATURE----- -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEfjeSqdis99YzvBWI7ZfpDmKqfjQFAmIxfhEACgkQ7ZfpDmKq fjTWBQ//T8ICtN33H3kcz/4P9gWArfgV7huztvWW9KKBkQpWEa9gIlpYi7jx80wF qnAHZCpRedj+CJXqswkG+lIMVLEHjwVT2hdeP5wPV2y5rJ0J9Ssh2i0voSdX000T WED4u/OyR1shKm4VIxdgY6eqaN6Hedc0+Eib/VoIQAzCM2nP3c4IMAWkBKLiCSIZ n6JVI90jRgAnzhRJjiddJRFMBovzKNIxpqGGZYaxaG0O5AYfsItdRte3RCOn/tc+ tsMSJ+iUt8nTonq4P1nUE4zmvx33V7iOJhaj03fdJal0U8Egc/Ib5exsS2KipEjG iknyi8dUQcbNBFnFoN26SAO9/QMpDDE/vOnGGyWySLSwQg/xmy+LwmIZGqVftDeX JrUeRboH/39aDx6kKIrqXeIlG9bNka/6ThOJEZNr+OejDRyFeqgcatpomRkoExRs pPR88cyA0ZsN3PHhi9eXO+Zyk9GBA0o7m7G0ECK2j6w2axPh8/xPQ94zdFRTcd3V 3xC94N42eoNKeWgEmyvNEXdq5hZXhPK/Lu8D0NScbS440ovMJJtcr8Q+/bihHyGG eOCrxVF5KXLOYvptQ/xhUGodzRm8PuZ6DkJoCtW9PQL82LZDSHAi880YgzsdWzzy 6m6g8KmOmTkmQ6vztMyDr04KW2QDxp53q7hdErh0bW0iyvELd7I= =egWc -----END PGP SIGNATURE----- PS. If your tzdata parser does not yet support negative DST offsets or times past 24:00, or if it insists on a 'pacificnew' file that is no longer present, this release's data entries can be turned into a rearguard-format tarball that should work even with these older parsers. This is intended to be a temporary transition aid for these parsers. To generate a rearguard-format tarball, obtain the full distribution as described above, and run the command 'make rearguard_tarballs' on a development host. Or you can run 'make rearguard.zi' to generate a single file that can be fed directly to a parser that works like 'zic'.