validator: switch futures to leaner futures-util

This commit is contained in:
2026-03-06 09:49:53 -08:00
parent 4e8ebd826a
commit b6ac6ce47f
6 changed files with 11 additions and 44 deletions

38
Cargo.lock generated
View File

@@ -1484,21 +1484,6 @@ version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c"
[[package]]
name = "futures"
version = "0.3.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8b147ee9d1f6d097cef9ce628cd2ee62288d963e16fb287bd9286455b241382d"
dependencies = [
"futures-channel",
"futures-core",
"futures-executor",
"futures-io",
"futures-sink",
"futures-task",
"futures-util",
]
[[package]] [[package]]
name = "futures-channel" name = "futures-channel"
version = "0.3.32" version = "0.3.32"
@@ -1506,7 +1491,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "07bbe89c50d7a535e539b8c17bc0b49bdb77747034daa8087407d655f3f7cc1d" checksum = "07bbe89c50d7a535e539b8c17bc0b49bdb77747034daa8087407d655f3f7cc1d"
dependencies = [ dependencies = [
"futures-core", "futures-core",
"futures-sink",
] ]
[[package]] [[package]]
@@ -1515,23 +1499,6 @@ version = "0.3.32"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d" checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d"
[[package]]
name = "futures-executor"
version = "0.3.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "baf29c38818342a3b26b5b923639e7b1f4a61fc5e76102d4b1981c6dc7a7579d"
dependencies = [
"futures-core",
"futures-task",
"futures-util",
]
[[package]]
name = "futures-io"
version = "0.3.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cecba35d7ad927e23624b22ad55235f2239cfa44fd10428eecbeba6d6a717718"
[[package]] [[package]]
name = "futures-macro" name = "futures-macro"
version = "0.3.32" version = "0.3.32"
@@ -1561,13 +1528,10 @@ version = "0.3.32"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6" checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6"
dependencies = [ dependencies = [
"futures-channel",
"futures-core", "futures-core",
"futures-io",
"futures-macro", "futures-macro",
"futures-sink", "futures-sink",
"futures-task", "futures-task",
"memchr",
"pin-project-lite", "pin-project-lite",
"slab", "slab",
] ]
@@ -2411,7 +2375,7 @@ name = "maps-validation"
version = "0.1.1" version = "0.1.1"
dependencies = [ dependencies = [
"async-nats", "async-nats",
"futures", "futures-util",
"heck", "heck",
"rbx_asset", "rbx_asset",
"rbx_binary", "rbx_binary",

View File

@@ -8,6 +8,7 @@ resolver = "2"
[workspace.dependencies] [workspace.dependencies]
async-nats = "0.46.0" async-nats = "0.46.0"
futures-util = "0.3.31"
rbx_asset = { version = "0.5.0", features = ["gzip", "rustls-tls"], default-features = false, registry = "strafesnet" } rbx_asset = { version = "0.5.0", features = ["gzip", "rustls-tls"], default-features = false, registry = "strafesnet" }
rbx_binary = "2.0.1" rbx_binary = "2.0.1"
rbx_dom_weak = "4.1.0" rbx_dom_weak = "4.1.0"

View File

@@ -5,7 +5,7 @@ edition = "2024"
[dependencies] [dependencies]
async-nats.workspace = true async-nats.workspace = true
futures = "0.3.31" futures-util.workspace = true
rbx_asset.workspace = true rbx_asset.workspace = true
rbx_binary.workspace = true rbx_binary.workspace = true
rbx_dom_weak.workspace = true rbx_dom_weak.workspace = true

View File

@@ -1,4 +1,4 @@
use futures::StreamExt; use futures_util::StreamExt;
mod download; mod download;
mod grpc; mod grpc;

View File

@@ -1,4 +1,5 @@
use futures::StreamExt; use futures_util::stream::iter as stream_iter;
use futures_util::StreamExt;
use crate::download::download_asset_version; use crate::download::download_asset_version;
use crate::nats_types::ReleaseSubmissionsBatchRequest; use crate::nats_types::ReleaseSubmissionsBatchRequest;
@@ -92,7 +93,7 @@ async fn release_inner(
.collect(); .collect();
// fut_download // fut_download
let fut_download=futures::stream::iter(asset_versions) let fut_download=stream_iter(asset_versions)
.map(|(index,asset_version)|async move{ .map(|(index,asset_version)|async move{
let modes=download_fut(cloud_context,asset_version).await; let modes=download_fut(cloud_context,asset_version).await;
(index,modes) (index,modes)
@@ -137,7 +138,7 @@ async fn release_inner(
} }
// concurrently dispatch results // concurrently dispatch results
let release_results:Vec<_> =futures::stream::iter( let release_results:Vec<_> =stream_iter(
release_info release_info
.Submissions .Submissions
.into_iter() .into_iter()

View File

@@ -1,4 +1,5 @@
use futures::TryStreamExt; use futures_util::stream::iter as stream_iter;
use futures_util::TryStreamExt;
use rust_grpc::validator::Policy; use rust_grpc::validator::Policy;
use crate::download::download_asset_version; use crate::download::download_asset_version;
@@ -153,7 +154,7 @@ impl crate::message_handler::MessageHandler{
} }
// send all script hashes to REST endpoint and retrieve the replacements // send all script hashes to REST endpoint and retrieve the replacements
futures::stream::iter(script_map.iter_mut().map(Ok)) stream_iter(script_map.iter_mut().map(Ok))
.try_for_each_concurrent(Some(SCRIPT_CONCURRENCY),|(source,NamePolicy{policy,name})|async{ .try_for_each_concurrent(Some(SCRIPT_CONCURRENCY),|(source,NamePolicy{policy,name})|async{
// get the hash // get the hash
let hash=hash_source(source.as_str()); let hash=hash_source(source.as_str());