[package]
name = "janus_client"
description = "Client for Janus, the server powering ISRG's Divvi Up."
documentation = "https://docs.rs/janus_client"
edition.workspace = true
homepage.workspace = true
license.workspace = true
repository.workspace = true
rust-version.workspace = true
version.workspace = true

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[features]
ohttp = ["dep:ohttp", "dep:bhttp"]

[dependencies]
backoff = { workspace = true, features = ["tokio"] }
bhttp = { workspace = true, features = ["bhttp", "http"], optional = true }
derivative.workspace = true
http.workspace = true
itertools.workspace = true
janus_core.workspace = true
janus_messages.workspace = true
ohttp = { workspace = true, default-features = false, features = ["client", "rust-hpke"], optional = true }
prio.workspace = true
rand.workspace = true
reqwest = { workspace = true, features = ["json"] }
thiserror.workspace = true
tokio.workspace = true
tracing = { workspace = true }
url = { workspace = true }

[dev-dependencies]
assert_matches.workspace = true
hex-literal = { workspace = true }
janus_core = { workspace = true, features = ["test-util"] }
mockito = { workspace = true }
ohttp = { workspace = true, default-features = true }
tokio.workspace = true
tracing-log = { workspace = true }
tracing-subscriber = { workspace = true, features = ["std", "env-filter", "fmt"] }
