v0.13.24 — MapStats: split bytes_pending into nontried / retryable

bytes_pending was an opaque aggregate of NonTried + NonTrimmed +
NonScraped. UIs that wanted a "will retry in Pass 2-N" bucket were
stuck showing the entire unread disc as Maybe at pct=0.

Adds two granular fields to MapStats:

  bytes_nontried   — Pass 1 hasn't read these yet
  bytes_retryable  — NonTrimmed + NonScraped, Pass 2-N will retry

bytes_pending stays for back-compat (= bytes_nontried + bytes_retryable).

Also picks up the cargo fmt --check lint that's been red on main CI
since v0.13.18 (rustfmt fold differences on a few long format-string
layouts; functional no-op).
This commit is contained in:
MattJackson
2026-04-26 19:28:35 -07:00
parent 2cd4fbead7
commit ae76aaf0fa
9 changed files with 74 additions and 42 deletions
+2 -10
View File
@@ -1393,11 +1393,7 @@ impl Disc {
// Fast path — full block read cleanly.
read_ok_count += 1;
if opts.decrypt {
crate::decrypt::decrypt_sectors(
&mut buf[..block_bytes_usz],
&keys,
0,
)?;
crate::decrypt::decrypt_sectors(&mut buf[..block_bytes_usz], &keys, 0)?;
}
file.seek(SeekFrom::Start(pos))
.map_err(|e| Error::IoError { source: e })?;
@@ -1496,11 +1492,7 @@ impl Disc {
read_ok_count += 1;
consecutive_good = consecutive_good.saturating_add(1);
if opts.decrypt {
crate::decrypt::decrypt_sectors(
&mut buf[..one_bytes],
&keys,
0,
)?;
crate::decrypt::decrypt_sectors(&mut buf[..one_bytes], &keys, 0)?;
}
file.seek(SeekFrom::Start(s_pos))
.map_err(|e| Error::IoError { source: e })?;