[INFO] fetching crate mlx9064x 0.2.1...
[INFO] testing mlx9064x-0.2.1 against 1.91.0 for beta-1.92-2
[INFO] extracting crate mlx9064x 0.2.1 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate mlx9064x 0.2.1
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate mlx9064x 0.2.1
[INFO] tweaked toml for crates.io crate mlx9064x 0.2.1 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate mlx9064x 0.2.1 on toolchain 1.91.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.91.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate mlx9064x 0.2.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.91.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serial-unix v0.4.0
[INFO] [stderr]   Downloaded num_enum v0.5.2
[INFO] [stderr]   Downloaded paste v1.0.5
[INFO] [stderr]   Downloaded linux-embedded-hal v0.3.0
[INFO] [stderr]   Downloaded semver v1.0.3
[INFO] [stderr]   Downloaded anyhow v1.0.42
[INFO] [stderr]   Downloaded arrayvec v0.7.1
[INFO] [stderr]   Downloaded embedded-hal v0.2.5
[INFO] [stderr]   Downloaded termios v0.2.2
[INFO] [stderr]   Downloaded spidev v0.4.1
[INFO] [stderr]   Downloaded num_enum_derive v0.5.2
[INFO] [stderr]   Downloaded ioctl-rs v0.1.6
[INFO] [stderr]   Downloaded serial-core v0.4.0
[INFO] [stderr]   Downloaded syn v1.0.73
[INFO] [stderr]   Downloaded libc v0.2.98
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e3c28c2f948d99f7482c2a6dcb41af703e2a29b3714392fac5468594dd9fa823
[INFO] running `Command { std: "docker" "start" "-a" "e3c28c2f948d99f7482c2a6dcb41af703e2a29b3714392fac5468594dd9fa823", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e3c28c2f948d99f7482c2a6dcb41af703e2a29b3714392fac5468594dd9fa823", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e3c28c2f948d99f7482c2a6dcb41af703e2a29b3714392fac5468594dd9fa823", kill_on_drop: false }`
[INFO] [stdout] e3c28c2f948d99f7482c2a6dcb41af703e2a29b3714392fac5468594dd9fa823
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b3ae52e688b88c9b69af62a2fb5da1bcd9d0c4b8e36b25368ac96de2790971cf
[INFO] running `Command { std: "docker" "start" "-a" "b3ae52e688b88c9b69af62a2fb5da1bcd9d0c4b8e36b25368ac96de2790971cf", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.27
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling syn v1.0.73
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling nb v1.0.0
[INFO] [stderr]    Compiling arrayvec v0.7.1
[INFO] [stderr]    Compiling paste v1.0.5
[INFO] [stderr]    Compiling nb v0.1.3
[INFO] [stderr]    Compiling embedded-hal v0.2.5
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling num_enum_derive v0.5.2
[INFO] [stderr]    Compiling num_enum v0.5.2
[INFO] [stderr]    Compiling mlx9064x v0.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:160:55
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let even_row_pattern = core::array::IntoIter::new([row_even_col_even, row_even_col_odd]);
[INFO] [stdout]     |                                                       ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:161:54
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let odd_row_pattern = core::array::IntoIter::new([row_odd_col_even, row_odd_col_odd]);
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:103:60
[INFO] [stdout]     |
[INFO] [stdout] 103 |             let rows_coefficients = core::array::IntoIter::new(rows_coefficients)
[INFO] [stdout]     |                                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:224:36
[INFO] [stdout]     |
[INFO] [stdout] 224 |             core::array::IntoIter::new(alpha_pixels)
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:261:68
[INFO] [stdout]     |
[INFO] [stdout] 261 |         let k_v_pattern: ArrayVec<f32, 4> = core::array::IntoIter::new(k_v_avg)
[INFO] [stdout]     |                                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write_mask` is never used
[INFO] [stdout]   --> src/register.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) trait Register: Into<[u8; 2]> + for<'a> From<&'a [u8]> {
[INFO] [stdout]    |                  -------- associated function in this trait
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn write_mask() -> [u8; 2];
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.26s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: num_enum_derive v0.5.2
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "b3ae52e688b88c9b69af62a2fb5da1bcd9d0c4b8e36b25368ac96de2790971cf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b3ae52e688b88c9b69af62a2fb5da1bcd9d0c4b8e36b25368ac96de2790971cf", kill_on_drop: false }`
[INFO] [stdout] b3ae52e688b88c9b69af62a2fb5da1bcd9d0c4b8e36b25368ac96de2790971cf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 34e5e3f0ad1824178ffdf7d5dece1ddce6c0653d95b13a9752b28f3e58b8ed8b
[INFO] running `Command { std: "docker" "start" "-a" "34e5e3f0ad1824178ffdf7d5dece1ddce6c0653d95b13a9752b28f3e58b8ed8b", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.98
[INFO] [stderr]    Compiling semver v1.0.3
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]    Compiling nb v0.1.3
[INFO] [stderr]    Compiling float-cmp v0.9.0
[INFO] [stderr]    Compiling embedded-hal v0.2.5
[INFO] [stderr]    Compiling mlx9064x v0.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:160:55
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let even_row_pattern = core::array::IntoIter::new([row_even_col_even, row_even_col_odd]);
[INFO] [stdout]     |                                                       ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:161:54
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let odd_row_pattern = core::array::IntoIter::new([row_odd_col_even, row_odd_col_odd]);
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:103:60
[INFO] [stdout]     |
[INFO] [stdout] 103 |             let rows_coefficients = core::array::IntoIter::new(rows_coefficients)
[INFO] [stdout]     |                                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:224:36
[INFO] [stdout]     |
[INFO] [stdout] 224 |             core::array::IntoIter::new(alpha_pixels)
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:261:68
[INFO] [stdout]     |
[INFO] [stdout] 261 |         let k_v_pattern: ArrayVec<f32, 4> = core::array::IntoIter::new(k_v_avg)
[INFO] [stdout]     |                                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling cast v0.2.7
[INFO] [stderr]    Compiling serial-core v0.4.0
[INFO] [stderr]    Compiling termios v0.2.2
[INFO] [stderr]    Compiling ioctl-rs v0.1.6
[INFO] [stdout] warning: associated function `write_mask` is never used
[INFO] [stdout]   --> src/register.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) trait Register: Into<[u8; 2]> + for<'a> From<&'a [u8]> {
[INFO] [stdout]    |                  -------- associated function in this trait
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn write_mask() -> [u8; 2];
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling serial-unix v0.4.0
[INFO] [stderr]    Compiling spidev v0.4.1
[INFO] [stderr]    Compiling sysfs_gpio v0.5.4
[INFO] [stderr]    Compiling i2cdev v0.4.4
[INFO] [stderr]    Compiling linux-embedded-hal v0.3.0
[INFO] [stdout] warning: unused import: `Address`
[INFO] [stdout]    --> src/mlx90640/mod.rs:197:32
[INFO] [stdout]     |
[INFO] [stdout] 197 |     use crate::{AccessPattern, Address, MelexisCamera, Resolution, Subpage};
[INFO] [stdout]     |                                ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:160:55
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let even_row_pattern = core::array::IntoIter::new([row_even_col_even, row_even_col_odd]);
[INFO] [stdout]     |                                                       ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:161:54
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let odd_row_pattern = core::array::IntoIter::new([row_odd_col_even, row_odd_col_odd]);
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:103:60
[INFO] [stdout]     |
[INFO] [stdout] 103 |             let rows_coefficients = core::array::IntoIter::new(rows_coefficients)
[INFO] [stdout]     |                                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:224:36
[INFO] [stdout]     |
[INFO] [stdout] 224 |             core::array::IntoIter::new(alpha_pixels)
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stdout]    --> src/mlx90640/eeprom.rs:261:68
[INFO] [stdout]     |
[INFO] [stdout] 261 |         let k_v_pattern: ArrayVec<f32, 4> = core::array::IntoIter::new(k_v_avg)
[INFO] [stdout]     |                                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/test/i2c_mock.rs:66:19
[INFO] [stdout]    |
[INFO] [stdout] 66 |     IllegalAccess(Address),
[INFO] [stdout]    |     ------------- ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MockError` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 66 -     IllegalAccess(Address),
[INFO] [stdout] 66 +     IllegalAccess(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/test/i2c_mock.rs:69:25
[INFO] [stdout]    |
[INFO] [stdout] 69 |     IllegalWriteAddress(Address),
[INFO] [stdout]    |     ------------------- ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MockError` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 69 -     IllegalWriteAddress(Address),
[INFO] [stdout] 69 +     IllegalWriteAddress(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/test/i2c_mock.rs:72:23
[INFO] [stdout]    |
[INFO] [stdout] 72 |     IllegalWriteValue(Address, u16),
[INFO] [stdout]    |     ----------------- ^^^^^^^  ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MockError` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 72 -     IllegalWriteValue(Address, u16),
[INFO] [stdout] 72 +     IllegalWriteValue((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/test/i2c_mock.rs:75:26
[INFO] [stdout]    |
[INFO] [stdout] 75 |     UnknownMemoryAddress(Address),
[INFO] [stdout]    |     -------------------- ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MockError` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 75 -     UnknownMemoryAddress(Address),
[INFO] [stdout] 75 +     UnknownMemoryAddress(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/test/i2c_mock.rs:78:23
[INFO] [stdout]    |
[INFO] [stdout] 78 |     UnknownI2cAddress(u8),
[INFO] [stdout]    |     ----------------- ^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MockError` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 78 -     UnknownI2cAddress(u8),
[INFO] [stdout] 78 +     UnknownI2cAddress(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/test/i2c_mock.rs:164:23
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub(crate) fn get(&self, address: Address, byte_count: usize) -> Result<Ref<[u8]>, MockError> {
[INFO] [stdout]     |                       ^^^^^ the lifetime is elided here                     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub(crate) fn get(&self, address: Address, byte_count: usize) -> Result<Ref<'_, [u8]>, MockError> {
[INFO] [stdout]     |                                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/test/i2c_mock.rs:345:37
[INFO] [stdout]     |
[INFO] [stdout] 345 |     pub(crate) fn recent_operations(&self) -> Ref<VecDeque<I2cOperation>> {
[INFO] [stdout]     |                                     ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 345 |     pub(crate) fn recent_operations(&self) -> Ref<'_, VecDeque<I2cOperation>> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 11.00s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: num_enum_derive v0.5.2
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "34e5e3f0ad1824178ffdf7d5dece1ddce6c0653d95b13a9752b28f3e58b8ed8b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "34e5e3f0ad1824178ffdf7d5dece1ddce6c0653d95b13a9752b28f3e58b8ed8b", kill_on_drop: false }`
[INFO] [stdout] 34e5e3f0ad1824178ffdf7d5dece1ddce6c0653d95b13a9752b28f3e58b8ed8b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 54fd4e586a2ac03e6e608bc583803008c7607c1001f323d576d64a34f9bc7efb
[INFO] running `Command { std: "docker" "start" "-a" "54fd4e586a2ac03e6e608bc583803008c7607c1001f323d576d64a34f9bc7efb", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stderr]    --> src/mlx90640/eeprom.rs:160:55
[INFO] [stderr]     |
[INFO] [stderr] 160 |         let even_row_pattern = core::array::IntoIter::new([row_even_col_even, row_even_col_odd]);
[INFO] [stderr]     |                                                       ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stderr]    --> src/mlx90640/eeprom.rs:161:54
[INFO] [stderr]     |
[INFO] [stderr] 161 |         let odd_row_pattern = core::array::IntoIter::new([row_odd_col_even, row_odd_col_odd]);
[INFO] [stderr]     |                                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stderr]    --> src/mlx90640/eeprom.rs:103:60
[INFO] [stderr]     |
[INFO] [stderr] 103 |             let rows_coefficients = core::array::IntoIter::new(rows_coefficients)
[INFO] [stderr]     |                                                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stderr]    --> src/mlx90640/eeprom.rs:224:36
[INFO] [stderr]     |
[INFO] [stderr] 224 |             core::array::IntoIter::new(alpha_pixels)
[INFO] [stderr]     |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `core::array::IntoIter::<T, N>::new`: use `IntoIterator::into_iter` instead
[INFO] [stderr]    --> src/mlx90640/eeprom.rs:261:68
[INFO] [stderr]     |
[INFO] [stderr] 261 |         let k_v_pattern: ArrayVec<f32, 4> = core::array::IntoIter::new(k_v_avg)
[INFO] [stderr]     |                                                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `write_mask` is never used
[INFO] [stderr]   --> src/register.rs:19:8
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub(crate) trait Register: Into<[u8; 2]> + for<'a> From<&'a [u8]> {
[INFO] [stderr]    |                  -------- associated function in this trait
[INFO] [stderr] ...
[INFO] [stderr] 19 |     fn write_mask() -> [u8; 2];
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `mlx9064x` (lib) generated 6 warnings
[INFO] [stderr] warning: unused import: `Address`
[INFO] [stderr]    --> src/mlx90640/mod.rs:197:32
[INFO] [stderr]     |
[INFO] [stderr] 197 |     use crate::{AccessPattern, Address, MelexisCamera, Resolution, Subpage};
[INFO] [stderr]     |                                ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/test/i2c_mock.rs:66:19
[INFO] [stderr]    |
[INFO] [stderr] 66 |     IllegalAccess(Address),
[INFO] [stderr]    |     ------------- ^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MockError` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 66 -     IllegalAccess(Address),
[INFO] [stderr] 66 +     IllegalAccess(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/test/i2c_mock.rs:69:25
[INFO] [stderr]    |
[INFO] [stderr] 69 |     IllegalWriteAddress(Address),
[INFO] [stderr]    |     ------------------- ^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MockError` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 69 -     IllegalWriteAddress(Address),
[INFO] [stderr] 69 +     IllegalWriteAddress(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: fields `0` and `1` are never read
[INFO] [stderr]   --> src/test/i2c_mock.rs:72:23
[INFO] [stderr]    |
[INFO] [stderr] 72 |     IllegalWriteValue(Address, u16),
[INFO] [stderr]    |     ----------------- ^^^^^^^  ^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     fields in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MockError` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stderr]    |
[INFO] [stderr] 72 -     IllegalWriteValue(Address, u16),
[INFO] [stderr] 72 +     IllegalWriteValue((), ()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/test/i2c_mock.rs:75:26
[INFO] [stderr]    |
[INFO] [stderr] 75 |     UnknownMemoryAddress(Address),
[INFO] [stderr]    |     -------------------- ^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MockError` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 75 -     UnknownMemoryAddress(Address),
[INFO] [stderr] 75 +     UnknownMemoryAddress(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/test/i2c_mock.rs:78:23
[INFO] [stderr]    |
[INFO] [stderr] 78 |     UnknownI2cAddress(u8),
[INFO] [stderr]    |     ----------------- ^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MockError` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 78 -     UnknownI2cAddress(u8),
[INFO] [stderr] 78 +     UnknownI2cAddress(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/test/i2c_mock.rs:164:23
[INFO] [stderr]     |
[INFO] [stderr] 164 |     pub(crate) fn get(&self, address: Address, byte_count: usize) -> Result<Ref<[u8]>, MockError> {
[INFO] [stderr]     |                       ^^^^^ the lifetime is elided here                     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 164 |     pub(crate) fn get(&self, address: Address, byte_count: usize) -> Result<Ref<'_, [u8]>, MockError> {
[INFO] [stderr]     |                                                                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/test/i2c_mock.rs:345:37
[INFO] [stderr]     |
[INFO] [stderr] 345 |     pub(crate) fn recent_operations(&self) -> Ref<VecDeque<I2cOperation>> {
[INFO] [stderr]     |                                     ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                     |
[INFO] [stderr]     |                                     the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 345 |     pub(crate) fn recent_operations(&self) -> Ref<'_, VecDeque<I2cOperation>> {
[INFO] [stderr]     |                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: `mlx9064x` (lib test) generated 13 warnings (5 duplicates) (run `cargo fix --lib -p mlx9064x --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: num_enum_derive v0.5.2
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/mlx9064x-49a09c41a05c48aa)
[INFO] [stdout] 
[INFO] [stdout] running 125 tests
[INFO] [stdout] test calculations::test::pixel_temperature_640 ... ok
[INFO] [stdout] test calculations::test::v_ir_641 ... ok
[INFO] [stdout] test calculations::test::delta_v ... ok
[INFO] [stdout] test calculations::test::pixel_temperature_641 ... ok
[INFO] [stdout] test calculations::test::v_dd ... ok
[INFO] [stdout] test calculations::test::v_ir_640 ... ok
[INFO] [stdout] test driver::test::default_emissivity ... ok
[INFO] [stdout] test calculations::test::v_ptat_art ... ok
[INFO] [stdout] test calculations::test::t_ar_640 ... ok
[INFO] [stdout] test driver::test::get_register_flag_minimal_operations ... ok
[INFO] [stdout] test driver::test::read_register ... ok
[INFO] [stdout] test driver::test::mlx90640_datasheet_integration ... ok
[INFO] [stdout] test driver::test::mlx90640_example_integration ... ok
[INFO] [stdout] test driver::test::mlx90641_datasheet_integration ... ok
[INFO] [stdout] test driver::test::mlx90641_ram_access_subpage_1 ... ok
[INFO] [stdout] test driver::test::read_write_register ... ok
[INFO] [stdout] test driver::test::set_register_flag_minimal_operations ... ok
[INFO] [stdout] test mlx90640::eeprom::test::access_pattern_compensation_interleave ... ok
[INFO] [stdout] test mlx90640::eeprom::test::access_pattern_compensation_chess ... ok
[INFO] [stdout] test driver::test::set_reflected_temperature ... ok
[INFO] [stdout] test mlx90640::eeprom::test::alpha_cp ... ok
[INFO] [stdout] test mlx90640::eeprom::test::alpha_ptat ... ok
[INFO] [stdout] test mlx90640::eeprom::test::gain ... ok
[INFO] [stdout] test mlx90640::eeprom::test::emissivity ... ok
[INFO] [stdout] test mlx90640::eeprom::test::corner_temperatures ... ok
[INFO] [stdout] test mlx90640::eeprom::test::k_s_ta ... ok
[INFO] [stdout] test mlx90640::eeprom::test::k_ta_cp ... ok
[INFO] [stdout] test mlx90640::eeprom::test::k_s_to ... ok
[INFO] [stdout] test mlx90640::eeprom::test::k_v_dd ... ok
[INFO] [stdout] test mlx90640::eeprom::test::k_t_ptat ... ok
[INFO] [stdout] test calculations::test::t_a ... ok
[INFO] [stdout] test mlx90640::eeprom::test::k_v_ptat ... ok
[INFO] [stdout] test mlx90640::eeprom::test::pixel_alpha ... ok
[INFO] [stdout] test mlx90640::eeprom::test::k_v_cp ... ok
[INFO] [stdout] test mlx90640::eeprom::test::offset_reference_cp ... ok
[INFO] [stdout] test mlx90640::eeprom::test::pixel_offset ... ok
[INFO] [stdout] test mlx90640::eeprom::test::k_v_pixels ... ok
[INFO] [stdout] test mlx90640::eeprom::test::pixel_k_ta ... ok
[INFO] [stdout] test mlx90640::eeprom::test::u8_to_i4s ... ok
[INFO] [stdout] test mlx90640::eeprom::test::repeat_chessboard ... ok
[INFO] [stdout] test mlx90640::eeprom::test::smoke ... ok
[INFO] [stdout] test mlx90640::eeprom::test::v_dd_0 ... ok
[INFO] [stdout] test mlx90640::eeprom::test::resolution ... ok
[INFO] [stdout] test mlx90640::test::pixel_access_chess ... ok
[INFO] [stdout] test mlx90640::eeprom::test::temperature_gradient_coefficient ... ok
[INFO] [stdout] test mlx90640::eeprom::test::v_dd_25 ... ok
[INFO] [stdout] test driver::test::mlx90641_ram_access_subpage_0 ... ok
[INFO] [stdout] test mlx90640::eeprom::test::v_ptat_25 ... ok
[INFO] [stdout] test mlx90640::test::pixel_access_interleave_subpage0 ... ok
[INFO] [stdout] test mlx90640::test::pixel_access_interleave_subpage1 ... ok
[INFO] [stdout] test mlx90640::test::pixel_subpage_interleaved ... ok
[INFO] [stdout] test mlx90640::test::resolution_correction ... ok
[INFO] [stdout] test mlx90641::eeprom::test::access_pattern_compensation ... ok
[INFO] [stdout] test mlx90641::eeprom::test::alpha_ptat ... ok
[INFO] [stdout] test mlx90641::eeprom::test::alpha_cp ... ok
[INFO] [stdout] test mlx90641::eeprom::test::corner_temperatures ... ok
[INFO] [stdout] test mlx90641::eeprom::test::get_combined_word ... ok
[INFO] [stdout] test mlx90641::eeprom::test::get_hamming_i16 ... ok
[INFO] [stdout] test mlx90641::eeprom::test::get_hamming_u16 ... ok
[INFO] [stdout] test mlx90641::eeprom::test::emissivity ... ok
[INFO] [stdout] test mlx90640::eeprom::test::word_6_10_split ... ok
[INFO] [stdout] test mlx90640::eeprom::test::word_to_u4s ... ok
[INFO] [stdout] test driver::test::smoke_test ... ok
[INFO] [stdout] test mlx90640::test::pixel_subpage_chess ... ok
[INFO] [stdout] test mlx90641::eeprom::test::gain ... ok
[INFO] [stdout] test mlx90641::eeprom::test::k_s_ta ... ok
[INFO] [stdout] test mlx90641::eeprom::test::k_ta_cp ... ok
[INFO] [stdout] test mlx90641::eeprom::test::k_s_to ... ok
[INFO] [stdout] test mlx90641::eeprom::test::k_ta_pixels ... ok
[INFO] [stdout] test mlx90641::eeprom::test::k_t_ptat ... ok
[INFO] [stdout] test mlx90641::eeprom::test::k_v_cp ... ok
[INFO] [stdout] test mlx90641::eeprom::test::k_v_pixels ... ok
[INFO] [stdout] test mlx90641::eeprom::test::k_v_dd ... ok
[INFO] [stdout] test mlx90641::eeprom::test::pixel_alpha ... ok
[INFO] [stdout] test mlx90641::eeprom::test::temperature_gradient_coefficient ... ok
[INFO] [stdout] test mlx90641::eeprom::test::k_v_ptat ... ok
[INFO] [stdout] test mlx90641::eeprom::test::offset_reference_cp ... ok
[INFO] [stdout] test mlx90641::eeprom::test::pixel_offset ... ok
[INFO] [stdout] test mlx90641::eeprom::test::v_ptat_25 ... ok
[INFO] [stdout] test mlx90641::eeprom::test::smoke ... ok
[INFO] [stdout] test mlx90641::eeprom::test::resolution ... ok
[INFO] [stdout] test mlx90641::eeprom::test::v_dd_25 ... ok
[INFO] [stdout] test mlx90641::test::resolution_correction ... ok
[INFO] [stdout] test register::test::control_register_access_mode ... ok
[INFO] [stdout] test register::test::control_register_masked ... ok
[INFO] [stdout] test register::test::control_register_frame_rate ... ok
[INFO] [stdout] test register::test::control_register_resolution ... ok
[INFO] [stdout] test register::test::control_register_step_mode ... ok
[INFO] [stdout] test mlx90641::hamming::test::checksum_no_errors ... ok
[INFO] [stdout] test mlx90641::eeprom::test::v_dd_0 ... ok
[INFO] [stdout] test mlx90641::test::pixels_in_subpage ... ok
[INFO] [stdout] test register::test::control_register_data_hold ... ok
[INFO] [stdout] test register::test::control_register_subpage ... ok
[INFO] [stdout] test register::test::control_register_subpage_repeat ... ok
[INFO] [stdout] test register::test::default_frame_rate ... ok
[INFO] [stdout] test register::test::default_resolution ... ok
[INFO] [stdout] test register::test::frame_rate_from_f32 ... ok
[INFO] [stdout] test register::test::frame_rate_as_raw ... ok
[INFO] [stdout] test register::test::frame_rate_to_f32 ... ok
[INFO] [stdout] test register::test::frame_rate_from_raw ... ok
[INFO] [stdout] test register::test::i2c_register_current_limiter ... ok
[INFO] [stdout] test register::test::i2c_register_fast_mode_plus ... ok
[INFO] [stdout] test register::test::frame_rate_from_u8 ... ok
[INFO] [stdout] test register::test::resolution_from_raw ... ok
[INFO] [stdout] test register::test::i2c_register_threshold ... ok
[INFO] [stdout] test register::test::resolution_from_u8 ... ok
[INFO] [stdout] test register::test::resolution_as_raw ... ok
[INFO] [stdout] test register::test::resolution_to_u8 ... ok
[INFO] [stdout] test register::test::status_register_last_updated_subpage ... ok
[INFO] [stdout] test register::test::status_register_masked ... ok
[INFO] [stdout] test register::test::status_register_start_measurement ... ok
[INFO] [stdout] test test::eeprom_data::test::smoke_mlx90641_eeprom ... ok
[INFO] [stdout] test util::test::buffer_advance ... ok
[INFO] [stdout] test util::test::buffer_get_i16 ... ok
[INFO] [stdout] test util::test::buffer_get_i8 ... ok
[INFO] [stdout] test util::test::buffer_get_u16 ... ok
[INFO] [stdout] test util::test::buffer_get_u8 ... ok
[INFO] [stdout] test util::test::i16_from_bits ... ok
[INFO] [stdout] test util::test::is_bit_set ... ok
[INFO] [stdout] test register::test::control_register_use_subpages ... ok
[INFO] [stdout] test register::test::status_register_new_data ... ok
[INFO] [stdout] test register::test::status_register_overwrite ... ok
[INFO] [stdout] test test::eeprom_data::test::smoke_mlx90640_eeprom ... ok
[INFO] [stdout] test mlx90641::hamming::test::checksum_one_error ... ok
[INFO] [stdout] test mlx90641::hamming::test::checksum_two_errors ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 125 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.23s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests mlx9064x
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test src/calculations.rs - calculations (line 61) - compile ... ok
[INFO] [stdout] test src/lib.rs - (line 18) - compile ... ok
[INFO] [stdout] test src/register.rs - register::FrameRate (line 499) ... ok
[INFO] [stdout] test src/register.rs - register::FrameRate::try_from (line 581) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.37s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "54fd4e586a2ac03e6e608bc583803008c7607c1001f323d576d64a34f9bc7efb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "54fd4e586a2ac03e6e608bc583803008c7607c1001f323d576d64a34f9bc7efb", kill_on_drop: false }`
[INFO] [stdout] 54fd4e586a2ac03e6e608bc583803008c7607c1001f323d576d64a34f9bc7efb
