[INFO] cloning repository https://github.com/Patches72790/Chip8-Rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Patches72790/Chip8-Rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPatches72790%2FChip8-Rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPatches72790%2FChip8-Rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8897b5c10e5f9877408b5fcf967f8de7f596041b [INFO] checking Patches72790/Chip8-Rust/8897b5c10e5f9877408b5fcf967f8de7f596041b against master#ab869e094a907cc5d19b4080f22eccaf347f1f95 for pr-129604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPatches72790%2FChip8-Rust" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Patches72790/Chip8-Rust on toolchain ab869e094a907cc5d19b4080f22eccaf347f1f95 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-6-tc1/source/.cargo/config.toml [INFO] started tweaking git repo https://github.com/Patches72790/Chip8-Rust [INFO] finished tweaking git repo https://github.com/Patches72790/Chip8-Rust [INFO] tweaked toml for git repo https://github.com/Patches72790/Chip8-Rust written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Patches72790/Chip8-Rust 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" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: unused manifest key: dependencies.console_error_panic_hook.enabled [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded wasm-bindgen-test v0.3.30 [INFO] [stderr] Downloaded wasm-bindgen-test-macro v0.3.30 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4b69413e8b69d75fbd883b5986d667705044716e2a03089b7064ef715bc8335b [INFO] running `Command { std: "docker" "start" "-a" "4b69413e8b69d75fbd883b5986d667705044716e2a03089b7064ef715bc8335b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4b69413e8b69d75fbd883b5986d667705044716e2a03089b7064ef715bc8335b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4b69413e8b69d75fbd883b5986d667705044716e2a03089b7064ef715bc8335b", kill_on_drop: false }` [INFO] [stdout] 4b69413e8b69d75fbd883b5986d667705044716e2a03089b7064ef715bc8335b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4cb3f68fc40be5c03923e7192cb53e9525933691de01db3b79adc676ad69822e [INFO] running `Command { std: "docker" "start" "-a" "4cb3f68fc40be5c03923e7192cb53e9525933691de01db3b79adc676ad69822e", kill_on_drop: false }` [INFO] [stderr] warning: unused manifest key: dependencies.console_error_panic_hook.enabled [INFO] [stderr] Compiling syn v1.0.91 [INFO] [stderr] Compiling wasm-bindgen v0.2.80 [INFO] [stderr] Checking scoped-tls v1.0.0 [INFO] [stderr] Checking base64 v0.13.0 [INFO] [stderr] Checking fixedbitset v0.4.1 [INFO] [stderr] Compiling wasm-bindgen-test-macro v0.3.30 [INFO] [stderr] Compiling wasm-bindgen-backend v0.2.80 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.80 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.80 [INFO] [stderr] Checking js-sys v0.3.57 [INFO] [stderr] Checking console_error_panic_hook v0.1.7 [INFO] [stderr] Checking wasm-bindgen-futures v0.4.30 [INFO] [stderr] Checking web-sys v0.3.57 [INFO] [stderr] Checking wasm-bindgen-test v0.3.30 [INFO] [stderr] Checking chip8-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: variant `i00E0` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | i00E0, // Clears the display [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I00e0` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i00EE` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | i00EE, // Return from a subroutine [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I00ee` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i00E1` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | i00E1, // Sets all bits of display [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I00e1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i1NNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | i1NNN(Address), // Jump to address NNN [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I1nnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i2NNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | i2NNN(Address), // Execute subroutine at address NNN [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I2nnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i3XNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | i3XNN(Register, RegData), // Skip following instruction if VX == NN [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I3xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i4XNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | i4XNN(Register, RegData), // Skip following instruction if VX != NN [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I4xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i5XY0` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | i5XY0(Register, Register), // Skip following instruction if VX == VY [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I5xy0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i6XNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | i6XNN(Register, RegData), // store value NN at register X [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I6xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i7XNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | i7XNN(Register, RegData), // Add data NN to register X [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I7xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY0` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | i8XY0(Register, Register), // VX = *VY [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY1` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | i8XY1(Register, Register), // VX = VX | VY [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY2` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | i8XY2(Register, Register), // VX = VX & VY [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY3` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | i8XY3(Register, Register), // VX = VX ^ VY [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY4` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | i8XY4(Register, Register), // VX = VX + VY -> VF = 1 if carry, 0 otherwise [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY5` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | i8XY5(Register, Register), // VX = VX - VY -> VF = 1 if carry, 0 otherwise [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy5` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY6` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | i8XY6(Register, Register), // VX = VY >> 1 -> VF = LSB of VY before shift [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY7` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | i8XY7(Register, Register), // VX = VY - VX -> CAREFUL !!! VF = 0 if carry, 1 otherwise [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy7` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XYE` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | i8XYE(Register, Register), // VX = VY << 1 -> VF = MSB of VY before shift [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I8xye` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i9XY0` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | i9XY0(Register, Register), // Skip next instruction iff VX != VY [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I9xy0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iANNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | iANNN(Address), // Store memory address NNN in Register i [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IAnnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iBNNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | iBNNN(Address), // Jump to adresss NNN + V0 [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IBnnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iCXNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | iCXNN(Register, Address), // Put random number and mask with NN in VX [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `ICxnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iDXYN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | iDXYN(Register, Register, RegData), // Draw at position (VX, VY) N bytes of sprite data starting at address stored in I [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IDxyn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iEX9E` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | iEX9E(Register), // Skip next instruction if key stored in reg VX is pressed [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IEx9e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iEXA1` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | iEXA1(Register), // Skip next instruction if key stored in reg VX is not pressed [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IExa1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX07` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | iFX07(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx07` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX0A` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | iFX0A(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IFx0a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX15` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | iFX15(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx15` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX18` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | iFX18(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx18` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX1E` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | iFX1E(Register), // I += Reg[VX] [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IFx1e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX29` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | iFX29(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx29` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX33` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | iFX33(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx33` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX55` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | iFX55(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx55` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX65` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | iFX65(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx65` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `wasm_bindgen_test::console_log` [INFO] [stdout] --> src/ui.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use wasm_bindgen_test::console_log; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition: `make_instruction` [INFO] [stdout] --> src/util.rs:54:14 [INFO] [stdout] | [INFO] [stdout] 54 | macro_rules! make_instruction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i00E0` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | i00E0, // Clears the display [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I00e0` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i00EE` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | i00EE, // Return from a subroutine [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I00ee` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i00E1` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | i00E1, // Sets all bits of display [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I00e1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i1NNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | i1NNN(Address), // Jump to address NNN [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I1nnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i2NNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | i2NNN(Address), // Execute subroutine at address NNN [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I2nnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i3XNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | i3XNN(Register, RegData), // Skip following instruction if VX == NN [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I3xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i4XNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | i4XNN(Register, RegData), // Skip following instruction if VX != NN [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I4xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i5XY0` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | i5XY0(Register, Register), // Skip following instruction if VX == VY [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I5xy0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i6XNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | i6XNN(Register, RegData), // store value NN at register X [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I6xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i7XNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | i7XNN(Register, RegData), // Add data NN to register X [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I7xnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY0` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | i8XY0(Register, Register), // VX = *VY [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY1` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | i8XY1(Register, Register), // VX = VX | VY [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY2` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | i8XY2(Register, Register), // VX = VX & VY [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY3` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | i8XY3(Register, Register), // VX = VX ^ VY [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY4` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | i8XY4(Register, Register), // VX = VX + VY -> VF = 1 if carry, 0 otherwise [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY5` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | i8XY5(Register, Register), // VX = VX - VY -> VF = 1 if carry, 0 otherwise [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy5` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY6` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | i8XY6(Register, Register), // VX = VY >> 1 -> VF = LSB of VY before shift [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XY7` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | i8XY7(Register, Register), // VX = VY - VX -> CAREFUL !!! VF = 0 if carry, 1 otherwise [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I8xy7` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i8XYE` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | i8XYE(Register, Register), // VX = VY << 1 -> VF = MSB of VY before shift [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `I8xye` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `i9XY0` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | i9XY0(Register, Register), // Skip next instruction iff VX != VY [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `I9xy0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iANNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | iANNN(Address), // Store memory address NNN in Register i [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IAnnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iBNNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | iBNNN(Address), // Jump to adresss NNN + V0 [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IBnnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iCXNN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | iCXNN(Register, Address), // Put random number and mask with NN in VX [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `ICxnn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iDXYN` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | iDXYN(Register, Register, RegData), // Draw at position (VX, VY) N bytes of sprite data starting at address stored in I [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IDxyn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iEX9E` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | iEX9E(Register), // Skip next instruction if key stored in reg VX is pressed [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IEx9e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iEXA1` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | iEXA1(Register), // Skip next instruction if key stored in reg VX is not pressed [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IExa1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX07` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | iFX07(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx07` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX0A` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | iFX0A(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IFx0a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX15` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | iFX15(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx15` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX18` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | iFX18(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx18` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX1E` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | iFX1E(Register), // I += Reg[VX] [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `IFx1e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX29` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | iFX29(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx29` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX33` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | iFX33(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx33` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX55` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | iFX55(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx55` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `iFX65` should have an upper camel case name [INFO] [stdout] --> src/instruction.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | iFX65(Register), // TODO [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IFx65` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `wasm_bindgen_test::console_log` [INFO] [stdout] --> src/ui.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use wasm_bindgen_test::console_log; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition: `make_instruction` [INFO] [stdout] --> src/util.rs:54:14 [INFO] [stdout] | [INFO] [stdout] 54 | macro_rules! make_instruction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reg2` [INFO] [stdout] --> src/cpu.rs:424:42 [INFO] [stdout] | [INFO] [stdout] 424 | Instruction::i8XYE(reg1, reg2) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_reg2` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reg2` [INFO] [stdout] --> src/cpu.rs:424:42 [INFO] [stdout] | [INFO] [stdout] 424 | Instruction::i8XYE(reg1, reg2) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_reg2` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `POWERS_OF_TWO` is never used [INFO] [stdout] --> src/keyboard.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | static POWERS_OF_TWO: [u16; 16] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Key` is never used [INFO] [stdout] --> src/keyboard.rs:183:10 [INFO] [stdout] | [INFO] [stdout] 183 | pub enum Key { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Key` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REG_V1` is never used [INFO] [stdout] --> src/types.rs:96:11 [INFO] [stdout] | [INFO] [stdout] 96 | pub const REG_V1: usize = 0x1; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `PIXEL_OFF_COLOR` is never used [INFO] [stdout] --> src/ui.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | static PIXEL_OFF_COLOR: &str = "#000000"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `PIXEL_ON_COLOR` is never used [INFO] [stdout] --> src/ui.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | static PIXEL_ON_COLOR: &str = "#FFFFFF"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `PIXEL_SIZE` is never used [INFO] [stdout] --> src/ui.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | static PIXEL_SIZE: usize = 10; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_chip8` is never used [INFO] [stdout] --> src/ui.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn run_chip8() -> Result<(), JsValue> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_pixels` is never used [INFO] [stdout] --> src/ui.rs:36:4 [INFO] [stdout] | [INFO] [stdout] 36 | fn draw_pixels(cpu: &Cpu, context: &CanvasRenderingContext2d) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_context` is never used [INFO] [stdout] --> src/ui.rs:60:4 [INFO] [stdout] | [INFO] [stdout] 60 | fn get_context(width: &usize, height: &usize) -> web_sys::CanvasRenderingContext2d { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `window` is never used [INFO] [stdout] --> src/ui.rs:78:4 [INFO] [stdout] | [INFO] [stdout] 78 | fn window() -> web_sys::Window { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `request_animation_frame` is never used [INFO] [stdout] --> src/ui.rs:82:4 [INFO] [stdout] | [INFO] [stdout] 82 | fn request_animation_frame(f: &Closure) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `document` is never used [INFO] [stdout] --> src/ui.rs:88:4 [INFO] [stdout] | [INFO] [stdout] 88 | fn document() -> web_sys::Document { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `POWERS_OF_TWO` is never used [INFO] [stdout] --> src/keyboard.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | static POWERS_OF_TWO: [u16; 16] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Key` is never used [INFO] [stdout] --> src/keyboard.rs:183:10 [INFO] [stdout] | [INFO] [stdout] 183 | pub enum Key { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Key` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REG_V1` is never used [INFO] [stdout] --> src/types.rs:96:11 [INFO] [stdout] | [INFO] [stdout] 96 | pub const REG_V1: usize = 0x1; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `PIXEL_OFF_COLOR` is never used [INFO] [stdout] --> src/ui.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | static PIXEL_OFF_COLOR: &str = "#000000"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `PIXEL_ON_COLOR` is never used [INFO] [stdout] --> src/ui.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | static PIXEL_ON_COLOR: &str = "#FFFFFF"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `PIXEL_SIZE` is never used [INFO] [stdout] --> src/ui.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | static PIXEL_SIZE: usize = 10; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_chip8` is never used [INFO] [stdout] --> src/ui.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn run_chip8() -> Result<(), JsValue> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_pixels` is never used [INFO] [stdout] --> src/ui.rs:36:4 [INFO] [stdout] | [INFO] [stdout] 36 | fn draw_pixels(cpu: &Cpu, context: &CanvasRenderingContext2d) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_context` is never used [INFO] [stdout] --> src/ui.rs:60:4 [INFO] [stdout] | [INFO] [stdout] 60 | fn get_context(width: &usize, height: &usize) -> web_sys::CanvasRenderingContext2d { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `window` is never used [INFO] [stdout] --> src/ui.rs:78:4 [INFO] [stdout] | [INFO] [stdout] 78 | fn window() -> web_sys::Window { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `request_animation_frame` is never used [INFO] [stdout] --> src/ui.rs:82:4 [INFO] [stdout] | [INFO] [stdout] 82 | fn request_animation_frame(f: &Closure) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `document` is never used [INFO] [stdout] --> src/ui.rs:88:4 [INFO] [stdout] | [INFO] [stdout] 88 | fn document() -> web_sys::Document { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 50 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 50 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.62s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wasm-bindgen v0.2.80 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3` [INFO] running `Command { std: "docker" "inspect" "4cb3f68fc40be5c03923e7192cb53e9525933691de01db3b79adc676ad69822e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4cb3f68fc40be5c03923e7192cb53e9525933691de01db3b79adc676ad69822e", kill_on_drop: false }` [INFO] [stdout] 4cb3f68fc40be5c03923e7192cb53e9525933691de01db3b79adc676ad69822e