[INFO] fetching crate robomath 0.1.0...
[INFO] testing robomath-0.1.0 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate robomath 0.1.0 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate robomath 0.1.0
[INFO] finished tweaking crates.io crate robomath 0.1.0
[INFO] tweaked toml for crates.io crate robomath 0.1.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate robomath 0.1.0 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate robomath 0.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:27:12
[INFO] [stderr]    |
[INFO] [stderr] 27 | homepage = "https://github.com/wboayue/robomath/"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 32 | repository = "https://github.com/wboayue/robomath/"
[INFO] [stderr]    |              --------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `robomath` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] deb8b1a6da963fb4392fdb7ce8085e6eaebe14ca13bd8d9cf4d15dd5cc7e4f69
[INFO] running `Command { std: "docker" "start" "deb8b1a6da963fb4392fdb7ce8085e6eaebe14ca13bd8d9cf4d15dd5cc7e4f69", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "deb8b1a6da963fb4392fdb7ce8085e6eaebe14ca13bd8d9cf4d15dd5cc7e4f69", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "deb8b1a6da963fb4392fdb7ce8085e6eaebe14ca13bd8d9cf4d15dd5cc7e4f69" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "deb8b1a6da963fb4392fdb7ce8085e6eaebe14ca13bd8d9cf4d15dd5cc7e4f69", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "deb8b1a6da963fb4392fdb7ce8085e6eaebe14ca13bd8d9cf4d15dd5cc7e4f69" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:27:12
[INFO] [stderr]    |
[INFO] [stderr] 27 | homepage = "https://github.com/wboayue/robomath/"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 32 | repository = "https://github.com/wboayue/robomath/"
[INFO] [stderr]    |              --------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `robomath` (manifest) generated 1 warning
[INFO] [stderr]    Compiling libm v0.2.11
[INFO] [stderr]    Compiling robomath v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.86s
[INFO] running `Command { std: "docker" "inspect" "deb8b1a6da963fb4392fdb7ce8085e6eaebe14ca13bd8d9cf4d15dd5cc7e4f69", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "deb8b1a6da963fb4392fdb7ce8085e6eaebe14ca13bd8d9cf4d15dd5cc7e4f69" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:27:12
[INFO] [stderr]    |
[INFO] [stderr] 27 | homepage = "https://github.com/wboayue/robomath/"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 32 | repository = "https://github.com/wboayue/robomath/"
[INFO] [stderr]    |              --------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `robomath` (manifest) generated 1 warning
[INFO] [stderr]    Compiling robomath v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]  --> src/tests.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::f32::EPSILON;
[INFO] [stdout]   |               ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:195:45
[INFO] [stdout]     |
[INFO] [stdout] 195 |         assert_float_eq(v.magnitude(), 5.0, EPSILON); // √(3² + 4² + 0²) = √25 = 5
[INFO] [stdout]     |                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:199:45
[INFO] [stdout]     |
[INFO] [stdout] 199 |         assert_float_eq(v.magnitude(), 5.0, EPSILON); // √((-3)² + (-4)² + 0²) = √25 = 5
[INFO] [stdout]     |                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:203:45
[INFO] [stdout]     |
[INFO] [stdout] 203 |         assert_float_eq(v.magnitude(), 1.0, EPSILON);
[INFO] [stdout]     |                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:207:45
[INFO] [stdout]     |
[INFO] [stdout] 207 |         assert_float_eq(v.magnitude(), 0.0, EPSILON);
[INFO] [stdout]     |                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:211:45
[INFO] [stdout]     |
[INFO] [stdout] 211 |         assert_float_eq(v.magnitude(), 7.0, EPSILON); // √(2² + 3² + 6²) = √(4 + 9 + 36) = √49 = 7
[INFO] [stdout]     |                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:300:19
[INFO] [stdout]     |
[INFO] [stdout] 300 |     use std::f32::EPSILON;
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:369:49
[INFO] [stdout]     |
[INFO] [stdout] 369 |         assert_float_eq(mat.determinant(), 1.0, EPSILON);
[INFO] [stdout]     |                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:377:49
[INFO] [stdout]     |
[INFO] [stdout] 377 |         assert_float_eq(mat.determinant(), 0.0, EPSILON);
[INFO] [stdout]     |                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:385:50
[INFO] [stdout]     |
[INFO] [stdout] 385 |         assert_float_eq(mat.determinant(), 24.0, EPSILON);
[INFO] [stdout]     |                                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:392:43
[INFO] [stdout]     |
[INFO] [stdout] 392 |         assert_float_eq(mat.trace(), 3.0, EPSILON);
[INFO] [stdout]     |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:400:44
[INFO] [stdout]     |
[INFO] [stdout] 400 |         assert_float_eq(mat.trace(), 15.0, EPSILON);
[INFO] [stdout]     |                                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:404:43
[INFO] [stdout]     |
[INFO] [stdout] 404 |         assert_float_eq(mat.trace(), 0.0, EPSILON);
[INFO] [stdout]     |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:543:19
[INFO] [stdout]     |
[INFO] [stdout] 543 |     use std::f32::EPSILON;
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:748:39
[INFO] [stdout]     |
[INFO] [stdout] 748 |         assert_float_eq(gibbs.x, 0.5, EPSILON); // 1.0/2.0
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:749:39
[INFO] [stdout]     |
[INFO] [stdout] 749 |         assert_float_eq(gibbs.y, 1.0, EPSILON); // 2.0/2.0
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:750:39
[INFO] [stdout]     |
[INFO] [stdout] 750 |         assert_float_eq(gibbs.z, 1.5, EPSILON); // 3.0/2.0
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:756:39
[INFO] [stdout]     |
[INFO] [stdout] 756 |         assert_float_eq(gibbs.y, 0.0, EPSILON);
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stdout]    --> src/tests.rs:757:39
[INFO] [stdout]     |
[INFO] [stdout] 757 |         assert_float_eq(gibbs.z, 0.0, EPSILON);
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/tests.rs:194:27
[INFO] [stdout]     |
[INFO] [stdout] 194 |         let v = vec3(3.0, 4.0, 0.0);
[INFO] [stdout]     |                           ^^^ help: explicitly specify the type as `f32`: `4.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout]     = note: `#[warn(float_literal_f32_fallback)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/tests.rs:198:29
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let v = vec3(-3.0, -4.0, 0.0);
[INFO] [stdout]     |                             ^^^ help: explicitly specify the type as `f32`: `4.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/tests.rs:202:27
[INFO] [stdout]     |
[INFO] [stdout] 202 |         let v = vec3(1.0, 0.0, 0.0);
[INFO] [stdout]     |                           ^^^ help: explicitly specify the type as `f32`: `0.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/tests.rs:206:27
[INFO] [stdout]     |
[INFO] [stdout] 206 |         let v = vec3(0.0, 0.0, 0.0);
[INFO] [stdout]     |                           ^^^ help: explicitly specify the type as `f32`: `0.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/tests.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |         let v = vec3(2.0, 3.0, 6.0);
[INFO] [stdout]     |                           ^^^ help: explicitly specify the type as `f32`: `3.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.95s
[INFO] running `Command { std: "docker" "inspect" "deb8b1a6da963fb4392fdb7ce8085e6eaebe14ca13bd8d9cf4d15dd5cc7e4f69", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "deb8b1a6da963fb4392fdb7ce8085e6eaebe14ca13bd8d9cf4d15dd5cc7e4f69" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:27:12
[INFO] [stderr]    |
[INFO] [stderr] 27 | homepage = "https://github.com/wboayue/robomath/"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 32 | repository = "https://github.com/wboayue/robomath/"
[INFO] [stderr]    |              --------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `robomath` (manifest) generated 1 warning
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]  --> src/tests.rs:1:15
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::f32::EPSILON;
[INFO] [stderr]   |               ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:195:45
[INFO] [stderr]     |
[INFO] [stderr] 195 |         assert_float_eq(v.magnitude(), 5.0, EPSILON); // √(3² + 4² + 0²) = √25 = 5
[INFO] [stderr]     |                                             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:199:45
[INFO] [stderr]     |
[INFO] [stderr] 199 |         assert_float_eq(v.magnitude(), 5.0, EPSILON); // √((-3)² + (-4)² + 0²) = √25 = 5
[INFO] [stderr]     |                                             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:203:45
[INFO] [stderr]     |
[INFO] [stderr] 203 |         assert_float_eq(v.magnitude(), 1.0, EPSILON);
[INFO] [stderr]     |                                             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:207:45
[INFO] [stderr]     |
[INFO] [stderr] 207 |         assert_float_eq(v.magnitude(), 0.0, EPSILON);
[INFO] [stderr]     |                                             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:211:45
[INFO] [stderr]     |
[INFO] [stderr] 211 |         assert_float_eq(v.magnitude(), 7.0, EPSILON); // √(2² + 3² + 6²) = √(4 + 9 + 36) = √49 = 7
[INFO] [stderr]     |                                             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:300:19
[INFO] [stderr]     |
[INFO] [stderr] 300 |     use std::f32::EPSILON;
[INFO] [stderr]     |                   ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:369:49
[INFO] [stderr]     |
[INFO] [stderr] 369 |         assert_float_eq(mat.determinant(), 1.0, EPSILON);
[INFO] [stderr]     |                                                 ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:377:49
[INFO] [stderr]     |
[INFO] [stderr] 377 |         assert_float_eq(mat.determinant(), 0.0, EPSILON);
[INFO] [stderr]     |                                                 ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:385:50
[INFO] [stderr]     |
[INFO] [stderr] 385 |         assert_float_eq(mat.determinant(), 24.0, EPSILON);
[INFO] [stderr]     |                                                  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:392:43
[INFO] [stderr]     |
[INFO] [stderr] 392 |         assert_float_eq(mat.trace(), 3.0, EPSILON);
[INFO] [stderr]     |                                           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:400:44
[INFO] [stderr]     |
[INFO] [stderr] 400 |         assert_float_eq(mat.trace(), 15.0, EPSILON);
[INFO] [stderr]     |                                            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:404:43
[INFO] [stderr]     |
[INFO] [stderr] 404 |         assert_float_eq(mat.trace(), 0.0, EPSILON);
[INFO] [stderr]     |                                           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:543:19
[INFO] [stderr]     |
[INFO] [stderr] 543 |     use std::f32::EPSILON;
[INFO] [stderr]     |                   ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:748:39
[INFO] [stderr]     |
[INFO] [stderr] 748 |         assert_float_eq(gibbs.x, 0.5, EPSILON); // 1.0/2.0
[INFO] [stderr]     |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:749:39
[INFO] [stderr]     |
[INFO] [stderr] 749 |         assert_float_eq(gibbs.y, 1.0, EPSILON); // 2.0/2.0
[INFO] [stderr]     |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:750:39
[INFO] [stderr]     |
[INFO] [stderr] 750 |         assert_float_eq(gibbs.z, 1.5, EPSILON); // 3.0/2.0
[INFO] [stderr]     |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:756:39
[INFO] [stderr]     |
[INFO] [stderr] 756 |         assert_float_eq(gibbs.y, 0.0, EPSILON);
[INFO] [stderr]     |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f32::EPSILON`: replaced by the `EPSILON` associated constant on `f32`
[INFO] [stderr]    --> src/tests.rs:757:39
[INFO] [stderr]     |
[INFO] [stderr] 757 |         assert_float_eq(gibbs.z, 0.0, EPSILON);
[INFO] [stderr]     |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stderr]    --> src/tests.rs:194:27
[INFO] [stderr]     |
[INFO] [stderr] 194 |         let v = vec3(3.0, 4.0, 0.0);
[INFO] [stderr]     |                           ^^^ help: explicitly specify the type as `f32`: `4.0_f32`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stderr]     = note: `#[warn(float_literal_f32_fallback)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stderr]    --> src/tests.rs:198:29
[INFO] [stderr]     |
[INFO] [stderr] 198 |         let v = vec3(-3.0, -4.0, 0.0);
[INFO] [stderr]     |                             ^^^ help: explicitly specify the type as `f32`: `4.0_f32`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stderr] 
[INFO] [stderr] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stderr]    --> src/tests.rs:202:27
[INFO] [stderr]     |
[INFO] [stderr] 202 |         let v = vec3(1.0, 0.0, 0.0);
[INFO] [stderr]     |                           ^^^ help: explicitly specify the type as `f32`: `0.0_f32`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stderr] 
[INFO] [stderr] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stderr]    --> src/tests.rs:206:27
[INFO] [stderr]     |
[INFO] [stderr] 206 |         let v = vec3(0.0, 0.0, 0.0);
[INFO] [stderr]     |                           ^^^ help: explicitly specify the type as `f32`: `0.0_f32`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stderr] 
[INFO] [stderr] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stderr]    --> src/tests.rs:210:27
[INFO] [stderr]     |
[INFO] [stderr] 210 |         let v = vec3(2.0, 3.0, 6.0);
[INFO] [stderr]     |                           ^^^ help: explicitly specify the type as `f32`: `3.0_f32`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stderr] 
[INFO] [stderr] warning: `robomath` (lib test) generated 24 warnings (run `cargo fix --lib -p robomath --tests` to apply 5 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/robomath/978b38579b17d9c2/out/robomath-978b38579b17d9c2)
[INFO] [stdout] 
[INFO] [stdout] running 48 tests
[INFO] [stdout] test tests::mat3x3::test_identity ... ok
[INFO] [stdout] test tests::mat3x3::test_matrix_multiplication ... ok
[INFO] [stdout] test tests::mat3x3::test_new ... ok
[INFO] [stdout] test tests::mat3x3::test_determinant ... ok
[INFO] [stdout] test tests::mat3x3::test_scalar_multiplication ... ok
[INFO] [stdout] test tests::mat3x3::test_skew_symmetric ... ok
[INFO] [stdout] test tests::mat3x3::test_transpose ... ok
[INFO] [stdout] test tests::mat3x3::test_zeros ... ok
[INFO] [stdout] test tests::mat3x3::test_is_finite ... ok
[INFO] [stdout] test tests::mat3x3::test_index ... ok
[INFO] [stdout] test tests::quaternion::test_conjugate ... ok
[INFO] [stdout] test tests::mat3x3::test_outer_product ... ok
[INFO] [stdout] test tests::quaternion::test_from_euler ... ok
[INFO] [stdout] test tests::mat3x3::test_trace ... ok
[INFO] [stdout] test tests::quaternion::test_from_rotation_matrix ... ok
[INFO] [stdout] test tests::quaternion::test_euler_conversions ... ok
[INFO] [stdout] test tests::quaternion::test_identity ... ok
[INFO] [stdout] test tests::quaternion::test_magnitude ... ok
[INFO] [stdout] test tests::quaternion::test_inverse ... ok
[INFO] [stdout] test tests::quaternion::test_multiplication ... ok
[INFO] [stdout] test tests::quaternion::test_normalize ... ok
[INFO] [stdout] test tests::quaternion::test_roll ... ok
[INFO] [stdout] test tests::quaternion::test_rotation_matrix_i_wrt_b ... ok
[INFO] [stdout] test tests::quaternion::test_to_euler ... ok
[INFO] [stdout] test tests::quaternion::test_to_gibbs_vector ... ok
[INFO] [stdout] test tests::quaternion::test_to_gibbs_vector_edge_cases ... ok
[INFO] [stdout] test tests::quaternion::test_to_string ... ok
[INFO] [stdout] test tests::quaternion::test_yaw ... ok
[INFO] [stdout] test tests::vec2::test_clamp ... ok
[INFO] [stdout] test tests::vec2::test_creation_and_basic_ops ... ok
[INFO] [stdout] test tests::quaternion::test_from_rotation_matrix_edge_cases ... ok
[INFO] [stdout] test tests::vec2::test_negation ... ok
[INFO] [stdout] test tests::quaternion::test_default ... ok
[INFO] [stdout] test tests::quaternion::test_pitch ... ok
[INFO] [stdout] test tests::vec3::test_clone_and_copy ... ok
[INFO] [stdout] test tests::vec3::test_addition ... ok
[INFO] [stdout] test tests::vec3::test_clamp ... ok
[INFO] [stdout] test tests::quaternion::test_rotation_matrix_b_wrt_i ... ok
[INFO] [stdout] test tests::vec3::test_debug_output ... ok
[INFO] [stdout] test tests::vec3::test_default ... ok
[INFO] [stdout] test tests::vec3::test_division_by_scalar ... ok
[INFO] [stdout] test tests::vec3::test_scalar_multiplication ... ok
[INFO] [stdout] test tests::vec3::test_magnitude ... ok
[INFO] [stdout] test tests::vec3::test_magnitude_squared ... ok
[INFO] [stdout] test tests::vec3::test_multiplication_vec3 ... ok
[INFO] [stdout] test tests::mat3x3::test_index_out_of_bounds - should panic ... ok
[INFO] [stdout] test tests::mat3x3::test_addition ... ok
[INFO] [stdout] test tests::vec3::test_subtraction ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 48 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests robomath
[INFO] [stdout] 
[INFO] [stdout] running 62 tests
[INFO] [stdout] test src/lib.rs - to_radians (line 138) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::determinant (line 253) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::index_mut (line 373) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::identity (line 106) ... ok
[INFO] [stdout] test src/lib.rs - (line 30) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::is_finite (line 306) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3 (line 19) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::index (line 344) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::mul (line 404) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::add (line 437) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::new (line 61) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::trace (line 281) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::transpose (line 214) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::outer_product (line 175) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::skew_symmetric (line 141) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::conjugate (line 253) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::mul (line 478) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion (line 31) ... ok
[INFO] [stdout] test src/mat3x3.rs - mat3x3::Mat3x3::zeros (line 81) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::from_rotation_matrix (line 174) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::fmt (line 637) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::from_euler (line 131) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::identity (line 96) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::inverse (line 289) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::is_finite (line 490) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::mul (line 590) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::magnitude (line 518) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::roll (line 409) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::new (line 73) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::normalize (line 546) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::pitch (line 386) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::rotation_matrix_b_wrt_i (line 341) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::to_gibbs_vector (line 437) ... ok
[INFO] [stdout] test src/vec2.rs - vec2::Vec2 (line 16) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::rotation_matrix_i_wrt_b (line 315) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::to_euler (line 465) ... ok
[INFO] [stdout] test src/vec2.rs - vec2::Vec2<T>::div (line 244) ... ok
[INFO] [stdout] test src/quaternion.rs - quaternion::Quaternion::yaw (line 363) ... ok
[INFO] [stdout] test src/vec2.rs - vec2::Vec2<T>::add (line 145) ... ok
[INFO] [stdout] test src/vec2.rs - vec2::Vec2<T>::default (line 266) ... ok
[INFO] [stdout] test src/vec2.rs - vec2::Vec2<f32>::clamp (line 58) ... ok
[INFO] [stdout] test src/vec2.rs - vec2::f32::mul (line 209) ... ok
[INFO] [stdout] test src/vec2.rs - vec2::Vec2<T>::sub (line 114) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3 (line 20) ... ok
[INFO] [stdout] test src/vec2.rs - vec2::Vec2<T>::mul (line 176) ... ok
[INFO] [stdout] test src/vec2.rs - vec2::vec2 (line 88) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3<T>::add (line 244) ... ok
[INFO] [stdout] test src/vec2.rs - vec2::Vec2<T>::neg (line 294) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3<T>::default (line 491) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3<T>::div (line 415) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3<T>::magnitude (line 469) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3<T>::div (line 379) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3<T>::sub (line 212) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3<f32>::dot (line 123) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3<T>::magnitude_squared (line 444) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3<T>::mul (line 276) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3<f32>::is_finite (line 180) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3<f32>::clamp (line 94) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3<f32>::cross (line 153) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::Vec3<f32>::mul (line 343) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::f32::mul (line 310) ... ok
[INFO] [stdout] test src/vec3.rs - vec3::vec3 (line 65) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 62 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.97s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "deb8b1a6da963fb4392fdb7ce8085e6eaebe14ca13bd8d9cf4d15dd5cc7e4f69", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "deb8b1a6da963fb4392fdb7ce8085e6eaebe14ca13bd8d9cf4d15dd5cc7e4f69", kill_on_drop: false }`
[INFO] [stdout] deb8b1a6da963fb4392fdb7ce8085e6eaebe14ca13bd8d9cf4d15dd5cc7e4f69
