[package]
edition = "2024"
name = "fastcgi-client"
version = "0.11.0"
authors = ["jmjoy <jmjoy@apache.org>"]
build = false
exclude = ["/docs"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Fastcgi client implemented for Rust."
readme = "README.md"
keywords = [
"fastcgi",
"fcgi",
"client",
"tokio",
"php",
]
license = "Apache-2.0"
repository = "https://github.com/jmjoy/fastcgi-client-rs"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
default = []
http = ["dep:http"]
runtime-smol = ["dep:smol"]
runtime-tokio = [
"dep:tokio",
"dep:tokio-util",
]
[lib]
name = "fastcgi_client"
path = "src/lib.rs"
[[example]]
name = "axum_proxy_server"
path = "examples/axum_proxy_server.rs"
required-features = [
"http",
"runtime-tokio",
]
[[example]]
name = "smol_keep_alive"
path = "examples/smol_keep_alive.rs"
required-features = ["runtime-smol"]
[[example]]
name = "smol_short_connection"
path = "examples/smol_short_connection.rs"
required-features = ["runtime-smol"]
[[example]]
name = "tokio_keep_alive"
path = "examples/tokio_keep_alive.rs"
required-features = ["runtime-tokio"]
[[example]]
name = "tokio_short_connection"
path = "examples/tokio_short_connection.rs"
required-features = ["runtime-tokio"]
[[example]]
name = "tokio_stream_response"
path = "examples/tokio_stream_response.rs"
required-features = ["runtime-tokio"]
[[test]]
name = "client_get"
path = "tests/client_get.rs"
[[test]]
name = "client_multi"
path = "tests/client_multi.rs"
[[test]]
name = "client_post"
path = "tests/client_post.rs"
[[test]]
name = "common"
path = "tests/common.rs"
[[bench]]
name = "async_client_bench"
path = "benches/async_client_bench.rs"
[[bench]]
name = "common"
path = "benches/common.rs"
[dependencies.bytes]
version = "1.11.1"
[dependencies.futures-core]
version = "0.3.32"
default-features = false
[dependencies.futures-io]
version = "0.3.32"
[dependencies.futures-util]
version = "0.3.32"
features = [
"alloc",
"std",
"io",
]
default-features = false
[dependencies.http]
version = "1.3.1"
optional = true
[dependencies.smol]
version = "2.0.2"
optional = true
[dependencies.thiserror]
version = "2.0.18"
[dependencies.tokio]
version = "1.50.0"
features = ["io-util"]
optional = true
[dependencies.tokio-util]
version = "0.7.18"
features = ["compat"]
optional = true
[dependencies.tracing]
version = "0.1.44"
[dev-dependencies.axum]
version = "0.8.4"
[dev-dependencies.smol]
version = "2.0.2"
[dev-dependencies.tokio]
version = "1.50.0"
features = ["full"]
[dev-dependencies.tracing-subscriber]
version = "0.3.23"