atagen

macltok

public
Star0
Watch0
411bc1c78b65ac2d29c0a44b166993a7e76f1663
3
ssh://brewery@pls.lobotomise.me:33/atagen/macltok.git
Cargo.tomlToml91 lines3.7 KB
1
[package]
2
name = "macltok"
3
version = "0.1.0"
4
edition = "2024"
5
description = "A compact application backend on top of the Matrix Rust SDK"
6
7
[features]
8
default = []
9
mirror = []
10
serde = ["dep:serde", "imbl/serde"]
11
sqlite = ["matrix-sdk/sqlite", "serde", "dep:url", "dep:matrix-sdk-store-encryption"]
12
bundled-sqlite = ["sqlite", "matrix-sdk/bundled-sqlite"]
13
indexeddb = [
14
    "matrix-sdk/indexeddb",
15
    "serde",
16
    "dep:url",
17
    "dep:matrix-sdk-store-encryption",
18
    "dep:indexed_db_futures",
19
    "dep:js-sys",
20
    "dep:wasm-bindgen",
21
    "dep:wasm-bindgen-futures",
22
    "dep:web-sys",
23
]
24
25
[dependencies]
26
futures-util = { version = "0.3.31", default-features = false, features = ["std"] }
27
http = "1"
28
imbl = { version = "6.1.0", default-features = false }
29
matrix-sdk = { version = "0.18.0", default-features = false, features = ["e2e-encryption"] }
30
matrix-sdk-base = { version = "0.18.0", default-features = false }
31
matrix-sdk-crypto = { version = "0.18.0", default-features = false }
32
matrix-sdk-store-encryption = { version = "0.18.0", optional = true }
33
matrix-sdk-ui = { version = "0.18.0", default-features = false }
34
ruma = { version = "0.16.0", default-features = false, features = ["unstable-msc2545"] }
35
serde = { version = "1.0.219", features = ["derive", "rc"], optional = true }
36
thiserror = "2.0.16"
37
mime = "0.3.17"
38
sha2 = "0.10.9"
39
tokio = { version = "1.47.1", features = ["macros", "sync"] }
40
tracing = "0.1.41"
41
url = { version = "2.5.7", optional = true }
42
43
[target.'cfg(target_family = "wasm")'.dependencies]
44
getrandom = { version = "0.2", features = ["js"] }
45
getrandom3 = { package = "getrandom", version = "0.3", features = ["wasm_js"] }
46
getrandom4 = { package = "getrandom", version = "0.4", features = ["wasm_js"] }
47
indexed_db_futures = { package = "matrix_indexed_db_futures", version = "0.7.0", optional = true, features = ["typed-arrays"] }
48
js-sys = { version = "0.3.105", optional = true }
49
matrix-sdk = { version = "0.18.0", default-features = false, features = ["js"] }
50
matrix-sdk-ui = { version = "0.18.0", default-features = false, features = ["js"] }
51
# the sdk's own wasm reqwest leaves out stream, which the bounded media download needs
52
reqwest = { version = "0.13.1", default-features = false, features = ["stream"] }
53
uuid = { version = "1", features = ["js"] }
54
wasm-bindgen = { version = "0.2.128", optional = true }
55
wasm-bindgen-futures = { version = "0.4.78", optional = true }
56
web-sys = { version = "0.3.105", optional = true, features = [
57
    "IdbFactory",
58
    "IdbOpenDbRequest",
59
    "IdbRequest",
60
    "Window",
61
    "WorkerGlobalScope",
62
] }
63
64
[dev-dependencies]
65
matrix-sdk = { version = "0.18.0", default-features = false, features = ["testing"] }
66
matrix-sdk-test = "0.18.0"
67
serde_json = "1.0.143"
68
tokio = { version = "1.47.1", features = ["macros", "rt-multi-thread", "signal", "time"] }
69
wiremock = "0.6.5"
70
71
[[example]]
72
name = "headless"
73
required-features = ["sqlite"]
74
75
[lints.rust]
76
unsafe_code = "forbid"
77
78
[lints.clippy]
79
all = "warn"
80
81
[patch.crates-io]
82
matrix-sdk = { path = "../matrix-rust-sdk/crates/matrix-sdk" }
83
matrix-sdk-base = { path = "../matrix-rust-sdk/crates/matrix-sdk-base" }
84
matrix-sdk-common = { path = "../matrix-rust-sdk/crates/matrix-sdk-common" }
85
matrix-sdk-crypto = { path = "../matrix-rust-sdk/crates/matrix-sdk-crypto" }
86
matrix-sdk-indexeddb = { path = "../matrix-rust-sdk/crates/matrix-sdk-indexeddb" }
87
matrix-sdk-sqlite = { path = "../matrix-rust-sdk/crates/matrix-sdk-sqlite" }
88
matrix-sdk-store-encryption = { path = "../matrix-rust-sdk/crates/matrix-sdk-store-encryption" }
89
matrix-sdk-test = { path = "../matrix-rust-sdk/testing/matrix-sdk-test" }
90
matrix-sdk-test-macros = { path = "../matrix-rust-sdk/testing/matrix-sdk-test-macros" }
91
matrix-sdk-ui = { path = "../matrix-rust-sdk/crates/matrix-sdk-ui" }