[INFO] fetching crate driver-pal 0.8.0-alpha.6...
[INFO] checking driver-pal-0.8.0-alpha.6 against master#30f74ff0dc4d66debc8b50724c446f817e5f75f4 for pr-121848-1
[INFO] extracting crate driver-pal 0.8.0-alpha.6 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate driver-pal 0.8.0-alpha.6 on toolchain 30f74ff0dc4d66debc8b50724c446f817e5f75f4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate driver-pal 0.8.0-alpha.6
[INFO] finished tweaking crates.io crate driver-pal 0.8.0-alpha.6
[INFO] tweaked toml for crates.io crate driver-pal 0.8.0-alpha.6 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded simplelog v0.8.0
[INFO] [stderr]   Downloaded spidev v0.6.0
[INFO] [stderr]   Downloaded linux-embedded-hal v0.4.0
[INFO] [stderr]   Downloaded serialport v4.3.0
[INFO] [stderr]   Downloaded rusb v0.9.3
[INFO] [stderr]   Downloaded simplelog v0.9.0
[INFO] [stderr]   Downloaded driver-cp2130 v1.0.0-alpha.5
[INFO] [stderr]   Downloaded libusb1-sys v0.6.4
[INFO] [stderr]   Downloaded embedded-hal v1.0.0
[INFO] [stderr]   Downloaded embedded-hal-nb v1.0.0
[INFO] [stderr]   Downloaded gpio-cdev v0.6.0
[INFO] [stderr]   Downloaded i2cdev v0.6.0
[INFO] [stderr]   Downloaded io-kit-sys v0.4.1
[INFO] [stderr]   Downloaded unescaper v0.1.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bdd8a3009cc37bcc62bd4e6bdf244ac56005fb52ed94ed3cfe36847b9aae53f6
[INFO] running `Command { std: "docker" "start" "-a" "bdd8a3009cc37bcc62bd4e6bdf244ac56005fb52ed94ed3cfe36847b9aae53f6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bdd8a3009cc37bcc62bd4e6bdf244ac56005fb52ed94ed3cfe36847b9aae53f6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bdd8a3009cc37bcc62bd4e6bdf244ac56005fb52ed94ed3cfe36847b9aae53f6", kill_on_drop: false }`
[INFO] [stdout] bdd8a3009cc37bcc62bd4e6bdf244ac56005fb52ed94ed3cfe36847b9aae53f6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fea988a698e9911b5f318bf94a47131522827fed43475824864d3787cfa8e14d
[INFO] running `Command { std: "docker" "start" "-a" "fea988a698e9911b5f318bf94a47131522827fed43475824864d3787cfa8e14d", kill_on_drop: false }`
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking ansi_term v0.12.1
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking termcolor v1.1.3
[INFO] [stderr]     Checking embedded-hal v1.0.0
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking chrono v0.4.37
[INFO] [stderr]     Checking toml v0.5.11
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]    Compiling structopt-derive v0.4.18
[INFO] [stderr]     Checking simplelog v0.8.0
[INFO] [stderr]     Checking structopt v0.3.26
[INFO] [stderr]     Checking driver-pal v0.8.0-alpha.6 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]  --> src/mock.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use embedded_hal::spi::blocking::Operation as SpiOperation;
[INFO] [stdout]   |                        ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]    --> src/hal/mod.rs:202:24
[INFO] [stdout]     |
[INFO] [stdout] 202 | use embedded_hal::spi::blocking::Operation;
[INFO] [stdout]     |                        ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::delay::blocking`
[INFO] [stdout]  --> src/wrapper.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use embedded_hal::delay::blocking::DelayUs;
[INFO] [stdout]   |                          ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]  --> src/mock.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use embedded_hal::spi::blocking::Operation as SpiOperation;
[INFO] [stdout]   |                        ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::delay::blocking`
[INFO] [stdout]    --> src/mock.rs:510:30
[INFO] [stdout]     |
[INFO] [stdout] 510 |     use embedded_hal::delay::blocking::*;
[INFO] [stdout]     |                              ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::digital::blocking`
[INFO] [stdout]    --> src/mock.rs:511:32
[INFO] [stdout]     |
[INFO] [stdout] 511 |     use embedded_hal::digital::blocking::*;
[INFO] [stdout]     |                                ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]    --> src/mock.rs:512:28
[INFO] [stdout]     |
[INFO] [stdout] 512 |     use embedded_hal::spi::blocking::*;
[INFO] [stdout]     |                            ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]    --> src/hal/mod.rs:202:24
[INFO] [stdout]     |
[INFO] [stdout] 202 | use embedded_hal::spi::blocking::Operation;
[INFO] [stdout]     |                        ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::delay::blocking`
[INFO] [stdout]  --> src/wrapper.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use embedded_hal::delay::blocking::DelayUs;
[INFO] [stdout]   |                          ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::digital::blocking`
[INFO] [stdout]  --> src/wrapper.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use embedded_hal::digital::blocking::{InputPin, OutputPin};
[INFO] [stdout]   |                            ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `embedded_hal::spi::blocking`, `embedded_hal::spi::blocking`
[INFO] [stdout]  --> src/wrapper.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use embedded_hal::spi::blocking::{self as spi, Operation, Transfer, TransferInplace, Write};
[INFO] [stdout]   |                        ^^^^^^^^   ^^^^^^^^^^^ no `blocking` in `spi`
[INFO] [stdout]   |                        |
[INFO] [stdout]   |                        could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]    --> src/lib.rs:153:24
[INFO] [stdout]     |
[INFO] [stdout] 153 | use embedded_hal::spi::blocking::{Transactional, Operation};
[INFO] [stdout]     |                        ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::digital::blocking`
[INFO] [stdout]  --> src/wrapper.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use embedded_hal::digital::blocking::{InputPin, OutputPin};
[INFO] [stdout]   |                            ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `embedded_hal::spi::blocking`, `embedded_hal::spi::blocking`
[INFO] [stdout]  --> src/wrapper.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use embedded_hal::spi::blocking::{self as spi, Operation, Transfer, TransferInplace, Write};
[INFO] [stdout]   |                        ^^^^^^^^   ^^^^^^^^^^^ no `blocking` in `spi`
[INFO] [stdout]   |                        |
[INFO] [stdout]   |                        could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]    --> src/lib.rs:153:24
[INFO] [stdout]     |
[INFO] [stdout] 153 | use embedded_hal::spi::blocking::{Transactional, Operation};
[INFO] [stdout]     |                        ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]    --> src/mock.rs:310:27
[INFO] [stdout]     |
[INFO] [stdout] 310 | impl embedded_hal::delay::blocking::DelayUs for Spi {
[INFO] [stdout]     |                           ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]    --> src/mock.rs:310:27
[INFO] [stdout]     |
[INFO] [stdout] 310 | impl embedded_hal::delay::blocking::DelayUs for Spi {
[INFO] [stdout]     |                           ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/mock.rs:326:25
[INFO] [stdout]     |
[INFO] [stdout] 326 | impl embedded_hal::spi::blocking::TransferInplace<u8> for Spi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/mock.rs:326:25
[INFO] [stdout]     |
[INFO] [stdout] 326 | impl embedded_hal::spi::blocking::TransferInplace<u8> for Spi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/mock.rs:355:25
[INFO] [stdout]     |
[INFO] [stdout] 355 | impl embedded_hal::spi::blocking::Write<u8> for Spi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/mock.rs:355:25
[INFO] [stdout]     |
[INFO] [stdout] 355 | impl embedded_hal::spi::blocking::Write<u8> for Spi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/mock.rs:370:25
[INFO] [stdout]     |
[INFO] [stdout] 370 | impl embedded_hal::spi::blocking::Transactional<u8> for Spi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/mock.rs:370:25
[INFO] [stdout]     |
[INFO] [stdout] 370 | impl embedded_hal::spi::blocking::Transactional<u8> for Spi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/mock.rs:416:29
[INFO] [stdout]     |
[INFO] [stdout] 416 | impl embedded_hal::digital::blocking::InputPin for Pin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/mock.rs:416:29
[INFO] [stdout]     |
[INFO] [stdout] 416 | impl embedded_hal::digital::blocking::InputPin for Pin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/mock.rs:457:29
[INFO] [stdout]     |
[INFO] [stdout] 457 | impl embedded_hal::digital::blocking::OutputPin for Pin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/mock.rs:457:29
[INFO] [stdout]     |
[INFO] [stdout] 457 | impl embedded_hal::digital::blocking::OutputPin for Pin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]    --> src/mock.rs:489:27
[INFO] [stdout]     |
[INFO] [stdout] 489 | impl embedded_hal::delay::blocking::DelayUs for Delay {
[INFO] [stdout]     |                           ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]    --> src/mock.rs:489:27
[INFO] [stdout]     |
[INFO] [stdout] 489 | impl embedded_hal::delay::blocking::DelayUs for Delay {
[INFO] [stdout]     |                           ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:156:25
[INFO] [stdout]     |
[INFO] [stdout] 156 | impl embedded_hal::spi::blocking::TransferInplace<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:156:25
[INFO] [stdout]     |
[INFO] [stdout] 156 | impl embedded_hal::spi::blocking::TransferInplace<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:170:25
[INFO] [stdout]     |
[INFO] [stdout] 170 | impl embedded_hal::spi::blocking::Transfer<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:170:25
[INFO] [stdout]     |
[INFO] [stdout] 170 | impl embedded_hal::spi::blocking::Transfer<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:184:25
[INFO] [stdout]     |
[INFO] [stdout] 184 | impl embedded_hal::spi::blocking::Write<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:184:25
[INFO] [stdout]     |
[INFO] [stdout] 184 | impl embedded_hal::spi::blocking::Write<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:204:25
[INFO] [stdout]     |
[INFO] [stdout] 204 | impl embedded_hal::spi::blocking::Transactional<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:204:25
[INFO] [stdout]     |
[INFO] [stdout] 204 | impl embedded_hal::spi::blocking::Transactional<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/hal/mod.rs:228:29
[INFO] [stdout]     |
[INFO] [stdout] 228 | impl embedded_hal::digital::blocking::InputPin for HalInputPin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/hal/mod.rs:228:29
[INFO] [stdout]     |
[INFO] [stdout] 228 | impl embedded_hal::digital::blocking::InputPin for HalInputPin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/hal/mod.rs:263:29
[INFO] [stdout]     |
[INFO] [stdout] 263 | impl embedded_hal::digital::blocking::OutputPin for HalOutputPin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/hal/mod.rs:263:29
[INFO] [stdout]     |
[INFO] [stdout] 263 | impl embedded_hal::digital::blocking::OutputPin for HalOutputPin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]    --> src/hal/mod.rs:318:27
[INFO] [stdout]     |
[INFO] [stdout] 318 | impl embedded_hal::delay::blocking::DelayUs for HalDelay {
[INFO] [stdout]     |                           ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]    --> src/hal/mod.rs:318:27
[INFO] [stdout]     |
[INFO] [stdout] 318 | impl embedded_hal::delay::blocking::DelayUs for HalDelay {
[INFO] [stdout]     |                           ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]   --> src/lib.rs:55:26
[INFO] [stdout]    |
[INFO] [stdout] 55 |     + embedded_hal::spi::blocking::Transactional<u8, Error = E>
[INFO] [stdout]    |                          ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]   --> src/lib.rs:59:28
[INFO] [stdout]    |
[INFO] [stdout] 59 |     + embedded_hal::delay::blocking::DelayUs
[INFO] [stdout]    |                            ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]   --> src/lib.rs:55:26
[INFO] [stdout]    |
[INFO] [stdout] 55 |     + embedded_hal::spi::blocking::Transactional<u8, Error = E>
[INFO] [stdout]    |                          ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]   --> src/lib.rs:67:30
[INFO] [stdout]    |
[INFO] [stdout] 67 |         + embedded_hal::spi::blocking::Transactional<u8, Error = E>
[INFO] [stdout]    |                              ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]   --> src/lib.rs:59:28
[INFO] [stdout]    |
[INFO] [stdout] 59 |     + embedded_hal::delay::blocking::DelayUs
[INFO] [stdout]    |                            ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]   --> src/lib.rs:71:32
[INFO] [stdout]    |
[INFO] [stdout] 71 |         + embedded_hal::delay::blocking::DelayUs
[INFO] [stdout]    |                                ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]   --> src/lib.rs:67:30
[INFO] [stdout]    |
[INFO] [stdout] 67 |         + embedded_hal::spi::blocking::Transactional<u8, Error = E>
[INFO] [stdout]    |                              ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]   --> src/lib.rs:94:47
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub type Transaction<'a> = embedded_hal::spi::blocking::Operation<'a, u8>;
[INFO] [stdout]    |                                               ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]   --> src/lib.rs:71:32
[INFO] [stdout]    |
[INFO] [stdout] 71 |         + embedded_hal::delay::blocking::DelayUs
[INFO] [stdout]    |                                ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Vec` is imported redundantly
[INFO] [stdout]  --> src/mock.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::vec::Vec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Vec` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/mock.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{Busy, Error, PinState, Ready, Reset};
[INFO] [stdout]   |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `String` is imported redundantly
[INFO] [stdout]  --> src/hal/mod.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::string::{String, ToString};
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout]  --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `String` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `ToString` is imported redundantly
[INFO] [stdout]  --> src/hal/mod.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::string::{String, ToString};
[INFO] [stdout]   |                           ^^^^^^^^
[INFO] [stdout]  --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `ToString` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]   --> src/lib.rs:94:47
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub type Transaction<'a> = embedded_hal::spi::blocking::Operation<'a, u8>;
[INFO] [stdout]    |                                               ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Vec` is imported redundantly
[INFO] [stdout]  --> src/mock.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::vec::Vec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Vec` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/mock.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{Busy, Error, PinState, Ready, Reset};
[INFO] [stdout]   |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `panic`
[INFO] [stdout]    --> src/mock.rs:508:15
[INFO] [stdout]     |
[INFO] [stdout] 508 |     use std::{panic, vec};
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `String` is imported redundantly
[INFO] [stdout]  --> src/hal/mod.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::string::{String, ToString};
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout]  --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `String` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `ToString` is imported redundantly
[INFO] [stdout]  --> src/hal/mod.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::string::{String, ToString};
[INFO] [stdout]   |                           ^^^^^^^^
[INFO] [stdout]  --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `ToString` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:100:74
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:100:74
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:119:59
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:119:59
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:138:80
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:138:80
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:209:51
[INFO] [stdout]     |
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:209:51
[INFO] [stdout]     |
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PinError: embedded_hal::digital::Error` is not satisfied
[INFO] [stdout]    --> src/mock.rs:485:18
[INFO] [stdout]     |
[INFO] [stdout] 485 |     type Error = PinError;
[INFO] [stdout]     |                  ^^^^^^^^ the trait `embedded_hal::digital::Error` is not implemented for `PinError`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `embedded_hal::digital::Error`:
[INFO] [stdout]               embedded_hal::digital::ErrorKind
[INFO] [stdout]               Infallible
[INFO] [stdout] note: required by a bound in `embedded_hal::digital::ErrorType::Error`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/embedded-hal-1.0.0/src/digital.rs:61:17
[INFO] [stdout]     |
[INFO] [stdout] 61  |     type Error: Error;
[INFO] [stdout]     |                 ^^^^^ required by this bound in `ErrorType::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PinError: embedded_hal::digital::Error` is not satisfied
[INFO] [stdout]    --> src/mock.rs:485:18
[INFO] [stdout]     |
[INFO] [stdout] 485 |     type Error = PinError;
[INFO] [stdout]     |                  ^^^^^^^^ the trait `embedded_hal::digital::Error` is not implemented for `PinError`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `embedded_hal::digital::Error`:
[INFO] [stdout]               embedded_hal::digital::ErrorKind
[INFO] [stdout]               Infallible
[INFO] [stdout] note: required by a bound in `embedded_hal::digital::ErrorType::Error`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/embedded-hal-1.0.0/src/digital.rs:61:17
[INFO] [stdout]     |
[INFO] [stdout] 61  |     type Error: Error;
[INFO] [stdout]     |                 ^^^^^ required by this bound in `ErrorType::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `HalError: embedded_hal::digital::Error` is not satisfied
[INFO] [stdout]    --> src/hal/mod.rs:250:18
[INFO] [stdout]     |
[INFO] [stdout] 250 |     type Error = HalError;
[INFO] [stdout]     |                  ^^^^^^^^ the trait `embedded_hal::digital::Error` is not implemented for `HalError`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `embedded_hal::digital::Error`:
[INFO] [stdout]               embedded_hal::digital::ErrorKind
[INFO] [stdout]               Infallible
[INFO] [stdout] note: required by a bound in `embedded_hal::digital::ErrorType::Error`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/embedded-hal-1.0.0/src/digital.rs:61:17
[INFO] [stdout]     |
[INFO] [stdout] 61  |     type Error: Error;
[INFO] [stdout]     |                 ^^^^^ required by this bound in `ErrorType::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `HalError: embedded_hal::digital::Error` is not satisfied
[INFO] [stdout]    --> src/hal/mod.rs:293:18
[INFO] [stdout]     |
[INFO] [stdout] 293 |     type Error = HalError;
[INFO] [stdout]     |                  ^^^^^^^^ the trait `embedded_hal::digital::Error` is not implemented for `HalError`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `embedded_hal::digital::Error`:
[INFO] [stdout]               embedded_hal::digital::ErrorKind
[INFO] [stdout]               Infallible
[INFO] [stdout] note: required by a bound in `embedded_hal::digital::ErrorType::Error`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/embedded-hal-1.0.0/src/digital.rs:61:17
[INFO] [stdout]     |
[INFO] [stdout] 61  |     type Error: Error;
[INFO] [stdout]     |                 ^^^^^ required by this bound in `ErrorType::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `HalError: embedded_hal::digital::Error` is not satisfied
[INFO] [stdout]    --> src/hal/mod.rs:250:18
[INFO] [stdout]     |
[INFO] [stdout] 250 |     type Error = HalError;
[INFO] [stdout]     |                  ^^^^^^^^ the trait `embedded_hal::digital::Error` is not implemented for `HalError`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `embedded_hal::digital::Error`:
[INFO] [stdout]               embedded_hal::digital::ErrorKind
[INFO] [stdout]               Infallible
[INFO] [stdout] note: required by a bound in `embedded_hal::digital::ErrorType::Error`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/embedded-hal-1.0.0/src/digital.rs:61:17
[INFO] [stdout]     |
[INFO] [stdout] 61  |     type Error: Error;
[INFO] [stdout]     |                 ^^^^^ required by this bound in `ErrorType::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `HalError: embedded_hal::digital::Error` is not satisfied
[INFO] [stdout]    --> src/hal/mod.rs:293:18
[INFO] [stdout]     |
[INFO] [stdout] 293 |     type Error = HalError;
[INFO] [stdout]     |                  ^^^^^^^^ the trait `embedded_hal::digital::Error` is not implemented for `HalError`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `embedded_hal::digital::Error`:
[INFO] [stdout]               embedded_hal::digital::ErrorKind
[INFO] [stdout]               Infallible
[INFO] [stdout] note: required by a bound in `embedded_hal::digital::ErrorType::Error`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/embedded-hal-1.0.0/src/digital.rs:61:17
[INFO] [stdout]     |
[INFO] [stdout] 61  |     type Error: Error;
[INFO] [stdout]     |                 ^^^^^ required by this bound in `ErrorType::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 32 previous errors; 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0223, E0277, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0223`.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 35 previous errors; 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0223, E0277, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0223`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `driver-pal` (lib) due to 33 previous errors; 4 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `driver-pal` (lib test) due to 36 previous errors; 5 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "fea988a698e9911b5f318bf94a47131522827fed43475824864d3787cfa8e14d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fea988a698e9911b5f318bf94a47131522827fed43475824864d3787cfa8e14d", kill_on_drop: false }`
[INFO] [stdout] fea988a698e9911b5f318bf94a47131522827fed43475824864d3787cfa8e14d
[INFO] checking driver-pal-0.8.0-alpha.6 against try#72eda894eb3548c7ba774079ce0afab42958d4ee for pr-121848-1
[INFO] extracting crate driver-pal 0.8.0-alpha.6 into /workspace/builds/worker-5-tc2/source
[INFO] validating manifest of crates.io crate driver-pal 0.8.0-alpha.6 on toolchain 72eda894eb3548c7ba774079ce0afab42958d4ee
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate driver-pal 0.8.0-alpha.6
[INFO] finished tweaking crates.io crate driver-pal 0.8.0-alpha.6
[INFO] tweaked toml for crates.io crate driver-pal 0.8.0-alpha.6 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] dceb8078d783eccb3d5b13f53009cae17849f19af4ace66535eb67b4a1ff019b
[INFO] running `Command { std: "docker" "start" "-a" "dceb8078d783eccb3d5b13f53009cae17849f19af4ace66535eb67b4a1ff019b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dceb8078d783eccb3d5b13f53009cae17849f19af4ace66535eb67b4a1ff019b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dceb8078d783eccb3d5b13f53009cae17849f19af4ace66535eb67b4a1ff019b", kill_on_drop: false }`
[INFO] [stdout] dceb8078d783eccb3d5b13f53009cae17849f19af4ace66535eb67b4a1ff019b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6e08bad8ed1338725eb3edfc2e2d01d50ba68cb3bc24330d10e1199a3be699a3
[INFO] running `Command { std: "docker" "start" "-a" "6e08bad8ed1338725eb3edfc2e2d01d50ba68cb3bc24330d10e1199a3be699a3", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking ansi_term v0.12.1
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]     Checking termcolor v1.1.3
[INFO] [stderr]     Checking embedded-hal v1.0.0
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking chrono v0.4.37
[INFO] [stderr]     Checking toml v0.5.11
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]    Compiling structopt-derive v0.4.18
[INFO] [stderr]     Checking simplelog v0.8.0
[INFO] [stderr]     Checking structopt v0.3.26
[INFO] [stderr]     Checking driver-pal v0.8.0-alpha.6 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]  --> src/mock.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use embedded_hal::spi::blocking::Operation as SpiOperation;
[INFO] [stdout]   |                        ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]    --> src/hal/mod.rs:202:24
[INFO] [stdout]     |
[INFO] [stdout] 202 | use embedded_hal::spi::blocking::Operation;
[INFO] [stdout]     |                        ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::delay::blocking`
[INFO] [stdout]  --> src/wrapper.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use embedded_hal::delay::blocking::DelayUs;
[INFO] [stdout]   |                          ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]  --> src/mock.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use embedded_hal::spi::blocking::Operation as SpiOperation;
[INFO] [stdout]   |                        ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::delay::blocking`
[INFO] [stdout]    --> src/mock.rs:510:30
[INFO] [stdout]     |
[INFO] [stdout] 510 |     use embedded_hal::delay::blocking::*;
[INFO] [stdout]     |                              ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::digital::blocking`
[INFO] [stdout]    --> src/mock.rs:511:32
[INFO] [stdout]     |
[INFO] [stdout] 511 |     use embedded_hal::digital::blocking::*;
[INFO] [stdout]     |                                ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]    --> src/mock.rs:512:28
[INFO] [stdout]     |
[INFO] [stdout] 512 |     use embedded_hal::spi::blocking::*;
[INFO] [stdout]     |                            ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]    --> src/hal/mod.rs:202:24
[INFO] [stdout]     |
[INFO] [stdout] 202 | use embedded_hal::spi::blocking::Operation;
[INFO] [stdout]     |                        ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::delay::blocking`
[INFO] [stdout]  --> src/wrapper.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use embedded_hal::delay::blocking::DelayUs;
[INFO] [stdout]   |                          ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::digital::blocking`
[INFO] [stdout]  --> src/wrapper.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use embedded_hal::digital::blocking::{InputPin, OutputPin};
[INFO] [stdout]   |                            ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `embedded_hal::spi::blocking`, `embedded_hal::spi::blocking`
[INFO] [stdout]  --> src/wrapper.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use embedded_hal::spi::blocking::{self as spi, Operation, Transfer, TransferInplace, Write};
[INFO] [stdout]   |                        ^^^^^^^^   ^^^^^^^^^^^ no `blocking` in `spi`
[INFO] [stdout]   |                        |
[INFO] [stdout]   |                        could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::digital::blocking`
[INFO] [stdout]  --> src/wrapper.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use embedded_hal::digital::blocking::{InputPin, OutputPin};
[INFO] [stdout]   |                            ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]    --> src/lib.rs:153:24
[INFO] [stdout]     |
[INFO] [stdout] 153 | use embedded_hal::spi::blocking::{Transactional, Operation};
[INFO] [stdout]     |                        ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `embedded_hal::spi::blocking`, `embedded_hal::spi::blocking`
[INFO] [stdout]  --> src/wrapper.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use embedded_hal::spi::blocking::{self as spi, Operation, Transfer, TransferInplace, Write};
[INFO] [stdout]   |                        ^^^^^^^^   ^^^^^^^^^^^ no `blocking` in `spi`
[INFO] [stdout]   |                        |
[INFO] [stdout]   |                        could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `embedded_hal::spi::blocking`
[INFO] [stdout]    --> src/lib.rs:153:24
[INFO] [stdout]     |
[INFO] [stdout] 153 | use embedded_hal::spi::blocking::{Transactional, Operation};
[INFO] [stdout]     |                        ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]    --> src/mock.rs:310:27
[INFO] [stdout]     |
[INFO] [stdout] 310 | impl embedded_hal::delay::blocking::DelayUs for Spi {
[INFO] [stdout]     |                           ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]    --> src/mock.rs:310:27
[INFO] [stdout]     |
[INFO] [stdout] 310 | impl embedded_hal::delay::blocking::DelayUs for Spi {
[INFO] [stdout]     |                           ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/mock.rs:326:25
[INFO] [stdout]     |
[INFO] [stdout] 326 | impl embedded_hal::spi::blocking::TransferInplace<u8> for Spi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/mock.rs:326:25
[INFO] [stdout]     |
[INFO] [stdout] 326 | impl embedded_hal::spi::blocking::TransferInplace<u8> for Spi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/mock.rs:355:25
[INFO] [stdout]     |
[INFO] [stdout] 355 | impl embedded_hal::spi::blocking::Write<u8> for Spi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/mock.rs:355:25
[INFO] [stdout]     |
[INFO] [stdout] 355 | impl embedded_hal::spi::blocking::Write<u8> for Spi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/mock.rs:370:25
[INFO] [stdout]     |
[INFO] [stdout] 370 | impl embedded_hal::spi::blocking::Transactional<u8> for Spi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/mock.rs:370:25
[INFO] [stdout]     |
[INFO] [stdout] 370 | impl embedded_hal::spi::blocking::Transactional<u8> for Spi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/mock.rs:416:29
[INFO] [stdout]     |
[INFO] [stdout] 416 | impl embedded_hal::digital::blocking::InputPin for Pin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/mock.rs:416:29
[INFO] [stdout]     |
[INFO] [stdout] 416 | impl embedded_hal::digital::blocking::InputPin for Pin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/mock.rs:457:29
[INFO] [stdout]     |
[INFO] [stdout] 457 | impl embedded_hal::digital::blocking::OutputPin for Pin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/mock.rs:457:29
[INFO] [stdout]     |
[INFO] [stdout] 457 | impl embedded_hal::digital::blocking::OutputPin for Pin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]    --> src/mock.rs:489:27
[INFO] [stdout]     |
[INFO] [stdout] 489 | impl embedded_hal::delay::blocking::DelayUs for Delay {
[INFO] [stdout]     |                           ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]    --> src/mock.rs:489:27
[INFO] [stdout]     |
[INFO] [stdout] 489 | impl embedded_hal::delay::blocking::DelayUs for Delay {
[INFO] [stdout]     |                           ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:156:25
[INFO] [stdout]     |
[INFO] [stdout] 156 | impl embedded_hal::spi::blocking::TransferInplace<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:156:25
[INFO] [stdout]     |
[INFO] [stdout] 156 | impl embedded_hal::spi::blocking::TransferInplace<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:170:25
[INFO] [stdout]     |
[INFO] [stdout] 170 | impl embedded_hal::spi::blocking::Transfer<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:170:25
[INFO] [stdout]     |
[INFO] [stdout] 170 | impl embedded_hal::spi::blocking::Transfer<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:184:25
[INFO] [stdout]     |
[INFO] [stdout] 184 | impl embedded_hal::spi::blocking::Write<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:184:25
[INFO] [stdout]     |
[INFO] [stdout] 184 | impl embedded_hal::spi::blocking::Write<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:204:25
[INFO] [stdout]     |
[INFO] [stdout] 204 | impl embedded_hal::spi::blocking::Transactional<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]    --> src/hal/mod.rs:204:25
[INFO] [stdout]     |
[INFO] [stdout] 204 | impl embedded_hal::spi::blocking::Transactional<u8> for HalSpi {
[INFO] [stdout]     |                         ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/hal/mod.rs:228:29
[INFO] [stdout]     |
[INFO] [stdout] 228 | impl embedded_hal::digital::blocking::InputPin for HalInputPin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/hal/mod.rs:228:29
[INFO] [stdout]     |
[INFO] [stdout] 228 | impl embedded_hal::digital::blocking::InputPin for HalInputPin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/hal/mod.rs:263:29
[INFO] [stdout]     |
[INFO] [stdout] 263 | impl embedded_hal::digital::blocking::OutputPin for HalOutputPin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `digital`
[INFO] [stdout]    --> src/hal/mod.rs:263:29
[INFO] [stdout]     |
[INFO] [stdout] 263 | impl embedded_hal::digital::blocking::OutputPin for HalOutputPin {
[INFO] [stdout]     |                             ^^^^^^^^ could not find `blocking` in `digital`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]    --> src/hal/mod.rs:318:27
[INFO] [stdout]     |
[INFO] [stdout] 318 | impl embedded_hal::delay::blocking::DelayUs for HalDelay {
[INFO] [stdout]     |                           ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]    --> src/hal/mod.rs:318:27
[INFO] [stdout]     |
[INFO] [stdout] 318 | impl embedded_hal::delay::blocking::DelayUs for HalDelay {
[INFO] [stdout]     |                           ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]   --> src/lib.rs:55:26
[INFO] [stdout]    |
[INFO] [stdout] 55 |     + embedded_hal::spi::blocking::Transactional<u8, Error = E>
[INFO] [stdout]    |                          ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]   --> src/lib.rs:55:26
[INFO] [stdout]    |
[INFO] [stdout] 55 |     + embedded_hal::spi::blocking::Transactional<u8, Error = E>
[INFO] [stdout]    |                          ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]   --> src/lib.rs:59:28
[INFO] [stdout]    |
[INFO] [stdout] 59 |     + embedded_hal::delay::blocking::DelayUs
[INFO] [stdout]    |                            ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]   --> src/lib.rs:67:30
[INFO] [stdout]    |
[INFO] [stdout] 67 |         + embedded_hal::spi::blocking::Transactional<u8, Error = E>
[INFO] [stdout]    |                              ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]   --> src/lib.rs:59:28
[INFO] [stdout]    |
[INFO] [stdout] 59 |     + embedded_hal::delay::blocking::DelayUs
[INFO] [stdout]    |                            ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]   --> src/lib.rs:71:32
[INFO] [stdout]    |
[INFO] [stdout] 71 |         + embedded_hal::delay::blocking::DelayUs
[INFO] [stdout]    |                                ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]   --> src/lib.rs:67:30
[INFO] [stdout]    |
[INFO] [stdout] 67 |         + embedded_hal::spi::blocking::Transactional<u8, Error = E>
[INFO] [stdout]    |                              ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `delay`
[INFO] [stdout]   --> src/lib.rs:71:32
[INFO] [stdout]    |
[INFO] [stdout] 71 |         + embedded_hal::delay::blocking::DelayUs
[INFO] [stdout]    |                                ^^^^^^^^ could not find `blocking` in `delay`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]   --> src/lib.rs:94:47
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub type Transaction<'a> = embedded_hal::spi::blocking::Operation<'a, u8>;
[INFO] [stdout]    |                                               ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Vec` is imported redundantly
[INFO] [stdout]  --> src/mock.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::vec::Vec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Vec` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/mock.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{Busy, Error, PinState, Ready, Reset};
[INFO] [stdout]   |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `String` is imported redundantly
[INFO] [stdout]  --> src/hal/mod.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::string::{String, ToString};
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout]  --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `String` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `ToString` is imported redundantly
[INFO] [stdout]  --> src/hal/mod.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::string::{String, ToString};
[INFO] [stdout]   |                           ^^^^^^^^
[INFO] [stdout]  --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `ToString` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `blocking` in `spi`
[INFO] [stdout]   --> src/lib.rs:94:47
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub type Transaction<'a> = embedded_hal::spi::blocking::Operation<'a, u8>;
[INFO] [stdout]    |                                               ^^^^^^^^ could not find `blocking` in `spi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Vec` is imported redundantly
[INFO] [stdout]  --> src/mock.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::vec::Vec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Vec` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/mock.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{Busy, Error, PinState, Ready, Reset};
[INFO] [stdout]   |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `panic`
[INFO] [stdout]    --> src/mock.rs:508:15
[INFO] [stdout]     |
[INFO] [stdout] 508 |     use std::{panic, vec};
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `String` is imported redundantly
[INFO] [stdout]  --> src/hal/mod.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::string::{String, ToString};
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout]  --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `String` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `ToString` is imported redundantly
[INFO] [stdout]  --> src/hal/mod.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::string::{String, ToString};
[INFO] [stdout]   |                           ^^^^^^^^
[INFO] [stdout]  --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `ToString` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:100:74
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:100:74
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 100 |     fn transfer_inplace<'w>(&mut self, data: &'w mut [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:119:59
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:119:59
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 119 |     fn write<'w>(&mut self, data: &'w [u8]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:138:80
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:138:80
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 138 |     fn exec<'a>(&mut self, operations: &mut [Operation<'a, u8>]) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:209:51
[INFO] [stdout]     |
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0223]: ambiguous associated type
[INFO] [stdout]    --> src/wrapper.rs:209:51
[INFO] [stdout]     |
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), Self::Error> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use fully-qualified syntax
[INFO] [stdout]     |
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Busy>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixRead>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as PrefixWrite>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 209 |     fn delay_us(&mut self, us: u32) -> Result<(), <wrapper::Wrapper<Spi, CsPin, BusyPin, ReadyPin, ResetPin, Delay> as Ready>::Error> {
[INFO] [stdout]     |                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout]       and 5 other candidates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PinError: embedded_hal::digital::Error` is not satisfied
[INFO] [stdout]    --> src/mock.rs:485:18
[INFO] [stdout]     |
[INFO] [stdout] 485 |     type Error = PinError;
[INFO] [stdout]     |                  ^^^^^^^^ the trait `embedded_hal::digital::Error` is not implemented for `PinError`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `embedded_hal::digital::Error`:
[INFO] [stdout]               embedded_hal::digital::ErrorKind
[INFO] [stdout]               Infallible
[INFO] [stdout] note: required by a bound in `embedded_hal::digital::ErrorType::Error`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/embedded-hal-1.0.0/src/digital.rs:61:17
[INFO] [stdout]     |
[INFO] [stdout] 61  |     type Error: Error;
[INFO] [stdout]     |                 ^^^^^ required by this bound in `ErrorType::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PinError: embedded_hal::digital::Error` is not satisfied
[INFO] [stdout]    --> src/mock.rs:485:18
[INFO] [stdout]     |
[INFO] [stdout] 485 |     type Error = PinError;
[INFO] [stdout]     |                  ^^^^^^^^ the trait `embedded_hal::digital::Error` is not implemented for `PinError`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `embedded_hal::digital::Error`:
[INFO] [stdout]               embedded_hal::digital::ErrorKind
[INFO] [stdout]               Infallible
[INFO] [stdout] note: required by a bound in `embedded_hal::digital::ErrorType::Error`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/embedded-hal-1.0.0/src/digital.rs:61:17
[INFO] [stdout]     |
[INFO] [stdout] 61  |     type Error: Error;
[INFO] [stdout]     |                 ^^^^^ required by this bound in `ErrorType::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `HalError: embedded_hal::digital::Error` is not satisfied
[INFO] [stdout]    --> src/hal/mod.rs:250:18
[INFO] [stdout]     |
[INFO] [stdout] 250 |     type Error = HalError;
[INFO] [stdout]     |                  ^^^^^^^^ the trait `embedded_hal::digital::Error` is not implemented for `HalError`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `embedded_hal::digital::Error`:
[INFO] [stdout]               embedded_hal::digital::ErrorKind
[INFO] [stdout]               Infallible
[INFO] [stdout] note: required by a bound in `embedded_hal::digital::ErrorType::Error`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/embedded-hal-1.0.0/src/digital.rs:61:17
[INFO] [stdout]     |
[INFO] [stdout] 61  |     type Error: Error;
[INFO] [stdout]     |                 ^^^^^ required by this bound in `ErrorType::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `HalError: embedded_hal::digital::Error` is not satisfied
[INFO] [stdout]    --> src/hal/mod.rs:293:18
[INFO] [stdout]     |
[INFO] [stdout] 293 |     type Error = HalError;
[INFO] [stdout]     |                  ^^^^^^^^ the trait `embedded_hal::digital::Error` is not implemented for `HalError`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `embedded_hal::digital::Error`:
[INFO] [stdout]               embedded_hal::digital::ErrorKind
[INFO] [stdout]               Infallible
[INFO] [stdout] note: required by a bound in `embedded_hal::digital::ErrorType::Error`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/embedded-hal-1.0.0/src/digital.rs:61:17
[INFO] [stdout]     |
[INFO] [stdout] 61  |     type Error: Error;
[INFO] [stdout]     |                 ^^^^^ required by this bound in `ErrorType::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `HalError: embedded_hal::digital::Error` is not satisfied
[INFO] [stdout]    --> src/hal/mod.rs:250:18
[INFO] [stdout]     |
[INFO] [stdout] 250 |     type Error = HalError;
[INFO] [stdout]     |                  ^^^^^^^^ the trait `embedded_hal::digital::Error` is not implemented for `HalError`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `embedded_hal::digital::Error`:
[INFO] [stdout]               embedded_hal::digital::ErrorKind
[INFO] [stdout]               Infallible
[INFO] [stdout] note: required by a bound in `embedded_hal::digital::ErrorType::Error`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/embedded-hal-1.0.0/src/digital.rs:61:17
[INFO] [stdout]     |
[INFO] [stdout] 61  |     type Error: Error;
[INFO] [stdout]     |                 ^^^^^ required by this bound in `ErrorType::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 32 previous errors; 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0223, E0277, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0223`.
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `HalError: embedded_hal::digital::Error` is not satisfied
[INFO] [stdout]    --> src/hal/mod.rs:293:18
[INFO] [stdout]     |
[INFO] [stdout] 293 |     type Error = HalError;
[INFO] [stdout]     |                  ^^^^^^^^ the trait `embedded_hal::digital::Error` is not implemented for `HalError`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `embedded_hal::digital::Error`:
[INFO] [stdout]               embedded_hal::digital::ErrorKind
[INFO] [stdout]               Infallible
[INFO] [stdout] note: required by a bound in `embedded_hal::digital::ErrorType::Error`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/embedded-hal-1.0.0/src/digital.rs:61:17
[INFO] [stdout]     |
[INFO] [stdout] 61  |     type Error: Error;
[INFO] [stdout]     |                 ^^^^^ required by this bound in `ErrorType::Error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 35 previous errors; 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0223, E0277, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0223`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `driver-pal` (lib) due to 33 previous errors; 4 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `driver-pal` (lib test) due to 36 previous errors; 5 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "6e08bad8ed1338725eb3edfc2e2d01d50ba68cb3bc24330d10e1199a3be699a3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6e08bad8ed1338725eb3edfc2e2d01d50ba68cb3bc24330d10e1199a3be699a3", kill_on_drop: false }`
[INFO] [stdout] 6e08bad8ed1338725eb3edfc2e2d01d50ba68cb3bc24330d10e1199a3be699a3
