[INFO] cloning repository https://github.com/bobhacko1112/nimrod [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bobhacko1112/nimrod" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbobhacko1112%2Fnimrod"` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbobhacko1112%2Fnimrod'... [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] d25b0758fbf9cf9d8da3a405802d34536115f914 [INFO] checking bobhacko1112/nimrod against master#45d050cde277b22a755847338f2acc2c7b834141 for pr-71393 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbobhacko1112%2Fnimrod" "/workspace/builds/worker-4/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/bobhacko1112/nimrod on toolchain 45d050cde277b22a755847338f2acc2c7b834141 [INFO] running `"/workspace/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/bobhacko1112/nimrod [INFO] finished tweaking git repo https://github.com/bobhacko1112/nimrod [INFO] tweaked toml for git repo https://github.com/bobhacko1112/nimrod written to /workspace/builds/worker-4/source/Cargo.toml [INFO] crate git repo https://github.com/bobhacko1112/nimrod already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "+45d050cde277b22a755847338f2acc2c7b834141" "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] d4bf9c9ff54b2ef381bce7408533e7248863d869f32b520aab704bdde6f73359 [INFO] running `"docker" "start" "-a" "d4bf9c9ff54b2ef381bce7408533e7248863d869f32b520aab704bdde6f73359"` [INFO] [stderr] Compiling libc v0.2.65 [INFO] [stderr] Compiling proc-macro2 v1.0.6 [INFO] [stderr] Compiling getrandom v0.1.13 [INFO] [stderr] Compiling serde v1.0.102 [INFO] [stderr] Checking crossbeam-channel v0.4.0 [INFO] [stderr] Checking crossbeam-queue v0.2.0 [INFO] [stderr] Checking crossbeam v0.7.3 [INFO] [stderr] Checking num_cpus v1.11.1 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Compiling syn v1.0.8 [INFO] [stderr] Checking rand_chacha v0.2.1 [INFO] [stderr] Checking rand v0.7.2 [INFO] [stderr] Compiling serde_derive v1.0.102 [INFO] [stderr] Checking serde_json v1.0.41 [INFO] [stderr] Checking brain v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `rand::prelude::*` [INFO] [stderr] --> src/lib.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use rand::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> src/lib.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::BufReader` [INFO] [stderr] --> src/lib.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io::BufReader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `sigmoid` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:49:5 [INFO] [stderr] | [INFO] [stderr] 49 | sigmoid, [INFO] [stderr] | ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Sigmoid` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant `tanh` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 50 | tanh, [INFO] [stderr] | ^^^^ help: convert the identifier to upper camel case: `Tanh` [INFO] [stderr] [INFO] [stderr] warning: variant `relu` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:51:5 [INFO] [stderr] | [INFO] [stderr] 51 | relu, [INFO] [stderr] | ^^^^ help: convert the identifier to upper camel case: `Relu` [INFO] [stderr] [INFO] [stderr] warning: variant `epochs` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | epochs(usize), [INFO] [stderr] | ^^^^^^ help: convert the identifier to upper camel case: `Epochs` [INFO] [stderr] [INFO] [stderr] warning: variant `error` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:56:5 [INFO] [stderr] | [INFO] [stderr] 56 | error(f64), [INFO] [stderr] | ^^^^^ help: convert the identifier to upper camel case: `Error` [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/lib.rs:205:20 [INFO] [stderr] | [INFO] [stderr] 205 | if (self.errors_received == 0) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/lib.rs:218:20 [INFO] [stderr] | [INFO] [stderr] 218 | if (self.errors_received == self.back_connections && self.is_input == false) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::prelude::*` [INFO] [stderr] --> src/lib.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use rand::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> src/lib.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::BufReader` [INFO] [stderr] --> src/lib.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io::BufReader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `sigmoid` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:49:5 [INFO] [stderr] | [INFO] [stderr] 49 | sigmoid, [INFO] [stderr] | ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Sigmoid` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant `tanh` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 50 | tanh, [INFO] [stderr] | ^^^^ help: convert the identifier to upper camel case: `Tanh` [INFO] [stderr] [INFO] [stderr] warning: variant `relu` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:51:5 [INFO] [stderr] | [INFO] [stderr] 51 | relu, [INFO] [stderr] | ^^^^ help: convert the identifier to upper camel case: `Relu` [INFO] [stderr] [INFO] [stderr] warning: variant `epochs` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | epochs(usize), [INFO] [stderr] | ^^^^^^ help: convert the identifier to upper camel case: `Epochs` [INFO] [stderr] [INFO] [stderr] warning: variant `error` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:56:5 [INFO] [stderr] | [INFO] [stderr] 56 | error(f64), [INFO] [stderr] | ^^^^^ help: convert the identifier to upper camel case: `Error` [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/lib.rs:205:20 [INFO] [stderr] | [INFO] [stderr] 205 | if (self.errors_received == 0) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/lib.rs:218:20 [INFO] [stderr] | [INFO] [stderr] 218 | if (self.errors_received == self.back_connections && self.is_input == false) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::prelude` [INFO] [stderr] --> src/lib.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::io::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `sigmoid` is named the same as one of the variants of the type `ActivatonFunction` [INFO] [stderr] --> src/lib.rs:99:13 [INFO] [stderr] | [INFO] [stderr] 99 | sigmoid => 1.0 / (1.0 + (-x).exp()), [INFO] [stderr] | ^^^^^^^ help: to match on the variant, qualify the path: `ActivatonFunction::sigmoid` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bindings_with_variant_name)]` on by default [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `tanh` is named the same as one of the variants of the type `ActivatonFunction` [INFO] [stderr] --> src/lib.rs:100:13 [INFO] [stderr] | [INFO] [stderr] 100 | tanh => x.tanh(), [INFO] [stderr] | ^^^^ help: to match on the variant, qualify the path: `ActivatonFunction::tanh` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `relu` is named the same as one of the variants of the type `ActivatonFunction` [INFO] [stderr] --> src/lib.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 101 | relu => { [INFO] [stderr] | ^^^^ help: to match on the variant, qualify the path: `ActivatonFunction::relu` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/lib.rs:100:13 [INFO] [stderr] | [INFO] [stderr] 99 | sigmoid => 1.0 / (1.0 + (-x).exp()), [INFO] [stderr] | ------- matches any value [INFO] [stderr] 100 | tanh => x.tanh(), [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/lib.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 99 | sigmoid => 1.0 / (1.0 + (-x).exp()), [INFO] [stderr] | ------- matches any value [INFO] [stderr] 100 | tanh => x.tanh(), [INFO] [stderr] 101 | relu => { [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `sigmoid` is named the same as one of the variants of the type `ActivatonFunction` [INFO] [stderr] --> src/lib.rs:113:13 [INFO] [stderr] | [INFO] [stderr] 113 | sigmoid => x * (1.0f64 - x), [INFO] [stderr] | ^^^^^^^ help: to match on the variant, qualify the path: `ActivatonFunction::sigmoid` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `tanh` is named the same as one of the variants of the type `ActivatonFunction` [INFO] [stderr] --> src/lib.rs:114:13 [INFO] [stderr] | [INFO] [stderr] 114 | tanh => 1.0f64 - x.powf(2.0f64), [INFO] [stderr] | ^^^^ help: to match on the variant, qualify the path: `ActivatonFunction::tanh` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `relu` is named the same as one of the variants of the type `ActivatonFunction` [INFO] [stderr] --> src/lib.rs:115:13 [INFO] [stderr] | [INFO] [stderr] 115 | relu => { [INFO] [stderr] | ^^^^ help: to match on the variant, qualify the path: `ActivatonFunction::relu` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/lib.rs:114:13 [INFO] [stderr] | [INFO] [stderr] 113 | sigmoid => x * (1.0f64 - x), [INFO] [stderr] | ------- matches any value [INFO] [stderr] 114 | tanh => 1.0f64 - x.powf(2.0f64), [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/lib.rs:115:13 [INFO] [stderr] | [INFO] [stderr] 113 | sigmoid => x * (1.0f64 - x), [INFO] [stderr] | ------- matches any value [INFO] [stderr] 114 | tanh => 1.0f64 - x.powf(2.0f64), [INFO] [stderr] 115 | relu => { [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sigmoid` [INFO] [stderr] --> src/lib.rs:99:13 [INFO] [stderr] | [INFO] [stderr] 99 | sigmoid => 1.0 / (1.0 + (-x).exp()), [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sigmoid` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tanh` [INFO] [stderr] --> src/lib.rs:100:13 [INFO] [stderr] | [INFO] [stderr] 100 | tanh => x.tanh(), [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_tanh` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `relu` [INFO] [stderr] --> src/lib.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 101 | relu => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_relu` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sigmoid` [INFO] [stderr] --> src/lib.rs:113:13 [INFO] [stderr] | [INFO] [stderr] 113 | sigmoid => x * (1.0f64 - x), [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sigmoid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tanh` [INFO] [stderr] --> src/lib.rs:114:13 [INFO] [stderr] | [INFO] [stderr] 114 | tanh => 1.0f64 - x.powf(2.0f64), [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_tanh` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `relu` [INFO] [stderr] --> src/lib.rs:115:13 [INFO] [stderr] | [INFO] [stderr] 115 | relu => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_relu` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `out` [INFO] [stderr] --> src/lib.rs:165:9 [INFO] [stderr] | [INFO] [stderr] 165 | out: Option, [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_out` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `filename` [INFO] [stderr] --> src/lib.rs:382:27 [INFO] [stderr] | [INFO] [stderr] 382 | fn to_file(&mut self, filename: &str) -> Result<&str, &str> { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filename` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `filename` [INFO] [stderr] --> src/lib.rs:386:18 [INFO] [stderr] | [INFO] [stderr] 386 | fn from_file(filename: &str) -> Result { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filename` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `prev_error` [INFO] [stderr] --> src/lib.rs:435:21 [INFO] [stderr] | [INFO] [stderr] 435 | let mut prev_error = 0.6f64; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_error` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:400:13 [INFO] [stderr] | [INFO] [stderr] 400 | let mut net = Net::create( [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:435:21 [INFO] [stderr] | [INFO] [stderr] 435 | let mut prev_error = 0.6f64; [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: function is never used: `random` [INFO] [stderr] --> src/lib.rs:42:4 [INFO] [stderr] | [INFO] [stderr] 42 | fn random() -> f64 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get` [INFO] [stderr] --> src/lib.rs:97:5 [INFO] [stderr] | [INFO] [stderr] 97 | fn get(&self, x: f64) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_derivative` [INFO] [stderr] --> src/lib.rs:111:5 [INFO] [stderr] | [INFO] [stderr] 111 | fn get_derivative(&self, x: f64) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `feed_forward` [INFO] [stderr] --> src/lib.rs:127:5 [INFO] [stderr] | [INFO] [stderr] 127 | fn feed_forward(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `feed_forward` [INFO] [stderr] --> src/lib.rs:147:5 [INFO] [stderr] | [INFO] [stderr] 147 | fn feed_forward(&mut self, bias: f64, activation_function: ActivatonFunction) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `backprop` [INFO] [stderr] --> src/lib.rs:160:5 [INFO] [stderr] | [INFO] [stderr] 160 | / fn backprop( [INFO] [stderr] 161 | | &mut self, [INFO] [stderr] 162 | | learning_rate: f64, [INFO] [stderr] 163 | | target: Option, [INFO] [stderr] ... | [INFO] [stderr] 239 | | } [INFO] [stderr] 240 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `backprop` [INFO] [stderr] --> src/lib.rs:243:5 [INFO] [stderr] | [INFO] [stderr] 243 | fn backprop(&self, targets: &Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_result` [INFO] [stderr] --> src/lib.rs:266:5 [INFO] [stderr] | [INFO] [stderr] 266 | fn get_result(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_results` [INFO] [stderr] --> src/lib.rs:276:5 [INFO] [stderr] | [INFO] [stderr] 276 | fn get_results(&self) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_error` [INFO] [stderr] --> src/lib.rs:283:5 [INFO] [stderr] | [INFO] [stderr] 283 | fn get_error(&self) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `feed_forward` [INFO] [stderr] --> src/lib.rs:289:5 [INFO] [stderr] | [INFO] [stderr] 289 | fn feed_forward(&mut self, inputs: &Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/lib.rs:301:5 [INFO] [stderr] | [INFO] [stderr] 301 | fn new(layers: &Vec) -> Net { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `create` [INFO] [stderr] --> src/lib.rs:309:5 [INFO] [stderr] | [INFO] [stderr] 309 | / fn create( [INFO] [stderr] 310 | | layers: &Vec, [INFO] [stderr] 311 | | learningrate: f64, [INFO] [stderr] 312 | | hidden_activation: ActivatonFunction, [INFO] [stderr] ... | [INFO] [stderr] 379 | | } [INFO] [stderr] 380 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `to_file` [INFO] [stderr] --> src/lib.rs:382:5 [INFO] [stderr] | [INFO] [stderr] 382 | fn to_file(&mut self, filename: &str) -> Result<&str, &str> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `from_file` [INFO] [stderr] --> src/lib.rs:386:5 [INFO] [stderr] | [INFO] [stderr] 386 | fn from_file(filename: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/lib.rs:392:5 [INFO] [stderr] | [INFO] [stderr] 392 | / fn new( [INFO] [stderr] 393 | | halt_condition: HaltCondition, [INFO] [stderr] 394 | | topography: Vec, [INFO] [stderr] 395 | | learning_rate: f64, [INFO] [stderr] ... | [INFO] [stderr] 411 | | } [INFO] [stderr] 412 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `go` [INFO] [stderr] --> src/lib.rs:413:5 [INFO] [stderr] | [INFO] [stderr] 413 | fn go(mut self) -> Net { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:172:17 [INFO] [stderr] | [INFO] [stderr] 172 | / thread::scope(|s| { [INFO] [stderr] 173 | | match &mut self.connections { [INFO] [stderr] 174 | | Some(connections) => { [INFO] [stderr] 175 | | // spawn thread here [INFO] [stderr] ... | [INFO] [stderr] 198 | | } [INFO] [stderr] 199 | | }); [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:246:9 [INFO] [stderr] | [INFO] [stderr] 246 | / thread::scope(|s| { [INFO] [stderr] 247 | | for (cell_chunk, target_chunk) in self.network[out_index] [INFO] [stderr] 248 | | .cells [INFO] [stderr] 249 | | .chunks(core_count) [INFO] [stderr] ... | [INFO] [stderr] 262 | | } [INFO] [stderr] 263 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 52 warnings emitted [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0170`. [INFO] [stderr] warning: unused import: `std::io::prelude` [INFO] [stderr] --> src/lib.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::io::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `sigmoid` is named the same as one of the variants of the type `ActivatonFunction` [INFO] [stderr] --> src/lib.rs:99:13 [INFO] [stderr] | [INFO] [stderr] 99 | sigmoid => 1.0 / (1.0 + (-x).exp()), [INFO] [stderr] | ^^^^^^^ help: to match on the variant, qualify the path: `ActivatonFunction::sigmoid` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bindings_with_variant_name)]` on by default [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `tanh` is named the same as one of the variants of the type `ActivatonFunction` [INFO] [stderr] --> src/lib.rs:100:13 [INFO] [stderr] | [INFO] [stderr] 100 | tanh => x.tanh(), [INFO] [stderr] | ^^^^ help: to match on the variant, qualify the path: `ActivatonFunction::tanh` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `relu` is named the same as one of the variants of the type `ActivatonFunction` [INFO] [stderr] --> src/lib.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 101 | relu => { [INFO] [stderr] | ^^^^ help: to match on the variant, qualify the path: `ActivatonFunction::relu` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/lib.rs:100:13 [INFO] [stderr] | [INFO] [stderr] 99 | sigmoid => 1.0 / (1.0 + (-x).exp()), [INFO] [stderr] | ------- matches any value [INFO] [stderr] 100 | tanh => x.tanh(), [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/lib.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 99 | sigmoid => 1.0 / (1.0 + (-x).exp()), [INFO] [stderr] | ------- matches any value [INFO] [stderr] 100 | tanh => x.tanh(), [INFO] [stderr] 101 | relu => { [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `sigmoid` is named the same as one of the variants of the type `ActivatonFunction` [INFO] [stderr] --> src/lib.rs:113:13 [INFO] [stderr] | [INFO] [stderr] 113 | sigmoid => x * (1.0f64 - x), [INFO] [stderr] | ^^^^^^^ help: to match on the variant, qualify the path: `ActivatonFunction::sigmoid` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `tanh` is named the same as one of the variants of the type `ActivatonFunction` [INFO] [stderr] --> src/lib.rs:114:13 [INFO] [stderr] | [INFO] [stderr] 114 | tanh => 1.0f64 - x.powf(2.0f64), [INFO] [stderr] | ^^^^ help: to match on the variant, qualify the path: `ActivatonFunction::tanh` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `relu` is named the same as one of the variants of the type `ActivatonFunction` [INFO] [stderr] --> src/lib.rs:115:13 [INFO] [stderr] | [INFO] [stderr] 115 | relu => { [INFO] [stderr] | ^^^^ help: to match on the variant, qualify the path: `ActivatonFunction::relu` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/lib.rs:114:13 [INFO] [stderr] | [INFO] [stderr] 113 | sigmoid => x * (1.0f64 - x), [INFO] [stderr] | ------- matches any value [INFO] [stderr] 114 | tanh => 1.0f64 - x.powf(2.0f64), [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/lib.rs:115:13 [INFO] [stderr] | [INFO] [stderr] 113 | sigmoid => x * (1.0f64 - x), [INFO] [stderr] | ------- matches any value [INFO] [stderr] 114 | tanh => 1.0f64 - x.powf(2.0f64), [INFO] [stderr] 115 | relu => { [INFO] [stderr] | ^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sigmoid` [INFO] [stderr] --> src/lib.rs:99:13 [INFO] [stderr] | [INFO] [stderr] 99 | sigmoid => 1.0 / (1.0 + (-x).exp()), [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sigmoid` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tanh` [INFO] [stderr] --> src/lib.rs:100:13 [INFO] [stderr] | [INFO] [stderr] 100 | tanh => x.tanh(), [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_tanh` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `relu` [INFO] [stderr] --> src/lib.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 101 | relu => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_relu` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sigmoid` [INFO] [stderr] --> src/lib.rs:113:13 [INFO] [stderr] | [INFO] [stderr] 113 | sigmoid => x * (1.0f64 - x), [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sigmoid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tanh` [INFO] [stderr] --> src/lib.rs:114:13 [INFO] [stderr] | [INFO] [stderr] 114 | tanh => 1.0f64 - x.powf(2.0f64), [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_tanh` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `relu` [INFO] [stderr] --> src/lib.rs:115:13 [INFO] [stderr] | [INFO] [stderr] 115 | relu => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_relu` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `out` [INFO] [stderr] --> src/lib.rs:165:9 [INFO] [stderr] | [INFO] [stderr] 165 | out: Option, [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_out` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `filename` [INFO] [stderr] --> src/lib.rs:382:27 [INFO] [stderr] | [INFO] [stderr] 382 | fn to_file(&mut self, filename: &str) -> Result<&str, &str> { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filename` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `filename` [INFO] [stderr] --> src/lib.rs:386:18 [INFO] [stderr] | [INFO] [stderr] 386 | fn from_file(filename: &str) -> Result { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filename` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `prev_error` [INFO] [stderr] --> src/lib.rs:435:21 [INFO] [stderr] | [INFO] [stderr] 435 | let mut prev_error = 0.6f64; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_error` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `net` [INFO] [stderr] --> src/lib.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | let mut net = trainer.go(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_net` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:29:13 [INFO] [stderr] | [INFO] [stderr] 29 | let mut trainer = Trainer::new( [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | let mut net = trainer.go(); [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/lib.rs:400:13 [INFO] [stderr] | [INFO] [stderr] 400 | let mut net = Net::create( [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/lib.rs:435:21 [INFO] [stderr] | [INFO] [stderr] 435 | let mut prev_error = 0.6f64; [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_result` [INFO] [stderr] --> src/lib.rs:266:5 [INFO] [stderr] | [INFO] [stderr] 266 | fn get_result(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/lib.rs:301:5 [INFO] [stderr] | [INFO] [stderr] 301 | fn new(layers: &Vec) -> Net { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `to_file` [INFO] [stderr] --> src/lib.rs:382:5 [INFO] [stderr] | [INFO] [stderr] 382 | fn to_file(&mut self, filename: &str) -> Result<&str, &str> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `from_file` [INFO] [stderr] --> src/lib.rs:386:5 [INFO] [stderr] | [INFO] [stderr] 386 | fn from_file(filename: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:172:17 [INFO] [stderr] | [INFO] [stderr] 172 | / thread::scope(|s| { [INFO] [stderr] 173 | | match &mut self.connections { [INFO] [stderr] 174 | | Some(connections) => { [INFO] [stderr] 175 | | // spawn thread here [INFO] [stderr] ... | [INFO] [stderr] 198 | | } [INFO] [stderr] 199 | | }); [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:246:9 [INFO] [stderr] | [INFO] [stderr] 246 | / thread::scope(|s| { [INFO] [stderr] 247 | | for (cell_chunk, target_chunk) in self.network[out_index] [INFO] [stderr] 248 | | .cells [INFO] [stderr] 249 | | .chunks(core_count) [INFO] [stderr] ... | [INFO] [stderr] 262 | | } [INFO] [stderr] 263 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 42 warnings emitted [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0170`. [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 39.40s [INFO] running `"docker" "inspect" "d4bf9c9ff54b2ef381bce7408533e7248863d869f32b520aab704bdde6f73359"` [INFO] running `"docker" "rm" "-f" "d4bf9c9ff54b2ef381bce7408533e7248863d869f32b520aab704bdde6f73359"` [INFO] [stdout] d4bf9c9ff54b2ef381bce7408533e7248863d869f32b520aab704bdde6f73359