[package]
name = "ntrip-client"
version = "0.2.0"
license = "MPL-2.0"
authors = [
    "Guillaume W. Bres <guillaume.bressaix@gmail.com>",
    "Ryan Kurte <ryan@kurte.nz>"
]
description = "NTRIP client"
homepage = "https://github.com/nav-solutions"
repository = "https://github.com/nav-solutions/ntrip-client"
keywords = ["geo", "rtcm", "tcp", "tokio"]
categories = ["science", "science::geo"]
edition = "2021"
readme = "README.md"
exclude = ["tools/*"]

[package.metadata]
msrv = "1.82"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docrs", "--generate-link-to-definition"]

[features]
default = ["log", "clap", "serde"]

# Unlock client logs
log = ["dep:tracing", "dep:tracing-subscriber"]
clap = ["dep:clap"]
serde = ["dep:serde", "rtcm-rs/serde", "geoutils/serde"]

[dev-dependencies]
anyhow = "1"

[dependencies]
thiserror = "2"
base64 = "0.22"
rtcm-rs = "0.11"
futures = "0.3"
tokio = { version = "1.48", features = ["full"] }
strum = { version = "0.27.2", features = ["derive"] }
reqwest = { version = "0.12", features = ["rustls-tls"] }
http = "1.3"
tokio-rustls = "0.26"
rustls = "0.23.31"
webpki-roots = "1"
geoutils = "0.5"
isocountry = "0.3"

tracing = { version = "0.1.41", optional = true, features = ["log"] }
tracing-subscriber = { version = "0.3.17", optional = true, features = ["fmt", "env-filter"] }
clap = { version = "4.5", optional = true, features = ["derive", "env"] }
serde = { version = "1", optional = true, features = ["derive"] }

[[example]]
name = "simple-cli"
path = "examples/simple-cli.rs"
required-features = ["clap", "log"]

