mirror of
https://github.com/mailscope/kumomta.git
synced 2026-10-30 01:56:52 +00:00
There are a few breaking changes in the API that we need to tackle here, but they're generally fine. Since our libunbound crate uses hickory-proto, I had to upgrade that dep over there and reference the updated git rev here in this commit; we don't publish that to crates.io. The main thing that stood out in the upgrade is that the zone file parser used by the TestResolver now seems to create records with varying FQDN-ness. This may just be that it is now passing data through from the underlying zone data, but it caused a number of the SPF and DKIM test cases to fail without canonicalizing the names to FQDN. I chose to do that in the TestResolver rather than reviewing all the input zone data, with the rationale being that it is least surprising to have the test resolver fix that up than to puzzle over records not resolving due to a missing trailing dot when more tests are written in the future. This commit doesn't try to take advantage of the improvements to DNSSEC that are available in this version of hickory, it's just upgrading to the API changes. closes: https://github.com/KumoCorp/kumomta/pull/361
210 lines
6.0 KiB
TOML
210 lines
6.0 KiB
TOML
[workspace]
|
|
members = [
|
|
"crates/bounce-classify",
|
|
"crates/cidr-map",
|
|
"crates/domain-map",
|
|
"crates/integration-tests",
|
|
"crates/kcli",
|
|
"crates/kumo-chrono-helper",
|
|
"crates/kumo-prometheus",
|
|
"crates/kumod",
|
|
"crates/mailparsing",
|
|
"crates/mod-time",
|
|
"crates/mod-uuid",
|
|
"crates/mta-sts",
|
|
"crates/proxy-server",
|
|
"crates/regex-set-map",
|
|
"crates/rfc5321",
|
|
"crates/kumo-spf",
|
|
"crates/spool",
|
|
"crates/spool-util",
|
|
"crates/tailer",
|
|
"crates/throttle",
|
|
"crates/timeq",
|
|
"crates/tls-probe",
|
|
"crates/toml2jsonc",
|
|
"crates/traffic-gen",
|
|
"crates/tsa-daemon",
|
|
"crates/uuid-helper",
|
|
"crates/validate-bounces",
|
|
"crates/validate-shaping",
|
|
"crates/version-info",
|
|
"crates/kumo-dmarc",
|
|
"crates/kumo-template",
|
|
"crates/summarize-memory",
|
|
"crates/kumo-address",
|
|
]
|
|
resolver = "2"
|
|
|
|
[profile.release]
|
|
opt-level = 3
|
|
debug = 1 # include line tables for more meaningful backtraces
|
|
|
|
[workspace.dependencies]
|
|
ahash = "0.8.11"
|
|
amqprs = {version="2.0", features=["tls", "traces"]}
|
|
anyhow = "1.0"
|
|
arc-swap = "1.6"
|
|
async-stream = "0.3"
|
|
async-trait = "0.1"
|
|
axum = "0.7"
|
|
axum-client-ip = "0.6"
|
|
axum-server = "0.7"
|
|
axum-streams = {version="0.19", features=["text"]}
|
|
backtrace = "0.3"
|
|
bitflags = "2.3"
|
|
bitstring = "0.2"
|
|
bytes = "1.0"
|
|
camino = "1.1"
|
|
caps = "0.5"
|
|
cgroups-rs = "0.3"
|
|
charset = "0.1"
|
|
chrono = { version = "0.4.26", default-features = false }
|
|
chrono-tz = {version="0.10", features=["serde"]}
|
|
cidr = {version="0.3", features=["serde", "bitstring"]}
|
|
clap = {version="4.5", features=["derive", "wrap_help"]}
|
|
clap-markdown = "0.1"
|
|
criterion = "0.5"
|
|
crossbeam-queue= "0.3"
|
|
crossbeam-skiplist= "0.1"
|
|
crossterm = { version = "0.27.0", features = ["event-stream"] }
|
|
dashmap = "6.1"
|
|
data-encoding = "2.6"
|
|
data-encoding-macro = "0.1"
|
|
deadpool = {version="0.12", features=["rt_tokio_1"]}
|
|
derive-where = "1.2.7"
|
|
ed25519-dalek = "2.0"
|
|
env_logger = "0.11"
|
|
fancy-regex = "0.14"
|
|
filenamegen = "0.2.7"
|
|
flume = "0.11"
|
|
foreign-types = "0.3"
|
|
futures = "0.3.28"
|
|
futures-util = "0.3"
|
|
futures-lite = "2.3"
|
|
gcd = "2.3"
|
|
gethostname = "0.5"
|
|
getrandom = "0.2"
|
|
git2 = { version = "0.20", default-features = false }
|
|
hdrhistogram = "7.5"
|
|
hex = "0.4"
|
|
# Be sure to update the link to the docs in docs/reference/kumo.dns/configure_resolver.md
|
|
# to match the version that we are using when you update this dep
|
|
hickory-resolver = "0.25"
|
|
hickory-proto = "0.25"
|
|
hierarchical_hash_wheel_timer = {version="1.2", default-features=false, features=["fx-hash"]}
|
|
human_bytes = "0.4.3"
|
|
humanize-rs = "0.1"
|
|
humantime = "2.1"
|
|
humansize = "2.1"
|
|
idna = "1.0.3"
|
|
incr_stats = "1.0"
|
|
indexmap = "2.2"
|
|
indoc = "2.0.5"
|
|
instant-xml = "0.5"
|
|
intrusive-collections = "0.9.7"
|
|
json_comments = "0.2"
|
|
jwalk = "0.8"
|
|
k9 = "0.12"
|
|
lapin = {version="2.5", default-features=false, features=["native-tls"]}
|
|
lexicmp = "0.1"
|
|
libc = "0.2.139"
|
|
linkme = "0.3"
|
|
libunbound = {git="https://github.com/KumoCorp/libunbound-rs.git", rev="19b39a551b3cf7cbc69a7eb24fef4801e66c6260"}
|
|
lipsum = "0.9"
|
|
log = "0.4"
|
|
lru-cache = "0.1"
|
|
mac_address = "1.1"
|
|
mail-builder = "0.2"
|
|
mailparse = "0.14"
|
|
maplit = "1.0"
|
|
map_vec = "0.6"
|
|
memchr = "2.5"
|
|
metrics = "0.24"
|
|
metrics-prometheus = "0.8"
|
|
metrics-tracing-context = "0.17"
|
|
minijinja = {version="2.7.0",features=["loader", "builtins", "json", "loop_controls"]}
|
|
minijinja-contrib = {version="2.7.0",features=["datetime", "pycompat", "rand", "textwrap", "unicode_wordwrap", "wordcount", "timezone"]}
|
|
mlua = "0.10"
|
|
nix = "0.28"
|
|
nom = "7.1.0"
|
|
nom_locate = "4.1"
|
|
notify = "7"
|
|
num-format = "0.4.4"
|
|
openssl = { version="=0.10.65" } # pinned; see patch below
|
|
openssl-sys = { version="0.9" }
|
|
ordermap = {version="0.5", features=["serde"]}
|
|
parking_lot = "0.12"
|
|
paste = "1"
|
|
percent-encoding = "2.3"
|
|
pest = "2.7"
|
|
pest_derive = "2.7"
|
|
ppp = "2.2"
|
|
prometheus = "0.13"
|
|
psl = "2.1.46"
|
|
quoted_printable = "0.5"
|
|
rand = "0.8"
|
|
ratatui = { version = "0.26.2", features = ["crossterm", "unstable-widget-ref"] }
|
|
rcgen = "0.13"
|
|
rdkafka = "0.36"
|
|
redis = {version="0.29", features=["cluster", "cluster-async", "connection-manager", "tokio-comp", "tls-native-tls", "tokio-native-tls-comp"]}
|
|
regex = "1.7"
|
|
reqwest = {version="0.12", default-features=false, features=["rustls-tls", "rustls-tls-native-roots"]}
|
|
ring = "0.17"
|
|
rocksdb = {version="0.22", features=["jemalloc"]}
|
|
rustls = "0.23"
|
|
rustls-platform-verifier = "0.5"
|
|
self_cell = "1.0"
|
|
serde = {version="1.0", features=["derive"]}
|
|
serde_bytes = "0.11"
|
|
serde_json = "1.0"
|
|
serde_path_to_error = "0.1"
|
|
serde_with = "3.4"
|
|
serde_yaml = "0.9"
|
|
sha-1 = { version = "0.10", features = ["oid"] }
|
|
sha2 = "0.10"
|
|
slog = "2.7"
|
|
smallvec = "1.13"
|
|
socksv5 = {version="0.3", default-features=false, features=["tokio"]}
|
|
sqlite = "0.36"
|
|
strum = { version = "0.26", features = ["derive"] }
|
|
tabout = "0.3"
|
|
tempfile = "3.10"
|
|
test-log = {version="0.2", features = ["trace"]}
|
|
testcontainers-modules = { version = "0.11", default-features = false }
|
|
textwrap = "0.16"
|
|
thiserror = "1"
|
|
tikv-jemallocator = {version="0.5", features=["background_threads", "stats"]}
|
|
tikv-jemalloc-ctl = {version="0.5"}
|
|
tikv-jemalloc-sys = {version="0.5", features=["profiling", "unprefixed_malloc_on_supported_platforms", "stats"]}
|
|
tokio = "1.32"
|
|
tokio-executor-trait = "2.1.0"
|
|
tokio-metrics = "0.3.1"
|
|
tokio-metrics-collector = "0.2.1"
|
|
tokio-openssl = "0.6.4"
|
|
tokio-reactor-trait = "1.1.0"
|
|
tokio-rustls = "0.26"
|
|
tokio-splice = "0.2"
|
|
tokio-tungstenite = "0.24"
|
|
toml = "0.8"
|
|
toml_edit = "0.22"
|
|
tower-http = {version="0.6", features=["trace", "compression-deflate", "compression-gzip"]}
|
|
tracing = "0.1"
|
|
tracing-appender = "0.2"
|
|
tracing-subscriber = {version="0.3", features=["env-filter", "std", "fmt", "json"]}
|
|
utoipa = {version="4", features=["axum_extras", "time", "uuid"]}
|
|
utoipa-rapidoc = { version="4.0", features = ["axum"] }
|
|
url = "2.4"
|
|
uuid = "1.4"
|
|
vaultrs = "0.7"
|
|
walkdir = "2.3"
|
|
which = "7"
|
|
zstd = "0.13"
|
|
zstd-safe = {version="7.0", features=["std"]}
|
|
|
|
[patch.crates-io]
|
|
# Can be removed once dane support is upstreamed
|
|
openssl = { version="0.10.65", git="https://github.com/KumoCorp/rust-openssl.git", branch="dane" }
|
|
# Can be removed once dane support is upstreamed
|
|
openssl-sys = { version="0.9", git="https://github.com/KumoCorp/rust-openssl.git", branch="dane" }
|