Programmer Reference : Time Zones : Time Zone Database
Time Zone Database
Calculations and transformations which take into account DST rely on time zone information (zoneinfo) provided by a time zone database to generate their results.
This time zone database is called by many names: the tz database, the zoneinfo database, the IANA (Internet Assigned Numbers Authority) Time Zone Database, or the Olson database (after the founding contributor Arthur David Olson). In this document time zone information will be shortened to zoneinfo.
Daylight Savings Time (DST) transitions vary from country to country. They have also varied historically over time. Zoneinfo is an attempt to capture all the rules for DST transitions across the globe and over time. More information is available at http://www.iana.org/time-zones.
Zoneinfo consists of binary time zone data (timeZoneRuleSets) stored in files with names which identify the time zone’s area and principal location (e.g. Eastern Standard Time is 'America/New_York'). Each timeZoneRuleSet consists of a series of timeZoneRules which describe DST transitions for that time zone. Zoneinfo is kept in a platform-dependent location.
Zoneinfo on Windows
Windows does not provide historical zoneinfo data; it maintains and updates only the two DST transitions for the current year. Since Windows does not provide all the required historical data, Instantiations ships current zoneinfo data with each release of VA Smalltalk.
To determine where the zoneinfo data has been installed, check the Kernel stanza of the ini file for the zoneinfoPath variable. For instance, if VA Smalltalk is installed in C:\Program Files\Instantiations\8.5, then the zoneinfo data will be in C:\Program Files\Instantiations\8.5\zoneinfo and the ini file will have this entry in the Kernel stanza:
zoneinfoPath=C:\Program Files\Instantiations\10.0\zoneinfo
The zoneinfo directory will have a file called version.txt with contents something like this:
Time Zone Data v. 2012c (Released 2012-03-27)
Zoneinfo on UNIX
On UNIX systems, zoneinfo is installed as part of the OS and is updated by system updates. These are the locations of zoneinfo on supported UNIX platforms:
Linux - /usr/share/zoneinfo
The VA Smalltalk install process leaves the zoneinfoPath blank in the Kernel stanza of the ini file. You should not change this path unless you want to use other than the default system zoneinfo. If you do need to override the system default,, you should alter the ini file so that it points to a directory that contains the zoneinfo data you want to use. For example:
zoneinfoPath=/usr/share/myZoneinfo
 
Last modified date: 02/17/2021