From 226fe667814802d8547258257c7a6144a67a7f25 Mon Sep 17 00:00:00 2001 From: "altendky-renovate[bot]" <263210179+altendky-renovate[bot]@users.noreply.github.com> Date: Thu, 1 Oct 2026 12:42:45 +0000 Subject: [PATCH 1/2] chore(deps): update rust to 1.99 --- rust-toolchain.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 9e70b8a..2324d54 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,3 +1,3 @@ [toolchain] -channel = "1.98" +channel = "1.99" components = ["rustfmt", "clippy", "llvm-tools-preview"] From c00544e7d95a32c310781f1f3501d7ac3c401640 Mon Sep 17 00:00:00 2001 From: Kyle Altendorf Date: Wed, 7 Oct 2026 20:02:34 -0400 Subject: [PATCH 2/2] Adapt test assertions to Rust 1.99 Clippy --- crates/mujou-export/src/thr.rs | 2 +- crates/mujou-pipeline/src/contour.rs | 2 +- crates/mujou-pipeline/src/diagnostics.rs | 4 ++-- crates/mujou-pipeline/src/mask.rs | 10 +++++----- crates/mujou-pipeline/src/optimize.rs | 2 +- crates/mujou-pipeline/src/pipeline.rs | 4 ++-- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/crates/mujou-export/src/thr.rs b/crates/mujou-export/src/thr.rs index 31c65cd..2faea65 100644 --- a/crates/mujou-export/src/thr.rs +++ b/crates/mujou-export/src/thr.rs @@ -256,7 +256,7 @@ mod tests { fn empty_polylines_produces_header_only() { let thr = to_thr(&[], &no_meta()); let pairs = parse_pairs(&thr); - assert!(pairs.is_empty()); + assert_eq!(pairs, []); } #[test] diff --git a/crates/mujou-pipeline/src/contour.rs b/crates/mujou-pipeline/src/contour.rs index 36504a2..635c88b 100644 --- a/crates/mujou-pipeline/src/contour.rs +++ b/crates/mujou-pipeline/src/contour.rs @@ -86,7 +86,7 @@ mod tests { fn empty_image_produces_no_contours() { let img = GrayImage::new(10, 10); // all black let result = ContourTracerKind::BorderFollowing.trace(&img); - assert!(result.is_empty()); + assert_eq!(result, [] as [Polyline; 0]); } #[test] diff --git a/crates/mujou-pipeline/src/diagnostics.rs b/crates/mujou-pipeline/src/diagnostics.rs index b4e561c..b81499a 100644 --- a/crates/mujou-pipeline/src/diagnostics.rs +++ b/crates/mujou-pipeline/src/diagnostics.rs @@ -905,7 +905,7 @@ mod tests { }; let report = diag.report(); - assert!(!report.is_empty()); + assert_ne!(report, ""); assert!(report.contains("Pipeline Diagnostics Report")); assert!(report.contains("Edge Detection")); assert!(report.contains("Retrace")); @@ -1011,7 +1011,7 @@ mod tests { }; let report = diag.report(); - assert!(!report.is_empty()); + assert_ne!(report, ""); // Verify the applied=true formatting path: "AxB -> CxD (target=N, Filter)" assert!( report.contains("800x600 -> 256x192"), diff --git a/crates/mujou-pipeline/src/mask.rs b/crates/mujou-pipeline/src/mask.rs index 4b80ae6..3a89304 100644 --- a/crates/mujou-pipeline/src/mask.rs +++ b/crates/mujou-pipeline/src/mask.rs @@ -646,7 +646,7 @@ mod tests { fn empty_polyline_returns_empty() { let pl = Polyline::new(vec![]); let result = clip_polyline_to_circle(&pl, CENTER, RADIUS); - assert!(result.is_empty()); + assert_eq!(result, [] as [ClippedPolyline; 0]); } #[test] @@ -672,7 +672,7 @@ mod tests { Point::new(30.0, 30.0), ]); let result = clip_polyline_to_circle(&pl, CENTER, RADIUS); - assert!(result.is_empty()); + assert_eq!(result, [] as [ClippedPolyline; 0]); } #[test] @@ -782,7 +782,7 @@ mod tests { // A single point can't form a segment (need >= 2 points). let pl = Polyline::new(vec![Point::new(0.0, 0.0)]); let result = clip_polyline_to_circle(&pl, CENTER, RADIUS); - assert!(result.is_empty()); + assert_eq!(result, [] as [ClippedPolyline; 0]); } // ── apply_mask ─────────────────────────────────────────────────── @@ -951,7 +951,7 @@ mod tests { fn rect_empty_polyline_returns_empty() { let pl = Polyline::new(vec![]); let result = clip_polyline_to_rectangle(&pl, CENTER, HALF_W, HALF_H); - assert!(result.is_empty()); + assert_eq!(result, [] as [ClippedPolyline; 0]); } #[test] @@ -976,7 +976,7 @@ mod tests { Point::new(30.0, 30.0), ]); let result = clip_polyline_to_rectangle(&pl, CENTER, HALF_W, HALF_H); - assert!(result.is_empty()); + assert_eq!(result, [] as [ClippedPolyline; 0]); } #[test] diff --git a/crates/mujou-pipeline/src/optimize.rs b/crates/mujou-pipeline/src/optimize.rs index af5fcbe..f65cc43 100644 --- a/crates/mujou-pipeline/src/optimize.rs +++ b/crates/mujou-pipeline/src/optimize.rs @@ -119,7 +119,7 @@ mod tests { #[test] fn empty_input_returns_empty() { let result = optimize_path_order(&[], TEST_STRATEGY, TEST_DIMS); - assert!(result.is_empty()); + assert_eq!(result, [] as [Polyline; 0]); } #[test] diff --git a/crates/mujou-pipeline/src/pipeline.rs b/crates/mujou-pipeline/src/pipeline.rs index ffcaf19..17f50ee 100644 --- a/crates/mujou-pipeline/src/pipeline.rs +++ b/crates/mujou-pipeline/src/pipeline.rs @@ -1944,7 +1944,7 @@ mod tests { .detect_edges() .trace_contours() .unwrap(); - assert!(!contours.contours().is_empty()); + assert_ne!(contours.contours(), [] as [Polyline; 0]); } #[test] @@ -1983,7 +1983,7 @@ mod tests { .trace_contours() .unwrap() .simplify(); - assert!(!simplified.simplified().is_empty()); + assert_ne!(simplified.simplified(), [] as [Polyline; 0]); } #[test]