[INFO] fetching crate qwiic-relay-rs 0.1.11...
[INFO] testing qwiic-relay-rs-0.1.11 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate qwiic-relay-rs 0.1.11 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate qwiic-relay-rs 0.1.11
[INFO] finished tweaking crates.io crate qwiic-relay-rs 0.1.11
[INFO] tweaked toml for crates.io crate qwiic-relay-rs 0.1.11 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate qwiic-relay-rs 0.1.11 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 14 packages to highest compatible versions
[INFO] [stderr]       Adding i2cdev v0.4.4 (available: v0.6.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `qwiic-relay-rs` (manifest) generated 1 warning
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded i2cdev v0.4.4
[INFO] [stderr]   Downloaded enum_primitive v0.1.1
[INFO] [stderr]   Downloaded nix v0.14.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0fd08a00cd8ca6c62c3dc1183b10d9137e5bf62820501fcf450158bf82d4b020
[INFO] running `Command { std: "docker" "start" "0fd08a00cd8ca6c62c3dc1183b10d9137e5bf62820501fcf450158bf82d4b020", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0fd08a00cd8ca6c62c3dc1183b10d9137e5bf62820501fcf450158bf82d4b020", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0fd08a00cd8ca6c62c3dc1183b10d9137e5bf62820501fcf450158bf82d4b020" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0fd08a00cd8ca6c62c3dc1183b10d9137e5bf62820501fcf450158bf82d4b020", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0fd08a00cd8ca6c62c3dc1183b10d9137e5bf62820501fcf450158bf82d4b020" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `qwiic-relay-rs` (manifest) generated 1 warning
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling num-traits v0.1.43
[INFO] [stderr]    Compiling enum_primitive v0.1.1
[INFO] [stderr]    Compiling i2cdev v0.4.4
[INFO] [stderr]    Compiling qwiic-relay-rs v0.1.11 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `relay_count`
[INFO] [stdout]   --> src/lib.rs:69:16
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn new(relay_count: u8) -> QwiicRelayConfig {
[INFO] [stdout]    |                ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_relay_count`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `relay_count` is never read
[INFO] [stdout]   --> src/lib.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct QwiicRelayConfig {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 65 |     relay_count: u8
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]   --> src/lib.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct QwiicRelay {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 82 |     dev: LinuxI2CDevice,
[INFO] [stdout] 83 |     config: QwiicRelayConfig,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:119:21
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     let _ = self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:126:17
[INFO] [stdout]     |
[INFO] [stdout] 126 |                 self.write_byte(RelayState::On as u8);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |                 let _ = self.write_byte(RelayState::On as u8);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:139:21
[INFO] [stdout]     |
[INFO] [stdout] 139 |                     self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 139 |                     let _ = self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:146:17
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 self.write_byte(RelayState::Off as u8);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 let _ = self.write_byte(RelayState::Off as u8);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.69s
[INFO] running `Command { std: "docker" "inspect" "0fd08a00cd8ca6c62c3dc1183b10d9137e5bf62820501fcf450158bf82d4b020", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0fd08a00cd8ca6c62c3dc1183b10d9137e5bf62820501fcf450158bf82d4b020" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `qwiic-relay-rs` (manifest) generated 1 warning
[INFO] [stderr]    Compiling qwiic-relay-rs v0.1.11 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `relay_count`
[INFO] [stdout]   --> src/lib.rs:69:16
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn new(relay_count: u8) -> QwiicRelayConfig {
[INFO] [stdout]    |                ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_relay_count`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `relay_count` is never read
[INFO] [stdout]   --> src/lib.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct QwiicRelayConfig {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 65 |     relay_count: u8
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]   --> src/lib.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct QwiicRelay {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 82 |     dev: LinuxI2CDevice,
[INFO] [stdout] 83 |     config: QwiicRelayConfig,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:119:21
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     let _ = self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:126:17
[INFO] [stdout]     |
[INFO] [stdout] 126 |                 self.write_byte(RelayState::On as u8);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |                 let _ = self.write_byte(RelayState::On as u8);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:139:21
[INFO] [stdout]     |
[INFO] [stdout] 139 |                     self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 139 |                     let _ = self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:146:17
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 self.write_byte(RelayState::Off as u8);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 let _ = self.write_byte(RelayState::Off as u8);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `relay_count`
[INFO] [stdout]   --> src/lib.rs:69:16
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn new(relay_count: u8) -> QwiicRelayConfig {
[INFO] [stdout]    |                ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_relay_count`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `relay_count` is never read
[INFO] [stdout]   --> src/lib.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct QwiicRelayConfig {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 65 |     relay_count: u8
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]   --> src/lib.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct QwiicRelay {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 82 |     dev: LinuxI2CDevice,
[INFO] [stdout] 83 |     config: QwiicRelayConfig,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:119:21
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     let _ = self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:126:17
[INFO] [stdout]     |
[INFO] [stdout] 126 |                 self.write_byte(RelayState::On as u8);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |                 let _ = self.write_byte(RelayState::On as u8);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:139:21
[INFO] [stdout]     |
[INFO] [stdout] 139 |                     self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 139 |                     let _ = self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:146:17
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 self.write_byte(RelayState::Off as u8);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 let _ = self.write_byte(RelayState::Off as u8);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.33s
[INFO] running `Command { std: "docker" "inspect" "0fd08a00cd8ca6c62c3dc1183b10d9137e5bf62820501fcf450158bf82d4b020", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0fd08a00cd8ca6c62c3dc1183b10d9137e5bf62820501fcf450158bf82d4b020" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `qwiic-relay-rs` (manifest) generated 1 warning
[INFO] [stderr] warning: unused variable: `relay_count`
[INFO] [stderr]   --> src/lib.rs:69:16
[INFO] [stderr]    |
[INFO] [stderr] 69 |     pub fn new(relay_count: u8) -> QwiicRelayConfig {
[INFO] [stderr]    |                ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_relay_count`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `relay_count` is never read
[INFO] [stderr]   --> src/lib.rs:65:5
[INFO] [stderr]    |
[INFO] [stderr] 64 | pub struct QwiicRelayConfig {
[INFO] [stderr]    |            ---------------- field in this struct
[INFO] [stderr] 65 |     relay_count: u8
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `config` is never read
[INFO] [stderr]   --> src/lib.rs:83:5
[INFO] [stderr]    |
[INFO] [stderr] 81 | pub struct QwiicRelay {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] 82 |     dev: LinuxI2CDevice,
[INFO] [stderr] 83 |     config: QwiicRelayConfig,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:119:21
[INFO] [stderr]     |
[INFO] [stderr] 119 |                     self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 119 |                     let _ = self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stderr]     |                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:126:17
[INFO] [stderr]     |
[INFO] [stderr] 126 |                 self.write_byte(RelayState::On as u8);
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 126 |                 let _ = self.write_byte(RelayState::On as u8);
[INFO] [stderr]     |                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:139:21
[INFO] [stderr]     |
[INFO] [stderr] 139 |                     self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 139 |                     let _ = self.write_byte((Command::DualQuadToggleBase as u8) + num);
[INFO] [stderr]     |                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:146:17
[INFO] [stderr]     |
[INFO] [stderr] 146 |                 self.write_byte(RelayState::Off as u8);
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 146 |                 let _ = self.write_byte(RelayState::Off as u8);
[INFO] [stderr]     |                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `qwiic-relay-rs` (lib) generated 7 warnings (run `cargo fix --lib -p qwiic-relay-rs` to apply 1 suggestion)
[INFO] [stderr] warning: `qwiic-relay-rs` (lib test) generated 7 warnings (7 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/qwiic_relay_rs-be917ac8d3e3b823)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test tests::test_init ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- tests::test_init stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::test_init' (227) panicked at src/lib.rs:206:75:
[INFO] [stdout] Could not init device: Io(Os { code: 2, kind: NotFound, message: "No such file or directory" })
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d334f950961 - std[70759c8f55707aa4]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d334f950961 - std[70759c8f55707aa4]::backtrace_rs::backtrace::trace_unsynchronized::<std[70759c8f55707aa4]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d334f950961 - std[70759c8f55707aa4]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d334f950961 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d334f964b3a - <core[df12db4294e9bfd3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d334f964b3a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    6:     0x5d334f954dfc - core[df12db4294e9bfd3]::io::write::default_write_fmt::<alloc[2182bb758b4b3781]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/io/write.rs:402:11
[INFO] [stdout]    7:     0x5d334f954dfc - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/io/write.rs:335:13
[INFO] [stdout]    8:     0x5d334f92cea6 - <std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d334f92cea6 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d334f949019 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d334f8e2940 - <alloc[2182bb758b4b3781]::boxed::Box<dyn for<'a, 'b> core[df12db4294e9bfd3]::ops::function::Fn<(&'a std[70759c8f55707aa4]::panic::PanicHookInfo<'b>,), Output = ()> + core[df12db4294e9bfd3]::marker::Send + core[df12db4294e9bfd3]::marker::Sync> as core[df12db4294e9bfd3]::ops::function::Fn<(&std[70759c8f55707aa4]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2334:9
[INFO] [stdout]   12:     0x5d334f8e2940 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5d334f9491d2 - <alloc[2182bb758b4b3781]::boxed::Box<dyn for<'a, 'b> core[df12db4294e9bfd3]::ops::function::Fn<(&'a std[70759c8f55707aa4]::panic::PanicHookInfo<'b>,), Output = ()> + core[df12db4294e9bfd3]::marker::Send + core[df12db4294e9bfd3]::marker::Sync> as core[df12db4294e9bfd3]::ops::function::Fn<(&std[70759c8f55707aa4]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2334:9
[INFO] [stdout]   14:     0x5d334f9491d2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x5d334f92cf52 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x5d334f925cd9 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d334f92db4d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x5d334f9652cc - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d334f965042 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/result.rs:1871:5
[INFO] [stdout]   20:     0x5d334f8d2241 - <core[df12db4294e9bfd3]::result::Result<qwiic_relay_rs[47709e0eae42b506]::QwiicRelay, i2cdev[90a8d8cff803f6ea]::linux::LinuxI2CError>>::expect
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/result.rs:1184:23
[INFO] [stdout]   21:     0x5d334f8d33ad - qwiic_relay_rs[47709e0eae42b506]::tests::test_init
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:206:75
[INFO] [stdout]   22:     0x5d334f8d2027 - qwiic_relay_rs[47709e0eae42b506]::tests::test_init::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:203:19
[INFO] [stdout]   23:     0x5d334f8d59a6 - <qwiic_relay_rs[47709e0eae42b506]::tests::test_init::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5d334f8d5c2b - <fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5d334f8d5c2b - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:733:18
[INFO] [stdout]   26:     0x5d334f8e3295 - test[9d35eded1c95d3be]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:756:74
[INFO] [stdout]   27:     0x5d334f8e3295 - <core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x5d334f8e3295 - std[70759c8f55707aa4]::panicking::catch_unwind::do_call::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>, core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:576:43
[INFO] [stdout]   29:     0x5d334f8e3295 - std[70759c8f55707aa4]::panicking::catch_unwind::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x5d334f8e3295 - std[70759c8f55707aa4]::panic::catch_unwind::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>, core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5d334f8e3295 - test[9d35eded1c95d3be]::run_test_in_process
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:756:27
[INFO] [stdout]   32:     0x5d334f8e3295 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:677:43
[INFO] [stdout]   33:     0x5d334f8dcb54 - test[9d35eded1c95d3be]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:707:41
[INFO] [stdout]   34:     0x5d334f8dcb54 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x5d334f8e63f2 - std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   36:     0x5d334f8e63f2 - <core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x5d334f8e63f2 - std[70759c8f55707aa4]::panicking::catch_unwind::do_call::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:576:43
[INFO] [stdout]   38:     0x5d334f8e63f2 - std[70759c8f55707aa4]::panicking::catch_unwind::<(), core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x5d334f8e63f2 - std[70759c8f55707aa4]::panic::catch_unwind::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x5d334f8e63f2 - std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   41:     0x5d334f8e63f2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5d334f950239 - <alloc[2182bb758b4b3781]::boxed::Box<dyn core[df12db4294e9bfd3]::ops::function::FnOnce<(), Output = ()> + core[df12db4294e9bfd3]::marker::Send> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2320:9
[INFO] [stdout]   43:     0x5d334f950239 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   44:     0x7298988efdfa - <unknown>
[INFO] [stdout]   45:     0x7298989833d4 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     tests::test_init
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "0fd08a00cd8ca6c62c3dc1183b10d9137e5bf62820501fcf450158bf82d4b020", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0fd08a00cd8ca6c62c3dc1183b10d9137e5bf62820501fcf450158bf82d4b020", kill_on_drop: false }`
[INFO] [stdout] 0fd08a00cd8ca6c62c3dc1183b10d9137e5bf62820501fcf450158bf82d4b020
