[tz] Wrong timezone Information provided

Matt Johnson-Pint mattjohnsonpint at gmail.com
Tue Oct 11 00:26:45 UTC 2022


> It would not be too hard to convert from tz to MS reg data to provide
correct times in earlier years.

Actually, it's quite a pain.  The registry format presumes there are always
exactly either zero or two DST transitions in every year.  All kinds of
workarounds are in place to deal with edge cases like standard time
changing mid-year or DST ending permanently, etc.  Not to mention time
zones with 3 or 4 transitions, such as for Ramadan - which the OS has to
handle special.

Also, you'll find that the decisions about which time zones are grouped
together start to get fuzzy as you go back in time.  If you were to try to
fill in the older data for all entries, you'd eventually encounter two
differing IANA zones that are grouped under the same Windows zone, and
you'd need a new Windows zone to split them apart.  The 1970 rule we have
in tzdata is 2010 in the Windows data.


On Fri, Oct 7, 2022 at 11:03 AM Brian Inglis via tz <tz at iana.org> wrote:

> On 2022-10-06 14:25, Brooks Harris via tz wrote:
> > On 2022-10-06 4:07 PM, Paul Eggert wrote:
>
> >> Yes, as I understand it Microsoft Windows 8.1 and later has data
> >> derived from tzdb in its Windows Runtime / Universal Windows Platform
> >> classes.
>
> Uses MS port of tz code/data for UWP Store apps.
>
> > The time zone information resides in the Windows Registry, at
> > HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time
> Zones
>
> Used by native MS Windows libraries and apps: MS do their own thing
> here. It would not be too hard to convert from tz to MS reg data to
> provide correct times in earlier years.
>
> Windows dynamic time zones may have been added to support the EU 2006
> and/or US 2007 changes, and new data is now added for other zones.
> The earliest dynamic zone I can find is for Cuba 2003.
>
> Base data is static current e.g. Cuba Standard Time
>
> Display (REG_SZ) = "(UTC-05:00) Havana"
> Std (REG_SZ) = "Cuba Standard Time"
> Dlt (REG_SZ) = "Cuba Summer Time"
> MUI_Display (REG_SZ) = "@tzres.dll,-2430"
> MUI_Dlt (REG_SZ) = "@tzres.dll,-2431"
> MUI_Std (REG_SZ) = "@tzres.dll,-2432"
> TZI (REG_BINARY) = 2c 01 00 00 00 00 00 00
>
> but some zones also support 'Dynamic DST' e.g.
>
> FirstEntry (REG_DWORD) = 0x000007d3 (2003)
> LastEntry (REG_DWORD) = 0x000007dd (2013)
> 2003 (REG_BINARY) = 2c 01 00 00 00 00 00 00
> 2004 (REG_BINARY) = 2c 01 00 00 00 00 00 00
> 2005 (REG_BINARY) = f0 00 00 00 00 00 00 00
> 2006 (REG_BINARY) = 2c 01 00 00 00 00 00 00
> 2007 (REG_BINARY) = 2c 01 00 00 00 00 00 00
> 2008 (REG_BINARY) = 2c 01 00 00 00 00 00 00
> 2009 (REG_BINARY) = 2c 01 00 00 00 00 00 00
> 2010 (REG_BINARY) = 2c 01 00 00 00 00 00 00
> 2011 (REG_BINARY) = 2c 01 00 00 00 00 00 00
> 2012 (REG_BINARY) = 2c 01 00 00 00 00 00 00
> 2013 (REG_BINARY) = 2c 01 00 00 00 00 00 00
>
> --
> Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada
>
> This email may be disturbing to some readers as it contains
> too much technical detail. Reader discretion is advised.
> [Data in binary units and prefixes, physical quantities in SI.]
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mm.icann.org/pipermail/tz/attachments/20221010/1c5c2957/attachment.html>


More information about the tz mailing list