Red Hat Enterprise Linux (RHEL) needs time zone information in order for all applications in the operating system to correctly print local time. The GNU C Library (glibc
) makes use of the tzdata
package in order to make APIs such as strftime()
work correctly, while applications such as /usr/bin/date
make use of this information to print the local date.
The tzdata
package contains the data files documenting both current and historic transitions for various time zones around the world. This data represents changes required by local government bodies or by time zone boundary changes, as well as changes to UTC offsets and daylight saving time (DST).
This article describes three variants of the tzdata
time zone data format that were introduced in 2018 and how tzdata changes will be made in Red Hat Enterprise Linux.
Occasionally, tzdata
changes are announced without a lot of lead time or with incomplete information. In these cases, we try to plan for different scenarios and rely on the upstream maintainers to make decisions based on their experience. Once an update is ready, we update our sources and our quality assurance and release engineers help push the update out as quickly as possible.
The IESG (Internet Engineering Steering Group) designated TZ Coordinator is Paul Eggert. Periodically or as required for correctness, upstream tzdata
updates are released on the iana.org website. You can also find information about subscribing to the tzdata
email list and accessing the archives on this site.
In 2018, the upstream project introduced three variants of the tzdata
time zone data format. All three formats accurately reflect the correct and most current time zone data. The three data formats are vanguard, main, and rearguard.
The vanguard format contains the newest data format features. In some cases, these new format changes have the potential to break other packages that use their own parsers to parse the time zone data files.
The main format is intended to provide the new features after a period of time. Currently, vanguard and main both contain the new features introduced in 2018.
The rearguard format is intended to provide a longer period of time before requiring support for new data format features.
The two prominent data format features introduced in 2018 were the use of negative DST values and the introduction of 25:00 time intervals, previously 24:00. Both of these changes were known to break some applications that provided their own parsers to parse the time zone data files. The time required to coordinate identifying, updating, and shipping packages impacted by these format changes would have drastically impacted our ability to ship critical tzdata
updates in a timely manner.
After much research and consideration, Red Hat Engineering determined that the best option for our customers and package providers was to delay introducing these new format changes while still providing accurate and timely updates. As such, the RHEL tzdata
package is currently shipping with the rearguard format to allow time for our data format consumers to update their parsers to the newer format.
For more information, see the Red Hat Enterprise Linux Timezone Data (tzdata) - Development Status Page.