#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

#7 in #format-duration

Download history 229/week @ 2024-12-03 206/week @ 2024-12-10 325/week @ 2024-12-17 408/week @ 2024-12-24 259/week @ 2024-12-31 337/week @ 2025-01-07 229/week @ 2025-01-14 259/week @ 2025-01-21 250/week @ 2025-01-28 220/week @ 2025-02-04 324/week @ 2025-02-11 611/week @ 2025-02-18 319/week @ 2025-02-25 156/week @ 2025-03-04 190/week @ 2025-03-11 129/week @ 2025-03-18

897 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