Rustのjiff crateを眺めてみた
2024-08-09
Techこれ。
https://github.com/BurntSushi/jiff
Rustの日時ライブラリはchrono(とchrono-tz)が有名だが、新しく日時ライブラリを作った理由が
https://github.com/BurntSushi/jiff/blob/master/DESIGN.md
に詳しく書かれていて面白かった。
一番違うのはタイムゾーンデータの扱いで、jiffはOSがデータベースを持っていれば自動でそれを見て、なければバイナリに同梱したものを参照する。IANAのタイムゾーン情報は年に数回くらい更新されるそうなので、そのたびにバイナリを再コンパイルしてリリースし直すのは確かに筋が悪いかも。