make timezone csv file C/C++ compatible
The timezone database file "date_time_zonespec.csv" is
used for the boost date/time library, and is nominally
intended to be read as a data file, by boost code, and
possibly also by Excel or similar software. Because
the file consists of quoted Ansi character strings, it
could also be treated like an initialization value for
a char *str[] string array, and used via an #include.
However, since the data lines do not end with a comma,
the last field of each line will get compile-time
concatenated with the first field of the next line,
thus thwarting this usage.
I propose that either (1) the file be changed to add a
comma at the end of each line, or (2) the file be
changed to add an empty "" string as an extra (dummy)
field at the end of each line. Method (2) has the
advantage of remaining CSV file compatible, while still
being a valid list of quoted strings for char *str[]
string array. The dummy zero-length string at the end
of each line would be compile-time concatenated with
the first field of the next line, effectively
eliminating it.
Method (1) has the advantage of not adding an extra
dummy field.
As used by the boost code, the CSV parser would have to
be modified to simply ignore the last (dummy) field or
the trailing comma, whichever was implemented.
Change History
(3)
Component: |
None → date_time
|
Severity: |
→ Problem
|
Description: |
modified (diff)
|
Owner: |
changed from az_sw_dude to James E. King, III
|
Status: |
assigned → new
|
Resolution: |
None → wontfix
|
Status: |
new → closed
|
Resolving wontfix due to lack of any additional comment or support for the idea. The tz database is flawed anyway, since if time zones change and then you apply timezone processing, it should apply the timezone rule that was in force at the time, not the current rule. Right now only the current rule is applied. So there is a github issue tracking changes here.
https://github.com/boostorg/date_time/issues/67