[INFO] fetching crate mlx9064x 0.2.1...
[INFO] checking mlx9064x-0.2.1 against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[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 eca445e5ae4a6679cc27d3a09106ce245e13a5a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "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" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded num_enum v0.5.2
[INFO] [stderr]   Downloaded linux-embedded-hal v0.3.0
[INFO] [stderr]   Downloaded num_enum_derive v0.5.2
[INFO] [stderr]   Downloaded paste v1.0.5
[INFO] [stderr]   Downloaded serial-core v0.4.0
[INFO] [stderr]   Downloaded nb v1.0.0
[INFO] [stderr]   Downloaded libm v0.2.1
[INFO] [stderr]   Downloaded spidev v0.4.1
[INFO] [stderr]   Downloaded serial-unix v0.4.0
[INFO] [stderr]   Downloaded termios v0.2.2
[INFO] [stderr]   Downloaded ioctl-rs v0.1.6
[INFO] [stderr]   Downloaded arrayvec v0.7.1
[INFO] [stderr]   Downloaded sysfs_gpio v0.5.4
[INFO] [stderr]   Downloaded semver v1.0.3
[INFO] [stderr]   Downloaded embedded-hal v0.2.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 014cd6ef633218c6af161e27b44e3f49deba283b8d5baab7837e075341dd25f4
[INFO] running `Command { std: "docker" "start" "014cd6ef633218c6af161e27b44e3f49deba283b8d5baab7837e075341dd25f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "014cd6ef633218c6af161e27b44e3f49deba283b8d5baab7837e075341dd25f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "014cd6ef633218c6af161e27b44e3f49deba283b8d5baab7837e075341dd25f4" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "014cd6ef633218c6af161e27b44e3f49deba283b8d5baab7837e075341dd25f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "014cd6ef633218c6af161e27b44e3f49deba283b8d5baab7837e075341dd25f4" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling semver v1.0.3
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]    Compiling syn v1.0.73
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]     Checking nb v1.0.0
[INFO] [stderr]     Checking ioctl-rs v0.1.6
[INFO] [stderr]     Checking termios v0.2.2
[INFO] [stderr]     Checking serial-core v0.4.0
[INFO] [stderr]     Checking arrayvec v0.7.1
[INFO] [stderr]    Compiling paste v1.0.5
[INFO] [stderr]     Checking nb v0.1.3
[INFO] [stderr]     Checking embedded-hal v0.2.5
[INFO] [stderr]     Checking serial-unix v0.4.0
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling cast v0.2.7
[INFO] [stderr]     Checking float-cmp v0.9.0
[INFO] [stderr]     Checking sysfs_gpio v0.5.4
[INFO] [stderr]     Checking spidev v0.4.1
[INFO] [stderr]     Checking i2cdev v0.4.4
[INFO] [stderr]     Checking linux-embedded-hal v0.3.0
[INFO] [stderr]    Compiling num_enum_derive v0.5.2
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]     Checking num_enum v0.5.2
[INFO] [stderr]     Checking mlx9064x v0.2.1 (/opt/rustwide/workdir)
[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: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: 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] [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 `dev` profile [unoptimized + debuginfo] target(s) in 11.91s
[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 10`
[INFO] running `Command { std: "docker" "inspect" "014cd6ef633218c6af161e27b44e3f49deba283b8d5baab7837e075341dd25f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "014cd6ef633218c6af161e27b44e3f49deba283b8d5baab7837e075341dd25f4", kill_on_drop: false }`
[INFO] [stdout] 014cd6ef633218c6af161e27b44e3f49deba283b8d5baab7837e075341dd25f4
