[package]
edition = "2021"
name = "mail4agent-server"
version = "0.4.2"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Matrix-subset homeserver: protocol decisions plus the Client-Server HTTP routes. No users database, logins, registration or tariffs: identities are nick + domain; a product server vouches for callers through the signed-assertion seam (m4a-seam), lifecycle events and the policy hook."
readme = "README.md"
keywords = [
"matrix",
"homeserver",
"messenger",
"e2ee",
]
categories = ["network-programming"]
license = "MIT"
repository = "https://github.com/ZENG3LD/mail4agent"
[features]
default = [
"f3-hash-ids",
"presence",
"media-federation",
"media-thumbnails",
]
f3-hash-ids = ["dep:m4a-matrix-core"]
media-federation = []
media-thumbnails = ["dep:image"]
presence = []
[lib]
name = "mail4agent_server"
path = "src/lib.rs"
[[test]]
name = "spec_coverage"
path = "tests/spec_coverage.rs"
[dependencies.axum]
version = "0.8"
features = [
"json",
"ws",
]
[dependencies.base64]
version = "0.22"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.ed25519-dalek]
version = "2"
features = ["std"]
[dependencies.futures-util]
version = "0.3"
features = [
"std",
"sink",
]
default-features = false
[dependencies.hex]
version = "0.4"
[dependencies.hmac]
version = "0.12"
[dependencies.image]
version = "0.25"
features = [
"png",
"jpeg",
"gif",
"webp",
]
optional = true
default-features = false
[dependencies.m4a-matrix-core]
version = "=0.4.2"
optional = true
[dependencies.m4a-seam]
version = "=0.4.2"
[dependencies.rand]
version = "0.8"
[dependencies.reqwest]
version = "0.12"
features = [
"rustls-tls",
"json",
]
default-features = false
[dependencies.rusqlite]
version = "0.32"
features = ["backup"]
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.10"
[dependencies.tesserax-store]
version = "0.1.1"
features = ["cipher-native"]
[dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"macros",
"sync",
"time",
]
[dependencies.tracing]
version = "0.1"
[dev-dependencies.tower]
version = "0.5"
features = ["util"]