[INFO] cloning repository https://github.com/fistaco/rustychippydragoman
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/fistaco/rustychippydragoman" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffistaco%2Frustychippydragoman", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffistaco%2Frustychippydragoman'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 48afce09353cba6af0d4256baeba93bbff3d8829
[INFO] testing fistaco/rustychippydragoman against 1.99.0-beta.8 for beta-1.100-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffistaco%2Frustychippydragoman" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/fistaco/rustychippydragoman
[INFO] finished tweaking git repo https://github.com/fistaco/rustychippydragoman
[INFO] tweaked toml for git repo https://github.com/fistaco/rustychippydragoman written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/fistaco/rustychippydragoman on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/fistaco/rustychippydragoman 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" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded device_query v0.2.8
[INFO] [stderr]   Downloaded readkey v0.1.7
[INFO] [stderr]   Downloaded input-event-codes v0.2.2
[INFO] [stderr]   Downloaded readmouse v0.2.1
[INFO] [stderr]   Downloaded libc v0.2.161
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 075e7a5895bb801070a0220b9300af64f5b6cb28aef5d8f29d9aa210c7a3d0b6
[INFO] running `Command { std: "docker" "start" "075e7a5895bb801070a0220b9300af64f5b6cb28aef5d8f29d9aa210c7a3d0b6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "075e7a5895bb801070a0220b9300af64f5b6cb28aef5d8f29d9aa210c7a3d0b6", 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" "075e7a5895bb801070a0220b9300af64f5b6cb28aef5d8f29d9aa210c7a3d0b6" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "075e7a5895bb801070a0220b9300af64f5b6cb28aef5d8f29d9aa210c7a3d0b6", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "075e7a5895bb801070a0220b9300af64f5b6cb28aef5d8f29d9aa210c7a3d0b6" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling pkg-config v0.3.31
[INFO] [stderr]    Compiling libc v0.2.161
[INFO] [stderr]    Compiling input-event-codes v0.2.2
[INFO] [stderr]    Compiling x11 v2.21.0
[INFO] [stderr]    Compiling device_query v0.2.8
[INFO] [stderr]    Compiling rustychippydragoman v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `SystemTime`
[INFO] [stdout]  --> src/emulator.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::{Instant, SystemTime};
[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 variable: `device_state`
[INFO] [stdout]  --> src/input_handling.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let device_state = DeviceState::new();
[INFO] [stdout]   |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_state`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `refresh_rate`
[INFO] [stdout]   --> src/emulator.rs:37:23
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn run(&mut self, refresh_rate: u8) {
[INFO] [stdout]    |                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_refresh_rate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]   --> src/emulator.rs:58:34
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn decode_instruction(&self, instruction: u8) -> u8 {
[INFO] [stdout]    |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]   --> src/emulator.rs:62:39
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn execute_instruction(&mut self, instruction: u8) {
[INFO] [stdout]    |                                       ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `obtain_keypress` is never used
[INFO] [stdout]  --> src/input_handling.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn obtain_keypress() -> Option<Keycode> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Emulator` is never constructed
[INFO] [stdout]  --> src/emulator.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Emulator {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/emulator.rs:23:8
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl Emulator {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  23 |     fn new(screen_width: usize, screen_height: usize, instructions_per_second: u32) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  37 |     fn run(&mut self, refresh_rate: u8) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |     fn fetch_instruction(&self) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  58 |     fn decode_instruction(&self, instruction: u8) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     fn execute_instruction(&mut self, instruction: u8) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  66 |     fn draw(&self) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  70 |     fn update_state(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     fn beep(&self) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     fn clear_screen(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     fn jump(&mut self, address: u16) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     fn call_subroutine(&mut self, address: u16) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     fn return_from_subroutine(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     fn skip_instruction_conditionally(&mut self, condition: bool) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     fn skip_if_register_value_equals(&mut self, register_index: usize, value: u8) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     fn skip_if_register_value_not_equal(&mut self, register_index: usize, value: u8) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     fn skip_if_registers_equal(&mut self, register_i: usize, register_j: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     fn skip_if_registers_not_equal(&mut self, register_i: usize, register_j: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     fn set_register(&mut self, register_index: usize, value: u8) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     fn add_to_register(&mut self, register_index: usize, value: u8) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.39s
[INFO] running `Command { std: "docker" "inspect" "075e7a5895bb801070a0220b9300af64f5b6cb28aef5d8f29d9aa210c7a3d0b6", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "075e7a5895bb801070a0220b9300af64f5b6cb28aef5d8f29d9aa210c7a3d0b6" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustychippydragoman v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `SystemTime`
[INFO] [stdout]  --> src/emulator.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::{Instant, SystemTime};
[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 variable: `device_state`
[INFO] [stdout]  --> src/input_handling.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let device_state = DeviceState::new();
[INFO] [stdout]   |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_state`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `refresh_rate`
[INFO] [stdout]   --> src/emulator.rs:37:23
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn run(&mut self, refresh_rate: u8) {
[INFO] [stdout]    |                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_refresh_rate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]   --> src/emulator.rs:58:34
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn decode_instruction(&self, instruction: u8) -> u8 {
[INFO] [stdout]    |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instruction`
[INFO] [stdout]   --> src/emulator.rs:62:39
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn execute_instruction(&mut self, instruction: u8) {
[INFO] [stdout]    |                                       ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `obtain_keypress` is never used
[INFO] [stdout]  --> src/input_handling.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn obtain_keypress() -> Option<Keycode> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Emulator` is never constructed
[INFO] [stdout]  --> src/emulator.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Emulator {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/emulator.rs:23:8
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl Emulator {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  23 |     fn new(screen_width: usize, screen_height: usize, instructions_per_second: u32) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  37 |     fn run(&mut self, refresh_rate: u8) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |     fn fetch_instruction(&self) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  58 |     fn decode_instruction(&self, instruction: u8) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     fn execute_instruction(&mut self, instruction: u8) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  66 |     fn draw(&self) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  70 |     fn update_state(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     fn beep(&self) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     fn clear_screen(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     fn jump(&mut self, address: u16) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     fn call_subroutine(&mut self, address: u16) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     fn return_from_subroutine(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     fn skip_instruction_conditionally(&mut self, condition: bool) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     fn skip_if_register_value_equals(&mut self, register_index: usize, value: u8) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     fn skip_if_register_value_not_equal(&mut self, register_index: usize, value: u8) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     fn skip_if_registers_equal(&mut self, register_i: usize, register_j: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     fn skip_if_registers_not_equal(&mut self, register_i: usize, register_j: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     fn set_register(&mut self, register_index: usize, value: u8) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     fn add_to_register(&mut self, register_index: usize, value: u8) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.30s
[INFO] running `Command { std: "docker" "inspect" "075e7a5895bb801070a0220b9300af64f5b6cb28aef5d8f29d9aa210c7a3d0b6", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "075e7a5895bb801070a0220b9300af64f5b6cb28aef5d8f29d9aa210c7a3d0b6" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `SystemTime`
[INFO] [stderr]  --> src/emulator.rs:1:26
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::time::{Instant, SystemTime};
[INFO] [stderr]   |                          ^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `device_state`
[INFO] [stderr]  --> src/input_handling.rs:4:9
[INFO] [stderr]   |
[INFO] [stderr] 4 |     let device_state = DeviceState::new();
[INFO] [stderr]   |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_state`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `refresh_rate`
[INFO] [stderr]   --> src/emulator.rs:37:23
[INFO] [stderr]    |
[INFO] [stderr] 37 |     fn run(&mut self, refresh_rate: u8) {
[INFO] [stderr]    |                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_refresh_rate`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `instruction`
[INFO] [stderr]   --> src/emulator.rs:58:34
[INFO] [stderr]    |
[INFO] [stderr] 58 |     fn decode_instruction(&self, instruction: u8) -> u8 {
[INFO] [stderr]    |                                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `instruction`
[INFO] [stderr]   --> src/emulator.rs:62:39
[INFO] [stderr]    |
[INFO] [stderr] 62 |     fn execute_instruction(&mut self, instruction: u8) {
[INFO] [stderr]    |                                       ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instruction`
[INFO] [stderr] 
[INFO] [stderr] warning: function `obtain_keypress` is never used
[INFO] [stderr]  --> src/input_handling.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn obtain_keypress() -> Option<Keycode> {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Emulator` is never constructed
[INFO] [stderr]  --> src/emulator.rs:4:12
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct Emulator {
[INFO] [stderr]   |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/emulator.rs:23:8
[INFO] [stderr]     |
[INFO] [stderr]  16 | impl Emulator {
[INFO] [stderr]     | ------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  23 |     fn new(screen_width: usize, screen_height: usize, instructions_per_second: u32) -> Self {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr]  37 |     fn run(&mut self, refresh_rate: u8) {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr]  54 |     fn fetch_instruction(&self) -> u8 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  58 |     fn decode_instruction(&self, instruction: u8) -> u8 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  62 |     fn execute_instruction(&mut self, instruction: u8) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  66 |     fn draw(&self) {
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] ...
[INFO] [stderr]  70 |     fn update_state(&mut self) {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  80 |     fn beep(&self) {
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] ...
[INFO] [stderr]  84 |     fn clear_screen(&mut self) {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  88 |     fn jump(&mut self, address: u16) {
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] ...
[INFO] [stderr]  94 |     fn call_subroutine(&mut self, address: u16) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 100 |     fn return_from_subroutine(&mut self) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 108 |     fn skip_instruction_conditionally(&mut self, condition: bool) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 115 |     fn skip_if_register_value_equals(&mut self, register_index: usize, value: u8) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 119 |     fn skip_if_register_value_not_equal(&mut self, register_index: usize, value: u8) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 123 |     fn skip_if_registers_equal(&mut self, register_i: usize, register_j: usize) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 127 |     fn skip_if_registers_not_equal(&mut self, register_i: usize, register_j: usize) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 131 |     fn set_register(&mut self, register_index: usize, value: u8) {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 135 |     fn add_to_register(&mut self, register_index: usize, value: u8) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `rustychippydragoman` (bin "rustychippydragoman" test) generated 8 warnings (run `cargo fix --bin "rustychippydragoman" -p rustychippydragoman --tests` to apply 5 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rustychippydragoman-6ee6f480075c9319)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "075e7a5895bb801070a0220b9300af64f5b6cb28aef5d8f29d9aa210c7a3d0b6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "075e7a5895bb801070a0220b9300af64f5b6cb28aef5d8f29d9aa210c7a3d0b6", kill_on_drop: false }`
[INFO] [stdout] 075e7a5895bb801070a0220b9300af64f5b6cb28aef5d8f29d9aa210c7a3d0b6
