[INFO] cloning repository https://github.com/josephrocca/color-rules-cellular-automata
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/josephrocca/color-rules-cellular-automata" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjosephrocca%2Fcolor-rules-cellular-automata", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjosephrocca%2Fcolor-rules-cellular-automata'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] bb8acfc76c98e0603101101d8477a3d4086c912c
[INFO] checking josephrocca/color-rules-cellular-automata against master#ab26b175979ee7b2cb3302dce204b99df96f7efb for pr-157696
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjosephrocca%2Fcolor-rules-cellular-automata" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/josephrocca/color-rules-cellular-automata
[INFO] finished tweaking git repo https://github.com/josephrocca/color-rules-cellular-automata
[INFO] tweaked toml for git repo https://github.com/josephrocca/color-rules-cellular-automata written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/josephrocca/color-rules-cellular-automata on toolchain ab26b175979ee7b2cb3302dce204b99df96f7efb
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ab26b175979ee7b2cb3302dce204b99df96f7efb" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/josephrocca/color-rules-cellular-automata 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" "+ab26b175979ee7b2cb3302dce204b99df96f7efb" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wasi v0.5.0
[INFO] [stderr]   Downloaded getrandom v0.1.11
[INFO] [stderr]   Downloaded rayon v1.1.0
[INFO] [stderr]   Downloaded crossbeam-deque v0.6.3
[INFO] [stderr]   Downloaded num-iter v0.1.39
[INFO] [stderr]   Downloaded pkg-config v0.3.15
[INFO] [stderr]   Downloaded gif v0.10.2
[INFO] [stderr]   Downloaded ansi_term v0.12.0
[INFO] [stderr]   Downloaded cc v1.0.40
[INFO] [stderr]   Downloaded rayon-core v1.5.0
[INFO] [stderr]   Downloaded x11-dl v2.18.4
[INFO] [stderr]   Downloaded minifb v0.12.0
[INFO] [stderr]   Downloaded orbclient v0.3.27
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] b517ce2a4a23bbb5ec6f49c9c67c13ea6be2a2c2a50ee0b90fc3ebf742275c9a
[INFO] running `Command { std: "docker" "start" "b517ce2a4a23bbb5ec6f49c9c67c13ea6be2a2c2a50ee0b90fc3ebf742275c9a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b517ce2a4a23bbb5ec6f49c9c67c13ea6be2a2c2a50ee0b90fc3ebf742275c9a" "/opt/rustwide/cargo-home/bin/cargo" "+ab26b175979ee7b2cb3302dce204b99df96f7efb" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b517ce2a4a23bbb5ec6f49c9c67c13ea6be2a2c2a50ee0b90fc3ebf742275c9a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b517ce2a4a23bbb5ec6f49c9c67c13ea6be2a2c2a50ee0b90fc3ebf742275c9a" "/opt/rustwide/cargo-home/bin/cargo" "+ab26b175979ee7b2cb3302dce204b99df96f7efb" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.62
[INFO] [stderr]     Checking lazy_static v1.3.0
[INFO] [stderr]     Checking cfg-if v0.1.9
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling arrayvec v0.4.11
[INFO] [stderr]    Compiling getrandom v0.1.11
[INFO] [stderr]     Checking nodrop v0.1.13
[INFO] [stderr]     Checking scopeguard v1.0.0
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling pkg-config v0.3.15
[INFO] [stderr]     Checking crossbeam-utils v0.6.6
[INFO] [stderr]     Checking ppv-lite86 v0.2.5
[INFO] [stderr]    Compiling cc v1.0.40
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling rayon-core v1.5.0
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]     Checking c2-chacha v0.2.2
[INFO] [stderr]     Checking crossbeam-queue v0.1.2
[INFO] [stderr]     Checking lzw v0.10.0
[INFO] [stderr]     Checking color_quant v1.0.1
[INFO] [stderr]     Checking cast v0.2.2
[INFO] [stderr]     Checking either v1.5.2
[INFO] [stderr]    Compiling x11-dl v2.18.4
[INFO] [stderr]     Checking num_cpus v1.10.1
[INFO] [stderr]     Checking time v0.1.42
[INFO] [stderr]     Checking gif v0.10.2
[INFO] [stderr]    Compiling memoffset v0.5.1
[INFO] [stderr]     Checking ansi_term v0.12.0
[INFO] [stderr]     Checking rand_core v0.5.0
[INFO] [stderr]     Checking rand_chacha v0.2.1
[INFO] [stderr]     Checking rand v0.7.0
[INFO] [stderr]     Checking crossbeam-epoch v0.7.2
[INFO] [stderr]    Compiling minifb v0.12.0
[INFO] [stderr]     Checking crossbeam-deque v0.6.3
[INFO] [stderr]     Checking rayon v1.1.0
[INFO] [stderr]     Checking color-rules-cellular-automata v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `WindowOptions`
[INFO] [stdout]  --> src/main.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use minifb::{WindowOptions, Window};
[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: `super::*`
[INFO] [stdout]    --> src/main.rs:553:9
[INFO] [stdout]     |
[INFO] [stdout] 553 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WindowOptions`
[INFO] [stdout]  --> src/main.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use minifb::{WindowOptions, Window};
[INFO] [stdout]   |              ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 |     let mut last_seed = 0;
[INFO] [stdout]     |         ----^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 313 |     let mut predefined_seeds_list_index = 0;
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:398:13
[INFO] [stdout]     |
[INFO] [stdout] 398 |         let mut frames = Vec::<Vec<u32>>::new();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `predefined_seeds_list`
[INFO] [stdout]    --> src/main.rs:312:9
[INFO] [stdout]     |
[INFO] [stdout] 312 |     let predefined_seeds_list: Vec::<u64> = vec![];
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_predefined_seeds_list`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `predefined_seeds_list_index`
[INFO] [stdout]    --> src/main.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 313 |     let mut predefined_seeds_list_index = 0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_predefined_seeds_list_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window_size`
[INFO] [stdout]    --> src/main.rs:320:13
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let window_size: usize;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_window_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `frame_buffer`
[INFO] [stdout]    --> src/main.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |         let mut frame_buffer: Vec<u32>;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frame_buffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window`
[INFO] [stdout]    --> src/main.rs:322:13
[INFO] [stdout]     |
[INFO] [stdout] 322 |         let mut window: Window;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_window`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `now`
[INFO] [stdout]    --> src/main.rs:381:13
[INFO] [stdout]     |
[INFO] [stdout] 381 |         let now = Instant::now();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `frames`
[INFO] [stdout]    --> src/main.rs:398:13
[INFO] [stdout]     |
[INFO] [stdout] 398 |         let mut frames = Vec::<Vec<u32>>::new();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frames`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `already_printed_details` is never read
[INFO] [stdout]    --> src/main.rs:392:43
[INFO] [stdout]     |
[INFO] [stdout] 392 |         let mut already_printed_details = false;
[INFO] [stdout]     |                                           ^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 479 |                     already_printed_details = true;
[INFO] [stdout]     |                     ------------------------------ `already_printed_details` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `symbol_to_color` is never read
[INFO] [stdout]   --> src/main.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct World {
[INFO] [stdout]    |        ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     symbol_to_color: Vec<(u8, u8, u8)>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `draw_to_buffer` is never used
[INFO] [stdout]    --> src/main.rs:186:12
[INFO] [stdout]     |
[INFO] [stdout]  24 | impl World {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub fn draw_to_buffer(&self, buffer:&mut Vec<u32>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_gif_from_frames` is never used
[INFO] [stdout]    --> src/main.rs:523:4
[INFO] [stdout]     |
[INFO] [stdout] 523 | fn make_gif_from_frames(frames: &[Vec<u32>], colors: &[(u8,u8,u8)], filename:&str) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `scratch_counter_1` should have an upper case name
[INFO] [stdout]    --> src/main.rs:278:12
[INFO] [stdout]     |
[INFO] [stdout] 278 | static mut scratch_counter_1: u32 = 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] 278 - static mut scratch_counter_1: u32 = 0;
[INFO] [stdout] 278 + static mut SCRATCH_COUNTER_1: u32 = 0;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `scratch_counter_2` should have an upper case name
[INFO] [stdout]    --> src/main.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 | static mut scratch_counter_2: u32 = 0;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]     |
[INFO] [stdout] 279 - static mut scratch_counter_2: u32 = 0;
[INFO] [stdout] 279 + static mut SCRATCH_COUNTER_2: u32 = 0;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `scratch_counter_3` should have an upper case name
[INFO] [stdout]    --> src/main.rs:280:12
[INFO] [stdout]     |
[INFO] [stdout] 280 | static mut scratch_counter_3: u32 = 0;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]     |
[INFO] [stdout] 280 - static mut scratch_counter_3: u32 = 0;
[INFO] [stdout] 280 + static mut SCRATCH_COUNTER_3: u32 = 0;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 |     let mut last_seed = 0;
[INFO] [stdout]     |         ----^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 313 |     let mut predefined_seeds_list_index = 0;
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:398:13
[INFO] [stdout]     |
[INFO] [stdout] 398 |         let mut frames = Vec::<Vec<u32>>::new();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `predefined_seeds_list`
[INFO] [stdout]    --> src/main.rs:312:9
[INFO] [stdout]     |
[INFO] [stdout] 312 |     let predefined_seeds_list: Vec::<u64> = vec![];
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_predefined_seeds_list`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `predefined_seeds_list_index`
[INFO] [stdout]    --> src/main.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 313 |     let mut predefined_seeds_list_index = 0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_predefined_seeds_list_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window_size`
[INFO] [stdout]    --> src/main.rs:320:13
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let window_size: usize;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_window_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `frame_buffer`
[INFO] [stdout]    --> src/main.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |         let mut frame_buffer: Vec<u32>;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frame_buffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window`
[INFO] [stdout]    --> src/main.rs:322:13
[INFO] [stdout]     |
[INFO] [stdout] 322 |         let mut window: Window;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_window`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `now`
[INFO] [stdout]    --> src/main.rs:381:13
[INFO] [stdout]     |
[INFO] [stdout] 381 |         let now = Instant::now();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `frames`
[INFO] [stdout]    --> src/main.rs:398:13
[INFO] [stdout]     |
[INFO] [stdout] 398 |         let mut frames = Vec::<Vec<u32>>::new();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frames`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `already_printed_details` is never read
[INFO] [stdout]    --> src/main.rs:392:43
[INFO] [stdout]     |
[INFO] [stdout] 392 |         let mut already_printed_details = false;
[INFO] [stdout]     |                                           ^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 479 |                     already_printed_details = true;
[INFO] [stdout]     |                     ------------------------------ `already_printed_details` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `symbol_to_color` is never read
[INFO] [stdout]   --> src/main.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct World {
[INFO] [stdout]    |        ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     symbol_to_color: Vec<(u8, u8, u8)>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `draw_to_buffer` is never used
[INFO] [stdout]    --> src/main.rs:186:12
[INFO] [stdout]     |
[INFO] [stdout]  24 | impl World {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub fn draw_to_buffer(&self, buffer:&mut Vec<u32>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_gif_from_frames` is never used
[INFO] [stdout]    --> src/main.rs:523:4
[INFO] [stdout]     |
[INFO] [stdout] 523 | fn make_gif_from_frames(frames: &[Vec<u32>], colors: &[(u8,u8,u8)], filename:&str) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `scratch_counter_1` should have an upper case name
[INFO] [stdout]    --> src/main.rs:278:12
[INFO] [stdout]     |
[INFO] [stdout] 278 | static mut scratch_counter_1: u32 = 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] 278 - static mut scratch_counter_1: u32 = 0;
[INFO] [stdout] 278 + static mut SCRATCH_COUNTER_1: u32 = 0;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `scratch_counter_2` should have an upper case name
[INFO] [stdout]    --> src/main.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 | static mut scratch_counter_2: u32 = 0;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]     |
[INFO] [stdout] 279 - static mut scratch_counter_2: u32 = 0;
[INFO] [stdout] 279 + static mut SCRATCH_COUNTER_2: u32 = 0;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `scratch_counter_3` should have an upper case name
[INFO] [stdout]    --> src/main.rs:280:12
[INFO] [stdout]     |
[INFO] [stdout] 280 | static mut scratch_counter_3: u32 = 0;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]     |
[INFO] [stdout] 280 - static mut scratch_counter_3: u32 = 0;
[INFO] [stdout] 280 + static mut SCRATCH_COUNTER_3: u32 = 0;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.88s
[INFO] running `Command { std: "docker" "inspect" "b517ce2a4a23bbb5ec6f49c9c67c13ea6be2a2c2a50ee0b90fc3ebf742275c9a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b517ce2a4a23bbb5ec6f49c9c67c13ea6be2a2c2a50ee0b90fc3ebf742275c9a", kill_on_drop: false }`
[INFO] [stdout] b517ce2a4a23bbb5ec6f49c9c67c13ea6be2a2c2a50ee0b90fc3ebf742275c9a
