3 releases
0.1.2 | May 27, 2024 |
---|---|
0.1.1 | May 29, 2023 |
0.1.0 | May 29, 2023 |
#117 in Date and time
170 downloads per month
43KB
701 lines
stoicdreams_timestamp: TimeStamp, StopWatch, DateTime, and Time
About
This project was created after discovering a security vulnerability exists (found using cargo audit
) in the commonly used chrono cargo crate as of the then current version 0.4.24
. The only actual functionality we wanted at the time was to be able to get a time stamp of the current date and time in UTC for the purposes of saving to a SurrealDB database, and the ability to format our time stamps when displaying in various UI applications.
Goals / Features
- Store times down to the millisecond.
- Store data as 64 bit integer to ensure date storage within the range of humanities lifetime.
- Store data as signed integer to allow potential for supporting BC dates and times.
- Store DateTime values with 0 representing midnight 0 AD instead of the more commonly used Unix Epoch at midnight 1970 AD.
- Default string rendering for date and time is in UTC and follows the ISO 8601 standard.
- Added StopWatch and PreciseTime for tracking precise timings - typically for measuring and tracking performance.
Future Goals / Features
- Implement support for BC dates and times.
- Implement support for 128bit storage - using feature flag to enable.
Getting Started
Update your Cargo.toml
file to add the stoicdreams_timestamp
crate as a dependency.
[package]
name = "name_of_your_app"
version = "0.1.0"
edition = "2021"
[dependencies]
stoicdreams_timestamp = "0.1.2"
Use prelude for simple access to all structs and methods.
use stoicdreams_timestamp::prelude::*;
Other Recommended Tools
Crate | Install Command | Example Run Command |
---|---|---|
rustfmt | rustup component add rustfmt | cargo fmt |
clippy | rustup component add clippy | cargo clippy |
cargo-audit | cargo install cargo-audit | cargo audit |
Other Resources
Author
Erik Gassler - Stoic Dreams - Forging solutions for tomorrow's software development.
Support - Visit Stoic Dreams' GitHub Sponsor page if you would like to provide support to Stoic Dreams.
License
Dependencies
~0.3–1MB
~22K SLoC