On 2018-01-19 17:53, Paul Eggert wrote:
Android currently doesn't support time stamps after 2038, right? So another approach would be a hack to add a table that works for current Android while still matching the desired behavior, by listing explicit transitions for each year through 2037. Something like the attached, say. (I have not tested or installed this patch and it won't be in 2018c; I'm floating it here just as an idea.) The advantage of this latter approach is that Android would agree with post-2018c tzdb behavior (including tm_isdst flags) for all time stamps that Android currently supports.
A lot of the distros, their various libraries, and date/time utilities that support localization on ARM and other mobile, IoT, and other consumer embedded platforms that are updated regularly (e.g. STBs) still run signed 32 bit time_t systems. Some of the 32 bit kernels, libraries, and packages now support 64 bit time_t and are adding warnings when 32 bit time_t is configured/built. That means about 1.5G Android devices and about .5G Apple devices based on shipment volumes and supported update lifetimes. On the Linux side, 15M Raspberry Pis may be as many as all the other 32 bit Unix systems deployed that support localization and are still updateable. -- Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada