[package]
edition = "2018"
name = "gotham"
version = "0.8.1"
authors = [
"Shaun Mangelsdorf <s.mangelsdorf@gmail.com>",
"Colin Bankier <colinbankier@gmail.com>",
"Dominic Meiser <git@msrd0.de>",
"Isaac Whitfield <iw@whitfin.io>",
"Judson Lester <nyarly@gmail.com>",
"Bradley Beddoes <bradleybeddoes@gmail.com>",
]
build = false
exclude = ["src/tls/tls_new_cert.sh"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A flexible web framework that promotes stability, safety, security and speed."
homepage = "https://gotham.rs/"
readme = "README.md"
keywords = [
"http",
"async",
"web",
"framework",
"server",
]
categories = ["web-programming::http-server"]
license = "MIT/Apache-2.0"
repository = "https://github.com/gotham-rs/gotham"
resolver = "2"
[package.metadata.docs.rs]
all-features = true
[features]
__tls = ["dep:tokio-rustls"]
default = [
"derive",
"http2",
"session",
"testing",
]
derive = ["dep:gotham_derive"]
full = [
"derive",
"http2",
"rustls",
"session",
"testing",
]
http2 = [
"hyper/http2",
"hyper-util/http2",
]
rustls = ["rustls-aws-lc-rs"]
rustls-aws-lc-rs = [
"__tls",
"tokio-rustls/aws-lc-rs",
]
rustls-ring = [
"__tls",
"tokio-rustls/ring",
]
session = [
"dep:bincode",
"linked-hash-map",
]
testing = ["hyper/client"]
[lib]
name = "gotham"
path = "src/lib.rs"
[[bench]]
name = "file_handler"
path = "benches/file_handler.rs"
harness = false
[dependencies.anyhow]
version = "1.0.5"
[dependencies.base64]
version = "0.22"
[dependencies.bincode]
version = "1.0"
optional = true
[dependencies.borrow-bag]
version = "1.1.1"
[dependencies.bytes]
version = "1.0"
[dependencies.cookie]
version = "0.18"
[dependencies.futures-util]
version = "0.3.14"
[dependencies.gotham_derive]
version = "0.8.1"
optional = true
[dependencies.http]
version = "1"
[dependencies.http-body]
version = "1"
[dependencies.http-body-util]
version = "0.1"
[dependencies.httpdate]
version = "1.0"
[dependencies.hyper]
version = "1"
features = [
"http1",
"server",
]
[dependencies.hyper-util]
version = "0.1"
features = [
"client",
"client-legacy",
"http1",
"server",
"service",
]
[dependencies.linked-hash-map]
version = "0.5.6"
optional = true
[dependencies.log]
version = "0.4"
[dependencies.mime]
version = "0.3.15"
[dependencies.mime_guess]
version = "2.0.5"
[dependencies.num_cpus]
version = "1.8"
[dependencies.percent-encoding]
version = "2.1"
[dependencies.pin-project]
version = "1.0.0"
[dependencies.rand]
version = "0.9"
[dependencies.rand_chacha]
version = "0.9"
[dependencies.regex]
version = "1.0"
[dependencies.serde]
version = "1.0.186"
features = ["derive"]
[dependencies.thiserror]
version = "2.0.18"
[dependencies.time]
version = "0.3.4"
features = [
"std",
"formatting",
"macros",
]
default-features = false
[dependencies.tokio]
version = "1.11.0"
features = [
"net",
"rt-multi-thread",
"time",
"fs",
"io-util",
]
[dependencies.tokio-rustls]
version = "0.26"
features = [
"logging",
"tls12",
]
optional = true
default-features = false
[dependencies.tower-service]
version = "0.3"
[dependencies.uuid]
version = "1.0"
features = ["v4"]
[dev-dependencies.criterion]
version = "0.5.1"
features = [
"cargo_bench_support",
"plotters",
"rayon",
"async_futures",
"async_tokio",
]
[dev-dependencies.futures-executor]
version = "0.3.14"
[dev-dependencies.reqwest]
version = "0.13"
default-features = false
[dev-dependencies.tempfile]
version = "3.10.1"
[dev-dependencies.tokio]
version = "1.11.0"
features = [
"macros",
"test-util",
]