[INFO] fetching crate iron-shapes 0.1.1... [INFO] testing iron-shapes-0.1.1 against beta-2025-09-21 for beta-1.91-3 [INFO] extracting crate iron-shapes 0.1.1 into /workspace/builds/worker-1-tc2/source [INFO] started tweaking crates.io crate iron-shapes 0.1.1 [INFO] finished tweaking crates.io crate iron-shapes 0.1.1 [INFO] tweaked toml for crates.io crate iron-shapes 0.1.1 written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate iron-shapes 0.1.1 on toolchain beta-2025-09-21 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 24 packages to latest compatible versions [INFO] [stderr] Adding itertools v0.13.0 (available: v0.14.0) [INFO] [stderr] Adding rand v0.8.5 (available: v0.9.2) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7099c32648614253e2b0e793071ada53d13de4a8b6dbf12f38f39ff4c4e9a061 [INFO] running `Command { std: "docker" "start" "-a" "7099c32648614253e2b0e793071ada53d13de4a8b6dbf12f38f39ff4c4e9a061", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7099c32648614253e2b0e793071ada53d13de4a8b6dbf12f38f39ff4c4e9a061", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7099c32648614253e2b0e793071ada53d13de4a8b6dbf12f38f39ff4c4e9a061", kill_on_drop: false }` [INFO] [stdout] 7099c32648614253e2b0e793071ada53d13de4a8b6dbf12f38f39ff4c4e9a061 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 446f675111cf4072110b2765b698ea01a376bfedf2d56a659b671fce2ffffc08 [INFO] running `Command { std: "docker" "start" "-a" "446f675111cf4072110b2765b698ea01a376bfedf2d56a659b671fce2ffffc08", kill_on_drop: false }` [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling iron-shapes v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/point_string.rs:54:17 [INFO] [stdout] | [INFO] [stdout] 54 | pub fn iter(&self) -> Iter> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 54 | pub fn iter(&self) -> Iter<'_, Point> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/simple_polygon.rs:83:17 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn iter(&self) -> Iter> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 83 | pub fn iter(&self) -> Iter<'_, Point> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.05s [INFO] running `Command { std: "docker" "inspect" "446f675111cf4072110b2765b698ea01a376bfedf2d56a659b671fce2ffffc08", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "446f675111cf4072110b2765b698ea01a376bfedf2d56a659b671fce2ffffc08", kill_on_drop: false }` [INFO] [stdout] 446f675111cf4072110b2765b698ea01a376bfedf2d56a659b671fce2ffffc08 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9456a20a11d81c3785e6dc5035af1346677fc0276dfc4d0e7da9f18bb0bf075e [INFO] running `Command { std: "docker" "start" "-a" "9456a20a11d81c3785e6dc5035af1346677fc0276dfc4d0e7da9f18bb0bf075e", kill_on_drop: false }` [INFO] [stderr] Compiling iron-shapes v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/point_string.rs:54:17 [INFO] [stdout] | [INFO] [stdout] 54 | pub fn iter(&self) -> Iter> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 54 | pub fn iter(&self) -> Iter<'_, Point> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/simple_polygon.rs:83:17 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn iter(&self) -> Iter> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 83 | pub fn iter(&self) -> Iter<'_, Point> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a function [INFO] [stdout] --> src/math.rs:117:1 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn test_int_sqrt_floor_i32() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | #![deny(missing_docs)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/point_string.rs:54:17 [INFO] [stdout] | [INFO] [stdout] 54 | pub fn iter(&self) -> Iter> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 54 | pub fn iter(&self) -> Iter<'_, Point> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/simple_polygon.rs:83:17 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn iter(&self) -> Iter> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 83 | pub fn iter(&self) -> Iter<'_, Point> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2.95s [INFO] running `Command { std: "docker" "inspect" "9456a20a11d81c3785e6dc5035af1346677fc0276dfc4d0e7da9f18bb0bf075e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9456a20a11d81c3785e6dc5035af1346677fc0276dfc4d0e7da9f18bb0bf075e", kill_on_drop: false }` [INFO] [stdout] 9456a20a11d81c3785e6dc5035af1346677fc0276dfc4d0e7da9f18bb0bf075e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] e5f336e4282d7716c176cef251caa7c7a93bc7718b52b7d294d6a54d1bac4cce [INFO] running `Command { std: "docker" "start" "-a" "e5f336e4282d7716c176cef251caa7c7a93bc7718b52b7d294d6a54d1bac4cce", kill_on_drop: false }` [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/point_string.rs:54:17 [INFO] [stderr] | [INFO] [stderr] 54 | pub fn iter(&self) -> Iter> { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 54 | pub fn iter(&self) -> Iter<'_, Point> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/simple_polygon.rs:83:17 [INFO] [stderr] | [INFO] [stderr] 83 | pub fn iter(&self) -> Iter> { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 83 | pub fn iter(&self) -> Iter<'_, Point> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: `iron-shapes` (lib) generated 2 warnings (run `cargo fix --lib -p iron-shapes` to apply 2 suggestions) [INFO] [stderr] warning: missing documentation for a function [INFO] [stderr] --> src/math.rs:117:1 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn test_int_sqrt_floor_i32() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/lib.rs:9:9 [INFO] [stderr] | [INFO] [stderr] 9 | #![deny(missing_docs)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `iron-shapes` (lib test) generated 3 warnings (2 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/iron_shapes-bc588779cecc8b18) [INFO] [stdout] [INFO] [stdout] running 77 tests [INFO] [stdout] test edge::tests::test_contains ... ok [INFO] [stdout] test edge::tests::test_crossed_by ... ok [INFO] [stdout] test edge::tests::test_edge_intersection ... ok [INFO] [stdout] test edge::tests::test_distance_to_line ... ok [INFO] [stdout] test edge::tests::test_coincident ... ok [INFO] [stdout] test edge::tests::test_intersect ... ok [INFO] [stdout] test edge::tests::test_is_collinear ... ok [INFO] [stdout] test edge::tests::test_edge_intersection_overlap ... ok [INFO] [stdout] test concepts_impl::test_point ... ok [INFO] [stdout] test edge::tests::test_is_parallel ... ok [INFO] [stdout] test edge::tests::test_line_contains_point ... ok [INFO] [stdout] test edge::tests::test_line_intersection ... ok [INFO] [stdout] test edge::tests::test_projection ... ok [INFO] [stdout] test edge_integer::tests::test_edge_intersection_rounded ... ok [INFO] [stdout] test edge_rational::tests::test_edge_intersection_rational ... ok [INFO] [stdout] test edge_integer::tests::test_end_point_intersection_at_negative_x ... ok [INFO] [stdout] test edge_rational::tests::test_line_intersection_rational ... ok [INFO] [stdout] test edge_integer::tests::test_line_intersection_rounded ... ok [INFO] [stdout] test edge::tests::test_side_of ... ok [INFO] [stdout] test edge_rational::tests::test_rational_edge ... ok [INFO] [stdout] test matrix2d::test_matrix_multiplication ... ok [INFO] [stdout] test matrix3d::test_matrix_multiplication ... ok [INFO] [stdout] test matrix3d::test_inverse ... ok [INFO] [stdout] test matrix3d::test_mul_column_vector ... ok [INFO] [stdout] test polygon::tests::test_area ... ok [INFO] [stdout] test polygon::tests::test_convex_hull ... ok [INFO] [stdout] test polygon::tests::test_create_polygon ... ok [INFO] [stdout] test polygon::tests::test_normalized_eq ... ok [INFO] [stdout] test polygon::tests::test_orientation ... ok [INFO] [stdout] test polygon::tests::test_winding_number ... ok [INFO] [stdout] test rect::test_distance_to_point ... ok [INFO] [stdout] test rect::test_edges_iterator ... ok [INFO] [stdout] test rect::tests::test_rect_intersection ... ok [INFO] [stdout] test redge::test_rotate_ortho ... ok [INFO] [stdout] test redge::tests::test_coincident ... ok [INFO] [stdout] test redge::tests::test_contains ... ok [INFO] [stdout] test redge::tests::test_crossed_by ... ok [INFO] [stdout] test redge::tests::test_direction ... ok [INFO] [stdout] test matrix2d::test_inverse ... ok [INFO] [stdout] test polygon::tests::test_bounding_box ... ok [INFO] [stdout] test redge::tests::test_distance_to_line ... ok [INFO] [stdout] test redge::tests::test_edge_intersection ... ok [INFO] [stdout] test redge::tests::test_edge_intersection_overlap ... ok [INFO] [stdout] test redge::tests::test_intersect ... ok [INFO] [stdout] test redge::tests::test_is_collinear ... ok [INFO] [stdout] test redge::tests::test_is_parallel ... ok [INFO] [stdout] test redge::tests::test_line_contains_point ... ok [INFO] [stdout] test redge::tests::test_line_intersection ... ok [INFO] [stdout] test redge::tests::test_side_of ... ok [INFO] [stdout] test redge::tests::test_oriented_distance_to_line ... ok [INFO] [stdout] test redge::tests::test_projection ... ok [INFO] [stdout] test shape::test_convert_to_polygon ... ok [INFO] [stdout] test simple_polygon::test_bounding_box ... ok [INFO] [stdout] test simple_polygon::test_normalize ... ok [INFO] [stdout] test redge::tests::test_manhattan_distance_to_edge ... ok [INFO] [stdout] test simple_polygon::test_from_rect ... ok [INFO] [stdout] test simple_polygon::test_normalized_eq ... ok [INFO] [stdout] test simple_rpolygon::test_partial_eq ... ok [INFO] [stdout] test simple_rpolygon::test_bounding_box ... ok [INFO] [stdout] test simple_rpolygon::test_create_rpolygon ... ok [INFO] [stdout] test simple_rpolygon::test_from_rect ... ok [INFO] [stdout] test transform::test_invert ... ok [INFO] [stdout] test transform::test_invert_float ... ok [INFO] [stdout] test transform::test_matrix_transform_rotations ... ok [INFO] [stdout] test transform::test_rotate ... ok [INFO] [stdout] test transform::test_rotate90 ... ok [INFO] [stdout] test transform::test_scale ... ok [INFO] [stdout] test transform::test_identity ... ok [INFO] [stdout] test transform::test_simple_transform_combine ... ok [INFO] [stdout] test simple_rpolygon::test_reversed ... ok [INFO] [stdout] test transform::test_then ... ok [INFO] [stdout] test vector::tests::test_rational_vector ... ok [INFO] [stdout] test transform::test_translate ... ok [INFO] [stdout] test edge::tests::test_intersection_of_random_edges ... ok [INFO] [stdout] test math::test_int_sqrt_floor_i32 ... ok [INFO] [stdout] test math::test_fast_invsqrt_32 ... ok [INFO] [stdout] test math::test_fast_invsqrt_64 ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 77 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.16s [INFO] [stdout] [INFO] [stderr] Doc-tests iron_shapes [INFO] [stdout] [INFO] [stdout] running 55 tests [INFO] [stdout] test src/math.rs - math::int_sqrt_floor (line 93) ... ok [INFO] [stdout] test src/point.rs - point::Point::distance_sq (line 162) ... ok [INFO] [stdout] test src/point.rs - point::Point::cross_prod3 (line 184) ... ok [INFO] [stdout] test src/point.rs - point::Point::is_zero (line 147) ... ok [INFO] [stdout] test src/edge_rational.rs - edge_rational::Edge>::line_intersection_rational (line 40) ... ok [INFO] [stdout] test src/edge_integer.rs - edge_integer::Edge::line_intersection_rounded (line 34) ... ok [INFO] [stdout] test src/edge.rs - edge::Edge::line_intersection_approx (line 526) ... ok [INFO] [stdout] test src/point.rs - point::point (line 23) ... ok [INFO] [stdout] test src/path.rs - path::Path::area_approx (line 152) ... ok [INFO] [stdout] test src/point.rs - point::Point::zero (line 131) ... ok [INFO] [stdout] test src/path.rs - path::Path::to_polygon_approx (line 179) ... ok [INFO] [stdout] test src/point_string.rs - point_string::PointString::edges (line 61) ... ok [INFO] [stdout] test src/point_string.rs - point_string::PointString::path_length (line 105) ... ok [INFO] [stdout] test src/point_string.rs - point_string::PointString::edges_reversed (line 82) ... ok [INFO] [stdout] test src/point_string.rs - point_string::PointString::try_bounding_box (line 209) ... ok [INFO] [stdout] test src/rect.rs - rect::Rect::add_point (line 257) ... ok [INFO] [stdout] test src/polygon.rs - polygon::Polygon::area_doubled_oriented (line 383) ... ok [INFO] [stdout] test src/rect.rs - rect::Rect::contains_point_exclusive (line 124) ... ok [INFO] [stdout] test src/rect.rs - rect::Rect::contains_point (line 103) ... ok [INFO] [stdout] test src/polygon.rs - polygon::Polygon::lower_left_vertex (line 268) ... ok [INFO] [stdout] test src/rect.rs - rect::Rect::add_rect (line 284) ... ok [INFO] [stdout] test src/polygon.rs - polygon::polygon (line 39) ... ok [INFO] [stdout] test src/rect.rs - rect::Rect::contains_rectangle (line 146) ... ok [INFO] [stdout] test src/polygon.rs - polygon::Polygon::orientation (line 286) ... ok [INFO] [stdout] test src/rect.rs - rect::Rect::distance_to_point (line 306) ... ok [INFO] [stdout] test src/rect.rs - rect::Rect::contains_rectangle_exclusive (line 163) ... ok [INFO] [stdout] test src/rect.rs - rect::Rect::new (line 34) ... ok [INFO] [stdout] test src/rect.rs - rect::Rect::intersection_inclusive_bounds (line 228) ... ok [INFO] [stdout] test src/rect.rs - rect::Rect::intersection (line 193) ... ok [INFO] [stdout] test src/repetition.rs - repetition::RegularRepetition::new_rectilinear (line 50) ... ok [INFO] [stdout] test src/simple_polygon.rs - simple_polygon::SimplePolygon::area_doubled_oriented (line 545) ... ok [INFO] [stdout] test src/simple_rpolygon.rs - simple_rpolygon::SimpleRPolygon::area_doubled_oriented (line 597) ... ok [INFO] [stdout] test src/simple_polygon.rs - simple_polygon::SimplePolygon::edges (line 205) ... ok [INFO] [stdout] test src/simple_rpolygon.rs - simple_rpolygon::SimpleRPolygon::edges (line 131) ... ok [INFO] [stdout] test src/simple_rpolygon.rs - simple_rpolygon::SimpleRPolygon::into_edges (line 168) ... ok [INFO] [stdout] test src/simple_polygon.rs - simple_polygon::SimplePolygon::orientation (line 259) ... ok [INFO] [stdout] test src/simple_rpolygon.rs - simple_rpolygon::SimpleRPolygon::try_new (line 204) ... ok [INFO] [stdout] test src/simple_rpolygon.rs - simple_rpolygon::SimpleRPolygon::orientation (line 356) ... ok [INFO] [stdout] test src/simple_polygon.rs - simple_polygon::simple_polygon (line 39) ... ok [INFO] [stdout] test src/simple_polygon.rs - simple_polygon::SimplePolygon::lower_left_vertex (line 307) ... ok [INFO] [stdout] test src/simple_rpolygon.rs - simple_rpolygon::SimpleRPolygon::lower_left_vertex (line 320) ... ok [INFO] [stdout] test src/vector.rs - vector::Vector::dot (line 233) ... ok [INFO] [stdout] test src/vector.rs - vector::Vector::length (line 367) ... ok [INFO] [stdout] test src/vector.rs - vector::Vector::norm2 (line 327) ... ok [INFO] [stdout] test src/vector.rs - vector::Vector::new (line 148) ... ok [INFO] [stdout] test src/vector.rs - vector::Vector::is_zero (line 134) ... ok [INFO] [stdout] test src/vector.rs - vector::Vector::norm2_squared (line 219) ... ok [INFO] [stdout] test src/vector.rs - vector::Vector::cross_prod (line 251) ... ok [INFO] [stdout] test src/vector.rs - vector::Vector::norm1 (line 163) ... ok [INFO] [stdout] test src/simple_rpolygon.rs - simple_rpolygon::simple_rpolygon (line 41) ... ok [INFO] [stdout] test src/vector.rs - vector::Vector::orientation_of (line 189) ... ok [INFO] [stdout] test src/vector.rs - vector::vector (line 35) ... ok [INFO] [stdout] test src/vector.rs - vector::Vector::try_cast (line 295) ... ok [INFO] [stdout] test src/vector.rs - vector::Vector::zero (line 115) ... ok [INFO] [stdout] test src/shape.rs - shape::Geometry::to_polygon (line 130) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 55 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.95s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "e5f336e4282d7716c176cef251caa7c7a93bc7718b52b7d294d6a54d1bac4cce", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e5f336e4282d7716c176cef251caa7c7a93bc7718b52b7d294d6a54d1bac4cce", kill_on_drop: false }` [INFO] [stdout] e5f336e4282d7716c176cef251caa7c7a93bc7718b52b7d294d6a54d1bac4cce