Hello tzdata maintainers,
I would like to propose a feature enhancement for the zic compiler.
Currently, the NOS time zone rules are defined as:
Rule NOS 1970 2037 - Jan 27 23:43:01 2:0 SDST
Rule NOS 1970 2037 - Jan 28 0:51:01 0 S
Zone OS/NOS +7:0:0 NOS NO%s
Issue:
- The first rule enters DST at 23:43:01 with a +2 hour offset, moving local time to 01:43:01.
- The second rule is intended to revert to standard time at 00:51:01.
- Due to the offset, 00:51:01 local time never occurs, so the second rule will never trigger.
- This creates unreachable local times and may cause incorrect results in time calculations.
Proposal:
- Add validation in the zic command to detect DST rules where the offset causes the subsequent rule's local time to be unreachable.
- The validation could issue a warning or error to alert the author of potentially invalid rules.
- This would improve the robustness of time zone definitions and prevent subtle bugs in downstream applications.
Thank you for your consideration.
Best regards