[package] name = "proxy" version = "1.0.4" edition = "2024" license = "AGPL-3.0-only OR LicenseRef-SEL" description = "Multi-protocol e-mail proxy" authors = ["Stalwart Labs LLC "] repository = "https://github.com/stalwartlabs/proxy" homepage = "https://github.com/stalwartlabs/proxy" readme = "README.md" keywords = ["mail", "proxy", "imap", "smtp", "migration"] categories = ["email", "network-programming"] [[bin]] name = "proxy" path = "src/main.rs" [dependencies] tokio = { version = "1.53", features = ["net", "io-util", "rt-multi-thread", "macros", "signal", "sync", "time"] } rustls = { version = "0.23", default-features = false, features = ["std", "aws_lc_rs", "tls12"] } tokio-rustls = { version = "0.26", default-features = false, features = ["aws_lc_rs", "tls12"] } rustls-pemfile = "2.2" rustls-pki-types = "1.15" aws-lc-rs = "1.17" proxy-header = { version = "0.1.2", features = ["tokio"] } smtp-proto = "0.2.2" mail-parser = "0.11" base64 = "0.23" serde = { version = "1", features = ["derive"] } serde_json = "1" toml = "1" globset = "0.4" regex = "1.13" redis = { version = "1.5", features = ["tokio-comp", "aio", "connection-manager"] } sqlx = { version = "0.9", default-features = false, features = ["runtime-tokio", "tls-rustls-aws-lc-rs", "any", "postgres", "mysql", "sqlite"] } tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } moka = { version = "0.12", features = ["future", "sync"] } arc-swap = "1" parking_lot = "0.12" ahash = { version = "0.8", features = ["serde"] } num_cpus = "1.17" thiserror = "2" percent-encoding = "2.3" rcgen = "0.14" x509-parser = "0.18" rustls-platform-verifier = "0.7" [dev-dependencies] tempfile = "3" mockito = "1.7" testcontainers = "0.28" pwhash = "1" jmap-client = { version = "0.4", default-features = false, features = ["websockets", "async", "aws_lc_rs"] } futures-util = "0.3" [profile.release] opt-level = 3 lto = "thin" codegen-units = 1 panic = "abort"