atagen

matrix-rust-sdk

public
Star0
Watch0
ssh://brewery@pls.lobotomise.me:33/atagen/matrix-rust-sdk.git

Blame: crates/matrix-sdk-base/Cargo.toml

7ff8adafe9e4atagen2026-10-22 12:30 UTC1
[package]
7ff8adafe9e4atagen2026-10-22 12:30 UTC2
authors = ["Damir Jelić <poljar@termina.org.uk>"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC3
description = "The base component to build a Matrix client library."
7ff8adafe9e4atagen2026-10-22 12:30 UTC4
edition = "2024"
7ff8adafe9e4atagen2026-10-22 12:30 UTC5
homepage = "https://github.com/matrix-org/matrix-rust-sdk"
7ff8adafe9e4atagen2026-10-22 12:30 UTC6
keywords = ["matrix", "chat", "messaging", "ruma", "nio"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC7
license = "Apache-2.0"
7ff8adafe9e4atagen2026-10-22 12:30 UTC8
name = "matrix-sdk-base"
7ff8adafe9e4atagen2026-10-22 12:30 UTC9
readme = "README.md"
7ff8adafe9e4atagen2026-10-22 12:30 UTC10
repository = "https://github.com/matrix-org/matrix-rust-sdk"
7ff8adafe9e4atagen2026-10-22 12:30 UTC11
rust-version.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC12
version = "0.18.0"
7ff8adafe9e4atagen2026-10-22 12:30 UTC13
7ff8adafe9e4atagen2026-10-22 12:30 UTC14
[package.metadata.docs.rs]
7ff8adafe9e4atagen2026-10-22 12:30 UTC15
all-features = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC16
rustdoc-args = ["--cfg", "docsrs", "--generate-link-to-definition"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC17
7ff8adafe9e4atagen2026-10-22 12:30 UTC18
[features]
7ff8adafe9e4atagen2026-10-22 12:30 UTC19
default = []
7ff8adafe9e4atagen2026-10-22 12:30 UTC20
e2e-encryption = ["dep:matrix-sdk-crypto"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC21
js = [
7ff8adafe9e4atagen2026-10-22 12:30 UTC22
    "matrix-sdk-common/js",
7ff8adafe9e4atagen2026-10-22 12:30 UTC23
    "matrix-sdk-crypto?/js",
7ff8adafe9e4atagen2026-10-22 12:30 UTC24
    "ruma/js",
7ff8adafe9e4atagen2026-10-22 12:30 UTC25
    "matrix-sdk-store-encryption/js",
7ff8adafe9e4atagen2026-10-22 12:30 UTC26
]
7ff8adafe9e4atagen2026-10-22 12:30 UTC27
qrcode = ["matrix-sdk-crypto?/qrcode"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC28
automatic-room-key-forwarding = [
7ff8adafe9e4atagen2026-10-22 12:30 UTC29
    "matrix-sdk-crypto?/automatic-room-key-forwarding",
7ff8adafe9e4atagen2026-10-22 12:30 UTC30
]
7ff8adafe9e4atagen2026-10-22 12:30 UTC31
experimental-send-custom-to-device = [
7ff8adafe9e4atagen2026-10-22 12:30 UTC32
    "matrix-sdk-crypto?/experimental-send-custom-to-device",
7ff8adafe9e4atagen2026-10-22 12:30 UTC33
]
7ff8adafe9e4atagen2026-10-22 12:30 UTC34
7ff8adafe9e4atagen2026-10-22 12:30 UTC35
# Enable experimental support for encrypting state events; see
7ff8adafe9e4atagen2026-10-22 12:30 UTC36
# https://github.com/matrix-org/matrix-rust-sdk/issues/5397.
7ff8adafe9e4atagen2026-10-22 12:30 UTC37
experimental-encrypted-state-events = [
7ff8adafe9e4atagen2026-10-22 12:30 UTC38
    "e2e-encryption",
7ff8adafe9e4atagen2026-10-22 12:30 UTC39
    "ruma/unstable-msc4362",
7ff8adafe9e4atagen2026-10-22 12:30 UTC40
    "matrix-sdk-crypto?/experimental-encrypted-state-events"
7ff8adafe9e4atagen2026-10-22 12:30 UTC41
]
7ff8adafe9e4atagen2026-10-22 12:30 UTC42
7ff8adafe9e4atagen2026-10-22 12:30 UTC43
# Enable experimental support for pushing secrets
7ff8adafe9e4atagen2026-10-22 12:30 UTC44
experimental-push-secrets = [
7ff8adafe9e4atagen2026-10-22 12:30 UTC45
    "e2e-encryption",
7ff8adafe9e4atagen2026-10-22 12:30 UTC46
    "matrix-sdk-crypto?/experimental-push-secrets"
7ff8adafe9e4atagen2026-10-22 12:30 UTC47
]
7ff8adafe9e4atagen2026-10-22 12:30 UTC48
7ff8adafe9e4atagen2026-10-22 12:30 UTC49
uniffi = ["dep:uniffi", "matrix-sdk-crypto?/uniffi", "matrix-sdk-common/uniffi"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC50
7ff8adafe9e4atagen2026-10-22 12:30 UTC51
# Private feature, see
7ff8adafe9e4atagen2026-10-22 12:30 UTC52
# https://github.com/matrix-org/matrix-rust-sdk/pull/3749#issuecomment-2312939823 for the gory
7ff8adafe9e4atagen2026-10-22 12:30 UTC53
# details.
7ff8adafe9e4atagen2026-10-22 12:30 UTC54
test-send-sync = [
7ff8adafe9e4atagen2026-10-22 12:30 UTC55
    "matrix-sdk-common/test-send-sync",
7ff8adafe9e4atagen2026-10-22 12:30 UTC56
    "matrix-sdk-crypto?/test-send-sync",
7ff8adafe9e4atagen2026-10-22 12:30 UTC57
]
7ff8adafe9e4atagen2026-10-22 12:30 UTC58
7ff8adafe9e4atagen2026-10-22 12:30 UTC59
# helpers for testing features build upon this
7ff8adafe9e4atagen2026-10-22 12:30 UTC60
testing = [
7ff8adafe9e4atagen2026-10-22 12:30 UTC61
    "dep:assert_matches",
7ff8adafe9e4atagen2026-10-22 12:30 UTC62
    "dep:assert_matches2",
7ff8adafe9e4atagen2026-10-22 12:30 UTC63
    "dep:http",
7ff8adafe9e4atagen2026-10-22 12:30 UTC64
    "dep:matrix-sdk-test",
7ff8adafe9e4atagen2026-10-22 12:30 UTC65
    "matrix-sdk-crypto?/testing",
7ff8adafe9e4atagen2026-10-22 12:30 UTC66
]
7ff8adafe9e4atagen2026-10-22 12:30 UTC67
7ff8adafe9e4atagen2026-10-22 12:30 UTC68
# Add support for inline media galleries via msgtypes
7ff8adafe9e4atagen2026-10-22 12:30 UTC69
unstable-msc4274 = []
7ff8adafe9e4atagen2026-10-22 12:30 UTC70
7ff8adafe9e4atagen2026-10-22 12:30 UTC71
experimental-element-recent-emojis = []
7ff8adafe9e4atagen2026-10-22 12:30 UTC72
7ff8adafe9e4atagen2026-10-22 12:30 UTC73
[dependencies]
7ff8adafe9e4atagen2026-10-22 12:30 UTC74
as_variant.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC75
assert_matches = { workspace = true, optional = true }
7ff8adafe9e4atagen2026-10-22 12:30 UTC76
assert_matches2 = { workspace = true, optional = true }
7ff8adafe9e4atagen2026-10-22 12:30 UTC77
async-trait.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC78
bitflags = { workspace = true, features = ["serde"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC79
decancer = { version = "3.3.3", default-features = false }
7ff8adafe9e4atagen2026-10-22 12:30 UTC80
eyeball = { workspace = true, features = ["async-lock"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC81
eyeball-im.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC82
futures-util.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC83
growable-bloom-filter.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC84
http = { workspace = true, optional = true }
7ff8adafe9e4atagen2026-10-22 12:30 UTC85
matrix-sdk-common.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC86
matrix-sdk-crypto = { workspace = true, optional = true }
7ff8adafe9e4atagen2026-10-22 12:30 UTC87
matrix-sdk-store-encryption.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC88
matrix-sdk-test = { workspace = true, optional = true }
7ff8adafe9e4atagen2026-10-22 12:30 UTC89
regex.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC90
ruma = { workspace = true, features = [
7ff8adafe9e4atagen2026-10-22 12:30 UTC91
    "unstable-msc2867",
7ff8adafe9e4atagen2026-10-22 12:30 UTC92
    "unstable-msc3381",
7ff8adafe9e4atagen2026-10-22 12:30 UTC93
    "unstable-msc4186",
7ff8adafe9e4atagen2026-10-22 12:30 UTC94
    "rand",
7ff8adafe9e4atagen2026-10-22 12:30 UTC95
] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC96
serde = { workspace = true, features = ["rc"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC97
serde_json.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC98
thiserror.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC99
tokio.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC100
tracing.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC101
unicode-normalization.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC102
uniffi = { workspace = true, optional = true }
7ff8adafe9e4atagen2026-10-22 12:30 UTC103
7ff8adafe9e4atagen2026-10-22 12:30 UTC104
[dev-dependencies]
7ff8adafe9e4atagen2026-10-22 12:30 UTC105
anyhow.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC106
assert_matches.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC107
assert_matches2.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC108
assign = "1.1.1"
7ff8adafe9e4atagen2026-10-22 12:30 UTC109
futures-executor.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC110
http.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC111
matrix-sdk-test.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC112
matrix-sdk-test-utils.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC113
proptest.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC114
similar-asserts.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC115
stream_assert.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC116
7ff8adafe9e4atagen2026-10-22 12:30 UTC117
[target.'cfg(not(target_family = "wasm"))'.dev-dependencies]
7ff8adafe9e4atagen2026-10-22 12:30 UTC118
tokio = { workspace = true, features = ["rt-multi-thread", "macros"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC119
7ff8adafe9e4atagen2026-10-22 12:30 UTC120
[target.'cfg(target_family = "wasm")'.dev-dependencies]
7ff8adafe9e4atagen2026-10-22 12:30 UTC121
wasm-bindgen-test.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC122
getrandom3 = { version = "0.3.4", package = "getrandom", default-features = false, features = ["wasm_js"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC123
gloo-timers = { workspace = true, features = ["futures"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC124
7ff8adafe9e4atagen2026-10-22 12:30 UTC125
[lints]
7ff8adafe9e4atagen2026-10-22 12:30 UTC126
workspace = true