#format-duration #number-format #humanify-duration #easy-ready-duration

pretty-duration

Rust library that takes a duration and returns a string that is prettier to read for a human. The format of the duration can be customized in a short and long format and can be localized.

2 releases

0.1.1 Oct 28, 2022
0.1.0 Oct 28, 2022

#381 in Date and time

Download history 246/week @ 2024-12-14 472/week @ 2024-12-21 177/week @ 2024-12-28 388/week @ 2025-01-04 284/week @ 2025-01-11 255/week @ 2025-01-18 238/week @ 2025-01-25 224/week @ 2025-02-01 308/week @ 2025-02-08 381/week @ 2025-02-15 569/week @ 2025-02-22 202/week @ 2025-03-01 138/week @ 2025-03-08 191/week @ 2025-03-15 179/week @ 2025-03-22 245/week @ 2025-03-29

773 downloads per month
Used in 6 crates

Apache-2.0

17KB
269 lines

Humanify Duration

github crates.io docs.rs build status codecov

Rust library that takes a duration and returns a string that is prettier to read for a human

Consumer of the Library

Install

cargo add pretty-duration

How to use?

use pretty_duration::pretty_duration;
use std::time::Duration;
let result = pretty_duration(&Duration::from_millis(1), None);

As a Developer of the Library

Tests

cargo test

Tests Coverage

You must install few components before running coverage:

cargo install grcov
rustup component add llvm-tools-preview

Then, you can run:

export RUSTFLAGS="-Cinstrument-coverage"
cargo build
export LLVM_PROFILE_FILE="profile-%p-%m.profraw"
cargo test
grcov . -s . --binary-path ./target/debug/ -t html --branch --ignore-not-existing -o ./target/debug/coverage/

Further explanation in the Mozilla grcov website

Documentation

cargo doc --open

Publishing

cargo login
cargo publish --dry-run
cargo publish

No runtime deps