[INFO] fetching crate cappy3ds 0.0.1...
[INFO] testing cappy3ds-0.0.1 against master#1871252fc8bb672d40787e67404e6eaae7059369 for pr-125151
[INFO] extracting crate cappy3ds 0.0.1 into /workspace/builds/worker-2-tc1/source
[INFO] validating manifest of crates.io crate cappy3ds 0.0.1 on toolchain 1871252fc8bb672d40787e67404e6eaae7059369
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate cappy3ds 0.0.1
[INFO] finished tweaking crates.io crate cappy3ds 0.0.1
[INFO] tweaked toml for crates.io crate cappy3ds 0.0.1 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] crate crates.io crate cappy3ds 0.0.1 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" "+1871252fc8bb672d40787e67404e6eaae7059369" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded cpufeatures v0.2.10
[INFO] [stderr]   Downloaded rust-embed-impl v8.0.0
[INFO] [stderr]   Downloaded rust-embed-utils v8.0.0
[INFO] [stderr]   Downloaded simple-error v0.3.0
[INFO] [stderr]   Downloaded rusb v0.9.3
[INFO] [stderr]   Downloaded exr v1.71.0
[INFO] [stderr]   Downloaded libusb1-sys v0.6.4
[INFO] [stderr]   Downloaded gif v0.12.0
[INFO] [stderr]   Downloaded rust-embed v8.0.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6c24b6d466a9741bbd409c831a1f39e11ec2b589f3c4ffabaf2fcb4a908e846e
[INFO] running `Command { std: "docker" "start" "-a" "6c24b6d466a9741bbd409c831a1f39e11ec2b589f3c4ffabaf2fcb4a908e846e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6c24b6d466a9741bbd409c831a1f39e11ec2b589f3c4ffabaf2fcb4a908e846e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6c24b6d466a9741bbd409c831a1f39e11ec2b589f3c4ffabaf2fcb4a908e846e", kill_on_drop: false }`
[INFO] [stdout] 6c24b6d466a9741bbd409c831a1f39e11ec2b589f3c4ffabaf2fcb4a908e846e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cf578bd4fc7c0b02aa2274ee14f03f7c4305a63cf85c8adeec104068ce96e233
[INFO] running `Command { std: "docker" "start" "-a" "cf578bd4fc7c0b02aa2274ee14f03f7c4305a63cf85c8adeec104068ce96e233", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.16
[INFO] [stderr]    Compiling libc v0.2.149
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling rayon-core v1.12.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.69
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling pkg-config v0.3.27
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling cpufeatures v0.2.10
[INFO] [stderr]    Compiling weezl v0.1.7
[INFO] [stderr]    Compiling half v2.2.1
[INFO] [stderr]    Compiling lebe v0.5.2
[INFO] [stderr]    Compiling bit_field v0.10.2
[INFO] [stderr]    Compiling miniz_oxide v0.7.1
[INFO] [stderr]    Compiling walkdir v2.4.0
[INFO] [stderr]    Compiling zune-inflate v0.2.54
[INFO] [stderr]    Compiling fdeflate v0.3.0
[INFO] [stderr]    Compiling rusb v0.9.3
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.15
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling flate2 v1.0.28
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling bytemuck v1.14.0
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling smallvec v1.11.1
[INFO] [stderr]    Compiling itertools v0.11.0
[INFO] [stderr]    Compiling gif v0.12.0
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling memchr v2.6.4
[INFO] [stderr]    Compiling qoi v0.4.1
[INFO] [stderr]    Compiling simple-error v0.3.0
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling flume v0.11.0
[INFO] [stderr]    Compiling bytes v1.5.0
[INFO] [stderr]    Compiling png v0.17.10
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling crossbeam-deque v0.8.3
[INFO] [stderr]    Compiling syn v2.0.38
[INFO] [stderr]    Compiling sha2 v0.10.8
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling rust-embed-utils v8.0.0
[INFO] [stderr]    Compiling rayon v1.8.0
[INFO] [stderr]    Compiling exr v1.71.0
[INFO] [stderr]    Compiling libusb1-sys v0.6.4
[INFO] [stderr]    Compiling rust-embed-impl v8.0.0
[INFO] [stderr]    Compiling rust-embed v8.0.0
[INFO] [stderr]    Compiling jpeg-decoder v0.3.0
[INFO] [stderr]    Compiling tiff v0.9.0
[INFO] [stderr]    Compiling image v0.24.7
[INFO] [stderr]    Compiling cappy3ds v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 291 | /         loop {
[INFO] [stdout] 292 | |             //let current_buffer = capture_handler.lock().unwrap().current_buffer;
[INFO] [stdout] 293 | |             //if current_buffer >= NUM_BUFFERS - 10 {
[INFO] [stdout] 294 | |             //break;
[INFO] [stdout] ...   |
[INFO] [stdout] 297 | |             //thread::sleep(ten_millis);
[INFO] [stdout] 298 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 299 |
[INFO] [stdout] 300 |           println!("Stopping Capture");
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Ok(len) => {
[INFO] [stdout]    |                ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:19
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:27
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:15
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:217:13
[INFO] [stdout]     |
[INFO] [stdout] 217 |         for i in 0..NUM_BUFFERS {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `thread_join_handle`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 248 |         let thread_join_handle = s.spawn(|| loop {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_join_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `new_frame` is never read
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:193:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct CaptureHandler<F> {
[INFO] [stdout]     |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 193 |     new_frame: bool,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CaptureHandler` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_fpga_programmed` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn check_fpga_programmed<T: UsbContext>(handle: &mut DeviceHandle<T>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_stop` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn fifo_stop<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let _ = handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let _ = handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 106 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let _ = handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |     let _ = handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let _ = handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let _ = handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     handle.set_active_configuration(1);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let _ = handle.set_active_configuration(1);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     handle.claim_interface(0);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let _ = handle.claim_interface(0);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let _ = image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let _ = image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |             image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let _ = image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 26 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 291 | /         loop {
[INFO] [stdout] 292 | |             //let current_buffer = capture_handler.lock().unwrap().current_buffer;
[INFO] [stdout] 293 | |             //if current_buffer >= NUM_BUFFERS - 10 {
[INFO] [stdout] 294 | |             //break;
[INFO] [stdout] ...   |
[INFO] [stdout] 297 | |             //thread::sleep(ten_millis);
[INFO] [stdout] 298 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 299 |
[INFO] [stdout] 300 |           println!("Stopping Capture");
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Ok(len) => {
[INFO] [stdout]    |                ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:19
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:27
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:15
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:217:13
[INFO] [stdout]     |
[INFO] [stdout] 217 |         for i in 0..NUM_BUFFERS {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `thread_join_handle`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 248 |         let thread_join_handle = s.spawn(|| loop {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_join_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `connect` is never used
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn connect<T: UsbContext>(context: &mut T) -> Result<DeviceHandle<T>, SimpleError> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `open_device` is never used
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn open_device<T: UsbContext>(
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `do_capture` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:103:8
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub fn do_capture<T: UsbContext, F>(handle: &mut DeviceHandle<T>, data_callback: F)
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transfer_finished` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:110:20
[INFO] [stdout]     |
[INFO] [stdout] 110 | extern "system" fn transfer_finished<T: UsbContext, F>(transfer_ptr: *mut usbffi::libusb_transfer)
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CaptureHandler` is never constructed
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct CaptureHandler<F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NUM_BUFFERS` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:198:7
[INFO] [stdout]     |
[INFO] [stdout] 198 | const NUM_BUFFERS: usize = 20;
[INFO] [stdout]     |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FRAM_BUFFER_SIZE` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:206:7
[INFO] [stdout]     |
[INFO] [stdout] 206 | const FRAM_BUFFER_SIZE: usize = 720 * 248 * 2;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TRANSFER_SIZE` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:208:7
[INFO] [stdout]     |
[INFO] [stdout] 208 | const TRANSFER_SIZE: usize = 0x4000;
[INFO] [stdout]     |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:214:8
[INFO] [stdout]     |
[INFO] [stdout] 210 | / impl<F> CaptureHandler<F>
[INFO] [stdout] 211 | | where
[INFO] [stdout] 212 | |     F: FnMut(&[i16], BytesMut, BytesMut),
[INFO] [stdout]     | |_________________________________________- associated function in this implementation
[INFO] [stdout] 213 |   {
[INFO] [stdout] 214 |       fn new(data_callback: F) -> Self {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bulk_read` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:231:4
[INFO] [stdout]     |
[INFO] [stdout] 231 | fn bulk_read<T: UsbContext, F>(handle: &mut DeviceHandle<T>, data_callback: F)
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_eeprom` is never used
[INFO] [stdout]  --> src/capture/katsukitty/fpga.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn read_eeprom<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `configure_fpga` is never used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn configure_fpga<T: UsbContext>(handle: &mut DeviceHandle<T>, bitstream: Vec<u8>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_fpga_programmed` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn check_fpga_programmed<T: UsbContext>(handle: &mut DeviceHandle<T>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `configure_port` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub fn configure_port<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_start` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub fn fifo_start<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_stop` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn fifo_stop<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_firmware` is never used
[INFO] [stdout]  --> src/capture/katsukitty/fx2.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub(crate) fn send_firmware<T: UsbContext>(handle: &mut DeviceHandle<T>, firmware: Vec<u8>) {
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_image_data` is never used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn parse_image_data(data: &Vec<u8>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_capture_buffer` is never used
[INFO] [stdout]   --> src/capture/katsukitty/parse.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn split_capture_buffer(data: &BytesMut) -> (BytesMut, BytesMut, BytesMut) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rgb565_to_rgb` is never used
[INFO] [stdout]   --> src/capture/katsukitty/parse.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn rgb565_to_rgb(data: &BytesMut) -> BytesMut {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rgb565_to_rgba` is never used
[INFO] [stdout]   --> src/capture/katsukitty/parse.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub fn rgb565_to_rgba(data: &BytesMut) -> BytesMut {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let _ = handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let _ = handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 106 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let _ = handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |     let _ = handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let _ = handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let _ = handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     handle.set_active_configuration(1);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let _ = handle.set_active_configuration(1);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     handle.claim_interface(0);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let _ = handle.claim_interface(0);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let _ = image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let _ = image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |             image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let _ = image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 44 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.33s
[INFO] running `Command { std: "docker" "inspect" "cf578bd4fc7c0b02aa2274ee14f03f7c4305a63cf85c8adeec104068ce96e233", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cf578bd4fc7c0b02aa2274ee14f03f7c4305a63cf85c8adeec104068ce96e233", kill_on_drop: false }`
[INFO] [stdout] cf578bd4fc7c0b02aa2274ee14f03f7c4305a63cf85c8adeec104068ce96e233
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2bfbacab21a3f7d67dfc923386a2e02a063796a23d35ed7c249d2771058542f5
[INFO] running `Command { std: "docker" "start" "-a" "2bfbacab21a3f7d67dfc923386a2e02a063796a23d35ed7c249d2771058542f5", kill_on_drop: false }`
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 291 | /         loop {
[INFO] [stdout] 292 | |             //let current_buffer = capture_handler.lock().unwrap().current_buffer;
[INFO] [stdout] 293 | |             //if current_buffer >= NUM_BUFFERS - 10 {
[INFO] [stdout] 294 | |             //break;
[INFO] [stdout] ...   |
[INFO] [stdout] 297 | |             //thread::sleep(ten_millis);
[INFO] [stdout] 298 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 299 |
[INFO] [stdout] 300 |           println!("Stopping Capture");
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Ok(len) => {
[INFO] [stdout]    |                ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:19
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:27
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:15
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:217:13
[INFO] [stdout]     |
[INFO] [stdout] 217 |         for i in 0..NUM_BUFFERS {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `thread_join_handle`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 248 |         let thread_join_handle = s.spawn(|| loop {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_join_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `new_frame` is never read
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:193:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct CaptureHandler<F> {
[INFO] [stdout]     |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 193 |     new_frame: bool,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CaptureHandler` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_fpga_programmed` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn check_fpga_programmed<T: UsbContext>(handle: &mut DeviceHandle<T>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_stop` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn fifo_stop<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let _ = handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let _ = handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 106 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let _ = handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |     let _ = handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let _ = handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let _ = handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     handle.set_active_configuration(1);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let _ = handle.set_active_configuration(1);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     handle.claim_interface(0);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let _ = handle.claim_interface(0);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let _ = image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let _ = image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |             image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let _ = image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 26 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling cappy3ds v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 291 | /         loop {
[INFO] [stdout] 292 | |             //let current_buffer = capture_handler.lock().unwrap().current_buffer;
[INFO] [stdout] 293 | |             //if current_buffer >= NUM_BUFFERS - 10 {
[INFO] [stdout] 294 | |             //break;
[INFO] [stdout] ...   |
[INFO] [stdout] 297 | |             //thread::sleep(ten_millis);
[INFO] [stdout] 298 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 299 |
[INFO] [stdout] 300 |           println!("Stopping Capture");
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 291 | /         loop {
[INFO] [stdout] 292 | |             //let current_buffer = capture_handler.lock().unwrap().current_buffer;
[INFO] [stdout] 293 | |             //if current_buffer >= NUM_BUFFERS - 10 {
[INFO] [stdout] 294 | |             //break;
[INFO] [stdout] ...   |
[INFO] [stdout] 297 | |             //thread::sleep(ten_millis);
[INFO] [stdout] 298 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 299 |
[INFO] [stdout] 300 |           println!("Stopping Capture");
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Ok(len) => {
[INFO] [stdout]    |                ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Ok(len) => {
[INFO] [stdout]    |                ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:19
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:27
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:19
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:27
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:15
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[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/capture/katsukitty/mod.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:15
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:217:13
[INFO] [stdout]     |
[INFO] [stdout] 217 |         for i in 0..NUM_BUFFERS {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `thread_join_handle`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 248 |         let thread_join_handle = s.spawn(|| loop {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_join_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:217:13
[INFO] [stdout]     |
[INFO] [stdout] 217 |         for i in 0..NUM_BUFFERS {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `thread_join_handle`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 248 |         let thread_join_handle = s.spawn(|| loop {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_join_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `new_frame` is never read
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:193:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct CaptureHandler<F> {
[INFO] [stdout]     |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 193 |     new_frame: bool,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CaptureHandler` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_fpga_programmed` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn check_fpga_programmed<T: UsbContext>(handle: &mut DeviceHandle<T>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_stop` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn fifo_stop<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `connect` is never used
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn connect<T: UsbContext>(context: &mut T) -> Result<DeviceHandle<T>, SimpleError> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `open_device` is never used
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn open_device<T: UsbContext>(
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `do_capture` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:103:8
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub fn do_capture<T: UsbContext, F>(handle: &mut DeviceHandle<T>, data_callback: F)
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transfer_finished` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:110:20
[INFO] [stdout]     |
[INFO] [stdout] 110 | extern "system" fn transfer_finished<T: UsbContext, F>(transfer_ptr: *mut usbffi::libusb_transfer)
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CaptureHandler` is never constructed
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct CaptureHandler<F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NUM_BUFFERS` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:198:7
[INFO] [stdout]     |
[INFO] [stdout] 198 | const NUM_BUFFERS: usize = 20;
[INFO] [stdout]     |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FRAM_BUFFER_SIZE` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:206:7
[INFO] [stdout]     |
[INFO] [stdout] 206 | const FRAM_BUFFER_SIZE: usize = 720 * 248 * 2;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TRANSFER_SIZE` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:208:7
[INFO] [stdout]     |
[INFO] [stdout] 208 | const TRANSFER_SIZE: usize = 0x4000;
[INFO] [stdout]     |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:214:8
[INFO] [stdout]     |
[INFO] [stdout] 210 | / impl<F> CaptureHandler<F>
[INFO] [stdout] 211 | | where
[INFO] [stdout] 212 | |     F: FnMut(&[i16], BytesMut, BytesMut),
[INFO] [stdout]     | |_________________________________________- associated function in this implementation
[INFO] [stdout] 213 |   {
[INFO] [stdout] 214 |       fn new(data_callback: F) -> Self {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bulk_read` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:231:4
[INFO] [stdout]     |
[INFO] [stdout] 231 | fn bulk_read<T: UsbContext, F>(handle: &mut DeviceHandle<T>, data_callback: F)
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_eeprom` is never used
[INFO] [stdout]  --> src/capture/katsukitty/fpga.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn read_eeprom<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `configure_fpga` is never used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn configure_fpga<T: UsbContext>(handle: &mut DeviceHandle<T>, bitstream: Vec<u8>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_fpga_programmed` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn check_fpga_programmed<T: UsbContext>(handle: &mut DeviceHandle<T>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `configure_port` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub fn configure_port<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_start` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub fn fifo_start<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_stop` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn fifo_stop<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_firmware` is never used
[INFO] [stdout]  --> src/capture/katsukitty/fx2.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub(crate) fn send_firmware<T: UsbContext>(handle: &mut DeviceHandle<T>, firmware: Vec<u8>) {
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_image_data` is never used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn parse_image_data(data: &Vec<u8>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_capture_buffer` is never used
[INFO] [stdout]   --> src/capture/katsukitty/parse.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn split_capture_buffer(data: &BytesMut) -> (BytesMut, BytesMut, BytesMut) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rgb565_to_rgb` is never used
[INFO] [stdout]   --> src/capture/katsukitty/parse.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn rgb565_to_rgb(data: &BytesMut) -> BytesMut {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rgb565_to_rgba` is never used
[INFO] [stdout]   --> src/capture/katsukitty/parse.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub fn rgb565_to_rgba(data: &BytesMut) -> BytesMut {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let _ = handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let _ = handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 106 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let _ = handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |     let _ = handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let _ = handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let _ = handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     handle.set_active_configuration(1);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let _ = handle.set_active_configuration(1);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     handle.claim_interface(0);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let _ = handle.claim_interface(0);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let _ = image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let _ = image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |             image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let _ = image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let _ = handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let _ = handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 106 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let _ = handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |     let _ = handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let _ = handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let _ = handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     handle.set_active_configuration(1);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let _ = handle.set_active_configuration(1);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     handle.claim_interface(0);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let _ = handle.claim_interface(0);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let _ = image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let _ = image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |             image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let _ = image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 26 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 44 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.63s
[INFO] running `Command { std: "docker" "inspect" "2bfbacab21a3f7d67dfc923386a2e02a063796a23d35ed7c249d2771058542f5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2bfbacab21a3f7d67dfc923386a2e02a063796a23d35ed7c249d2771058542f5", kill_on_drop: false }`
[INFO] [stdout] 2bfbacab21a3f7d67dfc923386a2e02a063796a23d35ed7c249d2771058542f5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 357a801d650a5b0a73704bc220e7bd2e44358d7a4b4b859bd33b5baca7f12790
[INFO] running `Command { std: "docker" "start" "-a" "357a801d650a5b0a73704bc220e7bd2e44358d7a4b4b859bd33b5baca7f12790", kill_on_drop: false }`
[INFO] [stderr] warning: unreachable statement
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:300:9
[INFO] [stderr]     |
[INFO] [stderr] 291 | /         loop {
[INFO] [stderr] 292 | |             //let current_buffer = capture_handler.lock().unwrap().current_buffer;
[INFO] [stderr] 293 | |             //if current_buffer >= NUM_BUFFERS - 10 {
[INFO] [stderr] 294 | |             //break;
[INFO] [stderr] ...   |
[INFO] [stderr] 297 | |             //thread::sleep(ten_millis);
[INFO] [stderr] 298 | |         }
[INFO] [stderr]     | |_________- any code following this expression is unreachable
[INFO] [stderr] 299 |
[INFO] [stderr] 300 |           println!("Stopping Capture");
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `len`
[INFO] [stderr]   --> src/capture/katsukitty/fpga.rs:23:16
[INFO] [stderr]    |
[INFO] [stderr] 23 |             Ok(len) => {
[INFO] [stderr]    |                ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `device`
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:32:19
[INFO] [stderr]    |
[INFO] [stderr] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stderr]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `device_desc`
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:32:27
[INFO] [stderr]    |
[INFO] [stderr] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stderr]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `device`
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:50:19
[INFO] [stderr]    |
[INFO] [stderr] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stderr]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `device_desc`
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:50:27
[INFO] [stderr]    |
[INFO] [stderr] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stderr]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:32:15
[INFO] [stderr]    |
[INFO] [stderr] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stderr]    |               ----^^^^^^
[INFO] [stderr]    |               |
[INFO] [stderr]    |               help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:50:15
[INFO] [stderr]    |
[INFO] [stderr] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stderr]    |               ----^^^^^^
[INFO] [stderr]    |               |
[INFO] [stderr]    |               help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:217:13
[INFO] [stderr]     |
[INFO] [stderr] 217 |         for i in 0..NUM_BUFFERS {
[INFO] [stderr]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `thread_join_handle`
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:248:13
[INFO] [stderr]     |
[INFO] [stderr] 248 |         let thread_join_handle = s.spawn(|| loop {
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_join_handle`
[INFO] [stderr] 
[INFO] [stderr] warning: field `new_frame` is never read
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:193:5
[INFO] [stderr]     |
[INFO] [stderr] 190 | struct CaptureHandler<F> {
[INFO] [stderr]     |        -------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 193 |     new_frame: bool,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `CaptureHandler` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `check_fpga_programmed` is never used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:102:8
[INFO] [stderr]     |
[INFO] [stderr] 102 | pub fn check_fpga_programmed<T: UsbContext>(handle: &mut DeviceHandle<T>) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `fifo_stop` is never used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:130:8
[INFO] [stderr]     |
[INFO] [stderr] 130 | pub fn fifo_stop<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/fpga.rs:69:9
[INFO] [stderr]    |
[INFO] [stderr] 69 |         handle.write_bulk(1, &buf, timeout);
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 69 |         let _ = handle.write_bulk(1, &buf, timeout);
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/fpga.rs:89:9
[INFO] [stderr]    |
[INFO] [stderr] 89 |         handle.write_bulk(1, &data, timeout);
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 89 |         let _ = handle.write_bulk(1, &data, timeout);
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/fpga.rs:98:5
[INFO] [stderr]    |
[INFO] [stderr] 98 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 98 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:106:5
[INFO] [stderr]     |
[INFO] [stderr] 106 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 106 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:120:5
[INFO] [stderr]     |
[INFO] [stderr] 120 |     handle.write_bulk(1, &[0x65], timeout);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 120 |     let _ = handle.write_bulk(1, &[0x65], timeout);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:126:5
[INFO] [stderr]     |
[INFO] [stderr] 126 |     handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 126 |     let _ = handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:127:5
[INFO] [stderr]     |
[INFO] [stderr] 127 |     handle.write_bulk(1, &[0x40], timeout);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 127 |     let _ = handle.write_bulk(1, &[0x40], timeout);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:133:5
[INFO] [stderr]     |
[INFO] [stderr] 133 |     handle.write_bulk(1, &[0x41], timeout);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 133 |     let _ = handle.write_bulk(1, &[0x41], timeout);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/fx2.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 |     handle.set_active_configuration(1);
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 11 |     let _ = handle.set_active_configuration(1);
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/fx2.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     handle.claim_interface(0);
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 13 |     let _ = handle.claim_interface(0);
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/image.rs:29:13
[INFO] [stderr]    |
[INFO] [stderr] 29 |             image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 29 |             let _ = image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stderr]    |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/image.rs:36:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |             image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 36 |             let _ = image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stderr]    |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/image.rs:43:13
[INFO] [stderr]    |
[INFO] [stderr] 43 |             image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 43 |             let _ = image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stderr]    |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `cappy3ds` (lib) generated 26 warnings (run `cargo fix --lib -p cappy3ds` to apply 2 suggestions)
[INFO] [stderr] warning: `cappy3ds` (lib test) generated 26 warnings (26 duplicates)
[INFO] [stderr] warning: function `connect` is never used
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub fn connect<T: UsbContext>(context: &mut T) -> Result<DeviceHandle<T>, SimpleError> {
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `open_device` is never used
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:76:4
[INFO] [stderr]    |
[INFO] [stderr] 76 | fn open_device<T: UsbContext>(
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `do_capture` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:103:8
[INFO] [stderr]     |
[INFO] [stderr] 103 | pub fn do_capture<T: UsbContext, F>(handle: &mut DeviceHandle<T>, data_callback: F)
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `transfer_finished` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:110:20
[INFO] [stderr]     |
[INFO] [stderr] 110 | extern "system" fn transfer_finished<T: UsbContext, F>(transfer_ptr: *mut usbffi::libusb_transfer)
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CaptureHandler` is never constructed
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:190:8
[INFO] [stderr]     |
[INFO] [stderr] 190 | struct CaptureHandler<F> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `NUM_BUFFERS` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:198:7
[INFO] [stderr]     |
[INFO] [stderr] 198 | const NUM_BUFFERS: usize = 20;
[INFO] [stderr]     |       ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `FRAM_BUFFER_SIZE` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:206:7
[INFO] [stderr]     |
[INFO] [stderr] 206 | const FRAM_BUFFER_SIZE: usize = 720 * 248 * 2;
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TRANSFER_SIZE` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:208:7
[INFO] [stderr]     |
[INFO] [stderr] 208 | const TRANSFER_SIZE: usize = 0x4000;
[INFO] [stderr]     |       ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:214:8
[INFO] [stderr]     |
[INFO] [stderr] 210 | / impl<F> CaptureHandler<F>
[INFO] [stderr] 211 | | where
[INFO] [stderr] 212 | |     F: FnMut(&[i16], BytesMut, BytesMut),
[INFO] [stderr]     | |_________________________________________- associated function in this implementation
[INFO] [stderr] 213 |   {
[INFO] [stderr] 214 |       fn new(data_callback: F) -> Self {
[INFO] [stderr]     |          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `bulk_read` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:231:4
[INFO] [stderr]     |
[INFO] [stderr] 231 | fn bulk_read<T: UsbContext, F>(handle: &mut DeviceHandle<T>, data_callback: F)
[INFO] [stderr]     |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `read_eeprom` is never used
[INFO] [stderr]  --> src/capture/katsukitty/fpga.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn read_eeprom<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stderr]   |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `configure_fpga` is never used
[INFO] [stderr]   --> src/capture/katsukitty/fpga.rs:37:8
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub fn configure_fpga<T: UsbContext>(handle: &mut DeviceHandle<T>, bitstream: Vec<u8>) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `configure_port` is never used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:117:8
[INFO] [stderr]     |
[INFO] [stderr] 117 | pub fn configure_port<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `fifo_start` is never used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:123:8
[INFO] [stderr]     |
[INFO] [stderr] 123 | pub fn fifo_start<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `send_firmware` is never used
[INFO] [stderr]  --> src/capture/katsukitty/fx2.rs:6:15
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub(crate) fn send_firmware<T: UsbContext>(handle: &mut DeviceHandle<T>, firmware: Vec<u8>) {
[INFO] [stderr]   |               ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_image_data` is never used
[INFO] [stderr]   --> src/capture/katsukitty/image.rs:10:8
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub fn parse_image_data(data: &Vec<u8>) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `split_capture_buffer` is never used
[INFO] [stderr]   --> src/capture/katsukitty/parse.rs:10:8
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub fn split_capture_buffer(data: &BytesMut) -> (BytesMut, BytesMut, BytesMut) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `rgb565_to_rgb` is never used
[INFO] [stderr]   --> src/capture/katsukitty/parse.rs:44:8
[INFO] [stderr]    |
[INFO] [stderr] 44 | pub fn rgb565_to_rgb(data: &BytesMut) -> BytesMut {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `rgb565_to_rgba` is never used
[INFO] [stderr]   --> src/capture/katsukitty/parse.rs:67:8
[INFO] [stderr]    |
[INFO] [stderr] 67 | pub fn rgb565_to_rgba(data: &BytesMut) -> BytesMut {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `cappy3ds` (bin "cappy3ds" test) generated 44 warnings (25 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/cappy3ds-d64900071e7b6ba3)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/cappy3ds-921fb78030913a8f)
[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] [stderr]    Doc-tests cappy3ds
[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" "357a801d650a5b0a73704bc220e7bd2e44358d7a4b4b859bd33b5baca7f12790", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "357a801d650a5b0a73704bc220e7bd2e44358d7a4b4b859bd33b5baca7f12790", kill_on_drop: false }`
[INFO] [stdout] 357a801d650a5b0a73704bc220e7bd2e44358d7a4b4b859bd33b5baca7f12790
[INFO] testing cappy3ds-0.0.1 against try#b642703cf9526da1e72c0b6755753b939a9c6b6d for pr-125151
[INFO] extracting crate cappy3ds 0.0.1 into /workspace/builds/worker-2-tc2/source
[INFO] validating manifest of crates.io crate cappy3ds 0.0.1 on toolchain b642703cf9526da1e72c0b6755753b939a9c6b6d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate cappy3ds 0.0.1
[INFO] finished tweaking crates.io crate cappy3ds 0.0.1
[INFO] tweaked toml for crates.io crate cappy3ds 0.0.1 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] crate crates.io crate cappy3ds 0.0.1 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" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a39424021ecf2f3639b6ec05721b4bb5c25a99b8bec438e3acc227b93ad68158
[INFO] running `Command { std: "docker" "start" "-a" "a39424021ecf2f3639b6ec05721b4bb5c25a99b8bec438e3acc227b93ad68158", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a39424021ecf2f3639b6ec05721b4bb5c25a99b8bec438e3acc227b93ad68158", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a39424021ecf2f3639b6ec05721b4bb5c25a99b8bec438e3acc227b93ad68158", kill_on_drop: false }`
[INFO] [stdout] a39424021ecf2f3639b6ec05721b4bb5c25a99b8bec438e3acc227b93ad68158
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a3a8209f9cf78fb04e53fcadecfb238529424679a49c22d2352c3b69a622ba11
[INFO] running `Command { std: "docker" "start" "-a" "a3a8209f9cf78fb04e53fcadecfb238529424679a49c22d2352c3b69a622ba11", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.16
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling libc v0.2.149
[INFO] [stderr]    Compiling rayon-core v1.12.0
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]    Compiling proc-macro2 v1.0.69
[INFO] [stderr]    Compiling pkg-config v0.3.27
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling cpufeatures v0.2.10
[INFO] [stderr]    Compiling weezl v0.1.7
[INFO] [stderr]    Compiling smallvec v1.11.1
[INFO] [stderr]    Compiling rusb v0.9.3
[INFO] [stderr]    Compiling lebe v0.5.2
[INFO] [stderr]    Compiling walkdir v2.4.0
[INFO] [stderr]    Compiling miniz_oxide v0.7.1
[INFO] [stderr]    Compiling fdeflate v0.3.0
[INFO] [stderr]    Compiling zune-inflate v0.2.54
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling bytemuck v1.14.0
[INFO] [stderr]    Compiling bit_field v0.10.2
[INFO] [stderr]    Compiling half v2.2.1
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.15
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling qoi v0.4.1
[INFO] [stderr]    Compiling gif v0.12.0
[INFO] [stderr]    Compiling itertools v0.11.0
[INFO] [stderr]    Compiling flate2 v1.0.28
[INFO] [stderr]    Compiling simple-error v0.3.0
[INFO] [stderr]    Compiling memchr v2.6.4
[INFO] [stderr]    Compiling bytes v1.5.0
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling crossbeam-deque v0.8.3
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling flume v0.11.0
[INFO] [stderr]    Compiling png v0.17.10
[INFO] [stderr]    Compiling syn v2.0.38
[INFO] [stderr]    Compiling sha2 v0.10.8
[INFO] [stderr]    Compiling rust-embed-utils v8.0.0
[INFO] [stderr]    Compiling rayon v1.8.0
[INFO] [stderr]    Compiling exr v1.71.0
[INFO] [stderr]    Compiling libusb1-sys v0.6.4
[INFO] [stderr]    Compiling rust-embed-impl v8.0.0
[INFO] [stderr]    Compiling rust-embed v8.0.0
[INFO] [stderr]    Compiling jpeg-decoder v0.3.0
[INFO] [stderr]    Compiling tiff v0.9.0
[INFO] [stderr]    Compiling image v0.24.7
[INFO] [stderr]    Compiling cappy3ds v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 291 | /         loop {
[INFO] [stdout] 292 | |             //let current_buffer = capture_handler.lock().unwrap().current_buffer;
[INFO] [stdout] 293 | |             //if current_buffer >= NUM_BUFFERS - 10 {
[INFO] [stdout] 294 | |             //break;
[INFO] [stdout] ...   |
[INFO] [stdout] 297 | |             //thread::sleep(ten_millis);
[INFO] [stdout] 298 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 299 |
[INFO] [stdout] 300 |           println!("Stopping Capture");
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Ok(len) => {
[INFO] [stdout]    |                ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:19
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:27
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:15
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:217:13
[INFO] [stdout]     |
[INFO] [stdout] 217 |         for i in 0..NUM_BUFFERS {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `thread_join_handle`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 248 |         let thread_join_handle = s.spawn(|| loop {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_join_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `new_frame` is never read
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:193:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct CaptureHandler<F> {
[INFO] [stdout]     |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 193 |     new_frame: bool,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CaptureHandler` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_fpga_programmed` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn check_fpga_programmed<T: UsbContext>(handle: &mut DeviceHandle<T>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_stop` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn fifo_stop<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let _ = handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let _ = handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 106 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let _ = handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |     let _ = handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let _ = handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let _ = handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     handle.set_active_configuration(1);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let _ = handle.set_active_configuration(1);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     handle.claim_interface(0);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let _ = handle.claim_interface(0);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let _ = image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let _ = image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |             image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let _ = image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 26 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 291 | /         loop {
[INFO] [stdout] 292 | |             //let current_buffer = capture_handler.lock().unwrap().current_buffer;
[INFO] [stdout] 293 | |             //if current_buffer >= NUM_BUFFERS - 10 {
[INFO] [stdout] 294 | |             //break;
[INFO] [stdout] ...   |
[INFO] [stdout] 297 | |             //thread::sleep(ten_millis);
[INFO] [stdout] 298 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 299 |
[INFO] [stdout] 300 |           println!("Stopping Capture");
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Ok(len) => {
[INFO] [stdout]    |                ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:19
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:27
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:15
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:217:13
[INFO] [stdout]     |
[INFO] [stdout] 217 |         for i in 0..NUM_BUFFERS {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `thread_join_handle`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 248 |         let thread_join_handle = s.spawn(|| loop {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_join_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `connect` is never used
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn connect<T: UsbContext>(context: &mut T) -> Result<DeviceHandle<T>, SimpleError> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `open_device` is never used
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn open_device<T: UsbContext>(
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `do_capture` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:103:8
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub fn do_capture<T: UsbContext, F>(handle: &mut DeviceHandle<T>, data_callback: F)
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transfer_finished` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:110:20
[INFO] [stdout]     |
[INFO] [stdout] 110 | extern "system" fn transfer_finished<T: UsbContext, F>(transfer_ptr: *mut usbffi::libusb_transfer)
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CaptureHandler` is never constructed
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct CaptureHandler<F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NUM_BUFFERS` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:198:7
[INFO] [stdout]     |
[INFO] [stdout] 198 | const NUM_BUFFERS: usize = 20;
[INFO] [stdout]     |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FRAM_BUFFER_SIZE` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:206:7
[INFO] [stdout]     |
[INFO] [stdout] 206 | const FRAM_BUFFER_SIZE: usize = 720 * 248 * 2;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TRANSFER_SIZE` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:208:7
[INFO] [stdout]     |
[INFO] [stdout] 208 | const TRANSFER_SIZE: usize = 0x4000;
[INFO] [stdout]     |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:214:8
[INFO] [stdout]     |
[INFO] [stdout] 210 | / impl<F> CaptureHandler<F>
[INFO] [stdout] 211 | | where
[INFO] [stdout] 212 | |     F: FnMut(&[i16], BytesMut, BytesMut),
[INFO] [stdout]     | |_________________________________________- associated function in this implementation
[INFO] [stdout] 213 |   {
[INFO] [stdout] 214 |       fn new(data_callback: F) -> Self {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bulk_read` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:231:4
[INFO] [stdout]     |
[INFO] [stdout] 231 | fn bulk_read<T: UsbContext, F>(handle: &mut DeviceHandle<T>, data_callback: F)
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_eeprom` is never used
[INFO] [stdout]  --> src/capture/katsukitty/fpga.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn read_eeprom<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `configure_fpga` is never used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn configure_fpga<T: UsbContext>(handle: &mut DeviceHandle<T>, bitstream: Vec<u8>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_fpga_programmed` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn check_fpga_programmed<T: UsbContext>(handle: &mut DeviceHandle<T>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `configure_port` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub fn configure_port<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_start` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub fn fifo_start<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_stop` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn fifo_stop<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_firmware` is never used
[INFO] [stdout]  --> src/capture/katsukitty/fx2.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub(crate) fn send_firmware<T: UsbContext>(handle: &mut DeviceHandle<T>, firmware: Vec<u8>) {
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_image_data` is never used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn parse_image_data(data: &Vec<u8>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_capture_buffer` is never used
[INFO] [stdout]   --> src/capture/katsukitty/parse.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn split_capture_buffer(data: &BytesMut) -> (BytesMut, BytesMut, BytesMut) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rgb565_to_rgb` is never used
[INFO] [stdout]   --> src/capture/katsukitty/parse.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn rgb565_to_rgb(data: &BytesMut) -> BytesMut {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rgb565_to_rgba` is never used
[INFO] [stdout]   --> src/capture/katsukitty/parse.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub fn rgb565_to_rgba(data: &BytesMut) -> BytesMut {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let _ = handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let _ = handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 106 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let _ = handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |     let _ = handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let _ = handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let _ = handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     handle.set_active_configuration(1);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let _ = handle.set_active_configuration(1);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     handle.claim_interface(0);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let _ = handle.claim_interface(0);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let _ = image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let _ = image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |             image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let _ = image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 44 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.41s
[INFO] running `Command { std: "docker" "inspect" "a3a8209f9cf78fb04e53fcadecfb238529424679a49c22d2352c3b69a622ba11", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a3a8209f9cf78fb04e53fcadecfb238529424679a49c22d2352c3b69a622ba11", kill_on_drop: false }`
[INFO] [stdout] a3a8209f9cf78fb04e53fcadecfb238529424679a49c22d2352c3b69a622ba11
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 86dc756081a1ecac17d15197a8269b3b23d94271ae2842818471a702f5bc7a67
[INFO] running `Command { std: "docker" "start" "-a" "86dc756081a1ecac17d15197a8269b3b23d94271ae2842818471a702f5bc7a67", kill_on_drop: false }`
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 291 | /         loop {
[INFO] [stdout] 292 | |             //let current_buffer = capture_handler.lock().unwrap().current_buffer;
[INFO] [stdout] 293 | |             //if current_buffer >= NUM_BUFFERS - 10 {
[INFO] [stdout] 294 | |             //break;
[INFO] [stdout] ...   |
[INFO] [stdout] 297 | |             //thread::sleep(ten_millis);
[INFO] [stdout] 298 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 299 |
[INFO] [stdout] 300 |           println!("Stopping Capture");
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Ok(len) => {
[INFO] [stdout]    |                ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:19
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:27
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:15
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:217:13
[INFO] [stdout]     |
[INFO] [stdout] 217 |         for i in 0..NUM_BUFFERS {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `thread_join_handle`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 248 |         let thread_join_handle = s.spawn(|| loop {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_join_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `new_frame` is never read
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:193:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct CaptureHandler<F> {
[INFO] [stdout]     |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 193 |     new_frame: bool,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CaptureHandler` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_fpga_programmed` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn check_fpga_programmed<T: UsbContext>(handle: &mut DeviceHandle<T>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_stop` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn fifo_stop<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let _ = handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let _ = handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 106 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let _ = handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |     let _ = handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let _ = handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let _ = handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     handle.set_active_configuration(1);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let _ = handle.set_active_configuration(1);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     handle.claim_interface(0);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let _ = handle.claim_interface(0);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let _ = image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let _ = image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |             image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let _ = image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling cappy3ds v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: 26 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 291 | /         loop {
[INFO] [stdout] 292 | |             //let current_buffer = capture_handler.lock().unwrap().current_buffer;
[INFO] [stdout] 293 | |             //if current_buffer >= NUM_BUFFERS - 10 {
[INFO] [stdout] 294 | |             //break;
[INFO] [stdout] ...   |
[INFO] [stdout] 297 | |             //thread::sleep(ten_millis);
[INFO] [stdout] 298 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 299 |
[INFO] [stdout] 300 |           println!("Stopping Capture");
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 291 | /         loop {
[INFO] [stdout] 292 | |             //let current_buffer = capture_handler.lock().unwrap().current_buffer;
[INFO] [stdout] 293 | |             //if current_buffer >= NUM_BUFFERS - 10 {
[INFO] [stdout] 294 | |             //break;
[INFO] [stdout] ...   |
[INFO] [stdout] 297 | |             //thread::sleep(ten_millis);
[INFO] [stdout] 298 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 299 |
[INFO] [stdout] 300 |           println!("Stopping Capture");
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Ok(len) => {
[INFO] [stdout]    |                ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Ok(len) => {
[INFO] [stdout]    |                ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:19
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:27
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:15
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:19
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_desc`
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:27
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:50:15
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stdout]    |               ----^^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:217:13
[INFO] [stdout]     |
[INFO] [stdout] 217 |         for i in 0..NUM_BUFFERS {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `thread_join_handle`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 248 |         let thread_join_handle = s.spawn(|| loop {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_join_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:217:13
[INFO] [stdout]     |
[INFO] [stdout] 217 |         for i in 0..NUM_BUFFERS {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `thread_join_handle`
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 248 |         let thread_join_handle = s.spawn(|| loop {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_join_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `connect` is never used
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn connect<T: UsbContext>(context: &mut T) -> Result<DeviceHandle<T>, SimpleError> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `open_device` is never used
[INFO] [stdout]   --> src/capture/katsukitty/mod.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn open_device<T: UsbContext>(
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `do_capture` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:103:8
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub fn do_capture<T: UsbContext, F>(handle: &mut DeviceHandle<T>, data_callback: F)
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transfer_finished` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:110:20
[INFO] [stdout]     |
[INFO] [stdout] 110 | extern "system" fn transfer_finished<T: UsbContext, F>(transfer_ptr: *mut usbffi::libusb_transfer)
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CaptureHandler` is never constructed
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct CaptureHandler<F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NUM_BUFFERS` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:198:7
[INFO] [stdout]     |
[INFO] [stdout] 198 | const NUM_BUFFERS: usize = 20;
[INFO] [stdout]     |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FRAM_BUFFER_SIZE` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:206:7
[INFO] [stdout]     |
[INFO] [stdout] 206 | const FRAM_BUFFER_SIZE: usize = 720 * 248 * 2;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TRANSFER_SIZE` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:208:7
[INFO] [stdout]     |
[INFO] [stdout] 208 | const TRANSFER_SIZE: usize = 0x4000;
[INFO] [stdout]     |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:214:8
[INFO] [stdout]     |
[INFO] [stdout] 210 | / impl<F> CaptureHandler<F>
[INFO] [stdout] 211 | | where
[INFO] [stdout] 212 | |     F: FnMut(&[i16], BytesMut, BytesMut),
[INFO] [stdout]     | |_________________________________________- associated function in this implementation
[INFO] [stdout] 213 |   {
[INFO] [stdout] 214 |       fn new(data_callback: F) -> Self {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bulk_read` is never used
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:231:4
[INFO] [stdout]     |
[INFO] [stdout] 231 | fn bulk_read<T: UsbContext, F>(handle: &mut DeviceHandle<T>, data_callback: F)
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `new_frame` is never read
[INFO] [stdout]    --> src/capture/katsukitty/mod.rs:193:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct CaptureHandler<F> {
[INFO] [stdout]     |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 193 |     new_frame: bool,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CaptureHandler` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_eeprom` is never used
[INFO] [stdout]  --> src/capture/katsukitty/fpga.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn read_eeprom<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `configure_fpga` is never used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn configure_fpga<T: UsbContext>(handle: &mut DeviceHandle<T>, bitstream: Vec<u8>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_fpga_programmed` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn check_fpga_programmed<T: UsbContext>(handle: &mut DeviceHandle<T>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_fpga_programmed` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn check_fpga_programmed<T: UsbContext>(handle: &mut DeviceHandle<T>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_stop` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn fifo_stop<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `configure_port` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub fn configure_port<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_start` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub fn fifo_start<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fifo_stop` is never used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn fifo_stop<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_firmware` is never used
[INFO] [stdout]  --> src/capture/katsukitty/fx2.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub(crate) fn send_firmware<T: UsbContext>(handle: &mut DeviceHandle<T>, firmware: Vec<u8>) {
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_image_data` is never used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn parse_image_data(data: &Vec<u8>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_capture_buffer` is never used
[INFO] [stdout]   --> src/capture/katsukitty/parse.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn split_capture_buffer(data: &BytesMut) -> (BytesMut, BytesMut, BytesMut) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rgb565_to_rgb` is never used
[INFO] [stdout]   --> src/capture/katsukitty/parse.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn rgb565_to_rgb(data: &BytesMut) -> BytesMut {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rgb565_to_rgba` is never used
[INFO] [stdout]   --> src/capture/katsukitty/parse.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub fn rgb565_to_rgba(data: &BytesMut) -> BytesMut {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let _ = handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let _ = handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 106 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let _ = handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |     let _ = handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let _ = handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let _ = handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     handle.set_active_configuration(1);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let _ = handle.set_active_configuration(1);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     handle.claim_interface(0);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let _ = handle.claim_interface(0);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let _ = image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let _ = image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |             image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let _ = image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let _ = handle.write_bulk(1, &buf, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let _ = handle.write_bulk(1, &data, timeout);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fpga.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 106 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let _ = handle.write_bulk(1, &[0x65], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |     let _ = handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let _ = handle.write_bulk(1, &[0x40], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/capture/katsukitty/fpga.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let _ = handle.write_bulk(1, &[0x41], timeout);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     handle.set_active_configuration(1);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let _ = handle.set_active_configuration(1);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/fx2.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     handle.claim_interface(0);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let _ = handle.claim_interface(0);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let _ = image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let _ = image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/capture/katsukitty/image.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |             image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let _ = image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 26 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 44 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.46s
[INFO] running `Command { std: "docker" "inspect" "86dc756081a1ecac17d15197a8269b3b23d94271ae2842818471a702f5bc7a67", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "86dc756081a1ecac17d15197a8269b3b23d94271ae2842818471a702f5bc7a67", kill_on_drop: false }`
[INFO] [stdout] 86dc756081a1ecac17d15197a8269b3b23d94271ae2842818471a702f5bc7a67
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] afaafac3017db4c4755df14230ed9592ece18fa73808d3911ac132c91458e7f8
[INFO] running `Command { std: "docker" "start" "-a" "afaafac3017db4c4755df14230ed9592ece18fa73808d3911ac132c91458e7f8", kill_on_drop: false }`
[INFO] [stderr] warning: unreachable statement
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:300:9
[INFO] [stderr]     |
[INFO] [stderr] 291 | /         loop {
[INFO] [stderr] 292 | |             //let current_buffer = capture_handler.lock().unwrap().current_buffer;
[INFO] [stderr] 293 | |             //if current_buffer >= NUM_BUFFERS - 10 {
[INFO] [stderr] 294 | |             //break;
[INFO] [stderr] ...   |
[INFO] [stderr] 297 | |             //thread::sleep(ten_millis);
[INFO] [stderr] 298 | |         }
[INFO] [stderr]     | |_________- any code following this expression is unreachable
[INFO] [stderr] 299 |
[INFO] [stderr] 300 |           println!("Stopping Capture");
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `len`
[INFO] [stderr]   --> src/capture/katsukitty/fpga.rs:23:16
[INFO] [stderr]    |
[INFO] [stderr] 23 |             Ok(len) => {
[INFO] [stderr]    |                ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `device`
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:32:19
[INFO] [stderr]    |
[INFO] [stderr] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stderr]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `device_desc`
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:32:27
[INFO] [stderr]    |
[INFO] [stderr] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stderr]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `device`
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:50:19
[INFO] [stderr]    |
[INFO] [stderr] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stderr]    |                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `device_desc`
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:50:27
[INFO] [stderr]    |
[INFO] [stderr] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stderr]    |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_desc`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:32:15
[INFO] [stderr]    |
[INFO] [stderr] 32 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stderr]    |               ----^^^^^^
[INFO] [stderr]    |               |
[INFO] [stderr]    |               help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:50:15
[INFO] [stderr]    |
[INFO] [stderr] 50 |         Some((mut device, device_desc, mut handle)) => {
[INFO] [stderr]    |               ----^^^^^^
[INFO] [stderr]    |               |
[INFO] [stderr]    |               help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:217:13
[INFO] [stderr]     |
[INFO] [stderr] 217 |         for i in 0..NUM_BUFFERS {
[INFO] [stderr]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `thread_join_handle`
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:248:13
[INFO] [stderr]     |
[INFO] [stderr] 248 |         let thread_join_handle = s.spawn(|| loop {
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_join_handle`
[INFO] [stderr] 
[INFO] [stderr] warning: field `new_frame` is never read
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:193:5
[INFO] [stderr]     |
[INFO] [stderr] 190 | struct CaptureHandler<F> {
[INFO] [stderr]     |        -------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 193 |     new_frame: bool,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `CaptureHandler` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `check_fpga_programmed` is never used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:102:8
[INFO] [stderr]     |
[INFO] [stderr] 102 | pub fn check_fpga_programmed<T: UsbContext>(handle: &mut DeviceHandle<T>) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `fifo_stop` is never used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:130:8
[INFO] [stderr]     |
[INFO] [stderr] 130 | pub fn fifo_stop<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/fpga.rs:69:9
[INFO] [stderr]    |
[INFO] [stderr] 69 |         handle.write_bulk(1, &buf, timeout);
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 69 |         let _ = handle.write_bulk(1, &buf, timeout);
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/fpga.rs:89:9
[INFO] [stderr]    |
[INFO] [stderr] 89 |         handle.write_bulk(1, &data, timeout);
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 89 |         let _ = handle.write_bulk(1, &data, timeout);
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/fpga.rs:98:5
[INFO] [stderr]    |
[INFO] [stderr] 98 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 98 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:106:5
[INFO] [stderr]     |
[INFO] [stderr] 106 |     handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 106 |     let _ = handle.read_bulk(0x81, &mut buf, timeout);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:120:5
[INFO] [stderr]     |
[INFO] [stderr] 120 |     handle.write_bulk(1, &[0x65], timeout);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 120 |     let _ = handle.write_bulk(1, &[0x65], timeout);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:126:5
[INFO] [stderr]     |
[INFO] [stderr] 126 |     handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 126 |     let _ = handle.write_bulk(1, &[0x5b, 0x59, 0x03], timeout);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:127:5
[INFO] [stderr]     |
[INFO] [stderr] 127 |     handle.write_bulk(1, &[0x40], timeout);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 127 |     let _ = handle.write_bulk(1, &[0x40], timeout);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:133:5
[INFO] [stderr]     |
[INFO] [stderr] 133 |     handle.write_bulk(1, &[0x41], timeout);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 133 |     let _ = handle.write_bulk(1, &[0x41], timeout);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/fx2.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 |     handle.set_active_configuration(1);
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 11 |     let _ = handle.set_active_configuration(1);
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/fx2.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     handle.claim_interface(0);
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 13 |     let _ = handle.claim_interface(0);
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/image.rs:29:13
[INFO] [stderr]    |
[INFO] [stderr] 29 |             image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 29 |             let _ = image.save(format!("./img_out/lower_{}.png", found_frames));
[INFO] [stderr]    |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/image.rs:36:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |             image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 36 |             let _ = image.save(format!("./img_out/upper_{}.png", found_frames));
[INFO] [stderr]    |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/capture/katsukitty/image.rs:43:13
[INFO] [stderr]    |
[INFO] [stderr] 43 |             image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 43 |             let _ = image.save(format!("./img_out/audio{}.png", found_frames));
[INFO] [stderr]    |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `cappy3ds` (lib) generated 26 warnings (run `cargo fix --lib -p cappy3ds` to apply 2 suggestions)
[INFO] [stderr] warning: `cappy3ds` (lib test) generated 26 warnings (26 duplicates)
[INFO] [stderr] warning: function `connect` is never used
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub fn connect<T: UsbContext>(context: &mut T) -> Result<DeviceHandle<T>, SimpleError> {
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `open_device` is never used
[INFO] [stderr]   --> src/capture/katsukitty/mod.rs:76:4
[INFO] [stderr]    |
[INFO] [stderr] 76 | fn open_device<T: UsbContext>(
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `do_capture` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:103:8
[INFO] [stderr]     |
[INFO] [stderr] 103 | pub fn do_capture<T: UsbContext, F>(handle: &mut DeviceHandle<T>, data_callback: F)
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `transfer_finished` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:110:20
[INFO] [stderr]     |
[INFO] [stderr] 110 | extern "system" fn transfer_finished<T: UsbContext, F>(transfer_ptr: *mut usbffi::libusb_transfer)
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CaptureHandler` is never constructed
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:190:8
[INFO] [stderr]     |
[INFO] [stderr] 190 | struct CaptureHandler<F> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `NUM_BUFFERS` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:198:7
[INFO] [stderr]     |
[INFO] [stderr] 198 | const NUM_BUFFERS: usize = 20;
[INFO] [stderr]     |       ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `FRAM_BUFFER_SIZE` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:206:7
[INFO] [stderr]     |
[INFO] [stderr] 206 | const FRAM_BUFFER_SIZE: usize = 720 * 248 * 2;
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TRANSFER_SIZE` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:208:7
[INFO] [stderr]     |
[INFO] [stderr] 208 | const TRANSFER_SIZE: usize = 0x4000;
[INFO] [stderr]     |       ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:214:8
[INFO] [stderr]     |
[INFO] [stderr] 210 | / impl<F> CaptureHandler<F>
[INFO] [stderr] 211 | | where
[INFO] [stderr] 212 | |     F: FnMut(&[i16], BytesMut, BytesMut),
[INFO] [stderr]     | |_________________________________________- associated function in this implementation
[INFO] [stderr] 213 |   {
[INFO] [stderr] 214 |       fn new(data_callback: F) -> Self {
[INFO] [stderr]     |          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `bulk_read` is never used
[INFO] [stderr]    --> src/capture/katsukitty/mod.rs:231:4
[INFO] [stderr]     |
[INFO] [stderr] 231 | fn bulk_read<T: UsbContext, F>(handle: &mut DeviceHandle<T>, data_callback: F)
[INFO] [stderr]     |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `read_eeprom` is never used
[INFO] [stderr]  --> src/capture/katsukitty/fpga.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn read_eeprom<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stderr]   |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `configure_fpga` is never used
[INFO] [stderr]   --> src/capture/katsukitty/fpga.rs:37:8
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub fn configure_fpga<T: UsbContext>(handle: &mut DeviceHandle<T>, bitstream: Vec<u8>) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `configure_port` is never used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:117:8
[INFO] [stderr]     |
[INFO] [stderr] 117 | pub fn configure_port<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `fifo_start` is never used
[INFO] [stderr]    --> src/capture/katsukitty/fpga.rs:123:8
[INFO] [stderr]     |
[INFO] [stderr] 123 | pub fn fifo_start<T: UsbContext>(handle: &mut DeviceHandle<T>) {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `send_firmware` is never used
[INFO] [stderr]  --> src/capture/katsukitty/fx2.rs:6:15
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub(crate) fn send_firmware<T: UsbContext>(handle: &mut DeviceHandle<T>, firmware: Vec<u8>) {
[INFO] [stderr]   |               ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_image_data` is never used
[INFO] [stderr]   --> src/capture/katsukitty/image.rs:10:8
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub fn parse_image_data(data: &Vec<u8>) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `split_capture_buffer` is never used
[INFO] [stderr]   --> src/capture/katsukitty/parse.rs:10:8
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub fn split_capture_buffer(data: &BytesMut) -> (BytesMut, BytesMut, BytesMut) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `rgb565_to_rgb` is never used
[INFO] [stderr]   --> src/capture/katsukitty/parse.rs:44:8
[INFO] [stderr]    |
[INFO] [stderr] 44 | pub fn rgb565_to_rgb(data: &BytesMut) -> BytesMut {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `rgb565_to_rgba` is never used
[INFO] [stderr]   --> src/capture/katsukitty/parse.rs:67:8
[INFO] [stderr]    |
[INFO] [stderr] 67 | pub fn rgb565_to_rgba(data: &BytesMut) -> BytesMut {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `cappy3ds` (bin "cappy3ds" test) generated 44 warnings (25 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/cappy3ds-d64900071e7b6ba3)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/cappy3ds-921fb78030913a8f)
[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] [stderr]    Doc-tests cappy3ds
[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" "afaafac3017db4c4755df14230ed9592ece18fa73808d3911ac132c91458e7f8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "afaafac3017db4c4755df14230ed9592ece18fa73808d3911ac132c91458e7f8", kill_on_drop: false }`
[INFO] [stdout] afaafac3017db4c4755df14230ed9592ece18fa73808d3911ac132c91458e7f8
