[INFO] cloning repository https://github.com/Kamil15/stm-com-tool
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Kamil15/stm-com-tool" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKamil15%2Fstm-com-tool", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKamil15%2Fstm-com-tool'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a1e69e2f52c1585ada7011d279e042914eb8d2c9
[INFO] checking Kamil15/stm-com-tool against master#642c19bfc3a5c1de985bf5d0cc8207ac9d22708a for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKamil15%2Fstm-com-tool" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Kamil15/stm-com-tool
[INFO] finished tweaking git repo https://github.com/Kamil15/stm-com-tool
[INFO] tweaked toml for git repo https://github.com/Kamil15/stm-com-tool written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Kamil15/stm-com-tool on toolchain 642c19bfc3a5c1de985bf5d0cc8207ac9d22708a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Kamil15/stm-com-tool 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" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serialport v3.3.0
[INFO] [stderr]   Downloaded structopt-derive v0.4.13
[INFO] [stderr]   Downloaded console v0.13.0
[INFO] [stderr]   Downloaded structopt v0.3.20
[INFO] [stderr]   Downloaded unicode-segmentation v1.7.0
[INFO] [stderr]   Downloaded syn v1.0.50
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9b6e5a0228c67a107b2cfdde954782564ef85f3e38720b291543a796b75a1ff6
[INFO] running `Command { std: "docker" "start" "-a" "9b6e5a0228c67a107b2cfdde954782564ef85f3e38720b291543a796b75a1ff6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9b6e5a0228c67a107b2cfdde954782564ef85f3e38720b291543a796b75a1ff6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9b6e5a0228c67a107b2cfdde954782564ef85f3e38720b291543a796b75a1ff6", kill_on_drop: false }`
[INFO] [stdout] 9b6e5a0228c67a107b2cfdde954782564ef85f3e38720b291543a796b75a1ff6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e25491ffde55d822671d5a60d51a23aaaa6a3ce773d741884d934aca519832d6
[INFO] running `Command { std: "docker" "start" "-a" "e25491ffde55d822671d5a60d51a23aaaa6a3ce773d741884d934aca519832d6", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.80
[INFO] [stderr]    Compiling syn v1.0.50
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]    Compiling unicode-segmentation v1.7.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking regex-syntax v0.6.21
[INFO] [stderr]     Checking bytes v0.6.0
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking libudev-sys v0.1.4
[INFO] [stderr]     Checking terminal_size v0.1.15
[INFO] [stderr]     Checking libudev v0.2.0
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking aho-corasick v0.7.15
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]     Checking regex v1.4.2
[INFO] [stderr]     Checking console v0.13.0
[INFO] [stderr]     Checking serialport v3.3.0
[INFO] [stderr]    Compiling structopt-derive v0.4.13
[INFO] [stderr]     Checking structopt v0.3.20
[INFO] [stderr]     Checking stm_com_tool v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: found module declaration for lib.rs
[INFO] [stdout]  --> src/main.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub mod lib;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: lib.rs is the root of this crate's library target
[INFO] [stdout]   = help: to refer to it from other targets, use the library's name as the path
[INFO] [stdout]   = note: `#[warn(special_module_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Write` and `self`
[INFO] [stdout]  --> src/lib/codec/crc_len_coder.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io::{self, Write};
[INFO] [stdout]   |               ^^^^  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `crc16_for_u16` and `crc16`
[INFO] [stdout]  --> src/lib/codec/slip_lng_coder.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::{crc16, crc16_for_u16, Decoder, Encoder};
[INFO] [stdout]   |             ^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufMut`
[INFO] [stdout]  --> src/lib/codec/slip_lng_coder.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]   |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Write` and `self`
[INFO] [stdout]  --> src/lib/codec/slip_lng_coder.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io::{self, Write};
[INFO] [stdout]   |               ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/lib/serial_controller.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::io::{self, Write};
[INFO] [stdout]   |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> src/lib/serial_controller.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytes::*`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use bytes::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `codec::*` and `codec::lenq_coder::LenqCoder`
[INFO] [stdout]  --> src/main.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use lib::{args::*, codec::lenq_coder::LenqCoder, codec::*};
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: found module declaration for lib.rs
[INFO] [stdout]  --> src/main.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub mod lib;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: lib.rs is the root of this crate's library target
[INFO] [stdout]   = help: to refer to it from other targets, use the library's name as the path
[INFO] [stdout]   = note: `#[warn(special_module_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Write` and `self`
[INFO] [stdout]  --> src/lib/codec/crc_len_coder.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io::{self, Write};
[INFO] [stdout]   |               ^^^^  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `crc16_for_u16` and `crc16`
[INFO] [stdout]  --> src/lib/codec/slip_lng_coder.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::{crc16, crc16_for_u16, Decoder, Encoder};
[INFO] [stdout]   |             ^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufMut`
[INFO] [stdout]  --> src/lib/codec/slip_lng_coder.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]   |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Write` and `self`
[INFO] [stdout]  --> src/lib/codec/slip_lng_coder.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io::{self, Write};
[INFO] [stdout]   |               ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/lib/serial_controller.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::io::{self, Write};
[INFO] [stdout]   |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> src/lib/serial_controller.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytes::*`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use bytes::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `codec::*` and `codec::lenq_coder::LenqCoder`
[INFO] [stdout]  --> src/main.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use lib::{args::*, codec::lenq_coder::LenqCoder, codec::*};
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/lib/codec/simple_coder.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         for i in 0..n {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]   --> src/lib/codec/simple_coder.rs:90:25
[INFO] [stdout]    |
[INFO] [stdout] 90 |                         val => {
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/lib/codec/simple_coder.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         for i in 0..n {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]   --> src/lib/codec/simple_coder.rs:90:25
[INFO] [stdout]    |
[INFO] [stdout] 90 |                         val => {
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/lib/codec/lenq_coder.rs:133:25
[INFO] [stdout]     |
[INFO] [stdout] 133 |                         val => {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/lib/codec/lenq_coder.rs:133:25
[INFO] [stdout]     |
[INFO] [stdout] 133 |                         val => {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let mut n = data.remaining();
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut crc: u16 = 0xffff;
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dst`
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:44:44
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn encode(&mut self, data: Self::Item, dst: &mut BytesMut) -> Result<(), ()> {
[INFO] [stdout]    |                                            ^^^ help: if this is intentional, prefix it with an underscore: `_dst`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let mut n = data.remaining();
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crc`
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut crc: u16 = 0xffff;
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_crc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/lib/codec/mod.rs:54:7
[INFO] [stdout]    |
[INFO] [stdout] 54 |         for i in 0..8 {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let mut n = data.remaining();
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut crc: u16 = 0xffff;
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dst`
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:44:44
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn encode(&mut self, data: Self::Item, dst: &mut BytesMut) -> Result<(), ()> {
[INFO] [stdout]    |                                            ^^^ help: if this is intentional, prefix it with an underscore: `_dst`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let mut n = data.remaining();
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/lib/codec/mod.rs:98:6
[INFO] [stdout]    |
[INFO] [stdout] 98 |     for i in 0..8 {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crc`
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut crc: u16 = 0xffff;
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_crc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/lib/codec/mod.rs:54:7
[INFO] [stdout]    |
[INFO] [stdout] 54 |         for i in 0..8 {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/lib/codec/mod.rs:98:6
[INFO] [stdout]    |
[INFO] [stdout] 98 |     for i in 0..8 {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib/serial_controller.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let mut r_vec = Vec::new();
[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/lib/serial_controller.rs:95:25
[INFO] [stdout]    |
[INFO] [stdout] 95 |                     let mut val = &(*val);
[INFO] [stdout]    |                         ----^^^
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `term`
[INFO] [stdout]   --> src/lib/serial_controller.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |         let term = console::Term::stdout();
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_term`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `text`
[INFO] [stdout]   --> src/lib/serial_controller.rs:88:25
[INFO] [stdout]    |
[INFO] [stdout] 88 |                     let text = String::from_utf8_lossy(&r_vec[..y]);
[INFO] [stdout]    |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_text`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib/serial_controller.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let mut r_vec = Vec::new();
[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/lib/serial_controller.rs:95:25
[INFO] [stdout]    |
[INFO] [stdout] 95 |                     let mut val = &(*val);
[INFO] [stdout]    |                         ----^^^
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `term`
[INFO] [stdout]   --> src/lib/serial_controller.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |         let term = console::Term::stdout();
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_term`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `text`
[INFO] [stdout]   --> src/lib/serial_controller.rs:88:25
[INFO] [stdout]    |
[INFO] [stdout] 88 |                     let text = String::from_utf8_lossy(&r_vec[..y]);
[INFO] [stdout]    |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_text`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib/serial_controller.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let mut code_buffer = BytesMut::with_capacity(1024);
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code_buffer`
[INFO] [stdout]    --> src/lib/serial_controller.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let mut code_buffer = BytesMut::with_capacity(1024);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_buffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/lib/serial_controller.rs:123:25
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     let x = &mut r_bufer[0..i];
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib/serial_controller.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let mut code_buffer = BytesMut::with_capacity(1024);
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code_buffer`
[INFO] [stdout]    --> src/lib/serial_controller.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let mut code_buffer = BytesMut::with_capacity(1024);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_buffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `MAX_LEN` is never used
[INFO] [stdout]   --> src/lib/codec/simple_coder.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl SimpleCoder {
[INFO] [stdout]    | ---------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 15 |     const MAX_LEN: u16 = 1024;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `MAX_LEN` is never used
[INFO] [stdout]   --> src/lib/codec/lenq_coder.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl LenqCoder {
[INFO] [stdout]    | -------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |     const MAX_LEN: u16 = 1024;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/lib/serial_controller.rs:123:25
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     let x = &mut r_bufer[0..i];
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `MAX_LEN` is never used
[INFO] [stdout]   --> src/lib/codec/crc_len_coder.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl CRCLenCoder {
[INFO] [stdout]    | ---------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 17 |     const MAX_LEN: u16 = 1024;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constants `HEAD` and `MAX_LEN` are never used
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl SlipLnqCoder {
[INFO] [stdout]    | ----------------- associated constants in this implementation
[INFO] [stdout] 15 |     const HEAD: u8 = 0x7E;//40; //(    //def: 0xFE
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 16 |     const MAX_LEN: u16 = 1024;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Slip`, `Data`, and `Crc` are never constructed
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 76 | enum StateRead {
[INFO] [stdout]    |      --------- variants in this enum
[INFO] [stdout] 77 |     Slip,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 78 |     Head,
[INFO] [stdout] 79 |     Data,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 80 |     Crc,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StateRead` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `args` is never read
[INFO] [stdout]   --> src/lib/modes.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Interactive {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 11 |     handler: SerialController,
[INFO] [stdout] 12 |     args: ArgCommands,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `handler` is never read
[INFO] [stdout]   --> src/lib/serial_controller.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct SerialController {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 16 |     handler: JoinHandle<()>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tx` is never read
[INFO] [stdout]   --> src/lib/serial_controller.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 70 | struct SimpleSerialController {
[INFO] [stdout]    |        ---------------------- field in this struct
[INFO] [stdout] 71 |     tx: Sender<ControllerMsg>,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tx` and `decoder` are never read
[INFO] [stdout]    --> src/lib/serial_controller.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | struct CodecSerialController {
[INFO] [stdout]     |        --------------------- fields in this struct
[INFO] [stdout] 107 |     tx: Sender<ControllerMsg>,
[INFO] [stdout]     |     ^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     decoder: Box<dyn Decoder<Item = Bytes>>,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `crcValue` should have a snake case name
[INFO] [stdout]   --> src/lib/codec/mod.rs:96:10
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let mut crcValue = crc;
[INFO] [stdout]    |             ^^^^^^^^ help: convert the identifier to snake case: `crc_value`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `newByte` should have a snake case name
[INFO] [stdout]   --> src/lib/codec/mod.rs:97:10
[INFO] [stdout]    |
[INFO] [stdout] 97 |     let mut newByte = byte;
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `new_byte`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `crcValue` should have a snake case name
[INFO] [stdout]    --> src/lib/codec/mod.rs:111:10
[INFO] [stdout]     |
[INFO] [stdout] 111 |     let mut crcValue = crc;
[INFO] [stdout]     |             ^^^^^^^^ help: convert the identifier to snake case: `crc_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `MAX_LEN` is never used
[INFO] [stdout]   --> src/lib/codec/simple_coder.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl SimpleCoder {
[INFO] [stdout]    | ---------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 15 |     const MAX_LEN: u16 = 1024;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `MAX_LEN` is never used
[INFO] [stdout]   --> src/lib/codec/lenq_coder.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl LenqCoder {
[INFO] [stdout]    | -------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |     const MAX_LEN: u16 = 1024;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `MAX_LEN` is never used
[INFO] [stdout]   --> src/lib/codec/crc_len_coder.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl CRCLenCoder {
[INFO] [stdout]    | ---------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 17 |     const MAX_LEN: u16 = 1024;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constants `HEAD` and `MAX_LEN` are never used
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl SlipLnqCoder {
[INFO] [stdout]    | ----------------- associated constants in this implementation
[INFO] [stdout] 15 |     const HEAD: u8 = 0x7E;//40; //(    //def: 0xFE
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 16 |     const MAX_LEN: u16 = 1024;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Slip`, `Data`, and `Crc` are never constructed
[INFO] [stdout]   --> src/lib/codec/slip_lng_coder.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 76 | enum StateRead {
[INFO] [stdout]    |      --------- variants in this enum
[INFO] [stdout] 77 |     Slip,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 78 |     Head,
[INFO] [stdout] 79 |     Data,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 80 |     Crc,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StateRead` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `args` is never read
[INFO] [stdout]   --> src/lib/modes.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Interactive {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 11 |     handler: SerialController,
[INFO] [stdout] 12 |     args: ArgCommands,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `handler` is never read
[INFO] [stdout]   --> src/lib/serial_controller.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct SerialController {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 16 |     handler: JoinHandle<()>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tx` is never read
[INFO] [stdout]   --> src/lib/serial_controller.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 70 | struct SimpleSerialController {
[INFO] [stdout]    |        ---------------------- field in this struct
[INFO] [stdout] 71 |     tx: Sender<ControllerMsg>,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tx` and `decoder` are never read
[INFO] [stdout]    --> src/lib/serial_controller.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | struct CodecSerialController {
[INFO] [stdout]     |        --------------------- fields in this struct
[INFO] [stdout] 107 |     tx: Sender<ControllerMsg>,
[INFO] [stdout]     |     ^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     decoder: Box<dyn Decoder<Item = Bytes>>,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `crcValue` should have a snake case name
[INFO] [stdout]   --> src/lib/codec/mod.rs:96:10
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let mut crcValue = crc;
[INFO] [stdout]    |             ^^^^^^^^ help: convert the identifier to snake case: `crc_value`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `newByte` should have a snake case name
[INFO] [stdout]   --> src/lib/codec/mod.rs:97:10
[INFO] [stdout]    |
[INFO] [stdout] 97 |     let mut newByte = byte;
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `new_byte`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `crcValue` should have a snake case name
[INFO] [stdout]    --> src/lib/codec/mod.rs:111:10
[INFO] [stdout]     |
[INFO] [stdout] 111 |     let mut crcValue = crc;
[INFO] [stdout]     |             ^^^^^^^^ help: convert the identifier to snake case: `crc_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/lib/serial_controller.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 |                     self.serial.clear(ClearBuffer::All);
[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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 87 |                     let _ = self.serial.clear(ClearBuffer::All);
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/lib/serial_controller.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 |                     self.serial.clear(ClearBuffer::All);
[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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 87 |                     let _ = self.serial.clear(ClearBuffer::All);
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.14s
[INFO] running `Command { std: "docker" "inspect" "e25491ffde55d822671d5a60d51a23aaaa6a3ce773d741884d934aca519832d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e25491ffde55d822671d5a60d51a23aaaa6a3ce773d741884d934aca519832d6", kill_on_drop: false }`
[INFO] [stdout] e25491ffde55d822671d5a60d51a23aaaa6a3ce773d741884d934aca519832d6
