From 458dcabbd28ec03444fc9398ac4a5bfe1c40fc0f Mon Sep 17 00:00:00 2001 From: Will Jones Date: Fri, 29 May 2026 08:21:45 -0700 Subject: [PATCH] chore: upgrade Rust toolchain to 1.95.0 (#3390) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps the pinned toolchain in `rust-toolchain.toml` from 1.94.0 to 1.95.0. Fixes new lints surfaced by clippy on 1.95.0: - `manual_checked_ops` — fragment size mean in `table.rs` uses `checked_div` - `explicit_counter_loop` — shuffle test loop in `shuffle.rs` No rustc warnings were introduced. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.7 (1M context) --- rust-toolchain.toml | 2 +- rust/lancedb/src/dataloader/permutation/shuffle.rs | 4 +--- rust/lancedb/src/table.rs | 11 ++++++----- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 76a06e6b8..f25b5b140 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,2 +1,2 @@ [toolchain] -channel = "1.94.0" +channel = "1.95.0" diff --git a/rust/lancedb/src/dataloader/permutation/shuffle.rs b/rust/lancedb/src/dataloader/permutation/shuffle.rs index 7cd27e342..b26db7bea 100644 --- a/rust/lancedb/src/dataloader/permutation/shuffle.rs +++ b/rust/lancedb/src/dataloader/permutation/shuffle.rs @@ -464,11 +464,9 @@ mod tests { let mut iter = ids.into_iter().map(|o| o.unwrap()); while let Some(first) = iter.next() { let rows_left_in_clump = if first == 4470 { 19 } else { 29 }; - let mut expected_next = first + 1; - for _ in 0..rows_left_in_clump { + for expected_next in (first + 1)..=(first + rows_left_in_clump) { let next = iter.next().unwrap(); assert_eq!(next, expected_next); - expected_next += 1; } } } diff --git a/rust/lancedb/src/table.rs b/rust/lancedb/src/table.rs index 0866b3e55..96f0cffcf 100644 --- a/rust/lancedb/src/table.rs +++ b/rust/lancedb/src/table.rs @@ -3015,11 +3015,12 @@ impl BaseTable for NativeTable { let p99 = *sorted_sizes.get(num_fragments * 99 / 100).unwrap_or(&0); let min = sorted_sizes.first().copied().unwrap_or(0); let max = sorted_sizes.last().copied().unwrap_or(0); - let mean = if num_fragments == 0 { - 0 - } else { - sorted_sizes.iter().copied().sum::() / num_fragments - }; + let mean = sorted_sizes + .iter() + .copied() + .sum::() + .checked_div(num_fragments) + .unwrap_or(0); let frag_stats = FragmentStatistics { num_fragments,