[package]
edition = "2024"
rust-version = "1.85"
name = "solti-api"
version = "0.0.2"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Solti SDK HTTP/JSON and gRPC API layer."
homepage = "https://github.com/soltiHQ/sdk"
readme = "README.md"
keywords = [
"async",
"tasks",
"supervisor",
"orchestration",
"solti",
]
categories = [
"asynchronous",
"concurrency",
]
license = "Apache-2.0"
repository = "https://github.com/soltiHQ/sdk"
resolver = "2"
[package.metadata.docs.rs]
all-features = true
[features]
default = []
grpc = [
"dep:tonic",
"dep:tonic-prost",
"dep:prost",
]
http = [
"dep:axum",
"dep:pbjson",
"dep:prost",
"dep:serde_json",
"dep:tower-http",
]
tls = [
"dep:solti-tls",
"tonic?/tls-ring",
]
[lib]
name = "solti_api"
path = "src/lib.rs"
[[test]]
name = "http_integration"
path = "tests/http_integration.rs"
[dependencies.async-trait]
version = "0.1.89"
[dependencies.axum]
version = "0.8.9"
optional = true
[dependencies.pbjson]
version = "0.9.0"
optional = true
[dependencies.prost]
version = "0.14.3"
optional = true
[dependencies.serde]
version = "1.0.228"
features = [
"derive",
"derive",
]
[dependencies.serde_json]
version = "1.0.149"
optional = true
[dependencies.solti-core]
version = "0.0.2"
[dependencies.solti-model]
version = "0.0.2"
[dependencies.solti-tls]
version = "0.0.2"
optional = true
[dependencies.thiserror]
version = "2.0.18"
[dependencies.tokio-stream]
version = "0.1.18"
features = ["sync"]
[dependencies.tonic]
version = "0.14.6"
optional = true
[dependencies.tonic-prost]
version = "0.14.6"
optional = true
[dependencies.tower-http]
version = "0.6.10"
features = ["limit"]
optional = true
[dependencies.tracing]
version = "0.1.44"
[dev-dependencies.base64]
version = "0.22.1"
[dev-dependencies.bytes]
version = "1.11.1"
[dev-dependencies.http-body-util]
version = "0.1.3"
[dev-dependencies.rcgen]
version = "0.14.8"
[dev-dependencies.tokio]
version = "1.52.3"
features = [
"macros",
"rt",
]
[dev-dependencies.tower]
version = "0.5.3"
features = ["util"]
[build-dependencies.pbjson-build]
version = "0.9.0"
[build-dependencies.protoc-bin-vendored]
version = "3.2.0"
[build-dependencies.tonic-prost-build]
version = "0.14.6"