#时区 #日期时间 #时间 #区域 #日期 #转换

greg-tz

正在进行中:greg 时区数据

7 个版本

0.2.3 2024年2月9日
0.2.2 2024年1月1日
0.2.1 2023年8月29日
0.1.2 2023年4月1日
0.1.0 2022年10月14日

日期和时间 中排名 313

每月下载量 38

GPL-3.0 或更高版本

620KB
9K SLoC

C 7K SLoC // 0.2% comments AWK 1K SLoC // 0.2% comments Rust 735 SLoC // 0.1% comments Korn shell 690 SLoC // 0.1% comments Shell 32 SLoC // 0.1% comments

在编译时从 IANA 时区数据库生成时区数据

由于关于夏令时转换的规则通常以一些晦涩的规则定义,例如“10月20日或之后的最后一个星期日”,构建步骤使用 parse-zoneinfo crate 构建一系列具体的时间戳和与每个时区相关的偏移量。
不幸的是,这个有限的、具体的时间戳系列只覆盖了有限的时间段,尽管规则通常是定义了永恒。因为这个 crate 完全依赖于 parse-zoneinfo,它继承了那里的决定,即 限制在 1800 年到 2100 年之间。作为安慰,他们提供“并不一定建议依赖于如此遥远的未来的偏移量变化”。考虑到时区变更有时只是提前几天宣布,这是相当合理的。

最后,必须说,没有 parse-zoneinfo(它是 chrono 的一部分),这个 crate 以及扩展的 greg 都将不存在。

依赖项

~0.7–1.7MB
~33K SLoC