From d6d5f8714b13185850c93d4363d311e6259e7a06 Mon Sep 17 00:00:00 2001 From: Leafd Date: Sun, 5 Oct 2025 02:36:21 -0400 Subject: [PATCH] fix: update compatibility for rand 0.9 --- src-tauri/Cargo.lock | 2 +- src-tauri/src/lib.rs | 16 +++++++++------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 0ff8799..362390a 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -821,7 +821,7 @@ dependencies = [ "chrono", "discord-rich-presence", "open", - "rand 0.8.5", + "rand 0.9.2", "reqwest", "serde", "serde_json", diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs index 4a6e00d..2dbf27d 100644 --- a/src-tauri/src/lib.rs +++ b/src-tauri/src/lib.rs @@ -10,8 +10,7 @@ use tauri::{Manager, State, WindowEvent}; use tauri_plugin_deep_link::DeepLinkExt; use sha2::{Sha256, Digest}; use base64::{Engine as _, engine::general_purpose}; -use rand::{Rng, thread_rng}; -use rand::distributions::Alphanumeric; +use rand::Rng; use chrono::Datelike; mod database; @@ -51,8 +50,8 @@ impl ApiConfig { } fn generate_code_verifier() -> String { - let mut rng = thread_rng(); - let bytes: Vec = (0..32).map(|_| rng.gen()).collect(); + let mut rng = rand::rng(); + let bytes: Vec = (0..32).map(|_| rng.random()).collect(); general_purpose::URL_SAFE_NO_PAD.encode(&bytes) } @@ -64,10 +63,13 @@ fn generate_code_challenge(verifier: &str) -> String { } fn generate_state() -> String { - let mut rng = thread_rng(); + let mut rng = rand::rng(); (0..32) - .map(|_| rng.sample(Alphanumeric)) - .map(char::from) + .map(|_| { + const CHARSET: &[u8] = b"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; + let idx = (rng.random::() as usize) % CHARSET.len(); + CHARSET[idx] as char + }) .collect() }