[INFO] fetching crate minimum_ml 0.1.9...
[INFO] testing minimum_ml-0.1.9 against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate minimum_ml 0.1.9 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate minimum_ml 0.1.9
[INFO] finished tweaking crates.io crate minimum_ml 0.1.9
[INFO] tweaked toml for crates.io crate minimum_ml 0.1.9 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate minimum_ml 0.1.9 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate minimum_ml 0.1.9 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.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded stackable_derive v0.1.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] cfbfdeae00a083bc516f9fa2d66f2f0b3c8c39ecd6ea90dc1e9197a854ae8ada
[INFO] running `Command { std: "docker" "start" "cfbfdeae00a083bc516f9fa2d66f2f0b3c8c39ecd6ea90dc1e9197a854ae8ada", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cfbfdeae00a083bc516f9fa2d66f2f0b3c8c39ecd6ea90dc1e9197a854ae8ada", 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" "cfbfdeae00a083bc516f9fa2d66f2f0b3c8c39ecd6ea90dc1e9197a854ae8ada" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cfbfdeae00a083bc516f9fa2d66f2f0b3c8c39ecd6ea90dc1e9197a854ae8ada", 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" "cfbfdeae00a083bc516f9fa2d66f2f0b3c8c39ecd6ea90dc1e9197a854ae8ada" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling stackable_derive v0.1.0
[INFO] [stderr]    Compiling minimum_ml v0.1.9 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `super::TensorData`
[INFO] [stdout]  --> src/ml/funcs.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::TensorData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ml/funcs.rs:686:21
[INFO] [stdout]     |
[INFO] [stdout] 686 |                 let mut output_shape = grad.shape.clone();
[INFO] [stdout]     |                     ----^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ml/funcs.rs:688:21
[INFO] [stdout]     |
[INFO] [stdout] 688 |                 let mut output_data = vec![0.0; output_shape.iter().product()];
[INFO] [stdout]     |                     ----^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ml/funcs.rs:689:21
[INFO] [stdout]     |
[INFO] [stdout] 689 |                 let mut grad_data = grad.as_f32_slice();
[INFO] [stdout]     |                     ----^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_data`
[INFO] [stdout]    --> src/ml/funcs.rs:688:21
[INFO] [stdout]     |
[INFO] [stdout] 688 |                 let mut output_data = vec![0.0; output_shape.iter().product()];
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_data`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TYPE_QUANTIZED_MM` is never used
[INFO] [stdout]    --> src/ml/binary_io.rs:108:11
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub const TYPE_QUANTIZED_MM: u8 = 5;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TYPE_QUANTIZED_BIAS` is never used
[INFO] [stdout]    --> src/ml/binary_io.rs:109:11
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub const TYPE_QUANTIZED_BIAS: u8 = 6;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `axis` is never read
[INFO] [stdout]    --> src/ml/funcs.rs:794:5
[INFO] [stdout]     |
[INFO] [stdout] 793 | pub struct CumlativeSum {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 794 |     axis: usize,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 8.49s
[INFO] running `Command { std: "docker" "inspect" "cfbfdeae00a083bc516f9fa2d66f2f0b3c8c39ecd6ea90dc1e9197a854ae8ada", 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" "cfbfdeae00a083bc516f9fa2d66f2f0b3c8c39ecd6ea90dc1e9197a854ae8ada" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling minimum_ml v0.1.9 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `super::TensorData`
[INFO] [stdout]  --> src/ml/funcs.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::TensorData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ml/funcs.rs:686:21
[INFO] [stdout]     |
[INFO] [stdout] 686 |                 let mut output_shape = grad.shape.clone();
[INFO] [stdout]     |                     ----^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ml/funcs.rs:688:21
[INFO] [stdout]     |
[INFO] [stdout] 688 |                 let mut output_data = vec![0.0; output_shape.iter().product()];
[INFO] [stdout]     |                     ----^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ml/funcs.rs:689:21
[INFO] [stdout]     |
[INFO] [stdout] 689 |                 let mut grad_data = grad.as_f32_slice();
[INFO] [stdout]     |                     ----^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_data`
[INFO] [stdout]    --> src/ml/funcs.rs:688:21
[INFO] [stdout]     |
[INFO] [stdout] 688 |                 let mut output_data = vec![0.0; output_shape.iter().product()];
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_data`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TYPE_QUANTIZED_MM` is never used
[INFO] [stdout]    --> src/ml/binary_io.rs:108:11
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub const TYPE_QUANTIZED_MM: u8 = 5;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TYPE_QUANTIZED_BIAS` is never used
[INFO] [stdout]    --> src/ml/binary_io.rs:109:11
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub const TYPE_QUANTIZED_BIAS: u8 = 6;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `axis` is never read
[INFO] [stdout]    --> src/ml/funcs.rs:794:5
[INFO] [stdout]     |
[INFO] [stdout] 793 | pub struct CumlativeSum {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 794 |     axis: usize,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::TensorData`
[INFO] [stdout]  --> src/ml/funcs.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::TensorData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `params::*`
[INFO] [stdout]  --> src/test.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 |     use crate::ml::{self, params::*, funcs::*};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ml/funcs.rs:686:21
[INFO] [stdout]     |
[INFO] [stdout] 686 |                 let mut output_shape = grad.shape.clone();
[INFO] [stdout]     |                     ----^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ml/funcs.rs:688:21
[INFO] [stdout]     |
[INFO] [stdout] 688 |                 let mut output_data = vec![0.0; output_shape.iter().product()];
[INFO] [stdout]     |                     ----^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ml/funcs.rs:689:21
[INFO] [stdout]     |
[INFO] [stdout] 689 |                 let mut grad_data = grad.as_f32_slice();
[INFO] [stdout]     |                     ----^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_data`
[INFO] [stdout]    --> src/ml/funcs.rs:688:21
[INFO] [stdout]     |
[INFO] [stdout] 688 |                 let mut output_data = vec![0.0; output_shape.iter().product()];
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_data`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TYPE_QUANTIZED_MM` is never used
[INFO] [stdout]    --> src/ml/binary_io.rs:108:11
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub const TYPE_QUANTIZED_MM: u8 = 5;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TYPE_QUANTIZED_BIAS` is never used
[INFO] [stdout]    --> src/ml/binary_io.rs:109:11
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub const TYPE_QUANTIZED_BIAS: u8 = 6;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `axis` is never read
[INFO] [stdout]    --> src/ml/funcs.rs:794:5
[INFO] [stdout]     |
[INFO] [stdout] 793 | pub struct CumlativeSum {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 794 |     axis: usize,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 2.73s
[INFO] running `Command { std: "docker" "inspect" "cfbfdeae00a083bc516f9fa2d66f2f0b3c8c39ecd6ea90dc1e9197a854ae8ada", 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" "cfbfdeae00a083bc516f9fa2d66f2f0b3c8c39ecd6ea90dc1e9197a854ae8ada" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `super::TensorData`
[INFO] [stderr]  --> src/ml/funcs.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use super::TensorData;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/ml/funcs.rs:686:21
[INFO] [stderr]     |
[INFO] [stderr] 686 |                 let mut output_shape = grad.shape.clone();
[INFO] [stderr]     |                     ----^^^^^^^^^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/ml/funcs.rs:688:21
[INFO] [stderr]     |
[INFO] [stderr] 688 |                 let mut output_data = vec![0.0; output_shape.iter().product()];
[INFO] [stderr]     |                     ----^^^^^^^^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/ml/funcs.rs:689:21
[INFO] [stderr]     |
[INFO] [stderr] 689 |                 let mut grad_data = grad.as_f32_slice();
[INFO] [stderr]     |                     ----^^^^^^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `output_data`
[INFO] [stderr]    --> src/ml/funcs.rs:688:21
[INFO] [stderr]     |
[INFO] [stderr] 688 |                 let mut output_data = vec![0.0; output_shape.iter().product()];
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_data`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TYPE_QUANTIZED_MM` is never used
[INFO] [stderr]    --> src/ml/binary_io.rs:108:11
[INFO] [stderr]     |
[INFO] [stderr] 108 | pub const TYPE_QUANTIZED_MM: u8 = 5;
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TYPE_QUANTIZED_BIAS` is never used
[INFO] [stderr]    --> src/ml/binary_io.rs:109:11
[INFO] [stderr]     |
[INFO] [stderr] 109 | pub const TYPE_QUANTIZED_BIAS: u8 = 6;
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `axis` is never read
[INFO] [stderr]    --> src/ml/funcs.rs:794:5
[INFO] [stderr]     |
[INFO] [stderr] 793 | pub struct CumlativeSum {
[INFO] [stderr]     |            ------------ field in this struct
[INFO] [stderr] 794 |     axis: usize,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `minimum_ml` (lib) generated 8 warnings (run `cargo fix --lib -p minimum_ml` to apply 5 suggestions)
[INFO] [stderr] warning: unused import: `params::*`
[INFO] [stderr]  --> src/test.rs:5:27
[INFO] [stderr]   |
[INFO] [stderr] 5 |     use crate::ml::{self, params::*, funcs::*};
[INFO] [stderr]   |                           ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `minimum_ml` (lib test) generated 9 warnings (8 duplicates) (run `cargo fix --lib -p minimum_ml --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/minimum_ml-620753858df50ba9)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test test::test_add_1 ... ok
[INFO] [stdout] test test::test_mat_mul ... ok
[INFO] [stdout] test test::test_batchnorm_layer ... ok
[INFO] [stdout] test test::test_int_mm_matrix ... ok
[INFO] [stdout] test test::test_linear_benchmark ... ok
[INFO] [stdout] test test::test_int_mm ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/deps/minimum_ml-f3eda2a137672557)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests minimum_ml
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test src/ml.rs - ml::sequential (line 22) ... ignored
[INFO] [stdout] test src/ml/metrics.rs - ml::metrics::ClassificationMetrics::accuracy (line 17) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 35) ... FAILED
[INFO] [stdout] test src/ml.rs - ml::Tensor::argmax (line 223) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/ml/metrics.rs - ml::metrics::ClassificationMetrics::accuracy (line 17) stdout ----
[INFO] [stdout] error[E0433]: cannot find type `Tensor` in this scope
[INFO] [stdout]   --> src/ml/metrics.rs:19:13
[INFO] [stdout]    |
[INFO] [stdout] 19 | let preds = Tensor::new(vec![0.1, 0.9, 0.8, 0.2], vec![2, 2]);
[INFO] [stdout]    |             ^^^^^^ use of undeclared type `Tensor`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tensor` in this scope
[INFO] [stdout]   --> src/ml/metrics.rs:20:15
[INFO] [stdout]    |
[INFO] [stdout] 20 | let targets = Tensor::new(vec![0.0, 1.0, 1.0, 0.0], vec![2, 2]);
[INFO] [stdout]    |               ^^^^^^ use of undeclared type `Tensor`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `ClassificationMetrics` in this scope
[INFO] [stdout]   --> src/ml/metrics.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | let acc = ClassificationMetrics::accuracy(&preds, &targets);
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^ use of undeclared type `ClassificationMetrics`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 35) stdout ----
[INFO] [stdout] error[E0061]: this function takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/lib.rs:53:13
[INFO] [stdout]     |
[INFO] [stdout]  53 |             MM::new(784, 128), // Linear layer (784 -> 128)
[INFO] [stdout]     |             ^^^^^^^ ---  --- unexpected argument #2 of type `{integer}`
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     expected `Tensor`, found integer
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/ml/params.rs:310:12
[INFO] [stdout]     |
[INFO] [stdout] 310 |     pub fn new(w: Tensor) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout]  53 -             MM::new(784, 128), // Linear layer (784 -> 128)
[INFO] [stdout]  53 +             MM::new(/* Tensor */), // Linear layer (784 -> 128)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/lib.rs:55:13
[INFO] [stdout]     |
[INFO] [stdout]  55 |             MM::new(128, 10),  // Linear layer (128 -> 10)
[INFO] [stdout]     |             ^^^^^^^ ---  -- unexpected argument #2 of type `{integer}`
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     expected `Tensor`, found integer
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/ml/params.rs:310:12
[INFO] [stdout]     |
[INFO] [stdout] 310 |     pub fn new(w: Tensor) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout]  55 -             MM::new(128, 10),  // Linear layer (128 -> 10)
[INFO] [stdout]  55 +             MM::new(/* Tensor */),  // Linear layer (128 -> 10)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0061`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/ml.rs - ml::Tensor::argmax (line 223) stdout ----
[INFO] [stdout] error[E0433]: cannot find type `Tensor` in this scope
[INFO] [stdout]    --> src/ml.rs:225:9
[INFO] [stdout]     |
[INFO] [stdout] 225 | let t = Tensor::new(vec![1.0, 3.0, 2.0], vec![3]);
[INFO] [stdout]     |         ^^^^^^ use of undeclared type `Tensor`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Tensor` in this scope
[INFO] [stdout]    --> src/ml.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 | let t = Tensor::new(vec![0.1, 0.9, 0.3, 0.7], vec![2, 2]);
[INFO] [stdout]     |         ^^^^^^ use of undeclared type `Tensor`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/lib.rs - (line 35)
[INFO] [stdout]     src/ml.rs - ml::Tensor::argmax (line 223)
[INFO] [stdout]     src/ml/metrics.rs - ml::metrics::ClassificationMetrics::accuracy (line 17)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 3 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.22s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 0.39s; merged doctests compilation took 0.17s
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "cfbfdeae00a083bc516f9fa2d66f2f0b3c8c39ecd6ea90dc1e9197a854ae8ada", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cfbfdeae00a083bc516f9fa2d66f2f0b3c8c39ecd6ea90dc1e9197a854ae8ada", kill_on_drop: false }`
[INFO] [stdout] cfbfdeae00a083bc516f9fa2d66f2f0b3c8c39ecd6ea90dc1e9197a854ae8ada
