From 8c497810d6087daeaeb8861d91737169ff522f45 Mon Sep 17 00:00:00 2001 From: Paolo Barbolini Date: Mon, 27 Jan 2025 20:13:00 +0100 Subject: [PATCH] Bump rand to v0.9 --- Cargo.toml | 2 +- examples/Cargo.toml | 2 +- tower/examples/tower-balance.rs | 2 +- tower/tests/balance/main.rs | 13 ++++++++++--- 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 6ad0c653b..260b8ea21 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,7 +17,7 @@ indexmap = "2.0.2" lazy_static = "1.4.0" pin-project-lite = "0.2.7" quickcheck = "1" -rand = "0.8" +rand = "0.9" slab = "0.4" sync_wrapper = "1" tokio = "1.6.2" diff --git a/examples/Cargo.toml b/examples/Cargo.toml index b8faa4622..e9fcf1e42 100644 --- a/examples/Cargo.toml +++ b/examples/Cargo.toml @@ -10,7 +10,7 @@ edition = "2018" tower = { version = "0.4", path = "../tower", features = ["full"] } tower-service = "0.3" tokio = { version = "1.0", features = ["full"] } -rand = "0.8" +rand = "0.9" pin-project = "1.0" futures = "0.3.22" tracing = "0.1" diff --git a/tower/examples/tower-balance.rs b/tower/examples/tower-balance.rs index 998bb7c51..9c173d29d 100644 --- a/tower/examples/tower-balance.rs +++ b/tower/examples/tower-balance.rs @@ -124,7 +124,7 @@ fn gen_disco() -> impl Discover< let maxms = u64::from(latency.subsec_millis()) .saturating_add(latency.as_secs().saturating_mul(1_000)); - let latency = Duration::from_millis(rand::thread_rng().gen_range(0..maxms)); + let latency = Duration::from_millis(rand::rng().random_range(0..maxms)); async move { time::sleep_until(start + latency).await; diff --git a/tower/tests/balance/main.rs b/tower/tests/balance/main.rs index aed51203a..df164c3da 100644 --- a/tower/tests/balance/main.rs +++ b/tower/tests/balance/main.rs @@ -2,6 +2,7 @@ #[path = "../support.rs"] mod support; +use rand::distr::{Distribution, Uniform}; use std::future::Future; use std::task::{Context, Poll}; use tokio_test::{assert_pending, assert_ready, task}; @@ -28,7 +29,9 @@ impl Service for Mock { impl tower::load::Load for Mock { type Metric = usize; fn load(&self) -> Self::Metric { - rand::random() + Uniform::new_inclusive(usize::MIN, usize::MAX) + .unwrap() + .sample(&mut rand::rng()) } } @@ -114,7 +117,9 @@ fn stress() { } else { // remove while !services.is_empty() { - let k = rand::random::() % (services.iter().last().unwrap().0 + 1); + let k = Uniform::new_inclusive(0, services.iter().last().unwrap().0) + .unwrap() + .sample(&mut rand::rng()); if services.contains(k) { let (handle, ready) = services.remove(k); if ready { @@ -129,7 +134,9 @@ fn stress() { } else { // fail a service while !services.is_empty() { - let k = rand::random::() % (services.iter().last().unwrap().0 + 1); + let k = Uniform::new_inclusive(0, services.iter().last().unwrap().0) + .unwrap() + .sample(&mut rand::rng()); if services.contains(k) { let (mut handle, ready) = services.remove(k); if ready {