From 55bd1ee868229e68c834d9f11866472c4f7d869d Mon Sep 17 00:00:00 2001 From: MattJackson <1085847+MattJackson@users.noreply.github.com> Date: Tue, 12 May 2026 21:29:07 -0700 Subject: [PATCH] v0.19.1: repair Cargo.toml after botched 0.19.0 bump MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit v0.19.0 was tagged with a search-and-replace gone wrong: rust-version, serde, and zip all had their version strings replaced with "0.19.0". Edition 2024 rejected rust-version 0.19.0 (< 1.85), failing every CI build. No artifacts shipped to crates.io. Repair: - rust-version: 0.19.0 → 1.86 (CI pin) - serde: 0.19.0 → 1 - zip: 0.19.0 → 2 Also drops an unused start_lba binding in mux/disc.rs that clippy 1.86 catches. --- Cargo.toml | 8 ++++---- src/mux/disc.rs | 7 +++---- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index c79ca88..c2ea43b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,8 +1,8 @@ [package] name = "libfreemkv" -version = "0.19.0" +version = "0.19.1" edition = "2024" -rust-version = "0.19.0" +rust-version = "1.86" license = "AGPL-3.0-only" description = "Open source raw disc access library for optical drives" repository = "https://github.com/freemkv/libfreemkv" @@ -10,7 +10,7 @@ keywords = ["bluray", "uhd", "optical", "scsi", "disc"] categories = ["hardware-support", "multimedia"] [dependencies] -serde = { version = "0.19.0", features = ["derive"] } +serde = { version = "1", features = ["derive"] } serde_json = "1" sha1 = "0.10" sha2 = "0.10" @@ -22,7 +22,7 @@ num-traits = "0.2" num-integer = "0.1" rand = "0.8" cmac = "0.7" -zip = { version = "0.19.0", default-features = false, features = ["deflate"] } +zip = { version = "2", default-features = false, features = ["deflate"] } base64 = "0.22.1" # Trace-level instrumentation for Disc::copy + SgIoTransport::execute. Permitted # under project docs ("Acceptable strings: debug/trace logging"). Consumers (autorip) diff --git a/src/mux/disc.rs b/src/mux/disc.rs index e2a2bcd..2d651f8 100644 --- a/src/mux/disc.rs +++ b/src/mux/disc.rs @@ -318,14 +318,13 @@ impl DiscStream { // on failure, advance on success. One 5s read attempt per try — no // retry loops, no sleeps. On size-1 failure, skip or error. // - // Halt is checked at the top of every iteration — in a dense bad zone + // Halt is checked at the top of every iteration — in a dense bad zone // this loop can spend minutes shrinking and skipping sectors; without // the check, Stop wouldn't take effect until the outer PES read() loop // finally emits a frame, which may never happen. - - let start_lba = lba; + let start_time = std::time::Instant::now(); - + loop { if self.is_halted() { return Err(crate::error::Error::Halted.into());