-
Notifications
You must be signed in to change notification settings - Fork 20
Open
Labels
C-tracking-issueIssues tracking a set of tasks that need to be doneIssues tracking a set of tasks that need to be doneprovidersRelated to time zone providersRelated to time zone providers
Milestone
Description
Using the (yet unpublished) resb crate, we should write a TimeZoneProvider that can load from zoneinfo64.res
bytes.
The format appears to be (see also: https://github.com/unicode-org/icu/blob/48597a4897e8cfea3aad5be7a4e8143c852876a5/icu4c/source/tools/tzcode/tz2icu.cpp#L164):
{
"Names": ["string"],
"Regions": ["string ISO region codes with some `001`"],
"Rules": { "regioncode": intvector },
"TzVersion": "string",
"Zones": [ integers,
// or
{
links?: intvector,
trans: intvector,
typeMap: binary data,
typeOffsets: intvector,
transPre32?: intvector,
transPost32?: intvector,
finalRaw?: integer,
finalRule?: String,
finalYear?: integer
}]
}
I don't yet know how that works, but code reading this can be found in https://github.com/unicode-org/icu/blob/48597a4897e8cfea3aad5be7a4e8143c852876a5/icu4c/source/i18n/timezone.cpp#L92
Filing issue now so that this work can be tracked.
Shane mentioned @nekevss was potentially looking into this.
Metadata
Metadata
Assignees
Labels
C-tracking-issueIssues tracking a set of tasks that need to be doneIssues tracking a set of tasks that need to be doneprovidersRelated to time zone providersRelated to time zone providers
Type
Projects
Status
Backlog