[package] name = "axum-strangler" version = "0.4.0" edition = "2021" license = "MIT OR Apache-2.0" description = "Strangler fig pattern utility crate for the Axum web framework" readme = "README.md" repository = "https://github.com/MidasLamb/axum-strangler" homepage = "https://github.com/MidasLamb/axum-strangler" [dependencies] hyper = { version = "0.14.20", features = ["client", "http2", "tcp"] } tower-service = "0.3.2" tokio-tungstenite = { version = "0.18.0", optional = true } tokio = { version = "1.20.0", default-features = false, features = [ "macros", ], optional = true } futures-util = { version = "0.3.21", features = ["futures-sink"] } hyper-tls = { version = "0.5.0", optional = true } tracing = { version = "0.1.36", optional = true } opentelemetry = { version = "0.18.0", optional = true } tracing-opentelemetry = { version = "0.18.0", optional = true } axum = { version = "0.6.0", optional = true } axum-core = "0.3.0" http = "0.2.8" async-trait = "0.1.58" sha-1 = "0.10.1" base64 = "0.13.1" [dev-dependencies] axum = { version = "0.6.0", features = ["ws"] } reqwest = "0.11.11" tokio = { version = "1.20.0", default-features = false, features = [ "macros", "rt-multi-thread", "signal", ] } tracing-subscriber = { version = "0.3", features = ["env-filter"] } wiremock = "0.5.15" [features] https = ["dep:hyper-tls"] websocket = ["dep:tokio", "dep:tokio-tungstenite"] websocket-native-tls = ["websocket", "tokio-tungstenite?/native-tls"] websocket-rustls-tls-native-roots = [ "websocket", "tokio-tungstenite?/rustls-tls-native-roots", ] websocket-rustls-tls-webpki-roots = [ "websocket", "tokio-tungstenite?/rustls-tls-webpki-roots", ] tracing-opentelemetry-text-map-propagation = [ "dep:tracing", "dep:opentelemetry", "dep:tracing-opentelemetry", ] nested-routers = ["dep:axum", "axum?/original-uri"] [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [[example]] name = "simple_server" required-features = ["websocket"]