| 1 | [package] |
| 2 | authors = ["Damir Jelić <poljar@termina.org.uk>"] |
| 3 | description = "Collection of common types and imports used in the matrix-sdk" |
| 4 | edition = "2024" |
| 5 | homepage = "https://github.com/matrix-org/matrix-rust-sdk" |
| 6 | keywords = ["matrix", "chat", "messaging", "ruma", "nio"] |
| 7 | license = "Apache-2.0" |
| 8 | name = "matrix-sdk-common" |
| 9 | readme = "README.md" |
| 10 | repository = "https://github.com/matrix-org/matrix-rust-sdk" |
| 11 | rust-version.workspace = true |
| 12 | version = "0.18.0" |
| 13 | |
| 14 | [package.metadata.docs.rs] |
| 15 | default-target = "x86_64-unknown-linux-gnu" |
| 16 | targets = ["x86_64-unknown-linux-gnu", "wasm32-unknown-unknown"] |
| 17 | rustdoc-args = ["--generate-link-to-definition"] |
| 18 | |
| 19 | [features] |
| 20 | js = ["wasm-bindgen-futures"] |
| 21 | uniffi = ["dep:uniffi"] |
| 22 | # Private feature, see |
| 23 | # https://github.com/matrix-org/matrix-rust-sdk/pull/3749#issuecomment-2312939823 for the gory |
| 24 | # details. |
| 25 | test-send-sync = [] |
| 26 | |
| 27 | # Enable experimental support for encrypting state events; see |
| 28 | # https://github.com/matrix-org/matrix-rust-sdk/issues/5397. |
| 29 | experimental-encrypted-state-events = [] |
| 30 | |
| 31 | [dependencies] |
| 32 | eyeball-im.workspace = true |
| 33 | futures-core.workspace = true |
| 34 | futures-util.workspace = true |
| 35 | imbl.workspace = true |
| 36 | ruma.workspace = true |
| 37 | serde.workspace = true |
| 38 | serde_json.workspace = true |
| 39 | thiserror.workspace = true |
| 40 | tracing.workspace = true |
| 41 | uniffi = { workspace = true, optional = true } |
| 42 | |
| 43 | [target.'cfg(not(target_family = "wasm"))'.dependencies] |
| 44 | # Enable the test macro. |
| 45 | tokio = { workspace = true, features = ["rt", "time", "macros"] } |
| 46 | |
| 47 | [target.'cfg(target_family = "wasm")'.dependencies] |
| 48 | futures-executor.workspace = true |
| 49 | futures-util = { workspace = true, features = ["channel"] } |
| 50 | gloo-timers = { workspace = true, features = ["futures"] } |
| 51 | tokio = { workspace = true, features = ["sync", "macros", "time"] } |
| 52 | tracing-subscriber = { workspace = true, features = ["fmt", "ansi"] } |
| 53 | wasm-bindgen.workspace = true |
| 54 | wasm-bindgen-futures = { version = "0.4.33", optional = true } |
| 55 | web-sys = { workspace = true, features = ["console"] } |
| 56 | |
| 57 | [dev-dependencies] |
| 58 | assert_matches.workspace = true |
| 59 | assert_matches2.workspace = true |
| 60 | insta.workspace = true |
| 61 | matrix-sdk-test-macros = { path = "../../testing/matrix-sdk-test-macros" } |
| 62 | matrix-sdk-test-utils.workspace = true |
| 63 | proptest.workspace = true |
| 64 | wasm-bindgen-test.workspace = true |
| 65 | |
| 66 | [target.'cfg(target_family = "wasm")'.dev-dependencies] |
| 67 | # Enable the JS feature for getrandom. |
| 68 | getrandom = { workspace = true, default-features = false, features = ["wasm_js"] } |
| 69 | getrandom3 = { version = "0.3.4", package = "getrandom", default-features = false, features = ["wasm_js"] } |
| 70 | js-sys.workspace = true |
| 71 | |
| 72 | [lints] |
| 73 | workspace = true |