Files
SpotiFLAC-Mobile/rust_backend/Cargo.toml
T

73 lines
2.7 KiB
TOML

[workspace]
members = ["crates/core", "crates/network", "crates/providers", "crates/extensions", "crates/mobile", "crates/bindgen"]
resolver = "3"
[workspace.package]
version = "0.1.0"
edition = "2024"
rust-version = "1.98.1"
license = "MIT"
publish = false
[workspace.dependencies]
image = { version = "=0.25.10", default-features = false, features = ["jpeg", "png", "gif", "webp"] }
spotiflac-core = { path = "crates/core" }
spotiflac-extensions = { path = "crates/extensions" }
spotiflac-network = { path = "crates/network" }
spotiflac-providers = { path = "crates/providers" }
rquickjs = { version = "=0.13.0", features = ["bindgen"] }
base64 = "0.23"
sha2 = "0.11"
sha1 = "0.11"
md-5 = "0.11"
hmac = "0.13"
aes-gcm = "=0.11.1"
aes = { version = "=0.9.3", features = ["zeroize"] }
blowfish = { version = "=0.10.0", features = ["zeroize"] }
zeroize = "1.8"
getrandom = "0.4"
tempfile = "3.27"
zip = { version = "=8.6.0", default-features = false, features = ["deflate-flate2-zlib-rs"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = { version = "1.0", features = ["float_roundtrip", "raw_value"] }
thiserror = "2.0"
uniffi = { version = "=0.32.1", default-features = false }
tokio = { version = "=1.53.1", features = ["rt-multi-thread", "net", "time", "sync", "io-util", "macros"] }
hyper = { version = "=1.11.1", features = ["client", "http1", "http2"] }
hyper-util = { version = "=0.1.20", features = ["client-legacy", "http1", "http2", "tokio"] }
hyper-rustls = { version = "=0.27.9", default-features = false, features = ["http1", "http2", "ring", "tls12"] }
rustls = { version = "0.23", default-features = false, features = ["ring", "std", "tls12"] }
rustls-native-certs = "=0.8.4"
rustls-platform-verifier = "=0.7.0"
rustls-pemfile = "2.2"
http = "1.4"
http-body-util = "0.1"
bytes = "1.11"
futures-util = "0.3"
tokio-util = { version = "0.7", features = ["io"] }
async-compression = { version = "0.4", features = ["tokio", "gzip"] }
tower-service = "0.3"
hickory-proto = { version = "=0.26.3", default-features = false, features = ["std"] }
cookie = "0.18"
url = "2.5"
regex = "=1.13.1"
scraper = { version = "=0.27.0", default-features = false }
# Keep the parser compatible with scraper's HtmlTreeSink implementation.
html5ever = "=0.39.0"
# Match the Unicode 15 tables used by the Go backend's title/artist matching.
unicode-normalization = "=0.1.22"
unicode-general-category = "=0.6.0"
time = { version = "=0.3.55", features = ["parsing"] }
chrono = { version = "=0.4.45", default-features = false, features = ["clock"] }
tz-rs = "=0.7.3"
httpdate = "=1.0.3"
cap-std = "=4.0.3"
rustix = { version = "=1.1.4", features = ["fs"] }
[workspace.lints.rust]
unsafe_code = "deny"
[profile.release]
lto = "thin"
codegen-units = 1