[package]
edition = "2024"
rust-version = "1.99"
name = "sofie-mail"
version = "0.4.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Mail: messages rendered from templates, sent by a job over SMTP, to the log or to a test's outbox."
homepage = "https://sofie.rs"
readme = false
license = "MIT OR Apache-2.0"
repository = "https://github.com/sofie-rs/sofie"
[package.metadata.docs.rs]
all-features = true
[features]
development = ["sofie-engine/parse"]
i18n = ["sofie-engine/i18n"]
metrics = ["sofie-telemetry/metrics"]
testing = []
web = [
"dep:ring",
"dep:sofie-http",
"sofie-http/resources",
"sofie-http/signed-links",
"sofie-http/webhooks",
]
[lib]
name = "sofie_mail"
path = "src/lib.rs"
[[test]]
name = "deliver"
path = "tests/deliver.rs"
[[test]]
name = "language"
path = "tests/language.rs"
[[test]]
name = "smtp"
path = "tests/smtp.rs"
[[test]]
name = "suppression"
path = "tests/suppression.rs"
[dependencies.jiff]
version = "0.2.38"
features = [
"std",
"perf-inline",
]
default-features = false
[dependencies.ring]
version = "0.17.14"
optional = true
[dependencies.rustls]
version = "=0.23.45"
features = [
"ring",
"std",
"tls12",
]
default-features = false
[dependencies.serde]
version = "1.0.229"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.151"
[dependencies.sofie-auth]
version = "0.4.0"
[dependencies.sofie-core]
version = "0.4.0"
[dependencies.sofie-db]
version = "0.4.0"
features = [
"idempotency",
"jobs",
]
[dependencies.sofie-engine]
version = "0.4.0"
[dependencies.sofie-http]
version = "0.4.0"
optional = true
default-features = false
[dependencies.sofie-telemetry]
version = "0.4.0"
[dependencies.sofie-values]
version = "0.4.0"
[dependencies.tokio]
version = "1.53.2"
features = [
"rt",
"io-util",
"net",
"time",
]
[dependencies.tokio-rustls]
version = "=0.26.6"
features = [
"ring",
"tls12",
]
default-features = false
[dependencies.tracing]
version = "0.1.44"
features = ["std"]
default-features = false
[dependencies.webpki-roots]
version = "=1.0.9"
[dev-dependencies.tokio]
version = "1.53.2"
features = [
"rt",
"macros",
"rt-multi-thread",
]
[lints.clippy]
missing_errors_doc = "allow"
missing_panics_doc = "allow"
unused_async = "allow"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
unsafe_code = "forbid"