[tz] Estimate for a new tzdb release with Brazil rules.

Paul Eggert eggert at cs.ucla.edu
Tue May 14 16:50:44 UTC 2019

On 5/14/19 2:49 AM, Stephen Colebourne wrote:
> FYI, the Java definition says this when querying the list of available
> versions:
> https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/time/zone/ZoneRulesProvider.html#getVersions(java.lang.String)
>      * The exact meaning and format of the version is provider specific.
>      * The version must follow lexicographical order, thus the returned map will
>      * be order from the oldest known rules to the newest available rules.
>      * The default 'TZDB' group uses version numbering consisting of the year
>      * followed by a letter, such as '2009e' or '2012f'.

The current tzdb release numbering scheme allows for more than 26
releases per year. tz-link.html says:

Since 1996, each version has been a four-digit year followed by
lower-case letter (<samp>a</samp> through <samp>z</samp>,
then <samp>za</samp> through <samp>zz</samp>, then <samp>zza</samp>
through <samp>zzz</samp>, and so on).

As that sentence suggests, we may change the release numbering scheme in
the future (we've changed it in the past). That would not be a casual
decision of course.

> The ordering allows the versions to be sorted, and the latest one
> selected. If users want to have their own versions, I'd strongly
> suggest something sortable, not something based off a git hash, such
> as 2019a-patched-2019-05-14.

The default numbering scheme for non-release versions is sortable,
although one should use something like GNU strverscmp rather than
classic strcmp. For example, "2019a-14-g9e498e2" is the version number
for 14 commits since 2019a.

The Java documentation should probably be updated to reflect the above.
At least it should mention the possibility of "2019za" (shudder).

More information about the tz mailing list