[package]
edition = "2024"
name = "albatross"
version = "0.1.1"
authors = ["Callum Hopkins"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A composable HTTP server for Tower services built around pluggable connection acceptors."
documentation = "https://docs.rs/albatross"
readme = "README.md"
keywords = [
"web",
"http",
"https",
"server",
"acme",
]
categories = [
"web-programming",
"network-programming",
"asynchronous",
]
license = "MIT"
repository = "https://github.com/callum-hopkins-dev/albatross"
[package.metadata.docs.rs]
all-features = true
[features]
acme = [
"dep:rustls",
"dep:rustls-acme",
"dep:pin-project-lite",
"dep:futures-core",
"dep:tracing",
]
default = []
https-upgrade = [
"dep:pin-project-lite",
"dep:http-body-util",
"dep:bytes",
]
systemd = [
"dep:libsystemd",
"dep:pin-project-lite",
]
tls = [
"dep:rustls",
"dep:tokio-rustls",
"dep:pin-project-lite",
]
[lib]
name = "albatross"
path = "src/lib.rs"
[dependencies.bytes]
version = "1.11.1"
optional = true
[dependencies.futures-core]
version = "0.3.32"
optional = true
[dependencies.http]
version = "1.4.0"
[dependencies.http-body-util]
version = "0.1.3"
optional = true
[dependencies.hyper]
version = "1.8.1"
features = [
"http1",
"http2",
"server",
]
[dependencies.hyper-util]
version = "0.1.20"
features = [
"server-auto",
"server-graceful",
"service",
"tokio",
]
[dependencies.libsystemd]
version = "0.7.2"
optional = true
[dependencies.pin-project-lite]
version = "0.2.17"
optional = true
[dependencies.rustls]
version = "0.23.37"
optional = true
[dependencies.rustls-acme]
version = "0.15.1"
features = ["tokio"]
optional = true
[dependencies.socket2]
version = "0.6.3"
[dependencies.tokio]
version = "1.50.0"
features = [
"macros",
"net",
"rt",
"sync",
]
[dependencies.tokio-rustls]
version = "0.26.4"
optional = true
[dependencies.tower]
version = "0.5.3"
features = ["make"]
[dependencies.tracing]
version = "0.1.44"
optional = true
[dev-dependencies.axum]
version = "0.8.8"
features = ["tokio"]
default-features = false
[dev-dependencies.tokio]
version = "1.50.0"
features = [
"macros",
"rt-multi-thread",
]