On 02/05/2018 02:49 AM, Stephen Colebourne wrote:
Another completely unnecessary change adding no value?
Although it doesn't add value for today's timestamps, it is useful for historical timestamps that have been covered by the database for decades. Some applications do deal with older timestamps, and when it's easy (as it is here) it's helpful to correct longstanding data entry errors that were forced by an inadequate format. Downstream parsers like OpenJDK+CLDR that do not handle fractional seconds can use the file rearguard.zi, which avoids them and so should continue to be compatible. I suggest testing with the development version's rearguard.zi now, to shake out any potential problems in that area. More generally, tzdb should not be thought of as a project whose format is fixed in stone and will never change. The format has changed in the past (e.g., the "u" suffix) and will undoubtedly will change in the future for reasons that we cannot in general anticipate, and it's helpful to have some processes in place to deal with such changes. The proposed scheme with vanguard.zi, main.zi, and rearguard.zi is an attempt to supply such a process: it provides rearguard.zi for downstream users who want to put off changes for as long as possible, and vanguard.zi for downstream users who want to try new features ASAP. Both classes of users have commented in this thread.