|
|
|
|
@ -96,9 +96,9 @@ tonic-prost-build = "0.14.6"
|
|
|
|
|
protoc-bin-vendored = "3.2.0"
|
|
|
|
|
prost = "0.14.3"
|
|
|
|
|
prost-types = "0.14.3"
|
|
|
|
|
prost-reflect = "0.16.3"
|
|
|
|
|
prost-reflect = "0.16.4"
|
|
|
|
|
prost-reflect-build = "0.16.0"
|
|
|
|
|
prost-protovalidate = "0.4.0"
|
|
|
|
|
prost-protovalidate = "0.4.2"
|
|
|
|
|
|
|
|
|
|
# HTTP Framework
|
|
|
|
|
axum = { version = "0.8.9", features = ["macros", "ws"] }
|
|
|
|
|
@ -108,7 +108,7 @@ tower = { version = "0.5.3", features = [
|
|
|
|
|
"limit",
|
|
|
|
|
"load-shed",
|
|
|
|
|
] }
|
|
|
|
|
tower-http = { version = "0.6.10", features = [
|
|
|
|
|
tower-http = { version = "0.6.11", features = [
|
|
|
|
|
"trace",
|
|
|
|
|
"on-early-drop",
|
|
|
|
|
"compression-full",
|
|
|
|
|
@ -116,13 +116,13 @@ tower-http = { version = "0.6.10", features = [
|
|
|
|
|
"timeout",
|
|
|
|
|
"cors",
|
|
|
|
|
] }
|
|
|
|
|
hyper = { version = "1.9.0", default-features = false, features = [
|
|
|
|
|
hyper = { version = "1.10.1", default-features = false, features = [
|
|
|
|
|
"http1",
|
|
|
|
|
"http2",
|
|
|
|
|
"server",
|
|
|
|
|
"client",
|
|
|
|
|
] }
|
|
|
|
|
reqwest = { version = "0.13.3", default-features = false, features = [
|
|
|
|
|
reqwest = { version = "0.13.4", default-features = false, features = [
|
|
|
|
|
"json",
|
|
|
|
|
"cookies",
|
|
|
|
|
"query",
|
|
|
|
|
@ -130,7 +130,7 @@ reqwest = { version = "0.13.3", default-features = false, features = [
|
|
|
|
|
] }
|
|
|
|
|
|
|
|
|
|
# Database
|
|
|
|
|
sqlx = { version = "0.8.6", default-features = false, features = [
|
|
|
|
|
sqlx = { version = "0.9.0", default-features = false, features = [
|
|
|
|
|
"runtime-tokio",
|
|
|
|
|
"postgres",
|
|
|
|
|
"migrate",
|
|
|
|
|
@ -141,7 +141,7 @@ sqlx = { version = "0.8.6", default-features = false, features = [
|
|
|
|
|
] }
|
|
|
|
|
|
|
|
|
|
# Redis
|
|
|
|
|
redis = { version = "1.2.1", default-features = false, features = [
|
|
|
|
|
redis = { version = "1.2.2", default-features = false, features = [
|
|
|
|
|
"tokio-comp",
|
|
|
|
|
"connection-manager",
|
|
|
|
|
"streams",
|
|
|
|
|
@ -166,7 +166,7 @@ subtle = "2.6.1"
|
|
|
|
|
|
|
|
|
|
# Serialization
|
|
|
|
|
serde = { version = "1.0.228", features = ["derive"] }
|
|
|
|
|
serde_json = "1.0.149"
|
|
|
|
|
serde_json = "1.0.150"
|
|
|
|
|
serde_yaml = "0.9.34"
|
|
|
|
|
serde_ignored = "0.1.14"
|
|
|
|
|
toml = "1.1.2"
|
|
|
|
|
@ -176,12 +176,12 @@ bincode = { version = "2.0.1", features = ["serde"] }
|
|
|
|
|
|
|
|
|
|
# Caching
|
|
|
|
|
moka = { version = "0.12.15", features = ["future", "sync"] }
|
|
|
|
|
dashmap = "6.1.0"
|
|
|
|
|
dashmap = "6.2.1"
|
|
|
|
|
lru = "0.18.0"
|
|
|
|
|
|
|
|
|
|
# IDs & Crypto
|
|
|
|
|
nanoid = "0.5.0"
|
|
|
|
|
uuid = { version = "1.23.1", features = ["v4", "v5", "serde"] }
|
|
|
|
|
uuid = { version = "1.23.2", features = ["v4", "v5", "serde"] }
|
|
|
|
|
sqids = "0.4.2"
|
|
|
|
|
rand = "0.10.1"
|
|
|
|
|
rand_08 = { package = "rand", version = "0.8.6" }
|
|
|
|
|
@ -197,7 +197,7 @@ iana-time-zone = "0.1.65"
|
|
|
|
|
synctv-xiu = { path = "synctv-xiu", default-features = false }
|
|
|
|
|
|
|
|
|
|
# Object Storage
|
|
|
|
|
opendal = { version = "0.56.0", default-features = false, features = [
|
|
|
|
|
opendal = { version = "0.57.0", default-features = false, features = [
|
|
|
|
|
"executors-tokio",
|
|
|
|
|
"services-s3",
|
|
|
|
|
] }
|
|
|
|
|
@ -232,15 +232,15 @@ urlencoding = "2.1.3"
|
|
|
|
|
regex = "1.12.3"
|
|
|
|
|
paste = "1.0.15"
|
|
|
|
|
byteorder = "1.5.0"
|
|
|
|
|
http = "1.4.0"
|
|
|
|
|
garde = { version = "0.22.1", features = ["derive"] }
|
|
|
|
|
http = "1.4.1"
|
|
|
|
|
garde = { version = "0.23.0", features = ["derive"] }
|
|
|
|
|
zxcvbn = { version = "3.1.1", default-features = false }
|
|
|
|
|
|
|
|
|
|
# Monitoring
|
|
|
|
|
prometheus = { version = "0.14.0", features = ["process"] }
|
|
|
|
|
|
|
|
|
|
# Time
|
|
|
|
|
chrono = { version = "0.4.44", features = ["serde"] }
|
|
|
|
|
chrono = { version = "0.4.45", features = ["serde"] }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Kubernetes (in-cluster client for leader election & service discovery)
|
|
|
|
|
@ -271,7 +271,7 @@ handlebars = "6.4.1"
|
|
|
|
|
|
|
|
|
|
# Compression
|
|
|
|
|
flate2 = "1.1.9"
|
|
|
|
|
brotli = "8.0.2"
|
|
|
|
|
brotli = "8.0.3"
|
|
|
|
|
|
|
|
|
|
# Resilience
|
|
|
|
|
governor = "0.10.4"
|
|
|
|
|
@ -303,8 +303,8 @@ tokio-tungstenite = { version = "0.29.0", default-features = false, features = [
|
|
|
|
|
criterion = { version = "0.8.2", features = ["html_reports", "async_tokio"] }
|
|
|
|
|
|
|
|
|
|
# Allocators
|
|
|
|
|
tikv-jemallocator = "0.6.1"
|
|
|
|
|
mimalloc = { version = "0.1.50", features = ["v2"] }
|
|
|
|
|
tikv-jemallocator = "0.7.0"
|
|
|
|
|
mimalloc = { version = "0.1.52", features = ["v2"] }
|
|
|
|
|
|
|
|
|
|
# Internal workspace crates
|
|
|
|
|
synctv-proto = { path = "synctv-proto", default-features = false }
|
|
|
|
|
|