[INFO] fetching crate libbeaglebone 0.5.0...
[INFO] testing libbeaglebone-0.5.0 against 1.69.0 for beta-1.70-1
[INFO] extracting crate libbeaglebone 0.5.0 into /workspace/builds/worker-0-tc1/source
[INFO] validating manifest of crates.io crate libbeaglebone 0.5.0 on toolchain 1.69.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate libbeaglebone 0.5.0
[INFO] finished tweaking crates.io crate libbeaglebone 0.5.0
[INFO] tweaked toml for crates.io crate libbeaglebone 0.5.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" __CARGO_TEST_CHANNEL_OVERRIDE_DO_NOT_USE_THIS="nightly" "/workspace/cargo-home/bin/cargo" "+1.69.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded advapi32-sys v0.2.0
[INFO] [stderr]   Downloaded ktmw32-sys v0.1.1
[INFO] [stderr]   Downloaded nix v0.8.1
[INFO] [stderr]   Downloaded winreg v0.4.0
[INFO] [stderr]   Downloaded serialport v1.0.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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4af01db370271f982d9b8bbf1b0543dcdc586496486ea49fe89eb003c5768ec1
[INFO] running `Command { std: "docker" "start" "-a" "4af01db370271f982d9b8bbf1b0543dcdc586496486ea49fe89eb003c5768ec1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4af01db370271f982d9b8bbf1b0543dcdc586496486ea49fe89eb003c5768ec1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4af01db370271f982d9b8bbf1b0543dcdc586496486ea49fe89eb003c5768ec1", kill_on_drop: false }`
[INFO] [stdout] 4af01db370271f982d9b8bbf1b0543dcdc586496486ea49fe89eb003c5768ec1
[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=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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 962aa9931082c4a84a02501e75d9948c1c0f039350983a7fe829d349d60ef7d8
[INFO] running `Command { std: "docker" "start" "-a" "962aa9931082c4a84a02501e75d9948c1c0f039350983a7fe829d349d60ef7d8", kill_on_drop: false }`
[INFO] [stderr]    Compiling bitflags v0.7.0
[INFO] [stderr]    Compiling bitflags v0.9.1
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]    Compiling backtrace v0.3.67
[INFO] [stderr]    Compiling termios v0.2.2
[INFO] [stderr]    Compiling ioctl-rs v0.1.6
[INFO] [stderr]    Compiling nix v0.8.1
[INFO] [stderr]    Compiling libudev v0.2.0
[INFO] [stderr]    Compiling serialport v1.0.1
[INFO] [stderr]    Compiling error-chain v0.10.0
[INFO] [stderr]    Compiling libbeaglebone v0.5.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]  --> src/lib.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |         const_err,
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `extra_requirement_in_impl` has been removed: converted into hard error, see issue #37166 <https://github.com/rust-lang/rust/issues/37166> for more information
[INFO] [stdout]  --> src/lib.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         extra_requirement_in_impl,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `legacy_directory_ownership` has been removed: converted into hard error, see issue #37872 <https://github.com/rust-lang/rust/issues/37872> for more information
[INFO] [stdout]   --> src/lib.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |         legacy_directory_ownership,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `plugin_as_library` has been removed: plugins have been deprecated and retired
[INFO] [stdout]   --> src/lib.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         plugin_as_library,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `private_no_mangle_fns` has been removed: no longer a warning, `#[no_mangle]` functions always exported
[INFO] [stdout]   --> src/lib.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         private_no_mangle_fns,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `private_no_mangle_statics` has been removed: no longer a warning, `#[no_mangle]` statics always exported
[INFO] [stdout]   --> src/lib.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |         private_no_mangle_statics,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `safe_extern_statics` has been removed: converted into hard error, see issue #36247 <https://github.com/rust-lang/rust/issues/36247> for more information
[INFO] [stdout]   --> src/lib.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         safe_extern_statics,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `unions_with_drop_fields`
[INFO] [stdout]   --> src/lib.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |         unions_with_drop_fields,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unknown_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/gpio.rs:230:32
[INFO] [stdout]     |
[INFO] [stdout] 230 |   pub fn read(&self) -> Result<(PinState)> {
[INFO] [stdout]     |                                ^        ^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:25:9
[INFO] [stdout]     |
[INFO] [stdout] 25  |         unused_parens,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 230 -   pub fn read(&self) -> Result<(PinState)> {
[INFO] [stdout] 230 +   pub fn read(&self) -> Result<PinState> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/uart.rs:46:39
[INFO] [stdout]    |
[INFO] [stdout] 46 |   pub fn new(uart_num: u32) -> Result<(UART)> {
[INFO] [stdout]    |                                       ^    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 46 -   pub fn new(uart_num: u32) -> Result<(UART)> {
[INFO] [stdout] 46 +   pub fn new(uart_num: u32) -> Result<UART> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/uart.rs:95:60
[INFO] [stdout]    |
[INFO] [stdout] 95 |   pub fn read_chars(&mut self, num_bytes: usize) -> Result<(Vec<u8>)> {
[INFO] [stdout]    |                                                            ^       ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 95 -   pub fn read_chars(&mut self, num_bytes: usize) -> Result<(Vec<u8>)> {
[INFO] [stdout] 95 +   pub fn read_chars(&mut self, num_bytes: usize) -> Result<Vec<u8>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/uart.rs:122:64
[INFO] [stdout]     |
[INFO] [stdout] 122 |   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<(String)> {
[INFO] [stdout]     |                                                                ^      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 122 -   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<(String)> {
[INFO] [stdout] 122 +   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<String> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/i2c.rs:69:37
[INFO] [stdout]    |
[INFO] [stdout] 69 |   pub fn new(i2c_num: u8) -> Result<(I2C)> {
[INFO] [stdout]    |                                     ^   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 69 -   pub fn new(i2c_num: u8) -> Result<(I2C)> {
[INFO] [stdout] 69 +   pub fn new(i2c_num: u8) -> Result<I2C> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/i2c.rs:156:36
[INFO] [stdout]     |
[INFO] [stdout] 156 |   pub fn read(&mut self) -> Result<(u8)> {
[INFO] [stdout]     |                                    ^  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 156 -   pub fn read(&mut self) -> Result<(u8)> {
[INFO] [stdout] 156 +   pub fn read(&mut self) -> Result<u8> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spi.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout] 7  | / bitflags! {
[INFO] [stdout] 8  | |     pub struct SPIModeFlags: u32 {
[INFO] [stdout] 9  | |         /// Clock Phase
[INFO] [stdout] 10 | |         const SPI_CPHA = 0x01;
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | |     }
[INFO] [stdout] 41 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spi.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout] 7  | / bitflags! {
[INFO] [stdout] 8  | |     pub struct SPIModeFlags: u32 {
[INFO] [stdout] 9  | |         /// Clock Phase
[INFO] [stdout] 10 | |         const SPI_CPHA = 0x01;
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | |     }
[INFO] [stdout] 41 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spi.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout] 7  | / bitflags! {
[INFO] [stdout] 8  | |     pub struct SPIModeFlags: u32 {
[INFO] [stdout] 9  | |         /// Clock Phase
[INFO] [stdout] 10 | |         const SPI_CPHA = 0x01;
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | |     }
[INFO] [stdout] 41 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/uart.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |   port: Box<SerialPort>,
[INFO] [stdout]    |             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |   port: Box<dyn SerialPort>,
[INFO] [stdout]    |             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `i2c_num` is never read
[INFO] [stdout]   --> src/i2c.rs:47:3
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct I2C {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] 47 |   i2c_num: u8,
[INFO] [stdout]    |   ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `I2C` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         unused,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    = note: `#[warn(dead_code)]` implied by `#[warn(unused)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bits_per_word`, `max_speed_hz`, `lsb_first`, and `spi_mode` are never read
[INFO] [stdout]    --> src/spi.rs:111:3
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub struct SPI {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] 111 |   bits_per_word: u8,
[INFO] [stdout]     |   ^^^^^^^^^^^^^
[INFO] [stdout] 112 |   max_speed_hz: u32,
[INFO] [stdout]     |   ^^^^^^^^^^^^
[INFO] [stdout] 113 |   lsb_first: bool,
[INFO] [stdout]     |   ^^^^^^^^^
[INFO] [stdout] 114 |   spi_mode: SPIModeFlags,
[INFO] [stdout]     |   ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SPI` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1.94s
[INFO] running `Command { std: "docker" "inspect" "962aa9931082c4a84a02501e75d9948c1c0f039350983a7fe829d349d60ef7d8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "962aa9931082c4a84a02501e75d9948c1c0f039350983a7fe829d349d60ef7d8", kill_on_drop: false }`
[INFO] [stdout] 962aa9931082c4a84a02501e75d9948c1c0f039350983a7fe829d349d60ef7d8
[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=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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] eec699f89de83ed332890c58c691a773aec2eb7f9676c42b1191db04735d7704
[INFO] running `Command { std: "docker" "start" "-a" "eec699f89de83ed332890c58c691a773aec2eb7f9676c42b1191db04735d7704", kill_on_drop: false }`
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]  --> src/lib.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |         const_err,
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `extra_requirement_in_impl` has been removed: converted into hard error, see issue #37166 <https://github.com/rust-lang/rust/issues/37166> for more information
[INFO] [stdout]  --> src/lib.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         extra_requirement_in_impl,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `legacy_directory_ownership` has been removed: converted into hard error, see issue #37872 <https://github.com/rust-lang/rust/issues/37872> for more information
[INFO] [stdout]   --> src/lib.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |         legacy_directory_ownership,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `plugin_as_library` has been removed: plugins have been deprecated and retired
[INFO] [stdout]   --> src/lib.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         plugin_as_library,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `private_no_mangle_fns` has been removed: no longer a warning, `#[no_mangle]` functions always exported
[INFO] [stdout]   --> src/lib.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         private_no_mangle_fns,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `private_no_mangle_statics` has been removed: no longer a warning, `#[no_mangle]` statics always exported
[INFO] [stdout]   --> src/lib.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |         private_no_mangle_statics,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `safe_extern_statics` has been removed: converted into hard error, see issue #36247 <https://github.com/rust-lang/rust/issues/36247> for more information
[INFO] [stdout]   --> src/lib.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         safe_extern_statics,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `unions_with_drop_fields`
[INFO] [stdout]   --> src/lib.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |         unions_with_drop_fields,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unknown_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/gpio.rs:230:32
[INFO] [stdout]     |
[INFO] [stdout] 230 |   pub fn read(&self) -> Result<(PinState)> {
[INFO] [stdout]     |                                ^        ^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:25:9
[INFO] [stdout]     |
[INFO] [stdout] 25  |         unused_parens,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 230 -   pub fn read(&self) -> Result<(PinState)> {
[INFO] [stdout] 230 +   pub fn read(&self) -> Result<PinState> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/uart.rs:46:39
[INFO] [stdout]    |
[INFO] [stdout] 46 |   pub fn new(uart_num: u32) -> Result<(UART)> {
[INFO] [stdout]    |                                       ^    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 46 -   pub fn new(uart_num: u32) -> Result<(UART)> {
[INFO] [stdout] 46 +   pub fn new(uart_num: u32) -> Result<UART> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/uart.rs:95:60
[INFO] [stdout]    |
[INFO] [stdout] 95 |   pub fn read_chars(&mut self, num_bytes: usize) -> Result<(Vec<u8>)> {
[INFO] [stdout]    |                                                            ^       ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 95 -   pub fn read_chars(&mut self, num_bytes: usize) -> Result<(Vec<u8>)> {
[INFO] [stdout] 95 +   pub fn read_chars(&mut self, num_bytes: usize) -> Result<Vec<u8>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/uart.rs:122:64
[INFO] [stdout]     |
[INFO] [stdout] 122 |   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<(String)> {
[INFO] [stdout]     |                                                                ^      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 122 -   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<(String)> {
[INFO] [stdout] 122 +   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<String> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/i2c.rs:69:37
[INFO] [stdout]    |
[INFO] [stdout] 69 |   pub fn new(i2c_num: u8) -> Result<(I2C)> {
[INFO] [stdout]    |                                     ^   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 69 -   pub fn new(i2c_num: u8) -> Result<(I2C)> {
[INFO] [stdout] 69 +   pub fn new(i2c_num: u8) -> Result<I2C> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/i2c.rs:156:36
[INFO] [stdout]     |
[INFO] [stdout] 156 |   pub fn read(&mut self) -> Result<(u8)> {
[INFO] [stdout]     |                                    ^  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 156 -   pub fn read(&mut self) -> Result<(u8)> {
[INFO] [stdout] 156 +   pub fn read(&mut self) -> Result<u8> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spi.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout] 7  | / bitflags! {
[INFO] [stdout] 8  | |     pub struct SPIModeFlags: u32 {
[INFO] [stdout] 9  | |         /// Clock Phase
[INFO] [stdout] 10 | |         const SPI_CPHA = 0x01;
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | |     }
[INFO] [stdout] 41 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spi.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout] 7  | / bitflags! {
[INFO] [stdout] 8  | |     pub struct SPIModeFlags: u32 {
[INFO] [stdout] 9  | |         /// Clock Phase
[INFO] [stdout] 10 | |         const SPI_CPHA = 0x01;
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | |     }
[INFO] [stdout] 41 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spi.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout] 7  | / bitflags! {
[INFO] [stdout] 8  | |     pub struct SPIModeFlags: u32 {
[INFO] [stdout] 9  | |         /// Clock Phase
[INFO] [stdout] 10 | |         const SPI_CPHA = 0x01;
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | |     }
[INFO] [stdout] 41 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/uart.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |   port: Box<SerialPort>,
[INFO] [stdout]    |             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |   port: Box<dyn SerialPort>,
[INFO] [stdout]    |             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `i2c_num` is never read
[INFO] [stdout]   --> src/i2c.rs:47:3
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct I2C {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] 47 |   i2c_num: u8,
[INFO] [stdout]    |   ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `I2C` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         unused,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    = note: `#[warn(dead_code)]` implied by `#[warn(unused)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bits_per_word`, `max_speed_hz`, `lsb_first`, and `spi_mode` are never read
[INFO] [stdout]    --> src/spi.rs:111:3
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub struct SPI {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] 111 |   bits_per_word: u8,
[INFO] [stdout]     |   ^^^^^^^^^^^^^
[INFO] [stdout] 112 |   max_speed_hz: u32,
[INFO] [stdout]     |   ^^^^^^^^^^^^
[INFO] [stdout] 113 |   lsb_first: bool,
[INFO] [stdout]     |   ^^^^^^^^^
[INFO] [stdout] 114 |   spi_mode: SPIModeFlags,
[INFO] [stdout]     |   ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SPI` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling libbeaglebone v0.5.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]  --> src/lib.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |         const_err,
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `extra_requirement_in_impl` has been removed: converted into hard error, see issue #37166 <https://github.com/rust-lang/rust/issues/37166> for more information
[INFO] [stdout]  --> src/lib.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         extra_requirement_in_impl,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `legacy_directory_ownership` has been removed: converted into hard error, see issue #37872 <https://github.com/rust-lang/rust/issues/37872> for more information
[INFO] [stdout]   --> src/lib.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |         legacy_directory_ownership,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `plugin_as_library` has been removed: plugins have been deprecated and retired
[INFO] [stdout]   --> src/lib.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         plugin_as_library,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `private_no_mangle_fns` has been removed: no longer a warning, `#[no_mangle]` functions always exported
[INFO] [stdout]   --> src/lib.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         private_no_mangle_fns,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `private_no_mangle_statics` has been removed: no longer a warning, `#[no_mangle]` statics always exported
[INFO] [stdout]   --> src/lib.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |         private_no_mangle_statics,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `safe_extern_statics` has been removed: converted into hard error, see issue #36247 <https://github.com/rust-lang/rust/issues/36247> for more information
[INFO] [stdout]   --> src/lib.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         safe_extern_statics,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `unions_with_drop_fields`
[INFO] [stdout]   --> src/lib.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |         unions_with_drop_fields,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unknown_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/gpio.rs:230:32
[INFO] [stdout]     |
[INFO] [stdout] 230 |   pub fn read(&self) -> Result<(PinState)> {
[INFO] [stdout]     |                                ^        ^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:25:9
[INFO] [stdout]     |
[INFO] [stdout] 25  |         unused_parens,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 230 -   pub fn read(&self) -> Result<(PinState)> {
[INFO] [stdout] 230 +   pub fn read(&self) -> Result<PinState> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/uart.rs:46:39
[INFO] [stdout]    |
[INFO] [stdout] 46 |   pub fn new(uart_num: u32) -> Result<(UART)> {
[INFO] [stdout]    |                                       ^    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 46 -   pub fn new(uart_num: u32) -> Result<(UART)> {
[INFO] [stdout] 46 +   pub fn new(uart_num: u32) -> Result<UART> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/uart.rs:95:60
[INFO] [stdout]    |
[INFO] [stdout] 95 |   pub fn read_chars(&mut self, num_bytes: usize) -> Result<(Vec<u8>)> {
[INFO] [stdout]    |                                                            ^       ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 95 -   pub fn read_chars(&mut self, num_bytes: usize) -> Result<(Vec<u8>)> {
[INFO] [stdout] 95 +   pub fn read_chars(&mut self, num_bytes: usize) -> Result<Vec<u8>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/uart.rs:122:64
[INFO] [stdout]     |
[INFO] [stdout] 122 |   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<(String)> {
[INFO] [stdout]     |                                                                ^      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 122 -   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<(String)> {
[INFO] [stdout] 122 +   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<String> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/i2c.rs:69:37
[INFO] [stdout]    |
[INFO] [stdout] 69 |   pub fn new(i2c_num: u8) -> Result<(I2C)> {
[INFO] [stdout]    |                                     ^   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 69 -   pub fn new(i2c_num: u8) -> Result<(I2C)> {
[INFO] [stdout] 69 +   pub fn new(i2c_num: u8) -> Result<I2C> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/i2c.rs:156:36
[INFO] [stdout]     |
[INFO] [stdout] 156 |   pub fn read(&mut self) -> Result<(u8)> {
[INFO] [stdout]     |                                    ^  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 156 -   pub fn read(&mut self) -> Result<(u8)> {
[INFO] [stdout] 156 +   pub fn read(&mut self) -> Result<u8> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spi.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout] 7  | / bitflags! {
[INFO] [stdout] 8  | |     pub struct SPIModeFlags: u32 {
[INFO] [stdout] 9  | |         /// Clock Phase
[INFO] [stdout] 10 | |         const SPI_CPHA = 0x01;
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | |     }
[INFO] [stdout] 41 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spi.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout] 7  | / bitflags! {
[INFO] [stdout] 8  | |     pub struct SPIModeFlags: u32 {
[INFO] [stdout] 9  | |         /// Clock Phase
[INFO] [stdout] 10 | |         const SPI_CPHA = 0x01;
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | |     }
[INFO] [stdout] 41 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spi.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout] 7  | / bitflags! {
[INFO] [stdout] 8  | |     pub struct SPIModeFlags: u32 {
[INFO] [stdout] 9  | |         /// Clock Phase
[INFO] [stdout] 10 | |         const SPI_CPHA = 0x01;
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | |     }
[INFO] [stdout] 41 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/uart.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |   port: Box<SerialPort>,
[INFO] [stdout]    |             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |   port: Box<dyn SerialPort>,
[INFO] [stdout]    |             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `i2c_num` is never read
[INFO] [stdout]   --> src/i2c.rs:47:3
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct I2C {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] 47 |   i2c_num: u8,
[INFO] [stdout]    |   ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `I2C` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         unused,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    = note: `#[warn(dead_code)]` implied by `#[warn(unused)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bits_per_word`, `max_speed_hz`, `lsb_first`, and `spi_mode` are never read
[INFO] [stdout]    --> src/spi.rs:111:3
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub struct SPI {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] 111 |   bits_per_word: u8,
[INFO] [stdout]     |   ^^^^^^^^^^^^^
[INFO] [stdout] 112 |   max_speed_hz: u32,
[INFO] [stdout]     |   ^^^^^^^^^^^^
[INFO] [stdout] 113 |   lsb_first: bool,
[INFO] [stdout]     |   ^^^^^^^^^
[INFO] [stdout] 114 |   spi_mode: SPIModeFlags,
[INFO] [stdout]     |   ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SPI` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 1.26s
[INFO] running `Command { std: "docker" "inspect" "eec699f89de83ed332890c58c691a773aec2eb7f9676c42b1191db04735d7704", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eec699f89de83ed332890c58c691a773aec2eb7f9676c42b1191db04735d7704", kill_on_drop: false }`
[INFO] [stdout] eec699f89de83ed332890c58c691a773aec2eb7f9676c42b1191db04735d7704
[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=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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 670f3b69c62e2ed8980e9e0fe3ffae1b75a014cbbf15fc70873a4af815ef0e2a
[INFO] running `Command { std: "docker" "start" "-a" "670f3b69c62e2ed8980e9e0fe3ffae1b75a014cbbf15fc70873a4af815ef0e2a", kill_on_drop: false }`
[INFO] [stderr] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stderr]  --> src/lib.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |         const_err,
[INFO] [stderr]   |         ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: lint `extra_requirement_in_impl` has been removed: converted into hard error, see issue #37166 <https://github.com/rust-lang/rust/issues/37166> for more information
[INFO] [stderr]  --> src/lib.rs:8:9
[INFO] [stderr]   |
[INFO] [stderr] 8 |         extra_requirement_in_impl,
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lint `legacy_directory_ownership` has been removed: converted into hard error, see issue #37872 <https://github.com/rust-lang/rust/issues/37872> for more information
[INFO] [stderr]   --> src/lib.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 |         legacy_directory_ownership,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lint `plugin_as_library` has been removed: plugins have been deprecated and retired
[INFO] [stderr]   --> src/lib.rs:16:9
[INFO] [stderr]    |
[INFO] [stderr] 16 |         plugin_as_library,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lint `private_no_mangle_fns` has been removed: no longer a warning, `#[no_mangle]` functions always exported
[INFO] [stderr]   --> src/lib.rs:18:9
[INFO] [stderr]    |
[INFO] [stderr] 18 |         private_no_mangle_fns,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lint `private_no_mangle_statics` has been removed: no longer a warning, `#[no_mangle]` statics always exported
[INFO] [stderr]   --> src/lib.rs:19:9
[INFO] [stderr]    |
[INFO] [stderr] 19 |         private_no_mangle_statics,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lint `safe_extern_statics` has been removed: converted into hard error, see issue #36247 <https://github.com/rust-lang/rust/issues/36247> for more information
[INFO] [stderr]   --> src/lib.rs:20:9
[INFO] [stderr]    |
[INFO] [stderr] 20 |         safe_extern_statics,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unknown lint: `unions_with_drop_fields`
[INFO] [stderr]   --> src/lib.rs:22:9
[INFO] [stderr]    |
[INFO] [stderr] 22 |         unions_with_drop_fields,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unknown_lints)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> src/gpio.rs:230:32
[INFO] [stderr]     |
[INFO] [stderr] 230 |   pub fn read(&self) -> Result<(PinState)> {
[INFO] [stderr]     |                                ^        ^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:25:9
[INFO] [stderr]     |
[INFO] [stderr] 25  |         unused_parens,
[INFO] [stderr]     |         ^^^^^^^^^^^^^
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 230 -   pub fn read(&self) -> Result<(PinState)> {
[INFO] [stderr] 230 +   pub fn read(&self) -> Result<PinState> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/uart.rs:46:39
[INFO] [stderr]    |
[INFO] [stderr] 46 |   pub fn new(uart_num: u32) -> Result<(UART)> {
[INFO] [stderr]    |                                       ^    ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 46 -   pub fn new(uart_num: u32) -> Result<(UART)> {
[INFO] [stderr] 46 +   pub fn new(uart_num: u32) -> Result<UART> {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/uart.rs:95:60
[INFO] [stderr]    |
[INFO] [stderr] 95 |   pub fn read_chars(&mut self, num_bytes: usize) -> Result<(Vec<u8>)> {
[INFO] [stderr]    |                                                            ^       ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 95 -   pub fn read_chars(&mut self, num_bytes: usize) -> Result<(Vec<u8>)> {
[INFO] [stderr] 95 +   pub fn read_chars(&mut self, num_bytes: usize) -> Result<Vec<u8>> {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> src/uart.rs:122:64
[INFO] [stderr]     |
[INFO] [stderr] 122 |   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<(String)> {
[INFO] [stderr]     |                                                                ^      ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 122 -   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<(String)> {
[INFO] [stderr] 122 +   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<String> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/i2c.rs:69:37
[INFO] [stderr]    |
[INFO] [stderr] 69 |   pub fn new(i2c_num: u8) -> Result<(I2C)> {
[INFO] [stderr]    |                                     ^   ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 69 -   pub fn new(i2c_num: u8) -> Result<(I2C)> {
[INFO] [stderr] 69 +   pub fn new(i2c_num: u8) -> Result<I2C> {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> src/i2c.rs:156:36
[INFO] [stderr]     |
[INFO] [stderr] 156 |   pub fn read(&mut self) -> Result<(u8)> {
[INFO] [stderr]     |                                    ^  ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 156 -   pub fn read(&mut self) -> Result<(u8)> {
[INFO] [stderr] 156 +   pub fn read(&mut self) -> Result<u8> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spi.rs:7:1
[INFO] [stderr]    |
[INFO] [stderr] 7  | / bitflags! {
[INFO] [stderr] 8  | |     pub struct SPIModeFlags: u32 {
[INFO] [stderr] 9  | |         /// Clock Phase
[INFO] [stderr] 10 | |         const SPI_CPHA = 0x01;
[INFO] [stderr] ...  |
[INFO] [stderr] 40 | |     }
[INFO] [stderr] 41 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spi.rs:7:1
[INFO] [stderr]    |
[INFO] [stderr] 7  | / bitflags! {
[INFO] [stderr] 8  | |     pub struct SPIModeFlags: u32 {
[INFO] [stderr] 9  | |         /// Clock Phase
[INFO] [stderr] 10 | |         const SPI_CPHA = 0x01;
[INFO] [stderr] ...  |
[INFO] [stderr] 40 | |     }
[INFO] [stderr] 41 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/uart.rs:25:13
[INFO] [stderr]    |
[INFO] [stderr] 25 |   port: Box<SerialPort>,
[INFO] [stderr]    |             ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 25 |   port: Box<dyn SerialPort>,
[INFO] [stderr]    |             +++
[INFO] [stderr] 
[INFO] [stderr] warning: field `i2c_num` is never read
[INFO] [stderr]   --> src/i2c.rs:47:3
[INFO] [stderr]    |
[INFO] [stderr] 46 | pub struct I2C {
[INFO] [stderr]    |            --- field in this struct
[INFO] [stderr] 47 |   i2c_num: u8,
[INFO] [stderr]    |   ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `I2C` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/lib.rs:23:9
[INFO] [stderr]    |
[INFO] [stderr] 23 |         unused,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr]    = note: `#[warn(dead_code)]` implied by `#[warn(unused)]`
[INFO] [stderr] 
[INFO] [stderr] warning: fields `bits_per_word`, `max_speed_hz`, `lsb_first`, and `spi_mode` are never read
[INFO] [stderr]    --> src/spi.rs:111:3
[INFO] [stderr]     |
[INFO] [stderr] 110 | pub struct SPI {
[INFO] [stderr]     |            --- fields in this struct
[INFO] [stderr] 111 |   bits_per_word: u8,
[INFO] [stderr]     |   ^^^^^^^^^^^^^
[INFO] [stderr] 112 |   max_speed_hz: u32,
[INFO] [stderr]     |   ^^^^^^^^^^^^
[INFO] [stderr] 113 |   lsb_first: bool,
[INFO] [stderr]     |   ^^^^^^^^^
[INFO] [stderr] 114 |   spi_mode: SPIModeFlags,
[INFO] [stderr]     |   ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `SPI` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: `libbeaglebone` (lib) generated 20 warnings (1 duplicate) (run `cargo fix --lib -p libbeaglebone` to apply 7 suggestions)
[INFO] [stderr] warning: `libbeaglebone` (lib test) generated 20 warnings (20 duplicates)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/libbeaglebone-ffd87554a8674ceb)
[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 libbeaglebone
[INFO] [stderr] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stderr]  --> /opt/rustwide/workdir/src/lib.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |         const_err,
[INFO] [stderr]   |         ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: lint `extra_requirement_in_impl` has been removed: converted into hard error, see issue #37166 <https://github.com/rust-lang/rust/issues/37166> for more information
[INFO] [stderr]  --> /opt/rustwide/workdir/src/lib.rs:8:9
[INFO] [stderr]   |
[INFO] [stderr] 8 |         extra_requirement_in_impl,
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lint `legacy_directory_ownership` has been removed: converted into hard error, see issue #37872 <https://github.com/rust-lang/rust/issues/37872> for more information
[INFO] [stderr]   --> /opt/rustwide/workdir/src/lib.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 |         legacy_directory_ownership,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lint `plugin_as_library` has been removed: plugins have been deprecated and retired
[INFO] [stderr]   --> /opt/rustwide/workdir/src/lib.rs:16:9
[INFO] [stderr]    |
[INFO] [stderr] 16 |         plugin_as_library,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lint `private_no_mangle_fns` has been removed: no longer a warning, `#[no_mangle]` functions always exported
[INFO] [stderr]   --> /opt/rustwide/workdir/src/lib.rs:18:9
[INFO] [stderr]    |
[INFO] [stderr] 18 |         private_no_mangle_fns,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lint `private_no_mangle_statics` has been removed: no longer a warning, `#[no_mangle]` statics always exported
[INFO] [stderr]   --> /opt/rustwide/workdir/src/lib.rs:19:9
[INFO] [stderr]    |
[INFO] [stderr] 19 |         private_no_mangle_statics,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lint `safe_extern_statics` has been removed: converted into hard error, see issue #36247 <https://github.com/rust-lang/rust/issues/36247> for more information
[INFO] [stderr]   --> /opt/rustwide/workdir/src/lib.rs:20:9
[INFO] [stderr]    |
[INFO] [stderr] 20 |         safe_extern_statics,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unknown lint: `unions_with_drop_fields`
[INFO] [stderr]   --> /opt/rustwide/workdir/src/lib.rs:22:9
[INFO] [stderr]    |
[INFO] [stderr] 22 |         unions_with_drop_fields,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unknown_lints)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> /opt/rustwide/workdir/src/gpio.rs:230:32
[INFO] [stderr]     |
[INFO] [stderr] 230 |   pub fn read(&self) -> Result<(PinState)> {
[INFO] [stderr]     |                                ^        ^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> /opt/rustwide/workdir/src/lib.rs:25:9
[INFO] [stderr]     |
[INFO] [stderr] 25  |         unused_parens,
[INFO] [stderr]     |         ^^^^^^^^^^^^^
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 230 -   pub fn read(&self) -> Result<(PinState)> {
[INFO] [stderr] 230 +   pub fn read(&self) -> Result<PinState> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> /opt/rustwide/workdir/src/uart.rs:46:39
[INFO] [stderr]    |
[INFO] [stderr] 46 |   pub fn new(uart_num: u32) -> Result<(UART)> {
[INFO] [stderr]    |                                       ^    ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 46 -   pub fn new(uart_num: u32) -> Result<(UART)> {
[INFO] [stderr] 46 +   pub fn new(uart_num: u32) -> Result<UART> {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> /opt/rustwide/workdir/src/uart.rs:95:60
[INFO] [stderr]    |
[INFO] [stderr] 95 |   pub fn read_chars(&mut self, num_bytes: usize) -> Result<(Vec<u8>)> {
[INFO] [stderr]    |                                                            ^       ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 95 -   pub fn read_chars(&mut self, num_bytes: usize) -> Result<(Vec<u8>)> {
[INFO] [stderr] 95 +   pub fn read_chars(&mut self, num_bytes: usize) -> Result<Vec<u8>> {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> /opt/rustwide/workdir/src/uart.rs:122:64
[INFO] [stderr]     |
[INFO] [stderr] 122 |   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<(String)> {
[INFO] [stderr]     |                                                                ^      ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 122 -   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<(String)> {
[INFO] [stderr] 122 +   pub fn read_to_string(&mut self, num_bytes: usize) -> Result<String> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> /opt/rustwide/workdir/src/i2c.rs:69:37
[INFO] [stderr]    |
[INFO] [stderr] 69 |   pub fn new(i2c_num: u8) -> Result<(I2C)> {
[INFO] [stderr]    |                                     ^   ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 69 -   pub fn new(i2c_num: u8) -> Result<(I2C)> {
[INFO] [stderr] 69 +   pub fn new(i2c_num: u8) -> Result<I2C> {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> /opt/rustwide/workdir/src/i2c.rs:156:36
[INFO] [stderr]     |
[INFO] [stderr] 156 |   pub fn read(&mut self) -> Result<(u8)> {
[INFO] [stderr]     |                                    ^  ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 156 -   pub fn read(&mut self) -> Result<(u8)> {
[INFO] [stderr] 156 +   pub fn read(&mut self) -> Result<u8> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: 14 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 22 tests
[INFO] [stdout] test src/adc.rs - adc::ADC::read (line 39) - compile ... ok
[INFO] [stdout] test src/gpio.rs - gpio::GPIO::write (line 171) - compile ... ok
[INFO] [stdout] test src/gpio.rs - gpio::GPIO::set_direction (line 91) - compile ... ok
[INFO] [stdout] test src/gpio.rs - gpio::GPIO::read (line 211) - compile ... ok
[INFO] [stdout] test src/adc.rs - adc::ADC::scaled_read (line 69) - compile ... ok
[INFO] [stdout] test src/i2c.rs - i2c::I2C::read (line 140) - compile ... ok
[INFO] [stdout] test src/uart.rs - uart::UART::new (line 33) - compile ... ok
[INFO] [stdout] test src/pwm.rs - pwm::PWM::write (line 205) - compile ... ok
[INFO] [stdout] test src/pwm.rs - pwm::PWM::set_period (line 128) - compile ... ok
[INFO] [stdout] test src/pwm.rs - pwm::PWM::set_export (line 79) - compile ... ok
[INFO] [stdout] test src/i2c.rs - i2c::I2C::new (line 56) - compile ... ok
[INFO] [stdout] test src/i2c.rs - i2c::I2C::set_slave_address (line 85) - compile ... ok
[INFO] [stdout] test src/pwm.rs - pwm::PWM::set_state (line 163) - compile ... ok
[INFO] [stdout] test src/gpio.rs - gpio::GPIO::set_export (line 127) - compile ... ok
[INFO] [stdout] test src/i2c.rs - i2c::I2C::write (line 112) - compile ... ok
[INFO] [stdout] test src/uart.rs - uart::UART::read_to_string (line 113) - compile ... ok
[INFO] [stdout] test src/uart.rs - uart::UART::read_chars (line 86) - compile ... ok
[INFO] [stdout] test src/pwm.rs - pwm::PWM::new (line 54) - compile ... ok
[INFO] [stdout] test src/pwm.rs - pwm::PWM::set_duty_cycle (line 250) - compile ... ok
[INFO] [stdout] test src/uart.rs - uart::UART::write (line 59) - compile ... ok
[INFO] [stdout] test src/lib.rs - prelude (line 57) ... ok
[INFO] [stdout] test src/gpio.rs - gpio::GPIO::new (line 69) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.59s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "670f3b69c62e2ed8980e9e0fe3ffae1b75a014cbbf15fc70873a4af815ef0e2a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "670f3b69c62e2ed8980e9e0fe3ffae1b75a014cbbf15fc70873a4af815ef0e2a", kill_on_drop: false }`
[INFO] [stdout] 670f3b69c62e2ed8980e9e0fe3ffae1b75a014cbbf15fc70873a4af815ef0e2a
