[INFO] fetching crate descartes 0.1.20...
[INFO] testing descartes-0.1.20 against 1.90.0 for beta-1.91-3
[INFO] extracting crate descartes 0.1.20 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate descartes 0.1.20
[INFO] finished tweaking crates.io crate descartes 0.1.20
[INFO] tweaked toml for crates.io crate descartes 0.1.20 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate descartes 0.1.20 on toolchain 1.90.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "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" "+1.90.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 88 packages to latest compatible versions
[INFO] [stderr]       Adding itertools v0.7.11 (available: v0.14.0)
[INFO] [stderr]       Adding nalgebra v0.20.0 (available: v0.34.1)
[INFO] [stderr]       Adding ordered-float v0.5.2 (available: v5.1.0)
[INFO] [stderr]       Adding pretty_assertions v0.5.1 (available: v1.4.1)
[INFO] [stderr]       Adding smallvec v0.6.14 (available: v1.15.1)
[INFO] [stderr]       Adding stable-vec v0.3.2 (available: v0.4.1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded stable-vec v0.3.2
[INFO] [stderr]   Downloaded pretty_assertions v0.5.1
[INFO] [stderr]   Downloaded primal-check v0.2.3
[INFO] [stderr]   Downloaded ordered-float v0.5.2
[INFO] [stderr]   Downloaded primal-estimate v0.2.1
[INFO] [stderr]   Downloaded simple_allocator_trait v0.1.0
[INFO] [stderr]   Downloaded compact_macros v0.1.0
[INFO] [stderr]   Downloaded primal-bit v0.2.4
[INFO] [stderr]   Downloaded primal v0.2.3
[INFO] [stderr]   Downloaded compact v0.2.16
[INFO] [stderr]   Downloaded primal-sieve v0.2.9
[INFO] [stderr]   Downloaded rand_distr v0.2.2
[INFO] [stderr]   Downloaded nalgebra v0.20.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fd73642281fb171bba85a75e78798990dde276f6508935d4defd2a51df98da55
[INFO] running `Command { std: "docker" "start" "-a" "fd73642281fb171bba85a75e78798990dde276f6508935d4defd2a51df98da55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fd73642281fb171bba85a75e78798990dde276f6508935d4defd2a51df98da55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fd73642281fb171bba85a75e78798990dde276f6508935d4defd2a51df98da55", kill_on_drop: false }`
[INFO] [stdout] fd73642281fb171bba85a75e78798990dde276f6508935d4defd2a51df98da55
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1a93c4ea619d890bc3b49d34b5583a30fdffb20112bc7a86887df8ad9bed289f
[INFO] running `Command { std: "docker" "start" "-a" "1a93c4ea619d890bc3b49d34b5583a30fdffb20112bc7a86887df8ad9bed289f", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling libm v0.2.15
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling unreachable v1.0.0
[INFO] [stderr]    Compiling matrixmultiply v0.2.4
[INFO] [stderr]    Compiling generic-array v0.13.3
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling bit-vec v0.5.1
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling stable-vec v0.3.2
[INFO] [stderr]    Compiling itertools v0.7.11
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling approx v0.3.2
[INFO] [stderr]    Compiling num-traits v0.1.43
[INFO] [stderr]    Compiling ordered-float v0.5.2
[INFO] [stderr]    Compiling alga v0.9.3
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling rand_distr v0.2.2
[INFO] [stderr]    Compiling nalgebra v0.20.0
[INFO] [stderr]    Compiling descartes v0.1.20 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/edit_arc_line_path.rs:70:20
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 if (i >= 0) {
[INFO] [stdout]    |                    ^      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 70 -                 if (i >= 0) {
[INFO] [stdout] 70 +                 if i >= 0 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `nalgebra::dot`: use `Matrix::dot` or `Quaternion::dot` instead
[INFO] [stdout]   --> src/lib.rs:28:19
[INFO] [stdout]    |
[INFO] [stdout] 28 | Vector4, Matrix4, dot};
[INFO] [stdout]    |                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `nalgebra::try_inverse`: use the `.try_inverse()` method instead
[INFO] [stdout]   --> src/lib.rs:29:19
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub use nalgebra::try_inverse;
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `nalgebra::dot`: use `Matrix::dot` or `Quaternion::dot` instead
[INFO] [stdout]  --> src/angles.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use {V2, N, dot, PI};
[INFO] [stdout]   |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `nalgebra::dot`: use `Matrix::dot` or `Quaternion::dot` instead
[INFO] [stdout]  --> src/angles.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let theta: N = dot(&a, &b) / (a.norm() * b.norm());
[INFO] [stdout]   |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `nalgebra::Point::<N, D>::from_coordinates`: Use Point::from(vector) instead.
[INFO] [stdout]   --> src/segments.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |         P2::from_coordinates((self.start.coords + self.end.coords) / 2.0)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `nalgebra::Point::<N, D>::from_coordinates`: Use Point::from(vector) instead.
[INFO] [stdout]    --> src/arc_line_path.rs:142:37
[INFO] [stdout]     |
[INFO] [stdout] 142 | ...                   P2::from_coordinates((start.coords + end.coords) / 2.0),
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/line_path.rs:310:17
[INFO] [stdout]     |
[INFO] [stdout] 310 |     pub fn dash(&self, dash_length: N, gap_length: N) -> DashIterator {
[INFO] [stdout]     |                 ^^^^^ the lifetime is elided here        ------------ the same lifetime is hidden 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] 310 |     pub fn dash(&self, dash_length: N, gap_length: N) -> DashIterator<'_> {
[INFO] [stdout]     |                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: casting `&T` to `&mut T` is undefined behavior, even if the reference is unused, consider instead using an `UnsafeCell`
[INFO] [stdout]    --> src/areas/mod.rs:203:17
[INFO] [stdout]     |
[INFO] [stdout] 202 |                 let self_mut: *mut Area = ::std::mem::transmute(self);
[INFO] [stdout]     |                                           --------------------------- casting happened here
[INFO] [stdout] 203 |                 (&mut *self_mut).cached_bbox = Some(bbox);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: `#[warn(invalid_reference_casting)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 20.37s
[INFO] running `Command { std: "docker" "inspect" "1a93c4ea619d890bc3b49d34b5583a30fdffb20112bc7a86887df8ad9bed289f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1a93c4ea619d890bc3b49d34b5583a30fdffb20112bc7a86887df8ad9bed289f", kill_on_drop: false }`
[INFO] [stdout] 1a93c4ea619d890bc3b49d34b5583a30fdffb20112bc7a86887df8ad9bed289f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4294d6863ae14f223abc4a9095396cecf0efde7196fc7ab81d4df9b397cd29b5
[INFO] running `Command { std: "docker" "start" "-a" "4294d6863ae14f223abc4a9095396cecf0efde7196fc7ab81d4df9b397cd29b5", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling ansi_term v0.11.0
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/edit_arc_line_path.rs:70:20
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 if (i >= 0) {
[INFO] [stdout]    |                    ^      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 70 -                 if (i >= 0) {
[INFO] [stdout] 70 +                 if i >= 0 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `nalgebra::dot`: use `Matrix::dot` or `Quaternion::dot` instead
[INFO] [stdout]   --> src/lib.rs:28:19
[INFO] [stdout]    |
[INFO] [stdout] 28 | Vector4, Matrix4, dot};
[INFO] [stdout]    |                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `nalgebra::try_inverse`: use the `.try_inverse()` method instead
[INFO] [stdout]   --> src/lib.rs:29:19
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub use nalgebra::try_inverse;
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `nalgebra::dot`: use `Matrix::dot` or `Quaternion::dot` instead
[INFO] [stdout]  --> src/angles.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use {V2, N, dot, PI};
[INFO] [stdout]   |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `nalgebra::dot`: use `Matrix::dot` or `Quaternion::dot` instead
[INFO] [stdout]  --> src/angles.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let theta: N = dot(&a, &b) / (a.norm() * b.norm());
[INFO] [stdout]   |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `nalgebra::Point::<N, D>::from_coordinates`: Use Point::from(vector) instead.
[INFO] [stdout]   --> src/segments.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |         P2::from_coordinates((self.start.coords + self.end.coords) / 2.0)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `nalgebra::Point::<N, D>::from_coordinates`: Use Point::from(vector) instead.
[INFO] [stdout]    --> src/arc_line_path.rs:142:37
[INFO] [stdout]     |
[INFO] [stdout] 142 | ...                   P2::from_coordinates((start.coords + end.coords) / 2.0),
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/line_path.rs:310:17
[INFO] [stdout]     |
[INFO] [stdout] 310 |     pub fn dash(&self, dash_length: N, gap_length: N) -> DashIterator {
[INFO] [stdout]     |                 ^^^^^ the lifetime is elided here        ------------ the same lifetime is hidden 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] 310 |     pub fn dash(&self, dash_length: N, gap_length: N) -> DashIterator<'_> {
[INFO] [stdout]     |                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: casting `&T` to `&mut T` is undefined behavior, even if the reference is unused, consider instead using an `UnsafeCell`
[INFO] [stdout]    --> src/areas/mod.rs:203:17
[INFO] [stdout]     |
[INFO] [stdout] 202 |                 let self_mut: *mut Area = ::std::mem::transmute(self);
[INFO] [stdout]     |                                           --------------------------- casting happened here
[INFO] [stdout] 203 |                 (&mut *self_mut).cached_bbox = Some(bbox);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: `#[warn(invalid_reference_casting)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling pretty_assertions v0.5.1
[INFO] [stderr]    Compiling descartes v0.1.20 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/edit_arc_line_path.rs:70:20
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 if (i >= 0) {
[INFO] [stdout]    |                    ^      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 70 -                 if (i >= 0) {
[INFO] [stdout] 70 +                 if i >= 0 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `nalgebra::dot`: use `Matrix::dot` or `Quaternion::dot` instead
[INFO] [stdout]   --> src/lib.rs:28:19
[INFO] [stdout]    |
[INFO] [stdout] 28 | Vector4, Matrix4, dot};
[INFO] [stdout]    |                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `nalgebra::try_inverse`: use the `.try_inverse()` method instead
[INFO] [stdout]   --> src/lib.rs:29:19
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub use nalgebra::try_inverse;
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `nalgebra::dot`: use `Matrix::dot` or `Quaternion::dot` instead
[INFO] [stdout]  --> src/angles.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use {V2, N, dot, PI};
[INFO] [stdout]   |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `nalgebra::dot`: use `Matrix::dot` or `Quaternion::dot` instead
[INFO] [stdout]  --> src/angles.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let theta: N = dot(&a, &b) / (a.norm() * b.norm());
[INFO] [stdout]   |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `nalgebra::Point::<N, D>::from_coordinates`: Use Point::from(vector) instead.
[INFO] [stdout]   --> src/segments.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |         P2::from_coordinates((self.start.coords + self.end.coords) / 2.0)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `nalgebra::Point::<N, D>::from_coordinates`: Use Point::from(vector) instead.
[INFO] [stdout]    --> src/arc_line_path.rs:142:37
[INFO] [stdout]     |
[INFO] [stdout] 142 | ...                   P2::from_coordinates((start.coords + end.coords) / 2.0),
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/line_path.rs:310:17
[INFO] [stdout]     |
[INFO] [stdout] 310 |     pub fn dash(&self, dash_length: N, gap_length: N) -> DashIterator {
[INFO] [stdout]     |                 ^^^^^ the lifetime is elided here        ------------ the same lifetime is hidden 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] 310 |     pub fn dash(&self, dash_length: N, gap_length: N) -> DashIterator<'_> {
[INFO] [stdout]     |                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: casting `&T` to `&mut T` is undefined behavior, even if the reference is unused, consider instead using an `UnsafeCell`
[INFO] [stdout]    --> src/areas/mod.rs:203:17
[INFO] [stdout]     |
[INFO] [stdout] 202 |                 let self_mut: *mut Area = ::std::mem::transmute(self);
[INFO] [stdout]     |                                           --------------------------- casting happened here
[INFO] [stdout] 203 |                 (&mut *self_mut).cached_bbox = Some(bbox);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: `#[warn(invalid_reference_casting)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.33s
[INFO] running `Command { std: "docker" "inspect" "4294d6863ae14f223abc4a9095396cecf0efde7196fc7ab81d4df9b397cd29b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4294d6863ae14f223abc4a9095396cecf0efde7196fc7ab81d4df9b397cd29b5", kill_on_drop: false }`
[INFO] [stdout] 4294d6863ae14f223abc4a9095396cecf0efde7196fc7ab81d4df9b397cd29b5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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" "+1.90.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 4ae6a37bc393b5d85fa8c5a06dfb26dea76d321a7032c37ce9a6833b4bf80f5b
[INFO] running `Command { std: "docker" "start" "-a" "4ae6a37bc393b5d85fa8c5a06dfb26dea76d321a7032c37ce9a6833b4bf80f5b", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/edit_arc_line_path.rs:70:20
[INFO] [stderr]    |
[INFO] [stderr] 70 |                 if (i >= 0) {
[INFO] [stderr]    |                    ^      ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 70 -                 if (i >= 0) {
[INFO] [stderr] 70 +                 if i >= 0 {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `nalgebra::dot`: use `Matrix::dot` or `Quaternion::dot` instead
[INFO] [stderr]   --> src/lib.rs:28:19
[INFO] [stderr]    |
[INFO] [stderr] 28 | Vector4, Matrix4, dot};
[INFO] [stderr]    |                   ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `nalgebra::try_inverse`: use the `.try_inverse()` method instead
[INFO] [stderr]   --> src/lib.rs:29:19
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub use nalgebra::try_inverse;
[INFO] [stderr]    |                   ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `nalgebra::dot`: use `Matrix::dot` or `Quaternion::dot` instead
[INFO] [stderr]  --> src/angles.rs:1:13
[INFO] [stderr]   |
[INFO] [stderr] 1 | use {V2, N, dot, PI};
[INFO] [stderr]   |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `nalgebra::dot`: use `Matrix::dot` or `Quaternion::dot` instead
[INFO] [stderr]  --> src/angles.rs:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let theta: N = dot(&a, &b) / (a.norm() * b.norm());
[INFO] [stderr]   |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `nalgebra::Point::<N, D>::from_coordinates`: Use Point::from(vector) instead.
[INFO] [stderr]   --> src/segments.rs:65:13
[INFO] [stderr]    |
[INFO] [stderr] 65 |         P2::from_coordinates((self.start.coords + self.end.coords) / 2.0)
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `nalgebra::Point::<N, D>::from_coordinates`: Use Point::from(vector) instead.
[INFO] [stderr]    --> src/arc_line_path.rs:142:37
[INFO] [stderr]     |
[INFO] [stderr] 142 | ...                   P2::from_coordinates((start.coords + end.coords) / 2.0),
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/line_path.rs:310:17
[INFO] [stderr]     |
[INFO] [stderr] 310 |     pub fn dash(&self, dash_length: N, gap_length: N) -> DashIterator {
[INFO] [stderr]     |                 ^^^^^ the lifetime is elided here        ------------ the same lifetime is hidden 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] 310 |     pub fn dash(&self, dash_length: N, gap_length: N) -> DashIterator<'_> {
[INFO] [stderr]     |                                                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: casting `&T` to `&mut T` is undefined behavior, even if the reference is unused, consider instead using an `UnsafeCell`
[INFO] [stderr]    --> src/areas/mod.rs:203:17
[INFO] [stderr]     |
[INFO] [stderr] 202 |                 let self_mut: *mut Area = ::std::mem::transmute(self);
[INFO] [stderr]     |                                           --------------------------- casting happened here
[INFO] [stderr] 203 |                 (&mut *self_mut).cached_bbox = Some(bbox);
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stderr]     = note: `#[warn(invalid_reference_casting)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `descartes` (lib) generated 9 warnings (run `cargo fix --lib -p descartes` to apply 1 suggestion)
[INFO] [stderr] warning: `descartes` (lib test) generated 9 warnings (9 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/descartes-27b49e8f1a4d9d7a)
[INFO] [stdout] 
[INFO] [stdout] running 22 tests
[INFO] [stdout] test arc_line_path::to_line_path ... ok
[INFO] [stdout] test intersect::line_segments_apart ... ok
[INFO] [stdout] test embedding::embedding_test ... ok
[INFO] [stdout] test area_embedding::area_embedding_test_x_coords_smaller_y_coords ... ok
[INFO] [stdout] test intersect::line_segments_intersecting ... ok
[INFO] [stdout] test line_path::constructor ... ok
[INFO] [stdout] test line_path::constructor_invalid ... ok
[INFO] [stdout] test line_path::constructor_simplify_points ... ok
[INFO] [stdout] test segment_grid::intersection_grid ... ok
[INFO] [stdout] test segments::colinear_apex_test ... ok
[INFO] [stdout] test areas::area_area_test ... ok
[INFO] [stdout] test segments::major_arc_test ... ok
[INFO] [stdout] test util::test::test_basic_set ... ok
[INFO] [stdout] test util::test::test_clone ... ok
[INFO] [stdout] test intersect::line_segments_barely_intersecting ... ok
[INFO] [stdout] test segments::minor_arc_test ... ok
[INFO] [stdout] test util::test::test_debug ... ok
[INFO] [stdout] test util::test::test_remove ... ok
[INFO] [stdout] test intersect::path_intersecting_at_curved_segment_start ... ok
[INFO] [stdout] test intersect::path_intersecting_close_after_curved_segment_start ... ok
[INFO] [stdout] test intersect::path_intersecting_close_before_curved_segment_start ... ok
[INFO] [stdout] test area_embedding::area_embedding_test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests descartes
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/edit_arc_line_path.rs:70:20
[INFO] [stderr]    |
[INFO] [stderr] 70 |                 if (i >= 0) {
[INFO] [stderr]    |                    ^      ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 70 -                 if (i >= 0) {
[INFO] [stderr] 70 +                 if i >= 0 {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/util.rs - util::SmallSet (line 59) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.39s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "4ae6a37bc393b5d85fa8c5a06dfb26dea76d321a7032c37ce9a6833b4bf80f5b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4ae6a37bc393b5d85fa8c5a06dfb26dea76d321a7032c37ce9a6833b4bf80f5b", kill_on_drop: false }`
[INFO] [stdout] 4ae6a37bc393b5d85fa8c5a06dfb26dea76d321a7032c37ce9a6833b4bf80f5b
