[INFO] cloning repository https://github.com/Raibows/MLinRust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Raibows/MLinRust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRaibows%2FMLinRust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRaibows%2FMLinRust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b46f0e240a38fb62e4947c627f3c48945131ae82
[INFO] testing Raibows/MLinRust against try#bd7d74411512a3dd3b35d2f699c51dd2557c7e7e+cargoflags=-Zbuild-dir-new-layout for pr-149852-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRaibows%2FMLinRust" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Raibows/MLinRust
[INFO] finished tweaking git repo https://github.com/Raibows/MLinRust
[INFO] tweaked toml for git repo https://github.com/Raibows/MLinRust written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Raibows/MLinRust on toolchain bd7d74411512a3dd3b35d2f699c51dd2557c7e7e
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Raibows/MLinRust 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" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7ce9e87539bf99202b12f635427cc4e26f9bb1db04f60e19c6558ee8c272ac90
[INFO] running `Command { std: "docker" "start" "-a" "7ce9e87539bf99202b12f635427cc4e26f9bb1db04f60e19c6558ee8c272ac90", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7ce9e87539bf99202b12f635427cc4e26f9bb1db04f60e19c6558ee8c272ac90", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7ce9e87539bf99202b12f635427cc4e26f9bb1db04f60e19c6558ee8c272ac90", kill_on_drop: false }`
[INFO] [stdout] 7ce9e87539bf99202b12f635427cc4e26f9bb1db04f60e19c6558ee8c272ac90
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "build" "--frozen" "--message-format=json" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] 43a8e7db7cacbc45a858fb1ff5a96c25fb5c813cfd8be3a1e2b83c78ade204fb
[INFO] running `Command { std: "docker" "start" "-a" "43a8e7db7cacbc45a858fb1ff5a96c25fb5c813cfd8be3a1e2b83c78ade204fb", kill_on_drop: false }`
[INFO] [stderr]    Compiling mlinrust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/model/decision_tree.rs:97:51
[INFO] [stdout]    |
[INFO] [stdout] 97 |         let mut node = self.root.as_ref().unwrap().clone();
[INFO] [stdout]    |                                                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `Box<Node<T>>` does not implement `Clone`, so calling `clone` on `&Box<Node<T>>` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout] 97 -         let mut node = self.root.as_ref().unwrap().clone();
[INFO] [stdout] 97 +         let mut node = self.root.as_ref().unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/model/decision_tree.rs:101:52
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 node = &node.left.as_ref().unwrap().clone();
[INFO] [stdout]     |                                                    ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Box<Node<T>>` does not implement `Clone`, so calling `clone` on `&Box<Node<T>>` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 101 -                 node = &node.left.as_ref().unwrap().clone();
[INFO] [stdout] 101 +                 node = &node.left.as_ref().unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/model/decision_tree.rs:103:53
[INFO] [stdout]     |
[INFO] [stdout] 103 |                 node = &node.right.as_ref().unwrap().clone();
[INFO] [stdout]     |                                                     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Box<Node<T>>` does not implement `Clone`, so calling `clone` on `&Box<Node<T>>` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 103 -                 node = &node.right.as_ref().unwrap().clone();
[INFO] [stdout] 103 +                 node = &node.right.as_ref().unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/model/knn.rs:310:20
[INFO] [stdout]     |
[INFO] [stdout] 310 |     pub fn nearest(&self, query: &Vec<f32>) -> Vec<QueryRecord<T>> {
[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] 310 |     pub fn nearest(&self, query: &Vec<f32>) -> Vec<QueryRecord<'_, T>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.63s
[INFO] running `Command { std: "docker" "inspect" "43a8e7db7cacbc45a858fb1ff5a96c25fb5c813cfd8be3a1e2b83c78ade204fb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "43a8e7db7cacbc45a858fb1ff5a96c25fb5c813cfd8be3a1e2b83c78ade204fb", kill_on_drop: false }`
[INFO] [stdout] 43a8e7db7cacbc45a858fb1ff5a96c25fb5c813cfd8be3a1e2b83c78ade204fb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "test" "--frozen" "--no-run" "--message-format=json" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] 35aa57de82700f6f61b9476a25c33b9c236a40dd9f159e919c8db1cac162eacf
[INFO] running `Command { std: "docker" "start" "-a" "35aa57de82700f6f61b9476a25c33b9c236a40dd9f159e919c8db1cac162eacf", kill_on_drop: false }`
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/model/decision_tree.rs:97:51
[INFO] [stdout]    |
[INFO] [stdout] 97 |         let mut node = self.root.as_ref().unwrap().clone();
[INFO] [stdout]    |                                                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `Box<Node<T>>` does not implement `Clone`, so calling `clone` on `&Box<Node<T>>` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout] 97 -         let mut node = self.root.as_ref().unwrap().clone();
[INFO] [stdout] 97 +         let mut node = self.root.as_ref().unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/model/decision_tree.rs:101:52
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 node = &node.left.as_ref().unwrap().clone();
[INFO] [stdout]     |                                                    ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Box<Node<T>>` does not implement `Clone`, so calling `clone` on `&Box<Node<T>>` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 101 -                 node = &node.left.as_ref().unwrap().clone();
[INFO] [stdout] 101 +                 node = &node.left.as_ref().unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/model/decision_tree.rs:103:53
[INFO] [stdout]     |
[INFO] [stdout] 103 |                 node = &node.right.as_ref().unwrap().clone();
[INFO] [stdout]     |                                                     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Box<Node<T>>` does not implement `Clone`, so calling `clone` on `&Box<Node<T>>` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 103 -                 node = &node.right.as_ref().unwrap().clone();
[INFO] [stdout] 103 +                 node = &node.right.as_ref().unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/model/knn.rs:310:20
[INFO] [stdout]     |
[INFO] [stdout] 310 |     pub fn nearest(&self, query: &Vec<f32>) -> Vec<QueryRecord<T>> {
[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] 310 |     pub fn nearest(&self, query: &Vec<f32>) -> Vec<QueryRecord<'_, T>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling mlinrust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/model/decision_tree.rs:97:51
[INFO] [stdout]    |
[INFO] [stdout] 97 |         let mut node = self.root.as_ref().unwrap().clone();
[INFO] [stdout]    |                                                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `Box<Node<T>>` does not implement `Clone`, so calling `clone` on `&Box<Node<T>>` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout] 97 -         let mut node = self.root.as_ref().unwrap().clone();
[INFO] [stdout] 97 +         let mut node = self.root.as_ref().unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/model/decision_tree.rs:101:52
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 node = &node.left.as_ref().unwrap().clone();
[INFO] [stdout]     |                                                    ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Box<Node<T>>` does not implement `Clone`, so calling `clone` on `&Box<Node<T>>` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 101 -                 node = &node.left.as_ref().unwrap().clone();
[INFO] [stdout] 101 +                 node = &node.left.as_ref().unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/model/decision_tree.rs:103:53
[INFO] [stdout]     |
[INFO] [stdout] 103 |                 node = &node.right.as_ref().unwrap().clone();
[INFO] [stdout]     |                                                     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Box<Node<T>>` does not implement `Clone`, so calling `clone` on `&Box<Node<T>>` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 103 -                 node = &node.right.as_ref().unwrap().clone();
[INFO] [stdout] 103 +                 node = &node.right.as_ref().unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/model/knn.rs:310:20
[INFO] [stdout]     |
[INFO] [stdout] 310 |     pub fn nearest(&self, query: &Vec<f32>) -> Vec<QueryRecord<T>> {
[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] 310 |     pub fn nearest(&self, query: &Vec<f32>) -> Vec<QueryRecord<'_, T>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.95s
[INFO] running `Command { std: "docker" "inspect" "35aa57de82700f6f61b9476a25c33b9c236a40dd9f159e919c8db1cac162eacf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "35aa57de82700f6f61b9476a25c33b9c236a40dd9f159e919c8db1cac162eacf", kill_on_drop: false }`
[INFO] [stdout] 35aa57de82700f6f61b9476a25c33b9c236a40dd9f159e919c8db1cac162eacf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "test" "--frozen" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] 6a64998d6be56ce2a22b7fdee05e9c38c84c8a5484415cbc3635ed09fcf48086
[INFO] running `Command { std: "docker" "start" "-a" "6a64998d6be56ce2a22b7fdee05e9c38c84c8a5484415cbc3635ed09fcf48086", kill_on_drop: false }`
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]   --> src/model/decision_tree.rs:97:51
[INFO] [stderr]    |
[INFO] [stderr] 97 |         let mut node = self.root.as_ref().unwrap().clone();
[INFO] [stderr]    |                                                   ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: the type `Box<Node<T>>` does not implement `Clone`, so calling `clone` on `&Box<Node<T>>` copies the reference, which does not do anything and can be removed
[INFO] [stderr]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stderr] help: remove this redundant call
[INFO] [stderr]    |
[INFO] [stderr] 97 -         let mut node = self.root.as_ref().unwrap().clone();
[INFO] [stderr] 97 +         let mut node = self.root.as_ref().unwrap();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/model/decision_tree.rs:101:52
[INFO] [stderr]     |
[INFO] [stderr] 101 |                 node = &node.left.as_ref().unwrap().clone();
[INFO] [stderr]     |                                                    ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `Box<Node<T>>` does not implement `Clone`, so calling `clone` on `&Box<Node<T>>` copies the reference, which does not do anything and can be removed
[INFO] [stderr] help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr] 101 -                 node = &node.left.as_ref().unwrap().clone();
[INFO] [stderr] 101 +                 node = &node.left.as_ref().unwrap();
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/model/decision_tree.rs:103:53
[INFO] [stderr]     |
[INFO] [stderr] 103 |                 node = &node.right.as_ref().unwrap().clone();
[INFO] [stderr]     |                                                     ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `Box<Node<T>>` does not implement `Clone`, so calling `clone` on `&Box<Node<T>>` copies the reference, which does not do anything and can be removed
[INFO] [stderr] help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr] 103 -                 node = &node.right.as_ref().unwrap().clone();
[INFO] [stderr] 103 +                 node = &node.right.as_ref().unwrap();
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/model/knn.rs:310:20
[INFO] [stderr]     |
[INFO] [stderr] 310 |     pub fn nearest(&self, query: &Vec<f32>) -> Vec<QueryRecord<T>> {
[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] 310 |     pub fn nearest(&self, query: &Vec<f32>) -> Vec<QueryRecord<'_, T>> {
[INFO] [stderr]     |                                                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: `mlinrust` (lib) generated 4 warnings (run `cargo fix --lib -p mlinrust` to apply 4 suggestions)
[INFO] [stderr] warning: `mlinrust` (lib test) generated 4 warnings (4 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/mlinrust/265aa4a2c8df8637/deps/mlinrust-265aa4a2c8df8637)
[INFO] [stdout] 
[INFO] [stdout] running 42 tests
[INFO] [stdout] test dataset::car_price_dataset::test::test_impute_value ... ok
[INFO] [stdout] test dataset::utils::test::test_normalize_dataset ... ok
[INFO] [stdout] test model::linear_regression::test::test_with_synthetic_data ... ok
[INFO] [stdout] test model::kmeans::test::test_kmeans ... ok
[INFO] [stdout] test model::knn::test::test_kdtree ... ok
[INFO] [stdout] test model::logistic_regression::test::test_with_synthetic_data ... ok
[INFO] [stdout] test model::knn::test::test_brute_force_search ... ok
[INFO] [stdout] test model::naive_bayes::test::test_gaussian_pdf ... ok
[INFO] [stdout] test model::knn::test::test_knn ... ok
[INFO] [stdout] test dataset::test::test_split_dataset ... ok
[INFO] [stdout] test model::decision_tree::test::test_synthetic_samples ... ok
[INFO] [stdout] test ndarray::ops::test::test_index ... ok
[INFO] [stdout] test ndarray::ops::test::test_ops_add ... ok
[INFO] [stdout] test model::nn::test::test_nn_forward_backward ... ok
[INFO] [stdout] test model::nn::linear::test::test_back_propagation ... ok
[INFO] [stdout] test model::naive_bayes::test::test_unknown_feature ... ok
[INFO] [stdout] test ndarray::ops::test::test_ops_inplace ... ok
[INFO] [stdout] test ndarray::ops::test::test_ops_multiply_by_float ... ok
[INFO] [stdout] test ndarray::ops::test::test_ops_multiply_by_ndarray ... ok
[INFO] [stdout] test ndarray::ops::test::test_ops_sub ... ok
[INFO] [stdout] test model::svm::test::test_with_2d_points ... ok
[INFO] [stdout] test ndarray::test::test_permute ... ok
[INFO] [stdout] test ndarray::test::test_repeat ... ok
[INFO] [stdout] test ndarray::utils::test::test_activation_functions ... ok
[INFO] [stdout] test ndarray::utils::test::test_argmax ... ok
[INFO] [stdout] test ndarray::test::test_fmt_display ... ok
[INFO] [stdout] test ndarray::utils::test::test_mean_std_min_max ... ok
[INFO] [stdout] test ndarray::test::test_new ... ok
[INFO] [stdout] test utils::test::test_rand ... ok
[INFO] [stdout] test ndarray::test::test_permute_intrinsic ... ok
[INFO] [stdout] test dataset::dataloader::test::test_dataloader_iterator ... ok
[INFO] [stdout] test dataset::car_price_dataset::test::test_process ... FAILED
[INFO] [stdout] test dataset::test::test_dataset_iter ... FAILED
[INFO] [stdout] test dataset::test::test_dataset_load_profiling ... FAILED
[INFO] [stdout] test dataset::utils::test::test ... FAILED
[INFO] [stdout] test model::decision_tree::test::test_mobile_phone_price_dataset ... FAILED
[INFO] [stdout] test model::decision_tree::test::test_car_price_regression_dataset ... FAILED
[INFO] [stdout] test model::decision_tree::test::test_iris_dataset ... FAILED
[INFO] [stdout] test ndarray::utils::test::test_softmax ... ok
[INFO] [stdout] test ndarray::utils::test::test_sum_ndarray ... ok
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/build/mlinrust/265aa4a2c8df8637/deps/mlinrust-265aa4a2c8df8637` (signal: 9, SIGKILL: kill)
[INFO] running `Command { std: "docker" "inspect" "6a64998d6be56ce2a22b7fdee05e9c38c84c8a5484415cbc3635ed09fcf48086", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6a64998d6be56ce2a22b7fdee05e9c38c84c8a5484415cbc3635ed09fcf48086", kill_on_drop: false }`
[INFO] [stdout] 6a64998d6be56ce2a22b7fdee05e9c38c84c8a5484415cbc3635ed09fcf48086
