diff --git a/CHANGELOG.md b/CHANGELOG.md index 03ee4f17..fb7128d6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/). -## [0.16.5] - 2026-05-XX +## [0.16.5] - 2026-05-11 If you are upgrading from v0.16.x, replace the binary (or run `docker pull`). If you are upgrading from v0.15.x and below, please read the [upgrading documentation](https://github.com/stalwartlabs/stalwart/blob/main/UPGRADING/v0_16.md) for more information on how to upgrade from previous versions. @@ -11,6 +11,7 @@ If you are upgrading from v0.16.x, replace the binary (or run `docker pull`). If ## Changed - Bump `mail-auth` to 0.9 (which bumps `hickory-resolver` to 0.26). +- Deprecated RFC2136 SIG(0) support as it is no longer supported by `hickory`. ## Fixed - JMAP: @@ -29,6 +30,14 @@ If you are upgrading from v0.16.x, replace the binary (or run `docker pull`). If - Allow rescheduling recipients with permanent failures. - Process reports using original `RCPT` before rewriting. - Autodiscover v2 endpoint unreachable. +- DNS update (via `dns-update` crate): + - OVH + Google Cloud DNS: Fix FQDN handling for `MX` and `SRV` records. + - Route53: Fix changeset error resolution. + - deSEC: Use empty `subname` for apex records instead of `@`, which the API rejects. + - Cloudflare: Wrap `TXT` record content in double quotes (RFC 1035) to suppress dashboard warnings. +- iCalendar/JSCalendar (via `calcard` crate): + - Support `STATUS:CANCELLED` mapping from `VTODO` to JSCalendar. + - Fixed duration parsing for zero duration `PT0S`. ## [0.16.4] - 2026-05-05 diff --git a/Cargo.lock b/Cargo.lock index 17bce6a5..750fe409 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -597,7 +597,16 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" dependencies = [ - "bit-vec", + "bit-vec 0.8.0", +] + +[[package]] +name = "bit-set" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34ddef2995421ab6a5c779542c81ee77c115206f4ad9d5a8e05f4ff49716a3dd" +dependencies = [ + "bit-vec 0.9.1", ] [[package]] @@ -606,6 +615,15 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" +[[package]] +name = "bit-vec" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b71798fca2c1fe1086445a7258a4bc81e6e49dcd24c8d0dd9a1e57395b603f51" +dependencies = [ + "serde", +] + [[package]] name = "bitflags" version = "2.11.1" @@ -727,6 +745,15 @@ dependencies = [ "cipher 0.4.4", ] +[[package]] +name = "bs58" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" +dependencies = [ + "tinyvec", +] + [[package]] name = "btoi" version = "0.4.3" @@ -816,9 +843,9 @@ dependencies = [ [[package]] name = "calcard" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64bb5cc4aa43df0df11be8fee3f375ce286876cb859ff6f58173d1619858f550" +checksum = "34e4d12044ea273eef981542ab87562104f9edb434d28317277d77e8019d7609" dependencies = [ "ahash", "chrono", @@ -872,9 +899,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.61" +version = "1.2.62" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d16d90359e986641506914ba71350897565610e87ce0ad9e6f28569db3dd5c6d" +checksum = "a1dce859f0832a7d088c4f1119888ab94ef4b5d6795d1ce05afb7fe159d79f98" dependencies = [ "find-msvc-tools", "jobserver", @@ -1057,7 +1084,7 @@ dependencies = [ [[package]] name = "common" -version = "0.16.4" +version = "0.16.5" dependencies = [ "aes-gcm-siv", "ahash", @@ -1075,7 +1102,7 @@ dependencies = [ "dns-update", "futures", "hashify", - "hickory-proto 0.26.1", + "hickory-proto", "hostname", "hyper", "idna", @@ -1085,7 +1112,7 @@ dependencies = [ "infer 0.19.0", "jmap_proto", "libc", - "lz4_flex 0.13.0", + "lz4_flex 0.13.1", "mail-auth", "mail-builder", "mail-parser", @@ -1107,7 +1134,7 @@ dependencies = [ "proxy-header", "psl", "pwhash", - "quick-xml 0.39.3", + "quick-xml 0.39.4", "quick_cache", "rasn", "rasn-cms", @@ -1508,6 +1535,21 @@ dependencies = [ "syn 2.0.117", ] +[[package]] +name = "cx448" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c0cf476284b03eb6c10e78787b21c7abb7d7d43cb2f02532ba6b831ed892fa" +dependencies = [ + "crypto-bigint", + "elliptic-curve", + "rand_core 0.6.4", + "sha3", + "signature", + "subtle", + "zeroize", +] + [[package]] name = "darling" version = "0.20.11" @@ -1591,7 +1633,7 @@ checksum = "a4ae5f15dda3c708c0ade84bfee31ccab44a3da4f88015ed22f63732abe300c8" [[package]] name = "dav" -version = "0.16.4" +version = "0.16.5" dependencies = [ "calcard", "chrono", @@ -1614,7 +1656,7 @@ dependencies = [ [[package]] name = "dav-proto" -version = "0.16.4" +version = "0.16.5" dependencies = [ "calcard", "chrono", @@ -1622,7 +1664,7 @@ dependencies = [ "hashify", "hyper", "mail-parser", - "quick-xml 0.39.3", + "quick-xml 0.39.4", "rkyv", "serde", "serde_json", @@ -1813,7 +1855,7 @@ dependencies = [ [[package]] name = "directory" -version = "0.16.4" +version = "0.16.5" dependencies = [ "ahash", "argon2", @@ -1895,16 +1937,17 @@ dependencies = [ [[package]] name = "dns-update" -version = "0.2.6" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87a0bc23af0e9f3e0ce46fe0dc3a002dc567fc8111565ec9312441d54898fdfe" +checksum = "2ab561859c5d537b185780ca8e7a501a227ed63ca2ad65560f4b41f57320b66c" dependencies = [ "aws-lc-rs", "base64 0.22.1", "chrono", "hex", - "hickory-client", - "quick-xml 0.39.3", + "hickory-net", + "hickory-proto", + "quick-xml 0.39.4", "reqwest 0.13.3", "rustls 0.23.40", "serde", @@ -2033,6 +2076,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" dependencies = [ "base16ct", + "base64ct", "crypto-bigint", "digest 0.10.7", "ff", @@ -2043,13 +2087,16 @@ dependencies = [ "pkcs8", "rand_core 0.6.4", "sec1", + "serde_json", + "serdect", "subtle", + "tap", "zeroize", ] [[package]] name = "email" -version = "0.16.4" +version = "0.16.5" dependencies = [ "aes 0.8.4", "aes-gcm", @@ -2101,24 +2148,6 @@ dependencies = [ "cfg-if", ] -[[package]] -name = "endian-type" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d" - -[[package]] -name = "enum-as-inner" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1e6a265c649f3f5979b601d26f1d05ada116434c87741c9493cb56218f76cbc" -dependencies = [ - "heck", - "proc-macro2", - "quote", - "syn 2.0.117", -] - [[package]] name = "equivalent" version = "1.0.2" @@ -2164,7 +2193,7 @@ dependencies = [ [[package]] name = "event_macro" -version = "0.16.4" +version = "0.16.5" dependencies = [ "proc-macro2", "quote", @@ -2195,7 +2224,7 @@ version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72cf461f865c862bb7dc573f643dd6a2b6842f7c30b07882b56bd148cc2761b8" dependencies = [ - "bit-set", + "bit-set 0.8.0", "regex-automata", "regex-syntax", ] @@ -2206,7 +2235,7 @@ version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e1e1dacd0d2082dfcf1351c4bdd566bbe89a2b263235a2b50058f1e130a47277" dependencies = [ - "bit-set", + "bit-set 0.8.0", "regex-automata", "regex-syntax", ] @@ -2256,6 +2285,7 @@ version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" dependencies = [ + "bitvec", "rand_core 0.6.4", "subtle", ] @@ -2671,7 +2701,7 @@ dependencies = [ [[package]] name = "groupware" -version = "0.16.4" +version = "0.16.5" dependencies = [ "ahash", "calcard", @@ -2752,9 +2782,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.17.0" +version = "0.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f467dd6dccf739c208452f8014c75c18bb8301b050ad1cfb27153803edb0f51" +checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" [[package]] name = "hashify" @@ -2795,25 +2825,6 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" -[[package]] -name = "hickory-client" -version = "0.25.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c466cd63a4217d5b2b8e32f23f58312741ce96e3c84bf7438677d2baff0fc555" -dependencies = [ - "cfg-if", - "data-encoding", - "futures-channel", - "futures-util", - "hickory-proto 0.25.2", - "once_cell", - "radix_trie", - "rand 0.9.4", - "thiserror 2.0.18", - "tokio", - "tracing", -] - [[package]] name = "hickory-net" version = "0.26.1" @@ -2829,7 +2840,9 @@ dependencies = [ "futures-channel", "futures-io", "futures-util", - "hickory-proto 0.26.1", + "h2", + "hickory-proto", + "http 1.4.0", "idna", "ipnet", "jni 0.22.4", @@ -2847,40 +2860,6 @@ dependencies = [ "url", ] -[[package]] -name = "hickory-proto" -version = "0.25.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8a6fe56c0038198998a6f217ca4e7ef3a5e51f46163bd6dd60b5c71ca6c6502" -dependencies = [ - "async-trait", - "aws-lc-rs", - "bitflags", - "bytes", - "cfg-if", - "data-encoding", - "enum-as-inner", - "futures-channel", - "futures-io", - "futures-util", - "h2", - "http 1.4.0", - "idna", - "ipnet", - "once_cell", - "rand 0.9.4", - "ring", - "rustls 0.23.40", - "rustls-pki-types", - "thiserror 2.0.18", - "time", - "tinyvec", - "tokio", - "tokio-rustls", - "tracing", - "url", -] - [[package]] name = "hickory-proto" version = "0.26.1" @@ -2914,7 +2893,7 @@ dependencies = [ "cfg-if", "futures-util", "hickory-net", - "hickory-proto 0.26.1", + "hickory-proto", "ipconfig", "ipnet", "jni 0.22.4", @@ -3001,7 +2980,7 @@ dependencies = [ [[package]] name = "http" -version = "0.16.4" +version = "0.16.5" dependencies = [ "async-stream", "base64 0.22.1", @@ -3025,7 +3004,7 @@ dependencies = [ "mail-parser", "mime", "pkcs8", - "quick-xml 0.39.3", + "quick-xml 0.39.4", "registry", "rkyv", "rsa", @@ -3100,7 +3079,7 @@ dependencies = [ [[package]] name = "http_proto" -version = "0.16.4" +version = "0.16.5" dependencies = [ "common", "compact_str", @@ -3135,9 +3114,9 @@ checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" [[package]] name = "hybrid-array" -version = "0.4.11" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d46837a0ed51fe95bd3b05de33cd64a1ee88fc797477ca48446872504507c5" +checksum = "9155a582abd142abc056962c29e3ce5ff2ad5469f4246b537ed42c5deba857da" dependencies = [ "typenum", ] @@ -3372,7 +3351,7 @@ checksum = "09e54e57b4c48b40f7aec75635392b12b3421fa26fe8b4332e63138ed278459c" [[package]] name = "imap" -version = "0.16.4" +version = "0.16.5" dependencies = [ "ahash", "common", @@ -3399,7 +3378,7 @@ dependencies = [ [[package]] name = "imap_proto" -version = "0.16.4" +version = "0.16.5" dependencies = [ "ahash", "chrono", @@ -3463,7 +3442,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9" dependencies = [ "equivalent", - "hashbrown 0.17.0", + "hashbrown 0.17.1", "serde", "serde_core", ] @@ -3542,16 +3521,6 @@ dependencies = [ "serde", ] -[[package]] -name = "iri-string" -version = "0.7.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25e659a4bb38e810ebc252e53b5814ff908a8c58c2a9ce2fae1bbec24cbf4e20" -dependencies = [ - "memchr", - "serde", -] - [[package]] name = "itertools" version = "0.13.0" @@ -3621,7 +3590,7 @@ dependencies = [ [[package]] name = "jmap" -version = "0.16.4" +version = "0.16.5" dependencies = [ "aes-gcm", "aes-gcm-siv", @@ -3643,7 +3612,7 @@ dependencies = [ "hyper-util", "jmap-tools", "jmap_proto", - "lz4_flex 0.13.0", + "lz4_flex 0.13.1", "mail-auth", "mail-builder", "mail-parser", @@ -3709,7 +3678,7 @@ dependencies = [ [[package]] name = "jmap_proto" -version = "0.16.4" +version = "0.16.5" dependencies = [ "ahash", "calcard", @@ -3813,9 +3782,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.97" +version = "0.3.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1840c94c045fbcf8ba2812c95db44499f7c64910a912551aaaa541decebcacf" +checksum = "67df7112613f8bfd9150013a0314e196f4800d3201ae742489d999db2f979f08" dependencies = [ "cfg-if", "futures-util", @@ -3836,9 +3805,9 @@ dependencies = [ [[package]] name = "jsonwebtoken" -version = "10.3.0" +version = "10.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0529410abe238729a60b108898784df8984c87f6054c9c4fcacc47e4803c1ce1" +checksum = "eba32bfb4ffdeaca3e34431072faf01745c9b26d25504aa7a6cf5684334fc4fc" dependencies = [ "base64 0.22.1", "ed25519-dalek", @@ -3855,6 +3824,7 @@ dependencies = [ "sha2 0.10.9", "signature", "simple_asn1", + "zeroize", ] [[package]] @@ -3901,16 +3871,16 @@ checksum = "a4933f3f57a8e9d9da04db23fb153356ecaf00cbd14aee46279c33dc80925c37" [[package]] name = "lalrpop" -version = "0.22.2" +version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba4ebbd48ce411c1d10fb35185f5a51a7bfa3d8b24b4e330d30c9e3a34129501" +checksum = "98a80a963123205c7157323c99611bc4abb65dcbd62ef46dc4bac74a3941bc75" dependencies = [ "ascii-canvas", - "bit-set", + "bit-set 0.9.1", "ena", "itertools 0.14.0", "lalrpop-util", - "petgraph 0.7.1", + "petgraph", "regex", "regex-syntax", "sha3", @@ -3922,12 +3892,11 @@ dependencies = [ [[package]] name = "lalrpop-util" -version = "0.22.2" +version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5baa5e9ff84f1aefd264e6869907646538a52147a755d494517a8007fb48733" +checksum = "884f3e747ed2dcee867cda1b0c31a048f9e20de2d916a248949319921a2e666e" dependencies = [ "regex-automata", - "rustversion", ] [[package]] @@ -4157,9 +4126,9 @@ dependencies = [ [[package]] name = "lz4_flex" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db9a0d582c2874f68138a16ce1867e0ffde6c0bb0a0df85e1f36d04146db488a" +checksum = "7ef0d4ed8669f8f8826eb00dc878084aa8f253506c4fd5e8f58f5bce72ddb97e" dependencies = [ "twox-hash 2.1.2", ] @@ -4185,7 +4154,7 @@ dependencies = [ "hickory-resolver", "mail-builder", "mail-parser", - "quick-xml 0.39.3", + "quick-xml 0.39.4", "rand 0.8.6", "rkyv", "rsa", @@ -4218,7 +4187,7 @@ dependencies = [ [[package]] name = "managesieve" -version = "0.16.4" +version = "0.16.5" dependencies = [ "ahash", "common", @@ -4331,7 +4300,7 @@ checksum = "c797b9d6bb23aab2fc369c65f871be49214f5c759af65bde26ffaaa2b646b492" [[package]] name = "migration" -version = "0.16.4" +version = "0.16.5" dependencies = [ "base64 0.22.1", "common", @@ -4339,7 +4308,7 @@ dependencies = [ "directory", "email", "futures", - "lz4_flex 0.13.0", + "lz4_flex 0.13.1", "nlp", "num_cpus", "proc_macros", @@ -4534,15 +4503,6 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" -[[package]] -name = "nibble_vec" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77a5d83df9f36fe23f0c3648c6bbb8b0298bb5f1939c8f2704431371f4b84d43" -dependencies = [ - "smallvec", -] - [[package]] name = "nix" version = "0.30.1" @@ -4557,7 +4517,7 @@ dependencies = [ [[package]] name = "nlp" -version = "0.16.4" +version = "0.16.5" dependencies = [ "ahash", "bincode 1.3.3", @@ -5109,16 +5069,6 @@ dependencies = [ "sha2 0.10.9", ] -[[package]] -name = "petgraph" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772" -dependencies = [ - "fixedbitset", - "indexmap 2.14.0", -] - [[package]] name = "petgraph" version = "0.8.3" @@ -5184,15 +5134,6 @@ dependencies = [ "syn 2.0.117", ] -[[package]] -name = "phf_shared" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" -dependencies = [ - "siphasher", -] - [[package]] name = "phf_shared" version = "0.12.1" @@ -5310,7 +5251,7 @@ dependencies = [ [[package]] name = "pop3" -version = "0.16.4" +version = "0.16.5" dependencies = [ "common", "directory", @@ -5482,7 +5423,7 @@ dependencies = [ [[package]] name = "proc_macros" -version = "0.16.4" +version = "0.16.5" dependencies = [ "proc-macro2", "quote", @@ -5547,9 +5488,9 @@ dependencies = [ [[package]] name = "psl" -version = "2.1.206" +version = "2.1.208" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0fd5dad387c0ff76cf1ac9f0f90ee4f1d966c969edfe7325e73141bf4352e0a" +checksum = "4bde51f827dca976f8f9a8c91329a3193114dc076b8012a1ee3624f1588c3582" dependencies = [ "psl-types", ] @@ -5623,9 +5564,9 @@ dependencies = [ [[package]] name = "quick-xml" -version = "0.39.3" +version = "0.39.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "721da970c312655cde9b4ffe0547f20a8494866a4af5ff51f18b7c633d0c870b" +checksum = "cdcc8dd4e2f670d309a5f0e83fe36dfdc05af317008fea29144da1a2ac858e5e" dependencies = [ "memchr", "serde", @@ -5739,16 +5680,6 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" -[[package]] -name = "radix_trie" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c069c179fcdc6a2fe24d8d18305cf085fdbd4f922c041943e203685d6a1c58fd" -dependencies = [ - "endian-type", - "nibble_vec", -] - [[package]] name = "radsort" version = "0.1.1" @@ -5970,9 +5901,9 @@ dependencies = [ [[package]] name = "rcgen" -version = "0.14.7" +version = "0.14.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10b99e0098aa4082912d4c649628623db6aba77335e4f4569ff5083a6448b32e" +checksum = "57f6d249aad744e274e682777a50283a225a32705394ee6d5fcc01efa25e4055" dependencies = [ "pem", "ring", @@ -6120,7 +6051,7 @@ dependencies = [ "ahash", "hashify", "jmap-tools", - "lz4_flex 0.13.0", + "lz4_flex 0.13.1", "mail-auth", "serde", "serde_json", @@ -6281,7 +6212,7 @@ checksum = "73389e0c99e664f919275ab5b5b0471391fe9a8de61e1dff9b1eaf56a90f16e3" dependencies = [ "bytecheck", "bytes", - "hashbrown 0.17.0", + "hashbrown 0.17.1", "indexmap 2.14.0", "munge", "ptr_meta", @@ -6758,6 +6689,7 @@ dependencies = [ "der", "generic-array 0.14.7", "pkcs8", + "serdect", "subtle", "zeroize", ] @@ -6803,9 +6735,9 @@ checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" [[package]] name = "sequoia-openpgp" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0620e44a7d514adf7df87b44db235f13b81fed7ddc265adb26f014d42626ac47" +checksum = "c847f0f148cf238c3aec88d092fd3c4301c21e906829ea9e415ea7531f7ec094" dependencies = [ "aes 0.8.4", "aes-gcm", @@ -6821,6 +6753,7 @@ dependencies = [ "cfb-mode", "chrono", "cipher 0.4.4", + "cx448", "des", "digest 0.10.7", "dsa", @@ -6840,6 +6773,7 @@ dependencies = [ "md-5 0.10.6", "memsec", "num-bigint-dig", + "num-integer", "ocb3", "p256", "p384", @@ -6961,11 +6895,12 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.19.0" +version = "3.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f05839ce67618e14a09b286535c0d9c94e85ef25469b0e13cb4f844e5593eb19" +checksum = "e72c1c2cb7b223fafb600a619537a871c2818583d619401b785e7c0b746ccde2" dependencies = [ "base64 0.22.1", + "bs58", "chrono", "hex", "indexmap 1.9.3", @@ -6980,9 +6915,9 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.19.0" +version = "3.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf2ebbe86054f9b45bc3881e865683ccfaccce97b9b4cb53f3039d67f355a334" +checksum = "b90c488738ecb4fb0262f41f43bc40efc5868d9fb744319ddf5f5317f417bfac" dependencies = [ "darling 0.23.0", "proc-macro2", @@ -7003,6 +6938,16 @@ dependencies = [ "unsafe-libyaml", ] +[[package]] +name = "serdect" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a84f14a19e9a014bb9f4512488d9829a68e04ecabffb0f9904cd1ace94598177" +dependencies = [ + "base16ct", + "serde", +] + [[package]] name = "serial_test" version = "3.4.0" @@ -7031,7 +6976,7 @@ dependencies = [ [[package]] name = "services" -version = "0.16.4" +version = "0.16.5" dependencies = [ "aes-gcm", "aes-gcm-siv", @@ -7283,7 +7228,7 @@ checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" [[package]] name = "smtp" -version = "0.16.4" +version = "0.16.5" dependencies = [ "ahash", "base64 0.22.1", @@ -7384,7 +7329,7 @@ dependencies = [ [[package]] name = "spam-filter" -version = "0.16.4" +version = "0.16.5" dependencies = [ "common", "compact_str", @@ -7494,7 +7439,7 @@ checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" [[package]] name = "stalwart" -version = "0.16.4" +version = "0.16.5" dependencies = [ "common", "coordinator", @@ -7502,7 +7447,7 @@ dependencies = [ "directory", "email", "groupware", - "http 0.16.4", + "http 0.16.5", "http_proto", "imap", "jemallocator", @@ -7531,7 +7476,7 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" [[package]] name = "store" -version = "0.16.4" +version = "0.16.5" dependencies = [ "ahash", "arc-swap", @@ -7551,7 +7496,7 @@ dependencies = [ "futures", "gethostname", "lru-cache", - "lz4_flex 0.13.0", + "lz4_flex 0.13.1", "memchr", "mysql_async", "nlp", @@ -7586,13 +7531,13 @@ dependencies = [ [[package]] name = "string_cache" -version = "0.8.9" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf776ba3fa74f83bf4b63c3dcbbf82173db2632ed8452cb2d891d33f459de70f" +checksum = "a18596f8c785a729f2819c0f6a7eae6ebeebdfffbfe4214ae6b087f690e31901" dependencies = [ "new_debug_unreachable", "parking_lot", - "phf_shared 0.11.3", + "phf_shared 0.13.1", "precomputed-hash", ] @@ -7728,7 +7673,7 @@ dependencies = [ [[package]] name = "tests" -version = "0.16.4" +version = "0.16.5" dependencies = [ "ahash", "async-trait", @@ -7752,7 +7697,7 @@ dependencies = [ "form_urlencoded", "futures", "groupware", - "http 0.16.4", + "http 0.16.5", "http-body-util", "http_proto", "hyper", @@ -7772,7 +7717,7 @@ dependencies = [ "nlp", "num_cpus", "pop3", - "quick-xml 0.39.3", + "quick-xml 0.39.4", "rayon", "registry", "reqwest 0.13.3", @@ -7938,9 +7883,9 @@ dependencies = [ [[package]] name = "tokio" -version = "1.52.2" +version = "1.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "110a78583f19d5cdb2c5ccf321d1290344e71313c6c37d43520d386027d18386" +checksum = "8fc7f01b389ac15039e4dc9531aa973a135d7a4135281b12d7c1bc79fd57fffe" dependencies = [ "bytes", "libc", @@ -8094,9 +8039,9 @@ dependencies = [ [[package]] name = "tonic" -version = "0.14.5" +version = "0.14.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fec7c61a0695dc1887c1b53952990f3ad2e3a31453e1f49f10e75424943a93ec" +checksum = "ac2a5518c70fa84342385732db33fb3f44bc4cc748936eb5833d2df34d6445ef" dependencies = [ "async-trait", "base64 0.22.1", @@ -8122,9 +8067,9 @@ dependencies = [ [[package]] name = "tonic-prost" -version = "0.14.5" +version = "0.14.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a55376a0bbaa4975a3f10d009ad763d8f4108f067c7c2e74f3001fb49778d309" +checksum = "50849f68853be452acf590cde0b146665b8d507b3b8af17261df47e02c209ea0" dependencies = [ "bytes", "prost", @@ -8133,9 +8078,9 @@ dependencies = [ [[package]] name = "tonic-types" -version = "0.14.5" +version = "0.14.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a875a902255423d34c1f20838ab374126db8eb41625b7947a1d54113b0b7399" +checksum = "73ab1b02061f83d519bba3caa167f88f261ef05720ab8ebc954ade70de3348e8" dependencies = [ "prost", "prost-types", @@ -8178,9 +8123,9 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.6.8" +version = "0.6.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8" +checksum = "68d6fdd9f81c2819c9a8b0e0cd91660e7746a8e6ea2ba7c6b2b057985f6bcb51" dependencies = [ "async-compression", "bitflags", @@ -8190,13 +8135,13 @@ dependencies = [ "http 1.4.0", "http-body", "http-body-util", - "iri-string", "pin-project-lite", "tokio", "tokio-util", "tower", "tower-layer", "tower-service", + "url", ] [[package]] @@ -8288,7 +8233,7 @@ dependencies = [ [[package]] name = "trc" -version = "0.16.4" +version = "0.16.5" dependencies = [ "ahash", "base64 0.22.1", @@ -8381,7 +8326,7 @@ checksum = "40ce102ab67701b8526c123c1bab5cbe42d7040ccfd0f64af1a385808d2f43de" [[package]] name = "types" -version = "0.16.4" +version = "0.16.5" dependencies = [ "blake3", "compact_str", @@ -8546,7 +8491,7 @@ checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" [[package]] name = "utils" -version = "0.16.4" +version = "0.16.5" dependencies = [ "ahash", "arcstr", @@ -8728,9 +8673,9 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.120" +version = "0.2.121" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df52b6d9b87e0c74c9edfa1eb2d9bf85e5d63515474513aa50fa181b3c4f5db1" +checksum = "49ace1d07c165b0864824eee619580c4689389afa9dc9ed3a4c75040d82e6790" dependencies = [ "cfg-if", "once_cell", @@ -8741,9 +8686,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.70" +version = "0.4.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af934872acec734c2d80e6617bbb5ff4f12b052dd8e6332b0817bce889516084" +checksum = "96492d0d3ffba25305a7dc88720d250b1401d7edca02cc3bcd50633b424673b8" dependencies = [ "js-sys", "wasm-bindgen", @@ -8751,9 +8696,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.120" +version = "0.2.121" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78b1041f495fb322e64aca85f5756b2172e35cd459376e67f2a6c9dffcedb103" +checksum = "8e68e6f4afd367a562002c05637acb8578ff2dea1943df76afb9e83d177c8578" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -8761,9 +8706,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.120" +version = "0.2.121" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dcd0ff20416988a18ac686d4d4d0f6aae9ebf08a389ff5d29012b05af2a1b41" +checksum = "d95a9ec35c64b2a7cb35d3fead40c4238d0940c86d107136999567a4703259f2" dependencies = [ "bumpalo", "proc-macro2", @@ -8774,9 +8719,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.120" +version = "0.2.121" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49757b3c82ebf16c57d69365a142940b384176c24df52a087fb748e2085359ea" +checksum = "c4e0100b01e9f0d03189a92b96772a1fb998639d981193d7dbab487302513441" dependencies = [ "unicode-ident", ] @@ -8843,9 +8788,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.97" +version = "0.3.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2eadbac71025cd7b0834f20d1fe8472e8495821b4e9801eb0a60bd1f19827602" +checksum = "4b572dff8bcf38bad0fa19729c89bb5748b2b9b1d8be70cf90df697e3a8f32aa" dependencies = [ "js-sys", "wasm-bindgen", @@ -9477,9 +9422,9 @@ dependencies = [ [[package]] name = "xml" -version = "1.2.1" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8aa498d22c9bbaf482329839bc5620c46be275a19a812e9a22a2b07529a642a" +checksum = "636f85e5ca6488e96401b61eb7de54f4e44755c988af0f52cf90230c312a1a89" [[package]] name = "xml-no-std" @@ -9504,10 +9449,11 @@ checksum = "fdd20c5420375476fbd4394763288da7eb0cc0b8c11deed431a91562af7335d3" [[package]] name = "yasna" -version = "0.5.2" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e17bb3549cc1321ae1296b9cdc2698e2b6cb1992adfa19a8c72e5b7a738f44cd" +checksum = "b5f6765e852b9b4dc8e2a76843e4d64d1cea8e79bcde0b6901aea8e7c7f08282" dependencies = [ + "bit-vec 0.9.1", "time", ] @@ -9554,7 +9500,7 @@ dependencies = [ "lazy_static", "nonempty-collections", "once_cell", - "petgraph 0.8.3", + "petgraph", "phf 0.13.1", "rand 0.8.6", "rustc_version", diff --git a/crates/common/Cargo.toml b/crates/common/Cargo.toml index 35a75875..5ab639c7 100644 --- a/crates/common/Cargo.toml +++ b/crates/common/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "common" -version = "0.16.4" +version = "0.16.5" edition = "2024" build = "build.rs" @@ -20,7 +20,7 @@ mail-parser = { version = "0.11", features = ["full_encoding"] } mail-builder = { version = "0.4" } mail-auth = { version = "0.9", features = ["generate"] } smtp-proto = { version = "0.2", features = ["rkyv"] } -dns-update = { version = "0.2.1" } +dns-update = { version = "0.3" } calcard = { version = "0.3", features = ["rkyv"] } ahash = { version = "0.8.2", features = ["serde"] } parking_lot = "0.12.1" diff --git a/crates/common/src/auth/authentication.rs b/crates/common/src/auth/authentication.rs index 31227b68..03b01bf9 100644 --- a/crates/common/src/auth/authentication.rs +++ b/crates/common/src/auth/authentication.rs @@ -274,7 +274,7 @@ impl Server { self.get_directory_for_cached_domain(&impersonated_domain_cache) && let Recipient::Account(account) = directory.recipient(address).await? { - account_id = Some(self.synchronize_account(account).await?.id); + account_id = Some(Box::pin(self.synchronize_account(account)).await?.id); } if let Some(account_id) = account_id { trc::event!( diff --git a/crates/common/src/network/dns/update.rs b/crates/common/src/network/dns/update.rs index eb233d52..86173203 100644 --- a/crates/common/src/network/dns/update.rs +++ b/crates/common/src/network/dns/update.rs @@ -7,18 +7,13 @@ use crate::{Core, Server}; use base64::{Engine, engine::general_purpose}; use dns_update::{ - Algorithm, DnsRecord, DnsRecordType, TsigAlgorithm, - dnssec::{ - self, SigningKey, - crypto::{EcdsaSigningKey, Ed25519SigningKey}, - }, + DnsRecord, DnsRecordType, TsigAlgorithm, providers::{ovh::OvhEndpoint, rfc2136::DnsAddress}, }; use registry::schema::{ enums, structs::{DnsManagement, DnsServer, Domain}, }; -use rustls_pki_types::PrivatePkcs8KeyDer; use std::{ net::SocketAddr, sync::Arc, @@ -80,60 +75,8 @@ impl DnsUpdater { ) .map_err(|err| format!("Failed to build DNS updater: {}", err))?, }), - DnsServer::Sig0(server) => { - let key_bytes = server.key.secret().await?; - let pem_parsed = pem::parse(key_bytes.as_bytes()) - .map_err(|err| format!("Failed to parse PEM key: {}", err))?; - let pkcs8_der = PrivatePkcs8KeyDer::from(pem_parsed.contents()); - let signing_key: Box = match server.sig0_algorithm { - enums::Sig0Algorithm::EcdsaP256Sha256 => Box::new( - EcdsaSigningKey::from_pkcs8(&pkcs8_der, dnssec::Algorithm::ECDSAP256SHA256) - .map_err(|err| { - format!("Failed to build ECDSA P-256 signing key: {}", err) - })?, - ), - enums::Sig0Algorithm::EcdsaP384Sha384 => Box::new( - EcdsaSigningKey::from_pkcs8(&pkcs8_der, dnssec::Algorithm::ECDSAP384SHA384) - .map_err(|err| { - format!("Failed to build ECDSA P-384 signing key: {}", err) - })?, - ), - enums::Sig0Algorithm::Ed25519 => { - Box::new(Ed25519SigningKey::from_pkcs8(&pkcs8_der).map_err(|err| { - format!("Failed to build Ed25519 signing key: {}", err) - })?) - } - }; - - #[allow(deprecated)] - Ok(DnsUpdater { - polling_interval: server.polling_interval.into_inner(), - propagation_timeout: server.propagation_timeout.into_inner(), - propagation_delay: server.propagation_delay.map(|d| d.into_inner()), - ttl: server.ttl.into_inner(), - core, - updater: dns_update::DnsUpdater::new_rfc2136_sig0( - match server.protocol { - enums::IpProtocol::Udp => DnsAddress::Tcp(SocketAddr::new( - server.host.into_inner(), - server.port as u16, - )), - enums::IpProtocol::Tcp => DnsAddress::Udp(SocketAddr::new( - server.host.into_inner(), - server.port as u16, - )), - }, - server.signer_name, - signing_key, - server.public_key, - match server.sig0_algorithm { - enums::Sig0Algorithm::EcdsaP256Sha256 => Algorithm::ECDSAP256SHA256, - enums::Sig0Algorithm::EcdsaP384Sha384 => Algorithm::ECDSAP384SHA384, - enums::Sig0Algorithm::Ed25519 => Algorithm::ED25519, - }, - ) - .map_err(|err| format!("Failed to build DNS updater: {}", err))?, - }) + DnsServer::Sig0(_) => { + Err("RFC 2136 with SIG(0) authentication is no longer supported".into()) } DnsServer::Cloudflare(server) => { let updater = { diff --git a/crates/dav-proto/Cargo.toml b/crates/dav-proto/Cargo.toml index 23e96502..13a73fa6 100644 --- a/crates/dav-proto/Cargo.toml +++ b/crates/dav-proto/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "dav-proto" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/dav/Cargo.toml b/crates/dav/Cargo.toml index 7a9e8a50..1669e91e 100644 --- a/crates/dav/Cargo.toml +++ b/crates/dav/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "dav" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/directory/Cargo.toml b/crates/directory/Cargo.toml index a907bfdd..153e063f 100644 --- a/crates/directory/Cargo.toml +++ b/crates/directory/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "directory" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/email/Cargo.toml b/crates/email/Cargo.toml index 4e23f04f..2bb2893e 100644 --- a/crates/email/Cargo.toml +++ b/crates/email/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "email" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/groupware/Cargo.toml b/crates/groupware/Cargo.toml index 8bcc87ce..54fdf062 100644 --- a/crates/groupware/Cargo.toml +++ b/crates/groupware/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "groupware" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/http-proto/Cargo.toml b/crates/http-proto/Cargo.toml index 321a8b10..4eaea566 100644 --- a/crates/http-proto/Cargo.toml +++ b/crates/http-proto/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "http_proto" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/http/Cargo.toml b/crates/http/Cargo.toml index 9e06588f..bb6ec8ea 100644 --- a/crates/http/Cargo.toml +++ b/crates/http/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "http" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/imap-proto/Cargo.toml b/crates/imap-proto/Cargo.toml index 0492ddba..713ecc9a 100644 --- a/crates/imap-proto/Cargo.toml +++ b/crates/imap-proto/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "imap_proto" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/imap/Cargo.toml b/crates/imap/Cargo.toml index ca111cd0..d9be49c4 100644 --- a/crates/imap/Cargo.toml +++ b/crates/imap/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "imap" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/jmap-proto/Cargo.toml b/crates/jmap-proto/Cargo.toml index 95099384..7c49986d 100644 --- a/crates/jmap-proto/Cargo.toml +++ b/crates/jmap-proto/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "jmap_proto" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/jmap/Cargo.toml b/crates/jmap/Cargo.toml index 00a9c9a9..238faa5d 100644 --- a/crates/jmap/Cargo.toml +++ b/crates/jmap/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "jmap" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/main/Cargo.toml b/crates/main/Cargo.toml index f3803f4f..d026419f 100644 --- a/crates/main/Cargo.toml +++ b/crates/main/Cargo.toml @@ -7,7 +7,7 @@ homepage = "https://stalw.art" keywords = ["imap", "jmap", "smtp", "email", "mail", "webdav", "server"] categories = ["email"] license = "AGPL-3.0-only OR LicenseRef-SEL" -version = "0.16.4" +version = "0.16.5" edition = "2024" [[bin]] diff --git a/crates/managesieve/Cargo.toml b/crates/managesieve/Cargo.toml index 3d88e785..678b4601 100644 --- a/crates/managesieve/Cargo.toml +++ b/crates/managesieve/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "managesieve" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/migration/Cargo.toml b/crates/migration/Cargo.toml index 3003da77..f8dbec1c 100644 --- a/crates/migration/Cargo.toml +++ b/crates/migration/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "migration" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/nlp/Cargo.toml b/crates/nlp/Cargo.toml index 802c7140..6c8d5157 100644 --- a/crates/nlp/Cargo.toml +++ b/crates/nlp/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "nlp" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/pop3/Cargo.toml b/crates/pop3/Cargo.toml index 8844c2cf..4ca63100 100644 --- a/crates/pop3/Cargo.toml +++ b/crates/pop3/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pop3" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/services/Cargo.toml b/crates/services/Cargo.toml index 992814ab..092bc7ee 100644 --- a/crates/services/Cargo.toml +++ b/crates/services/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "services" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] @@ -34,7 +34,7 @@ sha2 = "0.11" reqwest = { version = "0.13", default-features = false, features = ["rustls", "http2"]} base64 = "0.22" compact_str = "0.9.0" -dns-update = { version = "0.2.1" } +dns-update = { version = "0.3" } [dev-dependencies] diff --git a/crates/smtp/Cargo.toml b/crates/smtp/Cargo.toml index bf0a8cbb..65c21f1f 100644 --- a/crates/smtp/Cargo.toml +++ b/crates/smtp/Cargo.toml @@ -7,7 +7,7 @@ homepage = "https://stalw.art/smtp" keywords = ["smtp", "email", "mail", "server"] categories = ["email"] license = "AGPL-3.0-only OR LicenseRef-SEL" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/spam-filter/Cargo.toml b/crates/spam-filter/Cargo.toml index 395504ee..f8f77814 100644 --- a/crates/spam-filter/Cargo.toml +++ b/crates/spam-filter/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "spam-filter" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/store/Cargo.toml b/crates/store/Cargo.toml index 8f78b664..e934714c 100644 --- a/crates/store/Cargo.toml +++ b/crates/store/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "store" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/trc/Cargo.toml b/crates/trc/Cargo.toml index 0f4bdd81..87c351fc 100644 --- a/crates/trc/Cargo.toml +++ b/crates/trc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "trc" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/trc/event-macro/Cargo.toml b/crates/trc/event-macro/Cargo.toml index 0cdcce63..db33f421 100644 --- a/crates/trc/event-macro/Cargo.toml +++ b/crates/trc/event-macro/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "event_macro" -version = "0.16.4" +version = "0.16.5" edition = "2024" [lib] diff --git a/crates/types/Cargo.toml b/crates/types/Cargo.toml index 6dc88755..6f955c78 100644 --- a/crates/types/Cargo.toml +++ b/crates/types/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "types" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/utils/Cargo.toml b/crates/utils/Cargo.toml index 75d6fe08..9ffa23c3 100644 --- a/crates/utils/Cargo.toml +++ b/crates/utils/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "utils" -version = "0.16.4" +version = "0.16.5" edition = "2024" [dependencies] diff --git a/crates/utils/proc-macros/Cargo.toml b/crates/utils/proc-macros/Cargo.toml index 446c1f8e..80728077 100644 --- a/crates/utils/proc-macros/Cargo.toml +++ b/crates/utils/proc-macros/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "proc_macros" -version = "0.16.4" +version = "0.16.5" edition = "2024" [lib] diff --git a/tests/Cargo.toml b/tests/Cargo.toml index 5cdd7a1c..838a6776 100644 --- a/tests/Cargo.toml +++ b/tests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tests" -version = "0.16.4" +version = "0.16.5" edition = "2024" [features] @@ -81,7 +81,7 @@ rkyv = { version = "0.8.10", features = ["little_endian"] } compact_str = "0.9.0" quick-xml = "0.39" jmap-tools = { version = "0.1" } -dns-update = { version = "0.2.1", features = ["test_provider"] } +dns-update = { version = "0.3", features = ["test_provider"] } x509-parser = "0.18" [target.'cfg(not(target_env = "msvc"))'.dependencies]