From 1fac7a5871c89f959c2b926d581eed8b4110173e Mon Sep 17 00:00:00 2001 From: houseme Date: Tue, 21 Jul 2026 10:05:42 +0800 Subject: [PATCH] chore(deps): refresh workspace dependencies (#5067) * chore(deps): refresh workspace dependencies Refresh compatible workspace dependencies while preserving the requested version pins. Update async-nats and Hyper, and replace the temporary Hyper Git patch with the released crate. Co-Authored-By: heihutu * chore(deps): bump hotpath to 0.21.5 Co-Authored-By: heihutu --------- Co-authored-by: heihutu --- Cargo.lock | 183 ++++++++++-------- Cargo.toml | 38 +--- deny.toml | 6 - .../hyper_h1_shutdown_flush_regression.rs | 13 +- 4 files changed, 116 insertions(+), 124 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8fc232b20..3bf42650e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -694,9 +694,9 @@ dependencies = [ [[package]] name = "async-nats" -version = "0.49.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fad3cd6df81292728e2a8cb1f1dcb4d7e7a1ab59b80c14fbbcba2baf9d5cf86a" +checksum = "d83a251fa1a4c9d0fe6e816b7acd60549e473e08d14f27a1d992c2675abff05f" dependencies = [ "base64 0.22.1", "bytes", @@ -769,7 +769,7 @@ checksum = "ae36dc4177970ef04fde5178d3e2429882def40e57a451f919c098f72baa6cec" dependencies = [ "proc-macro2", "quote", - "syn 3.0.1", + "syn 3.0.2", ] [[package]] @@ -1519,7 +1519,7 @@ version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" dependencies = [ - "generic-array 0.14.9", + "generic-array 0.14.7", ] [[package]] @@ -1538,7 +1538,7 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93" dependencies = [ - "generic-array 0.14.9", + "generic-array 0.14.7", ] [[package]] @@ -1861,7 +1861,7 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" dependencies = [ - "crypto-common 0.1.6", + "crypto-common 0.1.7", "inout 0.1.4", ] @@ -1879,9 +1879,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.6.2" +version = "4.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd059f9da4f5c36b3787f65d38ccaab1cc315f07b01f89abc8359ee6a8205011" +checksum = "0fb99565819980999fb7b4a1796046a5c949e6d4ff132cf5fadf5a641e20d776" dependencies = [ "clap_builder", "clap_derive", @@ -1901,9 +1901,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.6.1" +version = "4.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2ce8604710f6733aa641a2b3731eaa1e8b3d9973d5e3565da11800813f997a9" +checksum = "32f2392eae7f16557a3d727ef3a12e57b2b2ca6f98566a5f4fb41ffe305df077" dependencies = [ "heck", "proc-macro2", @@ -2319,7 +2319,7 @@ version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" dependencies = [ - "generic-array 0.14.9", + "generic-array 0.14.7", "rand_core 0.6.4", "subtle", "zeroize", @@ -2344,11 +2344,11 @@ dependencies = [ [[package]] name = "crypto-common" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a" dependencies = [ - "generic-array 0.14.9", + "generic-array 0.14.7", "typenum", ] @@ -2437,15 +2437,16 @@ dependencies = [ [[package]] name = "curve25519-dalek" -version = "5.0.0-rc.1" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c906a87e53a36ff795d72e06e8162a83c5436e3ea89e942a9cb9fc083f0a384f" +checksum = "b5eed333089e2e1c1ac8c6c0398e5e2497b4c9926ca6d0365ed1e099afa5bc23" dependencies = [ "cfg-if", "cpufeatures 0.3.0", "curve25519-dalek-derive", "digest 0.11.3", "fiat-crypto 0.3.0", + "rand_core 0.10.1", "rustc_version", "subtle", "zeroize", @@ -3483,9 +3484,9 @@ dependencies = [ [[package]] name = "dial9-tokio-telemetry" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae338262e40cf9036474cc3c1f0dc67c09421674ced255b7c643060829a3f5d" +checksum = "9b511dfd54f5191f7eb86856fe19d8e3c8f71673bd256e1bfa1c8128fbbc0cdb" dependencies = [ "arc-swap", "bon", @@ -3544,7 +3545,7 @@ checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ "block-buffer 0.10.4", "const-oid 0.9.6", - "crypto-common 0.1.6", + "crypto-common 0.1.7", "subtle", ] @@ -3767,11 +3768,11 @@ dependencies = [ [[package]] name = "ed25519-dalek" -version = "3.0.0-rc.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1685663e23882cd8517dcbcb1c23a6ebff4433c22dfb681d760219b62cd1b849" +checksum = "6ebaa1a2bf1290ab3bfe5a7b771d050ebffab2711c19a81691c683a5144a25de" dependencies = [ - "curve25519-dalek 5.0.0-rc.1", + "curve25519-dalek 5.0.0", "ed25519 3.0.0", "rand_core 0.10.1", "serde", @@ -3797,7 +3798,7 @@ dependencies = [ "crypto-bigint 0.5.5", "digest 0.10.7", "ff 0.13.1", - "generic-array 0.14.9", + "generic-array 0.14.7", "group 0.13.0", "hkdf 0.12.4", "pem-rfc7468 0.7.0", @@ -3865,9 +3866,9 @@ dependencies = [ [[package]] name = "enumset" -version = "1.1.13" +version = "1.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "839c4174b41e75c8f7306110b2c51996a293b8d1d850edd529011841d9fede7d" +checksum = "ccc5801fd11762e24d1e420d01d2ac518f2a2ca4329d4fbb6639f2412b6204e0" dependencies = [ "enumset_derive", ] @@ -4243,9 +4244,9 @@ dependencies = [ [[package]] name = "generic-array" -version = "0.14.9" +version = "0.14.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bb6743198531e02858aeaea5398fcc883e71851fcbcb5a2f773e2fb6cb1edf2" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ "typenum", "version_check", @@ -4258,7 +4259,7 @@ version = "1.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab4e5aa225bc56696909483320f0ff9b600f1a971b52e07a17d70f3d9b43254b" dependencies = [ - "generic-array 0.14.9", + "generic-array 0.14.7", "rustversion", "typenum", ] @@ -5020,8 +5021,9 @@ dependencies = [ [[package]] name = "hyper" -version = "1.10.1" -source = "git+https://github.com/hyperium/hyper.git?rev=ccc1e850dc0cda3e71b0acd11f60ca3d48d09034#ccc1e850dc0cda3e71b0acd11f60ca3d48d09034" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d22053281f852e11534f5198498373cbb59295120a20771d90f7ed1897490a72" dependencies = [ "atomic-waker", "bytes", @@ -5257,7 +5259,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" dependencies = [ "block-padding 0.3.3", - "generic-array 0.14.9", + "generic-array 0.14.7", ] [[package]] @@ -5708,9 +5710,9 @@ checksum = "34b357333733e8260735ba5894eb928c02ecc69c78715f01a8019e7fa7f2db4c" [[package]] name = "libc" -version = "0.2.186" +version = "0.2.187" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66" +checksum = "a7743783ea728ef5c31194c6590797eed286449b4a4e87d626d8a51f0a94e732" [[package]] name = "libflate" @@ -6254,7 +6256,7 @@ dependencies = [ "module-lattice", "pkcs8 0.11.0", "rand_core 0.10.1", - "sha3", + "sha3 0.11.0", ] [[package]] @@ -6290,9 +6292,9 @@ dependencies = [ [[package]] name = "mqttbytes-core-next" -version = "0.33.2" +version = "0.33.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d9e8f1593f6a8affb39a2df042cc28df033ba18907858cde71993e5780d29a3" +checksum = "3ff7ae19c74aba9e0ed6e4071cd52aa364e020076fa3cc6ef17e43662f756f3c" dependencies = [ "bytes", "thiserror 2.0.19", @@ -6672,7 +6674,7 @@ version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "51e219e79014df21a225b1860a479e2dcd7cbd9130f4defd4bd0e191ea31d67d" dependencies = [ - "base64 0.21.7", + "base64 0.22.1", "chrono", "getrandom 0.2.17", "http 1.4.2", @@ -7035,9 +7037,9 @@ dependencies = [ [[package]] name = "p256" -version = "0.14.0-rc.15" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bb40a5099e2c38a09dd29321a7a7f045f165a54317679c7cdfb0cbaf8f6b1e" +checksum = "d2c9239b2dbc807adbbe147e8cf72ea7450c3a0aabe62cb8e75ff4ec22e1f72a" dependencies = [ "ecdsa 0.17.0", "elliptic-curve 0.14.1", @@ -7060,9 +7062,9 @@ dependencies = [ [[package]] name = "p384" -version = "0.14.0-rc.15" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "492f329d7eb11d22dadc988626b9ea1f503b4ab043a8b1e4e2cc4ae45dabdd70" +checksum = "d17b851e6b3e378ab4ecb07fa2ed23f4d15f075735f8fec9fa1e7bdce5f8301f" dependencies = [ "ecdsa 0.17.0", "elliptic-curve 0.14.1", @@ -7074,9 +7076,9 @@ dependencies = [ [[package]] name = "p521" -version = "0.14.0-rc.15" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff42e4ace5424e3b6d7cb82514be89866b85af87015f80341e37dcc21a66ce6e" +checksum = "4ad64cc32c2dc466317c12ee5853e61f159f9eab1fe7efade0395dc2e7b43449" dependencies = [ "base16ct 1.0.0", "ecdsa 0.17.0", @@ -7794,7 +7796,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be769465445e8c1474e9c5dac2018218498557af32d9ed057325ec9a41ae81bf" dependencies = [ "heck", - "itertools 0.10.5", + "itertools 0.14.0", "log", "multimap", "once_cell", @@ -7814,7 +7816,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "03da047801ff44bb6a4d407d4860c05fd70bb81714e6b2f3812603d5b145b042" dependencies = [ "heck", - "itertools 0.10.5", + "itertools 0.14.0", "log", "multimap", "petgraph 0.8.3", @@ -7835,7 +7837,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a56d757972c98b346a9b766e3f02746cde6dd1cd1d1d563472929fdd74bec4d" dependencies = [ "anyhow", - "itertools 0.10.5", + "itertools 0.14.0", "proc-macro2", "quote", "syn 2.0.119", @@ -7848,7 +7850,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b570b25f7617e43d59005d0990ccb79e950a423952cea19671b7a876da390adf" dependencies = [ "anyhow", - "itertools 0.10.5", + "itertools 0.14.0", "proc-macro2", "quote", "syn 2.0.119", @@ -8392,7 +8394,7 @@ checksum = "2c9283685feec7d69af75fb0e858d5e7378f33fe4fc699383b2916ab9273e03c" dependencies = [ "proc-macro2", "quote", - "syn 3.0.1", + "syn 3.0.2", ] [[package]] @@ -8594,9 +8596,9 @@ dependencies = [ [[package]] name = "rumqttc-core-next" -version = "0.33.2" +version = "0.33.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaa975ffc1af5aac70a0e139491a1fc553ab48f378f909dad5d43fd4b2ad28db" +checksum = "7d7d9205738dd41a2546e82d27a634d07d8b303dcf7558565ff70caf3ceb0f9c" dependencies = [ "async-tungstenite", "futures-io", @@ -8612,18 +8614,18 @@ dependencies = [ [[package]] name = "rumqttc-next" -version = "0.33.2" +version = "0.33.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df63fbd71ba5830b5bd0952ae37761e3af64aeae8f6213eb6d31d6e72a16d71e" +checksum = "ed1bad2180ff539da671da9a996152a921bc5316eb6d8a9cc3bd441653138b08" dependencies = [ "rumqttc-v5-next", ] [[package]] name = "rumqttc-v5-next" -version = "0.33.2" +version = "0.33.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6417b354aa28ad72b271e6a5cea7fdb1594d18cb040ebed35fa87bb683cf364f" +checksum = "229576cbedfa9089f90c17c9454e9429ac1e89cdd223bac5cb39d837593f79bc" dependencies = [ "async-tungstenite", "bytes", @@ -8646,9 +8648,9 @@ dependencies = [ [[package]] name = "russh" -version = "0.62.2" +version = "0.62.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca6c3c1dd0a9ad3a9915a2f6e907d158f9a7e9ac32ddc772b003faafc027d9a8" +checksum = "059dd24c0fe20721639f7acad7b82cd51ec3dd3254ed8cf7a0b7df6c20eaff1c" dependencies = [ "aes 0.9.1", "aws-lc-rs", @@ -8660,13 +8662,13 @@ dependencies = [ "cipher 0.5.2", "crypto-bigint 0.7.5", "ctr", - "curve25519-dalek 5.0.0-rc.1", + "curve25519-dalek 5.0.0", "data-encoding", "delegate", "der 0.8.1", "digest 0.11.3", "ecdsa 0.17.0", - "ed25519-dalek 3.0.0-rc.1", + "ed25519-dalek 3.0.0", "elliptic-curve 0.14.1", "enum_dispatch", "flate2", @@ -8684,8 +8686,8 @@ dependencies = [ "ml-kem", "module-lattice", "num-bigint", - "p256 0.14.0-rc.15", - "p384 0.14.0-rc.15", + "p256 0.14.0", + "p384 0.14.0", "p521", "pageant", "pbkdf2 0.13.0", @@ -8703,7 +8705,7 @@ dependencies = [ "sec1 0.8.1", "sha1 0.11.0", "sha2 0.11.0", - "sha3", + "sha3 0.12.0", "signature 3.0.0", "spki 0.8.0", "ssh-encoding", @@ -10453,7 +10455,7 @@ checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" dependencies = [ "base16ct 0.2.0", "der 0.7.10", - "generic-array 0.14.9", + "generic-array 0.14.7", "pkcs8 0.10.2", "subtle", "zeroize", @@ -10559,14 +10561,14 @@ checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348" dependencies = [ "proc-macro2", "quote", - "syn 3.0.1", + "syn 3.0.2", ] [[package]] name = "serde_json" -version = "1.0.150" +version = "1.0.151" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8014e44b4736ed0538adeecded0fce2a272f22dc9578a7eb6b2d9993c74cfb9" +checksum = "c841b55ecdae098c80dcae9cf767f6f8a0c2cdb3416bbef72181df4d0fe73f14" dependencies = [ "indexmap 2.14.0", "itoa", @@ -10613,7 +10615,7 @@ checksum = "8d3b1629de253c70a0508c3899572da79ca359fdab27c7920ff00406df418906" dependencies = [ "proc-macro2", "quote", - "syn 3.0.1", + "syn 3.0.2", ] [[package]] @@ -10755,6 +10757,17 @@ dependencies = [ "keccak", ] +[[package]] +name = "sha3" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc9bad02c26382724b2d2692c6f179285e4b54eeecd7968f52a50059c3c11759" +dependencies = [ + "digest 0.11.3", + "keccak", + "sponge-cursor", +] + [[package]] name = "shadow-rs" version = "2.0.0" @@ -11027,6 +11040,12 @@ dependencies = [ "der 0.8.1", ] +[[package]] +name = "sponge-cursor" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a0219bd7d979d58245a4f41f695e1ac9f8befdffadd7f61f1bae9e39abc6620" + [[package]] name = "sqlparser" version = "0.62.0" @@ -11091,11 +11110,11 @@ dependencies = [ "argon2", "bcrypt-pbkdf", "ctutils", - "ed25519-dalek 3.0.0-rc.1", + "ed25519-dalek 3.0.0", "hex", "hmac 0.13.0", - "p256 0.14.0-rc.15", - "p384 0.14.0-rc.15", + "p256 0.14.0", + "p384 0.14.0", "p521", "rand_core 0.10.1", "rsa 0.10.0-rc.18", @@ -11301,9 +11320,9 @@ dependencies = [ [[package]] name = "syn" -version = "3.0.1" +version = "3.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5edbec4ed188954a10c12c038215f8ce7606b2d5c973cd8dc43e8795065c5f2f" +checksum = "a207d6d6a2b7fc470b80443726053f18a2481b7e1eee970597051596567987a3" dependencies = [ "proc-macro2", "quote", @@ -11522,7 +11541,7 @@ checksum = "43cbfe0cf76104d42a574802844187e84a305e531ed54455f11fbde0f10541cd" dependencies = [ "proc-macro2", "quote", - "syn 3.0.1", + "syn 3.0.2", ] [[package]] @@ -11536,9 +11555,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.53" +version = "0.3.54" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18dfaaeddcb932337b5e7866ee7d0ce9b76d2fd092997146f187ec09b4558a50" +checksum = "3e1d5e639ff6bab73cb6885cc7e7b1de96c3f32c68ec55f3952614bec1092244" dependencies = [ "deranged", "js-sys", @@ -11559,9 +11578,9 @@ checksum = "9e1c906769ad99c88eaa54e728060edef082f8e358ff32030cb7c7d315e81109" [[package]] name = "time-macros" -version = "0.2.31" +version = "0.2.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c431b87111666e491a90baa837f914fb45cd5dc3c268591b0220ff5057f2085f" +checksum = "7e689342a48d2ea927c87ea50cabf8594854bf940e9310208848d680d668ed85" dependencies = [ "num-conv", "time-core", @@ -11646,9 +11665,9 @@ dependencies = [ [[package]] name = "tokio" -version = "1.53.0" +version = "1.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d988bcd52dbe076d3d46903332f58c912b87a2c49b1428419a5845154762ffee" +checksum = "202caea871b69668250d242070849eb495be178ed697a3e98aebce5bc81a0bed" dependencies = [ "bytes", "libc", @@ -12902,18 +12921,18 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.8.54" +version = "0.8.55" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7cbbc0a705a0fd05cc3676525980d2bf5a9bc4adac6d6475209a7887cf59d19" +checksum = "b5a105cd7b140f6eeec8acff2ea38135d3cab283ada58540f629fe51e46696eb" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.54" +version = "0.8.55" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2e817b7b52d0c7358d3246da9d69935ebb18116b2b102b4230dac079b4862f5" +checksum = "0fe976fb70c78cd64cccfe3a6fc142244e8a77b70959b30faf9d0ac37ee228eb" dependencies = [ "proc-macro2", "quote", diff --git a/Cargo.toml b/Cargo.toml index 8d077ee40..ba81c52dd 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -140,7 +140,7 @@ mysql_async = { default-features = false, version = "0.37" } async-compression = { version = "0.4.42" } async-recursion = "1.1.1" async-trait = "0.1.91" -async-nats = "0.49.1" +async-nats = "0.50.0" axum = "0.8.9" futures = "0.3.33" futures-core = "0.3.33" @@ -149,7 +149,7 @@ futures-util = "0.3.33" pollster = "1.0.1" pulsar = { default-features = false, version = "6.8.0" } lapin = { default-features = false, version = "4.10.0" } -hyper = { version = "1.10.1" } +hyper = { version = "1.11.0" } hyper-rustls = { default-features = false, version = "0.27.9" } hyper-util = { version = "0.1.20" } http = "1.4.2" @@ -159,7 +159,7 @@ minlz = "1.2.3" reqwest = "0.13.4" rustfs-kafka-async = { version = "1.2.0" } socket2 = { version = "0.6.5" } -tokio = { version = "1.53.0" } +tokio = { version = "1.53.1" } tokio-rustls = { default-features = false, version = "0.26.4" } tokio-stream = { version = "0.1.18" } tokio-test = "0.4.5" @@ -182,7 +182,7 @@ quick-xml = "0.41.0" rmp = { version = "0.8.15" } rmp-serde = { version = "1.3.1" } serde = { version = "1.0.229" } -serde_json = { version = "1.0.150" } +serde_json = { version = "1.0.151" } serde_urlencoded = "0.7.1" # Cryptography and Security @@ -212,7 +212,7 @@ zeroize = { version = "1.9.0" } chrono = { version = "0.4.45" } humantime = "2.4.0" jiff = { version = "0.2.34" } -time = { version = "0.3.53" } +time = { version = "0.3.54" } # Database deadpool-postgres = { version = "0.14" } @@ -234,7 +234,7 @@ aws-smithy-types = { version = "1.6.1" } base64 = "0.22.1" base64-simd = "0.8.0" brotli = "8.0.4" -clap = { version = "4.6.2" } +clap = { version = "4.6.3" } const-str = { version = "1.1.0" } convert_case = "0.11.0" criterion = { version = "0.8" } @@ -244,7 +244,7 @@ crossbeam-deque = "0.8.7" crossbeam-utils = "0.8.22" datafusion = { default-features = false, git = "https://github.com/apache/datafusion.git", rev = "dae03ee062b2abf986de8df12ea82fb1578a2d99" } derive_builder = "0.20.2" -enumset = "1.1.13" +enumset = "1.1.14" faster-hex = "0.10.0" flate2 = "1.1.9" glob = "0.3.3" @@ -256,7 +256,7 @@ hex-simd = "0.8.0" highway = { version = "1.3.0" } ipnetwork = { version = "0.21.1" } lazy_static = "1.5.0" -libc = "0.2.186" +libc = "0.2.187" libsystemd = "0.7.2" local-ip-address = "0.6.13" memmap2 = "0.9.11" @@ -281,7 +281,7 @@ rayon = "1.12.0" reed-solomon-erasure = { package = "rustfs-erasure-codec", version = "8.0.0" } reed-solomon-simd = "3.1.0" regex = { version = "1.13.1" } -rumqttc = { package = "rumqttc-next", version = "0.33.2" } +rumqttc = { package = "rumqttc-next", version = "0.33.3" } redis = { version = "1.4.1" } rustix = { version = "1.1.4" } rust-embed = { version = "8.12.0" } @@ -333,7 +333,7 @@ libunftp = { version = "0.23.0" } unftp-core = "0.1.0" suppaftp = { version = "10.0.1" } rcgen = "0.14.8" -russh = { version = "0.62.2" } +russh = { version = "0.62.3" } russh-sftp = "2.3.0" # WebDAV @@ -370,21 +370,3 @@ inherits = "release" inherits = "release" debug = true strip = "none" - -# Pin hyper to a revision that carries the HTTP/1 "flush buffered data before -# shutdown" fix (hyperium/hyper#4018, commit 72046cc7). This lands as a -# `[patch.crates-io]` entry — not on the `hyper` workspace dependency — so that -# every consumer in the tree, including the transitive `hyper-util` server path -# (`conn::auto` / `GracefulShutdown`) that actually drives our connections, -# resolves to the fixed hyper rather than the buggy crates.io copy. -# -# hyper <= 1.10.1 can call `poll_shutdown()` on the socket while response bytes -# are still buffered (a prior `poll_flush()` returned `Poll::Pending` and the -# result was discarded). A backpressured / slow-reading peer then receives a -# graceful FIN before the full Content-Length body is flushed, which standard S3 -# clients (minio-go / warp) report as `unexpected EOF` on large-object GET under -# load. The fix is not in any crates.io release yet as of hyper 1.10.1; drop -# this patch once a released version (> 1.10.1) contains commit 72046cc7. -# See rustfs/backlog#1232. -[patch.crates-io] -hyper = { git = "https://github.com/hyperium/hyper.git", rev = "ccc1e850dc0cda3e71b0acd11f60ca3d48d09034" } diff --git a/deny.toml b/deny.toml index ead42bb8e..b676b20a9 100644 --- a/deny.toml +++ b/deny.toml @@ -41,12 +41,6 @@ allow-git = [ # owner: marshawcoco review: 2026-10 "https://github.com/s3s-project/s3s.git", "https://github.com/apache/datafusion.git", - # hyper pinned (via [patch.crates-io]) to a rev carrying the HTTP/1 - # flush-before-shutdown fix (hyperium/hyper#4018, commit 72046cc7) that is - # not yet in a crates.io release. Fixes sporadic large-GET `unexpected EOF` - # (rustfs/backlog#1232). Remove once a released hyper > 1.10.1 contains it. - # owner: rustfs-maintainers review: 2026-07 - "https://github.com/hyperium/hyper.git", ] [bans] diff --git a/rustfs/tests/hyper_h1_shutdown_flush_regression.rs b/rustfs/tests/hyper_h1_shutdown_flush_regression.rs index eb1c6c293..c6191a571 100644 --- a/rustfs/tests/hyper_h1_shutdown_flush_regression.rs +++ b/rustfs/tests/hyper_h1_shutdown_flush_regression.rs @@ -8,19 +8,16 @@ // before the full Content-Length body was flushed, which S3 clients // (minio-go / warp) report as `unexpected EOF`. Fixed upstream by // hyperium/hyper#4018 (commit 72046cc7, "fix(http1): flush buffered data -// before shutdown"), which RustFS pulls in via the `[patch.crates-io]` hyper -// pin in the workspace Cargo.toml. +// before shutdown"), released in hyper 1.11.0. // -// This test reproduces the exact trigger deterministically and fails if the -// pin is ever dropped / hyper is downgraded below the fix — the one realistic -// regression vector (an accidental `cargo update` or a lost patch). It mirrors +// This test reproduces the exact trigger deterministically and fails if hyper +// is downgraded below the fix. It mirrors // hyper's own upstream regression test `tests/h1_shutdown_while_buffered.rs`. // // The load-bearing assertion is on `shutdown_called_with_buffered`, a flag set // synchronously inside `poll_shutdown`. It is timing-independent: a slow CI // runner can only fail to reach the shutdown at all (a false pass), never flip -// the flag spuriously (a false red). Drop this test once the hyper pin is -// replaced by a released hyper > 1.10.1 that contains commit 72046cc7. +// the flag spuriously (a false red). use std::pin::Pin; use std::sync::{Arc, Mutex}; @@ -150,7 +147,7 @@ async fn hyper_h1_does_not_shutdown_with_buffered_response() { assert!( !s.shutdown_called_with_buffered, "hyper shut the HTTP/1 socket down with {} response bytes still buffered — the backlog#1232 \ - premature-FIN bug is back; the hyper flush-before-shutdown pin (hyperium/hyper#4018) was likely dropped", + premature-FIN bug is back; hyperium/hyper#4018 may have regressed", s.buffered_at_shutdown ); }