From 7573a69d2e5bc74ca2f19ccef932201157e1b686 Mon Sep 17 00:00:00 2001 From: huyphan Date: Mon, 6 Jul 2026 12:58:23 -0600 Subject: [PATCH 1/2] fix(desktop): update to rand 0.10's renamed API MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A prior dependabot bump (ff189ac) took rand 0.8.6 -> 0.10.1 in Cargo.toml without updating the two call sites, silently breaking the desktop build on every platform (never caught because no tagged release had actually run desktop-release.yml until now). rand 0.10 renamed thread_rng() -> rng() and no longer re-exports RngCore at the crate root — filling a byte slice now goes through the RngExt trait's fill() method instead. Verified with `cargo check` and a release build against the exact resolved 0.10.1 source. Co-Authored-By: Claude Sonnet 5 --- apps/desktop/src-tauri/Cargo.lock | 2 +- apps/desktop/src-tauri/src/lib.rs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/desktop/src-tauri/Cargo.lock b/apps/desktop/src-tauri/Cargo.lock index 3ca137a..9a45899 100644 --- a/apps/desktop/src-tauri/Cargo.lock +++ b/apps/desktop/src-tauri/Cargo.lock @@ -1003,7 +1003,7 @@ dependencies = [ [[package]] name = "foxschema-desktop" -version = "0.0.2" +version = "0.1.0" dependencies = [ "keyring", "log", diff --git a/apps/desktop/src-tauri/src/lib.rs b/apps/desktop/src-tauri/src/lib.rs index 395fc06..da0ad30 100644 --- a/apps/desktop/src-tauri/src/lib.rs +++ b/apps/desktop/src-tauri/src/lib.rs @@ -4,7 +4,7 @@ use std::net::TcpListener; use std::path::PathBuf; use std::sync::Mutex; -use rand::RngCore; +use rand::RngExt; use serde::{Deserialize, Serialize}; use tauri::{AppHandle, Manager, RunEvent, State}; use tauri_plugin_shell::process::{CommandChild, CommandEvent}; @@ -65,7 +65,7 @@ fn free_port() -> u16 { fn random_key_hex() -> String { let mut bytes = [0u8; 32]; - rand::thread_rng().fill_bytes(&mut bytes); + rand::rng().fill(&mut bytes); bytes.iter().map(|b| format!("{:02x}", b)).collect() } From 96a3373d060e64993180eae51e4749c4e00bc247 Mon Sep 17 00:00:00 2001 From: huyphan Date: Mon, 6 Jul 2026 13:11:29 -0600 Subject: [PATCH 2/2] fix(desktop): make build:frontend Windows-compatible MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit VITE_EDITION=community vite build ... is POSIX inline-env-var syntax — Windows cmd.exe can't parse it ('VITE_EDITION' is not recognized...), so tauri-action's beforeBuildCommand failed on windows-latest before even reaching the Rust compile. Wrapped with cross-env, which every other package manager script in this monorepo already avoids needing because none of them set an inline env var like this one does. Co-Authored-By: Claude Sonnet 5 --- apps/desktop/package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/desktop/package.json b/apps/desktop/package.json index bb8b459..24c9db9 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -4,7 +4,7 @@ "version": "0.1.0", "type": "module", "scripts": { - "build:frontend": "cd ../web && VITE_EDITION=community vite build --outDir ../desktop/src-tauri/frontendDist --emptyOutDir", + "build:frontend": "cd ../web && cross-env VITE_EDITION=community vite build --outDir ../desktop/src-tauri/frontendDist --emptyOutDir", "build:sidecar": "node scripts/build-sidecar.mjs", "dev:frontend": "cd ../web && vite", "predev": "npm run build:sidecar", @@ -15,6 +15,7 @@ }, "devDependencies": { "@tauri-apps/cli": "^2", + "cross-env": "^7.0.3", "esbuild": "^0.28.0" } }