Skip to content

Commit 2dad62b

Browse files
authored
docs(dcjanus-preferences): 补充 Rust 时间库选型偏好 (#95)
## Why 明确 Rust 项目选择日期与时间库时的默认方向和适用边界,避免将 Chrono 的维护信号误解为必须立即迁移。 ## What - 新应用默认优先选择 Jiff,特别是涉及 IANA 时区、DST、日历跨度和时区无损序列化的场景。 - 保留 Chrono 在既有项目、上下游公共 API 依赖和性能实测更优场景中的合理使用,并提示 Jiff 1.0 前的公共 API 稳定性风险。
1 parent 56dff35 commit 2dad62b

1 file changed

Lines changed: 2 additions & 0 deletions

File tree

  • skills/dcjanus-preferences/references

skills/dcjanus-preferences/references/rust.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
- tracing: 结构化的应用级诊断/追踪框架,适合异步系统的日志与链路诊断。
22
- tracing-subscriber: `tracing` 的订阅器实现与组合工具,适合将 tracing 事件输出到日志/外部系统。
33
- blake3: 默认 hash 算法选择,在无严格性能约束或需要密码学安全时优先使用;支持任意长度输出与并行 hash;不适用于用户密码存储与校验等场景。
4+
- jiff: 自己控制的新应用默认优先选择的日期与时间库,尤其适合 IANA 时区、DST、日历跨度、当地时间歧义处理,以及需要保留时区标识的序列化场景。若选用版本尚未达到 1.0,用于公共 library API 时需额外评估稳定性;性能敏感路径应按实际 workload 做 benchmark。
5+
- chrono: 不作为新项目的默认日期与时间库;当既有项目已稳定使用、上下游公共 API 依赖 Chrono,或实测性能更合适时继续使用,不因软弃用信号本身而进行无收益的紧急迁移。
46
- time: 日期与时间处理库,标准库兼容且支持 `no_std` 场景。
57
- clap: Rust 命令行参数解析库,适合构建 CLI 工具与子命令解析。
68
- serde: Rust 结构体序列化/反序列化框架,适合配置、网络传输、持久化等场景。

0 commit comments

Comments
 (0)