[package]
edition = "2024"
name = "remoteit-api"
version = "0.14.1"
authors = ["Feriixu <remoteit-api.9iois@passmail.net>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A wrapper around the Remote.it GraphQL API, also implementing the custom request signing."
readme = "README.md"
keywords = [
"remoteit",
"api",
"wrapper",
"graphql",
"client",
]
categories = ["api-bindings"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/Feriixu/remoteit-api-wrapper-rs"
[package.metadata.docs.rs]
all-features = true
[features]
async = ["dep:reqwest"]
blocking = [
"dep:reqwest",
"reqwest/blocking",
]
credentials_loader = [
"dep:dirs",
"dep:config",
]
default = []
file_upload = [
"dep:reqwest",
"dep:tokio",
"dep:tokio-util",
"reqwest/multipart",
"reqwest/stream",
]
native-tls-vendored = ["reqwest/native-tls-vendored"]
[lib]
name = "remoteit_api"
path = "src/lib.rs"
[dependencies.base64]
version = "0.22.1"
[dependencies.bon]
version = "3.6.3"
[dependencies.chrono]
version = "0.4.38"
features = ["serde"]
[dependencies.config]
version = "0.15.11"
features = ["ini"]
optional = true
default-features = false
[dependencies.dirs]
version = "6.0.0"
optional = true
[dependencies.graphql_client]
version = "0.14.0"
[dependencies.hmac]
version = "0.13.0-pre.4"
[dependencies.reqwest]
version = "0.12.7"
features = [
"json",
"http2",
"default-tls",
]
optional = true
default-features = false
[dependencies.ring]
version = "0.17.8"
[dependencies.serde]
version = "1.0.208"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.125"
[dependencies.thiserror]
version = "2.0.12"
[dependencies.tokio]
version = "1.39.3"
features = ["fs"]
optional = true
default-features = false
[dependencies.tokio-util]
version = "0.7.11"
features = ["codec"]
optional = true
default-features = false
[dev-dependencies.tempfile]
version = "3.12.0"
[dev-dependencies.tokio]
version = "1.39.3"
features = [
"full",
"test-util",
]
[lints.clippy]
cargo = "warn"
pedantic = "warn"
[lints.clippy.missing_errors_doc]
level = "deny"
priority = -1
[lints.clippy.missing_panics_doc]
level = "deny"
priority = -1
[lints.rust]
missing_docs = "deny"