From b2a808911faa0e9f10f0924cdf839468dcbb41fe Mon Sep 17 00:00:00 2001
From: mdecimus <11444311+mdecimus@users.noreply.github.com>
Date: Sat, 14 Feb 2026 18:55:56 +0000
Subject: [PATCH] v0.15.5
---
.github/workflows/sponsors.yml | 28 --
CHANGELOG.md | 18 +
Cargo.lock | 633 +++++++++++++++++-----------
README.md | 6 +-
crates/cli/Cargo.toml | 2 +-
crates/common/Cargo.toml | 2 +-
crates/dav-proto/Cargo.toml | 2 +-
crates/dav/Cargo.toml | 2 +-
crates/directory/Cargo.toml | 2 +-
crates/email/Cargo.toml | 2 +-
crates/groupware/Cargo.toml | 2 +-
crates/http-proto/Cargo.toml | 2 +-
crates/http/Cargo.toml | 2 +-
crates/imap-proto/Cargo.toml | 2 +-
crates/imap/Cargo.toml | 2 +-
crates/imap/src/op/fetch.rs | 8 +
crates/jmap-proto/Cargo.toml | 2 +-
crates/jmap/Cargo.toml | 2 +-
crates/jmap/src/email/body.rs | 8 +
crates/main/Cargo.toml | 2 +-
crates/managesieve/Cargo.toml | 2 +-
crates/migration/Cargo.toml | 2 +-
crates/nlp/Cargo.toml | 2 +-
crates/pop3/Cargo.toml | 2 +-
crates/services/Cargo.toml | 2 +-
crates/smtp/Cargo.toml | 2 +-
crates/spam-filter/Cargo.toml | 2 +-
crates/store/Cargo.toml | 2 +-
crates/trc/Cargo.toml | 2 +-
crates/trc/event-macro/Cargo.toml | 2 +-
crates/types/Cargo.toml | 2 +-
crates/utils/Cargo.toml | 2 +-
crates/utils/proc-macros/Cargo.toml | 2 +-
tests/Cargo.toml | 2 +-
34 files changed, 454 insertions(+), 303 deletions(-)
delete mode 100644 .github/workflows/sponsors.yml
diff --git a/.github/workflows/sponsors.yml b/.github/workflows/sponsors.yml
deleted file mode 100644
index 1c2cab25..00000000
--- a/.github/workflows/sponsors.yml
+++ /dev/null
@@ -1,28 +0,0 @@
-name: Generate Sponsors README
-on:
- workflow_dispatch:
- schedule:
- - cron: 30 15 * * 0-6
-permissions:
- contents: write
-jobs:
- deploy:
- if: github.event_name != 'schedule' || !github.event.repository.fork
- runs-on: ubuntu-latest
- steps:
- - name: Checkout ποΈ
- uses: actions/checkout@v6.0.1
-
- - name: Generate Sponsors π
- uses: JamesIves/github-sponsors-readme-action@v1
- with:
- token: ${{ secrets.SPONSORS_PAT }}
- file: 'README.md'
- minimum: 2500
- organization: true
-
- - name: Deploy to GitHub Pages π
- uses: JamesIves/github-pages-deploy-action@v4
- with:
- branch: main
- folder: '.'
diff --git a/CHANGELOG.md b/CHANGELOG.md
index e3e16bf2..084b22e4 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,24 @@
All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/).
+## [0.15.5] - 2026-02-14
+
+If you are upgrading from v0.14.x and below, this version includes **multiple breaking changes**. Please read the [upgrading documentation](https://github.com/stalwartlabs/stalwart/blob/main/UPGRADING/v0_15.md) for more information on how to upgrade from previous versions.
+If you are upgrading from v0.15.x, replace the binary and update the webadmin.
+
+## Added
+
+## Changed
+
+## Fixed
+- IMAP/JMAP: OOM when `mail-parser` returns cyclical MIME structures.
+- Tracing: Fix tracing indexing when using separate stores.
+- JMAP: Fix `upToId` computation in `*/queryChanges`.
+- JMAP: Include createdIds when the property is present.
+- JMAP: Respect query arguments in `Email/queryChanges`.
+- JMAP: Return the correct container/item change id when there are no changes.
+
+
## [0.15.4] - 2026-01-19
If you are upgrading from v0.14.x and below, this version includes **multiple breaking changes**. Please read the [upgrading documentation](https://github.com/stalwartlabs/stalwart/blob/main/UPGRADING/v0_15.md) for more information on how to upgrade from previous versions.
diff --git a/Cargo.lock b/Cargo.lock
index e11d4278..e1e69a31 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -170,9 +170,9 @@ dependencies = [
[[package]]
name = "anyhow"
-version = "1.0.100"
+version = "1.0.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61"
+checksum = "5f0e0fee31ef5ed1ba1316088939cea399010ed7731dba877ed44aeb407a75ea"
[[package]]
name = "arbitrary"
@@ -185,9 +185,9 @@ dependencies = [
[[package]]
name = "arc-swap"
-version = "1.8.0"
+version = "1.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51d03449bb8ca2cc2ef70869af31463d1ae5ccc8fa3e334b307203fbf815207e"
+checksum = "f9f3647c145568cec02c42054e07bdf9a5a698e15b466fb2341bfc393cd24aa5"
dependencies = [
"rustversion",
]
@@ -224,11 +224,11 @@ checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
[[package]]
name = "ascii-canvas"
-version = "3.0.0"
+version = "4.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8824ecca2e851cec16968d54a01dd372ef8f95b244fb84b84e70128be347c3c6"
+checksum = "ef1e3e699d84ab1b0911a1010c5c106aa34ae89aeac103be5ce0c3859db1e891"
dependencies = [
- "term",
+ "term 1.2.1",
]
[[package]]
@@ -255,7 +255,7 @@ checksum = "3109e49b1e4909e9db6515a30c633684d68cdeaa252f215214cb4fa1a5bfee2c"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
"synstructure",
]
@@ -267,7 +267,7 @@ checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -337,7 +337,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -359,7 +359,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -370,7 +370,7 @@ checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -609,7 +609,7 @@ dependencies = [
"regex",
"rustc-hash 1.1.0",
"shlex",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -627,7 +627,7 @@ dependencies = [
"regex",
"rustc-hash 2.1.1",
"shlex",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -646,30 +646,15 @@ dependencies = [
"serde_json",
]
-[[package]]
-name = "bit-set"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1"
-dependencies = [
- "bit-vec 0.6.3",
-]
-
[[package]]
name = "bit-set"
version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3"
dependencies = [
- "bit-vec 0.8.0",
+ "bit-vec",
]
-[[package]]
-name = "bit-vec"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
-
[[package]]
name = "bit-vec"
version = "0.8.0"
@@ -678,9 +663,9 @@ checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7"
[[package]]
name = "bitflags"
-version = "2.10.0"
+version = "2.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3"
+checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af"
dependencies = [
"serde_core",
]
@@ -831,7 +816,7 @@ checksum = "89385e82b5d1821d2219e0b095efa2cc1f246cbf99080f3be46a1a85c0d392d9"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -848,9 +833,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
[[package]]
name = "bytes"
-version = "1.11.0"
+version = "1.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b35204fbdc0b3f4446b89fc1ac2cf84a8a68971995d0bf2e925ec7cd960f9cb3"
+checksum = "1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33"
dependencies = [
"serde",
]
@@ -947,9 +932,9 @@ dependencies = [
[[package]]
name = "cc"
-version = "1.2.55"
+version = "1.2.56"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "47b26a0954ae34af09b50f0de26458fa95369a0d478d8236d3f93082b219bd29"
+checksum = "aebf35691d1bfb0ac386a69bac2fde4dd276fb618cf8bf4f5318fe285e821bb2"
dependencies = [
"find-msvc-tools",
"jobserver",
@@ -1071,9 +1056,9 @@ dependencies = [
[[package]]
name = "clap"
-version = "4.5.56"
+version = "4.5.58"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a75ca66430e33a14957acc24c5077b503e7d374151b2b4b3a10c83b4ceb4be0e"
+checksum = "63be97961acde393029492ce0be7a1af7e323e6bae9511ebfac33751be5e6806"
dependencies = [
"clap_builder",
"clap_derive",
@@ -1081,9 +1066,9 @@ dependencies = [
[[package]]
name = "clap_builder"
-version = "4.5.56"
+version = "4.5.58"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "793207c7fa6300a0608d1080b858e5fdbe713cdc1c8db9fb17777d8a13e63df0"
+checksum = "7f13174bda5dfd69d7e947827e5af4b0f2f94a4a3ee92912fba07a66150f21e2"
dependencies = [
"anstream",
"anstyle",
@@ -1100,14 +1085,14 @@ dependencies = [
"heck 0.5.0",
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
name = "clap_lex"
-version = "0.7.7"
+version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3e64b0cc0439b12df2fa678eae89a1c56a529fd067a9115f7827f1fffd22b32"
+checksum = "3a822ea5bc7590f9d40f1ba12c0dc3c2760f3482c6984db1573ad11031420831"
[[package]]
name = "cmac"
@@ -1151,7 +1136,7 @@ dependencies = [
[[package]]
name = "common"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"aes-gcm-siv",
"ahash",
@@ -1560,7 +1545,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -1594,7 +1579,7 @@ dependencies = [
"proc-macro2",
"quote",
"strsim",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -1608,7 +1593,7 @@ dependencies = [
"proc-macro2",
"quote",
"strsim",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -1619,7 +1604,7 @@ checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead"
dependencies = [
"darling_core 0.20.11",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -1630,7 +1615,7 @@ checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81"
dependencies = [
"darling_core 0.21.3",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -1647,7 +1632,7 @@ checksum = "d7a1e2f27636f116493b8b860f5546edb47c8d8f8ea73e1d2a20be88e28d1fea"
[[package]]
name = "dav"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"calcard 0.3.2",
"chrono",
@@ -1669,7 +1654,7 @@ dependencies = [
[[package]]
name = "dav-proto"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"calcard 0.3.2",
"chrono",
@@ -1784,9 +1769,9 @@ dependencies = [
[[package]]
name = "deranged"
-version = "0.5.5"
+version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ececcb659e7ba858fb4f10388c250a7252eb0a27373f1a72b8748afdd248e587"
+checksum = "cc3dc5ad92c2e2d1c193bbbbdf2ea477cb81331de4f3103f267ca18368b988c4"
dependencies = [
"powerfmt",
"serde_core",
@@ -1800,7 +1785,7 @@ checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -1835,7 +1820,7 @@ dependencies = [
[[package]]
name = "directory"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"ahash",
"argon2",
@@ -1924,7 +1909,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -2088,7 +2073,7 @@ dependencies = [
[[package]]
name = "email"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"aes",
"aes-gcm",
@@ -2123,9 +2108,9 @@ dependencies = [
[[package]]
name = "ena"
-version = "0.14.3"
+version = "0.14.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d248bdd43ce613d87415282f69b9bb99d947d290b10962dd6c56233312c2ad5"
+checksum = "eabffdaee24bd1bf95c5ef7cec31260444317e72ea56c4c91750e8b7ee58d5f1"
dependencies = [
"log",
]
@@ -2160,7 +2145,7 @@ dependencies = [
"heck 0.5.0",
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -2208,11 +2193,11 @@ dependencies = [
[[package]]
name = "event_macro"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -2239,7 +2224,7 @@ version = "0.17.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72cf461f865c862bb7dc573f643dd6a2b6842f7c30b07882b56bd148cc2761b8"
dependencies = [
- "bit-set 0.8.0",
+ "bit-set",
"regex-automata",
"regex-syntax",
]
@@ -2305,12 +2290,6 @@ version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582"
-[[package]]
-name = "fixedbitset"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
-
[[package]]
name = "fixedbitset"
version = "0.5.7"
@@ -2319,9 +2298,9 @@ checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99"
[[package]]
name = "flate2"
-version = "1.1.8"
+version = "1.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b375d6465b98090a5f25b1c7703f3859783755aa9a80433b36e0379a3ec2f369"
+checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c"
dependencies = [
"crc32fast",
"libz-sys",
@@ -2438,7 +2417,7 @@ checksum = "c4ca5370149145ec3741cd7e82832f17f893b9421ee4e484d9511c6702bd9911"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
"try_map",
]
@@ -2539,7 +2518,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -2641,6 +2620,19 @@ dependencies = [
"wasm-bindgen",
]
+[[package]]
+name = "getrandom"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "139ef39800118c7683f2fd3c98c1b23c09ae076556b435f8e9064ae108aaeeec"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "r-efi",
+ "wasip2",
+ "wasip3",
+]
+
[[package]]
name = "ghash"
version = "0.5.1"
@@ -2674,7 +2666,7 @@ checksum = "53010ccb100b96a67bc32c0175f0ed1426b31b655d562898e57325f81c023ac0"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -2696,7 +2688,7 @@ dependencies = [
[[package]]
name = "groupware"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"ahash",
"calcard 0.3.2",
@@ -2799,7 +2791,7 @@ checksum = "149e3ea90eb5a26ad354cfe3cb7f7401b9329032d0235f2687d03a35f30e5d4c"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -3001,7 +2993,7 @@ dependencies = [
[[package]]
name = "http"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"async-stream",
"base64 0.22.1",
@@ -3111,7 +3103,7 @@ dependencies = [
[[package]]
name = "http_proto"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"common",
"compact_str",
@@ -3223,7 +3215,7 @@ dependencies = [
"tokio",
"tokio-rustls 0.26.4",
"tower-service",
- "webpki-roots 1.0.5",
+ "webpki-roots 1.0.6",
]
[[package]]
@@ -3241,14 +3233,13 @@ dependencies = [
[[package]]
name = "hyper-util"
-version = "0.1.19"
+version = "0.1.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "727805d60e7938b76b826a6ef209eb70eaa1812794f9424d4a4e2d740662df5f"
+checksum = "96547c2556ec9d12fb1578c4eaf448b04993e7fb79cbaad930a656880a6bdfa0"
dependencies = [
"base64 0.22.1",
"bytes",
"futures-channel",
- "futures-core",
"futures-util",
"http 1.4.0",
"http-body 1.0.1",
@@ -3368,6 +3359,12 @@ dependencies = [
"zerovec",
]
+[[package]]
+name = "id-arena"
+version = "2.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d3067d79b975e8844ca9eb072e16b31c3c1c36928edf9c6789548c524d0d954"
+
[[package]]
name = "idea"
version = "0.5.1"
@@ -3412,7 +3409,7 @@ checksum = "09e54e57b4c48b40f7aec75635392b12b3421fa26fe8b4332e63138ed278459c"
[[package]]
name = "imap"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"ahash",
"common",
@@ -3439,7 +3436,7 @@ dependencies = [
[[package]]
name = "imap_proto"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"ahash",
"chrono",
@@ -3475,7 +3472,7 @@ dependencies = [
"proc-macro-error",
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
"zstd",
]
@@ -3622,15 +3619,6 @@ dependencies = [
"either",
]
-[[package]]
-name = "itertools"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
-dependencies = [
- "either",
-]
-
[[package]]
name = "itertools"
version = "0.13.0"
@@ -3700,7 +3688,7 @@ dependencies = [
[[package]]
name = "jmap"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"aes-gcm",
"aes-gcm-siv",
@@ -3810,7 +3798,7 @@ dependencies = [
[[package]]
name = "jmap_proto"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"ahash",
"calcard 0.3.2",
@@ -3882,9 +3870,9 @@ dependencies = [
[[package]]
name = "keccak"
-version = "0.1.5"
+version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654"
+checksum = "cb26cec98cce3a3d96cbb7bced3c4b16e3d13f27ec56dbd62cbc8f39cfb9d653"
dependencies = [
"cpufeatures",
]
@@ -3929,32 +3917,33 @@ dependencies = [
[[package]]
name = "lalrpop"
-version = "0.20.2"
+version = "0.22.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "55cb077ad656299f160924eb2912aa147d7339ea7d69e1b5517326fdcec3c1ca"
+checksum = "ba4ebbd48ce411c1d10fb35185f5a51a7bfa3d8b24b4e330d30c9e3a34129501"
dependencies = [
"ascii-canvas",
- "bit-set 0.5.3",
+ "bit-set",
"ena",
- "itertools 0.11.0",
+ "itertools 0.14.0",
"lalrpop-util",
- "petgraph 0.6.5",
+ "petgraph 0.7.1",
"regex",
"regex-syntax",
+ "sha3",
"string_cache",
- "term",
- "tiny-keccak",
+ "term 1.2.1",
"unicode-xid",
"walkdir",
]
[[package]]
name = "lalrpop-util"
-version = "0.20.2"
+version = "0.22.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "507460a910eb7b32ee961886ff48539633b788a36b65692b95f225b844c82553"
+checksum = "b5baa5e9ff84f1aefd264e6869907646538a52147a755d494517a8007fb48733"
dependencies = [
"regex-automata",
+ "rustversion",
]
[[package]]
@@ -4001,6 +3990,12 @@ dependencies = [
"x509-parser",
]
+[[package]]
+name = "leb128fmt"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2"
+
[[package]]
name = "libbz2-rs-sys"
version = "0.2.2"
@@ -4009,9 +4004,9 @@ checksum = "2c4a545a15244c7d945065b5d392b2d2d7f21526fba56ce51467b06ed445e8f7"
[[package]]
name = "libc"
-version = "0.2.180"
+version = "0.2.182"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bcc35a38544a891a5f7c865aca548a982ccb3b8650a5b06d0fd33a10283c56fc"
+checksum = "6800badb6cb2082ffd7b6a67e6125bb39f18782f793520caee8cb8846be06112"
[[package]]
name = "libflate"
@@ -4231,9 +4226,9 @@ dependencies = [
[[package]]
name = "mail-parser"
-version = "0.11.1"
+version = "0.11.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcf4390741c4e6fa330bdeccdfb580815dbb462952de91838b723357985119a3"
+checksum = "f82a3d6522697593ba4c683e0a6ee5a40fee93bc1a525e3cc6eeb3da11fd8897"
dependencies = [
"encoding_rs",
"hashify",
@@ -4255,12 +4250,12 @@ dependencies = [
"smtp-proto",
"tokio",
"tokio-rustls 0.26.4",
- "webpki-roots 1.0.5",
+ "webpki-roots 1.0.6",
]
[[package]]
name = "managesieve"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"ahash",
"common",
@@ -4309,7 +4304,7 @@ checksum = "5cf92c10c7e361d6b99666ec1c6f9805b0bea2c3bd8c78dc6fe98ac5bd78db11"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -4347,9 +4342,9 @@ checksum = "ae960838283323069879657ca3de837e9f7bbb4c7bf6ea7f1b290d5e9476d2e0"
[[package]]
name = "memchr"
-version = "2.7.6"
+version = "2.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273"
+checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79"
[[package]]
name = "memory-stats"
@@ -4369,7 +4364,7 @@ checksum = "c797b9d6bb23aab2fc369c65f871be49214f5c759af65bde26ffaaa2b646b492"
[[package]]
name = "migration"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"base64 0.22.1",
"bincode 1.3.3",
@@ -4478,7 +4473,7 @@ checksum = "4568f25ccbd45ab5d5603dc34318c1ec56b117531781260002151b8530a9f931"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -4494,7 +4489,7 @@ dependencies = [
"proc-macro-error2",
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
"termcolor",
"thiserror 2.0.18",
]
@@ -4611,7 +4606,7 @@ dependencies = [
[[package]]
name = "nlp"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"ahash",
"bincode 1.3.3",
@@ -4778,7 +4773,7 @@ dependencies = [
"proc-macro-crate",
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -4787,6 +4782,24 @@ version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3"
+[[package]]
+name = "objc2-core-foundation"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536"
+dependencies = [
+ "bitflags",
+]
+
+[[package]]
+name = "objc2-system-configuration"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7216bd11cbda54ccabcab84d523dc93b858ec75ecfb3a7d89513fa22464da396"
+dependencies = [
+ "objc2-core-foundation",
+]
+
[[package]]
name = "object"
version = "0.37.3"
@@ -4862,7 +4875,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -5112,9 +5125,9 @@ checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220"
[[package]]
name = "pest"
-version = "2.8.5"
+version = "2.8.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c9eb05c21a464ea704b53158d358a31e6425db2f63a1a7312268b05fe2b75f7"
+checksum = "e0848c601009d37dfa3430c4666e147e49cdcf1b92ecd3e63657d8a5f19da662"
dependencies = [
"memchr",
"ucd-trie",
@@ -5122,9 +5135,9 @@ dependencies = [
[[package]]
name = "pest_derive"
-version = "2.8.5"
+version = "2.8.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68f9dbced329c441fa79d80472764b1a2c7e57123553b8519b36663a2fb234ed"
+checksum = "11f486f1ea21e6c10ed15d5a7c77165d0ee443402f0780849d1768e7d9d6fe77"
dependencies = [
"pest",
"pest_generator",
@@ -5132,22 +5145,22 @@ dependencies = [
[[package]]
name = "pest_generator"
-version = "2.8.5"
+version = "2.8.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3bb96d5051a78f44f43c8f712d8e810adb0ebf923fc9ed2655a7f66f63ba8ee5"
+checksum = "8040c4647b13b210a963c1ed407c1ff4fdfa01c31d6d2a098218702e6664f94f"
dependencies = [
"pest",
"pest_meta",
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
name = "pest_meta"
-version = "2.8.5"
+version = "2.8.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "602113b5b5e8621770cfd490cfd90b9f84ab29bd2b0e49ad83eb6d186cef2365"
+checksum = "89815c69d36021a140146f26659a81d6c2afa33d216d736dd4be5381a7362220"
dependencies = [
"pest",
"sha2 0.10.9",
@@ -5155,11 +5168,11 @@ dependencies = [
[[package]]
name = "petgraph"
-version = "0.6.5"
+version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db"
+checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772"
dependencies = [
- "fixedbitset 0.4.2",
+ "fixedbitset",
"indexmap 2.13.0",
]
@@ -5169,7 +5182,7 @@ version = "0.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8701b58ea97060d5e5b155d383a69952a60943f0e6dfe30b04c287beb0b27455"
dependencies = [
- "fixedbitset 0.5.7",
+ "fixedbitset",
"hashbrown 0.15.5",
"indexmap 2.13.0",
"serde",
@@ -5225,7 +5238,7 @@ dependencies = [
"phf_shared 0.13.1",
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -5272,7 +5285,7 @@ checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -5360,7 +5373,7 @@ dependencies = [
[[package]]
name = "pop3"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"common",
"directory",
@@ -5457,7 +5470,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b"
dependencies = [
"proc-macro2",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -5470,7 +5483,7 @@ dependencies = [
"encode_unicode",
"is-terminal",
"lazy_static",
- "term",
+ "term 0.7.0",
"unicode-width 0.1.14",
]
@@ -5545,7 +5558,7 @@ dependencies = [
"proc-macro-error-attr2",
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -5559,11 +5572,11 @@ dependencies = [
[[package]]
name = "proc_macros"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -5600,7 +5613,7 @@ dependencies = [
"itertools 0.14.0",
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -5615,9 +5628,9 @@ dependencies = [
[[package]]
name = "psl"
-version = "2.1.184"
+version = "2.1.190"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81dc6a90669f481b41cae3005c68efa36bef275b95aa9123a7af7f1c68c6e5b2"
+checksum = "66fed3dc7578357ff12137c75eac73413b6aba9a7204916c19f2a0e9e1e920e0"
dependencies = [
"psl-types",
]
@@ -5645,7 +5658,7 @@ checksum = "7347867d0a7e1208d93b46767be83e2b8f978c3dad35f775ac8d8847551d6fe1"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -6078,7 +6091,7 @@ dependencies = [
"tokio-rustls 0.26.4",
"tokio-util",
"url",
- "webpki-roots 1.0.5",
+ "webpki-roots 1.0.6",
]
[[package]]
@@ -6129,14 +6142,14 @@ checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
name = "regex"
-version = "1.12.2"
+version = "1.12.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "843bc0191f75f3e22651ae5f1e72939ab2f72a4bc30fa80a066bd66edefc24d4"
+checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276"
dependencies = [
"aho-corasick",
"memchr",
@@ -6146,9 +6159,9 @@ dependencies = [
[[package]]
name = "regex-automata"
-version = "0.4.13"
+version = "0.4.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c"
+checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f"
dependencies = [
"aho-corasick",
"memchr",
@@ -6157,9 +6170,9 @@ dependencies = [
[[package]]
name = "regex-syntax"
-version = "0.8.8"
+version = "0.8.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58"
+checksum = "a96887878f22d7bad8a3b6dc5b7440e0ada9a245242924394987b21cf2210a4c"
[[package]]
name = "rend"
@@ -6211,7 +6224,7 @@ dependencies = [
"wasm-bindgen-futures",
"wasm-streams",
"web-sys",
- "webpki-roots 1.0.5",
+ "webpki-roots 1.0.6",
]
[[package]]
@@ -6274,9 +6287,9 @@ dependencies = [
[[package]]
name = "rkyv"
-version = "0.8.14"
+version = "0.8.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "360b333c61ae24e5af3ae7c8660bd6b21ccd8200dbbc5d33c2454421e85b9c69"
+checksum = "1a30e631b7f4a03dee9056b8ef6982e8ba371dd5bedb74d3ec86df4499132c70"
dependencies = [
"bytecheck",
"bytes",
@@ -6293,13 +6306,13 @@ dependencies = [
[[package]]
name = "rkyv_derive"
-version = "0.8.14"
+version = "0.8.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c02f8cdd12b307ab69fe0acf4cd2249c7460eb89dce64a0febadf934ebb6a9e"
+checksum = "8100bb34c0a1d0f907143db3149e6b4eea3c33b9ee8b189720168e818303986f"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -6570,7 +6583,7 @@ dependencies = [
"openssl-probe 0.2.1",
"rustls-pki-types",
"schannel",
- "security-framework 3.5.1",
+ "security-framework 3.6.0",
]
[[package]]
@@ -6616,7 +6629,7 @@ dependencies = [
"rustls-native-certs 0.8.3",
"rustls-platform-verifier-android",
"rustls-webpki 0.103.9",
- "security-framework 3.5.1",
+ "security-framework 3.6.0",
"security-framework-sys",
"webpki-root-certs",
"windows-sys 0.61.2",
@@ -6667,9 +6680,9 @@ checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d"
[[package]]
name = "ryu"
-version = "1.0.22"
+version = "1.0.23"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a50f4cf475b65d88e057964e0e9bb1f0aa9bbb2036dc65c64596b42932536984"
+checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f"
[[package]]
name = "salsa20"
@@ -6757,7 +6770,7 @@ dependencies = [
"proc-macro2",
"quote",
"serde_derive_internals",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -6833,9 +6846,9 @@ dependencies = [
[[package]]
name = "security-framework"
-version = "3.5.1"
+version = "3.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3297343eaf830f66ede390ea39da1d462b6b0c1b000f420d0a83f898bbbe6ef"
+checksum = "d17b898a6d6948c3a8ee4372c17cb384f90d2e6e912ef00895b14fd7ab54ec38"
dependencies = [
"bitflags",
"core-foundation 0.10.1",
@@ -6846,9 +6859,9 @@ dependencies = [
[[package]]
name = "security-framework-sys"
-version = "2.15.0"
+version = "2.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc1f0cbffaac4852523ce30d8bd3c5cdc873501d96ff467ca09b6767bb8cd5c0"
+checksum = "321c8673b092a9a42605034a9879d73cb79101ed5fd117bc9a597b89b4e9e61a"
dependencies = [
"core-foundation-sys",
"libc",
@@ -6862,9 +6875,9 @@ checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2"
[[package]]
name = "sequoia-openpgp"
-version = "2.1.0"
+version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0e334ce3ec5b9b47d86a80563b3ecec435f59acf37e86058b3b686a42c5a2ba"
+checksum = "0620e44a7d514adf7df87b44db235f13b81fed7ddc265adb26f014d42626ac47"
dependencies = [
"aes",
"aes-gcm",
@@ -6903,7 +6916,7 @@ dependencies = [
"p256",
"p384",
"p521",
- "rand 0.8.5",
+ "rand 0.9.2",
"rand_core 0.6.4",
"regex",
"regex-syntax",
@@ -6956,7 +6969,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -6967,7 +6980,7 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -7012,7 +7025,7 @@ checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -7055,7 +7068,7 @@ dependencies = [
"darling 0.21.3",
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -7094,12 +7107,12 @@ checksum = "6f50427f258fb77356e4cd4aa0e87e2bd2c66dbcee41dc405282cae2bfc26c83"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
name = "services"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"aes-gcm",
"aes-gcm-siv",
@@ -7317,7 +7330,7 @@ checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03"
[[package]]
name = "smtp"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"ahash",
"blake3",
@@ -7360,7 +7373,7 @@ dependencies = [
"trc",
"types",
"utils",
- "webpki-roots 1.0.5",
+ "webpki-roots 1.0.6",
"x509-parser",
]
@@ -7419,7 +7432,7 @@ dependencies = [
[[package]]
name = "spam-filter"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"common",
"compact_str",
@@ -7517,14 +7530,14 @@ checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596"
[[package]]
name = "stalwart"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"common",
"dav",
"directory",
"email",
"groupware",
- "http 0.15.4",
+ "http 0.15.5",
"imap",
"jemallocator",
"jmap",
@@ -7543,7 +7556,7 @@ dependencies = [
[[package]]
name = "stalwart-cli"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"clap",
"console",
@@ -7574,7 +7587,7 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
[[package]]
name = "store"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"ahash",
"arc-swap",
@@ -7675,9 +7688,9 @@ dependencies = [
[[package]]
name = "syn"
-version = "2.0.114"
+version = "2.0.115"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4d107df263a3013ef9b1879b0df87d706ff80f65a86ea879bd9c31f9b307c2a"
+checksum = "6e614ed320ac28113fa64972c4262d5dbc89deacdfd00c34a3e4cea073243c12"
dependencies = [
"proc-macro2",
"quote",
@@ -7701,7 +7714,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -7727,6 +7740,15 @@ dependencies = [
"winapi",
]
+[[package]]
+name = "term"
+version = "1.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d8c27177b12a6399ffc08b98f76f7c9a1f4fe9fc967c784c5a071fa8d93cf7e1"
+dependencies = [
+ "windows-sys 0.61.2",
+]
+
[[package]]
name = "termcolor"
version = "1.4.1"
@@ -7738,7 +7760,7 @@ dependencies = [
[[package]]
name = "tests"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"ahash",
"async-trait",
@@ -7759,7 +7781,7 @@ dependencies = [
"form_urlencoded",
"futures",
"groupware",
- "http 0.15.4",
+ "http 0.15.5",
"http-body-util",
"http_proto",
"hyper 1.8.1",
@@ -7829,7 +7851,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -7840,7 +7862,7 @@ checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -7854,9 +7876,9 @@ dependencies = [
[[package]]
name = "time"
-version = "0.3.46"
+version = "0.3.47"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9da98b7d9b7dad93488a84b8248efc35352b0b2657397d4167e7ad67e5d535e5"
+checksum = "743bd48c283afc0388f9b8827b976905fb217ad9e647fae3a379a9283c4def2c"
dependencies = [
"deranged",
"itoa",
@@ -7876,9 +7898,9 @@ checksum = "7694e1cfe791f8d31026952abf09c69ca6f6fa4e1a1229e18988f06a04a12dca"
[[package]]
name = "time-macros"
-version = "0.2.26"
+version = "0.2.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "78cc610bac2dcee56805c99642447d4c5dbde4d01f752ffea0199aee1f601dc4"
+checksum = "2e70e4c5a0e0a8a4823ad65dfe1a6930e4f4d756dcd9dd7939022b5e8c501215"
dependencies = [
"num-conv",
"time-core",
@@ -7967,7 +7989,7 @@ checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -8101,9 +8123,9 @@ dependencies = [
[[package]]
name = "toml_parser"
-version = "1.0.6+spec-1.1.0"
+version = "1.0.8+spec-1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3198b4b0a8e11f09dd03e133c0280504d0801269e9afa46362ffde1cbeebf44"
+checksum = "0742ff5ff03ea7e67c8ae6c93cac239e0d9784833362da3f9a9c1da8dfefcbdc"
dependencies = [
"winnow",
]
@@ -8237,7 +8259,7 @@ checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -8294,7 +8316,7 @@ dependencies = [
[[package]]
name = "trc"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"ahash",
"base64 0.22.1",
@@ -8381,7 +8403,7 @@ checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb"
[[package]]
name = "types"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"blake3",
"compact_str",
@@ -8448,9 +8470,9 @@ checksum = "0b993bddc193ae5bd0d623b49ec06ac3e9312875fdae725a975c51db1cc1677f"
[[package]]
name = "unicode-ident"
-version = "1.0.22"
+version = "1.0.23"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5"
+checksum = "537dd038a89878be9b64dd4bd1b260315c1bb94f4d784956b81e27a088d9a09e"
[[package]]
name = "unicode-normalization"
@@ -8537,7 +8559,7 @@ checksum = "3b5bb2756c16fb66f80cfbf5fb0e0c09a7001e739f453c9ec241b9c8b1556fda"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -8579,7 +8601,7 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
[[package]]
name = "utils"
-version = "0.15.4"
+version = "0.15.5"
dependencies = [
"ahash",
"base64 0.22.1",
@@ -8614,18 +8636,18 @@ dependencies = [
"tokio",
"tokio-rustls 0.26.4",
"trc",
- "webpki-roots 1.0.5",
+ "webpki-roots 1.0.6",
"x509-parser",
"xxhash-rust",
]
[[package]]
name = "uuid"
-version = "1.20.0"
+version = "1.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee48d38b119b0cd71fe4141b30f5ba9c7c5d9f4e7a3a8b4a674e4b6ef789976f"
+checksum = "b672338555252d43fd2240c714dc444b8c6fb0a5c5335e65a07bba7742735ddb"
dependencies = [
- "getrandom 0.3.4",
+ "getrandom 0.4.1",
"js-sys",
"serde_core",
"sha1_smol",
@@ -8652,7 +8674,7 @@ checksum = "8c44ce98e7227a04eeb4cf9c784109a5c9710e54849ceb4f09f8597247897f1e"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
"unzip-n",
]
@@ -8741,6 +8763,15 @@ dependencies = [
"wit-bindgen",
]
+[[package]]
+name = "wasip3"
+version = "0.4.0+wasi-0.3.0-rc-2026-01-06"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5428f8bf88ea5ddc08faddef2ac4a67e390b88186c703ce6dbd955e1c145aca5"
+dependencies = [
+ "wit-bindgen",
+]
+
[[package]]
name = "wasite"
version = "1.0.2"
@@ -8796,7 +8827,7 @@ dependencies = [
"bumpalo",
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
"wasm-bindgen-shared",
]
@@ -8809,6 +8840,28 @@ dependencies = [
"unicode-ident",
]
+[[package]]
+name = "wasm-encoder"
+version = "0.244.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "990065f2fe63003fe337b932cfb5e3b80e0b4d0f5ff650e6985b1048f62c8319"
+dependencies = [
+ "leb128fmt",
+ "wasmparser",
+]
+
+[[package]]
+name = "wasm-metadata"
+version = "0.244.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909"
+dependencies = [
+ "anyhow",
+ "indexmap 2.13.0",
+ "wasm-encoder",
+ "wasmparser",
+]
+
[[package]]
name = "wasm-streams"
version = "0.4.2"
@@ -8822,6 +8875,18 @@ dependencies = [
"web-sys",
]
+[[package]]
+name = "wasmparser"
+version = "0.244.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe"
+dependencies = [
+ "bitflags",
+ "hashbrown 0.15.5",
+ "indexmap 2.13.0",
+ "semver",
+]
+
[[package]]
name = "web-sys"
version = "0.3.85"
@@ -8844,9 +8909,9 @@ dependencies = [
[[package]]
name = "webpki-root-certs"
-version = "1.0.5"
+version = "1.0.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "36a29fc0408b113f68cf32637857ab740edfafdf460c326cd2afaa2d84cc05dc"
+checksum = "804f18a4ac2676ffb4e8b5b5fa9ae38af06df08162314f96a68d2a363e21a8ca"
dependencies = [
"rustls-pki-types",
]
@@ -8857,14 +8922,14 @@ version = "0.26.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "521bc38abb08001b01866da9f51eb7c5d647a19260e00054a8c7fd5f9e57f7a9"
dependencies = [
- "webpki-roots 1.0.5",
+ "webpki-roots 1.0.6",
]
[[package]]
name = "webpki-roots"
-version = "1.0.5"
+version = "1.0.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12bed680863276c63889429bfd6cab3b99943659923822de1c8a39c49e4d722c"
+checksum = "22cfaf3c063993ff62e73cb4311efde4db1efb31ab78a3e5c457939ad5cc0bed"
dependencies = [
"rustls-pki-types",
]
@@ -8880,11 +8945,13 @@ dependencies = [
[[package]]
name = "whoami"
-version = "2.1.0"
+version = "2.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fae98cf96deed1b7572272dfc777713c249ae40aa1cf8862e091e8b745f5361"
+checksum = "d6a5b12f9df4f978d2cfdb1bd3bac52433f44393342d7ee9c25f5a1c14c0f45d"
dependencies = [
+ "libc",
"libredox",
+ "objc2-system-configuration",
"wasite",
"web-sys",
]
@@ -8947,7 +9014,7 @@ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -8958,7 +9025,7 @@ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -9306,6 +9373,88 @@ name = "wit-bindgen"
version = "0.51.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5"
+dependencies = [
+ "wit-bindgen-rust-macro",
+]
+
+[[package]]
+name = "wit-bindgen-core"
+version = "0.51.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ea61de684c3ea68cb082b7a88508a8b27fcc8b797d738bfc99a82facf1d752dc"
+dependencies = [
+ "anyhow",
+ "heck 0.5.0",
+ "wit-parser",
+]
+
+[[package]]
+name = "wit-bindgen-rust"
+version = "0.51.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21"
+dependencies = [
+ "anyhow",
+ "heck 0.5.0",
+ "indexmap 2.13.0",
+ "prettyplease",
+ "syn 2.0.115",
+ "wasm-metadata",
+ "wit-bindgen-core",
+ "wit-component",
+]
+
+[[package]]
+name = "wit-bindgen-rust-macro"
+version = "0.51.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0c0f9bfd77e6a48eccf51359e3ae77140a7f50b1e2ebfe62422d8afdaffab17a"
+dependencies = [
+ "anyhow",
+ "prettyplease",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.115",
+ "wit-bindgen-core",
+ "wit-bindgen-rust",
+]
+
+[[package]]
+name = "wit-component"
+version = "0.244.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2"
+dependencies = [
+ "anyhow",
+ "bitflags",
+ "indexmap 2.13.0",
+ "log",
+ "serde",
+ "serde_derive",
+ "serde_json",
+ "wasm-encoder",
+ "wasm-metadata",
+ "wasmparser",
+ "wit-parser",
+]
+
+[[package]]
+name = "wit-parser"
+version = "0.244.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736"
+dependencies = [
+ "anyhow",
+ "id-arena",
+ "indexmap 2.13.0",
+ "log",
+ "semver",
+ "serde",
+ "serde_derive",
+ "serde_json",
+ "unicode-xid",
+ "wasmparser",
+]
[[package]]
name = "writeable"
@@ -9335,9 +9484,9 @@ dependencies = [
[[package]]
name = "x509-parser"
-version = "0.18.0"
+version = "0.18.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb3e137310115a65136898d2079f003ce33331a6c4b0d51f1531d1be082b6425"
+checksum = "d43b0f71ce057da06bc0851b23ee24f3f86190b07203dd8f567d0b706a185202"
dependencies = [
"asn1-rs",
"data-encoding",
@@ -9391,7 +9540,7 @@ checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
"synstructure",
]
@@ -9582,7 +9731,7 @@ dependencies = [
"tokio",
"tokio-util",
"tracing",
- "webpki-roots 1.0.5",
+ "webpki-roots 1.0.6",
"x509-parser",
"zenoh-buffers",
"zenoh-codec",
@@ -9611,7 +9760,7 @@ dependencies = [
"tokio",
"tokio-util",
"tracing",
- "webpki-roots 1.0.5",
+ "webpki-roots 1.0.6",
"zenoh-config",
"zenoh-core",
"zenoh-link-commons",
@@ -9658,7 +9807,7 @@ dependencies = [
"tokio-rustls 0.26.4",
"tokio-util",
"tracing",
- "webpki-roots 1.0.5",
+ "webpki-roots 1.0.6",
"x509-parser",
"zenoh-config",
"zenoh-core",
@@ -9698,7 +9847,7 @@ checksum = "b760a458cd906ac888b37fd1abdb21a0f58ecc64cc3882f83a976cb5ca8e0632"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
"zenoh-keyexpr",
]
@@ -9851,22 +10000,22 @@ dependencies = [
[[package]]
name = "zerocopy"
-version = "0.8.37"
+version = "0.8.39"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7456cf00f0685ad319c5b1693f291a650eaf345e941d082fc4e03df8a03996ac"
+checksum = "db6d35d663eadb6c932438e763b262fe1a70987f9ae936e60158176d710cae4a"
dependencies = [
"zerocopy-derive",
]
[[package]]
name = "zerocopy-derive"
-version = "0.8.37"
+version = "0.8.39"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1328722bbf2115db7e19d69ebcc15e795719e2d66b60827c6a69a117365e37a0"
+checksum = "4122cd3169e94605190e77839c9a40d40ed048d305bfdc146e7df40ab0f3e517"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -9886,7 +10035,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
"synstructure",
]
@@ -9907,7 +10056,7 @@ checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -9940,7 +10089,7 @@ checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.114",
+ "syn 2.0.115",
]
[[package]]
@@ -9972,15 +10121,15 @@ dependencies = [
[[package]]
name = "zlib-rs"
-version = "0.5.5"
+version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "40990edd51aae2c2b6907af74ffb635029d5788228222c4bb811e9351c0caad3"
+checksum = "a7948af682ccbc3342b6e9420e8c51c1fe5d7bf7756002b4a3c6cabfe96a7e3c"
[[package]]
name = "zmij"
-version = "1.0.19"
+version = "1.0.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ff05f8caa9038894637571ae6b9e29466c1f4f829d26c9b28f869a29cbe3445"
+checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa"
[[package]]
name = "zopfli"
diff --git a/README.md b/README.md
index f079ee8d..89b846e2 100644
--- a/README.md
+++ b/README.md
@@ -155,11 +155,7 @@ Of course, development doesnβt stop there. The community has contributed hundr
Your support is crucial in helping us continue to improve the project, add new features, and maintain the highest level of quality. By [becoming a sponsor](https://opencollective.com/stalwart), you help fund the development and future of Stalwart. As a thank-you, sponsors who contribute $5 per month or more will automatically receive a [Enterprise edition](https://stalw.art/enterprise/) license. And, sponsors who contribute $30 per month or more, also have access to [Premium Support](https://stalw.art/support) from Stalwart Labs.
-These are some of our open-source sponsors:
-
-





-
-
If you would like to support our work, please consider [becoming a sponsor](https://opencollective.com/stalwart).
+
If you would like to support our open source work, please consider [becoming a sponsor](https://opencollective.com/stalwart).
## Funding
diff --git a/crates/cli/Cargo.toml b/crates/cli/Cargo.toml
index 76e96f04..10a62d35 100644
--- a/crates/cli/Cargo.toml
+++ b/crates/cli/Cargo.toml
@@ -5,7 +5,7 @@ authors = ["Stalwart Labs LLC "]
license = "AGPL-3.0-only OR LicenseRef-SEL"
repository = "https://github.com/stalwartlabs/cli"
homepage = "https://github.com/stalwartlabs/cli"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
readme = "README.md"
diff --git a/crates/common/Cargo.toml b/crates/common/Cargo.toml
index 0f12fc28..299fda92 100644
--- a/crates/common/Cargo.toml
+++ b/crates/common/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "common"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
build = "build.rs"
diff --git a/crates/dav-proto/Cargo.toml b/crates/dav-proto/Cargo.toml
index f31be053..dc3aa7ff 100644
--- a/crates/dav-proto/Cargo.toml
+++ b/crates/dav-proto/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "dav-proto"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/dav/Cargo.toml b/crates/dav/Cargo.toml
index 3d6351e9..5d7ed046 100644
--- a/crates/dav/Cargo.toml
+++ b/crates/dav/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "dav"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/directory/Cargo.toml b/crates/directory/Cargo.toml
index 22741626..7b2e7e72 100644
--- a/crates/directory/Cargo.toml
+++ b/crates/directory/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "directory"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/email/Cargo.toml b/crates/email/Cargo.toml
index 60b16146..94660c13 100644
--- a/crates/email/Cargo.toml
+++ b/crates/email/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "email"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/groupware/Cargo.toml b/crates/groupware/Cargo.toml
index 5cd2f35e..c4a655bd 100644
--- a/crates/groupware/Cargo.toml
+++ b/crates/groupware/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "groupware"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/http-proto/Cargo.toml b/crates/http-proto/Cargo.toml
index 1fd9638f..4363fdff 100644
--- a/crates/http-proto/Cargo.toml
+++ b/crates/http-proto/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "http_proto"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/http/Cargo.toml b/crates/http/Cargo.toml
index a6a45a7d..7afacb70 100644
--- a/crates/http/Cargo.toml
+++ b/crates/http/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "http"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/imap-proto/Cargo.toml b/crates/imap-proto/Cargo.toml
index ca11df34..d85bdaa6 100644
--- a/crates/imap-proto/Cargo.toml
+++ b/crates/imap-proto/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "imap_proto"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/imap/Cargo.toml b/crates/imap/Cargo.toml
index 9d832b26..5f28d205 100644
--- a/crates/imap/Cargo.toml
+++ b/crates/imap/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "imap"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/imap/src/op/fetch.rs b/crates/imap/src/op/fetch.rs
index 19f1f743..d02ac59f 100644
--- a/crates/imap/src/op/fetch.rs
+++ b/crates/imap/src/op/fetch.rs
@@ -865,6 +865,10 @@ impl AsImapDataItem for ArchivedMessageMetadata {
let nested_message = self.message_id(*nested_message_id);
part.set_envelope(nested_message.envelope());
if let Some(root_part) = root_part {
+ if stack.len() == 10_000 {
+ debug_assert!(false, "Too much nesting in message metadata");
+ return root_part;
+ }
stack.push((root_part, parts, (message, message_id).into()));
}
root_part = part.into();
@@ -875,6 +879,10 @@ impl AsImapDataItem for ArchivedMessageMetadata {
}
ArchivedMetadataPartType::Multipart(subparts) => {
if let Some(root_part) = root_part {
+ if stack.len() == 10_000 {
+ debug_assert!(false, "Too much nesting in message metadata");
+ return root_part;
+ }
stack.push((root_part, parts, None));
}
root_part = part.into();
diff --git a/crates/jmap-proto/Cargo.toml b/crates/jmap-proto/Cargo.toml
index ff84c07d..2b475452 100644
--- a/crates/jmap-proto/Cargo.toml
+++ b/crates/jmap-proto/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "jmap_proto"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/jmap/Cargo.toml b/crates/jmap/Cargo.toml
index 73c13d7f..0a9498d0 100644
--- a/crates/jmap/Cargo.toml
+++ b/crates/jmap/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "jmap"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/jmap/src/email/body.rs b/crates/jmap/src/email/body.rs
index b61d4f8c..66c802d7 100644
--- a/crates/jmap/src/email/body.rs
+++ b/crates/jmap/src/email/body.rs
@@ -128,6 +128,10 @@ impl ToBodyPart for Vec> {
subparts.push(values);
if let Some(multipart) = multipart {
+ if parts_stack.len() == 10_000 {
+ debug_assert!(false, "Too much nesting in message metadata");
+ return Value::Null;
+ }
let multipart = multipart.clone();
parts_stack.push((
parts,
@@ -258,6 +262,10 @@ impl ToBodyPart for ArchivedMessageMetadataContents {
subparts.push(values);
if let Some(multipart) = multipart {
+ if parts_stack.len() == 10_000 {
+ debug_assert!(false, "Too much nesting in message metadata");
+ return Value::Null;
+ }
let multipart = multipart
.iter()
.map(|id| u16::from(id) as u32)
diff --git a/crates/main/Cargo.toml b/crates/main/Cargo.toml
index 0e395512..da8c9af5 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.15.4"
+version = "0.15.5"
edition = "2024"
[[bin]]
diff --git a/crates/managesieve/Cargo.toml b/crates/managesieve/Cargo.toml
index 7c8f35ec..53ebef72 100644
--- a/crates/managesieve/Cargo.toml
+++ b/crates/managesieve/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "managesieve"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/migration/Cargo.toml b/crates/migration/Cargo.toml
index d215fe21..1e4385c4 100644
--- a/crates/migration/Cargo.toml
+++ b/crates/migration/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "migration"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/nlp/Cargo.toml b/crates/nlp/Cargo.toml
index 30e498e0..d7292afc 100644
--- a/crates/nlp/Cargo.toml
+++ b/crates/nlp/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "nlp"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/pop3/Cargo.toml b/crates/pop3/Cargo.toml
index 3e73006e..089bfacc 100644
--- a/crates/pop3/Cargo.toml
+++ b/crates/pop3/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "pop3"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/services/Cargo.toml b/crates/services/Cargo.toml
index 3a9bb173..fa6aaebb 100644
--- a/crates/services/Cargo.toml
+++ b/crates/services/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "services"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/smtp/Cargo.toml b/crates/smtp/Cargo.toml
index da978745..a5b0d000 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.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/spam-filter/Cargo.toml b/crates/spam-filter/Cargo.toml
index 31ceadac..9d75ede9 100644
--- a/crates/spam-filter/Cargo.toml
+++ b/crates/spam-filter/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "spam-filter"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/store/Cargo.toml b/crates/store/Cargo.toml
index 79c05d1c..1115f553 100644
--- a/crates/store/Cargo.toml
+++ b/crates/store/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "store"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/trc/Cargo.toml b/crates/trc/Cargo.toml
index 9cea2044..9eb4944b 100644
--- a/crates/trc/Cargo.toml
+++ b/crates/trc/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "trc"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/trc/event-macro/Cargo.toml b/crates/trc/event-macro/Cargo.toml
index f0fe77a2..4fb8c5b7 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.15.4"
+version = "0.15.5"
edition = "2024"
[lib]
diff --git a/crates/types/Cargo.toml b/crates/types/Cargo.toml
index a1d353e9..663f6605 100644
--- a/crates/types/Cargo.toml
+++ b/crates/types/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "types"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/utils/Cargo.toml b/crates/utils/Cargo.toml
index 42d198ff..0b76d4ba 100644
--- a/crates/utils/Cargo.toml
+++ b/crates/utils/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "utils"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[dependencies]
diff --git a/crates/utils/proc-macros/Cargo.toml b/crates/utils/proc-macros/Cargo.toml
index 91003a3c..e860df95 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.15.4"
+version = "0.15.5"
edition = "2024"
[lib]
diff --git a/tests/Cargo.toml b/tests/Cargo.toml
index 12c1b715..001d2d0e 100644
--- a/tests/Cargo.toml
+++ b/tests/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "tests"
-version = "0.15.4"
+version = "0.15.5"
edition = "2024"
[features]