[INFO] cloning repository https://github.com/mariusdanciu/rust_nn [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mariusdanciu/rust_nn" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmariusdanciu%2Frust_nn"` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmariusdanciu%2Frust_nn'... [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 12918c5094ebc0b84b1049c93bfc3b3dac2f1c5a [INFO] checking mariusdanciu/rust_nn against try#e922e6444795ab795fab1943288aee3d543699b8 for pr-66852 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmariusdanciu%2Frust_nn" "/workspace/builds/worker-0/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-0/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/mariusdanciu/rust_nn on toolchain e922e6444795ab795fab1943288aee3d543699b8 [INFO] running `"/workspace/cargo-home/bin/cargo" "+e922e6444795ab795fab1943288aee3d543699b8" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/mariusdanciu/rust_nn [INFO] finished tweaking git repo https://github.com/mariusdanciu/rust_nn [INFO] tweaked toml for git repo https://github.com/mariusdanciu/rust_nn written to /workspace/builds/worker-0/source/Cargo.toml [INFO] crate git repo https://github.com/mariusdanciu/rust_nn already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+e922e6444795ab795fab1943288aee3d543699b8" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "+e922e6444795ab795fab1943288aee3d543699b8" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 59bc7ed0d01cf400d7c16668186e8985ebb8df5295e5fdbd30ba956acceff8c9 [INFO] running `"docker" "start" "-a" "59bc7ed0d01cf400d7c16668186e8985ebb8df5295e5fdbd30ba956acceff8c9"` [INFO] [stderr] Compiling num-complex v0.2.3 [INFO] [stderr] Compiling num-rational v0.2.2 [INFO] [stderr] Compiling num-traits v0.2.8 [INFO] [stderr] Checking generic-array v0.13.2 [INFO] [stderr] Checking rand_chacha v0.2.1 [INFO] [stderr] Checking rand v0.7.2 [INFO] [stderr] Checking num-integer v0.1.41 [INFO] [stderr] Checking approx v0.3.2 [INFO] [stderr] Checking alga v0.9.2 [INFO] [stderr] Checking rand_distr v0.2.2 [INFO] [stderr] Checking nalgebra v0.19.0 [INFO] [stderr] Checking nn v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `std::f64::EPSILON` [INFO] [stderr] --> src/neunet/definitions.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::f64::EPSILON; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant `stochastic_gradient_descent` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:69:5 [INFO] [stderr] | [INFO] [stderr] 69 | stochastic_gradient_descent, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `StochasticGradientDescent` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant `batch_gradient_descent` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:70:5 [INFO] [stderr] | [INFO] [stderr] 70 | batch_gradient_descent, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BatchGradientDescent` [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::f64::EPSILON` [INFO] [stderr] --> src/neunet/definitions.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::f64::EPSILON; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant `stochastic_gradient_descent` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:69:5 [INFO] [stderr] | [INFO] [stderr] 69 | stochastic_gradient_descent, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `StochasticGradientDescent` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant `batch_gradient_descent` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:70:5 [INFO] [stderr] | [INFO] [stderr] 70 | batch_gradient_descent, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BatchGradientDescent` [INFO] [stderr] [INFO] [stderr] warning: variant `adam` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:71:5 [INFO] [stderr] | [INFO] [stderr] 71 | adam, [INFO] [stderr] | ^^^^ help: convert the identifier to upper camel case: `Adam` [INFO] [stderr] [INFO] [stderr] warning: variant `sigmoid` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | sigmoid, [INFO] [stderr] | ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Sigmoid` [INFO] [stderr] [INFO] [stderr] warning: variant `adam` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:71:5 [INFO] [stderr] | [INFO] [stderr] 71 | adam, [INFO] [stderr] | ^^^^ help: convert the identifier to upper camel case: `Adam` [INFO] [stderr] [INFO] [stderr] warning: variant `sigmoid` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | sigmoid, [INFO] [stderr] | ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Sigmoid` [INFO] [stderr] [INFO] [stderr] warning: variant `relu` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | relu, [INFO] [stderr] | ^^^^ help: convert the identifier to upper camel case: `Relu` [INFO] [stderr] [INFO] [stderr] warning: variant `relu` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | relu, [INFO] [stderr] | ^^^^ help: convert the identifier to upper camel case: `Relu` [INFO] [stderr] [INFO] [stderr] warning: variant `tanh` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | tanh, [INFO] [stderr] | ^^^^ help: convert the identifier to upper camel case: `Tanh` [INFO] [stderr] [INFO] [stderr] warning: variant `tanh` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | tanh, [INFO] [stderr] | ^^^^ help: convert the identifier to upper camel case: `Tanh` [INFO] [stderr] [INFO] [stderr] warning: variant `soft_max` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:78:5 [INFO] [stderr] | [INFO] [stderr] 78 | soft_max, [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to upper camel case: `SoftMax` [INFO] [stderr] [INFO] [stderr] warning: variant `soft_max` should have an upper camel case name [INFO] [stderr] --> src/neunet/definitions.rs:78:5 [INFO] [stderr] | [INFO] [stderr] 78 | soft_max, [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to upper camel case: `SoftMax` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/neunet/optimization.rs:41:17 [INFO] [stderr] | [INFO] [stderr] 39 | sigmoid => [INFO] [stderr] | ------- matches any value [INFO] [stderr] 40 | MLOps::vectorize(t, MLOps::sigmoid), [INFO] [stderr] 41 | relu => [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/neunet/optimization.rs:43:17 [INFO] [stderr] | [INFO] [stderr] 39 | sigmoid => [INFO] [stderr] | ------- matches any value [INFO] [stderr] ... [INFO] [stderr] 43 | tanh => [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/neunet/optimization.rs:45:17 [INFO] [stderr] | [INFO] [stderr] 39 | sigmoid => [INFO] [stderr] | ------- matches any value [INFO] [stderr] ... [INFO] [stderr] 45 | soft_max => [INFO] [stderr] | ^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/neunet/optimization.rs:65:17 [INFO] [stderr] | [INFO] [stderr] 64 | relu => MLOps::vectorize(&self.layers[k].outs, MLOps::relu_derivative), [INFO] [stderr] | ---- matches any value [INFO] [stderr] 65 | sigmoid => MLOps::vectorize(&self.layers[k].outs, MLOps::sigmoid_derivative), [INFO] [stderr] | ^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/neunet/optimization.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 64 | relu => MLOps::vectorize(&self.layers[k].outs, MLOps::relu_derivative), [INFO] [stderr] | ---- matches any value [INFO] [stderr] 65 | sigmoid => MLOps::vectorize(&self.layers[k].outs, MLOps::sigmoid_derivative), [INFO] [stderr] 66 | tanh => MLOps::vectorize(&self.layers[k].outs, MLOps::tanh_derivative), [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/neunet/optimization.rs:67:17 [INFO] [stderr] | [INFO] [stderr] 64 | relu => MLOps::vectorize(&self.layers[k].outs, MLOps::relu_derivative), [INFO] [stderr] | ---- matches any value [INFO] [stderr] ... [INFO] [stderr] 67 | soft_max => MLOps::soft_max_derivative(&self.layers[k].outs), [INFO] [stderr] | ^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unused variable: `magic` [INFO] [stderr] --> src/neunet/files/idx.rs:15:13 [INFO] [stderr] | [INFO] [stderr] 15 | let magic = BinaryOps::to_u32(&buf[0..4]); [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_magic` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `buf` [INFO] [stderr] --> src/neunet/files/idx.rs:49:14 [INFO] [stderr] | [INFO] [stderr] 49 | let buf: [u8; 8] = [0; 8]; [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_buf` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `read_bytes` [INFO] [stderr] --> src/neunet/files/idx.rs:58:13 [INFO] [stderr] | [INFO] [stderr] 58 | let read_bytes = data_reader.read_to_end(&mut out)?; [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_read_bytes` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sigmoid` [INFO] [stderr] --> src/neunet/optimization.rs:39:17 [INFO] [stderr] | [INFO] [stderr] 39 | sigmoid => [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_sigmoid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `relu` [INFO] [stderr] --> src/neunet/optimization.rs:41:17 [INFO] [stderr] | [INFO] [stderr] 41 | relu => [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_relu` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tanh` [INFO] [stderr] --> src/neunet/optimization.rs:43:17 [INFO] [stderr] | [INFO] [stderr] 43 | tanh => [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_tanh` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `soft_max` [INFO] [stderr] --> src/neunet/optimization.rs:45:17 [INFO] [stderr] | [INFO] [stderr] 45 | soft_max => [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_soft_max` [INFO] [stderr] [INFO] [stderr] warning: variable `current` is assigned to, but never used [INFO] [stderr] --> src/neunet/optimization.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | let mut current = &self.layers[len - 1]; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_current` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `relu` [INFO] [stderr] --> src/neunet/optimization.rs:64:17 [INFO] [stderr] | [INFO] [stderr] 64 | relu => MLOps::vectorize(&self.layers[k].outs, MLOps::relu_derivative), [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_relu` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sigmoid` [INFO] [stderr] --> src/neunet/optimization.rs:65:17 [INFO] [stderr] | [INFO] [stderr] 65 | sigmoid => MLOps::vectorize(&self.layers[k].outs, MLOps::sigmoid_derivative), [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_sigmoid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tanh` [INFO] [stderr] --> src/neunet/optimization.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 66 | tanh => MLOps::vectorize(&self.layers[k].outs, MLOps::tanh_derivative), [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_tanh` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `soft_max` [INFO] [stderr] --> src/neunet/optimization.rs:67:17 [INFO] [stderr] | [INFO] [stderr] 67 | soft_max => MLOps::soft_max_derivative(&self.layers[k].outs), [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_soft_max` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `current` is never read [INFO] [stderr] --> src/neunet/optimization.rs:72:13 [INFO] [stderr] | [INFO] [stderr] 72 | current = &self.layers[k]; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: method is never used: `loss` [INFO] [stderr] --> src/neunet/definitions.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn loss(y: f64, w: &DVector, x: &DVectorSlice, b: f64) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `OptimizationType` [INFO] [stderr] --> src/neunet/definitions.rs:68:10 [INFO] [stderr] | [INFO] [stderr] 68 | pub enum OptimizationType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `relu` [INFO] [stderr] --> src/neunet/definitions.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | relu, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `tanh` [INFO] [stderr] --> src/neunet/definitions.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | tanh, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `soft_max` [INFO] [stderr] --> src/neunet/definitions.rs:78:5 [INFO] [stderr] | [INFO] [stderr] 78 | soft_max, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `weights` [INFO] [stderr] --> src/neunet/optimization.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | weights: DVector, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `intercepts` [INFO] [stderr] --> src/neunet/optimization.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | intercepts: DVector, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `dJ` should have a snake case name [INFO] [stderr] --> src/neunet/optimization.rs:60:17 [INFO] [stderr] | [INFO] [stderr] 60 | let mut dJ = inputs - labels; [INFO] [stderr] | ^^ help: convert the identifier to snake case: `d_j` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/neunet/optimization.rs:41:17 [INFO] [stderr] | [INFO] [stderr] 39 | sigmoid => [INFO] [stderr] | ------- matches any value [INFO] [stderr] 40 | MLOps::vectorize(t, MLOps::sigmoid), [INFO] [stderr] 41 | relu => [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/neunet/optimization.rs:43:17 [INFO] [stderr] | [INFO] [stderr] 39 | sigmoid => [INFO] [stderr] | ------- matches any value [INFO] [stderr] ... [INFO] [stderr] 43 | tanh => [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/neunet/optimization.rs:45:17 [INFO] [stderr] | [INFO] [stderr] 39 | sigmoid => [INFO] [stderr] | ------- matches any value [INFO] [stderr] ... [INFO] [stderr] 45 | soft_max => [INFO] [stderr] | ^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/neunet/optimization.rs:65:17 [INFO] [stderr] | [INFO] [stderr] 64 | relu => MLOps::vectorize(&self.layers[k].outs, MLOps::relu_derivative), [INFO] [stderr] | ---- matches any value [INFO] [stderr] 65 | sigmoid => MLOps::vectorize(&self.layers[k].outs, MLOps::sigmoid_derivative), [INFO] [stderr] | ^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/neunet/optimization.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 64 | relu => MLOps::vectorize(&self.layers[k].outs, MLOps::relu_derivative), [INFO] [stderr] | ---- matches any value [INFO] [stderr] 65 | sigmoid => MLOps::vectorize(&self.layers[k].outs, MLOps::sigmoid_derivative), [INFO] [stderr] 66 | tanh => MLOps::vectorize(&self.layers[k].outs, MLOps::tanh_derivative), [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/neunet/optimization.rs:67:17 [INFO] [stderr] | [INFO] [stderr] 64 | relu => MLOps::vectorize(&self.layers[k].outs, MLOps::relu_derivative), [INFO] [stderr] | ---- matches any value [INFO] [stderr] ... [INFO] [stderr] 67 | soft_max => MLOps::soft_max_derivative(&self.layers[k].outs), [INFO] [stderr] | ^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unused variable: `magic` [INFO] [stderr] --> src/neunet/files/idx.rs:15:13 [INFO] [stderr] | [INFO] [stderr] 15 | let magic = BinaryOps::to_u32(&buf[0..4]); [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_magic` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `buf` [INFO] [stderr] --> src/neunet/files/idx.rs:49:14 [INFO] [stderr] | [INFO] [stderr] 49 | let buf: [u8; 8] = [0; 8]; [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_buf` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `read_bytes` [INFO] [stderr] --> src/neunet/files/idx.rs:58:13 [INFO] [stderr] | [INFO] [stderr] 58 | let read_bytes = data_reader.read_to_end(&mut out)?; [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_read_bytes` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sigmoid` [INFO] [stderr] --> src/neunet/optimization.rs:39:17 [INFO] [stderr] | [INFO] [stderr] 39 | sigmoid => [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_sigmoid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `relu` [INFO] [stderr] --> src/neunet/optimization.rs:41:17 [INFO] [stderr] | [INFO] [stderr] 41 | relu => [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_relu` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tanh` [INFO] [stderr] --> src/neunet/optimization.rs:43:17 [INFO] [stderr] | [INFO] [stderr] 43 | tanh => [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_tanh` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `soft_max` [INFO] [stderr] --> src/neunet/optimization.rs:45:17 [INFO] [stderr] | [INFO] [stderr] 45 | soft_max => [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_soft_max` [INFO] [stderr] [INFO] [stderr] warning: variable `current` is assigned to, but never used [INFO] [stderr] --> src/neunet/optimization.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | let mut current = &self.layers[len - 1]; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_current` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `relu` [INFO] [stderr] --> src/neunet/optimization.rs:64:17 [INFO] [stderr] | [INFO] [stderr] 64 | relu => MLOps::vectorize(&self.layers[k].outs, MLOps::relu_derivative), [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_relu` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sigmoid` [INFO] [stderr] --> src/neunet/optimization.rs:65:17 [INFO] [stderr] | [INFO] [stderr] 65 | sigmoid => MLOps::vectorize(&self.layers[k].outs, MLOps::sigmoid_derivative), [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_sigmoid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tanh` [INFO] [stderr] --> src/neunet/optimization.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 66 | tanh => MLOps::vectorize(&self.layers[k].outs, MLOps::tanh_derivative), [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_tanh` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `soft_max` [INFO] [stderr] --> src/neunet/optimization.rs:67:17 [INFO] [stderr] | [INFO] [stderr] 67 | soft_max => MLOps::soft_max_derivative(&self.layers[k].outs), [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_soft_max` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `current` is never read [INFO] [stderr] --> src/neunet/optimization.rs:72:13 [INFO] [stderr] | [INFO] [stderr] 72 | current = &self.layers[k]; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: method is never used: `loss` [INFO] [stderr] --> src/neunet/definitions.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn loss(y: f64, w: &DVector, x: &DVectorSlice, b: f64) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `OptimizationType` [INFO] [stderr] --> src/neunet/definitions.rs:68:10 [INFO] [stderr] | [INFO] [stderr] 68 | pub enum OptimizationType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `relu` [INFO] [stderr] --> src/neunet/definitions.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | relu, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `tanh` [INFO] [stderr] --> src/neunet/definitions.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | tanh, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `soft_max` [INFO] [stderr] --> src/neunet/definitions.rs:78:5 [INFO] [stderr] | [INFO] [stderr] 78 | soft_max, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `weights` [INFO] [stderr] --> src/neunet/optimization.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | weights: DVector, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `intercepts` [INFO] [stderr] --> src/neunet/optimization.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | intercepts: DVector, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `dJ` should have a snake case name [INFO] [stderr] --> src/neunet/optimization.rs:60:17 [INFO] [stderr] | [INFO] [stderr] 60 | let mut dJ = inputs - labels; [INFO] [stderr] | ^^ help: convert the identifier to snake case: `d_j` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 50.37s [INFO] running `"docker" "inspect" "59bc7ed0d01cf400d7c16668186e8985ebb8df5295e5fdbd30ba956acceff8c9"` [INFO] running `"docker" "rm" "-f" "59bc7ed0d01cf400d7c16668186e8985ebb8df5295e5fdbd30ba956acceff8c9"` [INFO] [stdout] 59bc7ed0d01cf400d7c16668186e8985ebb8df5295e5fdbd30ba956acceff8c9