diff --git a/.vscode/settings.json b/.vscode/settings.json index f03017ec8..3d162824f 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -4,7 +4,6 @@ "editor.formatOnSave": true, "rust-analyzer.showUnlinkedFileNotification": false, "rust-analyzer.cargo.features": [ - "meilisearch", "oidc" ], "rust-analyzer.check.extraArgs": [ diff --git a/Cargo.lock b/Cargo.lock index 5c9e919fc..f895e9232 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -33,7 +33,7 @@ version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" dependencies = [ - "getrandom 0.2.14", + "getrandom 0.2.15", "once_cell", "version_check", ] @@ -45,7 +45,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ "cfg-if", - "getrandom 0.2.14", + "getrandom 0.2.15", "once_cell", "version_check", "zerocopy", @@ -77,7 +77,7 @@ checksum = "d1eb7c4fcde1858a6796c18a729b661346d38e05a207e2d9028bce822fc20283" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -179,9 +179,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.82" +version = "1.0.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519" +checksum = "25bdb32cbbdce2b519a9cd7df3a678443100e265d5e25ca763b7572a5104f5f3" [[package]] name = "arbitrary" @@ -214,7 +214,7 @@ dependencies = [ "argh_shared", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -287,7 +287,7 @@ dependencies = [ "proc-macro2", "quote", "serde", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -305,17 +305,6 @@ dependencies = [ "nom", ] -[[package]] -name = "async-channel" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" -dependencies = [ - "concurrent-queue", - "event-listener 2.5.3", - "futures-core", -] - [[package]] name = "async-channel" version = "2.2.1" @@ -410,7 +399,7 @@ dependencies = [ "proc-macro2", "quote", "strum", - "syn 2.0.60", + "syn 2.0.61", "thiserror", ] @@ -468,7 +457,7 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -485,7 +474,7 @@ checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -564,7 +553,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -724,7 +713,7 @@ dependencies = [ "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -934,11 +923,11 @@ version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "495f7104e962b7356f0aeb34247aca1fe7d2e783b346582db7f2904cb5717e88" dependencies = [ - "async-channel 2.2.1", + "async-channel", "async-lock", "async-task", "futures-io", - "futures-lite 2.3.0", + "futures-lite", "piper", ] @@ -1186,12 +1175,6 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" -[[package]] -name = "castaway" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2698f953def977c68f935bb0dfa959375ad4638570e969e2f1e9f433cbf1af6" - [[package]] name = "castaway" version = "0.2.2" @@ -1203,9 +1186,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.96" +version = "1.0.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "065a29261d53ba54260972629f9ca6bffa69bac13cd1fed61420f7fa68b9f8bd" +checksum = "099a5357d84c4c61eb35fc8eafa9a79a902c2f76911e5747ced4e032edd8d9b4" [[package]] name = "cfg-if" @@ -1303,7 +1286,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -1375,7 +1358,7 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f86b9c4c00838774a6d902ef931eff7470720c51d90c2e32cfe15dc304737b3f" dependencies = [ - "castaway 0.2.2", + "castaway", "cfg-if", "itoa 1.0.11", "ryu", @@ -1500,18 +1483,18 @@ dependencies = [ [[package]] name = "cranelift-bforest" -version = "0.107.1" +version = "0.107.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c7a700bc3e2e834c81c7e9e57c6b27049172fc6156a6a406dd2265d64c30409" +checksum = "ebf72ceaf38f7d41194d0cf6748214d8ef7389167fe09aad80f87646dbfa325b" dependencies = [ "cranelift-entity", ] [[package]] name = "cranelift-codegen" -version = "0.107.1" +version = "0.107.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35bb55da792dc46a35e6e283b02b9d6aa7f21349691f41176d8ecf4a1494b6ad" +checksum = "9ee7fde5cd9173f00ce02c491ee9e306d64740f4b1a697946e0474f389999e13" dependencies = [ "bumpalo", "cranelift-bforest", @@ -1530,33 +1513,33 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.107.1" +version = "0.107.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf590672e1a7580158968898ade9c82801d6ebeaa4649d6f99f9cbb411512a8b" +checksum = "b49bec6a517e78d4067500dc16acb558e772491a2bcb37301127448adfb8413c" dependencies = [ "cranelift-codegen-shared", ] [[package]] name = "cranelift-codegen-shared" -version = "0.107.1" +version = "0.107.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ab16a95d8b10b72eaa8bb9f0ce0fdd013e5f225bea92f69d2dbd2424aae5381" +checksum = "ead4ea497b2dc2ac31fcabd6d5d0d5dc25b3964814122e343724bdf65a53c843" [[package]] name = "cranelift-control" -version = "0.107.1" +version = "0.107.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60448a5af01f5716877e616ec1613424fb65f427320c6e6447315966507f12da" +checksum = "f81e8028c8d711ea7592648e70221f2e54acb8665f7ecd49545f021ec14c3341" dependencies = [ "arbitrary", ] [[package]] name = "cranelift-entity" -version = "0.107.1" +version = "0.107.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78689d6588f53981bf005b82d94125cc40cf9856b667bc276d1acdede400b633" +checksum = "32acd0632ba65c2566e75f64af9ef094bb8d90e58a9fbd33d920977a9d85c054" dependencies = [ "serde", "serde_derive", @@ -1564,9 +1547,9 @@ dependencies = [ [[package]] name = "cranelift-frontend" -version = "0.107.1" +version = "0.107.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c86da6e45adc39e8d66a73d6fb782b0d7961df9e44b724246e01e515f86b1f0d" +checksum = "a395a704934aa944ba8939cac9001174b9ae5236f48bc091f89e33bb968336f6" dependencies = [ "cranelift-codegen", "log", @@ -1576,15 +1559,15 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.107.1" +version = "0.107.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcb6f70d94826074699bc350c33dab82eb6f06022a3518bb466f501569d7379e" +checksum = "b325ce81c4ee7082dc894537eb342c37898e14230fe7c02ea945691db3e2dd01" [[package]] name = "cranelift-native" -version = "0.107.1" +version = "0.107.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e27ec0ef4115eb9cc15be9c841085db17233403f8ed325e02bd6a9d78d6c939c" +checksum = "ea11f5ac85996fa093075d66397922d4f56085d5d84ec13043d0cd4f159c6818" dependencies = [ "cranelift-codegen", "libc", @@ -1593,9 +1576,9 @@ dependencies = [ [[package]] name = "cranelift-wasm" -version = "0.107.1" +version = "0.107.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fce009efc27c598ac0c019c7f3dc582403835547128aeb497edf76cb77d75250" +checksum = "e4f175d4e299a8edabfbd64fa93c7650836cc8ad7f4879f9bd2632575a1f12d0" dependencies = [ "cranelift-codegen", "cranelift-entity", @@ -1752,38 +1735,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" dependencies = [ "quote", - "syn 2.0.60", -] - -[[package]] -name = "curl" -version = "0.4.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e2161dd6eba090ff1594084e95fd67aeccf04382ffea77999ea94ed42ec67b6" -dependencies = [ - "curl-sys", - "libc", - "openssl-probe", - "openssl-sys", - "schannel", - "socket2", - "windows-sys 0.52.0", -] - -[[package]] -name = "curl-sys" -version = "0.4.72+curl-8.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29cbdc8314c447d11e8fd156dcdd031d9e02a7a976163e396b548c03153bc9ea" -dependencies = [ - "cc", - "libc", - "libnghttp2-sys", - "libz-sys", - "openssl-sys", - "pkg-config", - "vcpkg", - "windows-sys 0.52.0", + "syn 2.0.61", ] [[package]] @@ -1829,7 +1781,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -1853,7 +1805,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.10.0", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -1864,7 +1816,7 @@ checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f" dependencies = [ "darling_core", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -1912,7 +1864,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -1922,7 +1874,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "206868b8242f27cecce124c19fd88157fbd0dd334df2587f36417bafbc85097b" dependencies = [ "derive_builder_core", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -1955,7 +1907,7 @@ checksum = "2bba3e9872d7c58ce7ef0fcf1844fcc3e23ef2a58377b50df35dd98e42a5726e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -1995,7 +1947,7 @@ dependencies = [ "diesel_table_macro_syntax", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -2024,7 +1976,7 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc5557efc453706fed5e4fa85006fe9817c224c3f480a34c7e5959fd700921c5" dependencies = [ - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -2248,7 +2200,7 @@ dependencies = [ "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -2260,7 +2212,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -2289,20 +2241,14 @@ dependencies = [ [[package]] name = "errno" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" +checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" dependencies = [ "libc", "windows-sys 0.52.0", ] -[[package]] -name = "event-listener" -version = "2.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" - [[package]] name = "event-listener" version = "4.0.3" @@ -2385,15 +2331,6 @@ dependencies = [ "regex", ] -[[package]] -name = "fastrand" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" -dependencies = [ - "instant", -] - [[package]] name = "fastrand" version = "2.1.0" @@ -2558,21 +2495,6 @@ version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" -[[package]] -name = "futures-lite" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" -dependencies = [ - "fastrand 1.9.0", - "futures-core", - "futures-io", - "memchr", - "parking", - "pin-project-lite", - "waker-fn", -] - [[package]] name = "futures-lite" version = "2.3.0" @@ -2591,7 +2513,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -2674,7 +2596,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -2728,9 +2650,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.14" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" dependencies = [ "cfg-if", "js-sys", @@ -3510,33 +3432,6 @@ version = "1.70.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800" -[[package]] -name = "isahc" -version = "1.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "334e04b4d781f436dc315cb1e7515bd96826426345d498149e4bde36b67f8ee9" -dependencies = [ - "async-channel 1.9.0", - "castaway 0.1.2", - "crossbeam-utils", - "curl", - "curl-sys", - "encoding_rs", - "event-listener 2.5.3", - "futures-lite 1.13.0", - "http 0.2.12", - "log", - "mime", - "once_cell", - "polling", - "slab", - "sluice", - "tracing", - "tracing-futures", - "url", - "waker-fn", -] - [[package]] name = "iso8601" version = "0.6.1" @@ -4143,18 +4038,24 @@ dependencies = [ name = "kitsune-search" version = "0.0.1-pre.6" dependencies = [ + "async-trait", + "bytes", "diesel", "diesel-async", "diesel_full_text_search", "enum_dispatch", + "futures-io", "futures-util", - "isahc", + "http 1.1.0", "kitsune-config", "kitsune-db", "kitsune-error", + "kitsune-http-client", "kitsune-language", "meilisearch-sdk", + "pin-project-lite", "serde", + "serde_urlencoded", "speedy-uuid", "strum", "tracing", @@ -4391,7 +4292,7 @@ dependencies = [ "chumsky", "email-encoding", "email_address", - "fastrand 2.1.0", + "fastrand", "futures-io", "futures-util", "hostname 0.4.0", @@ -4497,16 +4398,6 @@ dependencies = [ "libc", ] -[[package]] -name = "libnghttp2-sys" -version = "0.1.10+1.61.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "959c25552127d2e1fa72f0e52548ec04fc386e827ba71a7bd01db46a447dc135" -dependencies = [ - "cc", - "libc", -] - [[package]] name = "libredox" version = "0.1.3" @@ -4517,18 +4408,6 @@ dependencies = [ "libc", ] -[[package]] -name = "libz-sys" -version = "1.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e143b5e666b2695d28f6bca6497720813f699c9602dd7f5cac91008b8ada7f9" -dependencies = [ - "cc", - "libc", - "pkg-config", - "vcpkg", -] - [[package]] name = "linked-hash-map" version = "0.5.6" @@ -4537,22 +4416,22 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" [[package]] name = "linkme" -version = "0.3.25" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb2cfee0de9bd869589fb9a015e155946d1be5ff415cb844c2caccc6cc4b5db9" +checksum = "833222afbfe72868ac8f9770c91a33673f0d5fefc37c9dbe94aa3548b571623f" dependencies = [ "linkme-impl", ] [[package]] name = "linkme-impl" -version = "0.3.25" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adf157a4dc5a29b7b464aa8fe7edeff30076e07e13646a1c3874f58477dc99f8" +checksum = "39f0dea92dbea3271557cc2e1848723967bba81f722f95026860974ec9283f08" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -4613,7 +4492,7 @@ dependencies = [ "proc-macro2", "quote", "regex-syntax 0.8.3", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -4743,30 +4622,28 @@ dependencies = [ [[package]] name = "meilisearch-index-setting-macro" -version = "0.25.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "498e40a5e8be8cfc405bf4c99a093bca32df2e7ea21e041269aa906cfca673a4" +checksum = "fb7f4b1ef00bd5c38160d5664595d2869d17cafad435e817af7befb4521c0485" dependencies = [ "convert_case 0.6.0", "proc-macro2", "quote", "structmeta", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] name = "meilisearch-sdk" -version = "0.25.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8977e156332d73545daea1187af11599a953f37b9fd22677d98a04cb965ed55e" +checksum = "7443e8145e6f7047752f4983a97fccab01131947601825d95fe4088ad6d1feb9" dependencies = [ "async-trait", "either", "futures", "futures-io", - "isahc", "iso8601", - "js-sys", "jsonwebtoken", "log", "meilisearch-index-setting-macro", @@ -4775,7 +4652,6 @@ dependencies = [ "thiserror", "time", "uuid", - "wasm-bindgen", "wasm-bindgen-futures", "web-sys", "yaup", @@ -4889,7 +4765,7 @@ checksum = "dcf09caffaac8068c346b6df2a7fc27a177fd20b39421a39ce0a211bde679a6c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -5009,8 +4885,8 @@ dependencies = [ "serde", "serde_json", "thiserror", - "wasm-encoder 0.206.0", - "wasmparser 0.206.0", + "wasm-encoder 0.207.0", + "wasmparser 0.207.0", "wat", ] @@ -5022,7 +4898,7 @@ dependencies = [ "color-eyre", "mrf-manifest", "serde_json", - "wasmparser 0.206.0", + "wasmparser 0.207.0", "wat", ] @@ -5046,7 +4922,7 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b99915c25e2b56916308ccd9ca090cb0759226271e5f3b8101e7bbdf7fb8d35" dependencies = [ - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -5059,7 +4935,7 @@ dependencies = [ "mrml-common-macros", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -5132,11 +5008,10 @@ dependencies = [ [[package]] name = "num-bigint" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" +checksum = "c165a9ab64cf766f73521c0dd2cfdff64f488b8f0b3e621face3462d3db536d7" dependencies = [ - "autocfg", "num-integer", "num-traits", ] @@ -5172,7 +5047,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -5197,11 +5072,10 @@ dependencies = [ [[package]] name = "num-rational" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" +checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" dependencies = [ - "autocfg", "num-bigint", "num-integer", "num-traits", @@ -5244,7 +5118,7 @@ checksum = "098af5a5110b4deacf3200682963713b143ae9d28762b739bdb7b98429dfaf68" dependencies = [ "base64 0.22.1", "chrono", - "getrandom 0.2.14", + "getrandom 0.2.15", "http 1.1.0", "rand 0.8.5", "serde", @@ -5336,28 +5210,6 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" -[[package]] -name = "openssl-src" -version = "300.2.3+3.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cff92b6f71555b61bb9315f7c64da3ca43d87531622120fea0195fc761b4843" -dependencies = [ - "cc", -] - -[[package]] -name = "openssl-sys" -version = "0.9.102" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2" -dependencies = [ - "cc", - "libc", - "openssl-src", - "pkg-config", - "vcpkg", -] - [[package]] name = "opentelemetry" version = "0.22.0" @@ -5637,7 +5489,7 @@ dependencies = [ "regex", "regex-syntax 0.8.3", "structmeta", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -5653,9 +5505,9 @@ dependencies = [ [[package]] name = "paste" -version = "1.0.14" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" [[package]] name = "pem" @@ -5813,7 +5665,7 @@ dependencies = [ "phf_shared 0.11.2", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -5860,7 +5712,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -5882,7 +5734,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4" dependencies = [ "atomic-waker", - "fastrand 2.1.0", + "fastrand", "futures-io", ] @@ -5907,12 +5759,6 @@ dependencies = [ "spki", ] -[[package]] -name = "pkg-config" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" - [[package]] name = "platforms" version = "3.4.0" @@ -5947,22 +5793,6 @@ dependencies = [ "plotters-backend", ] -[[package]] -name = "polling" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" -dependencies = [ - "autocfg", - "bitflags 1.3.2", - "cfg-if", - "concurrent-queue", - "libc", - "log", - "pin-project-lite", - "windows-sys 0.48.0", -] - [[package]] name = "portable-atomic" version = "1.6.0" @@ -6088,9 +5918,9 @@ checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" [[package]] name = "proc-macro2" -version = "1.0.81" +version = "1.0.82" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba" +checksum = "8ad3d49ab951a01fbaafe34f2ec74122942fe18a3f9814c3268f1bb72042131b" dependencies = [ "unicode-ident", ] @@ -6107,15 +5937,15 @@ dependencies = [ [[package]] name = "prost-derive" -version = "0.12.4" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19de2de2a00075bf566bee3bd4db014b11587e84184d3f7a791bc17f1a8e9e48" +checksum = "9554e3ab233f0a932403704f1a1d08c30d5ccd931adfdfa1e8b5a19b52c1d55a" dependencies = [ "anyhow", "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -6303,7 +6133,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.14", + "getrandom 0.2.15", ] [[package]] @@ -6425,29 +6255,29 @@ version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891" dependencies = [ - "getrandom 0.2.14", + "getrandom 0.2.15", "libredox", "thiserror", ] [[package]] name = "ref-cast" -version = "1.0.22" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4846d4c50d1721b1a3bef8af76924eef20d5e723647333798c1b519b3a9473f" +checksum = "ccf0a6f84d5f1d581da8b41b47ec8600871962f2a528115b542b362d4b744931" dependencies = [ "ref-cast-impl", ] [[package]] name = "ref-cast-impl" -version = "1.0.22" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fddb4f8d99b0a2ebafc65a87a69a7b9875e4b1ae1f00db265d300ef7f28bccc" +checksum = "bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -6546,7 +6376,7 @@ checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" dependencies = [ "cc", "cfg-if", - "getrandom 0.2.14", + "getrandom 0.2.15", "libc", "spin 0.9.8", "untrusted", @@ -6644,7 +6474,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cdf903247e7165156378cd1a7deda977b8e8567683ed97ad7330376dbf92f473" dependencies = [ "arc-swap", - "fastrand 2.1.0", + "fastrand", "lazy_static", "nom", "num-bigint", @@ -6686,7 +6516,7 @@ dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.60", + "syn 2.0.61", "walkdir", ] @@ -6703,9 +6533,9 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.23" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" +checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" [[package]] name = "rustc-hash" @@ -6812,9 +6642,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.5.0" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "beb461507cee2c2ff151784c52762cf4d9ff6a61f3e80968600ed24fa837fa54" +checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d" [[package]] name = "rustls-webpki" @@ -6839,9 +6669,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.15" +version = "1.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80af6f9131f277a45a3fba6ce8e2258037bb0477a67e610d3c1fe046ab31de47" +checksum = "092474d1a01ea8278f69e6a358998405fae5b8b963ddaeb2b0b04a128bf1dfb0" [[package]] name = "rusty-s3" @@ -6864,9 +6694,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" [[package]] name = "same-file" @@ -6888,9 +6718,9 @@ dependencies = [ [[package]] name = "schemars" -version = "0.8.17" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f55c82c700538496bdc329bb4918a81f87cc8888811bd123cf325a0f2f8d309" +checksum = "fc6e7ed6919cb46507fb01ff1654309219f62b4d603822501b0b80d42f6f21ef" dependencies = [ "dyn-clone", "schemars_derive", @@ -6901,14 +6731,14 @@ dependencies = [ [[package]] name = "schemars_derive" -version = "0.8.17" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83263746fe5e32097f06356968a077f96089739c927a61450efa069905eec108" +checksum = "185f2b7aa7e02d418e453790dde16890256bbd2bcd04b7dc5348811052b53f49" dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -6974,11 +6804,11 @@ dependencies = [ [[package]] name = "security-framework" -version = "2.10.0" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6" +checksum = "c627723fd09706bacdb5cf41499e95098555af3c3c29d014dc3c458ef6be11c0" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.5.0", "core-foundation", "core-foundation-sys", "libc", @@ -6987,9 +6817,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.10.0" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef" +checksum = "317936bbbd05227752583946b9e66d7ce3b489f84e11a94a510b4437fef407d7" dependencies = [ "core-foundation-sys", "libc", @@ -7036,18 +6866,18 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.22" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca" +checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" dependencies = [ "serde", ] [[package]] name = "serde" -version = "1.0.200" +version = "1.0.201" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddc6f9cc94d67c0e21aaf7eda3a010fd3af78ebf6e096aa6e2e13c79749cce4f" +checksum = "780f1cebed1629e4753a1a38a3c72d30b97ec044f0aef68cb26650a3c5cf363c" dependencies = [ "serde_derive", ] @@ -7064,13 +6894,13 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.200" +version = "1.0.201" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "856f046b9400cee3c8c94ed572ecdb752444c24528c035cd35882aad6f492bcb" +checksum = "c5e405930b9796f1c00bee880d03fc7e0bb4b9a11afc776885ffe84320da2865" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -7081,7 +6911,7 @@ checksum = "330f01ce65a3a5fe59a60c82f3c9a024b573b8a6e875bd233fe5f934e71d54e3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -7099,9 +6929,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.116" +version = "1.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813" +checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" dependencies = [ "itoa 1.0.11", "ryu", @@ -7135,7 +6965,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -7195,7 +7025,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -7248,9 +7078,9 @@ dependencies = [ [[package]] name = "sha2-asm" -version = "0.6.3" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f27ba7066011e3fb30d808b51affff34f0a66d3a03a58edd787c6e420e40e44e" +checksum = "b845214d6175804686b2bd482bcffe96651bb2d1200742b712003504a2dac1ab" dependencies = [ "cc", ] @@ -7289,7 +7119,7 @@ version = "0.13.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "570c430b3d902ea083097e853263ae782dfe40857d93db019a12356c8e8143fa" dependencies = [ - "getrandom 0.2.14", + "getrandom 0.2.15", "halfbrown", "lexical-core", "ref-cast", @@ -7354,17 +7184,6 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7" -[[package]] -name = "sluice" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d7400c0eff44aa2fcb5e31a5f24ba9716ed90138769e4977a2ba6014ae63eb5" -dependencies = [ - "async-channel 1.9.0", - "futures-core", - "futures-io", -] - [[package]] name = "smallvec" version = "1.13.2" @@ -7430,7 +7249,7 @@ checksum = "c87e960f4dca2788eeb86bbdde8dd246be8948790b7618d656e68f9b720a86e8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -7550,7 +7369,7 @@ dependencies = [ "proc-macro2", "quote", "structmeta-derive", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -7561,7 +7380,7 @@ checksum = "152a0b65a590ff6c3da95cabe2353ee04e6167c896b28e3b14478c2636c922fc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -7584,7 +7403,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -7627,9 +7446,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.60" +version = "2.0.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3" +checksum = "c993ed8ccba56ae856363b1845da7266a7cb78e1d146c8a32d54b45a8b831fc9" dependencies = [ "proc-macro2", "quote", @@ -7709,7 +7528,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" dependencies = [ "cfg-if", - "fastrand 2.1.0", + "fastrand", "rustix", "windows-sys 0.52.0", ] @@ -7792,22 +7611,22 @@ checksum = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c" [[package]] name = "thiserror" -version = "1.0.59" +version = "1.0.60" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa" +checksum = "579e9083ca58dd9dcf91a9923bb9054071b9ebbd800b342194c9feb0ee89fc18" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.59" +version = "1.0.60" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66" +checksum = "e2470041c06ec3ac1ab38d0356a6119054dedaea53e12fbefc0de730a1c08524" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -7922,7 +7741,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -8033,9 +7852,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.10" +version = "0.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" +checksum = "9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1" dependencies = [ "bytes", "futures-core", @@ -8045,7 +7864,6 @@ dependencies = [ "hashbrown 0.14.5", "pin-project-lite", "tokio", - "tracing", ] [[package]] @@ -8104,7 +7922,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "winnow 0.6.7", + "winnow 0.6.8", ] [[package]] @@ -8268,7 +8086,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -8358,7 +8176,7 @@ version = "0.0.1-pre.6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -8409,7 +8227,7 @@ checksum = "1f718dfaf347dcb5b983bfc87608144b0bad87970aebcbea5ce44d2a30c08e63" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -8439,7 +8257,7 @@ checksum = "ac73887f47b9312552aa90ef477927ff014d63d1920ca8037c6c1951eab64bb1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -8540,9 +8358,9 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" [[package]] name = "utoipa" -version = "4.2.0" +version = "4.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "272ebdfbc99111033031d2f10e018836056e4d2c8e2acda76450ec7974269fa7" +checksum = "c5afb1a60e207dca502682537fefcfd9921e71d0b83e9576060f09abc6efab23" dependencies = [ "indexmap 2.2.6", "serde", @@ -8552,15 +8370,15 @@ dependencies = [ [[package]] name = "utoipa-gen" -version = "4.2.0" +version = "4.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3c9f4d08338c1bfa70dde39412a040a884c6f318b3d09aaaf3437a1e52027fc" +checksum = "7bf0e16c02bc4bf5322ab65f10ab1149bdbcaa782cba66dc7057370a3f8190be" dependencies = [ "proc-macro-error", "proc-macro2", "quote", "regex", - "syn 2.0.60", + "syn 2.0.61", "uuid", ] @@ -8587,9 +8405,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0" dependencies = [ "atomic", - "getrandom 0.2.14", + "getrandom 0.2.15", "rand 0.8.5", "serde", + "wasm-bindgen", ] [[package]] @@ -8621,12 +8440,6 @@ dependencies = [ "ryu", ] -[[package]] -name = "vcpkg" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" - [[package]] name = "vergen" version = "8.3.1" @@ -8651,12 +8464,6 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" -[[package]] -name = "waker-fn" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690" - [[package]] name = "walkdir" version = "2.5.0" @@ -8715,7 +8522,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", "wasm-bindgen-shared", ] @@ -8749,7 +8556,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -8771,9 +8578,9 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.206.0" +version = "0.207.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d759312e1137f199096d80a70be685899cd7d3d09c572836bb2e9b69b4dc3b1e" +checksum = "d996306fb3aeaee0d9157adbe2f670df0236caf19f6728b221e92d0f27b3fe17" dependencies = [ "leb128", ] @@ -8807,9 +8614,9 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.206.0" +version = "0.207.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39192edb55d55b41963db40fd49b0b542156f04447b5b512744a91d38567bdbc" +checksum = "e19bb9f8ab07616da582ef8adb24c54f1424c7ec876720b7da9db8ec0626c92c" dependencies = [ "ahash 0.8.11", "bitflags 2.5.0", @@ -8830,9 +8637,9 @@ dependencies = [ [[package]] name = "wasmtime" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2364a810370f08ece49d013255058c3c88ca6c0a080de66549233b7d2ca078b8" +checksum = "4af5cb32045daee8476711eb12b8b71275c2dd1fc7a58cc2a11b33ce9205f6a2" dependencies = [ "addr2line", "anyhow", @@ -8870,23 +8677,23 @@ dependencies = [ [[package]] name = "wasmtime-asm-macros" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c52cceae147514e279460ac3c43c1ea440c51c39202842611623b3f9734f73a8" +checksum = "7515c4d24c8b55c0feab67e3d52a42f999fda8b9cfafbd69a82ed6bcf299d26e" dependencies = [ "cfg-if", ] [[package]] name = "wasmtime-component-macro" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8fd43a734bf424e3983363f1b7532a997edb206f52104568058e412e18db9ba" +checksum = "794839a710a39a12677c67ff43fec54ef00d0ca6c6f631209a7c5524522221d3" dependencies = [ "anyhow", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", "wasmtime-component-util", "wasmtime-wit-bindgen", "wit-parser", @@ -8894,15 +8701,15 @@ dependencies = [ [[package]] name = "wasmtime-component-util" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d65e6a21c3e3482240ff03cc26f5c7ae7ee5df524c2283f39cf492ab711a15" +checksum = "7839a1b9e15d17be1cb2a105f18be8e0bbf52bdec7a7cd6eb5d80d4c2cdf74f0" [[package]] name = "wasmtime-cranelift" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2a6ed70499769b4d51f6f656204b0806b3d783f6ec5a8517c68e8b75ecaad19" +checksum = "57ec2d9a4b9990bea53a5dfd689d48663dbd19a46903eaf73e2022b3d1ef20d3" dependencies = [ "anyhow", "cfg-if", @@ -8924,9 +8731,9 @@ dependencies = [ [[package]] name = "wasmtime-environ" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90f7b5dbae8c3c6586e22f063ddb9e5cbf02c09629df75e5d8710f7bf880b117" +checksum = "ad72e2e3f7ea5b50fedf66dd36ba24634e4f445c370644683b433d45d88f6126" dependencies = [ "anyhow", "bincode", @@ -8948,9 +8755,9 @@ dependencies = [ [[package]] name = "wasmtime-fiber" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "582e7ef625be814c57b1f8c3924c8899560d315f2285436c9184a09985dc3756" +checksum = "4dbdf3053e7e7ced0cd4ed76579995b62169a1a43696890584eae2de2e33bf54" dependencies = [ "anyhow", "cc", @@ -8963,9 +8770,9 @@ dependencies = [ [[package]] name = "wasmtime-jit-icache-coherence" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b55b43e693c0beeca494d522f4850afca53cb46acf309483aef32a125276ee78" +checksum = "ede45379f3b4d395d8947006de8043801806099a240a26db553919b68e96ab15" dependencies = [ "cfg-if", "libc", @@ -8974,9 +8781,9 @@ dependencies = [ [[package]] name = "wasmtime-runtime" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d2b876c09b7863d8a01bf87eb45f3b121fab245f8afbff7c38c38c1c9059aee" +checksum = "65019d29d175c567b84173f2adf3b7a3af6d5592f8fe510dccae55d2569ec0d2" dependencies = [ "anyhow", "cc", @@ -9002,15 +8809,15 @@ dependencies = [ [[package]] name = "wasmtime-slab" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05c8ddfb8ebbab6ac186bc1f8c02ed988bc9ea455fea10f72bc3a07503309b4b" +checksum = "ca6585868f5c427c3e9d2a8c0c3354e6d7d4518a0d17723ab25a0c1eebf5d5b4" [[package]] name = "wasmtime-types" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fa3a1f3c0deb3034d76e7dcf340c5df670a6603019ee5b58adb70870649c769" +checksum = "84d5381ff174faded38c7b2085fbe430dff59489c87a91403354d710075750fb" dependencies = [ "cranelift-entity", "serde", @@ -9021,20 +8828,20 @@ dependencies = [ [[package]] name = "wasmtime-versioned-export-macros" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b85321f0a1cd3c859b94e728533ba00074d3eca62362acf6998be0eab6f4001c" +checksum = "0d3b70422fdfa915c903f003b8b42554a8ae1aa0c6208429d8314ebf5721f3ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] name = "wasmtime-wasi" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c5966b1aa330f07ef58f83b074908ea210ee864948ae3697f8892c91104e6e3" +checksum = "08dd00241969c3be8c5dfdedbb8d9c5af6783e514ffbf8f7522036561bd1337a" dependencies = [ "anyhow", "async-trait", @@ -9062,9 +8869,9 @@ dependencies = [ [[package]] name = "wasmtime-winch" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0d446696aa83f680d85e188670631cb7958957f63d027d6c36b945c2baa3e1e" +checksum = "996360967b5196dec20ddcfce499ce4dc80cc925c088b0f2b376d29b96833a6a" dependencies = [ "anyhow", "cranelift-codegen", @@ -9079,9 +8886,9 @@ dependencies = [ [[package]] name = "wasmtime-wit-bindgen" -version = "20.0.1" +version = "20.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d1d0c83af38eb6918af9c7cbc07d39f741a7baa9ddd152e19d9f93ff627dc05" +checksum = "01840c0cfbbb01664c796e3f4edbd656e58f9d76db083c7e7c6bba59ea657a96" dependencies = [ "anyhow", "heck 0.4.1", @@ -9091,22 +8898,22 @@ dependencies = [ [[package]] name = "wast" -version = "206.0.0" +version = "207.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68586953ee4960b1f5d84ebf26df3b628b17e6173bc088e0acfbce431469795a" +checksum = "0e40be9fd494bfa501309487d2dc0b3f229be6842464ecbdc54eac2679c84c93" dependencies = [ "bumpalo", "leb128", "memchr", "unicode-width", - "wasm-encoder 0.206.0", + "wasm-encoder 0.207.0", ] [[package]] name = "wat" -version = "1.206.0" +version = "1.207.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da4c6f2606276c6e991aebf441b2fc92c517807393f039992a3e0ad873efe4ad" +checksum = "8eb2b15e2d5f300f5e1209e7dc237f2549edbd4203655b6c6cab5cf180561ee7" dependencies = [ "wast", ] @@ -9206,9 +9013,9 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "winch-codegen" -version = "0.18.1" +version = "0.18.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "720aabcf6838b31b42c7adc04d847696b066ddc5877efd6071ed5f08ae75bf20" +checksum = "cefeb84a0f39227cf2eb665cf348e6150ebf3372d08adff03264064ab590fdf4" dependencies = [ "anyhow", "cranelift-codegen", @@ -9390,9 +9197,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.6.7" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14b9415ee827af173ebb3f15f9083df5a122eb93572ec28741fb153356ea2578" +checksum = "c3c52e9c97a68071b23e836c9380edae937f17b9c4667bd021973efc689f618d" dependencies = [ "memchr", ] @@ -9469,7 +9276,7 @@ dependencies = [ "anyhow", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", "wit-bindgen-core", "wit-bindgen-rust", ] @@ -9575,22 +9382,22 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.7.32" +version = "0.7.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be" +checksum = "ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.32" +version = "0.7.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" +checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] @@ -9610,7 +9417,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.61", ] [[package]] diff --git a/crates/kitsune-activitypub/Cargo.toml b/crates/kitsune-activitypub/Cargo.toml index 88cc26e47..a50ad2c46 100644 --- a/crates/kitsune-activitypub/Cargo.toml +++ b/crates/kitsune-activitypub/Cargo.toml @@ -32,7 +32,7 @@ kitsune-util = { path = "../kitsune-util" } kitsune-wasm-mrf = { path = "../kitsune-wasm-mrf" } mime = "0.3.17" mime_guess = { version = "2.0.4", default-features = false } -serde = "1.0.200" +serde = "1.0.201" sha2 = "0.10.8" simd-json = "0.13.10" speedy-uuid = { path = "../../lib/speedy-uuid" } diff --git a/crates/kitsune-cache/Cargo.toml b/crates/kitsune-cache/Cargo.toml index f04aa765c..76b312820 100644 --- a/crates/kitsune-cache/Cargo.toml +++ b/crates/kitsune-cache/Cargo.toml @@ -14,7 +14,7 @@ redis = { version = "0.25.3", default-features = false, features = [ "connection-manager", "tokio-comp", ] } -serde = "1.0.200" +serde = "1.0.201" simd-json = "0.13.10" tracing = "0.1.40" typed-builder = "0.18.2" diff --git a/crates/kitsune-captcha/Cargo.toml b/crates/kitsune-captcha/Cargo.toml index b214c7daa..637f87294 100644 --- a/crates/kitsune-captcha/Cargo.toml +++ b/crates/kitsune-captcha/Cargo.toml @@ -10,7 +10,7 @@ enum_dispatch = "0.3.13" http = "1.1.0" kitsune-error = { path = "../kitsune-error" } kitsune-http-client = { path = "../kitsune-http-client" } -serde = { version = "1.0.200", features = ["derive"] } +serde = { version = "1.0.201", features = ["derive"] } serde_urlencoded = "0.7.1" simd-json = "0.13.10" strum = { version = "0.26.2", features = ["derive"] } diff --git a/crates/kitsune-config/Cargo.toml b/crates/kitsune-config/Cargo.toml index b74b4a92b..688dd8268 100644 --- a/crates/kitsune-config/Cargo.toml +++ b/crates/kitsune-config/Cargo.toml @@ -9,7 +9,7 @@ license.workspace = true eyre = "0.6.12" human-size = { version = "0.4.3", features = ["serde"] } isolang = { version = "2.4.0", features = ["serde"] } -serde = { version = "1.0.200", features = ["derive"] } +serde = { version = "1.0.201", features = ["derive"] } smol_str = { version = "0.2.1", features = ["serde"] } tokio = { version = "1.37.0", features = ["fs"] } toml = { version = "0.8.12", default-features = false, features = ["parse"] } diff --git a/crates/kitsune-core/Cargo.toml b/crates/kitsune-core/Cargo.toml index 138912a60..1c92568e7 100644 --- a/crates/kitsune-core/Cargo.toml +++ b/crates/kitsune-core/Cargo.toml @@ -11,7 +11,7 @@ async-trait = "0.1.80" const_format = "0.2.32" kitsune-db = { path = "../kitsune-db" } kitsune-error = { path = "../kitsune-error" } -serde = { version = "1.0.200", features = ["derive"] } +serde = { version = "1.0.201", features = ["derive"] } typed-builder = "0.18.2" [build-dependencies] diff --git a/crates/kitsune-db/Cargo.toml b/crates/kitsune-db/Cargo.toml index 791d9060c..a3df1666a 100644 --- a/crates/kitsune-db/Cargo.toml +++ b/crates/kitsune-db/Cargo.toml @@ -34,7 +34,7 @@ rustls = { version = "0.23.5", default-features = false, features = [ "tls12", ] } rustls-native-certs = "0.7.0" -serde = { version = "1.0.200", features = ["derive"] } +serde = { version = "1.0.201", features = ["derive"] } simd-json = "0.13.10" speedy-uuid = { path = "../../lib/speedy-uuid", features = ["diesel"] } tokio = { version = "1.37.0", features = ["rt"] } diff --git a/crates/kitsune-http-client/Cargo.toml b/crates/kitsune-http-client/Cargo.toml index c67e9780f..9ec853c84 100644 --- a/crates/kitsune-http-client/Cargo.toml +++ b/crates/kitsune-http-client/Cargo.toml @@ -31,7 +31,7 @@ hyper-rustls = { version = "0.27.1", default-features = false, features = [ ] } kitsune-type = { path = "../kitsune-type" } pin-project = "1.1.5" -serde = "1.0.200" +serde = "1.0.201" simdutf8 = { version = "0.1.4", features = ["aarch64_neon"] } simd-json = "0.13.10" tower = { version = "0.4.13", features = ["util"] } diff --git a/crates/kitsune-jobs/Cargo.toml b/crates/kitsune-jobs/Cargo.toml index 90e39c3e7..06c1cc67f 100644 --- a/crates/kitsune-jobs/Cargo.toml +++ b/crates/kitsune-jobs/Cargo.toml @@ -15,7 +15,7 @@ kitsune-core = { path = "../kitsune-core" } kitsune-db = { path = "../kitsune-db" } kitsune-email = { path = "../kitsune-email" } kitsune-error = { path = "../kitsune-error" } -serde = { version = "1.0.200", features = ["derive"] } +serde = { version = "1.0.201", features = ["derive"] } speedy-uuid = { path = "../../lib/speedy-uuid" } tracing = "0.1.40" typed-builder = "0.18.2" diff --git a/crates/kitsune-mastodon/Cargo.toml b/crates/kitsune-mastodon/Cargo.toml index 88fe7f35b..d4c094ae0 100644 --- a/crates/kitsune-mastodon/Cargo.toml +++ b/crates/kitsune-mastodon/Cargo.toml @@ -19,7 +19,7 @@ kitsune-type = { path = "../kitsune-type" } kitsune-url = { path = "../kitsune-url" } kitsune-util = { path = "../kitsune-util" } mime = "0.3.17" -serde = "1.0.200" +serde = "1.0.201" simd-json = "0.13.10" smol_str = "0.2.1" speedy-uuid = { path = "../../lib/speedy-uuid" } diff --git a/crates/kitsune-oidc/Cargo.toml b/crates/kitsune-oidc/Cargo.toml index 718d255ae..0e415e0ca 100644 --- a/crates/kitsune-oidc/Cargo.toml +++ b/crates/kitsune-oidc/Cargo.toml @@ -25,7 +25,7 @@ redis = { version = "0.25.3", default-features = false, features = [ "connection-manager", "tokio-comp", ] } -serde = { version = "1.0.200", features = ["derive"] } +serde = { version = "1.0.201", features = ["derive"] } simd-json = "0.13.10" speedy-uuid = { path = "../../lib/speedy-uuid", features = ["serde"] } url = "2.5.0" diff --git a/crates/kitsune-s3/Cargo.toml b/crates/kitsune-s3/Cargo.toml index 53fa7e0c4..d42a72518 100644 --- a/crates/kitsune-s3/Cargo.toml +++ b/crates/kitsune-s3/Cargo.toml @@ -13,7 +13,7 @@ kitsune-error = { path = "../kitsune-error" } kitsune-http-client = { path = "../kitsune-http-client" } quick-xml = { version = "0.31.0", features = ["serialize"] } rusty-s3 = "0.5.0" -serde = { version = "1.0.200", features = ["derive"] } +serde = { version = "1.0.201", features = ["derive"] } typed-builder = "0.18.2" [dev-dependencies] diff --git a/crates/kitsune-scss-compiler/Cargo.toml b/crates/kitsune-scss-compiler/Cargo.toml index a61a4de27..d6c9158d4 100644 --- a/crates/kitsune-scss-compiler/Cargo.toml +++ b/crates/kitsune-scss-compiler/Cargo.toml @@ -6,7 +6,7 @@ version.workspace = true license.workspace = true [dependencies] -anyhow = "1.0.82" +anyhow = "1.0.83" glob = "0.3.1" rsass = "0.28.8" tracing = { version = "0.1.40", default-features = false } diff --git a/crates/kitsune-search/Cargo.toml b/crates/kitsune-search/Cargo.toml index b2a8bb167..a74301481 100644 --- a/crates/kitsune-search/Cargo.toml +++ b/crates/kitsune-search/Cargo.toml @@ -5,34 +5,29 @@ edition.workspace = true version.workspace = true license.workspace = true -[package.metadata.cargo-machete] -ignored = ["isahc"] # To make `meilisearch` builds static - [dependencies] +async-trait = "0.1.80" +bytes = "1.6.0" diesel = "2.1.6" diesel-async = "0.4.1" diesel_full_text_search = { version = "2.1.1", default-features = false } enum_dispatch = "0.3.13" +futures-io = "0.3.30" futures-util = "0.3.30" +http = "1.1.0" kitsune-config = { path = "../kitsune-config" } kitsune-db = { path = "../kitsune-db" } kitsune-error = { path = "../kitsune-error" } +kitsune-http-client = { path = "../kitsune-http-client" } kitsune-language = { path = "../kitsune-language" } -serde = { version = "1.0.200", features = ["derive"] } +meilisearch-sdk = { version = "0.26.0", default-features = false } +pin-project-lite = "0.2.14" +serde = { version = "1.0.201", features = ["derive"] } +serde_urlencoded = "0.7.1" speedy-uuid = { path = "../../lib/speedy-uuid" } strum = { version = "0.26.2", features = ["derive"] } tracing = "0.1.40" typed-builder = "0.18.2" -# "meilisearch" feature -isahc = { version = "1.7.2", default-features = false, features = [ - "static-ssl", -], optional = true } -meilisearch-sdk = { version = "0.25.0", optional = true } - -[features] -default = [] -meilisearch = ["dep:isahc", "dep:meilisearch-sdk"] - [lints] workspace = true diff --git a/crates/kitsune-search/src/lib.rs b/crates/kitsune-search/src/lib.rs index 740ac29cc..7961fc6d3 100644 --- a/crates/kitsune-search/src/lib.rs +++ b/crates/kitsune-search/src/lib.rs @@ -8,18 +8,15 @@ use serde::{Deserialize, Serialize}; use speedy_uuid::Uuid; use strum::{AsRefStr, EnumIter}; -#[cfg(feature = "meilisearch")] mod meilisearch; mod sql; -#[cfg(feature = "meilisearch")] pub use self::meilisearch::MeiliSearchService; pub use self::sql::SearchService as SqlSearchService; #[derive(Clone)] #[enum_dispatch(SearchBackend)] pub enum AnySearchBackend { - #[cfg(feature = "meilisearch")] Meilisearch(MeiliSearchService), Noop(NoopSearchService), Sql(SqlSearchService), diff --git a/crates/kitsune-search/src/meilisearch/http_client.rs b/crates/kitsune-search/src/meilisearch/http_client.rs new file mode 100644 index 000000000..df3997e46 --- /dev/null +++ b/crates/kitsune-search/src/meilisearch/http_client.rs @@ -0,0 +1,121 @@ +use async_trait::async_trait; +use bytes::Bytes; +use futures_util::Stream; +use http::header::CONTENT_TYPE; +use kitsune_http_client::Body as HttpBody; +use meilisearch_sdk::{errors::Error as MeilisearchError, request::Method}; +use pin_project_lite::pin_project; +use serde::{de::DeserializeOwned, Serialize}; +use std::{ + io, + pin::Pin, + task::{self, ready, Poll}, +}; + +const BUFFER_SIZE: usize = 1024; + +pin_project! { + struct AsyncReadBridge { + #[pin] + inner: R, + buf: Vec, + } +} + +impl AsyncReadBridge { + pub fn new(reader: R, buf_size: usize) -> Self { + Self { + inner: reader, + buf: vec![0; buf_size], + } + } +} + +impl Stream for AsyncReadBridge +where + R: futures_io::AsyncRead, +{ + type Item = io::Result; + + fn poll_next(self: Pin<&mut Self>, cx: &mut task::Context<'_>) -> Poll> { + let this = self.project(); + let amount_read = match ready!(this.inner.poll_read(cx, this.buf)) { + Ok(0) => return Poll::Ready(None), + Ok(amount_read) => amount_read, + Err(err) => return Poll::Ready(Some(Err(err))), + }; + + let bytes = Bytes::copy_from_slice(&this.buf[..amount_read]); + this.buf.clear(); + this.buf.fill(0); + + Poll::Ready(Some(Ok(bytes))) + } +} + +#[derive(Clone)] +pub struct HttpClient { + pub inner: kitsune_http_client::Client, +} + +#[async_trait] +impl meilisearch_sdk::request::HttpClient for HttpClient { + async fn stream_request< + Query: Serialize + Send + Sync, + Body: futures_io::AsyncRead + Send + Sync + 'static, + Output: DeserializeOwned + 'static, + >( + &self, + url: &str, + method: Method, + content_type: &str, + expected_status_code: u16, + ) -> Result { + let url = format!( + "{url}?{}", + serde_urlencoded::to_string(method.query()) + .map_err(|err| MeilisearchError::Other(err.into()))? + ); + + let request = http::Request::builder() + .uri(&url) + .header(CONTENT_TYPE, content_type); + + let request = match method { + Method::Get { .. } => request.method(http::Method::GET), + Method::Post { .. } => request.method(http::Method::POST), + Method::Patch { .. } => request.method(http::Method::PATCH), + Method::Put { .. } => request.method(http::Method::PUT), + Method::Delete { .. } => request.method(http::Method::DELETE), + }; + + let body = method + .map_body(|body| HttpBody::stream(AsyncReadBridge::new(body, BUFFER_SIZE))) + .into_body() + .unwrap_or_default(); + + let request = request + .body(body) + .map_err(|err| MeilisearchError::Other(err.into()))?; + + let response = self + .inner + .execute(request) + .await + .map_err(|err| MeilisearchError::Other(err.into()))?; + + if response.status().as_u16() != expected_status_code { + return Err(meilisearch_sdk::errors::MeilisearchCommunicationError { + status_code: response.status().as_u16(), + message: response.text().await.ok(), + url, + } + .into()); + } + + response + .json() + .await + .map_err(|err| MeilisearchError::Other(err.into())) + } +} diff --git a/crates/kitsune-search/src/meilisearch.rs b/crates/kitsune-search/src/meilisearch/mod.rs similarity index 88% rename from crates/kitsune-search/src/meilisearch.rs rename to crates/kitsune-search/src/meilisearch/mod.rs index 7cc262228..ed516b8ff 100644 --- a/crates/kitsune-search/src/meilisearch.rs +++ b/crates/kitsune-search/src/meilisearch/mod.rs @@ -1,9 +1,12 @@ +use self::http_client::HttpClient; use super::{Result, SearchBackend, SearchIndex, SearchItem, SearchResultReference}; -use meilisearch_sdk::{indexes::Index, settings::Settings, Client}; +use meilisearch_sdk::{client::Client, indexes::Index, settings::Settings}; use serde::Deserialize; use speedy_uuid::Uuid; use strum::IntoEnumIterator; +mod http_client; + #[derive(Deserialize)] struct MeilisearchResult { id: Uuid, @@ -11,7 +14,7 @@ struct MeilisearchResult { #[derive(Clone)] pub struct MeiliSearchService { - client: Client, + client: Client, } impl MeiliSearchService { @@ -21,9 +24,15 @@ impl MeiliSearchService { /// /// - Failed to connect to the instance pub async fn new(host: &str, api_key: &str) -> Result { + let http_client = HttpClient { + inner: kitsune_http_client::Client::builder() + .content_length_limit(None) + .build(), + }; let service = Self { - client: Client::new(host, Some(api_key)), + client: Client::new_with_client(host, Some(api_key), http_client), }; + let settings = Settings::new() .with_filterable_attributes(["created_at"]) .with_sortable_attributes(["id"]); @@ -40,7 +49,7 @@ impl MeiliSearchService { Ok(service) } - fn get_index(&self, index: SearchIndex) -> Index { + fn get_index(&self, index: SearchIndex) -> Index { self.client.index(index.as_ref()) } } diff --git a/crates/kitsune-service/Cargo.toml b/crates/kitsune-service/Cargo.toml index c68078a3e..6d8205c91 100644 --- a/crates/kitsune-service/Cargo.toml +++ b/crates/kitsune-service/Cargo.toml @@ -54,7 +54,7 @@ redis = { version = "0.25.3", default-features = false, features = [ ] } rsa = "0.9.6" rusty-s3 = { version = "0.5.0", default-features = false } -serde = "1.0.200" +serde = "1.0.201" smol_str = "0.2.1" speedy-uuid = { path = "../../lib/speedy-uuid" } tokio = { version = "1.37.0", features = ["macros", "sync"] } @@ -63,9 +63,6 @@ typed-builder = "0.18.2" url = "2.5.0" zxcvbn = { version = "2.2.2", default-features = false } -[features] -meilisearch = ["kitsune-search/meilisearch"] - [dev-dependencies] hex-simd = "0.8.0" http-body-util = "0.1.1" diff --git a/crates/kitsune-service/src/prepare.rs b/crates/kitsune-service/src/prepare.rs index edd612ab8..9fe856b02 100644 --- a/crates/kitsune-service/src/prepare.rs +++ b/crates/kitsune-service/src/prepare.rs @@ -1,3 +1,4 @@ +use eyre::WrapErr; use kitsune_cache::{ArcCache, InMemoryCache, NoopCache, RedisCache}; use kitsune_captcha::AnyCaptcha; use kitsune_captcha::{hcaptcha::Captcha as HCaptcha, mcaptcha::Captcha as MCaptcha}; @@ -130,21 +131,12 @@ pub async fn search( db_pool: &PgPool, ) -> eyre::Result { let service = match search_config { - search::Configuration::Meilisearch(_config) => { - #[cfg(not(feature = "meilisearch"))] - panic!("Server compiled without Meilisearch compatibility"); - - #[cfg(feature = "meilisearch")] - #[allow(clippy::used_underscore_binding)] - { - use eyre::WrapErr; - - kitsune_search::MeiliSearchService::new(&_config.instance_url, &_config.api_key) - .await - .map_err(kitsune_error::Error::into_error) - .wrap_err("Failed to connect to Meilisearch")? - .into() - } + search::Configuration::Meilisearch(config) => { + kitsune_search::MeiliSearchService::new(&config.instance_url, &config.api_key) + .await + .map_err(kitsune_error::Error::into_error) + .wrap_err("Failed to connect to Meilisearch")? + .into() } search::Configuration::Sql => SqlSearchService::builder() .db_pool(db_pool.clone()) diff --git a/crates/kitsune-storage/Cargo.toml b/crates/kitsune-storage/Cargo.toml index 7419a0934..379665081 100644 --- a/crates/kitsune-storage/Cargo.toml +++ b/crates/kitsune-storage/Cargo.toml @@ -13,7 +13,7 @@ kitsune-error = { path = "../kitsune-error" } kitsune-s3 = { path = "../kitsune-s3" } rusty-s3 = { version = "0.5.0", default-features = false } tokio = { version = "1.37.0", features = ["fs", "io-util"] } -tokio-util = { version = "0.7.10", features = ["io"] } +tokio-util = { version = "0.7.11", features = ["io"] } [dev-dependencies] tempfile = "3.10.1" diff --git a/crates/kitsune-type/Cargo.toml b/crates/kitsune-type/Cargo.toml index 4c93a2792..83e2aae5c 100644 --- a/crates/kitsune-type/Cargo.toml +++ b/crates/kitsune-type/Cargo.toml @@ -7,12 +7,12 @@ license.workspace = true [dependencies] iso8601-timestamp = "0.2.17" -serde = { version = "1.0.200", features = ["derive"] } +serde = { version = "1.0.201", features = ["derive"] } simd-json = "0.13.10" smol_str = { version = "0.2.1", features = ["serde"] } speedy-uuid = { path = "../../lib/speedy-uuid", features = ["serde"] } strum = { version = "0.26.2", features = ["derive"] } -utoipa = { version = "4.2.0", features = ["chrono", "uuid"] } +utoipa = { version = "4.2.3", features = ["chrono", "uuid"] } [dev-dependencies] pretty_assertions = "1.4.0" diff --git a/crates/kitsune-wasm-mrf/Cargo.toml b/crates/kitsune-wasm-mrf/Cargo.toml index 51f9dbedf..4de759a09 100644 --- a/crates/kitsune-wasm-mrf/Cargo.toml +++ b/crates/kitsune-wasm-mrf/Cargo.toml @@ -32,7 +32,7 @@ tokio = { version = "1.37.0", features = ["fs"] } tracing = "0.1.40" typed-builder = "0.18.2" walkdir = "2.5.0" -wasmtime = { version = "20.0.1", default-features = false, features = [ +wasmtime = { version = "20.0.2", default-features = false, features = [ "addr2line", "async", "component-model", @@ -41,13 +41,13 @@ wasmtime = { version = "20.0.1", default-features = false, features = [ "pooling-allocator", "runtime", ] } -wasmtime-wasi = { version = "20.0.1", default-features = false } +wasmtime-wasi = { version = "20.0.2", default-features = false } [dev-dependencies] tempfile = "3.10.1" tokio = { version = "1.37.0", features = ["macros", "rt"] } tracing-subscriber = "0.3.18" -wat = "1.206.0" +wat = "1.207.0" [lints] workspace = true diff --git a/docs/src/configuring/search.md b/docs/src/configuring/search.md index 58dd16e23..f05ea3c27 100644 --- a/docs/src/configuring/search.md +++ b/docs/src/configuring/search.md @@ -1,6 +1,6 @@ # Search -Kitsune has a number of search backends, each different from the other, to best fit your specific needs. +Kitsune has a number of search backends, each different from the other, to best fit your specific needs. We want to give you a brief overview over the available backends. ## No Search @@ -23,8 +23,6 @@ This runs searches on your database directly. The quality is actually not too ba ## Meilisearch -> You need to compile Kitsune with the `meilisearch` feature flag to enable this feature - ```toml [search] type = "meilisearch" diff --git a/kitsune-cli/Cargo.toml b/kitsune-cli/Cargo.toml index e2e393587..1d6e50d16 100644 --- a/kitsune-cli/Cargo.toml +++ b/kitsune-cli/Cargo.toml @@ -22,7 +22,7 @@ envy = "0.4.2" kitsune-config = { path = "../crates/kitsune-config" } kitsune-db = { path = "../crates/kitsune-db" } kitsune-error = { path = "../crates/kitsune-error" } -serde = { version = "1.0.200", features = ["derive"] } +serde = { version = "1.0.201", features = ["derive"] } speedy-uuid = { path = "../lib/speedy-uuid" } tokio = { version = "1.37.0", features = ["full"] } tracing-subscriber = "0.3.18" diff --git a/kitsune/Cargo.toml b/kitsune/Cargo.toml index 3275cdf6c..656eb6c58 100644 --- a/kitsune/Cargo.toml +++ b/kitsune/Cargo.toml @@ -80,7 +80,7 @@ redis = { version = "0.25.3", default-features = false, features = [ ] } rust-embed = { version = "8.3.0", features = ["include-exclude"] } scoped-futures = "0.1.3" -serde = { version = "1.0.200", features = ["derive"] } +serde = { version = "1.0.201", features = ["derive"] } serde_urlencoded = "0.7.1" simd-json = "0.13.10" simdutf8 = { version = "0.1.4", features = ["aarch64_neon"] } @@ -89,7 +89,7 @@ strum = { version = "0.26.2", features = ["derive", "phf"] } tempfile = "3.10.1" time = "0.3.36" tokio = { version = "1.37.0", features = ["full"] } -tokio-util = { version = "0.7.10", features = ["compat"] } +tokio-util = { version = "0.7.11", features = ["compat"] } tower = { version = "0.4.13", features = ["util"] } tower-stop-using-brave = { path = "../lib/tower-stop-using-brave" } tower-x-clacks-overhead = { path = "../lib/tower-x-clacks-overhead" } @@ -106,8 +106,8 @@ tracing = "0.1.40" trials = { path = "../lib/trials" } typed-builder = "0.18.2" url = "2.5.0" -utoipa = { version = "4.2.0", features = ["axum_extras", "uuid"] } -utoipa-swagger-ui = { version = "6.0.0", features = ["axum"] } +utoipa = { version = "4.2.3", features = ["axum_extras", "uuid"] } +utoipa-swagger-ui = { version = "=6.0.0", features = ["axum"] } # --- Optional dependencies --- @@ -151,7 +151,6 @@ graphql-api = [ "speedy-uuid/async-graphql", ] mastodon-api = ["dep:kitsune-mastodon"] -meilisearch = ["kitsune-search/meilisearch", "kitsune-service/meilisearch"] oidc = ["dep:kitsune-oidc"] [lints] diff --git a/lib/athena/Cargo.toml b/lib/athena/Cargo.toml index 1cb806b3d..524da2f3c 100644 --- a/lib/athena/Cargo.toml +++ b/lib/athena/Cargo.toml @@ -26,13 +26,13 @@ redis = { version = "0.25.3", default-features = false, features = [ "streams", "tokio-comp", ], optional = true } -serde = { version = "1.0.200", features = ["derive"] } +serde = { version = "1.0.201", features = ["derive"] } simd-json = { version = "0.13.10", optional = true } smol_str = "0.2.1" speedy-uuid = { path = "../speedy-uuid", features = ["redis", "serde"] } -thiserror = "1.0.59" +thiserror = "1.0.60" tokio = { version = "1.37.0", features = ["macros", "rt", "sync"] } -tokio-util = { version = "0.7.10", features = ["rt"] } +tokio-util = { version = "0.7.11", features = ["rt"] } tracing = "0.1.40" typed-builder = "0.18.2" typetag = "0.2.16" diff --git a/lib/blowocking/Cargo.toml b/lib/blowocking/Cargo.toml index a2e287d5a..a0bab06e0 100644 --- a/lib/blowocking/Cargo.toml +++ b/lib/blowocking/Cargo.toml @@ -8,7 +8,7 @@ license = "MIT OR Apache-2.0" [dependencies] once_cell = "1.19.0" rayon = "1.10.0" -thiserror = "1.0.59" +thiserror = "1.0.60" tokio = { version = "1.37.0", features = ["sync"] } tracing = "0.1.40" diff --git a/lib/geomjeungja/Cargo.toml b/lib/geomjeungja/Cargo.toml index 7e1b392b4..7c39518d1 100644 --- a/lib/geomjeungja/Cargo.toml +++ b/lib/geomjeungja/Cargo.toml @@ -9,16 +9,16 @@ license = "MIT OR Apache-2.0" async-trait = "0.1.80" hickory-resolver = { version = "0.24.1", features = ["dns-over-rustls"] } rand = "0.8.5" -serde = { version = "1.0.200", features = ["derive"] } +serde = { version = "1.0.201", features = ["derive"] } simdutf8 = { version = "0.1.4", features = ["aarch64_neon"] } -thiserror = "1.0.59" +thiserror = "1.0.60" tracing = "0.1.40" typed-builder = "0.18.2" [dev-dependencies] insta = { version = "1.38.0", features = ["json"] } rand_xorshift = "0.3.0" -serde_json = "1.0.116" +serde_json = "1.0.117" tokio = { version = "1.37.0", features = ["macros", "rt"] } [lints] diff --git a/lib/http-signatures/Cargo.toml b/lib/http-signatures/Cargo.toml index 1dad2c447..770e9978c 100644 --- a/lib/http-signatures/Cargo.toml +++ b/lib/http-signatures/Cargo.toml @@ -31,7 +31,7 @@ miette = "7.2.0" pkcs8 = { version = "0.10.2", features = ["pem", "std"] } ring = { version = "0.17.8", features = ["std"] } scoped-futures = { version = "0.1.3", default-features = false } -thiserror = "1.0.59" +thiserror = "1.0.60" tick-tock-mock = { path = "../tick-tock-mock" } tracing = { version = "0.1.40", default-features = false, optional = true } diff --git a/lib/mrf-manifest/Cargo.toml b/lib/mrf-manifest/Cargo.toml index 2bb5a7582..1abe2e131 100644 --- a/lib/mrf-manifest/Cargo.toml +++ b/lib/mrf-manifest/Cargo.toml @@ -8,18 +8,18 @@ license = "MIT OR Apache-2.0" [dependencies] leb128 = { version = "0.2.5", optional = true } olpc-cjson = { version = "0.1.3", optional = true } -schemars = { version = "0.8.17", features = ["impl_json_schema", "semver"] } -semver = { version = "1.0.22", features = ["serde"] } -serde = { version = "1.0.200", features = ["derive"] } -serde_json = { version = "1.0.116", optional = true } -thiserror = { version = "1.0.59", optional = true } -wasm-encoder = { version = "0.206.0", optional = true } -wasmparser = { version = "0.206.0", optional = true } +schemars = { version = "0.8.19", features = ["impl_json_schema", "semver"] } +semver = { version = "1.0.23", features = ["serde"] } +serde = { version = "1.0.201", features = ["derive"] } +serde_json = { version = "1.0.117", optional = true } +thiserror = { version = "1.0.60", optional = true } +wasm-encoder = { version = "0.207.0", optional = true } +wasmparser = { version = "0.207.0", optional = true } [dev-dependencies] -serde_json = "1.0.116" +serde_json = "1.0.117" insta = { version = "1.38.0", default-features = false, features = ["json"] } -wat = "1.206.0" +wat = "1.207.0" [features] decode = ["dep:leb128", "dep:serde_json", "dep:thiserror", "dep:wasmparser"] diff --git a/lib/mrf-tool/Cargo.toml b/lib/mrf-tool/Cargo.toml index 8b71d9615..531ed3739 100644 --- a/lib/mrf-tool/Cargo.toml +++ b/lib/mrf-tool/Cargo.toml @@ -14,12 +14,12 @@ mrf-manifest = { path = "../mrf-manifest", features = [ "encode", "serialise", ] } -serde_json = "1.0.116" -wasmparser = "0.206.0" +serde_json = "1.0.117" +wasmparser = "0.207.0" [lints] workspace = true [dev-dependencies] -serde_json = "1.0.116" -wat = "1.206.0" +serde_json = "1.0.117" +wat = "1.207.0" diff --git a/lib/speedy-uuid/Cargo.toml b/lib/speedy-uuid/Cargo.toml index 5dad29942..b36caa7e3 100644 --- a/lib/speedy-uuid/Cargo.toml +++ b/lib/speedy-uuid/Cargo.toml @@ -12,8 +12,8 @@ diesel = { version = "2.1.6", features = [ "uuid", ], optional = true } redis = { version = "0.25.3", default-features = false, optional = true } -serde = { version = "1.0.200", optional = true } -thiserror = "1.0.59" +serde = { version = "1.0.201", optional = true } +thiserror = "1.0.60" uuid = { version = "1.8.0", features = ["fast-rng", "v7"] } uuid-simd = { version = "0.8.0", features = ["uuid"] } diff --git a/lib/trials/macros/Cargo.toml b/lib/trials/macros/Cargo.toml index 941330cd0..a5544a541 100644 --- a/lib/trials/macros/Cargo.toml +++ b/lib/trials/macros/Cargo.toml @@ -9,9 +9,9 @@ license = "MIT OR Apache-2.0" proc-macro = true [dependencies] -proc-macro2 = "1.0.81" +proc-macro2 = "1.0.82" quote = "1.0.36" -syn = { version = "2.0.60", features = ["full", "visit-mut"] } +syn = { version = "2.0.61", features = ["full", "visit-mut"] } [lints] workspace = true diff --git a/xtask/Cargo.toml b/xtask/Cargo.toml index 90f239c9d..1bf8be7e3 100644 --- a/xtask/Cargo.toml +++ b/xtask/Cargo.toml @@ -6,7 +6,7 @@ license.workspace = true publish = false [dependencies] -anyhow = "1.0.82" +anyhow = "1.0.83" argh = "0.1.12" glob = "0.3.1" taplo = { version = "0.13.0", default-features = false }