[workspace] members = ["server", "crates/bft-json-crdt", "crates/source-map-gen"] resolver = "3" [workspace.dependencies] async-stream = "0.3" async-trait = "0.1.89" bytes = "1" chrono = { version = "0.4.44", features = ["serde"] } chrono-tz = "0.10" eventsource-stream = "0.2.3" futures = "0.3" homedir = "0.3.6" ignore = "0.4.25" mime_guess = "2" notify = "8.2.0" poem = { version = "3", features = ["websocket", "test"] } portable-pty = "0.9.0" reqwest = { version = "0.13.3", features = ["json", "stream"] } rust-embed = "8" ed25519-dalek = { version = "2", default-features = false, features = ["rand_core"] } indexmap = { version = "2.14.0", features = ["serde"] } rand = "0.9" serde = { version = "1", features = ["derive"] } serde_json = "1" serde_urlencoded = "0.7" sha1 = "0.11" sha2 = "0.11.0" hmac = "0.13" subtle = "2" base64 = "0.22" serde_yaml = "0.9" strip-ansi-escapes = "0.2" tempfile = "3" tokio = { version = "1", features = ["rt-multi-thread", "macros", "sync"] } toml = "1.1.2" uuid = { version = "1.23.1", features = ["v4", "serde"] } tokio-tungstenite = { version = "0.29.0", features = ["connect", "rustls-tls-native-roots"] } walkdir = "2.5.0" filetime = "0.2" # Pinned to 0.16.x: matrix-sdk 0.17.0 uses Duration::from_mins (stabilised in # Rust 1.93) and declares rust-version = "1.93". Our toolchain is 1.90 and the # rustup directory is read-only in this environment, so 0.17 cannot be compiled. # Once the image ships Rust ≥1.93, bump this to "0.17" and remove this comment. # # rand@0.8 residual (unavoidable on 0.16.x): vodozemac v0.9, oauth2 v5, and # ruma-common v0.17 all depend on rand 0.8. These are eliminated in matrix-sdk # 0.17 where vodozemac moves to 0.10 and ruma to 0.15; until then the residual # is intentional and audited — no hand-rolled crypto is involved. # # libsqlite3-sys: both matrix-sdk-sqlite 0.16 (via rusqlite 0.37) and sqlx # 0.9.0-alpha.1 resolve to libsqlite3-sys 0.35.0; there is no version conflict. matrix-sdk = { version = "0.16", default-features = false, features = [ "rustls-tls", "sqlite", "e2e-encryption", ] } pulldown-cmark = { version = "0.13.3", default-features = false, features = [ "html", ] } regex = "1" libc = "0.2" sqlx = { version = "=0.9.0-alpha.1", default-features = false, features = [ "runtime-tokio", "sqlite", "macros", "migrate", ] }