[package] name = "fluxer-media-proxy" version = "0.1.0" edition.workspace = true license.workspace = true publish = false 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.104" axum = {version = "0.8.9", default-features = false, features = ["http1", "json", "query", "tokio"]} base64 = "0.23.1" bytes = "1.12.1" clap = {version = "4.6.7", features = ["derive"]} futures-util = {version = "0.3.34", default-features = false, features = ["std"]} hex = "0.4.3" hmac = "0.13.0" http = "1.5.0" http-body = "1.1.0" http-body-util = "0.1.5" hyper = {version = "1.11.1", default-features = false} libc = "0.2.189" moka = {version = "0.12.16", features = ["sync"]} parking_lot = "0.12.5" percent-encoding = "2.3.2" rand = "0.10.2" rand_chacha = "0.10.0" reqwest = {version = "0.13.5", default-features = false, features = ["json", "rustls", "stream"]} reqwest-middleware = "0.5.2" reqwest-retry = "0.9.1" serde = {version = "1.0.229", features = ["derive"]} serde_json = "1.0.151" sha2 = "0.11.0" tempfile = "3.27.0" thiserror = "2.0.20" tokio = {version = "1.53.1", features = ["fs", "io-util", "macros", "net", "rt-multi-thread", "signal", "sync", "time"]} tokio-util = {version = "0.7.19", features = ["io"]} tracing = "0.1.44" tracing-subscriber = {version = "0.3.23", features = ["fmt", "json"]} url = "2.5.8" wyhash = "0.6.0" [build-dependencies] cc = "1.4.6" pkg-config = "0.3.34" [dev-dependencies] criterion = "0.8.2" proptest = "1.11.0" tower = {version = "0.5.3", features = ["util"]}