atagen

matrix-rust-sdk

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

Blame: bindings/matrix-sdk-ffi/Cargo.toml

7ff8adafe9e4atagen2026-10-22 12:30 UTC1
[package]
7ff8adafe9e4atagen2026-10-22 12:30 UTC2
name = "matrix-sdk-ffi"
7ff8adafe9e4atagen2026-10-22 12:30 UTC3
version = "0.18.0"
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", "ffi"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC7
license = "Apache-2.0"
7ff8adafe9e4atagen2026-10-22 12:30 UTC8
readme = "README.md"
7ff8adafe9e4atagen2026-10-22 12:30 UTC9
rust-version.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC10
repository = "https://github.com/matrix-org/matrix-rust-sdk"
7ff8adafe9e4atagen2026-10-22 12:30 UTC11
publish = false
7ff8adafe9e4atagen2026-10-22 12:30 UTC12
7ff8adafe9e4atagen2026-10-22 12:30 UTC13
[package.metadata.release]
7ff8adafe9e4atagen2026-10-22 12:30 UTC14
release = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC15
7ff8adafe9e4atagen2026-10-22 12:30 UTC16
[lib]
7ff8adafe9e4atagen2026-10-22 12:30 UTC17
crate-type = [
7ff8adafe9e4atagen2026-10-22 12:30 UTC18
  # Needed by uniffi for Android bindings
7ff8adafe9e4atagen2026-10-22 12:30 UTC19
  "cdylib",
7ff8adafe9e4atagen2026-10-22 12:30 UTC20
  # Needed by uniffi for iOS bindings
7ff8adafe9e4atagen2026-10-22 12:30 UTC21
  "staticlib",
7ff8adafe9e4atagen2026-10-22 12:30 UTC22
  # Needed by uniffi for JS/Wasm bindings, which use rust as an intermediate language
7ff8adafe9e4atagen2026-10-22 12:30 UTC23
  "lib"
7ff8adafe9e4atagen2026-10-22 12:30 UTC24
]
7ff8adafe9e4atagen2026-10-22 12:30 UTC25
7ff8adafe9e4atagen2026-10-22 12:30 UTC26
[features]
7ff8adafe9e4atagen2026-10-22 12:30 UTC27
default = ["bundled-sqlite", "unstable-msc4274", "experimental-element-recent-emojis", "experimental-push-secrets", "experimental-search"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC28
experimental-search = ["matrix-sdk/experimental-search"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC29
# Use SQLite for the session storage.
7ff8adafe9e4atagen2026-10-22 12:30 UTC30
sqlite = ["matrix-sdk/sqlite"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC31
# Use an embedded version of SQLite.
7ff8adafe9e4atagen2026-10-22 12:30 UTC32
bundled-sqlite = ["sqlite", "matrix-sdk/bundled-sqlite"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC33
# Use IndexedDB for the session storage.
7ff8adafe9e4atagen2026-10-22 12:30 UTC34
indexeddb = ["matrix-sdk/indexeddb"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC35
unstable-msc4274 = ["matrix-sdk-ui/unstable-msc4274"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC36
# Required when targeting a Javascript environment, like Wasm in a browser.
7ff8adafe9e4atagen2026-10-22 12:30 UTC37
js = ["matrix-sdk-ui/js"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC38
# Enable sentry error monitoring, not compatible with Wasm platforms.
7ff8adafe9e4atagen2026-10-22 12:30 UTC39
sentry = ["dep:sentry", "dep:sentry-tracing"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC40
7ff8adafe9e4atagen2026-10-22 12:30 UTC41
experimental-element-recent-emojis = ["matrix-sdk/experimental-element-recent-emojis"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC42
experimental-push-secrets = ["matrix-sdk/experimental-push-secrets"]
7ff8adafe9e4atagen2026-10-22 12:30 UTC43
7ff8adafe9e4atagen2026-10-22 12:30 UTC44
[dependencies]
7ff8adafe9e4atagen2026-10-22 12:30 UTC45
anyhow.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC46
chrono.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC47
extension-trait = "1.0.2"
7ff8adafe9e4atagen2026-10-22 12:30 UTC48
eyeball-im.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC49
futures-util.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC50
language-tags = "0.3.2"
7ff8adafe9e4atagen2026-10-22 12:30 UTC51
log-panics = { version = "2.1.0", default-features = false, features = ["with-backtrace"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC52
matrix-sdk = { workspace = true, features = [
7ff8adafe9e4atagen2026-10-22 12:30 UTC53
    "anyhow",
7ff8adafe9e4atagen2026-10-22 12:30 UTC54
    "e2e-encryption",
7ff8adafe9e4atagen2026-10-22 12:30 UTC55
    "experimental-widgets",
7ff8adafe9e4atagen2026-10-22 12:30 UTC56
    "markdown",
7ff8adafe9e4atagen2026-10-22 12:30 UTC57
    "socks",
7ff8adafe9e4atagen2026-10-22 12:30 UTC58
    "uniffi",
7ff8adafe9e4atagen2026-10-22 12:30 UTC59
    "federation-api",
7ff8adafe9e4atagen2026-10-22 12:30 UTC60
    "experimental-search"
7ff8adafe9e4atagen2026-10-22 12:30 UTC61
] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC62
matrix-sdk-base.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC63
matrix-sdk-common.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC64
matrix-sdk-ffi-macros.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC65
matrix-sdk-ui = { workspace = true, features = ["uniffi"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC66
mime = { version = "0.3.17", default-features = false }
7ff8adafe9e4atagen2026-10-22 12:30 UTC67
ruma = { workspace = true, features = [
7ff8adafe9e4atagen2026-10-22 12:30 UTC68
    "html",
7ff8adafe9e4atagen2026-10-22 12:30 UTC69
    "unstable-msc3488",
7ff8adafe9e4atagen2026-10-22 12:30 UTC70
    "compat-unset-avatar",
7ff8adafe9e4atagen2026-10-22 12:30 UTC71
    "unstable-msc3245-v1-compat",
7ff8adafe9e4atagen2026-10-22 12:30 UTC72
    "unstable-msc4278",
7ff8adafe9e4atagen2026-10-22 12:30 UTC73
    "unstable-msc3230",
7ff8adafe9e4atagen2026-10-22 12:30 UTC74
    # Audio event type
7ff8adafe9e4atagen2026-10-22 12:30 UTC75
    "unstable-msc3927",
7ff8adafe9e4atagen2026-10-22 12:30 UTC76
    # File event type
7ff8adafe9e4atagen2026-10-22 12:30 UTC77
    "unstable-msc3551",
7ff8adafe9e4atagen2026-10-22 12:30 UTC78
    # Image event type
7ff8adafe9e4atagen2026-10-22 12:30 UTC79
    "unstable-msc3552",
7ff8adafe9e4atagen2026-10-22 12:30 UTC80
    # Video event type
7ff8adafe9e4atagen2026-10-22 12:30 UTC81
    "unstable-msc3553",
7ff8adafe9e4atagen2026-10-22 12:30 UTC82
    # Voice event type
7ff8adafe9e4atagen2026-10-22 12:30 UTC83
    "unstable-msc3245",
7ff8adafe9e4atagen2026-10-22 12:30 UTC84
    # Emote event type
7ff8adafe9e4atagen2026-10-22 12:30 UTC85
    "unstable-msc3954",
7ff8adafe9e4atagen2026-10-22 12:30 UTC86
    # Image pack event type
7ff8adafe9e4atagen2026-10-22 12:30 UTC87
    "unstable-msc2545",
7ff8adafe9e4atagen2026-10-22 12:30 UTC88
    # Room language event type
7ff8adafe9e4atagen2026-10-22 12:30 UTC89
    "unstable-msc4334",
7ff8adafe9e4atagen2026-10-22 12:30 UTC90
] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC91
serde.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC92
serde_json.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC93
sentry = { workspace = true, optional = true, features = [
7ff8adafe9e4atagen2026-10-22 12:30 UTC94
  # Most default features enabled otherwise.
7ff8adafe9e4atagen2026-10-22 12:30 UTC95
  "backtrace",
7ff8adafe9e4atagen2026-10-22 12:30 UTC96
  "contexts",
7ff8adafe9e4atagen2026-10-22 12:30 UTC97
  "debug-images",
7ff8adafe9e4atagen2026-10-22 12:30 UTC98
  "panic",
7ff8adafe9e4atagen2026-10-22 12:30 UTC99
  "reqwest",
7ff8adafe9e4atagen2026-10-22 12:30 UTC100
  "sentry-debug-images",
7ff8adafe9e4atagen2026-10-22 12:30 UTC101
] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC102
sentry-tracing = { workspace = true, optional = true }
7ff8adafe9e4atagen2026-10-22 12:30 UTC103
thiserror.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC104
tracing.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC105
tracing-appender.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC106
tracing-core.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC107
tracing-subscriber = { workspace = true, features = ["env-filter"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC108
url.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC109
uuid = { version = "1.4.1", default-features = false, features = ["std", "v4"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC110
zeroize.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC111
oauth2.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC112
7ff8adafe9e4atagen2026-10-22 12:30 UTC113
[target.'cfg(target_family = "wasm")'.dependencies]
7ff8adafe9e4atagen2026-10-22 12:30 UTC114
console_error_panic_hook = { version = "0.1.7", default-features = false }
7ff8adafe9e4atagen2026-10-22 12:30 UTC115
tokio = { workspace = true, features = ["sync", "macros"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC116
uniffi = { workspace = true, features = ["wasm-unstable-single-threaded"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC117
futures-executor.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC118
7ff8adafe9e4atagen2026-10-22 12:30 UTC119
[target.'cfg(not(target_family = "wasm"))'.dependencies]
7ff8adafe9e4atagen2026-10-22 12:30 UTC120
async-compat.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC121
tokio = { workspace = true, features = ["rt-multi-thread", "macros"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC122
uniffi = { workspace = true, features = ["tokio"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC123
7ff8adafe9e4atagen2026-10-22 12:30 UTC124
[target.'cfg(target_os = "android")'.dependencies]
7ff8adafe9e4atagen2026-10-22 12:30 UTC125
paranoid-android = { version = "0.2.2", default-features = false }
7ff8adafe9e4atagen2026-10-22 12:30 UTC126
# Needed for `rustls-platform-verifier`. Newer versions aren't compatible with it.
7ff8adafe9e4atagen2026-10-22 12:30 UTC127
jni = "0.21.1"
7ff8adafe9e4atagen2026-10-22 12:30 UTC128
# Used to access the credential storage on Android
7ff8adafe9e4atagen2026-10-22 12:30 UTC129
rustls-platform-verifier = "0.6.2"
7ff8adafe9e4atagen2026-10-22 12:30 UTC130
# Needed for intializing and keeping the JavaVM reference around
7ff8adafe9e4atagen2026-10-22 12:30 UTC131
once_cell = "1.21.4"
7ff8adafe9e4atagen2026-10-22 12:30 UTC132
# Gobley's jvm-getter is used to get a JVM pointer from all Android versions
7ff8adafe9e4atagen2026-10-22 12:30 UTC133
jvm-getter = "0.1.0"
7ff8adafe9e4atagen2026-10-22 12:30 UTC134
7ff8adafe9e4atagen2026-10-22 12:30 UTC135
[dev-dependencies]
7ff8adafe9e4atagen2026-10-22 12:30 UTC136
matrix-sdk = { workspace = true, features = ["testing"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC137
similar-asserts.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC138
tempfile.workspace = true
7ff8adafe9e4atagen2026-10-22 12:30 UTC139
tokio = { workspace = true, features = ["rt-multi-thread", "macros", "time"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC140
7ff8adafe9e4atagen2026-10-22 12:30 UTC141
[build-dependencies]
7ff8adafe9e4atagen2026-10-22 12:30 UTC142
uniffi = { workspace = true, features = ["build"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC143
vergen-gitcl = { workspace = true, features = ["build"] }
7ff8adafe9e4atagen2026-10-22 12:30 UTC144
7ff8adafe9e4atagen2026-10-22 12:30 UTC145
[lints]
7ff8adafe9e4atagen2026-10-22 12:30 UTC146
workspace = true