[workspace] members = [ "benchmarks", "bindings/matrix-sdk-crypto-ffi", "bindings/matrix-sdk-ffi", "crates/*", "testing/*", "examples/*", "uniffi-bindgen", "xtask", ] # xtask, testing and the bindings should only be built when invoked explicitly. default-members = ["benchmarks", "crates/*"] resolver = "2" [workspace.package] rust-version = "1.70" [workspace.dependencies] anyhow = "1.0.68" assert-json-diff = "2" assert_matches = "1.5.0" async-rx = "0.1.3" async-stream = "0.3.3" async-trait = "0.1.60" as_variant = "1.2.0" base64 = "0.21.0" byteorder = "1.4.3" ctor = "0.2.0" dashmap = "5.2.0" eyeball = { version = "0.8.7", features = ["tracing"] } eyeball-im = { version = "0.4.1", features = ["tracing"] } eyeball-im-util = "0.5.1" futures-core = "0.3.28" futures-executor = "0.3.21" futures-util = { version = "0.3.26", default-features = false, features = ["alloc"] } http = "0.2.6" itertools = "0.11.0" ruma = { git = "https://github.com/ruma/ruma", rev = "4ef6d1641bdd7d1c1586d2356c183798f3900bf1", features = ["client-api-c", "compat-upload-signatures", "compat-user-id", "compat-arbitrary-length-ids"] } ruma-common = { git = "https://github.com/ruma/ruma", rev = "4ef6d1641bdd7d1c1586d2356c183798f3900bf1" } once_cell = "1.16.0" serde = "1.0.151" serde_html_form = "0.2.0" serde_json = "1.0.91" stream_assert = "0.1.1" thiserror = "1.0.38" tokio = { version = "1.30.0", default-features = false, features = ["sync"] } tracing = { version = "0.1.36", default-features = false, features = ["std"] } tracing-core = "0.1.30" uniffi = { git = "https://github.com/mozilla/uniffi-rs", rev = "e20b9c2b72144ef51a381c6b321ac810a4fbfdbe" } uniffi_bindgen = { git = "https://github.com/mozilla/uniffi-rs", rev = "e20b9c2b72144ef51a381c6b321ac810a4fbfdbe" } vodozemac = { git = "https://github.com/matrix-org/vodozemac/", rev = "23098d391d9a91db7d72a0ce19e69559b4340b13" } zeroize = "1.6.0" # Default release profile, select with `--release` [profile.release] lto = true # Default development profile; default for most Cargo commands, otherwise # selected with `--debug` [profile.dev] # Saves a lot of disk space. If symbols are needed, use the dbg profile. debug = 0 [profile.dev.package] # Optimize quote even in debug mode. Speeds up proc-macros enough to account # for the extra time of optimizing it for a clean build of matrix-sdk-ffi. quote = { opt-level = 2 } sha2 = { opt-level = 2 } # Custom profile with full debugging info, use `--profile dbg` to select [profile.dbg] inherits = "dev" debug = 2 # Custom profile for use in (debug) builds of the binding crates, use # `--profile reldbg` to select [profile.reldbg] inherits = "dev" opt-level = 3 [patch.crates-io] async-compat = { git = "https://github.com/jplatte/async-compat", rev = "b83b197622d8b5756d3594ce73b720896b07faae" } const_panic = { git = "https://github.com/jplatte/const_panic", rev = "9024a4cb3eac45c1d2d980f17aaee287b17be498" }