[INFO] cloning repository https://github.com/djdisodo/ehlcd2d
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/djdisodo/ehlcd2d" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdjdisodo%2Fehlcd2d", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdjdisodo%2Fehlcd2d'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fe7529fab28ec24e9bf8b6a3660852c7ace5f11b
[INFO] testing djdisodo/ehlcd2d against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdjdisodo%2Fehlcd2d" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/djdisodo/ehlcd2d
[INFO] finished tweaking git repo https://github.com/djdisodo/ehlcd2d
[INFO] tweaked toml for git repo https://github.com/djdisodo/ehlcd2d written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/djdisodo/ehlcd2d on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/djdisodo/ehlcd2d already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded embedded-io v0.6.1
[INFO] [stderr]   Downloaded embedded-hal v1.0.0
[INFO] [stderr]   Downloaded embedded-hal-async v1.0.0
[INFO] [stderr]   Downloaded embedded-io-async v0.6.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 122ce469733c0c77639321ccf1ad0bacf486fe26453cde55446bb0d58bd53792
[INFO] running `Command { std: "docker" "start" "-a" "122ce469733c0c77639321ccf1ad0bacf486fe26453cde55446bb0d58bd53792", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "122ce469733c0c77639321ccf1ad0bacf486fe26453cde55446bb0d58bd53792", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "122ce469733c0c77639321ccf1ad0bacf486fe26453cde55446bb0d58bd53792", kill_on_drop: false }`
[INFO] [stdout] 122ce469733c0c77639321ccf1ad0bacf486fe26453cde55446bb0d58bd53792
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d3d6aff2dc5fef01488c1c4be9aebb558b5fc9247f8b5ac719c134879932643b
[INFO] running `Command { std: "docker" "start" "-a" "d3d6aff2dc5fef01488c1c4be9aebb558b5fc9247f8b5ac719c134879932643b", kill_on_drop: false }`
[INFO] [stderr]    Compiling embedded-hal-async v1.0.0
[INFO] [stderr]    Compiling embedded-io-async v0.6.1
[INFO] [stderr]    Compiling embedded-io v0.6.1
[INFO] [stderr]    Compiling embedded-hal v1.0.0
[INFO] [stderr]    Compiling ehlcd2d v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.15s
[INFO] running `Command { std: "docker" "inspect" "d3d6aff2dc5fef01488c1c4be9aebb558b5fc9247f8b5ac719c134879932643b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d3d6aff2dc5fef01488c1c4be9aebb558b5fc9247f8b5ac719c134879932643b", kill_on_drop: false }`
[INFO] [stdout] d3d6aff2dc5fef01488c1c4be9aebb558b5fc9247f8b5ac719c134879932643b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 86e2d3410f798ca53ebab73548e777e96e46d392cac405f77a77811c02fc3445
[INFO] running `Command { std: "docker" "start" "-a" "86e2d3410f798ca53ebab73548e777e96e46d392cac405f77a77811c02fc3445", kill_on_drop: false }`
[INFO] [stderr]    Compiling ehlcd2d v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.54s
[INFO] running `Command { std: "docker" "inspect" "86e2d3410f798ca53ebab73548e777e96e46d392cac405f77a77811c02fc3445", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "86e2d3410f798ca53ebab73548e777e96e46d392cac405f77a77811c02fc3445", kill_on_drop: false }`
[INFO] [stdout] 86e2d3410f798ca53ebab73548e777e96e46d392cac405f77a77811c02fc3445
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] ab01cdf7b172fd4671dcb9c4faab24e35901ac8a3aebb129ea7ef4daeaa7d2cf
[INFO] running `Command { std: "docker" "start" "-a" "ab01cdf7b172fd4671dcb9c4faab24e35901ac8a3aebb129ea7ef4daeaa7d2cf", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/ehlcd2d-af680e60799bfd9a)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests ehlcd2d
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test src/nonblocking.rs - nonblocking::Lcd<EN,RS,B,DELAY,E>::new (line 38) ... FAILED
[INFO] [stdout] test src/lib.rs - Debug (line 26) ... FAILED
[INFO] [stdout] test src/lib.rs - Formatter (line 26) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 26) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/nonblocking.rs - nonblocking::Lcd<EN,RS,B,DELAY,E>::new (line 38) stdout ----
[INFO] [stdout] error: expected one of `,`, `.`, `?`, `}`, or an operator, found `bus`
[INFO] [stdout]   --> src/nonblocking.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         LcdPinConfiguration {
[INFO] [stdout]    |         ------------------- while parsing this struct
[INFO] [stdout] 41 |             en: pins.d7.into_output(),
[INFO] [stdout] 42 |             rs: pins.d6.into_output()
[INFO] [stdout]    |                                      -
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      expected one of `,`, `.`, `?`, `}`, or an operator
[INFO] [stdout]    |                                      help: try adding a comma: `,`
[INFO] [stdout] 43 |             bus: HalfWidthBus {
[INFO] [stdout]    |             ^^^ unexpected token
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Lcd`
[INFO] [stdout]   --> src/nonblocking.rs:39:15
[INFO] [stdout]    |
[INFO] [stdout] 39 | let mut lcd = Lcd::<_, _, _, _, Infallible>::new(
[INFO] [stdout]    |               ^^^ use of undeclared type `Lcd`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 38 + use ehlcd2d::nonblocking::Lcd;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Infallible` in this scope
[INFO] [stdout]   --> src/nonblocking.rs:39:33
[INFO] [stdout]    |
[INFO] [stdout] 39 | let mut lcd = Lcd::<_, _, _, _, Infallible>::new(
[INFO] [stdout]    |                                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 38 + use std::convert::Infallible;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `LcdPinConfiguration` in this scope
[INFO] [stdout]   --> src/nonblocking.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         LcdPinConfiguration {
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 38 + use ehlcd2d::LcdPinConfiguration;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/nonblocking.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 |             en: pins.d7.into_output(),
[INFO] [stdout]    |                 ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `EmbassyDelayNs` in this scope
[INFO] [stdout]   --> src/nonblocking.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         EmbassyDelayNs,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Lines`
[INFO] [stdout]   --> src/nonblocking.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |         Lines::TwoLines,
[INFO] [stdout]    |         ^^^^^ use of undeclared type `Lines`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 38 + use std::io::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 38 + use std::str::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 38 + use core::str::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 38 + use ehlcd2d::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `EntryMode`
[INFO] [stdout]   --> src/nonblocking.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         EntryMode::default()
[INFO] [stdout]    |         ^^^^^^^^^ use of undeclared type `EntryMode`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 38 + use ehlcd2d::EntryMode;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `DisplayControl`
[INFO] [stdout]   --> src/nonblocking.rs:55:29
[INFO] [stdout]    |
[INFO] [stdout] 55 |     lcd.set_display_control(DisplayControl::default()).await.unwrap();
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^ use of undeclared type `DisplayControl`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 38 + use ehlcd2d::DisplayControl;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `SeekFrom`
[INFO] [stdout]   --> src/nonblocking.rs:56:14
[INFO] [stdout]    |
[INFO] [stdout] 56 |     lcd.seek(SeekFrom::Start(0)).await.unwrap(); //first line address 0..16
[INFO] [stdout]    |              ^^^^^^^^ use of undeclared type `SeekFrom`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these enums
[INFO] [stdout]    |
[INFO] [stdout] 38 + use std::io::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 38 + use embedded_io_async::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `SeekFrom`
[INFO] [stdout]   --> src/nonblocking.rs:58:14
[INFO] [stdout]    |
[INFO] [stdout] 58 |     lcd.seek(SeekFrom::Start(40)).await.unwrap(); //second line address 40..56
[INFO] [stdout]    |              ^^^^^^^^ use of undeclared type `SeekFrom`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these enums
[INFO] [stdout]    |
[INFO] [stdout] 38 + use std::io::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 38 + use embedded_io_async::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/nonblocking.rs:53:7
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_nonblocking_rs_38_0() {
[INFO] [stdout]    |                                      ------------------------------------------ this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 53 |     ).await.unwrap();
[INFO] [stdout]    |       ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/nonblocking.rs:55:56
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_nonblocking_rs_38_0() {
[INFO] [stdout]    |                                      ------------------------------------------ this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 55 |     lcd.set_display_control(DisplayControl::default()).await.unwrap();
[INFO] [stdout]    |                                                        ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/nonblocking.rs:56:34
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_nonblocking_rs_38_0() {
[INFO] [stdout]    |                                      ------------------------------------------ this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 56 |     lcd.seek(SeekFrom::Start(0)).await.unwrap(); //first line address 0..16
[INFO] [stdout]    |                                  ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/nonblocking.rs:57:44
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_nonblocking_rs_38_0() {
[INFO] [stdout]    |                                      ------------------------------------------ this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 57 |     lcd.write_all("first line".as_bytes()).await.unwrap();
[INFO] [stdout]    |                                            ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/nonblocking.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_nonblocking_rs_38_0() {
[INFO] [stdout]    |                                      ------------------------------------------ this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 58 |     lcd.seek(SeekFrom::Start(40)).await.unwrap(); //second line address 40..56
[INFO] [stdout]    |                                   ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/nonblocking.rs:59:45
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_nonblocking_rs_38_0() {
[INFO] [stdout]    |                                      ------------------------------------------ this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 59 |     lcd.write_all("second line".as_bytes()).await.unwrap();
[INFO] [stdout]    |                                             ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 17 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0422, E0425, E0433, E0728.
[INFO] [stdout] For more information about an error, try `rustc --explain E0422`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - Debug (line 26) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `embassy_time`
[INFO] [stdout]   --> src/lib.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         embassy_time::Timer::after_micros(ns.div_ceil(1000) as u64).await;
[INFO] [stdout]    |         ^^^^^^^^^^^^ use of unresolved module or unlinked crate `embassy_time`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `embassy_time`, use `cargo add embassy_time` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `DelayNs` in this scope
[INFO] [stdout]   --> src/lib.rs:29:6
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl DelayNs for EmbassyDelayNs {
[INFO] [stdout]    |      ^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these traits
[INFO] [stdout]    |
[INFO] [stdout] 26 + use embedded_hal::delay::DelayNs;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use embedded_hal_async::delay::DelayNs;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Lcd`
[INFO] [stdout]   --> src/lib.rs:34:19
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let mut lcd = Lcd::<_, _, _, _, Infallible>::new(
[INFO] [stdout]    |                   ^^^ use of undeclared type `Lcd`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::nonblocking::Lcd;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Infallible` in this scope
[INFO] [stdout]   --> src/lib.rs:34:37
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let mut lcd = Lcd::<_, _, _, _, Infallible>::new(
[INFO] [stdout]    |                                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::convert::Infallible;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `LcdPinConfiguration` in this scope
[INFO] [stdout]   --> src/lib.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         LcdPinConfiguration {
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::LcdPinConfiguration;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |             en: pins.d7.into_output(),
[INFO] [stdout]    |                 ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |             rs: pins.d6.into_output(),
[INFO] [stdout]    |                 ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `HalfWidthBus` in this scope
[INFO] [stdout]   --> src/lib.rs:38:18
[INFO] [stdout]    |
[INFO] [stdout] 38 |             bus: HalfWidthBus {
[INFO] [stdout]    |                  ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::HalfWidthBus;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:39:21
[INFO] [stdout]    |
[INFO] [stdout] 39 |                 d4: pins.d8.into_output(),
[INFO] [stdout]    |                     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:40:21
[INFO] [stdout]    |
[INFO] [stdout] 40 |                 d5: pins.d9.into_output(),
[INFO] [stdout]    |                     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:41:21
[INFO] [stdout]    |
[INFO] [stdout] 41 |                 d6: pins.d10.into_output(),
[INFO] [stdout]    |                     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |                 d7: pins.d11.into_output()
[INFO] [stdout]    |                     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Lines`
[INFO] [stdout]   --> src/lib.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Lines::TwoLines,
[INFO] [stdout]    |         ^^^^^ use of undeclared type `Lines`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::io::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::str::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use core::str::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `EntryMode`
[INFO] [stdout]   --> src/lib.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |         EntryMode::default()
[INFO] [stdout]    |         ^^^^^^^^^ use of undeclared type `EntryMode`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::EntryMode;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `DisplayControl`
[INFO] [stdout]   --> src/lib.rs:50:29
[INFO] [stdout]    |
[INFO] [stdout] 50 |     lcd.set_display_control(DisplayControl::default()).await.unwrap();
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^ use of undeclared type `DisplayControl`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::DisplayControl;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `SeekFrom`
[INFO] [stdout]   --> src/lib.rs:51:14
[INFO] [stdout]    |
[INFO] [stdout] 51 |     lcd.seek(SeekFrom::Start(0)).await.unwrap(); //first line address 0..16
[INFO] [stdout]    |              ^^^^^^^^ use of undeclared type `SeekFrom`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these enums
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::io::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use embedded_io_async::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `SeekFrom`
[INFO] [stdout]   --> src/lib.rs:53:14
[INFO] [stdout]    |
[INFO] [stdout] 53 |     lcd.seek(SeekFrom::Start(40)).await.unwrap(); //second line address 40..56
[INFO] [stdout]    |              ^^^^^^^^ use of undeclared type `SeekFrom`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these enums
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::io::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use embedded_io_async::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:48:7
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_1() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 48 |     ).await.unwrap();
[INFO] [stdout]    |       ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:50:56
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_1() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 50 |     lcd.set_display_control(DisplayControl::default()).await.unwrap();
[INFO] [stdout]    |                                                        ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:51:34
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_1() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 51 |     lcd.seek(SeekFrom::Start(0)).await.unwrap(); //first line address 0..16
[INFO] [stdout]    |                                  ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:52:44
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_1() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 52 |     lcd.write_all("first line".as_bytes()).await.unwrap();
[INFO] [stdout]    |                                            ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:53:35
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_1() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 53 |     lcd.seek(SeekFrom::Start(40)).await.unwrap(); //second line address 40..56
[INFO] [stdout]    |                                   ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:54:45
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_1() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 54 |     lcd.write_all("second line".as_bytes()).await.unwrap();
[INFO] [stdout]    |                                             ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 23 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0422, E0425, E0433, E0728.
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - Formatter (line 26) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `embassy_time`
[INFO] [stdout]   --> src/lib.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         embassy_time::Timer::after_micros(ns.div_ceil(1000) as u64).await;
[INFO] [stdout]    |         ^^^^^^^^^^^^ use of unresolved module or unlinked crate `embassy_time`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `embassy_time`, use `cargo add embassy_time` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `DelayNs` in this scope
[INFO] [stdout]   --> src/lib.rs:29:6
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl DelayNs for EmbassyDelayNs {
[INFO] [stdout]    |      ^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these traits
[INFO] [stdout]    |
[INFO] [stdout] 26 + use embedded_hal::delay::DelayNs;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use embedded_hal_async::delay::DelayNs;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Lcd`
[INFO] [stdout]   --> src/lib.rs:34:19
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let mut lcd = Lcd::<_, _, _, _, Infallible>::new(
[INFO] [stdout]    |                   ^^^ use of undeclared type `Lcd`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::nonblocking::Lcd;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Infallible` in this scope
[INFO] [stdout]   --> src/lib.rs:34:37
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let mut lcd = Lcd::<_, _, _, _, Infallible>::new(
[INFO] [stdout]    |                                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::convert::Infallible;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `LcdPinConfiguration` in this scope
[INFO] [stdout]   --> src/lib.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         LcdPinConfiguration {
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::LcdPinConfiguration;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |             en: pins.d7.into_output(),
[INFO] [stdout]    |                 ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |             rs: pins.d6.into_output(),
[INFO] [stdout]    |                 ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `HalfWidthBus` in this scope
[INFO] [stdout]   --> src/lib.rs:38:18
[INFO] [stdout]    |
[INFO] [stdout] 38 |             bus: HalfWidthBus {
[INFO] [stdout]    |                  ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::HalfWidthBus;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:39:21
[INFO] [stdout]    |
[INFO] [stdout] 39 |                 d4: pins.d8.into_output(),
[INFO] [stdout]    |                     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:40:21
[INFO] [stdout]    |
[INFO] [stdout] 40 |                 d5: pins.d9.into_output(),
[INFO] [stdout]    |                     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:41:21
[INFO] [stdout]    |
[INFO] [stdout] 41 |                 d6: pins.d10.into_output(),
[INFO] [stdout]    |                     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |                 d7: pins.d11.into_output()
[INFO] [stdout]    |                     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Lines`
[INFO] [stdout]   --> src/lib.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Lines::TwoLines,
[INFO] [stdout]    |         ^^^^^ use of undeclared type `Lines`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::io::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::str::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use core::str::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `EntryMode`
[INFO] [stdout]   --> src/lib.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |         EntryMode::default()
[INFO] [stdout]    |         ^^^^^^^^^ use of undeclared type `EntryMode`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::EntryMode;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `DisplayControl`
[INFO] [stdout]   --> src/lib.rs:50:29
[INFO] [stdout]    |
[INFO] [stdout] 50 |     lcd.set_display_control(DisplayControl::default()).await.unwrap();
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^ use of undeclared type `DisplayControl`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::DisplayControl;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `SeekFrom`
[INFO] [stdout]   --> src/lib.rs:51:14
[INFO] [stdout]    |
[INFO] [stdout] 51 |     lcd.seek(SeekFrom::Start(0)).await.unwrap(); //first line address 0..16
[INFO] [stdout]    |              ^^^^^^^^ use of undeclared type `SeekFrom`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these enums
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::io::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use embedded_io_async::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `SeekFrom`
[INFO] [stdout]   --> src/lib.rs:53:14
[INFO] [stdout]    |
[INFO] [stdout] 53 |     lcd.seek(SeekFrom::Start(40)).await.unwrap(); //second line address 40..56
[INFO] [stdout]    |              ^^^^^^^^ use of undeclared type `SeekFrom`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these enums
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::io::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use embedded_io_async::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:48:7
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_2() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 48 |     ).await.unwrap();
[INFO] [stdout]    |       ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:50:56
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_2() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 50 |     lcd.set_display_control(DisplayControl::default()).await.unwrap();
[INFO] [stdout]    |                                                        ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:51:34
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_2() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 51 |     lcd.seek(SeekFrom::Start(0)).await.unwrap(); //first line address 0..16
[INFO] [stdout]    |                                  ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:52:44
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_2() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 52 |     lcd.write_all("first line".as_bytes()).await.unwrap();
[INFO] [stdout]    |                                            ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:53:35
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_2() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 53 |     lcd.seek(SeekFrom::Start(40)).await.unwrap(); //second line address 40..56
[INFO] [stdout]    |                                   ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:54:45
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_2() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 54 |     lcd.write_all("second line".as_bytes()).await.unwrap();
[INFO] [stdout]    |                                             ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 23 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0422, E0425, E0433, E0728.
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 26) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `embassy_time`
[INFO] [stdout]   --> src/lib.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         embassy_time::Timer::after_micros(ns.div_ceil(1000) as u64).await;
[INFO] [stdout]    |         ^^^^^^^^^^^^ use of unresolved module or unlinked crate `embassy_time`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `embassy_time`, use `cargo add embassy_time` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `DelayNs` in this scope
[INFO] [stdout]   --> src/lib.rs:29:6
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl DelayNs for EmbassyDelayNs {
[INFO] [stdout]    |      ^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these traits
[INFO] [stdout]    |
[INFO] [stdout] 26 + use embedded_hal::delay::DelayNs;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use embedded_hal_async::delay::DelayNs;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Lcd`
[INFO] [stdout]   --> src/lib.rs:34:19
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let mut lcd = Lcd::<_, _, _, _, Infallible>::new(
[INFO] [stdout]    |                   ^^^ use of undeclared type `Lcd`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::nonblocking::Lcd;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Infallible` in this scope
[INFO] [stdout]   --> src/lib.rs:34:37
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let mut lcd = Lcd::<_, _, _, _, Infallible>::new(
[INFO] [stdout]    |                                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::convert::Infallible;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `LcdPinConfiguration` in this scope
[INFO] [stdout]   --> src/lib.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         LcdPinConfiguration {
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::LcdPinConfiguration;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |             en: pins.d7.into_output(),
[INFO] [stdout]    |                 ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |             rs: pins.d6.into_output(),
[INFO] [stdout]    |                 ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `HalfWidthBus` in this scope
[INFO] [stdout]   --> src/lib.rs:38:18
[INFO] [stdout]    |
[INFO] [stdout] 38 |             bus: HalfWidthBus {
[INFO] [stdout]    |                  ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::HalfWidthBus;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:39:21
[INFO] [stdout]    |
[INFO] [stdout] 39 |                 d4: pins.d8.into_output(),
[INFO] [stdout]    |                     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:40:21
[INFO] [stdout]    |
[INFO] [stdout] 40 |                 d5: pins.d9.into_output(),
[INFO] [stdout]    |                     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:41:21
[INFO] [stdout]    |
[INFO] [stdout] 41 |                 d6: pins.d10.into_output(),
[INFO] [stdout]    |                     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pins` in this scope
[INFO] [stdout]   --> src/lib.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |                 d7: pins.d11.into_output()
[INFO] [stdout]    |                     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Lines`
[INFO] [stdout]   --> src/lib.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Lines::TwoLines,
[INFO] [stdout]    |         ^^^^^ use of undeclared type `Lines`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::io::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::str::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use core::str::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::Lines;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `EntryMode`
[INFO] [stdout]   --> src/lib.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |         EntryMode::default()
[INFO] [stdout]    |         ^^^^^^^^^ use of undeclared type `EntryMode`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::EntryMode;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `DisplayControl`
[INFO] [stdout]   --> src/lib.rs:50:29
[INFO] [stdout]    |
[INFO] [stdout] 50 |     lcd.set_display_control(DisplayControl::default()).await.unwrap();
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^ use of undeclared type `DisplayControl`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 26 + use ehlcd2d::DisplayControl;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `SeekFrom`
[INFO] [stdout]   --> src/lib.rs:51:14
[INFO] [stdout]    |
[INFO] [stdout] 51 |     lcd.seek(SeekFrom::Start(0)).await.unwrap(); //first line address 0..16
[INFO] [stdout]    |              ^^^^^^^^ use of undeclared type `SeekFrom`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these enums
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::io::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use embedded_io_async::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `SeekFrom`
[INFO] [stdout]   --> src/lib.rs:53:14
[INFO] [stdout]    |
[INFO] [stdout] 53 |     lcd.seek(SeekFrom::Start(40)).await.unwrap(); //second line address 40..56
[INFO] [stdout]    |              ^^^^^^^^ use of undeclared type `SeekFrom`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these enums
[INFO] [stdout]    |
[INFO] [stdout] 26 + use std::io::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 26 + use embedded_io_async::SeekFrom;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:48:7
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_0() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 48 |     ).await.unwrap();
[INFO] [stdout]    |       ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:50:56
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_0() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 50 |     lcd.set_display_control(DisplayControl::default()).await.unwrap();
[INFO] [stdout]    |                                                        ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:51:34
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_0() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 51 |     lcd.seek(SeekFrom::Start(0)).await.unwrap(); //first line address 0..16
[INFO] [stdout]    |                                  ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:52:44
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_0() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 52 |     lcd.write_all("first line".as_bytes()).await.unwrap();
[INFO] [stdout]    |                                            ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:53:35
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_0() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 53 |     lcd.seek(SeekFrom::Start(40)).await.unwrap(); //second line address 40..56
[INFO] [stdout]    |                                   ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/lib.rs:54:45
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_26_0() {
[INFO] [stdout]    |                                      ---------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 54 |     lcd.write_all("second line".as_bytes()).await.unwrap();
[INFO] [stdout]    |                                             ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 23 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0422, E0425, E0433, E0728.
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/lib.rs - (line 26)
[INFO] [stdout]     src/lib.rs - Debug (line 26)
[INFO] [stdout]     src/lib.rs - Formatter (line 26)
[INFO] [stdout]     src/nonblocking.rs - nonblocking::Lcd<EN,RS,B,DELAY,E>::new (line 38)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 4 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.37s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "ab01cdf7b172fd4671dcb9c4faab24e35901ac8a3aebb129ea7ef4daeaa7d2cf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ab01cdf7b172fd4671dcb9c4faab24e35901ac8a3aebb129ea7ef4daeaa7d2cf", kill_on_drop: false }`
[INFO] [stdout] ab01cdf7b172fd4671dcb9c4faab24e35901ac8a3aebb129ea7ef4daeaa7d2cf
