ferryman 0.2.1

Small L7 reverse proxy: prefix routing, per-upstream circuit breakers, active health checks, hot-reloaded TOML config, TLS termination.
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 = "2021"
rust-version = "1.88"
name = "ferryman"
version = "0.2.1"
authors = ["Bunty9"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Small L7 reverse proxy: prefix routing, per-upstream circuit breakers, active health checks, hot-reloaded TOML config, TLS termination."
homepage = "https://github.com/Bunty9/ferryman"
documentation = "https://docs.rs/ferryman"
readme = "README.md"
keywords = [
    "reverse-proxy",
    "proxy",
    "circuit-breaker",
    "hyper",
    "http",
]
categories = [
    "network-programming",
    "web-programming::http-server",
    "command-line-utilities",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/Bunty9/ferryman"

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

[[bin]]
name = "ferryman"
path = "src/main.rs"

[[example]]
name = "echo_upstream"
path = "examples/echo_upstream.rs"

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

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

[dependencies.anyhow]
version = "1"

[dependencies.arc-swap]
version = "1.7"

[dependencies.clap]
version = "4"
features = [
    "derive",
    "env",
]

[dependencies.ferryman-core]
version = "0.2.1"

[dependencies.http]
version = "1"

[dependencies.http-body-util]
version = "0.1"

[dependencies.hyper]
version = "1.5"
features = ["full"]

[dependencies.hyper-util]
version = "0.1"
features = ["full"]

[dependencies.metrics]
version = "0.24"

[dependencies.metrics-exporter-prometheus]
version = "0.16"
features = ["http-listener"]
default-features = false

[dependencies.metrics-util]
version = "0.19"
default-features = false

[dependencies.notify]
version = "6"

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

[dependencies.tokio]
version = "1.47"
features = ["full"]

[dependencies.tokio-rustls]
version = "0.26"
features = [
    "ring",
    "tls12",
    "logging",
]
default-features = false

[dependencies.toml]
version = "0.8"

[dependencies.tracing]
version = "0.1"

[dependencies.tracing-subscriber]
version = "0.3"
features = [
    "env-filter",
    "json",
]

[dev-dependencies.reqwest]
version = "0.12"
features = ["http2"]
default-features = false