this post was submitted on 11 Feb 2025
15 points (94.1% liked)

Rust

6384 readers
125 users here now

Welcome to the Rust community! This is a place to discuss about the Rust programming language.

Wormhole

[email protected]

Credits

  • The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)

founded 2 years ago
MODERATORS
 

Jiff is a datetime library for Rust that encourages you to jump into the pit of success. The focus of this library is providing high level datetime primitives that are difficult to misuse and have reasonable performance.

And as a user of Jiff, I must say that it is very nice to use. Well thought out API, making date time handling less of a pain. So, nice work @[email protected]

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 5 points 1 week ago (3 children)

Jiff is a datetime library for Rust that encourages you to jump into the pit of success. The focus of this library is providing high level datetime primitives that are difficult to misuse and have reasonable performance. Jiff supports automatic and seamless integration with the Time Zone Database, DST aware arithmetic and rounding, formatting and parsing zone aware datetimes losslessly, opt-in Serde support and a whole lot more.

Jiff takes enormous inspiration from Temporal, which is a TC39 proposal to improve datetime handling in JavaScript.

[–] [email protected] 2 points 1 week ago (2 children)

While I think there is always something that can be improved, I don't like that we are getting a third major date time library alongside time and chrono.

https://xkcd.com/927/

[–] [email protected] 4 points 4 days ago

As the author of Jiff, I don't like it either. But I didn't see any other feasible way to improve Rust's datetime offering. (The sibling comment links to a more in depth answer.)

It would be better if there was one datetime library. It would be better if chrono had just been done "right" from the start. But it wasn't. So I can either go to the chrono maintainers and say, "please let me, a non-expert in datetimes, have full creative control over the project" or I can go build something on my own and, in the process, become an expert. Otherwise, we stay stuck in our local optimum.

As a fan of xkcd, this is probably least favorite xkcd. On the one hand, yes, it aptly expresses frustration. On the other, it's easy to use as a club against progress itself. Sometimes you need to start fresh to move the needle. Rust is a perfect example of that itself.

load more comments (1 replies)
load more comments (1 replies)