This is an automated email from the ASF dual-hosted git repository. hgruszecki pushed a commit to branch update-rust-depss in repository https://gitbox.apache.org/repos/asf/iggy.git
commit b3309af0c2adadd7c03a9be40a2b72a755263319 Author: Hubert Gruszecki <[email protected]> AuthorDate: Sat Mar 21 11:05:05 2026 +0100 deps(rust): bump workspace dependencies cargo upgrade bumped several crates with breaking API changes: - bit-set 0.9: len() -> count(), clear() -> make_empty() - figlet-rs 1.0: FIGfont renamed to FIGlet - tungstenite 0.29 vs compio-ws 0.3 (pinned to 0.28): construct WebSocket config via compio's re-exported tungstenite to avoid cross-version type mismatch - arrow/parquet 58 vs iceberg 0.9 (pinned to arrow 57): downgrade workspace arrow/parquet to match iceberg's transitive dependency --- Cargo.lock | 503 ++++++++++++++------- Cargo.toml | 49 +- DEPENDENCIES.md | 151 ++++--- core/ai/mcp/src/main.rs | 4 +- core/bench/src/main.rs | 4 +- core/cli/src/args/mod.rs | 4 +- core/connectors/runtime/src/main.rs | 4 +- core/connectors/sinks/iceberg_sink/Cargo.toml | 1 + core/connectors/sinks/iceberg_sink/src/catalog.rs | 18 +- core/consensus/src/impls.rs | 8 +- .../tests/cli/general/test_overview_command.rs | 16 +- core/server/Cargo.toml | 1 - core/server/src/main.rs | 4 +- core/server/src/websocket/mod.rs | 41 ++ core/server/src/websocket/websocket_listener.rs | 4 +- .../server/src/websocket/websocket_tls_listener.rs | 4 +- 16 files changed, 525 insertions(+), 291 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4a091845a..63420b7b5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -349,9 +349,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.21" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a" +checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d" dependencies = [ "anstyle", "anstyle-parse", @@ -364,15 +364,15 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.13" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" +checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000" [[package]] name = "anstyle-parse" -version = "0.2.7" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" +checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e" dependencies = [ "utf8parse", ] @@ -706,9 +706,9 @@ dependencies = [ [[package]] name = "assert_cmd" -version = "2.1.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c5bcfa8749ac45dd12cb11055aeeb6b27a3895560d60d71e3c23bf979e60514" +checksum = "9a686bbee5efb88a82df0621b236e74d925f470e5445d3220a5648b892ec99c9" dependencies = [ "anstyle", "bstr", @@ -980,9 +980,9 @@ dependencies = [ [[package]] name = "aws-lc-rs" -version = "1.16.1" +version = "1.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94bffc006df10ac2a68c83692d734a465f8ee6c5b384d8545a636f81d858f4bf" +checksum = "a054912289d18629dc78375ba2c3726a3afe3ff71b4edba9dedfca0e3446d1fc" dependencies = [ "aws-lc-sys", "zeroize", @@ -990,9 +990,9 @@ dependencies = [ [[package]] name = "aws-lc-sys" -version = "0.38.0" +version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4321e568ed89bb5a7d291a7f37997c2c0df89809d7b6d12062c81ddb54aa782e" +checksum = "1fa7e52a4c5c547c741610a2c6f123f3881e409b714cd27e6798ef020c514f0a" dependencies = [ "cc", "cmake", @@ -1269,7 +1269,16 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" dependencies = [ - "bit-vec", + "bit-vec 0.8.0", +] + +[[package]] +name = "bit-set" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34ddef2995421ab6a5c779542c81ee77c115206f4ad9d5a8e05f4ff49716a3dd" +dependencies = [ + "bit-vec 0.9.1", ] [[package]] @@ -1278,6 +1287,15 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" +[[package]] +name = "bit-vec" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b71798fca2c1fe1086445a7258a4bc81e6e49dcd24c8d0dd9a1e57395b603f51" +dependencies = [ + "serde", +] + [[package]] name = "bit_field" version = "0.10.3" @@ -1361,11 +1379,21 @@ dependencies = [ "objc2", ] +[[package]] +name = "bnum" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f781dba93de3a5ef6dc5b17c9958b208f6f3f021623b360fb605ea51ce443f10" +dependencies = [ + "serde", + "serde-big-array", +] + [[package]] name = "bollard" -version = "0.20.1" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "227aa051deec8d16bd9c34605e7aaf153f240e35483dd42f6f78903847934738" +checksum = "ee04c4c84f1f811b017f2fbb7dd8815c976e7ca98593de9c1e2afad0f636bff4" dependencies = [ "async-stream", "base64 0.22.1", @@ -1437,9 +1465,9 @@ dependencies = [ [[package]] name = "bon" -version = "3.9.0" +version = "3.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d13a61f2963b88eef9c1be03df65d42f6996dfeac1054870d950fcf66686f83" +checksum = "f47dbe92550676ee653353c310dfb9cf6ba17ee70396e1f7cf0a2020ad49b2fe" dependencies = [ "bon-macros", "rustversion", @@ -1447,9 +1475,9 @@ dependencies = [ [[package]] name = "bon-macros" -version = "3.9.0" +version = "3.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d314cc62af2b6b0c65780555abb4d02a03dd3b799cd42419044f0c38d99738c0" +checksum = "519bd3116aeeb42d5372c29d982d16d0170d3d4a5ed85fc7dd91642ffff3c67c" dependencies = [ "darling 0.23.0", "ident_case", @@ -1462,19 +1490,20 @@ dependencies = [ [[package]] name = "borsh" -version = "1.6.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1da5ab77c1437701eeff7c88d968729e7766172279eab0676857b3d63af7a6f" +checksum = "cfd1e3f8955a5d7de9fab72fc8373fade9fb8a703968cb200ae3dc6cf08e185a" dependencies = [ "borsh-derive", + "bytes", "cfg_aliases", ] [[package]] name = "borsh-derive" -version = "1.6.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0686c856aa6aac0c4498f936d7d6a02df690f614c03e4d906d1018062b5c5e2c" +checksum = "bfcfdc083699101d5a7965e49925975f2f55060f94f9a05e7187be95d530ca59" dependencies = [ "once_cell", "proc-macro-crate 3.5.0", @@ -1701,9 +1730,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.56" +version = "1.2.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aebf35691d1bfb0ac386a69bac2fde4dd276fb618cf8bf4f5318fe285e821bb2" +checksum = "7a0dd1ca384932ff3641c8718a02769f1698e7563dc6974ffd03346116310423" dependencies = [ "find-msvc-tools", "jobserver", @@ -1818,9 +1847,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.60" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2797f34da339ce31042b27d23607e051786132987f595b02ba4f6a6dffb7030a" +checksum = "b193af5b67834b676abd72466a96c1024e6a6ad978a1f484bd90b85c94041351" dependencies = [ "clap_builder", "clap_derive", @@ -1828,9 +1857,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.60" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24a241312cea5059b13574bb9b3861cabf758b879c15190b37b6d6fd63ab6876" +checksum = "714a53001bf66416adb0e2ef5ac857140e7dc3a0c48fb28b2f10762fc4b5069f" dependencies = [ "anstream", "anstyle", @@ -1841,18 +1870,18 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.5.66" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c757a3b7e39161a4e56f9365141ada2a6c915a8622c408ab6bb4b5d047371031" +checksum = "19c9f1dde76b736e3681f28cec9d5a61299cbaae0fce80a68e43724ad56031eb" dependencies = [ "clap", ] [[package]] name = "clap_derive" -version = "4.5.55" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a92793da1a46a5f2a02a6f4c46c6496b28c43638adea8306fcb0caa1634f24e5" +checksum = "1110bd8a634a1ab8cb04345d8d878267d57c3cf1b38d91b71af6686408bbca6a" dependencies = [ "heck", "proc-macro2", @@ -1862,9 +1891,9 @@ dependencies = [ [[package]] name = "clap_lex" -version = "1.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a822ea5bc7590f9d40f1ba12c0dc3c2760f3482c6984db1573ad11031420831" +checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9" [[package]] name = "clock" @@ -1899,9 +1928,9 @@ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" [[package]] name = "colorchoice" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" +checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570" [[package]] name = "colored" @@ -2132,7 +2161,7 @@ dependencies = [ "compio-log", "compio-net", "compio-tls", - "tungstenite", + "tungstenite 0.28.0", ] [[package]] @@ -2181,7 +2210,7 @@ dependencies = [ "static-toml", "strum 0.28.0", "tracing", - "tungstenite", + "tungstenite 0.29.0", ] [[package]] @@ -2198,7 +2227,7 @@ dependencies = [ name = "consensus" version = "0.1.0" dependencies = [ - "bit-set", + "bit-set 0.9.1", "bytemuck", "bytes", "futures", @@ -2210,13 +2239,12 @@ dependencies = [ [[package]] name = "console" -version = "0.16.2" +version = "0.16.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03e45a4a8926227e4197636ba97a9fc9b00477e9f4bd711395687c5f0734bec4" +checksum = "d64e8af5551369d19cf50138de61f1c42074ab970f74e99be916646777f8fc87" dependencies = [ "encode_unicode", "libc", - "once_cell", "unicode-width 0.2.2", "windows-sys 0.61.2", ] @@ -2458,9 +2486,9 @@ checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" [[package]] name = "crossfire" -version = "3.1.5" +version = "3.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf877d485f079160883c76912869ac04132035f7ea787712264d422793f808df" +checksum = "e0042e53977a94d5d10de04ce7eb6016aa212c08e83ea202f7a9f102ff104303" dependencies = [ "crossbeam-utils", "futures-core", @@ -2642,9 +2670,9 @@ dependencies = [ [[package]] name = "cyper" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b707a1802eb4d8e914f3797b3103fe65bb8d4f8d2c10b9e23f155fe9f18e1d8b" +checksum = "9123b02f7942d1f9e7608a2243d4d1face2935facda972a3551ea7a087f722ab" dependencies = [ "async-stream", "base64 0.22.1", @@ -2754,7 +2782,6 @@ dependencies = [ "ident_case", "proc-macro2", "quote", - "strsim", "syn 2.0.117", ] @@ -2871,8 +2898,8 @@ dependencies = [ "anyhow", "az", "bincode", - "bit-set", - "bit-vec", + "bit-set 0.8.0", + "bit-vec 0.8.0", "bytes", "capacity_builder", "cooked-waker", @@ -3031,9 +3058,9 @@ dependencies = [ [[package]] name = "derive-where" -version = "1.6.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef941ded77d15ca19b40374869ac6000af1c9f2a4c0f3d4c70926287e6364a8f" +checksum = "d08b3a0bcc0d079199cd476b2cae8435016ec11d1c0986c6901c5ac223041534" dependencies = [ "proc-macro2", "quote", @@ -3169,9 +3196,9 @@ dependencies = [ [[package]] name = "dissimilar" -version = "1.0.10" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8975ffdaa0ef3661bfe02dbdcc06c9f829dfafe6a3c474de366a8d5e44276921" +checksum = "aeda16ab4059c5fd2a83f2b9c9e9c981327b18aa8e3b313f7e6563799d4f093e" [[package]] name = "dlopen2" @@ -3459,6 +3486,17 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" +[[package]] +name = "erased-serde" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2add8a07dd6a8d93ff627029c51de145e12686fbc36ecb298ac22e74cf02dec" +dependencies = [ + "serde", + "serde_core", + "typeid", +] + [[package]] name = "err_trail" version = "0.11.0" @@ -3522,9 +3560,9 @@ dependencies = [ [[package]] name = "euclid" -version = "0.22.13" +version = "0.22.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df61bf483e837f88d5c2291dcf55c67be7e676b3a51acc48db3a7b163b91ed63" +checksum = "f1a05365e3b1c6d1650318537c7460c6923f1abdd272ad6842baa2b509957a06" dependencies = [ "num-traits", ] @@ -3616,6 +3654,18 @@ dependencies = [ "siphasher", ] +[[package]] +name = "fastnum" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4089ab2dfd45d8ddc92febb5ca80644389d5ebb954f40231274a3f18341762e2" +dependencies = [ + "bnum", + "num-integer", + "num-traits", + "serde", +] + [[package]] name = "fastrand" version = "2.3.0" @@ -3683,9 +3733,12 @@ checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" [[package]] name = "figlet-rs" -version = "0.1.5" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4742a071cd9694fc86f9fa1a08fa3e53d40cc899d7ee532295da2d085639fbc5" +checksum = "aad4cf7e378685c1af30f41b4832c29700325524c648d47752cabd5b97e7b09b" +dependencies = [ + "zip 0.6.6", +] [[package]] name = "figment" @@ -4927,9 +4980,9 @@ dependencies = [ [[package]] name = "iceberg" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e65918e701cf610ab0cea57f7f31db5bf4f973230c2c160244067bce01f7c5fa" +checksum = "1b795ef2e2197596efad630c5e8cc4b4ebdfc488c02dadc709bef0416e1ffd49" dependencies = [ "anyhow", "apache-avro", @@ -4951,22 +5004,19 @@ dependencies = [ "chrono", "derive_builder", "expect-test", + "fastnum", "flate2", "fnv", "futures", "itertools 0.13.0", "moka", "murmur3", - "num-bigint", "once_cell", - "opendal", "ordered-float 4.6.0", "parquet", "rand 0.8.5", - "reqsign", "reqwest 0.12.28", "roaring", - "rust_decimal", "serde", "serde_bytes", "serde_derive", @@ -4976,6 +5026,7 @@ dependencies = [ "strum 0.27.2", "tokio", "typed-builder 0.20.1", + "typetag", "url", "uuid", "zstd", @@ -4983,9 +5034,9 @@ dependencies = [ [[package]] name = "iceberg-catalog-rest" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6d5e120317ab88a3af332c17166aad101f2aee9bfb098d63d4525bdd5cc2da7" +checksum = "892fe71df3f5d1707c7ede042545051aca659a8a4a8ca828c5a13064338f56fc" dependencies = [ "async-trait", "chrono", @@ -5002,6 +5053,25 @@ dependencies = [ "uuid", ] +[[package]] +name = "iceberg-storage-opendal" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b8745ded8db2a4c2febc84ce2d5e9aaf5e2a1c0c9f6a82a1ea8134691e30a0b" +dependencies = [ + "anyhow", + "async-trait", + "bytes", + "cfg-if", + "iceberg", + "opendal", + "reqsign", + "reqwest 0.12.28", + "serde", + "typetag", + "url", +] + [[package]] name = "icu_collections" version = "2.1.1" @@ -5150,7 +5220,7 @@ dependencies = [ "tokio-tungstenite", "tracing", "trait-variant", - "tungstenite", + "tungstenite 0.29.0", "webpki-roots 1.0.6", ] @@ -5207,7 +5277,7 @@ dependencies = [ "tracing-subscriber", "uuid", "walkdir", - "zip", + "zip 8.3.0", ] [[package]] @@ -5233,7 +5303,7 @@ dependencies = [ "serde_json", "thiserror 2.0.18", "tokio", - "toml 1.0.6+spec-1.1.0", + "toml 1.0.7+spec-1.1.0", "tracing", "tracing-appender", "tracing-subscriber", @@ -5284,7 +5354,7 @@ dependencies = [ "tempfile", "thiserror 2.0.18", "tokio", - "toml 1.0.6+spec-1.1.0", + "toml 1.0.7+spec-1.1.0", "tower-http", "tracing", "tracing-opentelemetry", @@ -5374,7 +5444,7 @@ dependencies = [ "thiserror 2.0.18", "tokio", "tracing", - "tungstenite", + "tungstenite 0.29.0", "twox-hash", "ulid", "uuid", @@ -5427,6 +5497,7 @@ dependencies = [ "dashmap", "iceberg", "iceberg-catalog-rest", + "iceberg-storage-opendal", "iggy_connector_sdk", "once_cell", "parquet", @@ -5582,7 +5653,7 @@ dependencies = [ "clap", "futures-util", "iggy", - "lz4_flex", + "lz4_flex 0.13.0", "rand 0.10.0", "serde", "serde_json", @@ -5610,9 +5681,9 @@ dependencies = [ [[package]] name = "image" -version = "0.25.9" +version = "0.25.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6506c6c10786659413faa717ceebcb8f70731c0a60cbae39795fdf114519c1a" +checksum = "85ab80394333c02fe689eaf900ab500fbd0c2213da414687ebf995a65d5a6104" dependencies = [ "bytemuck", "byteorder-lite", @@ -5629,7 +5700,7 @@ dependencies = [ "rgb", "tiff", "zune-core 0.5.1", - "zune-jpeg 0.5.12", + "zune-jpeg 0.5.13", ] [[package]] @@ -5796,12 +5867,12 @@ dependencies = [ "test-case", "testcontainers-modules", "tokio", - "toml 1.0.6+spec-1.1.0", + "toml 1.0.7+spec-1.1.0", "tracing", "tracing-subscriber", "twox-hash", "uuid", - "zip", + "zip 8.3.0", ] [[package]] @@ -5907,9 +5978,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" [[package]] name = "jiff" @@ -6317,9 +6388,9 @@ dependencies = [ [[package]] name = "libz-sys" -version = "1.1.24" +version = "1.1.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4735e9cbde5aac84a5ce588f6b23a90b9b0b528f6c5a8db8a4aff300463a0839" +checksum = "d52f4c29e2a68ac30c9087e1b772dc9f44a2b66ed44edf2266cf2be9b03dafc1" dependencies = [ "cc", "libc", @@ -6454,9 +6525,18 @@ checksum = "112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154" [[package]] name = "lz4_flex" -version = "0.12.0" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "98c23545df7ecf1b16c303910a69b079e8e251d60f7dd2cc9b4177f2afaf1746" +dependencies = [ + "twox-hash", +] + +[[package]] +name = "lz4_flex" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab6473172471198271ff72e9379150e9dfd70d8e533e0752a27e515b48dd375e" +checksum = "db9a0d582c2874f68138a16ce1867e0ffde6c0bb0a0df85e1f36d04146db488a" dependencies = [ "twox-hash", ] @@ -6743,9 +6823,9 @@ checksum = "224484c5d09285a7b8cb0a0c117e847ebd14cb6e4470ecf68cdb89c503b0edb9" [[package]] name = "mongodb" -version = "3.5.1" +version = "3.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "803dd859e8afa084c255a8effd8000ff86f7c8076a50cd6d8c99e8f3496f75c2" +checksum = "2c5941683db2ab2697f71e58dc0319024e808d3b28e7cf20f4bfb445fe54a30b" dependencies = [ "base64 0.22.1", "bitflags 2.11.0", @@ -6789,9 +6869,9 @@ dependencies = [ [[package]] name = "mongodb-internal-macros" -version = "3.5.1" +version = "3.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a973ef3dd3dbc6f6e65bbdecfd9ec5e781b9e7493b0f369a7c62e35d8e5ae2c8" +checksum = "47021a12bbf0dffde9c890fa2d36ff6ae342c532016226b04a42301b2b912660" dependencies = [ "macro_magic", "proc-macro2", @@ -6801,9 +6881,9 @@ dependencies = [ [[package]] name = "moxcms" -version = "0.7.11" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac9557c559cd6fc9867e122e20d2cbefc9ca29d80d027a8e39310920ed2f0a97" +checksum = "bb85c154ba489f01b25c0d36ae69a87e4a1c73a72631fc6c0eb6dde34a73e44b" dependencies = [ "num-traits", "pxfm", @@ -7189,9 +7269,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.21.3" +version = "1.21.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" dependencies = [ "critical-section", "portable-atomic", @@ -7240,9 +7320,9 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.75" +version = "0.10.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08838db121398ad17ab8531ce9de97b244589089e290a384c900cb9ff7434328" +checksum = "951c002c75e16ea2c65b8c7e4d3d51d5530d8dfa7d060b4776828c88cfb18ecf" dependencies = [ "bitflags 2.11.0", "cfg-if", @@ -7281,9 +7361,9 @@ dependencies = [ [[package]] name = "openssl-sys" -version = "0.9.111" +version = "0.9.112" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82cab2d520aa75e3c58898289429321eb788c3106963d0dc886ec7a5f4adc321" +checksum = "57d55af3b3e226502be1526dfdba67ab0e9c96fc293004e79576b2b9edb0dbdb" dependencies = [ "cc", "libc", @@ -7334,9 +7414,9 @@ dependencies = [ [[package]] name = "opentelemetry-otlp" -version = "0.31.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a2366db2dca4d2ad033cad11e6ee42844fd727007af5ad04a1730f4cb8163bf" +checksum = "1f69cd6acbb9af919df949cd1ec9e5e7fdc2ef15d234b6b795aaa525cc02f71f" dependencies = [ "http 1.4.0", "opentelemetry", @@ -7522,7 +7602,7 @@ dependencies = [ "futures", "half", "hashbrown 0.16.1", - "lz4_flex", + "lz4_flex 0.12.1", "num-bigint", "num-integer", "num-traits", @@ -7889,9 +7969,9 @@ checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49" [[package]] name = "portable-atomic-util" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a9db96d7fa8782dd8c15ce32ffe8680bbd1e978a43bf51a34d39483540495f5" +checksum = "091397be61a01d4be58e7841595bd4bfedb15f1cd54977d79b8271e94ed799a3" dependencies = [ "portable-atomic", ] @@ -7998,7 +8078,7 @@ version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e67ba7e9b2b56446f1d419b1d807906278ffa1a658a8a5d8a39dcb1f5a78614f" dependencies = [ - "toml_edit 0.25.4+spec-1.1.0", + "toml_edit 0.25.5+spec-1.1.0", ] [[package]] @@ -8472,9 +8552,9 @@ dependencies = [ [[package]] name = "ravif" -version = "0.12.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef69c1990ceef18a116855938e74793a5f7496ee907562bd0857b6ac734ab285" +checksum = "e52310197d971b0f5be7fe6b57530dcd27beb35c1b013f29d66c1ad73fbbcc45" dependencies = [ "avif-serialize", "imgref", @@ -8887,9 +8967,9 @@ dependencies = [ [[package]] name = "rmcp" -version = "1.1.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee4950422f87cf98fffc36946ad672c3024750b3c301491599715b7d6497dfbc" +checksum = "ba6b9d2f0efe2258b23767f1f9e0054cfbcac9c2d6f81a031214143096d7864f" dependencies = [ "async-trait", "base64 0.22.1", @@ -8919,9 +8999,9 @@ dependencies = [ [[package]] name = "rmcp-macros" -version = "1.1.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f9a2cbdcc704fa56c3fe79c681bd8f739d77c68ede3a670faeb6df50f836874" +checksum = "ab9d95d7ed26ad8306352b0d5f05b593222b272790564589790d210aa15caa9e" dependencies = [ "darling 0.23.0", "proc-macro2", @@ -9196,9 +9276,9 @@ checksum = "f87165f0995f63a9fbeea62b64d10b4d9d8e78ec6d7d51fb2125fda7bb36788f" [[package]] name = "rustls-webpki" -version = "0.103.9" +version = "0.103.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7df23109aa6c1567d1c575b9952556388da57401e4ace1d15f79eedad0d8f53" +checksum = "df33b2b81ac578cabaf06b89b0631153a3f416b0a886e8a7a1707fb51abbd1ef" dependencies = [ "aws-lc-rs", "ring", @@ -9256,9 +9336,9 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.28" +version = "0.1.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "891d81b926048e76efe18581bf793546b4c0eaf8448d72be8de2bbee5fd166e1" +checksum = "91c1b7e4904c873ef0710c1f407dde2e6287de2bebc1bbbf7d430bb7cbffd939" dependencies = [ "windows-sys 0.61.2", ] @@ -9428,6 +9508,15 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "serde-big-array" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11fc7cc2c76d73e0f27ee52abbd64eec84d46f370c88371120433196934e4b7f" +dependencies = [ + "serde", +] + [[package]] name = "serde-wasm-bindgen" version = "0.6.5" @@ -9562,9 +9651,9 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.17.0" +version = "3.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "381b283ce7bc6b476d903296fb59d0d36633652b633b27f64db4fb46dcbfc3b9" +checksum = "dd5414fad8e6907dbdd5bc441a50ae8d6e26151a03b1de04d89a5576de61d01f" dependencies = [ "base64 0.22.1", "chrono", @@ -9581,11 +9670,11 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.17.0" +version = "3.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6d4e30573c8cb306ed6ab1dca8423eec9a463ea0e155f45399455e0368b27e0" +checksum = "d3db8978e608f1fe7357e211969fd9abdcae80bac1ba7a3369bb7eb6b404eb65" dependencies = [ - "darling 0.21.3", + "darling 0.23.0", "proc-macro2", "quote", "syn 2.0.117", @@ -9691,13 +9780,12 @@ dependencies = [ "sysinfo 0.38.4", "tempfile", "thiserror 2.0.18", - "toml 1.0.6+spec-1.1.0", + "toml 1.0.7+spec-1.1.0", "tower-http", "tracing", "tracing-appender", "tracing-opentelemetry", "tracing-subscriber", - "tungstenite", "ulid", "uuid", "vergen-git2", @@ -10441,9 +10529,9 @@ dependencies = [ [[package]] name = "sys_traits" -version = "0.1.24" +version = "0.1.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5410f31d223892c1ce7a098da845c99d023b4c7f18632bc8f09e60dfae3cbb75" +checksum = "fe719c6bb50991671073b1469be68ccbcb5a2a2730873eab49b88c35a908037e" dependencies = [ "sys_traits_macros", ] @@ -10507,9 +10595,9 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tar" -version = "0.4.44" +version = "0.4.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d863878d212c87a19c1a610eb53bb01fe12951c0501cf5a0d65f724914a667a" +checksum = "22692a6476a21fa75fdfc11d452fda482af402c008cdbaf3476414e122040973" dependencies = [ "filetime", "libc", @@ -10518,9 +10606,9 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.26.0" +version = "3.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82a72c767771b47409d2345987fda8628641887d5466101319899796367354a0" +checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd" dependencies = [ "fastrand", "getrandom 0.4.2", @@ -10697,16 +10785,16 @@ dependencies = [ [[package]] name = "tiff" -version = "0.10.3" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af9605de7fee8d9551863fd692cce7637f548dbd9db9180fcc07ccc6d26c336f" +checksum = "b63feaf3343d35b6ca4d50483f94843803b0f51634937cc2ec519fc32232bc52" dependencies = [ "fax", "flate2", "half", "quick-error", "weezl", - "zune-jpeg 0.4.21", + "zune-jpeg 0.5.13", ] [[package]] @@ -10789,9 +10877,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa5fdc3bce6191a1dbc8c02d5c8bffcf557bafa17c124c5264a458f1b0613fa" +checksum = "3e61e67053d25a4e82c844e8424039d9745781b3fc4f32b8d55ed50f5f667ef3" dependencies = [ "tinyvec_macros", ] @@ -10853,9 +10941,9 @@ dependencies = [ [[package]] name = "tokio-tungstenite" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d25a406cddcc431a75d3d9afc6a7c0f7428d4891dd973e4d54c56b46127bf857" +checksum = "8f72a05e828585856dacd553fba484c242c46e391fb0e58917c942ee9202915c" dependencies = [ "futures-util", "log", @@ -10863,7 +10951,7 @@ dependencies = [ "rustls-pki-types", "tokio", "tokio-rustls", - "tungstenite", + "tungstenite 0.29.0", "webpki-roots 0.26.11", ] @@ -10883,9 +10971,9 @@ dependencies = [ [[package]] name = "tokise" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "decf97738ce15b9e9cc1671ea29b0f6c56538719e1a092d19cc2134bf144e40e" +checksum = "ba44a1b36f42a95bd21b5e4acc1468547f75a73e7cf619312408d1f74c7fb687" dependencies = [ "futures", "gloo", @@ -10912,17 +11000,17 @@ dependencies = [ [[package]] name = "toml" -version = "1.0.6+spec-1.1.0" +version = "1.0.7+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "399b1124a3c9e16766831c6bba21e50192572cdd98706ea114f9502509686ffc" +checksum = "dd28d57d8a6f6e458bc0b8784f8fdcc4b99a437936056fa122cb234f18656a96" dependencies = [ "indexmap 2.13.0", "serde_core", "serde_spanned 1.0.4", - "toml_datetime 1.0.0+spec-1.1.0", + "toml_datetime 1.0.1+spec-1.1.0", "toml_parser", "toml_writer", - "winnow 0.7.15", + "winnow 1.0.0", ] [[package]] @@ -10936,9 +11024,9 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "1.0.0+spec-1.1.0" +version = "1.0.1+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32c2555c699578a4f59f0cc68e5116c8d7cabbd45e1409b989d4be085b53f13e" +checksum = "9b320e741db58cac564e26c607d3cc1fdc4a88fd36c879568c07856ed83ff3e9" dependencies = [ "serde_core", ] @@ -10970,23 +11058,23 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.25.4+spec-1.1.0" +version = "0.25.5+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7193cbd0ce53dc966037f54351dbbcf0d5a642c7f0038c382ef9e677ce8c13f2" +checksum = "8ca1a40644a28bce036923f6a431df0b34236949d111cc07cb6dca830c9ef2e1" dependencies = [ "indexmap 2.13.0", - "toml_datetime 1.0.0+spec-1.1.0", + "toml_datetime 1.0.1+spec-1.1.0", "toml_parser", - "winnow 0.7.15", + "winnow 1.0.0", ] [[package]] name = "toml_parser" -version = "1.0.9+spec-1.1.0" +version = "1.0.10+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "702d4415e08923e7e1ef96cd5727c0dfed80b4d2fa25db9647fe5eb6f7c5a4c4" +checksum = "7df25b4befd31c4816df190124375d5a20c6b6921e2cad937316de3fccd63420" dependencies = [ - "winnow 0.7.15", + "winnow 1.0.0", ] [[package]] @@ -10997,9 +11085,9 @@ checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" [[package]] name = "toml_writer" -version = "1.0.6+spec-1.1.0" +version = "1.0.7+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab16f14aed21ee8bfd8ec22513f7287cd4a91aa92e44edfe2c17ddd004e92607" +checksum = "f17aaa1c6e3dc22b1da4b6bba97d066e354c7945cac2f7852d4e4e7ca7a6b56d" [[package]] name = "tonic" @@ -11183,9 +11271,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.22" +version = "0.3.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f30143827ddab0d256fd843b7a66d164e9f271cfa0dde49142c5ca0ca291f1e" +checksum = "cb7f578e5945fb242538965c2d0b04418d38ec25c79d160cd279bf0731c8d319" dependencies = [ "matchers", "nu-ansi-term", @@ -11244,6 +11332,24 @@ dependencies = [ "utf-8", ] +[[package]] +name = "tungstenite" +version = "0.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c01152af293afb9c7c2a57e4b559c5620b421f6d133261c60dd2d0cdb38e6b8" +dependencies = [ + "bytes", + "data-encoding", + "http 1.4.0", + "httparse", + "log", + "rand 0.9.2", + "rustls", + "rustls-pki-types", + "sha1", + "thiserror 2.0.18", +] + [[package]] name = "twox-hash" version = "2.1.2" @@ -11319,12 +11425,42 @@ version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e28f89b80c87b8fb0cf04ab448d5dd0dd0ade2f8891bae878de66a75a28600e" +[[package]] +name = "typeid" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" + [[package]] name = "typenum" version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" +[[package]] +name = "typetag" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be2212c8a9b9bcfca32024de14998494cf9a5dfa59ea1b829de98bac374b86bf" +dependencies = [ + "erased-serde", + "inventory", + "once_cell", + "serde", + "typetag-impl", +] + +[[package]] +name = "typetag-impl" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "27a7a9b72ba121f6f1f6c3632b85604cac41aedb5ddc70accbebb6cac83de846" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + [[package]] name = "ucd-trie" version = "0.1.7" @@ -11467,9 +11603,9 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "ureq" -version = "3.2.0" +version = "3.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdc97a28575b85cfedf2a7e7d3cc64b3e11bd8ac766666318003abbacc7a21fc" +checksum = "4ab5172ab0c2b6d01a9bb4f9332f7c1211193ea002742188040d09ea4eafe867" dependencies = [ "base64 0.22.1", "flate2", @@ -11478,7 +11614,7 @@ dependencies = [ "rustls", "rustls-pki-types", "ureq-proto", - "utf-8", + "utf8-zero", "webpki-roots 1.0.6", ] @@ -11552,6 +11688,12 @@ version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1292c0d970b54115d14f2492fe0170adf21d68a1de108eebc51c1df4f346a091" +[[package]] +name = "utf8-zero" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8c0a043c9540bae7c578c88f91dda8bd82e59ae27c21baca69c8b191aaf5a6e" + [[package]] name = "utf8_iter" version = "1.0.4" @@ -12524,6 +12666,15 @@ dependencies = [ "memchr", ] +[[package]] +name = "winnow" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a90e88e4667264a994d34e6d1ab2d26d398dcdca8b7f52bec8668957517fc7d8" +dependencies = [ + "memchr", +] + [[package]] name = "winreg" version = "0.50.0" @@ -12700,9 +12851,9 @@ dependencies = [ [[package]] name = "yew" -version = "0.22.1" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94b446be974884d87d58548f1662bc50c051996203a17d2558f8d6c56942b6ac" +checksum = "2c154fadfa97eabdd3f3b79345ceeb9c05ee8f13f76d3d881d17fba618bf558d" dependencies = [ "console_error_panic_hook", "futures", @@ -12725,9 +12876,9 @@ dependencies = [ [[package]] name = "yew-macro" -version = "0.22.1" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a708a4027c143be6ca160a341700b59f9ecc36a7ebd95e3c477018de8cf71c75" +checksum = "c08b883d84a035f57519d057f65a2a07ae25f1884ad485e1a9a523c9d880c1ad" dependencies = [ "prettyplease", "proc-macro-error", @@ -12739,9 +12890,9 @@ dependencies = [ [[package]] name = "yew-router" -version = "0.19.0" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "415cb628900ddf1eaf55ebd04163adf1ea80d3f5a9832a876554f9c0fdd4c282" +checksum = "870bd2a1aa6d608c0c789c122654e25f4927bb6bfe344cc0da3b630ac3c73260" dependencies = [ "gloo", "js-sys", @@ -12758,9 +12909,9 @@ dependencies = [ [[package]] name = "yew-router-macro" -version = "0.19.0" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e87a3ce33434ab66a700edbaf2cc8a417d9b89f00a6fd8216fd6ac83b0e7b1c" +checksum = "8399f1d134ab8e69abc7cded19f114621d520bd9c79c5a0f34091bf664d7325b" dependencies = [ "proc-macro2", "quote", @@ -12792,18 +12943,18 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.8.42" +version = "0.8.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2578b716f8a7a858b7f02d5bd870c14bf4ddbbcf3a4c05414ba6503640505e3" +checksum = "efbb2a062be311f2ba113ce66f697a4dc589f85e78a4aea276200804cea0ed87" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.42" +version = "0.8.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e6cc098ea4d3bd6246687de65af3f920c430e236bee1e3bf2e441463f08a02f" +checksum = "0e8bc7269b54418e7aeeef514aa68f8690b8c0489a06b0136e5f57c4c5ccab89" dependencies = [ "proc-macro2", "quote", @@ -12886,9 +13037,21 @@ dependencies = [ [[package]] name = "zip" -version = "8.2.0" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b680f2a0cd479b4cff6e1233c483fdead418106eae419dc60200ae9850f6d004" +checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" +dependencies = [ + "byteorder", + "crc32fast", + "crossbeam-utils", + "flate2", +] + +[[package]] +name = "zip" +version = "8.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a243cfad17427fc077f529da5a95abe4e94fd2bfdb601611870a6557cc67657" dependencies = [ "crc32fast", "flate2", @@ -12982,9 +13145,9 @@ dependencies = [ [[package]] name = "zune-jpeg" -version = "0.5.12" +version = "0.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "410e9ecef634c709e3831c2cfdb8d9c32164fae1c67496d5b68fff728eec37fe" +checksum = "ec5f41c76397b7da451efd19915684f727d7e1d516384ca6bd0ec43ec94de23c" dependencies = [ "zune-core 0.5.1", ] diff --git a/Cargo.toml b/Cargo.toml index 2abd1fe87..3843f5649 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -71,7 +71,7 @@ argon2 = "0.5.3" arrow = "57.3.0" arrow-array = "57.3.0" arrow-json = "57.3.0" -assert_cmd = "2.1.2" +assert_cmd = "2.2.0" async-broadcast = "0.7.2" async-channel = "2.5.0" async-dropper = { version = "0.3.1", features = ["tokio", "simple"] } @@ -85,16 +85,16 @@ bench-dashboard-server = { path = "core/bench/dashboard/server" } bench-dashboard-shared = { path = "core/bench/dashboard/shared" } bench-report = { path = "core/bench/report" } bench-runner = { path = "core/bench/runner" } -bit-set = "0.8.0" +bit-set = "0.9.1" blake3 = "1.8.3" -bon = "3.9.0" +bon = "3.9.1" byte-unit = { version = "5.2.0", default-features = false, features = ["serde", "byte", "std"] } bytemuck = { version = "1.25", features = ["derive", "min_const_generics"] } bytes = "1.11.1" charming = "0.6.0" chrono = { version = "0.4.44", features = ["serde"] } -clap = { version = "4.5.60", features = ["derive", "wrap_help"] } -clap_complete = "4.5.66" +clap = { version = "4.6.0", features = ["derive", "wrap_help"] } +clap_complete = "4.6.0" clock = { path = "core/clock" } colored = "3.1.1" comfy-table = "7.2.2" @@ -118,11 +118,11 @@ configs_derive = { path = "core/configs_derive", version = "0.1.0" } consensus = { path = "core/consensus" } console-subscriber = "0.5.0" crossbeam = "0.8.4" -crossfire = "3.1.5" +crossfire = "3.1.7" ctor = "0.6.3" ctrlc = { version = "3.5", features = ["termination"] } cucumber = "0.22" -cyper = { version = "0.8.2", features = ["rustls"], default-features = false } +cyper = { version = "0.8.3", features = ["rustls"], default-features = false } cyper-axum = { version = "0.8.0" } darling = "0.23" dashmap = "6.1.0" @@ -139,7 +139,7 @@ enumset = "1.1" env_logger = "0.11.9" err_trail = { version = "0.11.0", features = ["tracing"] } error_set = "0.9.1" -figlet-rs = "0.1.5" +figlet-rs = "1.0.0" figment = { version = "0.10.19", features = ["toml", "env"] } file-operation = "0.8.19" flatbuffers = "25.12.19" @@ -157,8 +157,9 @@ hostname = "0.4.2" human-repr = "1.1.0" humantime = "2.3.0" hwlocality = "1.0.0-alpha.11" -iceberg = "0.8.0" -iceberg-catalog-rest = "0.8.0" +iceberg = "0.9.0" +iceberg-catalog-rest = "0.9.0" +iceberg-storage-opendal = "0.9.0" iggy = { path = "core/sdk", version = "0.9.3-edge.1" } iggy-cli = { path = "core/cli", version = "0.11.3-edge.1" } iggy_binary_protocol = { path = "core/binary_protocol", version = "0.9.3-edge.1" } @@ -174,22 +175,22 @@ left-right = "0.11" lending-iterator = "0.1.7" libc = "0.2.183" log = "0.4.29" -lz4_flex = "0.12.0" +lz4_flex = "0.13.0" message_bus = { path = "core/message_bus" } metadata = { path = "core/metadata" } mimalloc = "0.1" mime_guess = "2.0" mockall = "0.14.0" moka = { version = "0.12.14", features = ["future"] } -mongodb = { version = "3.5.1", features = ["rustls-tls"] } +mongodb = { version = "3.5.2", features = ["rustls-tls"] } nix = { version = "0.31.2", features = ["fs", "resource", "sched"] } nonzero_lit = "0.1.2" notify = "8.2.0" octocrab = "0.49.5" -once_cell = "1.21.3" +once_cell = "1.21.4" opentelemetry = { version = "0.31.0", features = ["trace", "logs"] } opentelemetry-appender-tracing = { version = "0.31.1", features = ["log"] } -opentelemetry-otlp = { version = "0.31.0", features = [ +opentelemetry-otlp = { version = "0.31.1", features = [ "logs", "trace", "grpc-tonic", @@ -231,7 +232,7 @@ reqwest-retry = "0.9.1" reqwest-tracing = "0.7.0" ring = "0.17.14" ringbuffer = "0.16.0" -rmcp = "1.1.1" +rmcp = "1.2.0" rmp-serde = "1.3.1" rolling-file = "0.2.0" rust-embed = "8.11.0" @@ -242,7 +243,7 @@ secrecy = { version = "0.10", features = ["serde"] } send_wrapper = "0.6.0" serde = { version = "1.0.228", features = ["derive", "rc"] } serde_json = "1.0.149" -serde_with = { version = "3.17.0", features = ["base64", "macros"] } +serde_with = { version = "3.18.0", features = ["base64", "macros"] } serde_yaml_ng = "0.10.0" serial_test = "3.4.0" server = { path = "core/server" } @@ -261,26 +262,26 @@ strum = { version = "0.28.0", features = ["derive"] } strum_macros = "0.28.0" syn = { version = "2", features = ["full", "extra-traits"] } sysinfo = "0.38.4" -tempfile = "3.26.0" +tempfile = "3.27.0" test-case = "3.3.1" testcontainers-modules = { version = "0.15.0", features = ["postgres"] } thiserror = "2.0.18" tokio = { version = "1.50.0", features = ["full"] } tokio-rustls = "0.26.4" -tokio-tungstenite = { version = "0.28", features = ["rustls-tls-webpki-roots"] } +tokio-tungstenite = { version = "0.29", features = ["rustls-tls-webpki-roots"] } tokio-util = { version = "0.7.18", features = ["compat"] } -toml = "1.0.6" +toml = "1.0.7" tower-http = { version = "0.6.8", features = ["add-extension", "cors", "trace"] } tracing = "0.1.44" tracing-appender = "0.2.4" tracing-opentelemetry = "0.32.1" -tracing-subscriber = { version = "0.3.22", default-features = false, features = [ +tracing-subscriber = { version = "0.3.23", default-features = false, features = [ "fmt", "env-filter", "ansi", ] } trait-variant = "0.1.2" -tungstenite = "0.28.0" +tungstenite = "0.29.0" twox-hash = { version = "2.1.2", features = ["xxhash32"] } ulid = "1.2.1" uuid = { version = "1.22.0", features = ["v4", "v7", "fast-rng", "serde", "zerocopy"] } @@ -297,9 +298,9 @@ web-sys = { version = "0.3", features = [ "ResizeObserverEntry", ] } webpki-roots = "1.0.6" -yew = { version = "0.22", features = ["csr"] } -yew-router = "0.19" -zip = { version = "8.2.0", default-features = false, features = ["deflate"] } +yew = { version = "0.23", features = ["csr"] } +yew-router = "0.20" +zip = { version = "8.3.0", default-features = false, features = ["deflate"] } [profile.release] lto = true diff --git a/DEPENDENCIES.md b/DEPENDENCIES.md index 804404fb9..e89e01db6 100644 --- a/DEPENDENCIES.md +++ b/DEPENDENCIES.md @@ -25,9 +25,9 @@ alloc-no-stdlib: 2.0.4, "BSD-3-Clause", alloc-stdlib: 0.2.2, "BSD-3-Clause", allocator-api2: 0.2.21, "Apache-2.0 OR MIT", android_system_properties: 0.1.5, "Apache-2.0 OR MIT", -anstream: 0.6.21, "Apache-2.0 OR MIT", -anstyle: 1.0.13, "Apache-2.0 OR MIT", -anstyle-parse: 0.2.7, "Apache-2.0 OR MIT", +anstream: 1.0.0, "Apache-2.0 OR MIT", +anstyle: 1.0.14, "Apache-2.0 OR MIT", +anstyle-parse: 1.0.0, "Apache-2.0 OR MIT", anstyle-query: 1.1.5, "Apache-2.0 OR MIT", anstyle-wincon: 3.0.11, "Apache-2.0 OR MIT", anyhow: 1.0.102, "Apache-2.0 OR MIT", @@ -55,7 +55,7 @@ as-slice: 0.2.1, "Apache-2.0 OR MIT", asn1-rs: 0.7.1, "Apache-2.0 OR MIT", asn1-rs-derive: 0.6.0, "Apache-2.0 OR MIT", asn1-rs-impl: 0.2.0, "Apache-2.0 OR MIT", -assert_cmd: 2.1.2, "Apache-2.0 OR MIT", +assert_cmd: 2.2.0, "Apache-2.0 OR MIT", astral-tokio-tar: 0.5.6, "Apache-2.0 OR MIT", async-broadcast: 0.7.2, "Apache-2.0 OR MIT", async-channel: 2.5.0, "Apache-2.0 OR MIT", @@ -79,8 +79,8 @@ autotools: 0.2.7, "MIT", av-scenechange: 0.14.1, "MIT", av1-grain: 0.2.5, "BSD-2-Clause", avif-serialize: 0.8.8, "BSD-3-Clause", -aws-lc-rs: 1.16.1, "(Apache-2.0 OR ISC) AND ISC", -aws-lc-sys: 0.38.0, "(Apache-2.0 OR ISC) AND ISC AND OpenSSL", +aws-lc-rs: 1.16.2, "(Apache-2.0 OR ISC) AND ISC", +aws-lc-sys: 0.39.0, "(Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR ISC OR MIT-0) AND (Apache-2.0 OR ISC) AND Apache-2.0 AND BSD-3-Clause AND ISC AND MIT", axum: 0.8.8, "MIT", axum-core: 0.5.6, "MIT", axum-macros: 0.5.0, "MIT", @@ -103,7 +103,9 @@ bimap: 0.6.3, "Apache-2.0 OR MIT", bincode: 1.3.3, "MIT", bindgen: 0.71.1, "BSD-3-Clause", bit-set: 0.8.0, "Apache-2.0 OR MIT", +bit-set: 0.9.1, "Apache-2.0 OR MIT", bit-vec: 0.8.0, "Apache-2.0 OR MIT", +bit-vec: 0.9.1, "Apache-2.0 OR MIT", bit_field: 0.10.3, "Apache-2.0 OR MIT", bitflags: 1.3.2, "Apache-2.0 OR MIT", bitflags: 2.11.0, "Apache-2.0 OR MIT", @@ -113,13 +115,14 @@ blake2: 0.10.6, "Apache-2.0 OR MIT", blake3: 1.8.3, "Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR CC0-1.0", block-buffer: 0.10.4, "Apache-2.0 OR MIT", block2: 0.6.2, "MIT", -bollard: 0.20.1, "Apache-2.0", +bnum: 0.12.1, "Apache-2.0 OR MIT", +bollard: 0.20.2, "Apache-2.0", bollard-buildkit-proto: 0.7.0, "Apache-2.0", bollard-stubs: 1.52.1-rc.29.1.3, "Apache-2.0", -bon: 3.9.0, "Apache-2.0 OR MIT", -bon-macros: 3.9.0, "Apache-2.0 OR MIT", -borsh: 1.6.0, "Apache-2.0 OR MIT", -borsh-derive: 1.6.0, "Apache-2.0", +bon: 3.9.1, "Apache-2.0 OR MIT", +bon-macros: 3.9.1, "Apache-2.0 OR MIT", +borsh: 1.6.1, "Apache-2.0 OR MIT", +borsh-derive: 1.6.1, "Apache-2.0", brotli: 8.0.2, "BSD-3-Clause AND MIT", brotli-decompressor: 5.0.0, "BSD-3-Clause OR MIT", bson: 2.15.0, "MIT", @@ -142,7 +145,7 @@ capacity_builder: 0.5.0, "MIT", capacity_builder_macros: 0.3.0, "MIT", cargo-platform: 0.3.2, "Apache-2.0 OR MIT", cargo_metadata: 0.23.1, "MIT", -cc: 1.2.56, "Apache-2.0 OR MIT", +cc: 1.2.57, "Apache-2.0 OR MIT", cesu8: 1.1.0, "Apache-2.0 OR MIT", cexpr: 0.6.0, "Apache-2.0 OR MIT", cfg-if: 1.0.4, "Apache-2.0 OR MIT", @@ -153,16 +156,16 @@ charming_macros: 0.1.0, "Apache-2.0 OR MIT", chrono: 0.4.44, "Apache-2.0 OR MIT", cipher: 0.4.4, "Apache-2.0 OR MIT", clang-sys: 1.8.1, "Apache-2.0", -clap: 4.5.60, "Apache-2.0 OR MIT", -clap_builder: 4.5.60, "Apache-2.0 OR MIT", -clap_complete: 4.5.66, "Apache-2.0 OR MIT", -clap_derive: 4.5.55, "Apache-2.0 OR MIT", -clap_lex: 1.0.0, "Apache-2.0 OR MIT", +clap: 4.6.0, "Apache-2.0 OR MIT", +clap_builder: 4.6.0, "Apache-2.0 OR MIT", +clap_complete: 4.6.0, "Apache-2.0 OR MIT", +clap_derive: 4.6.0, "Apache-2.0 OR MIT", +clap_lex: 1.1.0, "Apache-2.0 OR MIT", clock: 0.1.0, "N/A", cmake: 0.1.57, "Apache-2.0 OR MIT", cobs: 0.3.0, "Apache-2.0 OR MIT", color_quant: 1.1.0, "MIT", -colorchoice: 1.0.4, "Apache-2.0 OR MIT", +colorchoice: 1.0.5, "Apache-2.0 OR MIT", colored: 3.1.1, "MPL-2.0", combine: 4.6.7, "MIT", comfy-table: 7.2.2, "MIT", @@ -184,7 +187,7 @@ concurrent-queue: 2.5.0, "Apache-2.0 OR MIT", configs: 0.1.0, "Apache-2.0", configs_derive: 0.1.0, "Apache-2.0", consensus: 0.1.0, "Apache-2.0", -console: 0.16.2, "MIT", +console: 0.16.3, "MIT", console_error_panic_hook: 0.1.7, "Apache-2.0 OR MIT", const-oid: 0.9.6, "Apache-2.0 OR MIT", const-random: 0.1.18, "Apache-2.0 OR MIT", @@ -212,7 +215,7 @@ crossbeam-deque: 0.8.6, "Apache-2.0 OR MIT", crossbeam-epoch: 0.9.18, "Apache-2.0 OR MIT", crossbeam-queue: 0.3.12, "Apache-2.0 OR MIT", crossbeam-utils: 0.8.21, "Apache-2.0 OR MIT", -crossfire: 3.1.5, "Apache-2.0", +crossfire: 3.1.7, "Apache-2.0", crossterm: 0.29.0, "MIT", crossterm_winapi: 0.9.1, "MIT", crunchy: 0.2.4, "MIT", @@ -227,7 +230,7 @@ cucumber-codegen: 0.22.1, "Apache-2.0 OR MIT", cucumber-expressions: 0.5.0, "Apache-2.0 OR MIT", curve25519-dalek: 4.1.3, "BSD-3-Clause", curve25519-dalek-derive: 0.1.1, "Apache-2.0 OR MIT", -cyper: 0.8.2, "MIT", +cyper: 0.8.3, "MIT", cyper-axum: 0.8.0, "MIT", cyper-core: 0.8.0, "MIT", darling: 0.20.11, "MIT", @@ -257,7 +260,7 @@ der-parser: 10.0.0, "Apache-2.0 OR MIT", deranged: 0.5.8, "Apache-2.0 OR MIT", derive-new: 0.7.0, "MIT", derive-syn-parse: 0.2.0, "Apache-2.0 OR MIT", -derive-where: 1.6.0, "Apache-2.0 OR MIT", +derive-where: 1.6.1, "Apache-2.0 OR MIT", derive_builder: 0.20.2, "Apache-2.0 OR MIT", derive_builder_core: 0.20.2, "Apache-2.0 OR MIT", derive_builder_macro: 0.20.2, "Apache-2.0 OR MIT", @@ -270,7 +273,7 @@ dirs: 6.0.0, "Apache-2.0 OR MIT", dirs-sys: 0.5.0, "Apache-2.0 OR MIT", dispatch2: 0.3.1, "Apache-2.0 OR MIT OR Zlib", displaydoc: 0.2.5, "Apache-2.0 OR MIT", -dissimilar: 1.0.10, "Apache-2.0", +dissimilar: 1.0.11, "Apache-2.0", dlopen2: 0.8.2, "MIT", dlopen2_derive: 0.4.3, "MIT", dlv-list: 0.5.2, "Apache-2.0 OR MIT", @@ -300,13 +303,14 @@ enumset_derive: 0.14.0, "Apache-2.0 OR MIT", equator: 0.4.2, "MIT", equator-macro: 0.4.2, "MIT", equivalent: 1.0.2, "Apache-2.0 OR MIT", +erased-serde: 0.4.10, "Apache-2.0 OR MIT", err_trail: 0.11.0, "Apache-2.0", errno: 0.3.14, "Apache-2.0 OR MIT", error_set: 0.9.1, "Apache-2.0", error_set_impl: 0.9.1, "Apache-2.0", etcetera: 0.8.0, "Apache-2.0 OR MIT", etcetera: 0.11.0, "Apache-2.0 OR MIT", -euclid: 0.22.13, "Apache-2.0 OR MIT", +euclid: 0.22.14, "Apache-2.0 OR MIT", event-listener: 5.4.1, "Apache-2.0 OR MIT", event-listener-strategy: 0.5.4, "Apache-2.0 OR MIT", expect-test: 1.5.1, "Apache-2.0 OR MIT", @@ -315,6 +319,7 @@ ext-trait: 1.0.1, "Apache-2.0 OR MIT OR Zlib", ext-trait-proc_macros: 1.0.1, "Apache-2.0 OR MIT OR Zlib", extension-traits: 1.0.1, "Apache-2.0 OR MIT OR Zlib", fastbloom: 0.14.1, "Apache-2.0 OR MIT", +fastnum: 0.7.4, "Apache-2.0 OR MIT", fastrand: 2.3.0, "Apache-2.0 OR MIT", fax: 0.2.6, "MIT", fax_derive: 0.2.0, "MIT", @@ -322,7 +327,7 @@ fdeflate: 0.3.7, "Apache-2.0 OR MIT", ferroid: 0.8.9, "Apache-2.0 OR MIT", ff: 0.13.1, "Apache-2.0 OR MIT", fiat-crypto: 0.2.9, "Apache-2.0 OR BSD-1-Clause OR MIT", -figlet-rs: 0.1.5, "Apache-2.0", +figlet-rs: 1.0.0, "Apache-2.0", figment: 0.10.19, "Apache-2.0 OR MIT", file-operation: 0.8.19, "MIT", filetime: 0.2.27, "Apache-2.0 OR MIT", @@ -432,8 +437,9 @@ hyper-util: 0.1.20, "MIT", hyperlocal: 0.9.1, "MIT", iana-time-zone: 0.1.65, "Apache-2.0 OR MIT", iana-time-zone-haiku: 0.1.2, "Apache-2.0 OR MIT", -iceberg: 0.8.0, "Apache-2.0", -iceberg-catalog-rest: 0.8.0, "Apache-2.0", +iceberg: 0.9.0, "Apache-2.0", +iceberg-catalog-rest: 0.9.0, "Apache-2.0", +iceberg-storage-opendal: 0.9.0, "Apache-2.0", icu_collections: 2.1.1, "Unicode-3.0", icu_locale_core: 2.1.1, "Unicode-3.0", icu_normalizer: 2.1.1, "Unicode-3.0", @@ -466,7 +472,7 @@ iggy_connector_sdk: 0.2.1-edge.1, "Apache-2.0", iggy_connector_stdout_sink: 0.3.2-edge.1, "Apache-2.0", iggy_examples: 0.0.6, "Apache-2.0", ignore: 0.4.25, "MIT OR Unlicense", -image: 0.25.9, "Apache-2.0 OR MIT", +image: 0.25.10, "Apache-2.0 OR MIT", image-webp: 0.2.4, "Apache-2.0 OR MIT", imagesize: 0.13.0, "MIT", imgref: 1.12.0, "Apache-2.0 OR CC0-1.0", @@ -493,7 +499,7 @@ iri-string: 0.7.10, "Apache-2.0 OR MIT", is_terminal_polyfill: 1.70.2, "Apache-2.0 OR MIT", itertools: 0.13.0, "Apache-2.0 OR MIT", itertools: 0.14.0, "Apache-2.0 OR MIT", -itoa: 1.0.17, "Apache-2.0 OR MIT", +itoa: 1.0.18, "Apache-2.0 OR MIT", jiff: 0.2.23, "MIT OR Unlicense", jiff-static: 0.2.23, "MIT OR Unlicense", jiff-tzdb: 0.1.6, "MIT OR Unlicense", @@ -535,7 +541,7 @@ libm: 0.2.16, "MIT", libmimalloc-sys: 0.1.44, "MIT", libredox: 0.1.14, "MIT", libsqlite3-sys: 0.30.1, "MIT", -libz-sys: 1.1.24, "Apache-2.0 OR MIT", +libz-sys: 1.1.25, "Apache-2.0 OR MIT", linked-hash-map: 0.5.6, "Apache-2.0 OR MIT", linux-raw-sys: 0.4.15, "Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR MIT", linux-raw-sys: 0.12.1, "Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR MIT", @@ -551,7 +557,8 @@ logos-derive: 0.15.1, "Apache-2.0 OR MIT", loom: 0.7.2, "MIT", loop9: 0.1.5, "MIT", lru-slab: 0.1.2, "Apache-2.0 OR MIT OR Zlib", -lz4_flex: 0.12.0, "MIT", +lz4_flex: 0.12.1, "MIT", +lz4_flex: 0.13.0, "MIT", macro_magic: 0.5.1, "MIT", macro_magic_core: 0.5.1, "MIT", macro_magic_core_macros: 0.5.1, "MIT", @@ -579,9 +586,9 @@ mockall_derive: 0.14.0, "Apache-2.0 OR MIT", moka: 0.12.14, "(Apache-2.0 OR MIT) AND Apache-2.0", mongocrypt: 0.3.2, "Apache-2.0", mongocrypt-sys: 0.1.5+1.15.1, "Apache-2.0", -mongodb: 3.5.1, "Apache-2.0", -mongodb-internal-macros: 3.5.1, "Apache-2.0", -moxcms: 0.7.11, "Apache-2.0 OR BSD-3-Clause", +mongodb: 3.5.2, "Apache-2.0", +mongodb-internal-macros: 3.5.2, "Apache-2.0", +moxcms: 0.8.1, "Apache-2.0 OR BSD-3-Clause", murmur3: 0.5.2, "Apache-2.0 OR MIT", never-say-never: 6.6.666, "Apache-2.0 OR MIT OR Zlib", new_debug_unreachable: 1.0.6, "MIT", @@ -619,19 +626,19 @@ objc2-encode: 4.1.0, "MIT", objc2-io-kit: 0.3.2, "Apache-2.0 OR MIT OR Zlib", octocrab: 0.49.5, "Apache-2.0 OR MIT", oid-registry: 0.8.1, "Apache-2.0 OR MIT", -once_cell: 1.21.3, "Apache-2.0 OR MIT", +once_cell: 1.21.4, "Apache-2.0 OR MIT", once_cell_polyfill: 1.70.2, "Apache-2.0 OR MIT", opaque-debug: 0.3.1, "Apache-2.0 OR MIT", opendal: 0.55.0, "Apache-2.0", -openssl: 0.10.75, "Apache-2.0", +openssl: 0.10.76, "Apache-2.0", openssl-macros: 0.1.1, "Apache-2.0 OR MIT", openssl-probe: 0.2.1, "Apache-2.0 OR MIT", openssl-src: 300.5.5+3.5.5, "Apache-2.0 OR MIT", -openssl-sys: 0.9.111, "MIT", +openssl-sys: 0.9.112, "MIT", opentelemetry: 0.31.0, "Apache-2.0", opentelemetry-appender-tracing: 0.31.1, "Apache-2.0", opentelemetry-http: 0.31.0, "Apache-2.0", -opentelemetry-otlp: 0.31.0, "Apache-2.0", +opentelemetry-otlp: 0.31.1, "Apache-2.0", opentelemetry-proto: 0.31.0, "Apache-2.0", opentelemetry-semantic-conventions: 0.31.0, "Apache-2.0", opentelemetry_sdk: 0.31.0, "Apache-2.0", @@ -685,7 +692,7 @@ polling: 3.11.0, "Apache-2.0 OR MIT", polonius-the-crab: 0.2.1, "Apache-2.0 OR MIT OR Zlib", polyval: 0.6.2, "Apache-2.0 OR MIT", portable-atomic: 1.13.1, "Apache-2.0 OR MIT", -portable-atomic-util: 0.2.5, "Apache-2.0 OR MIT", +portable-atomic-util: 0.2.6, "Apache-2.0 OR MIT", postcard: 1.1.3, "Apache-2.0 OR MIT", potential_utf: 0.1.4, "Unicode-3.0", powerfmt: 0.2.0, "Apache-2.0 OR MIT", @@ -739,7 +746,7 @@ rand_core: 0.9.5, "Apache-2.0 OR MIT", rand_core: 0.10.0, "Apache-2.0 OR MIT", rand_xoshiro: 0.8.0, "Apache-2.0 OR MIT", rav1e: 0.8.1, "BSD-2-Clause", -ravif: 0.12.0, "BSD-3-Clause", +ravif: 0.13.0, "BSD-3-Clause", raw-cpuid: 11.6.0, "MIT", rayon: 1.11.0, "Apache-2.0 OR MIT", rayon-core: 1.13.0, "Apache-2.0 OR MIT", @@ -769,8 +776,8 @@ ring: 0.17.14, "Apache-2.0 AND ISC", ringbuffer: 0.16.0, "MIT", rkyv: 0.7.46, "MIT", rkyv_derive: 0.7.46, "MIT", -rmcp: 1.1.1, "Apache-2.0", -rmcp-macros: 1.1.1, "Apache-2.0", +rmcp: 1.2.0, "Apache-2.0", +rmcp-macros: 1.2.0, "Apache-2.0", rmp: 0.8.15, "MIT", rmp-serde: 1.3.1, "MIT", roaring: 0.11.3, "Apache-2.0 OR MIT", @@ -795,13 +802,13 @@ rustls-pemfile: 2.2.0, "Apache-2.0 OR ISC OR MIT", rustls-pki-types: 1.14.0, "Apache-2.0 OR MIT", rustls-platform-verifier: 0.6.2, "Apache-2.0 OR MIT", rustls-platform-verifier-android: 0.1.1, "Apache-2.0 OR MIT", -rustls-webpki: 0.103.9, "ISC", +rustls-webpki: 0.103.10, "ISC", rustversion: 1.0.22, "Apache-2.0 OR MIT", rustybuzz: 0.20.1, "MIT", ryu: 1.0.23, "Apache-2.0 OR BSL-1.0", same-file: 1.0.6, "MIT OR Unlicense", scc: 2.4.0, "Apache-2.0", -schannel: 0.1.28, "MIT", +schannel: 0.1.29, "MIT", schemars: 0.9.0, "MIT", schemars: 1.2.1, "MIT", schemars_derive: 1.2.1, "MIT", @@ -819,6 +826,7 @@ semver: 1.0.27, "Apache-2.0 OR MIT", send_wrapper: 0.6.0, "Apache-2.0 OR MIT", seq-macro: 0.3.6, "Apache-2.0 OR MIT", serde: 1.0.228, "Apache-2.0 OR MIT", +serde-big-array: 0.5.1, "Apache-2.0 OR MIT", serde-wasm-bindgen: 0.6.5, "MIT", serde_bytes: 0.11.19, "Apache-2.0 OR MIT", serde_core: 1.0.228, "Apache-2.0 OR MIT", @@ -831,8 +839,8 @@ serde_spanned: 0.6.9, "Apache-2.0 OR MIT", serde_spanned: 1.0.4, "Apache-2.0 OR MIT", serde_urlencoded: 0.7.1, "Apache-2.0 OR MIT", serde_v8: 0.260.0, "MIT", -serde_with: 3.17.0, "Apache-2.0 OR MIT", -serde_with_macros: 3.17.0, "Apache-2.0 OR MIT", +serde_with: 3.18.0, "Apache-2.0 OR MIT", +serde_with_macros: 3.18.0, "Apache-2.0 OR MIT", serde_yaml_ng: 0.10.0, "MIT", serial_test: 3.4.0, "MIT", serial_test_derive: 3.4.0, "MIT", @@ -898,15 +906,15 @@ synstructure: 0.13.2, "MIT", synthez: 0.4.0, "BlueOak-1.0.0", synthez-codegen: 0.4.0, "BlueOak-1.0.0", synthez-core: 0.4.0, "BlueOak-1.0.0", -sys_traits: 0.1.24, "MIT", +sys_traits: 0.1.26, "MIT", sys_traits_macros: 0.1.0, "MIT", sysinfo: 0.37.2, "MIT", sysinfo: 0.38.4, "MIT", tagptr: 0.2.0, "Apache-2.0 OR MIT", take_mut: 0.2.2, "MIT", tap: 1.0.1, "MIT", -tar: 0.4.44, "Apache-2.0 OR MIT", -tempfile: 3.26.0, "Apache-2.0 OR MIT", +tar: 0.4.45, "Apache-2.0 OR MIT", +tempfile: 3.27.0, "Apache-2.0 OR MIT", terminal_size: 0.4.3, "Apache-2.0 OR MIT", termtree: 0.5.1, "MIT", test-case: 3.3.1, "MIT", @@ -922,7 +930,7 @@ thiserror-impl: 1.0.69, "Apache-2.0 OR MIT", thiserror-impl: 2.0.18, "Apache-2.0 OR MIT", thread_local: 1.1.9, "Apache-2.0 OR MIT", thrift: 0.17.0, "Apache-2.0", -tiff: 0.10.3, "MIT", +tiff: 0.11.3, "MIT", time: 0.3.47, "Apache-2.0 OR MIT", time-core: 0.1.8, "Apache-2.0 OR MIT", time-macros: 0.2.27, "Apache-2.0 OR MIT", @@ -930,25 +938,25 @@ tiny-keccak: 2.0.2, "CC0-1.0", tiny-skia: 0.11.4, "BSD-3-Clause", tiny-skia-path: 0.11.4, "BSD-3-Clause", tinystr: 0.8.2, "Unicode-3.0", -tinyvec: 1.10.0, "Apache-2.0 OR MIT OR Zlib", +tinyvec: 1.11.0, "Apache-2.0 OR MIT OR Zlib", tinyvec_macros: 0.1.1, "Apache-2.0 OR MIT OR Zlib", tokio: 1.50.0, "MIT", tokio-macros: 2.6.1, "MIT", tokio-rustls: 0.26.4, "Apache-2.0 OR MIT", tokio-stream: 0.1.18, "MIT", -tokio-tungstenite: 0.28.0, "MIT", +tokio-tungstenite: 0.29.0, "MIT", tokio-util: 0.7.18, "MIT", -tokise: 0.2.0, "Apache-2.0 OR MIT", +tokise: 0.2.1, "Apache-2.0 OR MIT", toml: 0.8.23, "Apache-2.0 OR MIT", -toml: 1.0.6+spec-1.1.0, "Apache-2.0 OR MIT", +toml: 1.0.7+spec-1.1.0, "Apache-2.0 OR MIT", toml_datetime: 0.6.11, "Apache-2.0 OR MIT", -toml_datetime: 1.0.0+spec-1.1.0, "Apache-2.0 OR MIT", +toml_datetime: 1.0.1+spec-1.1.0, "Apache-2.0 OR MIT", toml_edit: 0.19.15, "Apache-2.0 OR MIT", toml_edit: 0.22.27, "Apache-2.0 OR MIT", -toml_edit: 0.25.4+spec-1.1.0, "Apache-2.0 OR MIT", -toml_parser: 1.0.9+spec-1.1.0, "Apache-2.0 OR MIT", +toml_edit: 0.25.5+spec-1.1.0, "Apache-2.0 OR MIT", +toml_parser: 1.0.10+spec-1.1.0, "Apache-2.0 OR MIT", toml_write: 0.1.2, "Apache-2.0 OR MIT", -toml_writer: 1.0.6+spec-1.1.0, "Apache-2.0 OR MIT", +toml_writer: 1.0.7+spec-1.1.0, "Apache-2.0 OR MIT", tonic: 0.14.5, "MIT", tonic-prost: 0.14.5, "MIT", tools: 0.1.0, "Apache-2.0", @@ -962,11 +970,12 @@ tracing-attributes: 0.1.31, "MIT", tracing-core: 0.1.36, "MIT", tracing-log: 0.2.0, "MIT", tracing-opentelemetry: 0.32.1, "MIT", -tracing-subscriber: 0.3.22, "MIT", +tracing-subscriber: 0.3.23, "MIT", trait-variant: 0.1.2, "Apache-2.0 OR MIT", try-lock: 0.2.5, "MIT", ttf-parser: 0.25.1, "Apache-2.0 OR MIT", tungstenite: 0.28.0, "Apache-2.0 OR MIT", +tungstenite: 0.29.0, "Apache-2.0 OR MIT", twox-hash: 2.1.2, "MIT", typed-builder: 0.20.1, "Apache-2.0 OR MIT", typed-builder: 0.22.0, "Apache-2.0 OR MIT", @@ -975,7 +984,10 @@ typed-builder-macro: 0.20.1, "Apache-2.0 OR MIT", typed-builder-macro: 0.22.0, "Apache-2.0 OR MIT", typed-builder-macro: 0.23.2, "Apache-2.0 OR MIT", typed-path: 0.12.3, "Apache-2.0 OR MIT", +typeid: 1.0.3, "Apache-2.0 OR MIT", typenum: 1.19.0, "Apache-2.0 OR MIT", +typetag: 0.2.21, "Apache-2.0 OR MIT", +typetag-impl: 0.2.21, "Apache-2.0 OR MIT", ucd-trie: 0.1.7, "Apache-2.0 OR MIT", ulid: 1.2.1, "MIT", uncased: 0.9.10, "Apache-2.0 OR MIT", @@ -997,13 +1009,14 @@ unicode-xid: 0.2.6, "Apache-2.0 OR MIT", universal-hash: 0.5.1, "Apache-2.0 OR MIT", unsafe-libyaml: 0.2.11, "MIT", untrusted: 0.9.0, "ISC", -ureq: 3.2.0, "Apache-2.0 OR MIT", +ureq: 3.2.1, "Apache-2.0 OR MIT", ureq-proto: 0.5.3, "Apache-2.0 OR MIT", url: 2.5.8, "Apache-2.0 OR MIT", urlencoding: 2.1.3, "MIT", usvg: 0.45.1, "Apache-2.0 OR MIT", utf-8: 0.7.6, "Apache-2.0 OR MIT", utf8-width: 0.1.8, "MIT", +utf8-zero: 0.8.1, "Apache-2.0 OR MIT", utf8_iter: 1.0.4, "Apache-2.0 OR MIT", utf8parse: 0.2.2, "Apache-2.0 OR MIT", uuid: 1.22.0, "Apache-2.0 OR MIT", @@ -1113,6 +1126,7 @@ windows_x86_64_msvc: 0.52.6, "Apache-2.0 OR MIT", windows_x86_64_msvc: 0.53.1, "Apache-2.0 OR MIT", winnow: 0.5.40, "MIT", winnow: 0.7.15, "MIT", +winnow: 1.0.0, "MIT", winreg: 0.50.0, "MIT", winsafe: 0.0.19, "MIT", wit-bindgen: 0.51.0, "Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR MIT", @@ -1129,14 +1143,14 @@ xmlwriter: 0.1.0, "MIT", y4m: 0.8.0, "MIT", yansi: 1.0.1, "Apache-2.0 OR MIT", yasna: 0.5.2, "Apache-2.0 OR MIT", -yew: 0.22.1, "Apache-2.0 OR MIT", -yew-macro: 0.22.1, "Apache-2.0 OR MIT", -yew-router: 0.19.0, "Apache-2.0 OR MIT", -yew-router-macro: 0.19.0, "Apache-2.0 OR MIT", +yew: 0.23.0, "Apache-2.0 OR MIT", +yew-macro: 0.23.0, "Apache-2.0 OR MIT", +yew-router: 0.20.0, "Apache-2.0 OR MIT", +yew-router-macro: 0.20.0, "Apache-2.0 OR MIT", yoke: 0.8.1, "Unicode-3.0", yoke-derive: 0.8.1, "Unicode-3.0", -zerocopy: 0.8.42, "Apache-2.0 OR BSD-2-Clause OR MIT", -zerocopy-derive: 0.8.42, "Apache-2.0 OR BSD-2-Clause OR MIT", +zerocopy: 0.8.47, "Apache-2.0 OR BSD-2-Clause OR MIT", +zerocopy-derive: 0.8.47, "Apache-2.0 OR BSD-2-Clause OR MIT", zerofrom: 0.1.6, "Unicode-3.0", zerofrom-derive: 0.1.6, "Unicode-3.0", zeroize: 1.8.2, "Apache-2.0 OR MIT", @@ -1144,7 +1158,8 @@ zeroize_derive: 1.4.3, "Apache-2.0 OR MIT", zerotrie: 0.2.3, "Unicode-3.0", zerovec: 0.11.5, "Unicode-3.0", zerovec-derive: 0.11.2, "Unicode-3.0", -zip: 8.2.0, "MIT", +zip: 0.6.6, "MIT", +zip: 8.3.0, "MIT", zlib-rs: 0.6.3, "Zlib", zmij: 1.0.21, "MIT", zopfli: 0.8.3, "Apache-2.0", @@ -1155,4 +1170,4 @@ zune-core: 0.4.12, "Apache-2.0 OR MIT OR Zlib", zune-core: 0.5.1, "Apache-2.0 OR MIT OR Zlib", zune-inflate: 0.2.54, "Apache-2.0 OR MIT OR Zlib", zune-jpeg: 0.4.21, "Apache-2.0 OR MIT OR Zlib", -zune-jpeg: 0.5.12, "Apache-2.0 OR MIT OR Zlib", +zune-jpeg: 0.5.13, "Apache-2.0 OR MIT OR Zlib", diff --git a/core/ai/mcp/src/main.rs b/core/ai/mcp/src/main.rs index 73135cf1c..bc2af46e4 100644 --- a/core/ai/mcp/src/main.rs +++ b/core/ai/mcp/src/main.rs @@ -21,7 +21,7 @@ use ::configs::ConfigProvider; use configs::{McpServerConfig, McpTransport}; use dotenvy::dotenv; use error::McpRuntimeError; -use figlet_rs::FIGfont; +use figlet_rs::FIGlet; use iggy::prelude::{Client, Identifier}; use rmcp::{ServiceExt, model::ErrorData, transport::stdio}; use service::IggyService; @@ -41,7 +41,7 @@ const DEFAULT_CONFIG_PATH: &str = "core/ai/mcp/config.toml"; #[tokio::main] async fn main() -> Result<(), McpRuntimeError> { - let standard_font = FIGfont::standard().unwrap(); + let standard_font = FIGlet::standard().unwrap(); let figure = standard_font.convert("Iggy MCP Server"); eprintln!("{}", figure.unwrap()); diff --git a/core/bench/src/main.rs b/core/bench/src/main.rs index 77d7d66bf..efcacabd2 100644 --- a/core/bench/src/main.rs +++ b/core/bench/src/main.rs @@ -26,7 +26,7 @@ mod utils; use crate::{args::common::IggyBenchArgs, runner::BenchmarkRunner}; use clap::Parser; -use figlet_rs::FIGfont; +use figlet_rs::FIGlet; use iggy::prelude::IggyError; use std::fs; use std::path::Path; @@ -36,7 +36,7 @@ use utils::cpu_name::append_cpu_name_lowercase; #[tokio::main] async fn main() -> Result<(), IggyError> { - let standard_font = FIGfont::standard().unwrap(); + let standard_font = FIGlet::standard().unwrap(); let figure = standard_font.convert("Iggy Bench"); println!("{}", figure.unwrap()); diff --git a/core/cli/src/args/mod.rs b/core/cli/src/args/mod.rs index 99b7bbd74..428d4d5e4 100644 --- a/core/cli/src/args/mod.rs +++ b/core/cli/src/args/mod.rs @@ -21,7 +21,7 @@ use std::path::PathBuf; use clap::{Args, Command as ClapCommand}; use clap::{Parser, Subcommand}; use clap_complete::{Generator, Shell, generate}; -use figlet_rs::FIGfont; +use figlet_rs::FIGlet; use iggy::prelude::{Args as IggyArgs, ArgsOptional as IggyArgsOptional}; use iggy_cli::commands::binary_context::common::ContextConfig; @@ -231,7 +231,7 @@ impl IggyConsoleArgs { "", ); - let standard_font = FIGfont::standard().unwrap(); + let standard_font = FIGlet::standard().unwrap(); let figure = standard_font.convert("Iggy CLI").unwrap(); println!("{figure}"); diff --git a/core/connectors/runtime/src/main.rs b/core/connectors/runtime/src/main.rs index cca15d47a..908fe44ad 100644 --- a/core/connectors/runtime/src/main.rs +++ b/core/connectors/runtime/src/main.rs @@ -25,7 +25,7 @@ use configs::runtime::ConnectorsRuntimeConfig; use dlopen2::wrapper::{Container, WrapperApi}; use dotenvy::dotenv; use error::RuntimeError; -use figlet_rs::FIGfont; +use figlet_rs::FIGlet; use iggy::prelude::{Client, IggyConsumer, IggyProducer}; use iggy_connector_sdk::{ StreamDecoder, StreamEncoder, @@ -108,7 +108,7 @@ pub(crate) struct SinkApi { } fn print_ascii_art(text: &str) { - let standard_font = FIGfont::standard().unwrap(); + let standard_font = FIGlet::standard().unwrap(); let figure = standard_font.convert(text); println!("{}", figure.unwrap()); } diff --git a/core/connectors/sinks/iceberg_sink/Cargo.toml b/core/connectors/sinks/iceberg_sink/Cargo.toml index baff71c9f..527a27d44 100644 --- a/core/connectors/sinks/iceberg_sink/Cargo.toml +++ b/core/connectors/sinks/iceberg_sink/Cargo.toml @@ -39,6 +39,7 @@ async-trait = { workspace = true } dashmap = { workspace = true } iceberg = { workspace = true } iceberg-catalog-rest = { workspace = true } +iceberg-storage-opendal = { workspace = true } iggy_connector_sdk = { workspace = true } once_cell = { workspace = true } parquet = { workspace = true } diff --git a/core/connectors/sinks/iceberg_sink/src/catalog.rs b/core/connectors/sinks/iceberg_sink/src/catalog.rs index 54c27efac..64fe8e429 100644 --- a/core/connectors/sinks/iceberg_sink/src/catalog.rs +++ b/core/connectors/sinks/iceberg_sink/src/catalog.rs @@ -16,14 +16,15 @@ * under the License. */ -use super::{Error, IcebergSinkConfig, IcebergSinkTypes}; +use super::{Error, IcebergSinkConfig, IcebergSinkStoreClass, IcebergSinkTypes}; use crate::props::init_props; use iceberg::{Catalog, CatalogBuilder}; use iceberg_catalog_rest::{ REST_CATALOG_PROP_URI, REST_CATALOG_PROP_WAREHOUSE, RestCatalogBuilder, }; - +use iceberg_storage_opendal::OpenDalStorageFactory; use std::collections::HashMap; +use std::sync::Arc; pub async fn init_catalog(config: &IcebergSinkConfig) -> Result<Box<dyn Catalog>, Error> { let props = init_props(config)?; @@ -46,7 +47,20 @@ async fn get_rest_catalog( ]); new_props.extend(props); + let storage_factory: Arc<dyn iceberg::io::StorageFactory> = match &config.store_class { + IcebergSinkStoreClass::S3 => Arc::new(OpenDalStorageFactory::S3 { + configured_scheme: "s3".to_string(), + customized_credential_load: None, + }), + other => { + return Err(Error::InitError(format!( + "Unsupported store class: {other}" + ))); + } + }; + let catalog = RestCatalogBuilder::default() + .with_storage_factory(storage_factory) .load("rest", new_props) .await .map_err(|err| { diff --git a/core/consensus/src/impls.rs b/core/consensus/src/impls.rs index 016fe839f..882340d30 100644 --- a/core/consensus/src/impls.rs +++ b/core/consensus/src/impls.rs @@ -108,7 +108,7 @@ impl PipelineEntry { /// Returns the new count of acknowledgments. pub fn add_ack(&mut self, replica: u8) -> usize { self.ok_from_replicas.insert(replica as usize); - self.ok_from_replicas.len() + self.ok_from_replicas.count() } /// Check if we have an ack from the given replica. @@ -120,7 +120,7 @@ impl PipelineEntry { /// Get the number of acks received. #[must_use] pub fn ack_count(&self) -> usize { - self.ok_from_replicas.len() + self.ok_from_replicas.count() } } @@ -650,7 +650,7 @@ impl<B: MessageBus, P: Pipeline<Entry = PipelineEntry>> VsrConsensus<B, P> { /// Count SVCs from OTHER replicas (excluding self). fn svc_count_excluding_self(&self) -> usize { let svc = self.start_view_change_from_all_replicas.borrow(); - let total = svc.len(); + let total = svc.count(); if svc.contains(self.replica as usize) { total.saturating_sub(1) } else { @@ -662,7 +662,7 @@ impl<B: MessageBus, P: Pipeline<Entry = PipelineEntry>> VsrConsensus<B, P> { fn reset_svc_quorum(&self) { self.start_view_change_from_all_replicas .borrow_mut() - .clear(); + .make_empty(); } /// Reset DVC quorum tracking. diff --git a/core/integration/tests/cli/general/test_overview_command.rs b/core/integration/tests/cli/general/test_overview_command.rs index e351c039c..a5a88d2e9 100644 --- a/core/integration/tests/cli/general/test_overview_command.rs +++ b/core/integration/tests/cli/general/test_overview_command.rs @@ -19,8 +19,8 @@ use crate::cli::common::{IggyCmdTest, help::TestHelpCmd}; use serial_test::parallel; -const FIGLET_INDENT: &str = " "; -const FIGLET_FILL: &str = " "; +const FIGLET_SP: &str = " "; +const FIGLET_FILL: &str = " "; #[tokio::test] #[parallel] @@ -32,12 +32,12 @@ pub async fn should_help_match() { .execute_test_for_help_command(TestHelpCmd::new( no_arg, format!( - r#" ___ ____ _ ___{FIGLET_INDENT} - |_ _| __ _ __ _ _ _ / ___| | | |_ _| - | | / _` | / _` | | | | | | | | | | |{FIGLET_INDENT} - | | | (_| | | (_| | | |_| | | |___ | |___ | |{FIGLET_INDENT} - |___| \__, | \__, | \__, | \____| |_____| |___| - |___/ |___/ |___/{FIGLET_FILL} + r#" ___ ____ _ ___{FIGLET_SP} +|_ _|__ _ __ _ _ _ / ___| | |_ _| + | |/ _` |/ _` | | | | | | | | | |{FIGLET_SP} + | | (_| | (_| | |_| | | |___| |___ | |{FIGLET_SP} +|___\__, |\__, |\__, | \____|_____|___| + |___/ |___/ |___/{FIGLET_FILL} CLI for Iggy message streaming platform diff --git a/core/server/Cargo.toml b/core/server/Cargo.toml index 5138288c3..c852010f3 100644 --- a/core/server/Cargo.toml +++ b/core/server/Cargo.toml @@ -100,7 +100,6 @@ tracing = { workspace = true } tracing-appender = { workspace = true } tracing-opentelemetry = { workspace = true } tracing-subscriber = { workspace = true } -tungstenite = { workspace = true } ulid = { workspace = true } uuid = { workspace = true } diff --git a/core/server/src/main.rs b/core/server/src/main.rs index 6a7fc1e06..1a13ba31f 100644 --- a/core/server/src/main.rs +++ b/core/server/src/main.rs @@ -22,7 +22,7 @@ use clap::Parser; use dashmap::DashMap; use dotenvy::dotenv; use err_trail::ErrContext; -use figlet_rs::FIGfont; +use figlet_rs::FIGlet; use iggy_common::SemanticVersion; use iggy_common::sharding::{IggyNamespace, LocalIdx, PartitionLocation, ShardId}; use iggy_common::{Aes256GcmEncryptor, EncryptorKind, IggyError, MemoryPool}; @@ -99,7 +99,7 @@ fn extract_panic_message(payload: Box<dyn std::any::Any + Send>) -> String { } fn print_ascii_art(text: &str) { - let standard_font = FIGfont::standard().unwrap(); + let standard_font = FIGlet::standard().unwrap(); let figure = standard_font.convert(text); println!("{}", figure.unwrap()); } diff --git a/core/server/src/websocket/mod.rs b/core/server/src/websocket/mod.rs index 3ee16e8af..435648fe8 100644 --- a/core/server/src/websocket/mod.rs +++ b/core/server/src/websocket/mod.rs @@ -21,3 +21,44 @@ pub mod websocket_server; pub mod websocket_tls_listener; pub const COMPONENT: &str = "WEBSOCKET"; + +use crate::configs::websocket::WebSocketConfig; +use compio::ws::tungstenite::protocol::WebSocketConfig as CompioWsConfig; +use iggy_common::IggyByteSize; + +/// Build a `compio-ws`-compatible `WebSocketConfig` from the server config. +/// +/// The standalone `tungstenite` crate may be a different major version than +/// the one re-exported by `compio-ws`, so we construct the config through +/// `compio::ws::tungstenite` to guarantee type compatibility. +pub fn build_compio_ws_config(config: &WebSocketConfig) -> CompioWsConfig { + let mut ws = CompioWsConfig::default(); + + if let Some(ref s) = config.read_buffer_size + && let Ok(b) = s.parse::<IggyByteSize>() + { + ws = ws.read_buffer_size(b.as_bytes_u64() as usize); + } + if let Some(ref s) = config.write_buffer_size + && let Ok(b) = s.parse::<IggyByteSize>() + { + ws = ws.write_buffer_size(b.as_bytes_u64() as usize); + } + if let Some(ref s) = config.max_write_buffer_size + && let Ok(b) = s.parse::<IggyByteSize>() + { + ws = ws.max_write_buffer_size(b.as_bytes_u64() as usize); + } + if let Some(ref s) = config.max_message_size + && let Ok(b) = s.parse::<IggyByteSize>() + { + ws = ws.max_message_size(Some(b.as_bytes_u64() as usize)); + } + if let Some(ref s) = config.max_frame_size + && let Ok(b) = s.parse::<IggyByteSize>() + { + ws = ws.max_frame_size(Some(b.as_bytes_u64() as usize)); + } + ws = ws.accept_unmasked_frames(config.accept_unmasked_frames); + ws +} diff --git a/core/server/src/websocket/websocket_listener.rs b/core/server/src/websocket/websocket_listener.rs index 045f15c03..56a6225c8 100644 --- a/core/server/src/websocket/websocket_listener.rs +++ b/core/server/src/websocket/websocket_listener.rs @@ -98,7 +98,7 @@ pub async fn start( .ok(); } - let ws_config = config.to_tungstenite_config(); + let ws_config = super::build_compio_ws_config(&config); info!( "WebSocket config: max_message_size: {:?}, max_frame_size: {:?}, accept_unmasked_frames: {}", config.max_message_size, config.max_frame_size, config.accept_unmasked_frames @@ -109,7 +109,7 @@ pub async fn start( async fn accept_loop( listener: TcpListener, - ws_config: Option<tungstenite::protocol::WebSocketConfig>, + ws_config: Option<compio::ws::tungstenite::protocol::WebSocketConfig>, shard: Rc<IggyShard>, shutdown: ShutdownToken, ) -> Result<(), IggyError> { diff --git a/core/server/src/websocket/websocket_tls_listener.rs b/core/server/src/websocket/websocket_tls_listener.rs index 10f196a5f..bc75d9e50 100644 --- a/core/server/src/websocket/websocket_tls_listener.rs +++ b/core/server/src/websocket/websocket_tls_listener.rs @@ -140,7 +140,7 @@ pub async fn start( "{} has started on: wss://{}", "WebSocket TLS Server", local_addr ); - let ws_config = config.to_tungstenite_config(); + let ws_config = super::build_compio_ws_config(&config); info!( "WebSocket TLS config: max_message_size: {:?}, max_frame_size: {:?}, accept_unmasked_frames: {}", config.max_message_size, config.max_frame_size, config.accept_unmasked_frames @@ -159,7 +159,7 @@ pub async fn start( async fn accept_loop( listener: TcpListener, acceptor: TlsAcceptor, - ws_config: tungstenite::protocol::WebSocketConfig, + ws_config: compio::ws::tungstenite::protocol::WebSocketConfig, shard: Rc<IggyShard>, shutdown: ShutdownToken, ) -> Result<(), IggyError> {
