[package] name = "fluxer-media-proxy" version = "0.1.0" edition.workspace = true license.workspace = true build = "build.rs" [lib] name = "fluxer_media_proxy" path = "src/lib.rs" [[bin]] name = "fluxer-media-proxy" path = "src/main.rs" [[bench]] name = "core" harness = false [dependencies] fluxer_common = { path = "../fluxer_common" } anyhow = "1.0.102" axum = {version = "0.8.9", default-features = false, features = ["http1", "json", "query", "tokio"]} base64 = "0.22.1" bytes = "1.11.1" clap = {version = "4.6.1", features = ["derive"]} hex = "0.4.3" hmac = "0.13.0" http = "1.4.2" http-body = "1.0.1" http-body-util = "0.1.3" libc = "0.2.186" moka = {version = "0.12.15", features = ["sync"]} parking_lot = "0.12.5" percent-encoding = "2.3.2" rand = "0.10.1" rand_chacha = "0.10.0" reqwest = {version = "0.13.4", default-features = false, features = ["json", "rustls", "stream"]} reqwest-middleware = "0.5.2" reqwest-retry = "0.9.1" serde = {version = "1.0.228", features = ["derive"]} serde_json = "1.0.150" sha2 = "0.11.0" tempfile = "3.27.0" thiserror = "2.0.18" tokio = {version = "1.52.3", features = ["fs", "io-util", "macros", "net", "rt-multi-thread", "signal", "sync", "time"]} tokio-util = {version = "0.7.18", features = ["io"]} tracing = "0.1.44" tracing-subscriber = {version = "0.3.23", features = ["env-filter", "fmt", "json"]} url = "2.5.8" wyhash = "0.6.0" [build-dependencies] cc = "1.2.63" pkg-config = "0.3.33" [dev-dependencies] criterion = "0.8.2" proptest = "1.11.0" tower = {version = "0.5.3", features = ["util"]}