[package] name = "furumi-server" version = "0.3.1" edition = "2024" [dependencies] furumi-common = { path = "../furumi-common" } anyhow = "1.0.102" bytes = "1.11.1" clap = { version = "4.5.60", features = ["derive", "env"] } futures = "0.3.32" futures-core = "0.3.32" futures-util = "0.3.32" jsonwebtoken = "10.3.0" libc = "0.2.183" prost = "0.13.5" rustls = { version = "0.23.37", features = ["ring"] } thiserror = "2.0.18" tokio = { version = "1.50.0", features = ["full"] } tokio-stream = "0.1.18" tokio-util = { version = "0.7", features = ["io"] } tonic = { version = "0.12.3", features = ["tls"] } tracing = "0.1.44" tracing-subscriber = { version = "0.3.22", features = ["env-filter"] } async-stream = "0.3.6" async-trait = "0.1.89" prometheus = { version = "0.14.0", features = ["process"] } axum = { version = "0.7", features = ["tokio", "macros"] } once_cell = "1.21.3" rcgen = { version = "0.14.7", features = ["pem"] } symphonia = { version = "0.5", default-features = false, features = ["mp3", "aac", "flac", "vorbis", "wav", "alac", "adpcm", "pcm", "mpa", "isomp4", "ogg", "aiff", "mkv"] } opus = "0.3" ogg = "0.9" mime_guess = "2.0" tower = { version = "0.4", features = ["util"] } sha2 = "0.10" base64 = "0.22" serde = { version = "1", features = ["derive"] } serde_json = "1" openidconnect = "3.4" reqwest = { version = "0.12", default-features = false, features = ["rustls-tls"] } hmac = "0.12" rand = "0.8" [dev-dependencies] tempfile = "3.26.0"