httpsd 0.1.0

A pure-Rust HTTP/HTTPS server — usable as a sans-I/O library with pluggable runtimes (thread pool, tokio, mio) or as a CLI that serves a directory or a TOML config.
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.88"
name = "httpsd"
version = "0.1.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A pure-Rust HTTP/HTTPS server — usable as a sans-I/O library with pluggable runtimes (thread pool, tokio, mio) or as a CLI that serves a directory or a TOML config."
readme = "README.md"
keywords = [
    "http",
    "https",
    "server",
    "tls",
    "sans-io",
]
categories = [
    "network-programming",
    "web-programming::http-server",
]
license = "MIT"
repository = "https://github.com/KarpelesLab/httpsd"

[package.metadata.docs.rs]
all-features = true

[features]
acme = [
    "tls",
    "dep:rsurl",
]
cli = [
    "config",
    "rt-threadpool",
]
compress = ["dep:compcol"]
config = [
    "dep:serde",
    "dep:toml",
]
default = [
    "cli",
    "rt-threadpool",
    "tls",
    "compress",
    "h2",
    "h3",
]
h2 = [
    "tls",
    "dep:compcol",
    "compcol/hpack",
]
h3 = [
    "tls",
    "dep:compcol",
    "compcol/qpack",
    "compcol/hpack",
]
rt-mio = ["dep:mio"]
rt-threadpool = []
rt-tokio = ["dep:tokio"]
tls = ["dep:purecrypto"]

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

[[bin]]
name = "httpsd"
path = "src/bin/httpsd.rs"
required-features = ["cli"]

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

[dependencies.compcol]
version = "0.6.5"
features = [
    "std",
    "gzip",
    "deflate",
    "zlib",
]
optional = true
default-features = false

[dependencies.mio]
version = "1"
features = [
    "os-poll",
    "net",
]
optional = true

[dependencies.purecrypto]
version = "0.6.25"
optional = true

[dependencies.rsurl]
version = "0.1.2"
optional = true

[dependencies.serde]
version = "1"
features = ["derive"]
optional = true

[dependencies.tokio]
version = "1"
features = [
    "rt",
    "rt-multi-thread",
    "net",
    "io-util",
    "macros",
]
optional = true

[dependencies.toml]
version = "0.8"
optional = true

[dev-dependencies.compcol]
version = "0.6.5"
features = [
    "std",
    "gzip",
]
default-features = false

[dev-dependencies.purecrypto]
version = "0.6.25"