diff --git a/Cargo.lock b/Cargo.lock
index a59a5729..b036baaa 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -36,7 +36,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0"
dependencies = [
"crypto-common",
- "generic-array 0.14.7",
+ "generic-array 0.14.9",
]
[[package]]
@@ -87,7 +87,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75"
dependencies = [
"cfg-if",
- "getrandom 0.3.3",
+ "getrandom 0.3.4",
"once_cell",
"serde",
"version_check",
@@ -228,29 +228,13 @@ dependencies = [
"term",
]
-[[package]]
-name = "asn1-rs"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5493c3bedbacf7fd7382c6346bbd66687d12bbaad3a89a2d2c303ee6cf20b048"
-dependencies = [
- "asn1-rs-derive 0.5.1",
- "asn1-rs-impl",
- "displaydoc",
- "nom",
- "num-traits",
- "rusticata-macros",
- "thiserror 1.0.69",
- "time",
-]
-
[[package]]
name = "asn1-rs"
version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "56624a96882bb8c26d61312ae18cb45868e5a9992ea73c58e45c3101e56a1e60"
dependencies = [
- "asn1-rs-derive 0.6.0",
+ "asn1-rs-derive",
"asn1-rs-impl",
"displaydoc",
"nom",
@@ -260,18 +244,6 @@ dependencies = [
"time",
]
-[[package]]
-name = "asn1-rs-derive"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.106",
- "synstructure",
-]
-
[[package]]
name = "asn1-rs-derive"
version = "0.6.0"
@@ -280,7 +252,7 @@ checksum = "3109e49b1e4909e9db6515a30c633684d68cdeaa252f215214cb4fa1a5bfee2c"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
"synstructure",
]
@@ -292,7 +264,7 @@ checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -375,7 +347,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -397,7 +369,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -408,7 +380,7 @@ checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -425,7 +397,7 @@ checksum = "07a9b245ba0739fc90935094c29adbaee3f977218b5fb95e822e261cda7f56a3"
dependencies = [
"http 1.3.1",
"log",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"serde",
"serde_json",
"url",
@@ -483,7 +455,7 @@ dependencies = [
"pin-project",
"quick-xml 0.31.0",
"rand 0.8.5",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"rustc_version 0.4.1",
"serde",
"serde_json",
@@ -642,7 +614,7 @@ version = "0.70.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f"
dependencies = [
- "bitflags 2.9.4",
+ "bitflags 2.10.0",
"cexpr",
"clang-sys",
"itertools 0.13.0",
@@ -653,7 +625,7 @@ dependencies = [
"regex",
"rustc-hash 1.1.0",
"shlex",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -662,7 +634,7 @@ version = "0.72.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895"
dependencies = [
- "bitflags 2.9.4",
+ "bitflags 2.10.0",
"cexpr",
"clang-sys",
"itertools 0.13.0",
@@ -671,7 +643,7 @@ dependencies = [
"regex",
"rustc-hash 2.1.1",
"shlex",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -728,11 +700,11 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "bitflags"
-version = "2.9.4"
+version = "2.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394"
+checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3"
dependencies = [
- "serde",
+ "serde_core",
]
[[package]]
@@ -794,7 +766,7 @@ version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4"
dependencies = [
- "generic-array 0.14.7",
+ "generic-array 0.14.9",
]
[[package]]
@@ -803,7 +775,7 @@ version = "0.10.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
dependencies = [
- "generic-array 0.14.7",
+ "generic-array 0.14.9",
]
[[package]]
@@ -812,7 +784,7 @@ version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93"
dependencies = [
- "generic-array 0.14.7",
+ "generic-array 0.14.9",
]
[[package]]
@@ -880,7 +852,7 @@ checksum = "89385e82b5d1821d2219e0b095efa2cc1f246cbf99080f3be46a1a85c0d392d9"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -906,9 +878,9 @@ dependencies = [
[[package]]
name = "bzip2"
-version = "0.6.0"
+version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bea8dcd42434048e4f7a304411d9273a411f647446c1234a65ce0554923f4cff"
+checksum = "f3a53fac24f34a81bc9954b5d6cfce0c21e18ec6959f44f56e8e90e4bb7c346c"
dependencies = [
"libbz2-rs-sys",
]
@@ -1037,9 +1009,9 @@ dependencies = [
[[package]]
name = "cfg-if"
-version = "1.0.3"
+version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9"
+checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
[[package]]
name = "cfg_aliases"
@@ -1078,7 +1050,7 @@ version = "0.2.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "12f8e7987cbd042a63249497f41aed09f8e65add917ea6566effbc56578d6801"
dependencies = [
- "generic-array 0.14.7",
+ "generic-array 0.14.9",
]
[[package]]
@@ -1105,9 +1077,9 @@ dependencies = [
[[package]]
name = "clap"
-version = "4.5.48"
+version = "4.5.50"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2134bb3ea021b78629caa971416385309e0131b351b25e01dc16fb54e1b5fae"
+checksum = "0c2cfd7bf8a6017ddaa4e32ffe7403d547790db06bd171c1c53926faab501623"
dependencies = [
"clap_builder",
"clap_derive",
@@ -1115,9 +1087,9 @@ dependencies = [
[[package]]
name = "clap_builder"
-version = "4.5.48"
+version = "4.5.50"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2ba64afa3c0a6df7fa517765e31314e983f51dda798ffba27b988194fb65dc9"
+checksum = "0a4c05b9e80c5ccd3a7ef080ad7b6ba7d6fc00a985b8b157197075677c82c7a0"
dependencies = [
"anstream",
"anstyle",
@@ -1127,21 +1099,21 @@ dependencies = [
[[package]]
name = "clap_derive"
-version = "4.5.47"
+version = "4.5.49"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbfd7eae0b0f1a6e63d4b13c9c478de77c2eb546fba158ad50b4203dc24b9f9c"
+checksum = "2a0b5487afeab2deb2ff4e03a807ad1a03ac532ff5a2cee5d86884440c7f7671"
dependencies = [
"heck 0.5.0",
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
name = "clap_lex"
-version = "0.7.5"
+version = "0.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675"
+checksum = "a1d728cc89cf3aee9ff92b05e62b19ee65a02b5702cff7d5a377e32c6ae29d8d"
[[package]]
name = "cmac"
@@ -1206,7 +1178,7 @@ dependencies = [
"idna",
"imagesize",
"imap_proto",
- "indexmap 2.11.4",
+ "indexmap 2.12.0",
"infer 0.19.0",
"jmap_proto",
"libc",
@@ -1232,11 +1204,11 @@ dependencies = [
"pwhash",
"rcgen 0.12.1",
"regex",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"ring",
"rkyv",
"rsa",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pemfile 2.2.0",
"rustls-pki-types",
"serde",
@@ -1254,7 +1226,7 @@ dependencies = [
"unicode-security",
"utils",
"whatlang",
- "x509-parser 0.18.0",
+ "x509-parser",
"xxhash-rust",
"zip 6.0.0",
]
@@ -1523,7 +1495,7 @@ version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76"
dependencies = [
- "generic-array 0.14.7",
+ "generic-array 0.14.9",
"rand_core 0.6.4",
"subtle",
"zeroize",
@@ -1535,7 +1507,7 @@ version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
dependencies = [
- "generic-array 0.14.7",
+ "generic-array 0.14.9",
"rand_core 0.6.4",
"typenum",
]
@@ -1546,27 +1518,27 @@ version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4857fd85a0c34b3c3297875b747c1e02e06b6a0ea32dd892d8192b9ce0813ea6"
dependencies = [
- "generic-array 0.14.7",
+ "generic-array 0.14.9",
"subtle",
]
[[package]]
name = "csv"
-version = "1.3.1"
+version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acdc4883a9c96732e4733212c01447ebd805833b7275a73ca3ee080fd77afdaf"
+checksum = "52cd9d68cf7efc6ddfaaee42e7288d3a99d613d4b50f76ce9827ae0c6e14f938"
dependencies = [
"csv-core",
"itoa",
"ryu",
- "serde",
+ "serde_core",
]
[[package]]
name = "csv-core"
-version = "0.1.12"
+version = "0.1.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d02f3b0da4c6504f86e9cd789d8dbafab48c2321be74e9987593de5a894d93d"
+checksum = "704a3c26996a80471189265814dbc2c257598b96b8a7feae2d31ace646bb9782"
dependencies = [
"memchr",
]
@@ -1604,7 +1576,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -1662,7 +1634,7 @@ dependencies = [
"proc-macro2",
"quote",
"strsim 0.11.1",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -1676,7 +1648,7 @@ dependencies = [
"proc-macro2",
"quote",
"strsim 0.11.1",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -1698,7 +1670,7 @@ checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead"
dependencies = [
"darling_core 0.20.11",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -1709,7 +1681,7 @@ checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81"
dependencies = [
"darling_core 0.21.3",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -1770,7 +1742,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bd2735a791158376708f9347fe8faba9667589d82427ef3aed6794a8981de3d9"
dependencies = [
- "generic-array 0.14.7",
+ "generic-array 0.14.9",
]
[[package]]
@@ -1847,27 +1819,13 @@ dependencies = [
"zeroize",
]
-[[package]]
-name = "der-parser"
-version = "9.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5cd0a5c643689626bec213c4d8bd4d96acc8ffdb4ad4bb6bc16abf27d5f4b553"
-dependencies = [
- "asn1-rs 0.6.2",
- "displaydoc",
- "nom",
- "num-bigint",
- "num-traits",
- "rusticata-macros",
-]
-
[[package]]
name = "der-parser"
version = "10.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "07da5016415d5a3c4dd39b11ed26f915f52fc4e0dc197d87908bc916e51bc1a6"
dependencies = [
- "asn1-rs 0.7.1",
+ "asn1-rs",
"displaydoc",
"nom",
"num-bigint",
@@ -1893,7 +1851,7 @@ checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -1911,7 +1869,7 @@ version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066"
dependencies = [
- "generic-array 0.14.7",
+ "generic-array 0.14.9",
]
[[package]]
@@ -1948,9 +1906,9 @@ dependencies = [
"proc_macros",
"pwhash",
"regex",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"rkyv",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pki-types",
"scrypt",
"serde",
@@ -2017,7 +1975,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -2036,7 +1994,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "42788b21a1231c646c46508c406db9bf628342a781c24888bf60e1a29396deb2"
dependencies = [
"hickory-client",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"serde",
"serde_json",
"serde_urlencoded",
@@ -2188,7 +2146,7 @@ dependencies = [
"crypto-bigint",
"digest 0.10.7",
"ff",
- "generic-array 0.14.7",
+ "generic-array 0.14.9",
"group",
"hkdf",
"pem-rfc7468",
@@ -2279,7 +2237,7 @@ dependencies = [
"heck 0.5.0",
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -2331,7 +2289,7 @@ version = "0.14.0"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -2381,7 +2339,7 @@ version = "0.14.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "18c1ddb9231d8554c2d6bdf4cfaabf0c59251658c68b6c95cd52dd0c513a912a"
dependencies = [
- "getrandom 0.3.3",
+ "getrandom 0.3.4",
"libm",
"rand 0.9.2",
"siphasher",
@@ -2430,6 +2388,12 @@ version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
+[[package]]
+name = "fixedbitset"
+version = "0.5.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99"
+
[[package]]
name = "flate2"
version = "1.1.4"
@@ -2466,6 +2430,12 @@ version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2"
+[[package]]
+name = "foldhash"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb"
+
[[package]]
name = "foreign-types"
version = "0.3.2"
@@ -2545,7 +2515,7 @@ checksum = "9be610412e5a92d89855fb15b099a57792b7dbdcf8ac74c5a0e24d9b7b1b6f7f"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
"try_map",
]
@@ -2646,7 +2616,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -2681,9 +2651,9 @@ dependencies = [
[[package]]
name = "generic-array"
-version = "0.14.7"
+version = "0.14.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
+checksum = "4bb6743198531e02858aeaea5398fcc883e71851fcbcb5a2f773e2fb6cb1edf2"
dependencies = [
"typenum",
"version_check",
@@ -2692,21 +2662,22 @@ dependencies = [
[[package]]
name = "generic-array"
-version = "1.3.0"
+version = "1.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56cf091b3dc50a299896cb5fb7d9d1908500766a5de99a8d515e63cb4251de8f"
+checksum = "985a5578ebdb02351d484a77fb27e7cb79272f1ba9bc24692d8243c3cfe40660"
dependencies = [
+ "rustversion",
"typenum",
]
[[package]]
name = "gethostname"
-version = "1.0.2"
+version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc257fdb4038301ce4b9cd1b3b51704509692bb3ff716a410cbd07925d9dae55"
+checksum = "1bd49230192a3797a9a4d6abe9b3eed6f7fa4c8a8a4947977c6f80025f92cbd8"
dependencies = [
"rustix",
- "windows-targets 0.52.6",
+ "windows-link 0.2.1",
]
[[package]]
@@ -2735,15 +2706,15 @@ dependencies = [
[[package]]
name = "getrandom"
-version = "0.3.3"
+version = "0.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4"
+checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd"
dependencies = [
"cfg-if",
"js-sys",
"libc",
"r-efi",
- "wasi 0.14.7+wasi-0.2.4",
+ "wasip2",
"wasm-bindgen",
]
@@ -2780,7 +2751,7 @@ checksum = "53010ccb100b96a67bc32c0175f0ed1426b31b655d562898e57325f81c023ac0"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -2833,7 +2804,7 @@ dependencies = [
"futures-sink",
"futures-util",
"http 0.2.12",
- "indexmap 2.11.4",
+ "indexmap 2.12.0",
"slab",
"tokio",
"tokio-util",
@@ -2852,7 +2823,7 @@ dependencies = [
"futures-core",
"futures-sink",
"http 1.3.1",
- "indexmap 2.11.4",
+ "indexmap 2.12.0",
"slab",
"tokio",
"tokio-util",
@@ -2883,7 +2854,7 @@ checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1"
dependencies = [
"allocator-api2",
"equivalent",
- "foldhash",
+ "foldhash 0.1.5",
]
[[package]]
@@ -2891,6 +2862,11 @@ name = "hashbrown"
version = "0.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d"
+dependencies = [
+ "allocator-api2",
+ "equivalent",
+ "foldhash 0.2.0",
+]
[[package]]
name = "hashify"
@@ -2900,7 +2876,7 @@ checksum = "149e3ea90eb5a26ad354cfe3cb7f7401b9329032d0235f2687d03a35f30e5d4c"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -2994,7 +2970,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a62d7684f766b0f96344be88c023f9b6650039aea09d526b4974cce302eb61b1"
dependencies = [
"async-trait",
- "bitflags 2.9.4",
+ "bitflags 2.10.0",
"bytes",
"cfg-if",
"data-encoding",
@@ -3007,7 +2983,7 @@ dependencies = [
"once_cell",
"rand 0.9.2",
"ring",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pki-types",
"thiserror 2.0.17",
"time",
@@ -3033,7 +3009,7 @@ dependencies = [
"parking_lot",
"rand 0.9.2",
"resolv-conf",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"smallvec",
"thiserror 2.0.17",
"tokio",
@@ -3143,7 +3119,7 @@ dependencies = [
"trc",
"types",
"utils",
- "x509-parser 0.18.0",
+ "x509-parser",
]
[[package]]
@@ -3321,7 +3297,7 @@ dependencies = [
"http 1.3.1",
"hyper 1.7.0",
"hyper-util",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pki-types",
"tokio",
"tokio-rustls 0.26.4",
@@ -3360,7 +3336,7 @@ dependencies = [
"libc",
"percent-encoding",
"pin-project-lite",
- "socket2 0.6.0",
+ "socket2 0.6.1",
"tokio",
"tower-service",
"tracing",
@@ -3528,14 +3504,14 @@ dependencies = [
"directory",
"email",
"imap_proto",
- "indexmap 2.11.4",
+ "indexmap 2.12.0",
"mail-parser",
"mail-send",
"md5 0.8.0",
"nlp",
"parking_lot",
"rand 0.9.2",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pemfile 2.2.0",
"store",
"tokio",
@@ -3583,7 +3559,7 @@ dependencies = [
"proc-macro-error",
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
"zstd",
]
@@ -3610,9 +3586,9 @@ dependencies = [
[[package]]
name = "indexmap"
-version = "2.11.4"
+version = "2.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5"
+checksum = "6717a8d2a5a929a1a2eb43a12812498ed141a0bcfb7e8f7844fbdbe4303bba9f"
dependencies = [
"equivalent",
"hashbrown 0.16.0",
@@ -3655,7 +3631,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01"
dependencies = [
"block-padding",
- "generic-array 0.14.7",
+ "generic-array 0.14.9",
]
[[package]]
@@ -3667,17 +3643,6 @@ dependencies = [
"cfg-if",
]
-[[package]]
-name = "io-uring"
-version = "0.7.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "046fa2d4d00aea763528b4950358d0ead425372445dc8ff86312b3c69ff7727b"
-dependencies = [
- "bitflags 2.9.4",
- "cfg-if",
- "libc",
-]
-
[[package]]
name = "ipconfig"
version = "0.3.2"
@@ -3850,7 +3815,7 @@ dependencies = [
"p256",
"pkcs8",
"rand 0.9.2",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"rkyv",
"rsa",
"serde",
@@ -3884,8 +3849,8 @@ dependencies = [
"futures-util",
"maybe-async",
"parking_lot",
- "reqwest 0.12.23",
- "rustls 0.23.32",
+ "reqwest 0.12.24",
+ "rustls 0.23.33",
"rustls-pki-types",
"serde",
"serde_json",
@@ -3906,8 +3871,8 @@ dependencies = [
"futures-util",
"maybe-async",
"parking_lot",
- "reqwest 0.12.23",
- "rustls 0.23.32",
+ "reqwest 0.12.24",
+ "rustls 0.23.33",
"rustls-pki-types",
"serde",
"serde_json",
@@ -3975,7 +3940,7 @@ version = "0.1.34"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33"
dependencies = [
- "getrandom 0.3.3",
+ "getrandom 0.3.4",
"libc",
]
@@ -4024,7 +3989,7 @@ version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4ee7893dab2e44ae5f9d0173f26ff4aa327c10b01b06a72b52dd9405b628640d"
dependencies = [
- "indexmap 2.11.4",
+ "indexmap 2.12.0",
]
[[package]]
@@ -4058,7 +4023,7 @@ dependencies = [
"ena",
"itertools 0.11.0",
"lalrpop-util",
- "petgraph",
+ "petgraph 0.6.5",
"regex",
"regex-syntax",
"string_cache",
@@ -4110,15 +4075,15 @@ dependencies = [
"log",
"nom",
"percent-encoding",
- "rustls 0.23.32",
- "rustls-native-certs 0.8.1",
+ "rustls 0.23.33",
+ "rustls-native-certs 0.8.2",
"thiserror 2.0.17",
"tokio",
"tokio-rustls 0.26.4",
"tokio-stream",
"tokio-util",
"url",
- "x509-parser 0.18.0",
+ "x509-parser",
]
[[package]]
@@ -4179,7 +4144,7 @@ version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb"
dependencies = [
- "bitflags 2.9.4",
+ "bitflags 2.10.0",
"libc",
"redox_syscall",
]
@@ -4371,7 +4336,7 @@ dependencies = [
"base64 0.22.1",
"gethostname",
"md5 0.8.0",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pki-types",
"smtp-proto",
"tokio",
@@ -4396,7 +4361,7 @@ dependencies = [
"md5 0.8.0",
"parking_lot",
"rkyv",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pemfile 2.2.0",
"sieve-rs",
"store",
@@ -4430,7 +4395,7 @@ checksum = "5cf92c10c7e361d6b99666ec1c6f9805b0bea2c3bd8c78dc6fe98ac5bd78db11"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -4551,13 +4516,13 @@ dependencies = [
[[package]]
name = "mio"
-version = "1.0.4"
+version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c"
+checksum = "69d83b0086dc8ecf3ce9ae2874b2d1290252e2a30720bea58a5c6639b0092873"
dependencies = [
"libc",
"wasi 0.11.1+wasi-snapshot-preview1",
- "windows-sys 0.59.0",
+ "windows-sys 0.61.2",
]
[[package]]
@@ -4595,7 +4560,7 @@ checksum = "4568f25ccbd45ab5d5603dc34318c1ec56b117531781260002151b8530a9f931"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -4611,7 +4576,7 @@ dependencies = [
"proc-macro-error2",
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
"termcolor",
"thiserror 2.0.17",
]
@@ -4634,7 +4599,7 @@ dependencies = [
"pem",
"percent-encoding",
"rand 0.9.2",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pemfile 2.2.0",
"serde",
"serde_json",
@@ -4655,13 +4620,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fbb9f371618ce723f095c61fbcdc36e8936956d2b62832f9c7648689b338e052"
dependencies = [
"base64 0.22.1",
- "bitflags 2.9.4",
+ "bitflags 2.10.0",
"btoi",
"byteorder",
"bytes",
"crc32fast",
"flate2",
- "getrandom 0.3.3",
+ "getrandom 0.3.4",
"mysql-common-derive",
"num-bigint",
"num-traits",
@@ -4705,7 +4670,7 @@ version = "0.30.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6"
dependencies = [
- "bitflags 2.9.4",
+ "bitflags 2.10.0",
"cfg-if",
"cfg_aliases",
"libc",
@@ -4874,9 +4839,9 @@ dependencies = [
[[package]]
name = "num_enum"
-version = "0.7.4"
+version = "0.7.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a973b4e44ce6cad84ce69d797acf9a044532e4184c4f267913d1b546a0727b7a"
+checksum = "b1207a7e20ad57b847bbddc6776b968420d38292bbfe2089accff5e19e82454c"
dependencies = [
"num_enum_derive",
"rustversion",
@@ -4884,14 +4849,14 @@ dependencies = [
[[package]]
name = "num_enum_derive"
-version = "0.7.4"
+version = "0.7.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77e878c846a8abae00dd069496dbe8751b16ac1c3d6bd2a7283a938e8228f90d"
+checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7"
dependencies = [
"proc-macro-crate",
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -4921,22 +4886,13 @@ dependencies = [
"subtle",
]
-[[package]]
-name = "oid-registry"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8d8034d9489cdaf79228eb9f6a3b8d7bb32ba00d6645ebd48eef4077ceb5bd9"
-dependencies = [
- "asn1-rs 0.6.2",
-]
-
[[package]]
name = "oid-registry"
version = "0.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "12f40cff3dde1b6087cc5d5f5d4d65712f34016a03ed60e9c08dcc392736b5b7"
dependencies = [
- "asn1-rs 0.7.1",
+ "asn1-rs",
]
[[package]]
@@ -4963,11 +4919,11 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381"
[[package]]
name = "openssl"
-version = "0.10.73"
+version = "0.10.74"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8"
+checksum = "24ad14dd45412269e1a30f52ad8f0664f0f4f4a89ee8fe28c3b3527021ebb654"
dependencies = [
- "bitflags 2.9.4",
+ "bitflags 2.10.0",
"cfg-if",
"foreign-types",
"libc",
@@ -4984,7 +4940,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -4995,9 +4951,9 @@ checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e"
[[package]]
name = "openssl-sys"
-version = "0.9.109"
+version = "0.9.110"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90096e2e47630d78b7d1c20952dc621f957103f8bc2c8359ec81290d75238571"
+checksum = "0a9f0075ba3c21b09f8e8b2026584b1d18d49388648f2fbbf3c97ea8deced8e2"
dependencies = [
"cc",
"libc",
@@ -5029,7 +4985,7 @@ dependencies = [
"bytes",
"http 1.3.1",
"opentelemetry",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"tracing",
]
@@ -5046,7 +5002,7 @@ dependencies = [
"opentelemetry-proto",
"opentelemetry_sdk",
"prost",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"thiserror 2.0.17",
"tokio",
"tonic",
@@ -5256,7 +5212,7 @@ dependencies = [
"pest_meta",
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -5275,18 +5231,20 @@ version = "0.6.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db"
dependencies = [
- "fixedbitset",
- "indexmap 2.11.4",
+ "fixedbitset 0.4.2",
+ "indexmap 2.12.0",
]
[[package]]
-name = "phf"
-version = "0.11.3"
+name = "petgraph"
+version = "0.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078"
+checksum = "8701b58ea97060d5e5b155d383a69952a60943f0e6dfe30b04c287beb0b27455"
dependencies = [
- "phf_macros",
- "phf_shared 0.11.3",
+ "fixedbitset 0.5.7",
+ "hashbrown 0.15.5",
+ "indexmap 2.12.0",
+ "serde",
]
[[package]]
@@ -5304,6 +5262,7 @@ version = "0.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c1562dc717473dbaa4c1f85a36410e03c047b2e7df7f45ee938fbef64ae7fadf"
dependencies = [
+ "phf_macros",
"phf_shared 0.13.1",
"serde",
]
@@ -5314,20 +5273,10 @@ version = "0.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "49aa7f9d80421bca176ca8dbfebe668cc7a2684708594ec9f3c0db0805d5d6e1"
dependencies = [
- "phf_generator 0.13.1",
+ "phf_generator",
"phf_shared 0.13.1",
]
-[[package]]
-name = "phf_generator"
-version = "0.11.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d"
-dependencies = [
- "phf_shared 0.11.3",
- "rand 0.8.5",
-]
-
[[package]]
name = "phf_generator"
version = "0.13.1"
@@ -5340,15 +5289,15 @@ dependencies = [
[[package]]
name = "phf_macros"
-version = "0.11.3"
+version = "0.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216"
+checksum = "812f032b54b1e759ccd5f8b6677695d5268c588701effba24601f6932f8269ef"
dependencies = [
- "phf_generator 0.11.3",
- "phf_shared 0.11.3",
+ "phf_generator",
+ "phf_shared 0.13.1",
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -5395,7 +5344,7 @@ checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -5491,7 +5440,7 @@ dependencies = [
"imap",
"mail-parser",
"mail-send",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"store",
"tokio",
"tokio-rustls 0.26.4",
@@ -5578,7 +5527,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b"
dependencies = [
"proc-macro2",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -5666,7 +5615,7 @@ dependencies = [
"proc-macro-error-attr2",
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -5684,7 +5633,7 @@ version = "0.14.0"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -5721,7 +5670,7 @@ dependencies = [
"itertools 0.14.0",
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -5736,9 +5685,9 @@ dependencies = [
[[package]]
name = "psl"
-version = "2.1.148"
+version = "2.1.151"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53297a72c400b31c5facd8e50894d08d20b74ee74925b28a20d51fe48c863583"
+checksum = "6fd2e88c2c28854abe53489ce679f9dad712e2ac01a342dbeccae851cf0654d9"
dependencies = [
"psl-types",
]
@@ -5766,14 +5715,14 @@ checksum = "7347867d0a7e1208d93b46767be83e2b8f978c3dad35f775ac8d8847551d6fe1"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
name = "pure-rust-locales"
-version = "0.8.1"
+version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1190fd18ae6ce9e137184f207593877e70f39b015040156b1e05081cdfe3733a"
+checksum = "869675ad2d7541aea90c6d88c81f46a7f4ea9af8cd0395d38f11a95126998a0d"
[[package]]
name = "pwhash"
@@ -5821,9 +5770,9 @@ dependencies = [
[[package]]
name = "quick_cache"
-version = "0.6.17"
+version = "0.6.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba15f5bccfb18c666351668b97bbff66da5093f96757ca15299e4e594fe1316e"
+checksum = "7ada44a88ef953a3294f6eb55d2007ba44646015e18613d2f213016379203ef3"
dependencies = [
"ahash",
"equivalent",
@@ -5843,8 +5792,8 @@ dependencies = [
"quinn-proto",
"quinn-udp",
"rustc-hash 2.1.1",
- "rustls 0.23.32",
- "socket2 0.6.0",
+ "rustls 0.23.33",
+ "socket2 0.6.1",
"thiserror 2.0.17",
"tokio",
"tracing",
@@ -5859,12 +5808,12 @@ checksum = "f1906b49b0c3bc04b5fe5d86a77925ae6524a19b816ae38ce1e426255f1d8a31"
dependencies = [
"bytes",
"fastbloom",
- "getrandom 0.3.3",
+ "getrandom 0.3.4",
"lru-slab",
"rand 0.9.2",
"ring",
"rustc-hash 2.1.1",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pki-types",
"rustls-platform-verifier",
"slab",
@@ -5883,7 +5832,7 @@ dependencies = [
"cfg_aliases",
"libc",
"once_cell",
- "socket2 0.6.0",
+ "socket2 0.6.1",
"tracing",
"windows-sys 0.60.2",
]
@@ -6037,7 +5986,7 @@ version = "0.9.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38"
dependencies = [
- "getrandom 0.3.3",
+ "getrandom 0.3.4",
]
[[package]]
@@ -6199,11 +6148,11 @@ dependencies = [
"percent-encoding",
"pin-project-lite",
"rand 0.9.2",
- "rustls 0.23.32",
- "rustls-native-certs 0.8.1",
+ "rustls 0.23.33",
+ "rustls-native-certs 0.8.2",
"ryu",
"sha1_smol",
- "socket2 0.6.0",
+ "socket2 0.6.1",
"tokio",
"tokio-rustls 0.26.4",
"tokio-util",
@@ -6217,7 +6166,7 @@ version = "0.5.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d"
dependencies = [
- "bitflags 2.9.4",
+ "bitflags 2.10.0",
]
[[package]]
@@ -6259,14 +6208,14 @@ checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
name = "regex"
-version = "1.12.1"
+version = "1.12.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a52d8d02cacdb176ef4678de6c052efb4b3da14b78e4db683a4252762be5433"
+checksum = "843bc0191f75f3e22651ae5f1e72939ab2f72a4bc30fa80a066bd66edefc24d4"
dependencies = [
"aho-corasick",
"memchr",
@@ -6276,9 +6225,9 @@ dependencies = [
[[package]]
name = "regex-automata"
-version = "0.4.12"
+version = "0.4.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "722166aa0d7438abbaa4d5cc2c649dac844e8c56d82fb3d33e9c34b5cd268fc6"
+checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c"
dependencies = [
"aho-corasick",
"memchr",
@@ -6287,9 +6236,9 @@ dependencies = [
[[package]]
name = "regex-syntax"
-version = "0.8.7"
+version = "0.8.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3160422bbd54dd5ecfdca71e5fd59b7b8fe2b1697ab2baf64f6d05dcc66d298"
+checksum = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58"
[[package]]
name = "rend"
@@ -6345,9 +6294,9 @@ dependencies = [
[[package]]
name = "reqwest"
-version = "0.12.23"
+version = "0.12.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d429f34c8092b2d42c7c93cec323bb4adeb7c67698f70839adec842ec10c7ceb"
+checksum = "9d0946410b9f7b082a427e4ef5c8ff541a88b357bc6c637c40db3a68ac70a36f"
dependencies = [
"base64 0.22.1",
"bytes",
@@ -6367,7 +6316,7 @@ dependencies = [
"percent-encoding",
"pin-project-lite",
"quinn",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pki-types",
"serde",
"serde_json",
@@ -6454,7 +6403,7 @@ dependencies = [
"bytecheck",
"bytes",
"hashbrown 0.15.5",
- "indexmap 2.11.4",
+ "indexmap 2.12.0",
"munge",
"ptr_meta",
"rancor",
@@ -6472,7 +6421,7 @@ checksum = "bd83f5f173ff41e00337d97f6572e416d022ef8a19f371817259ae960324c482"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -6503,14 +6452,15 @@ dependencies = [
[[package]]
name = "ron"
-version = "0.8.1"
+version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94"
+checksum = "db09040cc89e461f1a265139777a2bde7f8d8c67c4936f700c63ce3e2904d468"
dependencies = [
- "base64 0.21.7",
- "bitflags 2.9.4",
+ "base64 0.22.1",
+ "bitflags 2.10.0",
"serde",
"serde_derive",
+ "unicode-ident",
]
[[package]]
@@ -6566,7 +6516,7 @@ version = "0.37.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "165ca6e57b20e1351573e3729b958bc62f0e48025386970b6e4d29e7a7e71f3f"
dependencies = [
- "bitflags 2.9.4",
+ "bitflags 2.10.0",
"fallible-iterator 0.3.0",
"fallible-streaming-iterator",
"hashlink",
@@ -6682,7 +6632,7 @@ version = "1.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e"
dependencies = [
- "bitflags 2.9.4",
+ "bitflags 2.10.0",
"errno",
"libc",
"linux-raw-sys",
@@ -6703,9 +6653,9 @@ dependencies = [
[[package]]
name = "rustls"
-version = "0.23.32"
+version = "0.23.33"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd3c25631629d034ce7cd9940adc9d45762d46de2b0f57193c4443b92c6d4d40"
+checksum = "751e04a496ca00bb97a5e043158d23d66b5aabf2e1d5aa2a0aaebb1aafe6f82c"
dependencies = [
"log",
"once_cell",
@@ -6743,9 +6693,9 @@ dependencies = [
[[package]]
name = "rustls-native-certs"
-version = "0.8.1"
+version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fcff2dd52b58a8d98a70243663a0d234c4e2b79235637849d15913394a247d3"
+checksum = "9980d917ebb0c0536119ba501e90834767bffc3d60641457fd84a1f3fd337923"
dependencies = [
"openssl-probe",
"rustls-pki-types",
@@ -6792,8 +6742,8 @@ dependencies = [
"jni",
"log",
"once_cell",
- "rustls 0.23.32",
- "rustls-native-certs 0.8.1",
+ "rustls 0.23.33",
+ "rustls-native-certs 0.8.2",
"rustls-platform-verifier-android",
"rustls-webpki 0.103.7",
"security-framework 3.5.1",
@@ -6949,7 +6899,7 @@ dependencies = [
"proc-macro2",
"quote",
"serde_derive_internals",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -6994,7 +6944,7 @@ checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc"
dependencies = [
"base16ct",
"der",
- "generic-array 0.14.7",
+ "generic-array 0.14.9",
"pkcs8",
"subtle",
"zeroize",
@@ -7016,7 +6966,7 @@ version = "2.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02"
dependencies = [
- "bitflags 2.9.4",
+ "bitflags 2.10.0",
"core-foundation 0.9.4",
"core-foundation-sys",
"libc",
@@ -7029,7 +6979,7 @@ version = "3.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b3297343eaf830f66ede390ea39da1d462b6b0c1b000f420d0a83f898bbbe6ef"
dependencies = [
- "bitflags 2.9.4",
+ "bitflags 2.10.0",
"core-foundation 0.10.1",
"core-foundation-sys",
"libc",
@@ -7162,7 +7112,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -7173,7 +7123,7 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -7182,7 +7132,7 @@ version = "1.0.145"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c"
dependencies = [
- "indexmap 2.11.4",
+ "indexmap 2.12.0",
"itoa",
"memchr",
"ryu",
@@ -7218,7 +7168,7 @@ checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -7253,7 +7203,7 @@ dependencies = [
"chrono",
"hex",
"indexmap 1.9.3",
- "indexmap 2.11.4",
+ "indexmap 2.12.0",
"schemars 0.9.0",
"schemars 1.0.4",
"serde_core",
@@ -7283,7 +7233,7 @@ dependencies = [
"darling 0.21.3",
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -7292,7 +7242,7 @@ version = "0.9.34+deprecated"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47"
dependencies = [
- "indexmap 2.11.4",
+ "indexmap 2.12.0",
"itoa",
"ryu",
"serde",
@@ -7321,7 +7271,7 @@ checksum = "5d69265a08751de7844521fd15003ae0a888e035773ba05695c5c759a6f89eef"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -7344,7 +7294,7 @@ dependencies = [
"mail-parser",
"memory-stats",
"p256",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"rsa",
"serde",
"serde_json",
@@ -7396,7 +7346,7 @@ checksum = "1f606421e4a6012877e893c399822a4ed4b089164c5969424e1b9d1e66e6964b"
dependencies = [
"const-oid",
"digest 0.10.7",
- "generic-array 1.3.0",
+ "generic-array 1.3.4",
]
[[package]]
@@ -7423,6 +7373,12 @@ dependencies = [
"digest 0.10.7",
]
+[[package]]
+name = "sha2-const-stable"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5f179d4e11094a893b82fff208f74d448a7512f99f5a0acbd5c679b705f83ed9"
+
[[package]]
name = "sha3"
version = "0.10.8"
@@ -7561,9 +7517,9 @@ dependencies = [
"rand 0.9.2",
"rayon",
"regex",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"rkyv",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pemfile 2.2.0",
"rustls-pki-types",
"serde",
@@ -7580,7 +7536,7 @@ dependencies = [
"types",
"utils",
"webpki-roots 1.0.3",
- "x509-parser 0.18.0",
+ "x509-parser",
]
[[package]]
@@ -7628,12 +7584,12 @@ dependencies = [
[[package]]
name = "socket2"
-version = "0.6.0"
+version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "233504af464074f9d066d7b5416c5f9b894a5862a6506e306f7b816cdd6f1807"
+checksum = "17129e116933cf371d018bb80ae557e889637989d8638274fb25622827b03881"
dependencies = [
"libc",
- "windows-sys 0.59.0",
+ "windows-sys 0.60.2",
]
[[package]]
@@ -7652,7 +7608,7 @@ dependencies = [
"mail-send",
"nlp",
"psl",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"sha1",
"sha2 0.10.9",
"smtp-proto",
@@ -7688,6 +7644,41 @@ dependencies = [
"der",
]
+[[package]]
+name = "stabby"
+version = "36.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "89b7e94eaf470c2e76b5f15fb2fb49714471a36cc512df5ee231e62e82ec79f8"
+dependencies = [
+ "rustversion",
+ "stabby-abi",
+]
+
+[[package]]
+name = "stabby-abi"
+version = "36.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0dc7a63b8276b54e51bfffe3d85da56e7906b2dcfcb29018a8ab666c06734c1a"
+dependencies = [
+ "rustc_version 0.4.1",
+ "rustversion",
+ "sha2-const-stable",
+ "stabby-macros",
+]
+
+[[package]]
+name = "stabby-macros"
+version = "36.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eecb7ec5611ec93ec79d120fbe55f31bea234dc1bed1001d4a071bb688651615"
+dependencies = [
+ "proc-macro-crate",
+ "proc-macro2",
+ "quote",
+ "rand 0.8.5",
+ "syn 1.0.109",
+]
+
[[package]]
name = "stable_deref_trait"
version = "1.2.1"
@@ -7738,7 +7729,7 @@ dependencies = [
"prettytable-rs",
"pwhash",
"rand 0.9.2",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"rpassword",
"serde",
"serde_json",
@@ -7785,14 +7776,14 @@ dependencies = [
"rdkafka",
"redis",
"regex",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"ring",
"rkyv",
"roaring",
"rocksdb",
"rusqlite",
"rust-s3",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pki-types",
"serde",
"serde_json",
@@ -7860,9 +7851,9 @@ dependencies = [
[[package]]
name = "syn"
-version = "2.0.106"
+version = "2.0.107"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6"
+checksum = "2a26dbd934e5451d21ef060c018dae56fc073894c5a7896f882928a76e6d081b"
dependencies = [
"proc-macro2",
"quote",
@@ -7892,7 +7883,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -7992,10 +7983,10 @@ dependencies = [
"pop3",
"quick-xml 0.38.3",
"rayon",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"ring",
"rkyv",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pemfile 2.2.0",
"rustls-pki-types",
"serde",
@@ -8040,7 +8031,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -8051,7 +8042,7 @@ checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -8153,33 +8144,30 @@ dependencies = [
[[package]]
name = "tokio"
-version = "1.47.1"
+version = "1.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89e49afdadebb872d3145a5638b59eb0691ea23e46ca484037cfab3b76b95038"
+checksum = "ff360e02eab121e0bc37a2d3b4d4dc622e6eda3a8e5253d5435ecf5bd4c68408"
dependencies = [
- "backtrace",
"bytes",
- "io-uring",
"libc",
"mio",
"parking_lot",
"pin-project-lite",
"signal-hook-registry",
- "slab",
- "socket2 0.6.0",
+ "socket2 0.6.1",
"tokio-macros",
- "windows-sys 0.59.0",
+ "windows-sys 0.61.2",
]
[[package]]
name = "tokio-macros"
-version = "2.5.0"
+version = "2.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8"
+checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -8202,7 +8190,7 @@ dependencies = [
"postgres-protocol",
"postgres-types",
"rand 0.9.2",
- "socket2 0.6.0",
+ "socket2 0.6.1",
"tokio",
"tokio-util",
"whoami",
@@ -8224,7 +8212,7 @@ version = "0.26.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1729aa945f29d91ba541258c8df89027d5792d85a8841fb65e8bf0f4ede4ef61"
dependencies = [
- "rustls 0.23.32",
+ "rustls 0.23.33",
"tokio",
]
@@ -8247,7 +8235,7 @@ checksum = "d25a406cddcc431a75d3d9afc6a7c0f7428d4891dd973e4d54c56b46127bf857"
dependencies = [
"futures-util",
"log",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pki-types",
"tokio",
"tokio-rustls 0.26.4",
@@ -8305,7 +8293,7 @@ version = "0.23.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6485ef6d0d9b5d0ec17244ff7eb05310113c3f316f2d14200d4de56b3cb98f8d"
dependencies = [
- "indexmap 2.11.4",
+ "indexmap 2.12.0",
"toml_datetime",
"toml_parser",
"winnow",
@@ -8405,7 +8393,7 @@ version = "0.6.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2"
dependencies = [
- "bitflags 2.9.4",
+ "bitflags 2.10.0",
"bytes",
"futures-util",
"http 1.3.1",
@@ -8449,7 +8437,7 @@ checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -8515,7 +8503,7 @@ dependencies = [
"mail-auth",
"mail-parser",
"parking_lot",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"rkyv",
"rtrb",
"serde",
@@ -8557,7 +8545,7 @@ dependencies = [
"httparse",
"log",
"rand 0.9.2",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pki-types",
"sha1",
"thiserror 2.0.17",
@@ -8799,10 +8787,10 @@ dependencies = [
"rand 0.9.2",
"rcgen 0.14.5",
"regex",
- "reqwest 0.12.23",
+ "reqwest 0.12.24",
"ring",
"rkyv",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pemfile 2.2.0",
"rustls-pki-types",
"serde",
@@ -8812,7 +8800,7 @@ dependencies = [
"tokio-rustls 0.26.4",
"trc",
"webpki-roots 1.0.3",
- "x509-parser 0.18.0",
+ "x509-parser",
]
[[package]]
@@ -8821,7 +8809,7 @@ version = "1.18.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2"
dependencies = [
- "getrandom 0.3.3",
+ "getrandom 0.3.4",
"js-sys",
"serde",
"sha1_smol",
@@ -8848,7 +8836,7 @@ checksum = "8c44ce98e7227a04eeb4cf9c784109a5c9710e54849ceb4f09f8597247897f1e"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
"unzip-n",
]
@@ -8925,15 +8913,6 @@ version = "0.11.1+wasi-snapshot-preview1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b"
-[[package]]
-name = "wasi"
-version = "0.14.7+wasi-0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c"
-dependencies = [
- "wasip2",
-]
-
[[package]]
name = "wasip2"
version = "1.0.1+wasi-0.2.4"
@@ -8972,7 +8951,7 @@ dependencies = [
"log",
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
"wasm-bindgen-shared",
]
@@ -9007,7 +8986,7 @@ checksum = "9f07d2f20d4da7b26400c9f4a0511e6e0345b040694e8a75bd41d578fa4421d7"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
@@ -9165,7 +9144,7 @@ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -9176,7 +9155,7 @@ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -9557,35 +9536,18 @@ dependencies = [
"zeroize",
]
-[[package]]
-name = "x509-parser"
-version = "0.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcbc162f30700d6f3f82a24bf7cc62ffe7caea42c0b2cba8bf7f3ae50cf51f69"
-dependencies = [
- "asn1-rs 0.6.2",
- "data-encoding",
- "der-parser 9.0.0",
- "lazy_static",
- "nom",
- "oid-registry 0.7.1",
- "rusticata-macros",
- "thiserror 1.0.69",
- "time",
-]
-
[[package]]
name = "x509-parser"
version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eb3e137310115a65136898d2079f003ce33331a6c4b0d51f1531d1be082b6425"
dependencies = [
- "asn1-rs 0.7.1",
+ "asn1-rs",
"data-encoding",
- "der-parser 10.0.0",
+ "der-parser",
"lazy_static",
"nom",
- "oid-registry 0.8.1",
+ "oid-registry",
"rusticata-macros",
"thiserror 2.0.17",
"time",
@@ -9632,31 +9594,32 @@ checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
"synstructure",
]
[[package]]
name = "zenoh"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3427f6680d4de3f71bd823e49df91c43d97a90475bed4ace0e6fc60c93a82401"
+checksum = "c5df040795169d4b6e4fc8a5f9dce81b5210d1d606399634ec380deda30c347f"
dependencies = [
"ahash",
"arc-swap",
"async-trait",
"bytes",
+ "const_format",
"flume",
"futures",
"git-version",
- "itertools 0.13.0",
+ "itertools 0.14.0",
"json5",
"lazy_static",
"nonempty-collections",
"once_cell",
"paste",
- "petgraph",
- "phf 0.11.3",
+ "petgraph 0.8.3",
+ "phf 0.13.1",
"rand 0.8.5",
"ref-cast",
"rustc_version 0.4.1",
@@ -9689,18 +9652,18 @@ dependencies = [
[[package]]
name = "zenoh-buffers"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9acc6037e456d7baf880a7379f7a0cbcf637cc64ec6a2cf9ee26914823e91738"
+checksum = "510921897b03793f399b7eaec176355a12293afa1e791c3f844ef12fa08aecc4"
dependencies = [
"zenoh-collections",
]
[[package]]
name = "zenoh-codec"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61054e59ad67c2cc8002de54a1797accc9a52c305bd50ed7a4589a33e698f345"
+checksum = "585a77eff7a781726aeeafab52ad175be0dcfc92376a756c23a51f6701a73ba0"
dependencies = [
"tracing",
"uhlc",
@@ -9710,18 +9673,18 @@ dependencies = [
[[package]]
name = "zenoh-collections"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "959ea6f76c697adb778eefc358fb77a140add8ad800d08bd92b2ad19eb088017"
+checksum = "fa17a7ecf321aba18eabf99a37390b7a6524e826b6f8cb38f9361479ece28887"
dependencies = [
"ahash",
]
[[package]]
name = "zenoh-config"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f41025fbb26212dc2b94815aef1591f4a7fd223e25dc8f63042e6d192752cc7"
+checksum = "c02801ef8fd8d0b10437055dac10fd961fdc3a6356439dd52ee627e7f31b9295"
dependencies = [
"json5",
"nonempty-collections",
@@ -9744,9 +9707,9 @@ dependencies = [
[[package]]
name = "zenoh-core"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41c94383c2eddf191ce04dc792e901487045640ff66614c55ae7fdb9c15bd037"
+checksum = "325645d09d0f74f48051b51c2ab73e270c16d9d7d408c41eb47ed8f067451cd9"
dependencies = [
"lazy_static",
"tokio",
@@ -9756,9 +9719,9 @@ dependencies = [
[[package]]
name = "zenoh-crypto"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1e7a9ab1b9b4d1735a9cd6a92049780f3d846be25c0f76a973e6fb2709db506"
+checksum = "5244d615594f1c2149cba6177f15e76cc825e2839230e26693f2b723367b6c2f"
dependencies = [
"aes",
"hmac 0.12.1",
@@ -9770,12 +9733,12 @@ dependencies = [
[[package]]
name = "zenoh-keyexpr"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "555447f0f7b3414511c829b238402ad08e0b03a9293c3251b0b01a0354b8d9e2"
+checksum = "c9495c0ca85331f87442b465760a7fb7334370354742a4201b719cc2533afee7"
dependencies = [
"getrandom 0.2.16",
- "hashbrown 0.14.5",
+ "hashbrown 0.16.0",
"keyed-set",
"rand 0.8.5",
"schemars 0.8.22",
@@ -9786,9 +9749,9 @@ dependencies = [
[[package]]
name = "zenoh-link"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f06ab3c0426b4a37ccf3b198f17f2e2fba6dac8d0946d96b8cbfc1983225ea9"
+checksum = "001a7f07522b06ae6364ae787ab83eddf4e43f56f7f138fe3e54ea123ee3523b"
dependencies = [
"zenoh-config",
"zenoh-link-commons",
@@ -9802,16 +9765,16 @@ dependencies = [
[[package]]
name = "zenoh-link-commons"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba5bc55882893ecdbf0de2effc1487f4d91efb21f2d5a1242cc8cae13f9f97ff"
+checksum = "5be05b499b789afb2024de4253e12ccaa3e296f66a0db6147deb9acec491f622"
dependencies = [
"async-trait",
"base64 0.22.1",
"flume",
"futures",
"quinn",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pemfile 2.2.0",
"rustls-pki-types",
"rustls-webpki 0.102.8",
@@ -9823,7 +9786,7 @@ dependencies = [
"tokio-util",
"tracing",
"webpki-roots 0.26.11",
- "x509-parser 0.16.0",
+ "x509-parser",
"zenoh-buffers",
"zenoh-codec",
"zenoh-config",
@@ -9836,14 +9799,14 @@ dependencies = [
[[package]]
name = "zenoh-link-quic"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d99d4d013a42733c82aefc67bdbb3199835f3c63659a8826baebf86567e1748"
+checksum = "4168034bb7005d313ba834d105ede7c7f9fac48684f80a140fccb8302e9ca4aa"
dependencies = [
"async-trait",
"base64 0.22.1",
"quinn",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pemfile 2.2.0",
"rustls-webpki 0.102.8",
"secrecy",
@@ -9862,9 +9825,9 @@ dependencies = [
[[package]]
name = "zenoh-link-tcp"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15685d53a5364611cb22034c1a63d6ceb3be6d89b31f3d94c20e770c10627b1c"
+checksum = "3b968d3506682350760fb69c07b3c9aea07f351ac39993c7d948bdc5a19d5645"
dependencies = [
"async-trait",
"socket2 0.5.10",
@@ -9880,13 +9843,13 @@ dependencies = [
[[package]]
name = "zenoh-link-tls"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d1e59f64bd7c3257c710e05bddc695207f9261d66ad9c699346c8704f0298f3f"
+checksum = "a810a4ba44011cc4c75713eadcf1a03fb2e22f0907d62f9b12c04d42ba1d596f"
dependencies = [
"async-trait",
"base64 0.22.1",
- "rustls 0.23.32",
+ "rustls 0.23.33",
"rustls-pemfile 2.2.0",
"rustls-pki-types",
"rustls-webpki 0.102.8",
@@ -9899,7 +9862,7 @@ dependencies = [
"tokio-util",
"tracing",
"webpki-roots 0.26.11",
- "x509-parser 0.16.0",
+ "x509-parser",
"zenoh-config",
"zenoh-core",
"zenoh-link-commons",
@@ -9910,9 +9873,9 @@ dependencies = [
[[package]]
name = "zenoh-link-udp"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9542387f1c7846868917c46a49a804931a1b8505113c43b67a7ba1a951f1802"
+checksum = "a4178b940cc613b4d0db3f06ceb71377199cacb22087f589bc60d1b4df6a2365"
dependencies = [
"async-trait",
"libc",
@@ -9920,7 +9883,7 @@ dependencies = [
"tokio",
"tokio-util",
"tracing",
- "windows-sys 0.59.0",
+ "windows-sys 0.61.2",
"zenoh-buffers",
"zenoh-core",
"zenoh-link-commons",
@@ -9932,25 +9895,26 @@ dependencies = [
[[package]]
name = "zenoh-macros"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5f1aab2de6a19e91de22c0dc7e439158c677b1d44198d8a3e242d32b7f06d4b"
+checksum = "2bbff17ef687e10ed4f6a956fb78fc97205a4a6242c657638e8e5da726840aca"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
"zenoh-keyexpr",
]
[[package]]
name = "zenoh-plugin-trait"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c922e9afe24e8b1722cd3eb1e1ca4d4d548dfe2356a49663a8fa41edd724bc35"
+checksum = "968571b0b585c5be1f19c553b368994424a869af46a4785bf5a3248194a97172"
dependencies = [
"git-version",
"libloading",
"serde",
+ "stabby",
"tracing",
"zenoh-config",
"zenoh-keyexpr",
@@ -9961,9 +9925,9 @@ dependencies = [
[[package]]
name = "zenoh-protocol"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b44f25959e11eb4f499abd4a771b6d9f1f4e7d5987937c38b8c67d86b01cb814"
+checksum = "879a66ef51831f54f5f824bf9005bf73129bc2485053311ffb7a245f907f721c"
dependencies = [
"const_format",
"rand 0.8.5",
@@ -9976,18 +9940,18 @@ dependencies = [
[[package]]
name = "zenoh-result"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9ff9ee9d66b67134b7127ebbd974a75995a82b749e0eac1a9225f7b19ee5dc5"
+checksum = "e0f564d3324e443d0d48a4656d89bab1d0b263660fb7e17ba149c464e62f94bd"
dependencies = [
"anyhow",
]
[[package]]
name = "zenoh-runtime"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3a108f59311a215ce4c5e0dc0d172865c8856eb03148ee86933da3e15d05e5d"
+checksum = "e3a5cef13fd469aeb146518532751dbecd2b0f99ac56b6df667f954f11348dcf"
dependencies = [
"lazy_static",
"ron",
@@ -10000,9 +9964,9 @@ dependencies = [
[[package]]
name = "zenoh-sync"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "66a8c05fb9228ff3398e0ac8c8d460abbbc5d53e4ee47c97c28ea33bc684e3f2"
+checksum = "04a23123511fb7ce5990a778dcdcf41b5129ad8c5ef8d1e7ff719a538c3270e3"
dependencies = [
"arc-swap",
"event-listener 5.4.1",
@@ -10015,9 +9979,9 @@ dependencies = [
[[package]]
name = "zenoh-task"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d037689edce4a17f91e0049a2050662419ae3f70678a30a759c92ede62450dc6"
+checksum = "8ad997618409140b23a2ef0957f7995afec2667ff3951f580de8a506c7814e41"
dependencies = [
"futures",
"tokio",
@@ -10029,9 +9993,9 @@ dependencies = [
[[package]]
name = "zenoh-transport"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "574fd48eb855ec99523700d1411ef4aec5714f4bc19bbbb9aae6b641cd9a38fe"
+checksum = "2abd4521cd556093161156fc0799a506743304e1510fc7ed83adff99ca601f34"
dependencies = [
"async-trait",
"crossbeam-utils",
@@ -10064,9 +10028,9 @@ dependencies = [
[[package]]
name = "zenoh-util"
-version = "1.5.1"
+version = "1.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "558ffebb7e7d5249f45e8e3d006da64e44cf11913eec606e501ef2e22736dbc2"
+checksum = "42a736159ed0935c9ef258c151067ccce40f95f08d7f9360993e858e268b0a9d"
dependencies = [
"async-trait",
"const_format",
@@ -10077,6 +10041,7 @@ dependencies = [
"libc",
"libloading",
"pnet_datalink",
+ "schemars 0.8.22",
"serde",
"serde_json",
"shellexpand",
@@ -10105,7 +10070,7 @@ checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -10125,7 +10090,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
"synstructure",
]
@@ -10146,7 +10111,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -10179,7 +10144,7 @@ checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.106",
+ "syn 2.0.107",
]
[[package]]
@@ -10195,9 +10160,9 @@ dependencies = [
"crc32fast",
"deflate64",
"flate2",
- "getrandom 0.3.3",
+ "getrandom 0.3.4",
"hmac 0.12.1",
- "indexmap 2.11.4",
+ "indexmap 2.12.0",
"lzma-rust2",
"memchr",
"pbkdf2",
@@ -10222,9 +10187,9 @@ dependencies = [
"crc32fast",
"deflate64",
"flate2",
- "getrandom 0.3.3",
+ "getrandom 0.3.4",
"hmac 0.12.1",
- "indexmap 2.11.4",
+ "indexmap 2.12.0",
"lzma-rust2",
"memchr",
"pbkdf2",
diff --git a/crates/dav-proto/src/responses/error.rs b/crates/dav-proto/src/responses/error.rs
index 08d64203..dbab9c5b 100644
--- a/crates/dav-proto/src/responses/error.rs
+++ b/crates/dav-proto/src/responses/error.rs
@@ -137,6 +137,9 @@ impl Display for CalCondition {
}
CalCondition::ValidSchedulingMessage => write!(f, ""),
CalCondition::ValidOrganizer => write!(f, ""),
+ CalCondition::SupportedCalendarComponent => {
+ write!(f, "")
+ }
}
}
}
diff --git a/crates/dav-proto/src/responses/mod.rs b/crates/dav-proto/src/responses/mod.rs
index bbb74688..f4c64d1d 100644
--- a/crates/dav-proto/src/responses/mod.rs
+++ b/crates/dav-proto/src/responses/mod.rs
@@ -141,7 +141,7 @@ impl Display for SyncToken {
impl Display for Comp {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
- write!(f, "", self.0.as_str())
+ write!(f, "", self.0.as_str())
}
}
diff --git a/crates/dav-proto/src/responses/property.rs b/crates/dav-proto/src/responses/property.rs
index 3f353513..7f03ad2a 100644
--- a/crates/dav-proto/src/responses/property.rs
+++ b/crates/dav-proto/src/responses/property.rs
@@ -18,6 +18,7 @@ use crate::{
Namespace, Namespaces,
},
};
+use calcard::icalendar::ICalendarComponentType;
use mail_parser::{
parsers::fields::date::{DOW, MONTH},
DateTime,
@@ -119,32 +120,32 @@ impl Display for DavValue {
)
)
}
- DavValue::SupportedCalendarComponentSet => {
- write!(
- f,
- concat!(
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- )
- )
- }
DavValue::Response(v) => v.fmt(f),
DavValue::VCard(_) | DavValue::ICalendar(_) | DavValue::Null => Ok(()),
}
}
}
+impl DavValue {
+ pub fn all_calendar_components() -> Self {
+ DavValue::Components(List(vec![
+ Comp(ICalendarComponentType::VEvent),
+ Comp(ICalendarComponentType::VTodo),
+ Comp(ICalendarComponentType::VJournal),
+ Comp(ICalendarComponentType::VFreebusy),
+ Comp(ICalendarComponentType::VTimezone),
+ Comp(ICalendarComponentType::VAlarm),
+ Comp(ICalendarComponentType::Standard),
+ Comp(ICalendarComponentType::Daylight),
+ Comp(ICalendarComponentType::VAvailability),
+ Comp(ICalendarComponentType::Available),
+ Comp(ICalendarComponentType::Participant),
+ Comp(ICalendarComponentType::VLocation),
+ Comp(ICalendarComponentType::VResource),
+ ]))
+ }
+}
+
impl DavProperty {
fn tag_name(&self) -> (&str, Option<&str>) {
(
diff --git a/crates/dav-proto/src/schema/property.rs b/crates/dav-proto/src/schema/property.rs
index 5b5f1176..459ebe94 100644
--- a/crates/dav-proto/src/schema/property.rs
+++ b/crates/dav-proto/src/schema/property.rs
@@ -169,7 +169,6 @@ pub enum DavValue {
DeadProperty(DeadProperty),
SupportedAddressData,
SupportedCalendarData,
- SupportedCalendarComponentSet,
Null,
}
diff --git a/crates/dav-proto/src/schema/response.rs b/crates/dav-proto/src/schema/response.rs
index 8854cc4b..d4f8cb49 100644
--- a/crates/dav-proto/src/schema/response.rs
+++ b/crates/dav-proto/src/schema/response.rs
@@ -244,6 +244,7 @@ pub enum CalCondition {
Vec, ICalendarProperty, ICalendarParameterName>>,
),
SupportedCollation(String),
+ SupportedCalendarComponent,
MinDateTime,
MaxDateTime,
MaxResourceSize(u32),
@@ -366,6 +367,7 @@ impl CalCondition {
CalCondition::ValidScheduleDefaultCalendarUrl => "ValidScheduleDefaultCalendarUrl",
CalCondition::ValidSchedulingMessage => "ValidSchedulingMessage",
CalCondition::ValidOrganizer => "ValidOrganizer",
+ CalCondition::SupportedCalendarComponent => "SupportedCalendarComponent",
}
}
}
diff --git a/crates/dav/src/calendar/proppatch.rs b/crates/dav/src/calendar/proppatch.rs
index 71afcc5a..5eca74ad 100644
--- a/crates/dav/src/calendar/proppatch.rs
+++ b/crates/dav/src/calendar/proppatch.rs
@@ -25,7 +25,7 @@ use dav_proto::{
};
use groupware::{
cache::GroupwareCache,
- calendar::{Calendar, CalendarEvent, Timezone},
+ calendar::{Calendar, CalendarEvent, SupportedComponent, Timezone},
};
use http_proto::HttpResponse;
use hyper::StatusCode;
@@ -36,6 +36,7 @@ use types::{
acl::Acl,
collection::{Collection, SyncCollection},
};
+use utils::map::bitmap::Bitmap;
pub(crate) trait CalendarPropPatchRequestHandler: Sync + Send {
fn handle_calendar_proppatch_request(
@@ -340,6 +341,39 @@ impl CalendarPropPatchRequestHandler for Server {
items.insert_ok(property.property);
}
}
+ (
+ DavProperty::CalDav(CalDavProperty::SupportedCalendarComponentSet),
+ DavValue::Components(components),
+ ) => {
+ if !is_update {
+ calendar.supported_components = Bitmap::::from_iter(
+ components
+ .0
+ .into_iter()
+ .map(|v| SupportedComponent::from(v.0)),
+ )
+ .into_inner();
+ if calendar.supported_components != 0 {
+ items.insert_ok(property.property);
+ } else {
+ items.insert_precondition_failed_with_description(
+ property.property,
+ StatusCode::PRECONDITION_FAILED,
+ CalCondition::SupportedCalendarComponent,
+ "At least one supported component must be specified",
+ );
+ has_errors = true;
+ }
+ } else {
+ items.insert_precondition_failed_with_description(
+ property.property,
+ StatusCode::PRECONDITION_FAILED,
+ CalCondition::SupportedCalendarComponent,
+ "Property cannot be modified",
+ );
+ has_errors = true;
+ }
+ }
(DavProperty::DeadProperty(dead), DavValue::DeadProperty(values))
if self.core.groupware.dead_property_size.is_some() =>
{
@@ -362,7 +396,7 @@ impl CalendarPropPatchRequestHandler for Server {
has_errors = true;
}
}
- (_, DavValue::Null | DavValue::Components(_)) => {
+ (_, DavValue::Null) => {
items.insert_ok(property.property);
}
_ => {
diff --git a/crates/dav/src/common/propfind.rs b/crates/dav/src/common/propfind.rs
index f95a08d9..15821e14 100644
--- a/crates/dav/src/common/propfind.rs
+++ b/crates/dav/src/common/propfind.rs
@@ -27,7 +27,7 @@ use crate::{
propfind::{PrincipalPropFind, build_home_set},
},
};
-use calcard::common::timezone::Tz;
+use calcard::{common::timezone::Tz, icalendar::ICalendarComponentType};
use common::{DavResourcePath, DavResources, Server, auth::AccessToken};
use dav_proto::{
Depth, RequestHeaders,
@@ -36,9 +36,9 @@ use dav_proto::{
schema::{
Collation, Namespace,
property::{
- ActiveLock, CalDavProperty, CardDavProperty, DavProperty, DavValue, PrincipalProperty,
- Privilege, ReportSet, ResourceType, Rfc1123DateTime, SupportedCollation, SupportedLock,
- WebDavProperty,
+ ActiveLock, CalDavProperty, CardDavProperty, Comp, DavProperty, DavValue,
+ PrincipalProperty, Privilege, ReportSet, ResourceType, Rfc1123DateTime,
+ SupportedCollation, SupportedLock, WebDavProperty,
},
request::{DavDeadProperty, DavPropertyValue, PropFind},
response::{
@@ -48,7 +48,7 @@ use dav_proto::{
},
};
use directory::{Permission, Type, backend::internal::manage::ManageDirectory};
-use groupware::calendar::SCHEDULE_INBOX_ID;
+use groupware::calendar::{SCHEDULE_INBOX_ID, SupportedComponent};
use groupware::{
DavCalendarResource, DavResourceName, cache::GroupwareCache, calendar::ArchivedTimezone,
};
@@ -67,6 +67,7 @@ use types::{
collection::{Collection, SyncCollection},
dead_property::DeadProperty,
};
+use utils::map::bitmap::Bitmap;
pub(crate) trait PropFindRequestHandler: Sync + Send {
fn handle_propfind_request(
@@ -898,11 +899,23 @@ impl PropFindRequestHandler for Server {
}
(
CalDavProperty::SupportedCalendarComponentSet,
- ArchivedResource::Calendar(_),
+ ArchivedResource::Calendar(calendar),
) => {
+ let supported_components =
+ calendar.inner.supported_components.to_native();
fields.push(DavPropertyValue::new(
property.clone(),
- DavValue::SupportedCalendarComponentSet,
+ if supported_components != 0 {
+ DavValue::Components(List(
+ Bitmap::::from(supported_components)
+ .into_iter()
+ .map(ICalendarComponentType::from)
+ .map(Comp)
+ .collect(),
+ ))
+ } else {
+ DavValue::all_calendar_components()
+ },
));
}
(CalDavProperty::SupportedCalendarData, ArchivedResource::Calendar(_)) => {
diff --git a/crates/directory/Cargo.toml b/crates/directory/Cargo.toml
index 881676f6..27bbbdca 100644
--- a/crates/directory/Cargo.toml
+++ b/crates/directory/Cargo.toml
@@ -19,7 +19,7 @@ tokio = { version = "1.47", features = ["net"] }
tokio-rustls = { version = "0.26", default-features = false, features = ["ring", "tls12"] }
rustls = { version = "0.23.5", default-features = false, features = ["std", "ring", "tls12"] }
rustls-pki-types = { version = "1" }
-ldap3 = { version = "0.12", default-features = false, features = ["tls-rustls"] }
+ldap3 = { version = "0.12", default-features = false, features = ["tls-rustls-ring"] }
deadpool = { version = "0.10", features = ["managed", "rt_tokio_1"] }
async-trait = "0.1.68"
ahash = { version = "0.8" }
diff --git a/crates/groupware/src/calendar/mod.rs b/crates/groupware/src/calendar/mod.rs
index a163a395..f38787dd 100644
--- a/crates/groupware/src/calendar/mod.rs
+++ b/crates/groupware/src/calendar/mod.rs
@@ -11,9 +11,12 @@ pub mod index;
pub mod itip;
pub mod storage;
-use calcard::icalendar::{ICalendar, ICalendarComponent, ICalendarDuration, ICalendarEntry};
+use calcard::icalendar::{
+ ICalendar, ICalendarComponent, ICalendarComponentType, ICalendarDuration, ICalendarEntry,
+};
use common::{DavName, auth::AccessToken};
use types::{acl::AclGrant, dead_property::DeadProperty};
+use utils::map::bitmap::BitmapItem;
#[derive(
rkyv::Archive, rkyv::Deserialize, rkyv::Serialize, Debug, Default, Clone, PartialEq, Eq,
@@ -22,11 +25,32 @@ pub struct Calendar {
pub name: String,
pub preferences: Vec,
pub acls: Vec,
+ pub supported_components: u64,
pub dead_properties: DeadProperty,
pub created: i64,
pub modified: i64,
}
+#[derive(Debug, Clone, Copy, PartialEq, Eq)]
+pub enum SupportedComponent {
+ VCalendar, // [RFC5545, Section 3.4]
+ VEvent, // [RFC5545, Section 3.6.1]
+ VTodo, // [RFC5545, Section 3.6.2]
+ VJournal, // [RFC5545, Section 3.6.3]
+ VFreebusy, // [RFC5545, Section 3.6.4]
+ VTimezone, // [RFC5545, Section 3.6.5]
+ VAlarm, // [RFC5545, Section 3.6.6]
+ Standard, // [RFC5545, Section 3.6.5]
+ Daylight, // [RFC5545, Section 3.6.5]
+ VAvailability, // [RFC7953, Section 3.1]
+ Available, // [RFC7953, Section 3.1]
+ Participant, // [RFC9073, Section 7.1]
+ VLocation, // [RFC9073, Section 7.2] [RFC Errata 7381]
+ VResource, // [RFC9073, Section 7.3]
+ VStatus, // draft-ietf-calext-ical-tasks-14
+ Other,
+}
+
pub const CALENDAR_SUBSCRIBED: u16 = 1;
pub const CALENDAR_INVISIBLE: u16 = 1 << 1;
pub const CALENDAR_AVAILABILITY_NONE: u16 = 1 << 2;
@@ -319,3 +343,105 @@ impl Default for ChangedBy {
ChangedBy::CalendarAddress("".into())
}
}
+
+impl From for SupportedComponent {
+ fn from(value: u64) -> Self {
+ match value {
+ 0 => SupportedComponent::VCalendar,
+ 1 => SupportedComponent::VEvent,
+ 2 => SupportedComponent::VTodo,
+ 3 => SupportedComponent::VJournal,
+ 4 => SupportedComponent::VFreebusy,
+ 5 => SupportedComponent::VTimezone,
+ 6 => SupportedComponent::VAlarm,
+ 7 => SupportedComponent::Standard,
+ 8 => SupportedComponent::Daylight,
+ 9 => SupportedComponent::VAvailability,
+ 10 => SupportedComponent::Available,
+ 11 => SupportedComponent::Participant,
+ 12 => SupportedComponent::VLocation,
+ 13 => SupportedComponent::VResource,
+ 14 => SupportedComponent::VStatus,
+ _ => SupportedComponent::Other,
+ }
+ }
+}
+
+impl From for u64 {
+ fn from(value: SupportedComponent) -> Self {
+ match value {
+ SupportedComponent::VCalendar => 0,
+ SupportedComponent::VEvent => 1,
+ SupportedComponent::VTodo => 2,
+ SupportedComponent::VJournal => 3,
+ SupportedComponent::VFreebusy => 4,
+ SupportedComponent::VTimezone => 5,
+ SupportedComponent::VAlarm => 6,
+ SupportedComponent::Standard => 7,
+ SupportedComponent::Daylight => 8,
+ SupportedComponent::VAvailability => 9,
+ SupportedComponent::Available => 10,
+ SupportedComponent::Participant => 11,
+ SupportedComponent::VLocation => 12,
+ SupportedComponent::VResource => 13,
+ SupportedComponent::VStatus => 14,
+ SupportedComponent::Other => 15,
+ }
+ }
+}
+
+impl BitmapItem for SupportedComponent {
+ fn max() -> u64 {
+ u64::from(SupportedComponent::Other)
+ }
+
+ fn is_valid(&self) -> bool {
+ !matches!(self, SupportedComponent::Other)
+ }
+}
+
+impl From for SupportedComponent {
+ fn from(value: ICalendarComponentType) -> Self {
+ match value {
+ ICalendarComponentType::VCalendar => SupportedComponent::VCalendar,
+ ICalendarComponentType::VEvent => SupportedComponent::VEvent,
+ ICalendarComponentType::VTodo => SupportedComponent::VTodo,
+ ICalendarComponentType::VJournal => SupportedComponent::VJournal,
+ ICalendarComponentType::VFreebusy => SupportedComponent::VFreebusy,
+ ICalendarComponentType::VTimezone => SupportedComponent::VTimezone,
+ ICalendarComponentType::VAlarm => SupportedComponent::VAlarm,
+ ICalendarComponentType::Standard => SupportedComponent::Standard,
+ ICalendarComponentType::Daylight => SupportedComponent::Daylight,
+ ICalendarComponentType::VAvailability => SupportedComponent::VAvailability,
+ ICalendarComponentType::Available => SupportedComponent::Available,
+ ICalendarComponentType::Participant => SupportedComponent::Participant,
+ ICalendarComponentType::VLocation => SupportedComponent::VLocation,
+ ICalendarComponentType::VResource => SupportedComponent::VResource,
+ ICalendarComponentType::VStatus => SupportedComponent::VStatus,
+ _ => SupportedComponent::Other,
+ }
+ }
+}
+
+impl From for ICalendarComponentType {
+ fn from(value: SupportedComponent) -> Self {
+ match value {
+ SupportedComponent::VCalendar => ICalendarComponentType::VCalendar,
+ SupportedComponent::VEvent => ICalendarComponentType::VEvent,
+ SupportedComponent::VTodo => ICalendarComponentType::VTodo,
+ SupportedComponent::VJournal => ICalendarComponentType::VJournal,
+ SupportedComponent::VFreebusy => ICalendarComponentType::VFreebusy,
+ SupportedComponent::VTimezone => ICalendarComponentType::VTimezone,
+ SupportedComponent::VAlarm => ICalendarComponentType::VAlarm,
+ SupportedComponent::Standard => ICalendarComponentType::Standard,
+ SupportedComponent::Daylight => ICalendarComponentType::Daylight,
+ SupportedComponent::VAvailability => ICalendarComponentType::VAvailability,
+ SupportedComponent::Available => ICalendarComponentType::Available,
+ SupportedComponent::Participant => ICalendarComponentType::Participant,
+ SupportedComponent::VLocation => ICalendarComponentType::VLocation,
+ SupportedComponent::VResource => ICalendarComponentType::VResource,
+ SupportedComponent::VStatus => ICalendarComponentType::VStatus,
+ SupportedComponent::Other => ICalendarComponentType::Other(Default::default()),
+ }
+ }
+}
diff --git a/crates/services/src/state_manager/ece.rs b/crates/services/src/state_manager/ece.rs
index 155d986e..ebe92012 100644
--- a/crates/services/src/state_manager/ece.rs
+++ b/crates/services/src/state_manager/ece.rs
@@ -4,17 +4,14 @@
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-SEL
*/
-use aes_gcm::{
- Aes128Gcm, Nonce,
- aead::{Aead, generic_array::GenericArray},
-};
+use aes_gcm::{Aes128Gcm, Nonce, aead::Aead};
use hkdf::Hkdf;
use p256::{
PublicKey,
ecdh::EphemeralSecret,
elliptic_curve::{rand_core::OsRng, sec1::ToEncodedPoint},
};
-use sha2::Sha256;
+use sha2::{Sha256, digest::generic_array::GenericArray};
use store::rand::Rng;
/*
diff --git a/crates/utils/src/map/bitmap.rs b/crates/utils/src/map/bitmap.rs
index 22336381..dc21a82f 100644
--- a/crates/utils/src/map/bitmap.rs
+++ b/crates/utils/src/map/bitmap.rs
@@ -141,6 +141,10 @@ impl Bitmap {
_state: std::marker::PhantomData,
}
}
+
+ pub fn into_inner(self) -> u64 {
+ self.bitmap
+ }
}
impl From> for Bitmap {
diff --git a/tests/src/webdav/mkcol.rs b/tests/src/webdav/mkcol.rs
index 0a3dfd20..8c871f10 100644
--- a/tests/src/webdav/mkcol.rs
+++ b/tests/src/webdav/mkcol.rs
@@ -171,7 +171,6 @@ pub async fn test(test: &WebDavTest) {
[
("D:displayname", "Named Events 2"),
("A:calendar-description", ""),
- ("A:supported-calendar-component-set", ""),
],
)
.await
@@ -181,6 +180,61 @@ pub async fn test(test: &WebDavTest) {
"A:mkcalendar-response.D:propstat.D:status",
["HTTP/1.1 200 OK"],
);
+ client
+ .mkcol(
+ "MKCALENDAR",
+ "/dav/cal/john/my-named-events3",
+ [],
+ [
+ ("D:displayname", "Named Events 3"),
+ (
+ "A:supported-calendar-component-set",
+ "",
+ ),
+ ],
+ )
+ .await
+ .with_status(StatusCode::CREATED)
+ .with_value("A:mkcalendar-response.D:propstat.D:prop.D:displayname", "")
+ .with_values(
+ "A:mkcalendar-response.D:propstat.D:status",
+ ["HTTP/1.1 200 OK"],
+ );
+ // Check the properties of the created calendars
+ client
+ .propfind(
+ "/dav/cal/john/my-named-events2/",
+ ["A:supported-calendar-component-set"],
+ )
+ .await
+ .properties("/dav/cal/john/my-named-events2/")
+ .get("A:supported-calendar-component-set")
+ .with_status(StatusCode::OK)
+ .with_values([
+ "A:comp.[name]:VJOURNAL",
+ "A:comp.[name]:VTIMEZONE",
+ "A:comp.[name]:VAVAILABILITY",
+ "A:comp.[name]:VALARM",
+ "A:comp.[name]:VRESOURCE",
+ "A:comp.[name]:AVAILABLE",
+ "A:comp.[name]:VTODO",
+ "A:comp.[name]:VFREEBUSY",
+ "A:comp.[name]:VEVENT",
+ "A:comp.[name]:STANDARD",
+ "A:comp.[name]:DAYLIGHT",
+ "A:comp.[name]:VLOCATION",
+ "A:comp.[name]:PARTICIPANT",
+ ]);
+ client
+ .propfind(
+ "/dav/cal/john/my-named-events3/",
+ ["A:supported-calendar-component-set"],
+ )
+ .await
+ .properties("/dav/cal/john/my-named-events3/")
+ .get("A:supported-calendar-component-set")
+ .with_status(StatusCode::OK)
+ .with_values(["A:comp.[name]:VEVENT", "A:comp.[name]:VTODO"]);
// Delete everything
for path in [
@@ -191,6 +245,7 @@ pub async fn test(test: &WebDavTest) {
"/dav/card/john/my-named-cards",
"/dav/cal/john/my-named-events",
"/dav/cal/john/my-named-events2",
+ "/dav/cal/john/my-named-events3",
] {
client
.request("DELETE", path, "")