• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1This directory contains tooling to help when debugging time zone issues on
2Android.
3
4dump-tzdata.py
5 - A tool that takes a tzdata file and splits it into component tzfiles,
6   zone.tab, etc. Run it with --help for usage. The individual tzfiles can
7   be inspected with tools like zdump, for example with "zdump -V <tzfile>"
8
9   It also dumps human-readable CSV files of the (v1) content currently used by
10   Android's ZoneInfo class. These can be inspected and compared with dumps from
11   other tzdata files easily using your favourite text diffing tool.
12
13visualize_zone_trees.py
14  - A tool that visualizes time zones, specifically when time zones "sync up"
15    (i.e. stop being distinct). Time zone IDs are created in the tzdb whenever
16    there is a distinction between time zones, e.g. if a sub-region moved
17    from being the same as one major region to be the same as a different major
18    region, then a new time zone ID is required to represent the sub-region's
19    behavior because neither of the IDs for the major region describe the time
20    zone behavior of the sub-region throughout time. Once created, zone IDs
21    persist in the tzdb forever. Zone trees are used to determine if zone IDs
22    are still needed in order to represent relevant distinctions, e.g. does
23    Android still need to offer a choice between two zones that will be the
24    same from time X until the end of time? If the answer is no, one of the
25    zones can be used / shown to users and the other need not be.
26