asimov-http 25.9.0

HTTP message integrity and shared client proxy configuration
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.97.1"
name = "asimov-http"
version = "25.9.0"
authors = ["ASIMOV Systems <support@asimov.systems>"]
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "HTTP message integrity and shared client proxy configuration"
homepage = "https://sdk.asimov.sh"
readme = "README.md"
keywords = [
    "asimov",
    "sdk",
    "ai",
    "osint",
]
categories = []
license = "Unlicense"
repository = "https://github.com/asimov-platform/asimov.rs"
resolver = "2"

[package.metadata.readme]
title = "ASIMOV.rs: HTTP Support"

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

[features]
all = ["integrity"]
default = [
    "all",
    "std",
]
hyper = [
    "system-proxy",
    "dep:http",
    "dep:hyper-util",
    "hyper-util/client-proxy",
]
integrity = [
    "std",
    "dep:thiserror",
    "dep:iroh-base",
    "dep:bs58",
    "dep:bytes",
    "bytes/std",
    "dep:getrandom",
    "dep:http",
    "dep:http-body",
    "dep:sfv",
    "dep:url",
]
proxy = [
    "dep:thiserror",
    "dep:url",
]
reqwest = [
    "system-proxy",
    "dep:reqwest",
    "reqwest/socks",
    "dep:tokio",
    "tokio/rt",
]
std = [
    "base64/std",
    "sha2/std",
    "thiserror?/std",
    "bytes?/std",
    "url?/std",
]
system-proxy = [
    "std",
    "proxy",
    "dep:plist",
    "dep:proxy-watch",
    "dep:system-configuration",
    "dep:windows-registry",
]

[lib]
name = "asimov_http"
path = "src/lib.rs"

[[example]]
name = "client"
path = "examples/client.rs"
required-features = ["integrity"]

[[example]]
name = "server"
path = "examples/server.rs"
required-features = ["integrity"]

[[test]]
name = "conformance"
path = "tests/conformance.rs"

[[test]]
name = "digest"
path = "tests/digest.rs"

[[test]]
name = "streaming"
path = "tests/streaming.rs"

[dependencies.base64]
version = "0.23"
features = ["alloc"]
default-features = false

[dependencies.bs58]
version = "0.5"
features = ["alloc"]
optional = true
default-features = false

[dependencies.bytes]
version = "1.10"
optional = true
default-features = false

[dependencies.getrandom]
version = "0.4"
optional = true
default-features = false

[dependencies.http]
version = "1.5.0"
optional = true
default-features = false

[dependencies.http-body]
version = "1.1.0"
optional = true
default-features = false

[dependencies.hyper-util]
version = "0.1.21"
optional = true
default-features = false

[dependencies.iroh-base]
version = "1.2"
features = ["key"]
optional = true
default-features = false

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

[dependencies.sfv]
version = "0.15"
features = ["parsed-types"]
optional = true
default-features = false

[dependencies.sha2]
version = "0.10"
default-features = false

[dependencies.thiserror]
version = "2"
optional = true
default-features = false

[dependencies.tokio]
version = "1.53.3"
optional = true
default-features = false

[dependencies.url]
version = "2.5"
optional = true
default-features = false

[dev-dependencies.async-stream]
version = "0.3"
default-features = false

[dev-dependencies.http-body-util]
version = "0.1.5"
default-features = false

[dev-dependencies.hyper]
version = "1.12.0"
features = [
    "client",
    "server",
    "http1",
    "http2",
]
default-features = false

[dev-dependencies.hyper-util]
version = "0.1.21"
features = [
    "server-auto",
    "tokio",
]
default-features = false

[dev-dependencies.proxy-watch]
version = "0.3.1"
features = ["resolve"]
default-features = false

[dev-dependencies.rcgen]
version = "0.14"
features = [
    "crypto",
    "ring",
]
default-features = false

[dev-dependencies.rustls]
version = "0.23.46"
features = [
    "ring",
    "std",
    "tls12",
]
default-features = false

[dev-dependencies.rustls-platform-verifier]
version = "0.7.1"
default-features = false

[dev-dependencies.tempfile]
version = "3.20"
default-features = false

[dev-dependencies.tokio]
version = "1.53.3"
features = [
    "io-util",
    "macros",
    "rt",
    "net",
    "sync",
    "time",
]
default-features = false

[dev-dependencies.tokio-rustls]
version = "0.26.6"
default-features = false

[target.'cfg(any(windows, target_os = "linux"))'.dependencies.proxy-watch]
version = "0.3.1"
features = [
    "resolve",
    "linux-gnome",
    "linux-kde",
]
optional = true
default-features = false

[target.'cfg(target_os = "macos")'.dependencies.plist]
version = "1.10.1"
optional = true
default-features = false

[target.'cfg(target_os = "macos")'.dependencies.system-configuration]
version = "0.8.0"
optional = true
default-features = false

[target."cfg(windows)".dependencies.windows-registry]
version = "0.6.1"
optional = true
default-features = false