[INFO] cloning repository https://github.com/iLePix/ml-digits-recognizer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/iLePix/ml-digits-recognizer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FiLePix%2Fml-digits-recognizer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FiLePix%2Fml-digits-recognizer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8bc52d68f2403df4df980fb14af562f5b68189e9 [INFO] checking iLePix/ml-digits-recognizer against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FiLePix%2Fml-digits-recognizer" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/iLePix/ml-digits-recognizer on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/iLePix/ml-digits-recognizer [INFO] finished tweaking git repo https://github.com/iLePix/ml-digits-recognizer [INFO] tweaked toml for git repo https://github.com/iLePix/ml-digits-recognizer written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/iLePix/ml-digits-recognizer 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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating git repository `https://github.com/LinusDikomey/vecm` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e43a90181ec0b979479cd7952f3ac283f65b96b2cc398d3cd252177ebbae5917 [INFO] running `Command { std: "docker" "start" "-a" "e43a90181ec0b979479cd7952f3ac283f65b96b2cc398d3cd252177ebbae5917", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e43a90181ec0b979479cd7952f3ac283f65b96b2cc398d3cd252177ebbae5917", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e43a90181ec0b979479cd7952f3ac283f65b96b2cc398d3cd252177ebbae5917", kill_on_drop: false }` [INFO] [stdout] e43a90181ec0b979479cd7952f3ac283f65b96b2cc398d3cd252177ebbae5917 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c3cc7b4ff7c5a39568a1d785322c04fcfcb289bfa1f184a79397e2ab407db8cb [INFO] running `Command { std: "docker" "start" "-a" "c3cc7b4ff7c5a39568a1d785322c04fcfcb289bfa1f184a79397e2ab407db8cb", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.142 [INFO] [stderr] Compiling version-compare v0.1.1 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling sdl2 v0.35.2 [INFO] [stderr] Compiling num-traits v0.2.15 [INFO] [stderr] Compiling sdl2-sys v0.35.2 [INFO] [stderr] Checking getrandom v0.2.9 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking vecm v0.1.0 (https://github.com/LinusDikomey/vecm#6eab79d8) [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking ml-digits-recognizer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::array` [INFO] [stdout] --> src/net.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::array; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IMAGE_HEIGHT`, `IMAGE_WIDTH`, `self` [INFO] [stdout] --> src/net.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::{IMAGE_HEIGHT, IMAGE_WIDTH, activation::{Activation, self}}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `pixels::Color`, `rect::Rect`, `render::Canvas` [INFO] [stdout] --> src/main.rs:20:29 [INFO] [stdout] | [INFO] [stdout] 20 | use sdl2::{image::InitFlag, render::Canvas, pixels::Color, rect::Rect}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::array` [INFO] [stdout] --> src/net.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::array; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IMAGE_HEIGHT`, `IMAGE_WIDTH`, `self` [INFO] [stdout] --> src/net.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::{IMAGE_HEIGHT, IMAGE_WIDTH, activation::{Activation, self}}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `pixels::Color`, `rect::Rect`, `render::Canvas` [INFO] [stdout] --> src/main.rs:20:29 [INFO] [stdout] | [INFO] [stdout] 20 | use sdl2::{image::InitFlag, render::Canvas, pixels::Color, rect::Rect}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `weighted_output` is assigned to, but never used [INFO] [stdout] --> src/net.rs:83:21 [INFO] [stdout] | [INFO] [stdout] 83 | let mut weighted_output = self.biases[out_node]; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_weighted_output` instead [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rng` [INFO] [stdout] --> src/main.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `weighted_output` is assigned to, but never used [INFO] [stdout] --> src/net.rs:83:21 [INFO] [stdout] | [INFO] [stdout] 83 | let mut weighted_output = self.biases[out_node]; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_weighted_output` instead [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `font_path` [INFO] [stdout] --> src/main.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | let font_path = &Path::new("../../res/times-new-roman.ttf"); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_font_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `image_context` [INFO] [stdout] --> src/main.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | let image_context = sdl2::image::init(InitFlag::PNG | InitFlag::JPG)?; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_image_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | let mut window_size = Vec2u::new(560, 660); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `height` is never read [INFO] [stdout] --> src/main.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 28 | struct Images { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 31 | pub height: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rng` [INFO] [stdout] --> src/main.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `font_path` [INFO] [stdout] --> src/main.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | let font_path = &Path::new("../../res/times-new-roman.ttf"); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_font_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `image_context` [INFO] [stdout] --> src/main.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | let image_context = sdl2::image::init(InitFlag::PNG | InitFlag::JPG)?; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_image_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `mouse_delta` and `mouse_wheel_delta` are never read [INFO] [stdout] --> src/input.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct InputHandler { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 13 | mouse_delta: Vec2i, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 14 | mouse_wheel_delta: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `press_controls` is never used [INFO] [stdout] --> src/input.rs:48:20 [INFO] [stdout] | [INFO] [stdout] 29 | impl Control { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn press_controls() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | / key_mappings! { [INFO] [stdout] 59 | | Up => W, [INFO] [stdout] 60 | | Down => S, [INFO] [stdout] 61 | | Left => A, [INFO] [stdout] ... | [INFO] [stdout] 68 | | ZoomOut => Minus [INFO] [stdout] 69 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `key_mappings` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_mouse_delta`, `add_mouse_wheel_delta`, `mouse_delta`, `mouse_wheel_delta`, and `frame_reset` are never used [INFO] [stdout] --> src/input.rs:87:12 [INFO] [stdout] | [INFO] [stdout] 72 | impl InputHandler { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn add_mouse_delta(&mut self, delta: Vec2i) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn add_mouse_wheel_delta(&mut self, delta: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn mouse_delta(&self) -> Vec2i { self.mouse_delta } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 96 | pub fn mouse_wheel_delta(&self) -> i32 { self.mouse_wheel_delta } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn frame_reset(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Net` is never constructed [INFO] [stdout] --> src/net.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Net { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `think` are never used [INFO] [stdout] --> src/net.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl Net { [INFO] [stdout] | -------- associated functions in this implementation [INFO] [stdout] 14 | pub fn new(layer_sizes: &[usize], activation: Activation) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn think(inputs: &[f32]) -> &[f32] { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Axon` is never constructed [INFO] [stdout] --> src/net.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct Axon { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Axon` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `zero`, `new`, and `from_rng` are never used [INFO] [stdout] --> src/net.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl Axon { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 36 | pub fn zero() -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn new(weight: f32, bias: f32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn from_rng(rng: &mut ThreadRng) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Layer` is never constructed [INFO] [stdout] --> src/net.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 52 | pub struct Layer { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Layer` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_weight`, and `calculate_outputs` are never used [INFO] [stdout] --> src/net.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 59 | impl Layer { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 60 | pub fn new(in_nodes_num: usize, out_nodes_num: usize, rng: &mut ThreadRng) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | fn get_weight(&self, in_node: usize, out_node: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn calculate_outputs(&self, inputs: &[f32]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Activation` is never used [INFO] [stdout] --> src/activation.rs:3:10 [INFO] [stdout] | [INFO] [stdout] 3 | pub enum Activation { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `activate` and `derivitave` are never used [INFO] [stdout] --> src/activation.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Activation { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 13 | pub fn activate(self, inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn derivitave(self, inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sigmoid_activate` is never used [INFO] [stdout] --> src/activation.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn sigmoid_activate(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | let mut window_size = Vec2u::new(560, 660); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sigmoid_derivitave` is never used [INFO] [stdout] --> src/activation.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn sigmoid_derivitave(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tanh_activate` is never used [INFO] [stdout] --> src/activation.rs:53:8 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn tanh_activate(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tanh_derivitave` is never used [INFO] [stdout] --> src/activation.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn tanh_derivitave(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `relu_activate` is never used [INFO] [stdout] --> src/activation.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn relu_activate(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `relu_derivitave` is never used [INFO] [stdout] --> src/activation.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn relu_derivitave(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `silu_activate` is never used [INFO] [stdout] --> src/activation.rs:74:8 [INFO] [stdout] | [INFO] [stdout] 74 | pub fn silu_activate(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `silu_derivitave` is never used [INFO] [stdout] --> src/activation.rs:78:8 [INFO] [stdout] | [INFO] [stdout] 78 | pub fn silu_derivitave(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `softmax_activate` is never used [INFO] [stdout] --> src/activation.rs:84:8 [INFO] [stdout] | [INFO] [stdout] 84 | pub fn softmax_activate(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `softmax_derivitave` is never used [INFO] [stdout] --> src/activation.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | pub fn softmax_derivitave(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Cost` is never used [INFO] [stdout] --> src/cost.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum Cost { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `cost` and `cost_derivitave` are never used [INFO] [stdout] --> src/cost.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Cost { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 11 | pub fn cost(self, predicted_outputs: &[f32], expected_outputs: &[f32]) -> f32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn cost_derivitave(self, predicted_output: f32, expected_output: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `height` is never read [INFO] [stdout] --> src/main.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 28 | struct Images { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 31 | pub height: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `mouse_delta` and `mouse_wheel_delta` are never read [INFO] [stdout] --> src/input.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct InputHandler { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 13 | mouse_delta: Vec2i, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 14 | mouse_wheel_delta: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `press_controls` is never used [INFO] [stdout] --> src/input.rs:48:20 [INFO] [stdout] | [INFO] [stdout] 29 | impl Control { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn press_controls() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | / key_mappings! { [INFO] [stdout] 59 | | Up => W, [INFO] [stdout] 60 | | Down => S, [INFO] [stdout] 61 | | Left => A, [INFO] [stdout] ... | [INFO] [stdout] 68 | | ZoomOut => Minus [INFO] [stdout] 69 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `key_mappings` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_mouse_delta`, `add_mouse_wheel_delta`, `mouse_delta`, `mouse_wheel_delta`, and `frame_reset` are never used [INFO] [stdout] --> src/input.rs:87:12 [INFO] [stdout] | [INFO] [stdout] 72 | impl InputHandler { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn add_mouse_delta(&mut self, delta: Vec2i) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn add_mouse_wheel_delta(&mut self, delta: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn mouse_delta(&self) -> Vec2i { self.mouse_delta } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 96 | pub fn mouse_wheel_delta(&self) -> i32 { self.mouse_wheel_delta } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn frame_reset(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Net` is never constructed [INFO] [stdout] --> src/net.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Net { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `think` are never used [INFO] [stdout] --> src/net.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl Net { [INFO] [stdout] | -------- associated functions in this implementation [INFO] [stdout] 14 | pub fn new(layer_sizes: &[usize], activation: Activation) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn think(inputs: &[f32]) -> &[f32] { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 33 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Axon` is never constructed [INFO] [stdout] --> src/net.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct Axon { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Axon` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `zero`, `new`, and `from_rng` are never used [INFO] [stdout] --> src/net.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl Axon { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 36 | pub fn zero() -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn new(weight: f32, bias: f32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn from_rng(rng: &mut ThreadRng) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Layer` is never constructed [INFO] [stdout] --> src/net.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 52 | pub struct Layer { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Layer` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_weight`, and `calculate_outputs` are never used [INFO] [stdout] --> src/net.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 59 | impl Layer { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 60 | pub fn new(in_nodes_num: usize, out_nodes_num: usize, rng: &mut ThreadRng) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | fn get_weight(&self, in_node: usize, out_node: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn calculate_outputs(&self, inputs: &[f32]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Activation` is never used [INFO] [stdout] --> src/activation.rs:3:10 [INFO] [stdout] | [INFO] [stdout] 3 | pub enum Activation { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `activate` and `derivitave` are never used [INFO] [stdout] --> src/activation.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Activation { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 13 | pub fn activate(self, inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn derivitave(self, inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sigmoid_activate` is never used [INFO] [stdout] --> src/activation.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn sigmoid_activate(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sigmoid_derivitave` is never used [INFO] [stdout] --> src/activation.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn sigmoid_derivitave(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tanh_activate` is never used [INFO] [stdout] --> src/activation.rs:53:8 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn tanh_activate(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tanh_derivitave` is never used [INFO] [stdout] --> src/activation.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn tanh_derivitave(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `relu_activate` is never used [INFO] [stdout] --> src/activation.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn relu_activate(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `relu_derivitave` is never used [INFO] [stdout] --> src/activation.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn relu_derivitave(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `silu_activate` is never used [INFO] [stdout] --> src/activation.rs:74:8 [INFO] [stdout] | [INFO] [stdout] 74 | pub fn silu_activate(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `silu_derivitave` is never used [INFO] [stdout] --> src/activation.rs:78:8 [INFO] [stdout] | [INFO] [stdout] 78 | pub fn silu_derivitave(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `softmax_activate` is never used [INFO] [stdout] --> src/activation.rs:84:8 [INFO] [stdout] | [INFO] [stdout] 84 | pub fn softmax_activate(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `softmax_derivitave` is never used [INFO] [stdout] --> src/activation.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | pub fn softmax_derivitave(inputs: &[f32], index: usize) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Cost` is never used [INFO] [stdout] --> src/cost.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum Cost { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `cost` and `cost_derivitave` are never used [INFO] [stdout] --> src/cost.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Cost { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 11 | pub fn cost(self, predicted_outputs: &[f32], expected_outputs: &[f32]) -> f32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn cost_derivitave(self, predicted_output: f32, expected_output: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 33 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.14s [INFO] running `Command { std: "docker" "inspect" "c3cc7b4ff7c5a39568a1d785322c04fcfcb289bfa1f184a79397e2ab407db8cb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c3cc7b4ff7c5a39568a1d785322c04fcfcb289bfa1f184a79397e2ab407db8cb", kill_on_drop: false }` [INFO] [stdout] c3cc7b4ff7c5a39568a1d785322c04fcfcb289bfa1f184a79397e2ab407db8cb