From f4e345abdf292d051ea30d25a099a977d05a1972 Mon Sep 17 00:00:00 2001 From: Joscha Date: Sat, 22 Feb 2025 16:29:16 +0100 Subject: [PATCH] Update rand to 0.9.0 --- Cargo.lock | 111 ++++++++++++++++++--- Cargo.toml | 2 +- showbits-thermal-printer/src/drawer/egg.rs | 10 +- 3 files changed, 102 insertions(+), 21 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0bc0f18..e23f37a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -915,7 +915,19 @@ checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" dependencies = [ "cfg-if", "libc", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", +] + +[[package]] +name = "getrandom" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a49c392881ce6d5c3b8cb70f98717b7c07aabbdff06687b9030dbfbe2725f8" +dependencies = [ + "cfg-if", + "libc", + "wasi 0.13.3+wasi-0.2.2", + "windows-targets", ] [[package]] @@ -1467,8 +1479,8 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "636860251af8963cc40f6b4baadee105f02e21b28131d76eba8e40ce84ab8064" dependencies = [ - "rand", - "rand_chacha", + "rand 0.8.5", + "rand_chacha 0.3.1", ] [[package]] @@ -1512,7 +1524,7 @@ source = "git+https://github.com/Garmelon/mark.git#2345d80d803e0e9590681a4974349 dependencies = [ "image 0.25.5", "palette", - "rand", + "rand 0.8.5", ] [[package]] @@ -1585,7 +1597,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ "libc", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", "windows-sys 0.52.0", ] @@ -1788,7 +1800,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" dependencies = [ "phf_shared", - "rand", + "rand 0.8.5", ] [[package]] @@ -1902,7 +1914,7 @@ version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" dependencies = [ - "zerocopy", + "zerocopy 0.7.35", ] [[package]] @@ -1998,8 +2010,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", - "rand_chacha", - "rand_core", + "rand_chacha 0.3.1", + "rand_core 0.6.4", +] + +[[package]] +name = "rand" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3779b94aeb87e8bd4e834cee3650289ee9e0d5677f976ecdb6d219e5f4f6cd94" +dependencies = [ + "rand_chacha 0.9.0", + "rand_core 0.9.1", + "zerocopy 0.8.20", ] [[package]] @@ -2009,7 +2032,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_chacha" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" +dependencies = [ + "ppv-lite86", + "rand_core 0.9.1", ] [[package]] @@ -2018,7 +2051,17 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom", + "getrandom 0.2.15", +] + +[[package]] +name = "rand_core" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a88e0da7a2c97baa202165137c158d0a2e824ac465d13d81046727b34cb247d3" +dependencies = [ + "getrandom 0.3.1", + "zerocopy 0.8.20", ] [[package]] @@ -2053,8 +2096,8 @@ dependencies = [ "once_cell", "paste", "profiling", - "rand", - "rand_chacha", + "rand 0.8.5", + "rand_chacha 0.3.1", "simd_helpers", "system-deps", "thiserror", @@ -2421,7 +2464,7 @@ dependencies = [ "image 0.25.5", "mime_guess", "palette", - "rand", + "rand 0.9.0", "rust-embed", "serde", "showbits-assets", @@ -3322,6 +3365,15 @@ version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +[[package]] +name = "wasi" +version = "0.13.3+wasi-0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26816d2e1a4a36a2940b96c5296ce403917633dff8f3440e9b236ed6f6bacad2" +dependencies = [ + "wit-bindgen-rt", +] + [[package]] name = "wasm-bindgen" version = "0.2.100" @@ -3526,6 +3578,15 @@ dependencies = [ "memchr", ] +[[package]] +name = "wit-bindgen-rt" +version = "0.33.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3268f3d866458b787f390cf61f4bbb563b922d091359f9608842999eaee3943c" +dependencies = [ + "bitflags 2.8.0", +] + [[package]] name = "write16" version = "1.0.0" @@ -3596,7 +3657,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ "byteorder", - "zerocopy-derive", + "zerocopy-derive 0.7.35", +] + +[[package]] +name = "zerocopy" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dde3bb8c68a8f3f1ed4ac9221aad6b10cece3e60a8e2ea54a6a2dec806d0084c" +dependencies = [ + "zerocopy-derive 0.8.20", ] [[package]] @@ -3610,6 +3680,17 @@ dependencies = [ "syn", ] +[[package]] +name = "zerocopy-derive" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eea57037071898bf96a6da35fd626f4f27e9cee3ead2a6c703cf09d472b2e700" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "zerofrom" version = "0.1.5" diff --git a/Cargo.toml b/Cargo.toml index e4ce1b7..dec0f78 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -18,7 +18,7 @@ mark.git = "https://github.com/Garmelon/mark.git" mime_guess = "2.0.5" palette = "0.7.6" paste = "1.0.15" -rand = "0.8.5" +rand = "0.9.0" rust-embed = "8.4.0" serde = { version = "1.0.201", features = ["derive"] } showbits-assets.path = "./showbits-assets" diff --git a/showbits-thermal-printer/src/drawer/egg.rs b/showbits-thermal-printer/src/drawer/egg.rs index f96fcd5..6fa4c6a 100644 --- a/showbits-thermal-printer/src/drawer/egg.rs +++ b/showbits-thermal-printer/src/drawer/egg.rs @@ -1,5 +1,5 @@ use image::{RgbaImage, imageops}; -use rand::{Rng, seq::SliceRandom}; +use rand::{Rng, seq::IndexedRandom}; use showbits_assets::{EGG_BAD_COVERS, EGG_BAD_PATTERNS, EGG_COVERS, EGG_PATTERNS}; use showbits_common::{ Node, Tree, WidgetExt, @@ -22,10 +22,10 @@ fn load_image(bytes: &[u8]) -> RgbaImage { impl Drawing for EggDrawing { fn draw(&self, printer: &mut Printer, ctx: &mut Context) -> anyhow::Result<()> { - let mut rng = rand::thread_rng(); + let mut rng = rand::rng(); // Choose which set of egg images to use - let bad_egg = rng.gen_range(0..8) == 0; + let bad_egg = rng.random_range(0..8) == 0; let (covers, patterns) = if bad_egg { (EGG_BAD_COVERS, EGG_BAD_PATTERNS) } else { @@ -48,10 +48,10 @@ impl Drawing for EggDrawing { // Draw patterns onto egg let mut last_idx = None; - let mut y = rng.gen_range(-100_i64..0); + let mut y = rng.random_range(-100_i64..0); while y < image.height().into() { let idx = loop { - let idx = rng.gen_range(0..patterns.len()); + let idx = rng.random_range(0..patterns.len()); if Some(idx) != last_idx { break idx; }