[package]
name = "ritlers"
version = "0.2.0"
edition = "2024"
description = "A task-length aware rate limiter"
readme = "README.md"
repository = "https://github.com/Florisheinen1/ritlers"
license = "MIT OR Apache-2.0"
keywords = ["rate-limiter", "rate-limit", "async"]
categories = ["web-programming::http-client", "concurrency", "asynchronous"]

[lints.rust]
unsafe_code = "forbid"

[package.metadata.docs.rs]
all-features = true

[features]
default = ["blocking"]
blocking = []
async = ["dep:tokio"]

[dependencies]
tokio = { version = "1.48.0", optional = true, features = ["rt", "sync", "time"] }

[dev-dependencies]
reqwest = "0.12.24"
serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.145"
tokio = { version = "1.48.0", features = ["rt", "sync", "time", "macros", "test-util", "rt-multi-thread"]}

[[example]]
name = "example_async"
required-features = ["async"]
[[example]]
name = "example_dogs"
required-features = ["async"]
