From f9874b591a0006c6779d9b7f1fa4204e02cb6fd6 Mon Sep 17 00:00:00 2001 From: houseme Date: Sat, 11 Jul 2026 03:53:23 +0800 Subject: [PATCH] [DO NOT MERGE until published] chore(ecstore): switch rustfs-uring to crates.io 0.1.0 (#4701) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore(ecstore): switch rustfs-uring from the git rev to crates.io 0.1.0 Prepared ahead of the rustfs-uring 0.1.0 crates.io release (rustfs/uring): flip ecstore's dependency from the pinned git revision to the published `0.1.0`, and drop the now-unneeded git-source allowance in deny.toml. DO NOT MERGE until rustfs-uring 0.1.0 is on crates.io. Until then cargo cannot resolve `rustfs-uring = "0.1.0"`, so this branch will not build and CI will be red — that is expected, not a defect in the change. After the crate is published: 1. `cargo update -p rustfs-uring --precise 0.1.0` to regenerate Cargo.lock (deliberately not touched here — the registry entry, with its checksum, cannot be written before the crate exists); 2. push the Cargo.lock; 3. CI goes green; merge. No code change. The guard `scripts/check_no_tokio_io_uring.sh` is unaffected (it bans only tokio's io-uring runtime feature, not an explicit rustfs-uring dependency). `audit.yml`'s `allow-dependencies-licenses` for rustfs-uring is left in place — it is a first-party Apache-2.0 crate either way. Co-Authored-By: heihutu * chore: refresh rustfs-uring lockfile --------- Co-authored-by: heihutu --- Cargo.lock | 17 +++++++++-------- crates/ecstore/Cargo.toml | 6 +++--- deny.toml | 3 --- 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 445e4d4ee..ac719159b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3966,7 +3966,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -5376,7 +5376,7 @@ checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46" dependencies = [ "hermit-abi", "libc", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -8094,7 +8094,7 @@ dependencies = [ "once_cell", "socket2", "tracing", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -10032,7 +10032,8 @@ dependencies = [ [[package]] name = "rustfs-uring" version = "0.1.0" -source = "git+https://github.com/rustfs/uring?rev=719b245f9bb24e838de8639c19858df2690f3ae1#719b245f9bb24e838de8639c19858df2690f3ae1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f93a938838b26259162f23283de9d02922dc7b66d3a3c48a4db6036a44e9cf29" dependencies = [ "io-uring", "libc", @@ -10158,7 +10159,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys 0.12.1", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -10232,7 +10233,7 @@ dependencies = [ "security-framework", "security-framework-sys", "webpki-root-certs", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -11396,7 +11397,7 @@ dependencies = [ "getrandom 0.4.3", "once_cell", "rustix 1.1.4", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -12497,7 +12498,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] diff --git a/crates/ecstore/Cargo.toml b/crates/ecstore/Cargo.toml index 0bf0c13a5..625e7ff8f 100644 --- a/crates/ecstore/Cargo.toml +++ b/crates/ecstore/Cargo.toml @@ -140,12 +140,12 @@ aws-smithy-http-client.workspace = true # Observability and Metrics metrics = { workspace = true } -# Runtime-probed io_uring read backend (backlog#1104). Linux-only, git -# dependency until rustfs-uring is production-ready and published. The guard +# Runtime-probed io_uring read backend (backlog#1104). Linux-only, from +# crates.io once rustfs-uring 0.1.0 is published. The guard # scripts/check_no_tokio_io_uring.sh allows an explicit io-uring integration; # only the tokio "io-uring" runtime feature is banned. [target.'cfg(target_os = "linux")'.dependencies] -rustfs-uring = { git = "https://github.com/rustfs/uring", rev = "719b245f9bb24e838de8639c19858df2690f3ae1" } +rustfs-uring = "0.1.0" [dev-dependencies] tokio = { workspace = true, features = ["rt-multi-thread", "macros", "test-util"] } diff --git a/deny.toml b/deny.toml index f2259871d..f36957da9 100644 --- a/deny.toml +++ b/deny.toml @@ -40,9 +40,6 @@ allow-git = [ # Pinned to a specific commit in workspace Cargo.toml. # "https://github.com/rustfs/s3s", "https://github.com/apache/datafusion.git", - # Runtime-probed io_uring read backend (backlog#1104), Linux-only. - # Pinned to a specific commit in crates/ecstore/Cargo.toml. - "https://github.com/rustfs/uring", ] [bans]