[INFO] cloning repository https://github.com/im-0/rust-waveshare-usb-can-a
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/im-0/rust-waveshare-usb-can-a" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fim-0%2Frust-waveshare-usb-can-a", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fim-0%2Frust-waveshare-usb-can-a'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] df337d1ba438c25fdbf95733de00c6386001092c
[INFO] testing im-0/rust-waveshare-usb-can-a against beta-2026-04-21 for beta-1.96-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fim-0%2Frust-waveshare-usb-can-a" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/im-0/rust-waveshare-usb-can-a
[INFO] finished tweaking git repo https://github.com/im-0/rust-waveshare-usb-can-a
[INFO] tweaked toml for git repo https://github.com/im-0/rust-waveshare-usb-can-a written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/im-0/rust-waveshare-usb-can-a on toolchain beta-2026-04-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/im-0/rust-waveshare-usb-can-a 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" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 86b4f07211895149f26afc5ec81a54512f2713ddf5927681a40aab092bcfef2a
[INFO] running `Command { std: "docker" "start" "-a" "86b4f07211895149f26afc5ec81a54512f2713ddf5927681a40aab092bcfef2a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "86b4f07211895149f26afc5ec81a54512f2713ddf5927681a40aab092bcfef2a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "86b4f07211895149f26afc5ec81a54512f2713ddf5927681a40aab092bcfef2a", kill_on_drop: false }`
[INFO] [stdout] 86b4f07211895149f26afc5ec81a54512f2713ddf5927681a40aab092bcfef2a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 70fbad80f8dd7d02f0ccfb2ed227a22d17d074ea238ace6462acebc5879b1da9
[INFO] running `Command { std: "docker" "start" "-a" "70fbad80f8dd7d02f0ccfb2ed227a22d17d074ea238ace6462acebc5879b1da9", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]    Compiling bitflags v2.9.0
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling log v0.4.27
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling rustix v1.0.5
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling tracing-core v0.1.33
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling linux-raw-sys v0.9.4
[INFO] [stderr]    Compiling anstyle-parse v0.2.6
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling anstyle-query v1.1.2
[INFO] [stderr]    Compiling anstyle v1.0.10
[INFO] [stderr]    Compiling bytes v1.10.1
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]    Compiling colorchoice v1.0.3
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling anstream v0.6.18
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling nix v0.26.4
[INFO] [stderr]    Compiling mio v1.0.3
[INFO] [stderr]    Compiling socket2 v0.5.9
[INFO] [stderr]    Compiling tokio v1.44.2
[INFO] [stderr]    Compiling terminal_size v0.4.2
[INFO] [stderr]    Compiling overload v0.1.1
[INFO] [stderr]    Compiling clap_lex v0.7.4
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling anyhow v1.0.98
[INFO] [stderr]    Compiling nb v1.1.0
[INFO] [stderr]    Compiling iana-time-zone v0.1.63
[INFO] [stderr]    Compiling embedded-can v0.4.1
[INFO] [stderr]    Compiling chrono v0.4.40
[INFO] [stderr]    Compiling clap_builder v4.5.37
[INFO] [stderr]    Compiling regex-automata v0.1.10
[INFO] [stderr]    Compiling matchers v0.1.0
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling nu-ansi-term v0.46.0
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling thread_local v1.1.8
[INFO] [stderr]    Compiling smallvec v1.15.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.19
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling clap_derive v4.5.32
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling unescaper v0.1.5
[INFO] [stderr]    Compiling serialport v4.7.1 (https://github.com/im-0/serialport-rs?rev=eb60844272f60d8df5271605a122cb9ef7bf6209#eb608442)
[INFO] [stderr]    Compiling mio-serial v5.0.6 (https://github.com/im-0/mio-serial?rev=2411c0abbb976c08f28aa090309c1c81ad605a19#2411c0ab)
[INFO] [stderr]    Compiling clap v4.5.37
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling tokio-serial v5.4.5
[INFO] [stderr]    Compiling waveshare-usb-can-a v0.1.0 (/opt/rustwide/workdir/lib)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/sync.rs:341:27
[INFO] [stdout]     |
[INFO] [stdout] 341 |     fn lock_configuration(&self) -> Result<MutexGuard<Usb2CanConfiguration>> {
[INFO] [stdout]     |                           ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 341 |     fn lock_configuration(&self) -> Result<MutexGuard<'_, Usb2CanConfiguration>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/sync.rs:347:25
[INFO] [stdout]     |
[INFO] [stdout] 347 |     fn lock_transmitter(&self) -> Result<MutexGuard<Transmitter>> {
[INFO] [stdout]     |                         ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 347 |     fn lock_transmitter(&self) -> Result<MutexGuard<'_, Transmitter>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/sync.rs:353:22
[INFO] [stdout]     |
[INFO] [stdout] 353 |     fn lock_receiver(&self) -> Result<MutexGuard<Receiver>> {
[INFO] [stdout]     |                      ^^^^^            ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 353 |     fn lock_receiver(&self) -> Result<MutexGuard<'_, Receiver>> {
[INFO] [stdout]     |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/tokio.rs:334:33
[INFO] [stdout]     |
[INFO] [stdout] 334 |     async fn lock_configuration(&self) -> MutexGuard<Usb2CanConfiguration> {
[INFO] [stdout]     |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 334 |     async fn lock_configuration(&self) -> MutexGuard<'_, Usb2CanConfiguration> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/tokio.rs:338:31
[INFO] [stdout]     |
[INFO] [stdout] 338 |     async fn lock_transmitter(&self) -> MutexGuard<Transmitter> {
[INFO] [stdout]     |                               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 338 |     async fn lock_transmitter(&self) -> MutexGuard<'_, Transmitter> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/tokio.rs:342:28
[INFO] [stdout]     |
[INFO] [stdout] 342 |     async fn lock_receiver(&self) -> MutexGuard<Receiver> {
[INFO] [stdout]     |                            ^^^^^     ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 342 |     async fn lock_receiver(&self) -> MutexGuard<'_, Receiver> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling waveshare-usb-can-a-cli v0.1.0 (/opt/rustwide/workdir/cli)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 00s
[INFO] running `Command { std: "docker" "inspect" "70fbad80f8dd7d02f0ccfb2ed227a22d17d074ea238ace6462acebc5879b1da9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "70fbad80f8dd7d02f0ccfb2ed227a22d17d074ea238ace6462acebc5879b1da9", kill_on_drop: false }`
[INFO] [stdout] 70fbad80f8dd7d02f0ccfb2ed227a22d17d074ea238ace6462acebc5879b1da9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4c914da7e1620b01d0ba3dc22ae845753c5fd8bde2e3d276f126deb856cbd963
[INFO] running `Command { std: "docker" "start" "-a" "4c914da7e1620b01d0ba3dc22ae845753c5fd8bde2e3d276f126deb856cbd963", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.24
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling rustix v1.0.5
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling rand_xorshift v0.3.0
[INFO] [stderr]    Compiling chrono v0.4.40
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling terminal_size v0.4.2
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling clap_builder v4.5.37
[INFO] [stderr]    Compiling proptest v1.6.0
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling tracing-subscriber v0.3.19
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling proptest-derive v0.5.1
[INFO] [stderr]    Compiling tokio v1.44.2
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling clap_derive v4.5.32
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling unescaper v0.1.5
[INFO] [stderr]    Compiling serialport v4.7.1 (https://github.com/im-0/serialport-rs?rev=eb60844272f60d8df5271605a122cb9ef7bf6209#eb608442)
[INFO] [stderr]    Compiling mio-serial v5.0.6 (https://github.com/im-0/mio-serial?rev=2411c0abbb976c08f28aa090309c1c81ad605a19#2411c0ab)
[INFO] [stderr]    Compiling clap v4.5.37
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling tokio-serial v5.4.5
[INFO] [stderr]    Compiling waveshare-usb-can-a v0.1.0 (/opt/rustwide/workdir/lib)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/sync.rs:341:27
[INFO] [stdout]     |
[INFO] [stdout] 341 |     fn lock_configuration(&self) -> Result<MutexGuard<Usb2CanConfiguration>> {
[INFO] [stdout]     |                           ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 341 |     fn lock_configuration(&self) -> Result<MutexGuard<'_, Usb2CanConfiguration>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/sync.rs:347:25
[INFO] [stdout]     |
[INFO] [stdout] 347 |     fn lock_transmitter(&self) -> Result<MutexGuard<Transmitter>> {
[INFO] [stdout]     |                         ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 347 |     fn lock_transmitter(&self) -> Result<MutexGuard<'_, Transmitter>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/sync.rs:353:22
[INFO] [stdout]     |
[INFO] [stdout] 353 |     fn lock_receiver(&self) -> Result<MutexGuard<Receiver>> {
[INFO] [stdout]     |                      ^^^^^            ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 353 |     fn lock_receiver(&self) -> Result<MutexGuard<'_, Receiver>> {
[INFO] [stdout]     |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/tokio.rs:334:33
[INFO] [stdout]     |
[INFO] [stdout] 334 |     async fn lock_configuration(&self) -> MutexGuard<Usb2CanConfiguration> {
[INFO] [stdout]     |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 334 |     async fn lock_configuration(&self) -> MutexGuard<'_, Usb2CanConfiguration> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/tokio.rs:338:31
[INFO] [stdout]     |
[INFO] [stdout] 338 |     async fn lock_transmitter(&self) -> MutexGuard<Transmitter> {
[INFO] [stdout]     |                               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 338 |     async fn lock_transmitter(&self) -> MutexGuard<'_, Transmitter> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/tokio.rs:342:28
[INFO] [stdout]     |
[INFO] [stdout] 342 |     async fn lock_receiver(&self) -> MutexGuard<Receiver> {
[INFO] [stdout]     |                            ^^^^^     ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 342 |     async fn lock_receiver(&self) -> MutexGuard<'_, Receiver> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling waveshare-usb-can-a-cli v0.1.0 (/opt/rustwide/workdir/cli)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/sync.rs:341:27
[INFO] [stdout]     |
[INFO] [stdout] 341 |     fn lock_configuration(&self) -> Result<MutexGuard<Usb2CanConfiguration>> {
[INFO] [stdout]     |                           ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 341 |     fn lock_configuration(&self) -> Result<MutexGuard<'_, Usb2CanConfiguration>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/sync.rs:347:25
[INFO] [stdout]     |
[INFO] [stdout] 347 |     fn lock_transmitter(&self) -> Result<MutexGuard<Transmitter>> {
[INFO] [stdout]     |                         ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 347 |     fn lock_transmitter(&self) -> Result<MutexGuard<'_, Transmitter>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/sync.rs:353:22
[INFO] [stdout]     |
[INFO] [stdout] 353 |     fn lock_receiver(&self) -> Result<MutexGuard<Receiver>> {
[INFO] [stdout]     |                      ^^^^^            ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 353 |     fn lock_receiver(&self) -> Result<MutexGuard<'_, Receiver>> {
[INFO] [stdout]     |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/tokio.rs:334:33
[INFO] [stdout]     |
[INFO] [stdout] 334 |     async fn lock_configuration(&self) -> MutexGuard<Usb2CanConfiguration> {
[INFO] [stdout]     |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 334 |     async fn lock_configuration(&self) -> MutexGuard<'_, Usb2CanConfiguration> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/tokio.rs:338:31
[INFO] [stdout]     |
[INFO] [stdout] 338 |     async fn lock_transmitter(&self) -> MutexGuard<Transmitter> {
[INFO] [stdout]     |                               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 338 |     async fn lock_transmitter(&self) -> MutexGuard<'_, Transmitter> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> lib/src/tokio.rs:342:28
[INFO] [stdout]     |
[INFO] [stdout] 342 |     async fn lock_receiver(&self) -> MutexGuard<Receiver> {
[INFO] [stdout]     |                            ^^^^^     ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 342 |     async fn lock_receiver(&self) -> MutexGuard<'_, Receiver> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 00s
[INFO] running `Command { std: "docker" "inspect" "4c914da7e1620b01d0ba3dc22ae845753c5fd8bde2e3d276f126deb856cbd963", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4c914da7e1620b01d0ba3dc22ae845753c5fd8bde2e3d276f126deb856cbd963", kill_on_drop: false }`
[INFO] [stdout] 4c914da7e1620b01d0ba3dc22ae845753c5fd8bde2e3d276f126deb856cbd963
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 029e8ed35eae7de4dac516baabde05978f9c71d3bd8989851d355c48d43e5d3d
[INFO] running `Command { std: "docker" "start" "-a" "029e8ed35eae7de4dac516baabde05978f9c71d3bd8989851d355c48d43e5d3d", kill_on_drop: false }`
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> lib/src/sync.rs:341:27
[INFO] [stderr]     |
[INFO] [stderr] 341 |     fn lock_configuration(&self) -> Result<MutexGuard<Usb2CanConfiguration>> {
[INFO] [stderr]     |                           ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                           |
[INFO] [stderr]     |                           the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 341 |     fn lock_configuration(&self) -> Result<MutexGuard<'_, Usb2CanConfiguration>> {
[INFO] [stderr]     |                                                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> lib/src/sync.rs:347:25
[INFO] [stderr]     |
[INFO] [stderr] 347 |     fn lock_transmitter(&self) -> Result<MutexGuard<Transmitter>> {
[INFO] [stderr]     |                         ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 347 |     fn lock_transmitter(&self) -> Result<MutexGuard<'_, Transmitter>> {
[INFO] [stderr]     |                                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> lib/src/sync.rs:353:22
[INFO] [stderr]     |
[INFO] [stderr] 353 |     fn lock_receiver(&self) -> Result<MutexGuard<Receiver>> {
[INFO] [stderr]     |                      ^^^^^            ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 353 |     fn lock_receiver(&self) -> Result<MutexGuard<'_, Receiver>> {
[INFO] [stderr]     |                                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> lib/src/tokio.rs:334:33
[INFO] [stderr]     |
[INFO] [stderr] 334 |     async fn lock_configuration(&self) -> MutexGuard<Usb2CanConfiguration> {
[INFO] [stderr]     |                                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                 |
[INFO] [stderr]     |                                 the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 334 |     async fn lock_configuration(&self) -> MutexGuard<'_, Usb2CanConfiguration> {
[INFO] [stderr]     |                                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> lib/src/tokio.rs:338:31
[INFO] [stderr]     |
[INFO] [stderr] 338 |     async fn lock_transmitter(&self) -> MutexGuard<Transmitter> {
[INFO] [stderr]     |                               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                               |
[INFO] [stderr]     |                               the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 338 |     async fn lock_transmitter(&self) -> MutexGuard<'_, Transmitter> {
[INFO] [stderr]     |                                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> lib/src/tokio.rs:342:28
[INFO] [stderr]     |
[INFO] [stderr] 342 |     async fn lock_receiver(&self) -> MutexGuard<Receiver> {
[INFO] [stderr]     |                            ^^^^^     ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 342 |     async fn lock_receiver(&self) -> MutexGuard<'_, Receiver> {
[INFO] [stderr]     |                                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: `waveshare-usb-can-a` (lib) generated 6 warnings (run `cargo fix --lib -p waveshare-usb-can-a` to apply 6 suggestions)
[INFO] [stderr] warning: `waveshare-usb-can-a` (lib test) generated 6 warnings (6 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.25s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/waveshare_usb_can_a-922487d8643de8c0)
[INFO] [stdout] 
[INFO] [stdout] running 45 tests
[INFO] [stdout] test proto::tests::data_frame_data_too_long ... ok
[INFO] [stdout] test proto::tests::fixed_extended_data_frame ... ok
[INFO] [stdout] test proto::tests::extended_id_endianness ... ok
[INFO] [stdout] test proto::tests::fixed_serde_frame_extended ... ok
[INFO] [stdout] test proto::tests::fixed_serde_frame_remote_extended ... ok
[INFO] [stdout] test proto::tests::fixed_serde_frame_remote_standard ... ok
[INFO] [stdout] test proto::tests::fixed_serde_frame_standard ... ok
[INFO] [stdout] test proto::tests::fixed_standard_data_frame ... ok
[INFO] [stdout] test proto::tests::max_send_message_size ... ok
[INFO] [stdout] test proto::tests::remote_frame_data_too_long ... ok
[INFO] [stdout] test proto::tests::small_send_message_size ... ok
[INFO] [stdout] test proto::tests::standard_id_endianness ... ok
[INFO] [stdout] test proto::tests::stored_id_filter_allow_list ... ok
[INFO] [stdout] test proto::tests::stored_id_filter_block_list ... ok
[INFO] [stdout] test proto::tests::stored_id_filter_disabled ... ok
[INFO] [stdout] test proto::tests::stored_id_filter_disabled_is_empty_block_list ... ok
[INFO] [stdout] test proto::tests::variable_extended_data_frame_long ... ok
[INFO] [stdout] test proto::tests::variable_extended_data_frame_short ... ok
[INFO] [stdout] test proto::tests::variable_extended_remote_frame_long ... ok
[INFO] [stdout] test proto::tests::variable_extended_remote_frame_short ... ok
[INFO] [stdout] test proto::tests::variable_serde_frame_extended ... ok
[INFO] [stdout] test proto::tests::variable_serde_frame_remote_extended ... ok
[INFO] [stdout] test proto::tests::variable_serde_frame_remote_standard ... ok
[INFO] [stdout] test proto::tests::variable_standard_data_frame_long ... ok
[INFO] [stdout] test proto::tests::variable_standard_data_frame_short ... ok
[INFO] [stdout] test proto::tests::variable_serde_frame_standard ... ok
[INFO] [stdout] test proto::tests::variable_standard_remote_frame_long ... ok
[INFO] [stdout] test proto::tests::variable_standard_remote_frame_short ... ok
[INFO] [stdout] test sync::tests::rust_serialport_cloned_timeout ... ok
[INFO] [stdout] test sync::tests::rust_serialport_large_timeout ... ok
[INFO] [stdout] test tests::invalid_filter_conf ... ok
[INFO] [stdout] test tests::random_length_bound_frame_standard ... ok
[INFO] [stdout] test tests::sync::can_rates_frame_types_and_filtering ... ignored
[INFO] [stdout] test tests::sync::serial_rates ... ignored
[INFO] [stdout] test tests::sync::stored_id_filter ... ignored
[INFO] [stdout] test tests::tokio::can_rates_frame_types_and_filtering ... ignored
[INFO] [stdout] test tests::tokio::serial_rates ... ignored
[INFO] [stdout] test tests::tokio::stored_id_filter ... ignored
[INFO] [stdout] test tests::random_length_bound_frame_extended ... ok
[INFO] [stdout] test proto::tests::fixed_random_serde_frame_extended ... ok
[INFO] [stdout] test proto::tests::random_send_message_size_extended ... ok
[INFO] [stdout] test proto::tests::variable_random_serde_frame_extended ... ok
[INFO] [stdout] test proto::tests::random_send_message_size_standard ... ok
[INFO] [stdout] test proto::tests::variable_random_serde_frame_standard ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/waveshare_usb_can_a-265ef2fb74a49e38)
[INFO] [stdout] test proto::tests::fixed_random_serde_frame_standard ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 39 passed; 0 failed; 6 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test cli::tests::parse_data_frame_extended ... ok
[INFO] [stdout] test cli::tests::parse_data_frame_standard ... ok
[INFO] [stdout] test cli::tests::parse_id_extended ... ok
[INFO] [stdout] test cli::tests::parse_remote_frame_extended ... ok
[INFO] [stdout] test cli::tests::parse_remote_frame_standard ... ok
[INFO] [stdout] test cli::tests::parse_id_standard ... ok
[INFO] [stdout] test cli::tests::random_parse_data_frame_extended ... ok
[INFO] [stdout] test cli::tests::random_parse_data_frame_standard ... ok
[INFO] [stderr]    Doc-tests waveshare_usb_can_a
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "029e8ed35eae7de4dac516baabde05978f9c71d3bd8989851d355c48d43e5d3d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "029e8ed35eae7de4dac516baabde05978f9c71d3bd8989851d355c48d43e5d3d", kill_on_drop: false }`
[INFO] [stdout] 029e8ed35eae7de4dac516baabde05978f9c71d3bd8989851d355c48d43e5d3d
