resonite 0.3.0

Resonite's API in rust
Documentation
[package]
name = "resonite"
version = "0.3.0"
edition = "2021"
license = "MPL-2.0"
authors = ["ljoonal"]
description = "Resonite's API in rust"
repository = "https://github.com/onlivfe/resonite_rs"
documentation = "https://docs.rs/resonite"
keywords = ["resonite", "api", "socialvr"]
categories = ["api-bindings", "games"]

include = ["src", "Cargo.toml", "LICENSE", "README.md"]

[badges]
maintenance = { status = "experimental" }

[lib]
name = "resonite"
path = "src/lib.rs"
crate-type = ["lib", "dylib"]

[[bin]]
name = "auth-helper"
path = "src/bin/auth-helper.rs"
test = false
bench = false

[features]
default = []
http_client = ["tokio", "governor", "reqwest", "racal/reqwest", "async-trait"]
signalr_client = ["http_client", "tokio", "ezsockets", "tokio-stream", "http", "tokio-tungstenite", "async-trait"]
rand_util = ["nanorand"]

[dependencies]
serde = { version = "1.0.204", features = ["derive"] }
serde_with = { version = "3.9.0", features = ["json", "time_0_3"] }
serde_json = { version = "1.0.120" }
time = { version = "0.3.36", default-features = false, features = [
  "serde-well-known",
] }
strum = { version = "0.26.3", features = ["derive"] }

# API client specifics
racal = "0.4.0"
#racal = { path = "../racal", features = ["reqwest"] }

nanorand = { version = "0.7.0", optional = true }

governor = { version = "0.6.3", optional = true }

tokio = { version = "1.39.2", optional = true, features = ["macros"]}
tokio-stream = { version = "0.1.15", optional = true}
http = { version = "1.1.0", optional = true }
async-trait = { version = "0.1.81", optional = true }
# Required to be defined by us since ezsockets doesn't expose a TLS feature
tokio-tungstenite = {version = "0.23.1", optional= true, default-features = false, features = ["rustls-tls-webpki-roots"] }

[dependencies.reqwest]
optional = true
version = "0.12.5"
default-features = false
features = ["json", "rustls-tls"]

[dependencies.ezsockets]
optional = true
version = "0.6.2"
default-features = false
features = ["client", "native_client", "rustls"]

[dev-dependencies]
tokio-test = "0.4.4"
tokio = { version = "1.39.2", features = ["rt", "macros"] }

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

[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(nightly)'] }