[INFO] cloning repository https://github.com/jackmead515/evo_sim
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jackmead515/evo_sim" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjackmead515%2Fevo_sim", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjackmead515%2Fevo_sim'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 36a4aae50cbb813f5bd417b202dcf33db326f7e5
[INFO] checking jackmead515/evo_sim against try#b1f2594eac607c1f051534800237eeedb5590a49 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjackmead515%2Fevo_sim" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jackmead515/evo_sim
[INFO] finished tweaking git repo https://github.com/jackmead515/evo_sim
[INFO] tweaked toml for git repo https://github.com/jackmead515/evo_sim written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jackmead515/evo_sim on toolchain b1f2594eac607c1f051534800237eeedb5590a49
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jackmead515/evo_sim 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" "+b1f2594eac607c1f051534800237eeedb5590a49" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] dc4463ff240193d47009fd10b7b994a799249d4a6b616d0012d63ac95a49f9da
[INFO] running `Command { std: "docker" "start" "-a" "dc4463ff240193d47009fd10b7b994a799249d4a6b616d0012d63ac95a49f9da", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dc4463ff240193d47009fd10b7b994a799249d4a6b616d0012d63ac95a49f9da", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dc4463ff240193d47009fd10b7b994a799249d4a6b616d0012d63ac95a49f9da", kill_on_drop: false }`
[INFO] [stdout] dc4463ff240193d47009fd10b7b994a799249d4a6b616d0012d63ac95a49f9da
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 10b7b043d86fbe633ca4aae94bc37d374df979864ad9076d201119100f5d000e
[INFO] running `Command { std: "docker" "start" "-a" "10b7b043d86fbe633ca4aae94bc37d374df979864ad9076d201119100f5d000e", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.107
[INFO] [stderr]    Compiling xml-rs v0.8.4
[INFO] [stderr]    Compiling pkg-config v0.3.24
[INFO] [stderr]    Compiling syn v1.0.65
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]     Checking smallvec v1.7.0
[INFO] [stderr]     Checking libloading v0.7.3
[INFO] [stderr]     Checking once_cell v1.9.0
[INFO] [stderr]     Checking dlib v0.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.133
[INFO] [stderr]     Checking piston-float v1.0.1
[INFO] [stderr]    Compiling nom v7.1.0
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.5
[INFO] [stderr]    Compiling serde v1.0.133
[INFO] [stderr]     Checking bytemuck v1.7.2
[INFO] [stderr]     Checking rusttype v0.9.2
[INFO] [stderr]     Checking piston-viewport v1.0.1
[INFO] [stderr]     Checking instant v0.1.12
[INFO] [stderr]    Compiling wayland-sys v0.28.6
[INFO] [stderr]    Compiling x11-dl v2.19.1
[INFO] [stderr]     Checking piston-graphics_api_version v1.0.1
[INFO] [stderr]    Compiling anyhow v1.0.52
[INFO] [stderr]     Checking safe_arch v0.6.0
[INFO] [stderr]    Compiling num-rational v0.4.0
[INFO] [stderr]    Compiling wayland-scanner v0.28.6
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]    Compiling gl_generator v0.13.1
[INFO] [stderr]     Checking wide v0.7.1
[INFO] [stderr]     Checking nix v0.20.0
[INFO] [stderr]     Checking num_cpus v1.13.1
[INFO] [stderr]     Checking dirs-sys v0.3.6
[INFO] [stderr]     Checking rayon-core v1.9.1
[INFO] [stderr]     Checking dirs v3.0.2
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking net2 v0.2.37
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]     Checking xdg v2.4.0
[INFO] [stderr]     Checking xcursor v0.3.4
[INFO] [stderr]     Checking getrandom v0.2.3
[INFO] [stderr]     Checking rayon v1.5.1
[INFO] [stderr]     Checking nix v0.18.0
[INFO] [stderr]    Compiling wayland-client v0.28.6
[INFO] [stderr]    Compiling wayland-protocols v0.28.6
[INFO] [stderr]     Checking mio-extras v2.0.6
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking andrew v0.3.1
[INFO] [stderr]    Compiling gl v0.13.0
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.5
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.7
[INFO] [stderr]     Checking parking_lot_core v0.8.5
[INFO] [stderr]     Checking memmap2 v0.1.0
[INFO] [stderr]     Checking raw-window-handle v0.4.2
[INFO] [stderr]     Checking wayland-commons v0.28.6
[INFO] [stderr]    Compiling itertools v0.10.3
[INFO] [stderr]     Checking approx v0.5.0
[INFO] [stderr]     Checking num-complex v0.4.0
[INFO] [stderr]     Checking lock_api v0.4.5
[INFO] [stderr]    Compiling indexmap v1.7.0
[INFO] [stderr]     Checking rawpointer v0.2.1
[INFO] [stderr]    Compiling crossbeam-queue v0.3.2
[INFO] [stderr]    Compiling paste v1.0.6
[INFO] [stderr]     Checking matrixmultiply v0.3.2
[INFO] [stderr]     Checking calloop v0.6.5
[INFO] [stderr]    Compiling libz-sys v1.1.3
[INFO] [stderr]     Checking simba v0.6.0
[INFO] [stderr]     Checking wayland-cursor v0.28.6
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]    Compiling which v4.2.2
[INFO] [stderr]     Checking raw-window-handle v0.3.4
[INFO] [stderr]     Checking getrandom v0.1.16
[INFO] [stderr]     Checking jpeg-decoder v0.1.22
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking rand v0.8.4
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking tiff v0.6.1
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]    Compiling prost-build v0.9.0
[INFO] [stderr]     Checking wayland-egl v0.28.6
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]     Checking shader_version v0.7.0
[INFO] [stderr]     Checking vecmath v1.0.0
[INFO] [stderr]     Checking arrayvec v0.7.2
[INFO] [stderr]    Compiling prost-derive v0.9.0
[INFO] [stderr]    Compiling nalgebra-macros v0.1.0
[INFO] [stderr]    Compiling num-derive v0.3.3
[INFO] [stderr]    Compiling serde_json v1.0.74
[INFO] [stderr]     Checking remove_dir_all v0.5.3
[INFO] [stderr]     Checking fixedbitset v0.4.0
[INFO] [stderr]     Checking spin_sleep v1.0.0
[INFO] [stderr]     Checking image v0.23.14
[INFO] [stderr]     Checking petgraph v0.6.0
[INFO] [stderr]     Checking piston2d-graphics v0.41.0
[INFO] [stderr]     Checking tempfile v3.2.0
[INFO] [stderr]     Checking heck v0.3.3
[INFO] [stderr]     Checking inotify v0.7.1
[INFO] [stderr]     Checking prost v0.9.0
[INFO] [stderr]     Checking crossbeam v0.8.1
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking filetime v0.2.15
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]     Checking prost-types v0.9.0
[INFO] [stderr]     Checking piston-shaders_graphics2d v0.4.0
[INFO] [stderr]     Checking chunked_transfer v1.4.0
[INFO] [stderr]     Checking ascii v1.0.0
[INFO] [stderr]     Checking multimap v0.8.3
[INFO] [stderr]     Checking bit-vec v0.6.3
[INFO] [stderr]     Checking env_logger v0.9.0
[INFO] [stderr]     Checking tiny_http v0.9.0
[INFO] [stderr]     Checking piston2d-opengl_graphics v0.79.0
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking notify v4.0.17
[INFO] [stderr]     Checking flate2 v1.0.22
[INFO] [stderr]     Checking json v0.12.4
[INFO] [stderr]     Checking nalgebra v0.29.0
[INFO] [stderr]     Checking pistoncore-input v1.0.1
[INFO] [stderr]     Checking pistoncore-window v0.47.1
[INFO] [stderr]     Checking pistoncore-event_loop v0.53.1
[INFO] [stderr]     Checking piston v0.53.1
[INFO] [stderr]     Checking parry2d v0.7.1
[INFO] [stderr]     Checking smithay-client-toolkit v0.12.3
[INFO] [stderr]     Checking rapier2d v0.11.1
[INFO] [stderr]     Checking winit v0.24.0
[INFO] [stderr]     Checking glutin v0.26.0
[INFO] [stderr]     Checking pistoncore-glutin_window v0.69.0
[INFO] [stderr]     Checking evo_sim v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]   --> src/main.rs:17:22
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::{Arc, Mutex};
[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: `std::fs`
[INFO] [stdout]  --> src/http/server.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path`
[INFO] [stdout]  --> src/http/server.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::path;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/http/server.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/http/server.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/http/server.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/http/server.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prost::Message`
[INFO] [stdout]   --> src/http/server.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use prost::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::Compression`
[INFO] [stdout]   --> src/http/server.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use flate2::Compression;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::write::ZlibEncoder`
[INFO] [stdout]   --> src/http/server.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use flate2::write::ZlibEncoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Request`
[INFO] [stdout]   --> src/http/server.rs:13:27
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tiny_http::{Response, Request, Server, Method};
[INFO] [stdout]    |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path`
[INFO] [stdout]  --> src/http/routes/create_cycles.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::path;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/http/routes/create_cycles.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/http/routes/create_cycles.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Method` and `Server`
[INFO] [stdout]   --> src/http/routes/create_cycles.rs:10:27
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tiny_http::{Response, Server, Method, Request};
[INFO] [stdout]    |                           ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Instant`
[INFO] [stdout]   --> src/http/routes/create_cycles.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::time::{Instant};
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytes`
[INFO] [stdout]   --> src/http/routes/create_cycles.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use bytes;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::state::models::*`
[INFO] [stdout]   --> src/http/routes/create_cycles.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::state::models::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::http::server`
[INFO] [stdout]   --> src/http/routes/create_cycles.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::http::server;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Instant`
[INFO] [stdout]  --> src/engine/create.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::time::{Instant};
[INFO] [stdout]   |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]  --> src/engine/create.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/engine/create.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | use log::{info};
[INFO] [stdout]   |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/engine/cycle.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/engine/cycle.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/engine/cycle.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> src/engine/cycle.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JoinHandle`
[INFO] [stdout]  --> src/engine/cycle.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::thread::{JoinHandle};
[INFO] [stdout]   |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/engine/cycle.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::mpsc::channel`
[INFO] [stdout]  --> src/engine/cycle.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::mpsc::channel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/engine/initialize.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/engine/initialize.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Instant`
[INFO] [stdout]  --> src/engine/initialize.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::time::{Instant};
[INFO] [stdout]   |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/engine/initialize.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> src/engine/initialize.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JoinHandle`
[INFO] [stdout]  --> src/engine/initialize.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::thread::{JoinHandle};
[INFO] [stdout]   |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/engine/initialize.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::mpsc::channel`
[INFO] [stdout]  --> src/engine/initialize.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::mpsc::channel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]   --> src/engine/initialize.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rand::Rng;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `info`
[INFO] [stdout]   --> src/engine/initialize.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | use log::{info, debug};
[INFO] [stdout]    |           ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude::ThreadRng`
[INFO] [stdout]  --> src/state/bounds.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rand::prelude::ThreadRng;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/state/bounds.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JoinHandle`
[INFO] [stdout]  --> src/state/brain.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::thread::{JoinHandle};
[INFO] [stdout]   |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/state/brain.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::mpsc::channel`
[INFO] [stdout]  --> src/state/brain.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::mpsc::channel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/state/brain.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> src/state/brain.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str`
[INFO] [stdout]  --> src/state/brain.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::str;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude::*`
[INFO] [stdout]  --> src/state/brain.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use rand::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]  --> src/state/creature.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Point`
[INFO] [stdout]  --> src/state/creature.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::state::models::{Point, Constants};
[INFO] [stdout]   |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/state/simulation.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc`, `Mutex`, and `RwLock`
[INFO] [stdout]  --> src/state/simulation.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex, RwLock};
[INFO] [stdout]   |                 ^^^  ^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::atomic::AtomicBool`
[INFO] [stdout]  --> src/state/simulation.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::atomic::AtomicBool;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/state/simulation.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> src/state/simulation.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/state/simulation.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::mpsc::channel`
[INFO] [stdout]  --> src/state/simulation.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::mpsc::channel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/state/simulation.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]   --> src/state/simulation.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rand::Rng;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RecommendedWatcher` and `RecursiveMode`
[INFO] [stdout]   --> src/state/simulation.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | use notify::{RecommendedWatcher, Watcher, RecursiveMode};
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude::ThreadRng`
[INFO] [stdout]   --> src/state/simulation.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rand::prelude::ThreadRng;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rapier2d::prelude::*`
[INFO] [stdout]   --> src/state/simulation.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use rapier2d::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytes::Buf`
[INFO] [stdout]   --> src/state/simulation.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use bytes::Buf;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prost::Message`
[INFO] [stdout]   --> src/state/simulation.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use prost::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]   --> src/state/simulation.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | use log::{info};
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::write::ZlibDecoder`
[INFO] [stdout]   --> src/state/simulation.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use flate2::write::ZlibDecoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Simulation`
[INFO] [stdout]   --> src/state/simulation.rs:22:51
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::state::models::{Cycle, Step, Creature, Simulation, Constants};
[INFO] [stdout]    |                                                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/state/simulator.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/state/simulator.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex, RwLock};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::atomic::AtomicBool`
[INFO] [stdout]  --> src/state/simulator.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::atomic::AtomicBool;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ffi::OsStr`
[INFO] [stdout]  --> src/state/simulator.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::ffi::OsStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]   --> src/state/simulator.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use rand::Rng;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude::ThreadRng`
[INFO] [stdout]   --> src/state/simulator.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use rand::prelude::ThreadRng;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rapier2d::prelude::*`
[INFO] [stdout]   --> src/state/simulator.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use rapier2d::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytes::Buf`
[INFO] [stdout]   --> src/state/simulator.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use bytes::Buf;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Creature` and `Step`
[INFO] [stdout]   --> src/state/simulator.rs:23:35
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::state::models::{Cycle, Step, Creature, Simulation, Constants};
[INFO] [stdout]    |                                   ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]   --> src/main.rs:17:22
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::{Arc, Mutex};
[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: `std::fs`
[INFO] [stdout]  --> src/http/server.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path`
[INFO] [stdout]  --> src/http/server.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::path;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/http/server.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/http/server.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/http/server.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/http/server.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prost::Message`
[INFO] [stdout]   --> src/http/server.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use prost::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::Compression`
[INFO] [stdout]   --> src/http/server.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use flate2::Compression;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::write::ZlibEncoder`
[INFO] [stdout]   --> src/http/server.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use flate2::write::ZlibEncoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Request`
[INFO] [stdout]   --> src/http/server.rs:13:27
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tiny_http::{Response, Request, Server, Method};
[INFO] [stdout]    |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path`
[INFO] [stdout]  --> src/http/routes/create_cycles.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::path;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/http/routes/create_cycles.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/http/routes/create_cycles.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Method` and `Server`
[INFO] [stdout]   --> src/http/routes/create_cycles.rs:10:27
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tiny_http::{Response, Server, Method, Request};
[INFO] [stdout]    |                           ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Instant`
[INFO] [stdout]   --> src/http/routes/create_cycles.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::time::{Instant};
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytes`
[INFO] [stdout]   --> src/http/routes/create_cycles.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use bytes;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::state::models::*`
[INFO] [stdout]   --> src/http/routes/create_cycles.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::state::models::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::http::server`
[INFO] [stdout]   --> src/http/routes/create_cycles.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::http::server;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Instant`
[INFO] [stdout]  --> src/engine/create.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::time::{Instant};
[INFO] [stdout]   |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]  --> src/engine/create.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/engine/create.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | use log::{info};
[INFO] [stdout]   |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/engine/cycle.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/engine/cycle.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/engine/cycle.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> src/engine/cycle.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JoinHandle`
[INFO] [stdout]  --> src/engine/cycle.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::thread::{JoinHandle};
[INFO] [stdout]   |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/engine/cycle.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::mpsc::channel`
[INFO] [stdout]  --> src/engine/cycle.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::mpsc::channel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/engine/initialize.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/engine/initialize.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Instant`
[INFO] [stdout]  --> src/engine/initialize.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::time::{Instant};
[INFO] [stdout]   |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/engine/initialize.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> src/engine/initialize.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JoinHandle`
[INFO] [stdout]  --> src/engine/initialize.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::thread::{JoinHandle};
[INFO] [stdout]   |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/engine/initialize.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::mpsc::channel`
[INFO] [stdout]  --> src/engine/initialize.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::mpsc::channel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]   --> src/engine/initialize.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rand::Rng;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `info`
[INFO] [stdout]   --> src/engine/initialize.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | use log::{info, debug};
[INFO] [stdout]    |           ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude::ThreadRng`
[INFO] [stdout]  --> src/state/bounds.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rand::prelude::ThreadRng;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/state/bounds.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JoinHandle`
[INFO] [stdout]  --> src/state/brain.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::thread::{JoinHandle};
[INFO] [stdout]   |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/state/brain.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::mpsc::channel`
[INFO] [stdout]  --> src/state/brain.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::mpsc::channel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/state/brain.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> src/state/brain.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str`
[INFO] [stdout]  --> src/state/brain.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::str;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude::*`
[INFO] [stdout]  --> src/state/brain.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use rand::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]  --> src/state/creature.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Point`
[INFO] [stdout]  --> src/state/creature.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::state::models::{Point, Constants};
[INFO] [stdout]   |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/state/simulation.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc`, `Mutex`, and `RwLock`
[INFO] [stdout]  --> src/state/simulation.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex, RwLock};
[INFO] [stdout]   |                 ^^^  ^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::atomic::AtomicBool`
[INFO] [stdout]  --> src/state/simulation.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::atomic::AtomicBool;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/state/simulation.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> src/state/simulation.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/state/simulation.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::mpsc::channel`
[INFO] [stdout]  --> src/state/simulation.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::mpsc::channel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/state/simulation.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]   --> src/state/simulation.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rand::Rng;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RecommendedWatcher` and `RecursiveMode`
[INFO] [stdout]   --> src/state/simulation.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | use notify::{RecommendedWatcher, Watcher, RecursiveMode};
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude::ThreadRng`
[INFO] [stdout]   --> src/state/simulation.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rand::prelude::ThreadRng;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rapier2d::prelude::*`
[INFO] [stdout]   --> src/state/simulation.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use rapier2d::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytes::Buf`
[INFO] [stdout]   --> src/state/simulation.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use bytes::Buf;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prost::Message`
[INFO] [stdout]   --> src/state/simulation.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use prost::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]   --> src/state/simulation.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | use log::{info};
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::write::ZlibDecoder`
[INFO] [stdout]   --> src/state/simulation.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use flate2::write::ZlibDecoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Simulation`
[INFO] [stdout]   --> src/state/simulation.rs:22:51
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::state::models::{Cycle, Step, Creature, Simulation, Constants};
[INFO] [stdout]    |                                                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/state/simulator.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/state/simulator.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex, RwLock};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::atomic::AtomicBool`
[INFO] [stdout]  --> src/state/simulator.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::atomic::AtomicBool;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ffi::OsStr`
[INFO] [stdout]  --> src/state/simulator.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::ffi::OsStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]   --> src/state/simulator.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use rand::Rng;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude::ThreadRng`
[INFO] [stdout]   --> src/state/simulator.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use rand::prelude::ThreadRng;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rapier2d::prelude::*`
[INFO] [stdout]   --> src/state/simulator.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use rapier2d::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytes::Buf`
[INFO] [stdout]   --> src/state/simulator.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use bytes::Buf;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Creature` and `Step`
[INFO] [stdout]   --> src/state/simulator.rs:23:35
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::state::models::{Cycle, Step, Creature, Simulation, Constants};
[INFO] [stdout]    |                                   ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::state::Evolver`
[INFO] [stdout]   --> src/state/simulator.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::state::Evolver;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Watcher`
[INFO] [stdout]   --> src/state/simulation.rs:11:34
[INFO] [stdout]    |
[INFO] [stdout] 11 | use notify::{RecommendedWatcher, Watcher, RecursiveMode};
[INFO] [stdout]    |                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/engine/create.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut collider = ColliderBuilder::compound(shapes).density(0.5).build();
[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: unused variable: `constants`
[INFO] [stdout]    --> src/engine/cycle.rs:103:3
[INFO] [stdout]     |
[INFO] [stdout] 103 |   constants: &Constants,
[INFO] [stdout]     |   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_constants`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `collider_set`
[INFO] [stdout]    --> src/engine/cycle.rs:107:3
[INFO] [stdout]     |
[INFO] [stdout] 107 |   collider_set: &mut ColliderSet,
[INFO] [stdout]     |   ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collider_set`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `range`
[INFO] [stdout]    --> src/engine/cycle.rs:108:3
[INFO] [stdout]     |
[INFO] [stdout] 108 |   range: &mut rand::prelude::ThreadRng,
[INFO] [stdout]     |   ^^^^^ help: if this is intentional, prefix it with an underscore: `_range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `outputs`
[INFO] [stdout]    --> src/engine/cycle.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 135 |       let (outputs, decision) = creature.brain.compute(&mut inputs);
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outputs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/engine/initialize.rs:101:21
[INFO] [stdout]     |
[INFO] [stdout] 101 |   for (creature_id, mut creature) in cycle.creatures.iter_mut() {
[INFO] [stdout]     |                     ----^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `range`
[INFO] [stdout]   --> src/engine/initialize.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     range: &mut rand::prelude::ThreadRng,
[INFO] [stdout]    |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creature`
[INFO] [stdout]    --> src/engine/initialize.rs:176:17
[INFO] [stdout]     |
[INFO] [stdout] 176 |     if let Some(creature) = cycle.creatures.get_mut(&creature_id) {
[INFO] [stdout]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creature`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::state::Evolver`
[INFO] [stdout]   --> src/state/simulator.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::state::Evolver;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Watcher`
[INFO] [stdout]   --> src/state/simulation.rs:11:34
[INFO] [stdout]    |
[INFO] [stdout] 11 | use notify::{RecommendedWatcher, Watcher, RecursiveMode};
[INFO] [stdout]    |                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `constants`
[INFO] [stdout]    --> src/state/bounds.rs:129:26
[INFO] [stdout]     |
[INFO] [stdout] 129 |     fn gene_codes(&self, constants: &Constants) -> Vec<u8> {
[INFO] [stdout]     |                          ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_constants`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `constants`
[INFO] [stdout]   --> src/state/traits.rs:62:26
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn gene_codes(&self, constants: &Constants) -> Vec<u8> {
[INFO] [stdout]    |                          ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_constants`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/engine/create.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut collider = ColliderBuilder::compound(shapes).density(0.5).build();
[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: unused variable: `creature_id`
[INFO] [stdout]   --> src/state/simulation.rs:80:14
[INFO] [stdout]    |
[INFO] [stdout] 80 |         for (creature_id, creature) in new_cycle.creatures.iter_mut() {
[INFO] [stdout]    |              ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creature_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/state/simulator.rs:80:52
[INFO] [stdout]    |
[INFO] [stdout] 80 | ...                   DebouncedEvent::Remove(path) => {
[INFO] [stdout]    |                                              ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/state/simulator.rs:83:51
[INFO] [stdout]    |
[INFO] [stdout] 83 | ...                   DebouncedEvent::Write(path) => {
[INFO] [stdout]    |                                             ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `constants`
[INFO] [stdout]    --> src/engine/cycle.rs:103:3
[INFO] [stdout]     |
[INFO] [stdout] 103 |   constants: &Constants,
[INFO] [stdout]     |   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_constants`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `collider_set`
[INFO] [stdout]    --> src/engine/cycle.rs:107:3
[INFO] [stdout]     |
[INFO] [stdout] 107 |   collider_set: &mut ColliderSet,
[INFO] [stdout]     |   ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collider_set`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `range`
[INFO] [stdout]    --> src/engine/cycle.rs:108:3
[INFO] [stdout]     |
[INFO] [stdout] 108 |   range: &mut rand::prelude::ThreadRng,
[INFO] [stdout]     |   ^^^^^ help: if this is intentional, prefix it with an underscore: `_range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `outputs`
[INFO] [stdout]    --> src/engine/cycle.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 135 |       let (outputs, decision) = creature.brain.compute(&mut inputs);
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outputs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/engine/initialize.rs:101:21
[INFO] [stdout]     |
[INFO] [stdout] 101 |   for (creature_id, mut creature) in cycle.creatures.iter_mut() {
[INFO] [stdout]     |                     ----^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `range`
[INFO] [stdout]   --> src/engine/initialize.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     range: &mut rand::prelude::ThreadRng,
[INFO] [stdout]    |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creature`
[INFO] [stdout]    --> src/engine/initialize.rs:176:17
[INFO] [stdout]     |
[INFO] [stdout] 176 |     if let Some(creature) = cycle.creatures.get_mut(&creature_id) {
[INFO] [stdout]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creature`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `min_char` should have an upper case name
[INFO] [stdout]   --> src/state/mod.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const min_char: f32 = 65.0;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 11 - const min_char: f32 = 65.0;
[INFO] [stdout] 11 + const MIN_CHAR: f32 = 65.0;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `max_char` should have an upper case name
[INFO] [stdout]   --> src/state/mod.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const max_char: f32 = 90.0;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 12 - const max_char: f32 = 90.0;
[INFO] [stdout] 12 + const MAX_CHAR: f32 = 90.0;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `min_char` should have an upper case name
[INFO] [stdout]   --> src/state/bounds.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const min_char: f32 = 65.0;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 11 - const min_char: f32 = 65.0;
[INFO] [stdout] 11 + const MIN_CHAR: f32 = 65.0;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `max_char` should have an upper case name
[INFO] [stdout]   --> src/state/bounds.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const max_char: f32 = 90.0;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 12 - const max_char: f32 = 90.0;
[INFO] [stdout] 12 + const MAX_CHAR: f32 = 90.0;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `constants`
[INFO] [stdout]    --> src/state/bounds.rs:129:26
[INFO] [stdout]     |
[INFO] [stdout] 129 |     fn gene_codes(&self, constants: &Constants) -> Vec<u8> {
[INFO] [stdout]     |                          ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_constants`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `constants`
[INFO] [stdout]   --> src/state/traits.rs:62:26
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn gene_codes(&self, constants: &Constants) -> Vec<u8> {
[INFO] [stdout]    |                          ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_constants`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creature_id`
[INFO] [stdout]   --> src/state/simulation.rs:80:14
[INFO] [stdout]    |
[INFO] [stdout] 80 |         for (creature_id, creature) in new_cycle.creatures.iter_mut() {
[INFO] [stdout]    |              ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creature_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/state/simulator.rs:80:52
[INFO] [stdout]    |
[INFO] [stdout] 80 | ...                   DebouncedEvent::Remove(path) => {
[INFO] [stdout]    |                                              ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/state/simulator.rs:83:51
[INFO] [stdout]    |
[INFO] [stdout] 83 | ...                   DebouncedEvent::Write(path) => {
[INFO] [stdout]    |                                             ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `min_char` should have an upper case name
[INFO] [stdout]   --> src/state/mod.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const min_char: f32 = 65.0;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 11 - const min_char: f32 = 65.0;
[INFO] [stdout] 11 + const MIN_CHAR: f32 = 65.0;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `max_char` should have an upper case name
[INFO] [stdout]   --> src/state/mod.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const max_char: f32 = 90.0;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 12 - const max_char: f32 = 90.0;
[INFO] [stdout] 12 + const MAX_CHAR: f32 = 90.0;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `min_char` should have an upper case name
[INFO] [stdout]   --> src/state/bounds.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const min_char: f32 = 65.0;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 11 - const min_char: f32 = 65.0;
[INFO] [stdout] 11 + const MIN_CHAR: f32 = 65.0;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `max_char` should have an upper case name
[INFO] [stdout]   --> src/state/bounds.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const max_char: f32 = 90.0;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 12 - const max_char: f32 = 90.0;
[INFO] [stdout] 12 + const MAX_CHAR: f32 = 90.0;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 28s
[INFO] running `Command { std: "docker" "inspect" "10b7b043d86fbe633ca4aae94bc37d374df979864ad9076d201119100f5d000e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "10b7b043d86fbe633ca4aae94bc37d374df979864ad9076d201119100f5d000e", kill_on_drop: false }`
[INFO] [stdout] 10b7b043d86fbe633ca4aae94bc37d374df979864ad9076d201119100f5d000e
