[INFO] updating cached repository https://github.com/YetAnotherMinion/MooseSlicer
[INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"`
[INFO] running `"git" "rev-parse" "HEAD"`
[INFO] [stdout] 6762d892481060c1c4c58085d76a455f6e7a0076
[INFO] checking YetAnotherMinion/MooseSlicer against master#bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc for pr-70917
[INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYetAnotherMinion%2FMooseSlicer" "/workspace/builds/worker-10/source"`
[INFO] [stderr] Cloning into '/workspace/builds/worker-10/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/YetAnotherMinion/MooseSlicer on toolchain bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking git repo https://github.com/YetAnotherMinion/MooseSlicer
[INFO] finished tweaking git repo https://github.com/YetAnotherMinion/MooseSlicer
[INFO] tweaked toml for git repo https://github.com/YetAnotherMinion/MooseSlicer written to /workspace/builds/worker-10/source/Cargo.toml
[INFO] crate git repo https://github.com/YetAnotherMinion/MooseSlicer already has a lockfile, it will not be regenerated
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] [stderr] error: the lock file /workspace/builds/worker-10/source/Cargo.lock needs to be updated but --locked was passed to prevent this
[INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag.
[INFO] the lockfile is outdated, regenerating it
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"`
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stdout] 14f61b7526de0a1515948a1cf58596e86e2ef041af316c76e72183848a909efe
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `"docker" "start" "-a" "14f61b7526de0a1515948a1cf58596e86e2ef041af316c76e72183848a909efe"`
[INFO] [stderr]     Checking MooseSlicer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unused import: `super::vec4::Vec4`
[INFO] [stderr]   --> src/linear_algebra/vector/traits.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use super::vec4::Vec4;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::quaternion::Quaternion`
[INFO] [stderr]   --> src/linear_algebra/vector/traits.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use super::quaternion::Quaternion;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::traits::Vector`
[INFO] [stderr]  --> src/linear_algebra/vector/quaternion.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use super::traits::Vector;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Add`, `Sub`
[INFO] [stderr]  --> src/linear_algebra/vector/quaternion.rs:3:18
[INFO] [stderr]   |
[INFO] [stderr] 3 | use ::std::ops::{Add, Sub, Mul};
[INFO] [stderr]   |                  ^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: this method call currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added.
[INFO] [stderr]   --> src/linear_algebra/vector/quaternion.rs:14:21
[INFO] [stderr]    |
[INFO] [stderr] 14 |         $x.elements.into_iter().fold(0.0, |acc, &x| acc + x.powi(2)).sqrt()
[INFO] [stderr]    |                     ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter`
[INFO] [stderr] ...
[INFO] [stderr] 44 |         let mag = vec_magnitude!(self);
[INFO] [stderr]    |                   -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(array_into_iter)]` on by default
[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 #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: crate `MooseSlicer` should have a snake case name
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr]   = help: convert the identifier to snake case: `moose_slicer`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `A` should have a snake case name
[INFO] [stderr]  --> src/linear_algebra/vector/traits.rs:8:33
[INFO] [stderr]   |
[INFO] [stderr] 8 |     fn cross_product<T: Vector>(A: T, B: T) -> Option<T>;
[INFO] [stderr]   |                                 ^ help: convert the identifier to snake case: `a`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `B` should have a snake case name
[INFO] [stderr]  --> src/linear_algebra/vector/traits.rs:8:39
[INFO] [stderr]   |
[INFO] [stderr] 8 |     fn cross_product<T: Vector>(A: T, B: T) -> Option<T>;
[INFO] [stderr]   |                                       ^ help: convert the identifier to snake case: `b`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::vec4::Vec4`
[INFO] [stderr]   --> src/linear_algebra/vector/traits.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use super::vec4::Vec4;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::quaternion::Quaternion`
[INFO] [stderr]   --> src/linear_algebra/vector/traits.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use super::quaternion::Quaternion;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::traits::Vector`
[INFO] [stderr]  --> src/linear_algebra/vector/quaternion.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use super::traits::Vector;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Add`, `Sub`
[INFO] [stderr]  --> src/linear_algebra/vector/quaternion.rs:3:18
[INFO] [stderr]   |
[INFO] [stderr] 3 | use ::std::ops::{Add, Sub, Mul};
[INFO] [stderr]   |                  ^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: this method call currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added.
[INFO] [stderr]   --> src/linear_algebra/vector/quaternion.rs:14:21
[INFO] [stderr]    |
[INFO] [stderr] 14 |         $x.elements.into_iter().fold(0.0, |acc, &x| acc + x.powi(2)).sqrt()
[INFO] [stderr]    |                     ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter`
[INFO] [stderr] ...
[INFO] [stderr] 44 |         let mag = vec_magnitude!(self);
[INFO] [stderr]    |                   -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(array_into_iter)]` on by default
[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 #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: crate `MooseSlicer` should have a snake case name
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr]   = help: convert the identifier to snake case: `moose_slicer`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `A` should have a snake case name
[INFO] [stderr]  --> src/linear_algebra/vector/traits.rs:8:33
[INFO] [stderr]   |
[INFO] [stderr] 8 |     fn cross_product<T: Vector>(A: T, B: T) -> Option<T>;
[INFO] [stderr]   |                                 ^ help: convert the identifier to snake case: `a`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `B` should have a snake case name
[INFO] [stderr]  --> src/linear_algebra/vector/traits.rs:8:39
[INFO] [stderr]   |
[INFO] [stderr] 8 |     fn cross_product<T: Vector>(A: T, B: T) -> Option<T>;
[INFO] [stderr]   |                                       ^ help: convert the identifier to snake case: `b`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::vec4::Vec4`
[INFO] [stderr]   --> src/linear_algebra/vector/traits.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use super::vec4::Vec4;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::quaternion::Quaternion`
[INFO] [stderr]   --> src/linear_algebra/vector/traits.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use super::quaternion::Quaternion;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::traits::Vector`
[INFO] [stderr]  --> src/linear_algebra/vector/quaternion.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use super::traits::Vector;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Add`, `Sub`
[INFO] [stderr]  --> src/linear_algebra/vector/quaternion.rs:3:18
[INFO] [stderr]   |
[INFO] [stderr] 3 | use ::std::ops::{Add, Sub, Mul};
[INFO] [stderr]   |                  ^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `bin_packing::GuillotineNode as G`
[INFO] [stderr]  --> src/main.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use bin_packing::GuillotineNode as G;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Quaternion`, `Vec4`
[INFO] [stderr]  --> src/main.rs:5:30
[INFO] [stderr]   |
[INFO] [stderr] 5 | use linear_algebra::vector::{Quaternion, Vec4};
[INFO] [stderr]   |                              ^^^^^^^^^^  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `width`
[INFO] [stderr]   --> src/bin_packing/guillotine.rs:52:34
[INFO] [stderr]    |
[INFO] [stderr] 52 |     pub fn find_free_node(&self, width: f64, height: f64) ->
[INFO] [stderr]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `height`
[INFO] [stderr]   --> src/bin_packing/guillotine.rs:52:46
[INFO] [stderr]    |
[INFO] [stderr] 52 |     pub fn find_free_node(&self, width: f64, height: f64) ->
[INFO] [stderr]    |                                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `new`
[INFO] [stderr]   --> src/linear_algebra/vector/vec2.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 |     pub fn new(a: f64, b: f64) -> Vec2 {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: this method call currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added.
[INFO] [stderr]   --> src/linear_algebra/vector/quaternion.rs:14:21
[INFO] [stderr]    |
[INFO] [stderr] 14 |         $x.elements.into_iter().fold(0.0, |acc, &x| acc + x.powi(2)).sqrt()
[INFO] [stderr]    |                     ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter`
[INFO] [stderr] ...
[INFO] [stderr] 44 |         let mag = vec_magnitude!(self);
[INFO] [stderr]    |                   -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(array_into_iter)]` on by default
[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 #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: crate `MooseSlicer` should have a snake case name
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr]   = help: convert the identifier to snake case: `moose_slicer`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `A` should have a snake case name
[INFO] [stderr]  --> src/linear_algebra/vector/traits.rs:8:33
[INFO] [stderr]   |
[INFO] [stderr] 8 |     fn cross_product<T: Vector>(A: T, B: T) -> Option<T>;
[INFO] [stderr]   |                                 ^ help: convert the identifier to snake case: `a`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `B` should have a snake case name
[INFO] [stderr]  --> src/linear_algebra/vector/traits.rs:8:39
[INFO] [stderr]   |
[INFO] [stderr] 8 |     fn cross_product<T: Vector>(A: T, B: T) -> Option<T>;
[INFO] [stderr]   |                                       ^ help: convert the identifier to snake case: `b`
[INFO] [stderr] 
[INFO] [stderr] error[E0463]: can't find crate for `slicer`
[INFO] [stderr]  --> tests/vector_math.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | extern crate slicer;
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^ can't find crate
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::vec4::Vec4`
[INFO] [stderr]   --> src/linear_algebra/vector/traits.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use super::vec4::Vec4;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::quaternion::Quaternion`
[INFO] [stderr]   --> src/linear_algebra/vector/traits.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use super::quaternion::Quaternion;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::traits::Vector`
[INFO] [stderr]  --> src/linear_algebra/vector/quaternion.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use super::traits::Vector;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Add`, `Sub`
[INFO] [stderr]  --> src/linear_algebra/vector/quaternion.rs:3:18
[INFO] [stderr]   |
[INFO] [stderr] 3 | use ::std::ops::{Add, Sub, Mul};
[INFO] [stderr]   |                  ^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `bin_packing::GuillotineNode as G`
[INFO] [stderr]  --> src/main.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use bin_packing::GuillotineNode as G;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Quaternion`, `Vec4`
[INFO] [stderr]  --> src/main.rs:5:30
[INFO] [stderr]   |
[INFO] [stderr] 5 | use linear_algebra::vector::{Quaternion, Vec4};
[INFO] [stderr]   |                              ^^^^^^^^^^  ^^^^
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to previous error
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0463`.
[INFO] [stderr] error: could not compile `MooseSlicer`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] warning: unused variable: `width`
[INFO] [stderr]   --> src/bin_packing/guillotine.rs:52:34
[INFO] [stderr]    |
[INFO] [stderr] 52 |     pub fn find_free_node(&self, width: f64, height: f64) ->
[INFO] [stderr]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `height`
[INFO] [stderr]   --> src/bin_packing/guillotine.rs:52:46
[INFO] [stderr]    |
[INFO] [stderr] 52 |     pub fn find_free_node(&self, width: f64, height: f64) ->
[INFO] [stderr]    |                                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `new`
[INFO] [stderr]   --> src/linear_algebra/vector/vec2.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 |     pub fn new(a: f64, b: f64) -> Vec2 {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: this method call currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added.
[INFO] [stderr]   --> src/linear_algebra/vector/quaternion.rs:14:21
[INFO] [stderr]    |
[INFO] [stderr] 14 |         $x.elements.into_iter().fold(0.0, |acc, &x| acc + x.powi(2)).sqrt()
[INFO] [stderr]    |                     ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter`
[INFO] [stderr] ...
[INFO] [stderr] 44 |         let mag = vec_magnitude!(self);
[INFO] [stderr]    |                   -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(array_into_iter)]` on by default
[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 #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: crate `MooseSlicer` should have a snake case name
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr]   = help: convert the identifier to snake case: `moose_slicer`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `A` should have a snake case name
[INFO] [stderr]  --> src/linear_algebra/vector/traits.rs:8:33
[INFO] [stderr]   |
[INFO] [stderr] 8 |     fn cross_product<T: Vector>(A: T, B: T) -> Option<T>;
[INFO] [stderr]   |                                 ^ help: convert the identifier to snake case: `a`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `B` should have a snake case name
[INFO] [stderr]  --> src/linear_algebra/vector/traits.rs:8:39
[INFO] [stderr]   |
[INFO] [stderr] 8 |     fn cross_product<T: Vector>(A: T, B: T) -> Option<T>;
[INFO] [stderr]   |                                       ^ help: convert the identifier to snake case: `b`
[INFO] [stderr] 
[INFO] [stderr] error: build failed
[INFO] running `"docker" "inspect" "14f61b7526de0a1515948a1cf58596e86e2ef041af316c76e72183848a909efe"`
[INFO] running `"docker" "rm" "-f" "14f61b7526de0a1515948a1cf58596e86e2ef041af316c76e72183848a909efe"`
[INFO] [stdout] 14f61b7526de0a1515948a1cf58596e86e2ef041af316c76e72183848a909efe
