[INFO] cloning repository https://github.com/RadioTelescopeAGH/shield
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/RadioTelescopeAGH/shield" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRadioTelescopeAGH%2Fshield", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRadioTelescopeAGH%2Fshield'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a49d60b0b809f766dac36eccbfa53cacdc90853e
[INFO] testing RadioTelescopeAGH/shield against 1.47.0 for beta-1.48-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRadioTelescopeAGH%2Fshield" "/workspace/builds/worker-11/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-11/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/RadioTelescopeAGH/shield on toolchain 1.47.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/RadioTelescopeAGH/shield
[INFO] finished tweaking git repo https://github.com/RadioTelescopeAGH/shield
[INFO] tweaked toml for git repo https://github.com/RadioTelescopeAGH/shield written to /workspace/builds/worker-11/source/Cargo.toml
[INFO] crate git repo https://github.com/RadioTelescopeAGH/shield already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ec434645a906b318a4fdeabf90af52adb41c88d748bf472b3d52b3210114a54e
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "ec434645a906b318a4fdeabf90af52adb41c88d748bf472b3d52b3210114a54e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ec434645a906b318a4fdeabf90af52adb41c88d748bf472b3d52b3210114a54e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ec434645a906b318a4fdeabf90af52adb41c88d748bf472b3d52b3210114a54e", kill_on_drop: false }`
[INFO] [stdout] ec434645a906b318a4fdeabf90af52adb41c88d748bf472b3d52b3210114a54e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9bdea550bba148c990924cd7bde87a5b3c9a31a19611df5be0dc72b1bac1ce8d
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "9bdea550bba148c990924cd7bde87a5b3c9a31a19611df5be0dc72b1bac1ce8d", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]    Compiling cc v1.0.25
[INFO] [stderr]    Compiling termios v0.2.2
[INFO] [stderr]    Compiling ioctl-rs v0.1.6
[INFO] [stderr]    Compiling serial-core v0.4.0
[INFO] [stderr]    Compiling serial-unix v0.4.0
[INFO] [stderr]    Compiling serial v0.4.0
[INFO] [stderr]    Compiling wiringpi v0.2.4
[INFO] [stderr]    Compiling driver v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/main.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     try!(serial_port.reconfigure(&|settings| {
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         try!(settings.set_baud_rate(serial::Baud9600));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time`
[INFO] [stdout]   --> src/main.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::{thread, time};
[INFO] [stdout]    |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `A_Forward` should have an upper camel case name
[INFO] [stdout]   --> src/main.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     A_Forward(u16),
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `AForward`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `B_Forward` should have an upper camel case name
[INFO] [stdout]   --> src/main.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     B_Forward(u16),
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `BForward`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `A_Back` should have an upper camel case name
[INFO] [stdout]   --> src/main.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     A_Back(u16),
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `ABack`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `B_Back` should have an upper camel case name
[INFO] [stdout]   --> src/main.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     B_Back(u16),
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `BBack`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:95:26
[INFO] [stdout]    |
[INFO] [stdout] 95 |     pub serial_port: Box<SerialPort>,
[INFO] [stdout]    |                          ^^^^^^^^^^ help: use `dyn`: `dyn SerialPort`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `configure_port`
[INFO] [stdout]   --> src/main.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn configure_port<T: SerialPort>(serial_port: &mut T) -> io::Result<()> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `In0A` should have a snake case name
[INFO] [stdout]   --> src/main.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let In0A = pi.output_pin(MOTOR_A_IN_PIN_0);
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `in0_a`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `In1A` should have a snake case name
[INFO] [stdout]   --> src/main.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let In1A = pi.output_pin(MOTOR_A_IN_PIN_1);
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `in1_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `In0B` should have a snake case name
[INFO] [stdout]   --> src/main.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let In0B = pi.output_pin(MOTOR_B_IN_PIN_0);
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `in0_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `In1B` should have a snake case name
[INFO] [stdout]   --> src/main.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let In1B = pi.output_pin(MOTOR_B_IN_PIN_1);
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `in1_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `PWMA` should have a snake case name
[INFO] [stdout]   --> src/main.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let PWMA = pi.output_pin(MOTOR_A_PWM_PIN);
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `pwma`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `PWMB` should have a snake case name
[INFO] [stdout]   --> src/main.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let PWMB = pi.output_pin(MOTOR_B_PWM_PIN);
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `pwmb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/main.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     send.send(MotorCommand::A_Forward(100));
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 18 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 7.44s
[INFO] running `Command { std: "docker" "inspect" "9bdea550bba148c990924cd7bde87a5b3c9a31a19611df5be0dc72b1bac1ce8d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9bdea550bba148c990924cd7bde87a5b3c9a31a19611df5be0dc72b1bac1ce8d", kill_on_drop: false }`
[INFO] [stdout] 9bdea550bba148c990924cd7bde87a5b3c9a31a19611df5be0dc72b1bac1ce8d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a76a1f416f359b82ef0f4a75f952a427ecad6ebbd32000f9142bdfaaef834bc8
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "a76a1f416f359b82ef0f4a75f952a427ecad6ebbd32000f9142bdfaaef834bc8", kill_on_drop: false }`
[INFO] [stderr]    Compiling driver v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/main.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     try!(serial_port.reconfigure(&|settings| {
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         try!(settings.set_baud_rate(serial::Baud9600));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time`
[INFO] [stdout]   --> src/main.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::{thread, time};
[INFO] [stdout]    |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `A_Forward` should have an upper camel case name
[INFO] [stdout]   --> src/main.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     A_Forward(u16),
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `AForward`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `B_Forward` should have an upper camel case name
[INFO] [stdout]   --> src/main.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     B_Forward(u16),
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `BForward`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `A_Back` should have an upper camel case name
[INFO] [stdout]   --> src/main.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     A_Back(u16),
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `ABack`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `B_Back` should have an upper camel case name
[INFO] [stdout]   --> src/main.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     B_Back(u16),
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `BBack`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:95:26
[INFO] [stdout]    |
[INFO] [stdout] 95 |     pub serial_port: Box<SerialPort>,
[INFO] [stdout]    |                          ^^^^^^^^^^ help: use `dyn`: `dyn SerialPort`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `configure_port`
[INFO] [stdout]   --> src/main.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn configure_port<T: SerialPort>(serial_port: &mut T) -> io::Result<()> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `In0A` should have a snake case name
[INFO] [stdout]   --> src/main.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let In0A = pi.output_pin(MOTOR_A_IN_PIN_0);
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `in0_a`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `In1A` should have a snake case name
[INFO] [stdout]   --> src/main.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let In1A = pi.output_pin(MOTOR_A_IN_PIN_1);
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `in1_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `In0B` should have a snake case name
[INFO] [stdout]   --> src/main.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let In0B = pi.output_pin(MOTOR_B_IN_PIN_0);
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `in0_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `In1B` should have a snake case name
[INFO] [stdout]   --> src/main.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let In1B = pi.output_pin(MOTOR_B_IN_PIN_1);
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `in1_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `PWMA` should have a snake case name
[INFO] [stdout]   --> src/main.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let PWMA = pi.output_pin(MOTOR_A_PWM_PIN);
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `pwma`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `PWMB` should have a snake case name
[INFO] [stdout]   --> src/main.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let PWMB = pi.output_pin(MOTOR_B_PWM_PIN);
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `pwmb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/main.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     send.send(MotorCommand::A_Forward(100));
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 18 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.93s
[INFO] running `Command { std: "docker" "inspect" "a76a1f416f359b82ef0f4a75f952a427ecad6ebbd32000f9142bdfaaef834bc8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a76a1f416f359b82ef0f4a75f952a427ecad6ebbd32000f9142bdfaaef834bc8", kill_on_drop: false }`
[INFO] [stdout] a76a1f416f359b82ef0f4a75f952a427ecad6ebbd32000f9142bdfaaef834bc8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 5e2096a8ce729b63e8bc90245aded163afada6dacec0d9e73afb189202453acc
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "5e2096a8ce729b63e8bc90245aded163afada6dacec0d9e73afb189202453acc", kill_on_drop: false }`
[INFO] [stdout] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout] running 0 tests
[INFO] [stderr]   --> src/main.rs:99:5
[INFO] [stdout] 
[INFO] [stderr]    |
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stderr] 99 |     try!(serial_port.reconfigure(&|settings| {
[INFO] [stdout] 
[INFO] [stderr]    |     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:100:9
[INFO] [stderr]     |
[INFO] [stderr] 100 |         try!(settings.set_baud_rate(serial::Baud9600));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::env`
[INFO] [stderr]  --> src/main.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::env;
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::prelude::*`
[INFO] [stderr]  --> src/main.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::io::prelude::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `time`
[INFO] [stderr]   --> src/main.rs:12:19
[INFO] [stderr]    |
[INFO] [stderr] 12 | use std::{thread, time};
[INFO] [stderr]    |                   ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `A_Forward` should have an upper camel case name
[INFO] [stderr]   --> src/main.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 |     A_Forward(u16),
[INFO] [stderr]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `AForward`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `B_Forward` should have an upper camel case name
[INFO] [stderr]   --> src/main.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 |     B_Forward(u16),
[INFO] [stderr]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `BForward`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `A_Back` should have an upper camel case name
[INFO] [stderr]   --> src/main.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 23 |     A_Back(u16),
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case: `ABack`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `B_Back` should have an upper camel case name
[INFO] [stderr]   --> src/main.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 24 |     B_Back(u16),
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case: `BBack`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:95:26
[INFO] [stderr]    |
[INFO] [stderr] 95 |     pub serial_port: Box<SerialPort>,
[INFO] [stderr]    |                          ^^^^^^^^^^ help: use `dyn`: `dyn SerialPort`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `configure_port`
[INFO] [stderr]   --> src/main.rs:98:4
[INFO] [stderr]    |
[INFO] [stderr] 98 | fn configure_port<T: SerialPort>(serial_port: &mut T) -> io::Result<()> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `In0A` should have a snake case name
[INFO] [stderr]   --> src/main.rs:38:9
[INFO] [stderr]    |
[INFO] [stderr] 38 |     let In0A = pi.output_pin(MOTOR_A_IN_PIN_0);
[INFO] [stderr]    |         ^^^^ help: convert the identifier to snake case: `in0_a`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `In1A` should have a snake case name
[INFO] [stderr]   --> src/main.rs:39:9
[INFO] [stderr]    |
[INFO] [stderr] 39 |     let In1A = pi.output_pin(MOTOR_A_IN_PIN_1);
[INFO] [stderr]    |         ^^^^ help: convert the identifier to snake case: `in1_a`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `In0B` should have a snake case name
[INFO] [stderr]   --> src/main.rs:41:9
[INFO] [stderr]    |
[INFO] [stderr] 41 |     let In0B = pi.output_pin(MOTOR_B_IN_PIN_0);
[INFO] [stderr]    |         ^^^^ help: convert the identifier to snake case: `in0_b`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `In1B` should have a snake case name
[INFO] [stderr]   --> src/main.rs:42:9
[INFO] [stderr]    |
[INFO] [stderr] 42 |     let In1B = pi.output_pin(MOTOR_B_IN_PIN_1);
[INFO] [stderr]    |         ^^^^ help: convert the identifier to snake case: `in1_b`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `PWMA` should have a snake case name
[INFO] [stderr]   --> src/main.rs:44:9
[INFO] [stderr]    |
[INFO] [stderr] 44 |     let PWMA = pi.output_pin(MOTOR_A_PWM_PIN);
[INFO] [stderr]    |         ^^^^ help: convert the identifier to snake case: `pwma`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `PWMB` should have a snake case name
[INFO] [stderr]   --> src/main.rs:45:9
[INFO] [stderr]    |
[INFO] [stderr] 45 |     let PWMB = pi.output_pin(MOTOR_B_PWM_PIN);
[INFO] [stderr]    |         ^^^^ help: convert the identifier to snake case: `pwmb`
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]    --> src/main.rs:120:5
[INFO] [stderr]     |
[INFO] [stderr] 120 |     send.send(MotorCommand::A_Forward(100));
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: 18 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/driver-5395c7b09ecbb765
[INFO] running `Command { std: "docker" "inspect" "5e2096a8ce729b63e8bc90245aded163afada6dacec0d9e73afb189202453acc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5e2096a8ce729b63e8bc90245aded163afada6dacec0d9e73afb189202453acc", kill_on_drop: false }`
[INFO] [stdout] 5e2096a8ce729b63e8bc90245aded163afada6dacec0d9e73afb189202453acc
