[package] name = "apisdk" version = "0.0.16" edition = "2021" license = "MIT OR Apache-2.0" description = "An easy-to-use API toolkit for writing HTTP API Clients for Rust." categories = ["network-programming", "web-programming::http-client"] repository = "https://github.com/zhengcan/apisdk-rs" keywords = ["http", "restful", "reqwest", "api"] readme = "../README.md" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [lib] doctest = false [features] default = [] uuid = ["dep:uuid"] dns = ["dep:hickory-resolver"] tracing = ["dep:tracing", "dep:reqwest-tracing"] [dependencies] apisdk-macros = { version = "0.0.16", path = "../apisdk-macros" } async-trait = "0.1" futures = "0.3" http = "1.1" url = "2.5" reqwest = { version = "0.12", features = ["json", "multipart"] } reqwest-middleware = { version = "0.3", features = ["json", "multipart"] } reqwest-tracing = { version = "0.5", optional = true } hickory-resolver = { version = "0.24", optional = true } hyper = "1.4" hyper-util = "0.1" tower-service = "0.3" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" quick-xml = { version = "0.36", features = ["serialize"] } regex = "1.10" lazy_static = "1.5" nanoid = "0.4" uuid = { version = "1.10", features = ["v4"], optional = true } base64 = "0.22" md-5 = "0.10" sha1 = { version = "0.10", features = ["asm"] } sha2 = "0.10" hex = "0.4" rand = "0.8" thiserror = "1.0" anyhow = "1.0" log = "0.4" tracing = { version = "0.1", optional = true } [target.'cfg(target_arch = "x86_64")'.dependencies] md-5 = { version = "0.10", features = ["asm"] } [dev-dependencies] tokio = { version = "1", features = ["full"] } futures = "0.3" warp = "0.3" reqwest-tracing = { version = "0.5", features = ["opentelemetry_0_24"] } tracing = "0.1" tracing-log = "0.2" tracing-subscriber = "0.3" # tracing-opentelemetry = "0.26" # opentelemetry = "0.26"