Update Time Zone Data for ZoneParser

Note: This is usually done as a part of full time zone data update process.

1. Download the latest version of IANA Time Zone Database page: https://www.iana.org/time-zones
  • There are 3 links available for latest version. Select the complete distribution tzdb-<version>.tar.lz (e.g. tzdb-2021a.tar.lz).
  • Extract entire contents to a work directory.
  • Note: The data only distribution contains minimum set of files you really need. However, you cannot use a convenient make target without codes. The complete distribution package contains the codes.
2. Run make target - rearguard_tarballs_version
  • This target creates "rearguard" version of zoneinfo files under directory: tzdataunknown-rearguard.dir.
  • Note: If you specify a version (e.g. VERSION=2021) when invoking the target, "unknown" will be replaced with the specified version (e.g. tzdata2021a-rearguard.dir), but it's not important in this instruction.
  • A standard zoneinfo file may use negative daylight saving time offsets. CLDR code currently can not handle negative daylight saving time offsets. The "rearguard" version is designed for tools without negative daylight saving time support.
3. Copy files generated by previous step to {CLDR_DIR}/tools/cldr-code/src/main/resources/org/unicode/cldr/util/data
  • Below the list of files to be include:
    • africa
    • antarctica
    • asia
    • australasia
    • backward
    • etcetera
    • europe
    • leapseconds
    • northamerica
    • southamerica
    • zone.tab
  • Note: leapseconds might be removed from the list later.
4. Edit the file {CLDR_DIR}}/tools/cldr-code/src/main/resources/org/unicode/cldr/util/data/tzdb-version.txt
  • This file contains just one line text specifying a version of Time Zone Database, e.g. 2021a.

Comments