[INFO] cloning repository https://github.com/vmasdani/smart-garden
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/vmasdani/smart-garden" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvmasdani%2Fsmart-garden", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvmasdani%2Fsmart-garden'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 974be7f0ced6422bec99e5639eaa9ba864a8d1d8
[INFO] checking vmasdani/smart-garden against master#5518eaa946291f00471af8b254b2a1715f234882 for pr-120393-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvmasdani%2Fsmart-garden" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/vmasdani/smart-garden on toolchain 5518eaa946291f00471af8b254b2a1715f234882
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-0-tc1/source/.cargo/config
[INFO] started tweaking git repo https://github.com/vmasdani/smart-garden
[INFO] finished tweaking git repo https://github.com/vmasdani/smart-garden
[INFO] tweaked toml for git repo https://github.com/vmasdani/smart-garden written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/vmasdani/smart-garden 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" "+5518eaa946291f00471af8b254b2a1715f234882" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded gpio-cdev v0.2.0
[INFO] [stderr]   Downloaded proc-macro2 v1.0.14
[INFO] [stderr]   Downloaded rustc_version v0.1.7
[INFO] [stderr]   Downloaded futures-timer v0.1.1
[INFO] [stderr]   Downloaded checked_int_cast v1.0.0
[INFO] [stderr]   Downloaded semver v0.1.20
[INFO] [stderr]   Downloaded linked-hash-map v0.5.3
[INFO] [stderr]   Downloaded image v0.23.4
[INFO] [stderr]   Downloaded png v0.16.4
[INFO] [stderr]   Downloaded nix v0.6.0
[INFO] [stderr]   Downloaded cmake v0.1.44
[INFO] [stderr]   Downloaded num-derive v0.3.0
[INFO] [stderr]   Downloaded crossbeam-queue v0.2.2
[INFO] [stderr]   Downloaded libsqlite3-sys v0.17.3
[INFO] [stderr]   Downloaded ssd1306 v0.3.1
[INFO] [stderr]   Downloaded jpeg-decoder v0.1.19
[INFO] [stderr]   Downloaded rusqlite v0.21.0
[INFO] [stderr]   Downloaded uuid v0.8.1
[INFO] [stderr]   Downloaded qrcode v0.8.0
[INFO] [stderr]   Downloaded spidev v0.3.0
[INFO] [stderr]   Downloaded sysfs_gpio v0.5.4
[INFO] [stderr]   Downloaded machine-ip v0.2.1
[INFO] [stderr]   Downloaded embedded-hal v0.2.3
[INFO] [stderr]   Downloaded linux-embedded-hal v0.2.2
[INFO] [stderr]   Downloaded nb v0.1.2
[INFO] [stderr]   Downloaded bitflags v0.3.3
[INFO] [stderr]   Downloaded i2cdev v0.4.2
[INFO] [stderr]   Downloaded deflate v0.8.4
[INFO] [stderr]   Downloaded pkg-config v0.3.16
[INFO] [stderr]   Downloaded embedded-graphics v0.6.2
[INFO] [stderr]   Downloaded paho-mqtt v0.7.1
[INFO] [stderr]   Downloaded nix v0.11.1
[INFO] [stderr]   Downloaded paho-mqtt-sys v0.3.0
[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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 96ecda30c5b3fdcca40dd878fcf2c6f61b3f93605dbf85350a8947f53f5bceb6
[INFO] running `Command { std: "docker" "start" "-a" "96ecda30c5b3fdcca40dd878fcf2c6f61b3f93605dbf85350a8947f53f5bceb6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "96ecda30c5b3fdcca40dd878fcf2c6f61b3f93605dbf85350a8947f53f5bceb6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "96ecda30c5b3fdcca40dd878fcf2c6f61b3f93605dbf85350a8947f53f5bceb6", kill_on_drop: false }`
[INFO] [stdout] 96ecda30c5b3fdcca40dd878fcf2c6f61b3f93605dbf85350a8947f53f5bceb6
[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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c4d242cd7d45397a7cbc3255956c2d444067fb365c4a58b17d52d47661b6d929
[INFO] running `Command { std: "docker" "start" "-a" "c4d242cd7d45397a7cbc3255956c2d444067fb365c4a58b17d52d47661b6d929", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.70
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]    Compiling proc-macro2 v1.0.14
[INFO] [stderr]    Compiling cc v1.0.45
[INFO] [stderr]    Compiling memoffset v0.5.4
[INFO] [stderr]    Compiling syn v1.0.23
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling semver v0.1.20
[INFO] [stderr]     Checking adler32 v1.0.4
[INFO] [stderr]    Compiling rayon-core v1.7.0
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]     Checking crossbeam-queue v0.2.2
[INFO] [stderr]    Compiling crc32fast v1.2.0
[INFO] [stderr]    Compiling pkg-config v0.3.16
[INFO] [stderr]    Compiling error-chain v0.12.2
[INFO] [stderr]    Compiling num-iter v0.1.40
[INFO] [stderr]    Compiling nix v0.11.1
[INFO] [stderr]     Checking nb v0.1.2
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]     Checking lzw v0.10.0
[INFO] [stderr]    Compiling rustc_version v0.1.7
[INFO] [stderr]     Checking ppv-lite86 v0.2.8
[INFO] [stderr]     Checking bitflags v0.4.0
[INFO] [stderr]     Checking embedded-hal v0.2.3
[INFO] [stderr]     Checking inflate v0.4.5
[INFO] [stderr]     Checking miniz_oxide v0.3.6
[INFO] [stderr]     Checking color_quant v1.0.1
[INFO] [stderr]    Compiling cmake v0.1.44
[INFO] [stderr]     Checking linked-hash-map v0.5.3
[INFO] [stderr]     Checking futures v0.1.29
[INFO] [stderr]     Checking crossbeam-epoch v0.8.2
[INFO] [stderr]     Checking bitflags v0.3.3
[INFO] [stderr]    Compiling ssd1306 v0.3.1
[INFO] [stderr]    Compiling nix v0.6.0
[INFO] [stderr]     Checking gif v0.10.3
[INFO] [stderr]     Checking fallible-iterator v0.2.0
[INFO] [stderr]     Checking lru-cache v0.1.2
[INFO] [stderr]     Checking bytemuck v1.2.0
[INFO] [stderr]     Checking fallible-streaming-iterator v0.1.9
[INFO] [stderr]     Checking deflate v0.8.4
[INFO] [stderr]     Checking num-rational v0.2.4
[INFO] [stderr]     Checking embedded-graphics v0.6.2
[INFO] [stderr]     Checking crossbeam-deque v0.7.3
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking backtrace v0.3.48
[INFO] [stderr]     Checking time v0.1.42
[INFO] [stderr]     Checking tiff v0.4.0
[INFO] [stderr]     Checking checked_int_cast v1.0.0
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking cast v0.2.2
[INFO] [stderr]     Checking png v0.16.4
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking qrcode v0.8.0
[INFO] [stderr]     Checking chrono v0.4.9
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]    Compiling paho-mqtt-sys v0.3.0
[INFO] [stderr]    Compiling libsqlite3-sys v0.17.3
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking machine-ip v0.2.1
[INFO] [stderr]     Checking rayon v1.3.0
[INFO] [stderr]     Checking spidev v0.3.0
[INFO] [stderr]     Checking futures-timer v0.1.1
[INFO] [stderr]     Checking i2cdev v0.4.2
[INFO] [stderr]     Checking sysfs_gpio v0.5.4
[INFO] [stderr]     Checking gpio-cdev v0.2.0
[INFO] [stderr]     Checking jpeg-decoder v0.1.19
[INFO] [stderr]     Checking linux-embedded-hal v0.2.2
[INFO] [stderr]    Compiling serde_derive v1.0.101
[INFO] [stderr]    Compiling num-derive v0.3.0
[INFO] [stderr]     Checking image v0.23.4
[INFO] [stderr]     Checking paho-mqtt v0.7.1
[INFO] [stderr]     Checking serde v1.0.101
[INFO] [stderr]     Checking rusqlite v0.21.0
[INFO] [stderr]     Checking serde_json v1.0.41
[INFO] [stderr]     Checking uuid v0.8.1
[INFO] [stderr]     Checking smart_garden v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Font6x8`, `PrimitiveStyle`
[INFO] [stdout]  --> src/ip_poller.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 |     fonts::{Font12x16, Text, Font6x8, Font8x16},
[INFO] [stdout]   |                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |     style::{PrimitiveStyle, TextStyle, PrimitiveStyleBuilder}
[INFO] [stdout]   |             ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Builder`
[INFO] [stdout]  --> src/ip_poller.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ssd1306::{Builder, interface::I2cInterface};
[INFO] [stdout]   |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `thread`, `time::Duration`
[INFO] [stdout]  --> src/router.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::{thread, time::Duration};
[INFO] [stdout]   |           ^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GenericImageView`, `GenericImage`, `RgbImage`
[INFO] [stdout]  --> src/qr_fit.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use image::{GenericImage, GenericImageView, ImageBuffer, RgbImage, Luma, imageops};
[INFO] [stdout]   |             ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::Duration`
[INFO] [stdout]  --> src/main.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::{thread, time::Duration};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `embedded_graphics::prelude::*`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use embedded_graphics::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Font6x8`, `PrimitiveStyle`
[INFO] [stdout]  --> src/ip_poller.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 |     fonts::{Font12x16, Text, Font6x8, Font8x16},
[INFO] [stdout]   |                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |     style::{PrimitiveStyle, TextStyle, PrimitiveStyleBuilder}
[INFO] [stdout]   |             ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Builder`
[INFO] [stdout]  --> src/ip_poller.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ssd1306::{Builder, interface::I2cInterface};
[INFO] [stdout]   |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `thread`, `time::Duration`
[INFO] [stdout]  --> src/router.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::{thread, time::Duration};
[INFO] [stdout]   |           ^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GenericImageView`, `GenericImage`, `RgbImage`
[INFO] [stdout]  --> src/qr_fit.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use image::{GenericImage, GenericImageView, ImageBuffer, RgbImage, Luma, imageops};
[INFO] [stdout]   |             ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::Duration`
[INFO] [stdout]  --> src/main.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::{thread, time::Duration};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `embedded_graphics::prelude::*`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use embedded_graphics::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i2c`
[INFO] [stdout]   --> src/init.rs:59:14
[INFO] [stdout]    |
[INFO] [stdout] 59 |         Some(i2c) => {
[INFO] [stdout]    |              ^^^ help: if this is intentional, prefix it with an underscore: `_i2c`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/init.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let mut i2c =
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/db_poller.rs:57:41
[INFO] [stdout]    |
[INFO] [stdout] 57 | ...                   let mut relay_pin = relay_pin.lock().unwrap();
[INFO] [stdout]    |                           ----^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/db_poller.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 | ...                   let mut relay_pin = relay_pin.lock().unwrap();
[INFO] [stdout]    |                           ----^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i2c`
[INFO] [stdout]   --> src/init.rs:59:14
[INFO] [stdout]    |
[INFO] [stdout] 59 |         Some(i2c) => {
[INFO] [stdout]    |              ^^^ help: if this is intentional, prefix it with an underscore: `_i2c`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/init.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let mut i2c =
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/db_poller.rs:57:41
[INFO] [stdout]    |
[INFO] [stdout] 57 | ...                   let mut relay_pin = relay_pin.lock().unwrap();
[INFO] [stdout]    |                           ----^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/db_poller.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 | ...                   let mut relay_pin = relay_pin.lock().unwrap();
[INFO] [stdout]    |                           ----^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/router.rs:29:25
[INFO] [stdout]    |
[INFO] [stdout] 29 |                     let mut id: String;
[INFO] [stdout]    |                         ----^^
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/router.rs:29:25
[INFO] [stdout]    |
[INFO] [stdout] 29 |                     let mut id: String;
[INFO] [stdout]    |                         ----^^
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/qr_fit.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut perim = qr_arr.len();
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/qr_fit.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let mut img = ImageBuffer::from_fn(perim as u32, perim as u32, |x, y| {
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/qr_fit.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut perim = qr_arr.len();
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/qr_fit.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let mut img = ImageBuffer::from_fn(perim as u32, perim as u32, |x, y| {
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:44:33
[INFO] [stdout]    |
[INFO] [stdout] 44 | / ...                   match ip_qr_fit[x][y] {
[INFO] [stdout] 45 | | ...                       0 => Pixel(Point::new(x as i32 + 1, y as i32 + 1), BinaryColor::On).draw(disp),
[INFO] [stdout] 46 | | ...                       _ => Pixel(Point::new(x as i32 + 1, y as i32 + 1), BinaryColor::Off).draw(disp)
[INFO] [stdout] 47 | | ...                   };
[INFO] [stdout]    | |_______________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 44 |                                 let _ = match ip_qr_fit[x][y] {
[INFO] [stdout]    |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:53:25
[INFO] [stdout]    |
[INFO] [stdout] 53 | /                         Rectangle::new(Point::new(0, 0), Point::new(63, 63))
[INFO] [stdout] 54 | |                             .into_styled(
[INFO] [stdout] 55 | |                                 PrimitiveStyleBuilder::new()
[INFO] [stdout] 56 | |                                     .stroke_width(1)
[INFO] [stdout] ...  |
[INFO] [stdout] 59 | |                             )
[INFO] [stdout] 60 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 53 |                         let _ = Rectangle::new(Point::new(0, 0), Point::new(63, 63))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:62:25
[INFO] [stdout]    |
[INFO] [stdout] 62 | /                         Text::new("192.168", Point::new(66, 0))
[INFO] [stdout] 63 | |                             .into_styled(TextStyle::new(Font8x16, BinaryColor::On))
[INFO] [stdout] 64 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 62 |                         let _ = Text::new("192.168", Point::new(66, 0))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:44:33
[INFO] [stdout]    |
[INFO] [stdout] 44 | / ...                   match ip_qr_fit[x][y] {
[INFO] [stdout] 45 | | ...                       0 => Pixel(Point::new(x as i32 + 1, y as i32 + 1), BinaryColor::On).draw(disp),
[INFO] [stdout] 46 | | ...                       _ => Pixel(Point::new(x as i32 + 1, y as i32 + 1), BinaryColor::Off).draw(disp)
[INFO] [stdout] 47 | | ...                   };
[INFO] [stdout]    | |_______________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 44 |                                 let _ = match ip_qr_fit[x][y] {
[INFO] [stdout]    |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:66:25
[INFO] [stdout]    |
[INFO] [stdout] 66 | /                         Text::new("192.168", Point::new(66, 18))
[INFO] [stdout] 67 | |                             .into_styled(TextStyle::new(Font8x16, BinaryColor::On))
[INFO] [stdout] 68 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 66 |                         let _ = Text::new("192.168", Point::new(66, 18))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:53:25
[INFO] [stdout]    |
[INFO] [stdout] 53 | /                         Rectangle::new(Point::new(0, 0), Point::new(63, 63))
[INFO] [stdout] 54 | |                             .into_styled(
[INFO] [stdout] 55 | |                                 PrimitiveStyleBuilder::new()
[INFO] [stdout] 56 | |                                     .stroke_width(1)
[INFO] [stdout] ...  |
[INFO] [stdout] 59 | |                             )
[INFO] [stdout] 60 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 53 |                         let _ = Rectangle::new(Point::new(0, 0), Point::new(63, 63))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:62:25
[INFO] [stdout]    |
[INFO] [stdout] 62 | /                         Text::new("192.168", Point::new(66, 0))
[INFO] [stdout] 63 | |                             .into_styled(TextStyle::new(Font8x16, BinaryColor::On))
[INFO] [stdout] 64 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 62 |                         let _ = Text::new("192.168", Point::new(66, 0))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:74:25
[INFO] [stdout]    |
[INFO] [stdout] 74 | /                         Text::new("NO IP", Point::new(0, 0))
[INFO] [stdout] 75 | |                             .into_styled(TextStyle::new(Font12x16, BinaryColor::On))
[INFO] [stdout] 76 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 74 |                         let _ = Text::new("NO IP", Point::new(0, 0))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:66:25
[INFO] [stdout]    |
[INFO] [stdout] 66 | /                         Text::new("192.168", Point::new(66, 18))
[INFO] [stdout] 67 | |                             .into_styled(TextStyle::new(Font8x16, BinaryColor::On))
[INFO] [stdout] 68 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 66 |                         let _ = Text::new("192.168", Point::new(66, 18))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:74:25
[INFO] [stdout]    |
[INFO] [stdout] 74 | /                         Text::new("NO IP", Point::new(0, 0))
[INFO] [stdout] 75 | |                             .into_styled(TextStyle::new(Font12x16, BinaryColor::On))
[INFO] [stdout] 76 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 74 |                         let _ = Text::new("NO IP", Point::new(0, 0))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/router.rs:74:17
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 conn.execute("delete from schedule where id=?", params![id]);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 let _ = conn.execute("delete from schedule where id=?", params![id]);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/router.rs:104:13
[INFO] [stdout]     |
[INFO] [stdout] 104 |             Command::new("poweroff").output();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 104 |             let _ = Command::new("poweroff").output();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/router.rs:74:17
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 conn.execute("delete from schedule where id=?", params![id]);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 let _ = conn.execute("delete from schedule where id=?", params![id]);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/router.rs:104:13
[INFO] [stdout]     |
[INFO] [stdout] 104 |             Command::new("poweroff").output();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 104 |             let _ = Command::new("poweroff").output();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 26.11s
[INFO] running `Command { std: "docker" "inspect" "c4d242cd7d45397a7cbc3255956c2d444067fb365c4a58b17d52d47661b6d929", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c4d242cd7d45397a7cbc3255956c2d444067fb365c4a58b17d52d47661b6d929", kill_on_drop: false }`
[INFO] [stdout] c4d242cd7d45397a7cbc3255956c2d444067fb365c4a58b17d52d47661b6d929
[INFO] checking vmasdani/smart-garden against try#7622c0f807a4e13c4db886a1681bf343795692df+rustflags=-Dnon_local_definitions for pr-120393-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvmasdani%2Fsmart-garden" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/vmasdani/smart-garden on toolchain 7622c0f807a4e13c4db886a1681bf343795692df
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-0-tc2/source/.cargo/config
[INFO] started tweaking git repo https://github.com/vmasdani/smart-garden
[INFO] finished tweaking git repo https://github.com/vmasdani/smart-garden
[INFO] tweaked toml for git repo https://github.com/vmasdani/smart-garden written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/vmasdani/smart-garden 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" "+7622c0f807a4e13c4db886a1681bf343795692df" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 568587cd16a1ba1584738bc74323f9b4c1f87da71e873b0f53e53f5b24de5fb0
[INFO] running `Command { std: "docker" "start" "-a" "568587cd16a1ba1584738bc74323f9b4c1f87da71e873b0f53e53f5b24de5fb0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "568587cd16a1ba1584738bc74323f9b4c1f87da71e873b0f53e53f5b24de5fb0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "568587cd16a1ba1584738bc74323f9b4c1f87da71e873b0f53e53f5b24de5fb0", kill_on_drop: false }`
[INFO] [stdout] 568587cd16a1ba1584738bc74323f9b4c1f87da71e873b0f53e53f5b24de5fb0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dnon_local_definitions" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] dcbbbcf8b1f63beca7c9d1921bf3ce9d1e873a89e2fa53e8b586c02465eb23ea
[INFO] running `Command { std: "docker" "start" "-a" "dcbbbcf8b1f63beca7c9d1921bf3ce9d1e873a89e2fa53e8b586c02465eb23ea", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.70
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]    Compiling proc-macro2 v1.0.14
[INFO] [stderr]    Compiling cc v1.0.45
[INFO] [stderr]    Compiling memoffset v0.5.4
[INFO] [stderr]    Compiling syn v1.0.23
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]     Checking adler32 v1.0.4
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling semver v0.1.20
[INFO] [stderr]    Compiling rayon-core v1.7.0
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]     Checking crossbeam-queue v0.2.2
[INFO] [stderr]    Compiling crc32fast v1.2.0
[INFO] [stderr]    Compiling pkg-config v0.3.16
[INFO] [stderr]    Compiling error-chain v0.12.2
[INFO] [stderr]    Compiling rustc_version v0.1.7
[INFO] [stderr]    Compiling num-iter v0.1.40
[INFO] [stderr]     Checking bitflags v0.4.0
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]     Checking lzw v0.10.0
[INFO] [stderr]     Checking nb v0.1.2
[INFO] [stderr]    Compiling nix v0.11.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.8
[INFO] [stderr]     Checking embedded-hal v0.2.3
[INFO] [stderr]     Checking crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling nix v0.6.0
[INFO] [stderr]    Compiling cmake v0.1.44
[INFO] [stderr]     Checking miniz_oxide v0.3.6
[INFO] [stderr]     Checking inflate v0.4.5
[INFO] [stderr]     Checking futures v0.1.29
[INFO] [stderr]     Checking color_quant v1.0.1
[INFO] [stderr]     Checking bitflags v0.3.3
[INFO] [stderr]    Compiling ssd1306 v0.3.1
[INFO] [stderr]     Checking linked-hash-map v0.5.3
[INFO] [stderr]     Checking gif v0.10.3
[INFO] [stderr]     Checking crossbeam-deque v0.7.3
[INFO] [stderr]     Checking cast v0.2.2
[INFO] [stderr]     Checking fallible-iterator v0.2.0
[INFO] [stderr]     Checking checked_int_cast v1.0.0
[INFO] [stderr]     Checking bytemuck v1.2.0
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]     Checking fallible-streaming-iterator v0.1.9
[INFO] [stderr]     Checking qrcode v0.8.0
[INFO] [stderr]     Checking machine-ip v0.2.1
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking backtrace v0.3.48
[INFO] [stderr]     Checking time v0.1.42
[INFO] [stderr]     Checking deflate v0.8.4
[INFO] [stderr]     Checking embedded-graphics v0.6.2
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking num-rational v0.2.4
[INFO] [stderr]     Checking lru-cache v0.1.2
[INFO] [stderr]     Checking chrono v0.4.9
[INFO] [stderr]     Checking tiff v0.4.0
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking png v0.16.4
[INFO] [stderr]     Checking futures-timer v0.1.1
[INFO] [stderr]    Compiling libsqlite3-sys v0.17.3
[INFO] [stderr]    Compiling paho-mqtt-sys v0.3.0
[INFO] [stderr]     Checking rayon v1.3.0
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking spidev v0.3.0
[INFO] [stderr]     Checking gpio-cdev v0.2.0
[INFO] [stderr]     Checking jpeg-decoder v0.1.19
[INFO] [stderr]     Checking sysfs_gpio v0.5.4
[INFO] [stderr]    Compiling serde_derive v1.0.101
[INFO] [stderr]    Compiling num-derive v0.3.0
[INFO] [stderr]     Checking i2cdev v0.4.2
[INFO] [stderr]     Checking image v0.23.4
[INFO] [stderr]     Checking linux-embedded-hal v0.2.2
[INFO] [stderr]     Checking paho-mqtt v0.7.1
[INFO] [stderr]     Checking serde v1.0.101
[INFO] [stderr]     Checking rusqlite v0.21.0
[INFO] [stderr]     Checking uuid v0.8.1
[INFO] [stderr]     Checking serde_json v1.0.41
[INFO] [stderr]     Checking smart_garden v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Font6x8`, `PrimitiveStyle`
[INFO] [stdout]  --> src/ip_poller.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 |     fonts::{Font12x16, Text, Font6x8, Font8x16},
[INFO] [stdout]   |                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |     style::{PrimitiveStyle, TextStyle, PrimitiveStyleBuilder}
[INFO] [stdout]   |             ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Builder`
[INFO] [stdout]  --> src/ip_poller.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ssd1306::{Builder, interface::I2cInterface};
[INFO] [stdout]   |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `thread`, `time::Duration`
[INFO] [stdout]  --> src/router.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::{thread, time::Duration};
[INFO] [stdout]   |           ^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GenericImageView`, `GenericImage`, `RgbImage`
[INFO] [stdout]  --> src/qr_fit.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use image::{GenericImage, GenericImageView, ImageBuffer, RgbImage, Luma, imageops};
[INFO] [stdout]   |             ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::Duration`
[INFO] [stdout]  --> src/main.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::{thread, time::Duration};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `embedded_graphics::prelude::*`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use embedded_graphics::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Font6x8`, `PrimitiveStyle`
[INFO] [stdout]  --> src/ip_poller.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 |     fonts::{Font12x16, Text, Font6x8, Font8x16},
[INFO] [stdout]   |                              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |     style::{PrimitiveStyle, TextStyle, PrimitiveStyleBuilder}
[INFO] [stdout]   |             ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Builder`
[INFO] [stdout]  --> src/ip_poller.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ssd1306::{Builder, interface::I2cInterface};
[INFO] [stdout]   |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `thread`, `time::Duration`
[INFO] [stdout]  --> src/router.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::{thread, time::Duration};
[INFO] [stdout]   |           ^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GenericImageView`, `GenericImage`, `RgbImage`
[INFO] [stdout]  --> src/qr_fit.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use image::{GenericImage, GenericImageView, ImageBuffer, RgbImage, Luma, imageops};
[INFO] [stdout]   |             ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::Duration`
[INFO] [stdout]  --> src/main.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::{thread, time::Duration};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `embedded_graphics::prelude::*`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use embedded_graphics::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i2c`
[INFO] [stdout]   --> src/init.rs:59:14
[INFO] [stdout]    |
[INFO] [stdout] 59 |         Some(i2c) => {
[INFO] [stdout]    |              ^^^ help: if this is intentional, prefix it with an underscore: `_i2c`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i2c`
[INFO] [stdout]   --> src/init.rs:59:14
[INFO] [stdout]    |
[INFO] [stdout] 59 |         Some(i2c) => {
[INFO] [stdout]    |              ^^^ help: if this is intentional, prefix it with an underscore: `_i2c`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/init.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let mut i2c =
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/init.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let mut i2c =
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/db_poller.rs:57:41
[INFO] [stdout]    |
[INFO] [stdout] 57 | ...                   let mut relay_pin = relay_pin.lock().unwrap();
[INFO] [stdout]    |                           ----^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/db_poller.rs:57:41
[INFO] [stdout]    |
[INFO] [stdout] 57 | ...                   let mut relay_pin = relay_pin.lock().unwrap();
[INFO] [stdout]    |                           ----^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/db_poller.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 | ...                   let mut relay_pin = relay_pin.lock().unwrap();
[INFO] [stdout]    |                           ----^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/db_poller.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 | ...                   let mut relay_pin = relay_pin.lock().unwrap();
[INFO] [stdout]    |                           ----^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/router.rs:29:25
[INFO] [stdout]    |
[INFO] [stdout] 29 |                     let mut id: String;
[INFO] [stdout]    |                         ----^^
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/router.rs:29:25
[INFO] [stdout]    |
[INFO] [stdout] 29 |                     let mut id: String;
[INFO] [stdout]    |                         ----^^
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/qr_fit.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut perim = qr_arr.len();
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/qr_fit.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut perim = qr_arr.len();
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/qr_fit.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let mut img = ImageBuffer::from_fn(perim as u32, perim as u32, |x, y| {
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/qr_fit.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let mut img = ImageBuffer::from_fn(perim as u32, perim as u32, |x, y| {
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:44:33
[INFO] [stdout]    |
[INFO] [stdout] 44 | / ...                   match ip_qr_fit[x][y] {
[INFO] [stdout] 45 | | ...                       0 => Pixel(Point::new(x as i32 + 1, y as i32 + 1), BinaryColor::On).draw(disp),
[INFO] [stdout] 46 | | ...                       _ => Pixel(Point::new(x as i32 + 1, y as i32 + 1), BinaryColor::Off).draw(disp)
[INFO] [stdout] 47 | | ...                   };
[INFO] [stdout]    | |_______________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 44 |                                 let _ = match ip_qr_fit[x][y] {
[INFO] [stdout]    |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:44:33
[INFO] [stdout]    |
[INFO] [stdout] 44 | / ...                   match ip_qr_fit[x][y] {
[INFO] [stdout] 45 | | ...                       0 => Pixel(Point::new(x as i32 + 1, y as i32 + 1), BinaryColor::On).draw(disp),
[INFO] [stdout] 46 | | ...                       _ => Pixel(Point::new(x as i32 + 1, y as i32 + 1), BinaryColor::Off).draw(disp)
[INFO] [stdout] 47 | | ...                   };
[INFO] [stdout]    | |_______________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 44 |                                 let _ = match ip_qr_fit[x][y] {
[INFO] [stdout]    |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:53:25
[INFO] [stdout]    |
[INFO] [stdout] 53 | /                         Rectangle::new(Point::new(0, 0), Point::new(63, 63))
[INFO] [stdout] 54 | |                             .into_styled(
[INFO] [stdout] 55 | |                                 PrimitiveStyleBuilder::new()
[INFO] [stdout] 56 | |                                     .stroke_width(1)
[INFO] [stdout] ...  |
[INFO] [stdout] 59 | |                             )
[INFO] [stdout] 60 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 53 |                         let _ = Rectangle::new(Point::new(0, 0), Point::new(63, 63))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:62:25
[INFO] [stdout]    |
[INFO] [stdout] 62 | /                         Text::new("192.168", Point::new(66, 0))
[INFO] [stdout] 63 | |                             .into_styled(TextStyle::new(Font8x16, BinaryColor::On))
[INFO] [stdout] 64 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 62 |                         let _ = Text::new("192.168", Point::new(66, 0))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:66:25
[INFO] [stdout]    |
[INFO] [stdout] 66 | /                         Text::new("192.168", Point::new(66, 18))
[INFO] [stdout] 67 | |                             .into_styled(TextStyle::new(Font8x16, BinaryColor::On))
[INFO] [stdout] 68 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 66 |                         let _ = Text::new("192.168", Point::new(66, 18))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:74:25
[INFO] [stdout]    |
[INFO] [stdout] 74 | /                         Text::new("NO IP", Point::new(0, 0))
[INFO] [stdout] 75 | |                             .into_styled(TextStyle::new(Font12x16, BinaryColor::On))
[INFO] [stdout] 76 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 74 |                         let _ = Text::new("NO IP", Point::new(0, 0))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/router.rs:74:17
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 conn.execute("delete from schedule where id=?", params![id]);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 let _ = conn.execute("delete from schedule where id=?", params![id]);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/router.rs:104:13
[INFO] [stdout]     |
[INFO] [stdout] 104 |             Command::new("poweroff").output();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 104 |             let _ = Command::new("poweroff").output();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:53:25
[INFO] [stdout]    |
[INFO] [stdout] 53 | /                         Rectangle::new(Point::new(0, 0), Point::new(63, 63))
[INFO] [stdout] 54 | |                             .into_styled(
[INFO] [stdout] 55 | |                                 PrimitiveStyleBuilder::new()
[INFO] [stdout] 56 | |                                     .stroke_width(1)
[INFO] [stdout] ...  |
[INFO] [stdout] 59 | |                             )
[INFO] [stdout] 60 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 53 |                         let _ = Rectangle::new(Point::new(0, 0), Point::new(63, 63))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:62:25
[INFO] [stdout]    |
[INFO] [stdout] 62 | /                         Text::new("192.168", Point::new(66, 0))
[INFO] [stdout] 63 | |                             .into_styled(TextStyle::new(Font8x16, BinaryColor::On))
[INFO] [stdout] 64 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 62 |                         let _ = Text::new("192.168", Point::new(66, 0))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:66:25
[INFO] [stdout]    |
[INFO] [stdout] 66 | /                         Text::new("192.168", Point::new(66, 18))
[INFO] [stdout] 67 | |                             .into_styled(TextStyle::new(Font8x16, BinaryColor::On))
[INFO] [stdout] 68 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 66 |                         let _ = Text::new("192.168", Point::new(66, 18))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/ip_poller.rs:74:25
[INFO] [stdout]    |
[INFO] [stdout] 74 | /                         Text::new("NO IP", Point::new(0, 0))
[INFO] [stdout] 75 | |                             .into_styled(TextStyle::new(Font12x16, BinaryColor::On))
[INFO] [stdout] 76 | |                             .draw(disp);
[INFO] [stdout]    | |_______________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 74 |                         let _ = Text::new("NO IP", Point::new(0, 0))
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/router.rs:74:17
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 conn.execute("delete from schedule where id=?", params![id]);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 let _ = conn.execute("delete from schedule where id=?", params![id]);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/router.rs:104:13
[INFO] [stdout]     |
[INFO] [stdout] 104 |             Command::new("poweroff").output();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 104 |             let _ = Command::new("poweroff").output();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/model.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Schedule`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: requested on the command line with `-D non-local-definitions`
[INFO] [stdout]   = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/model.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Schedule`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/model.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Sensor`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/model.rs:15:21
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Sensor`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/model.rs:22:10
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_SensorData`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/model.rs:22:21
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_SensorData`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/model.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Schedule`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: requested on the command line with `-D non-local-definitions`
[INFO] [stdout]   = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/model.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Schedule`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/model.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Sensor`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/model.rs:15:21
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Sensor`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/model.rs:22:10
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_SensorData`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 previous errors; 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `smart_garden` (bin "smart_garden") due to 7 previous errors; 20 warnings emitted
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/model.rs:22:21
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_SensorData`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: aborting due to 6 previous errors; 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `smart_garden` (bin "smart_garden" test) due to 7 previous errors; 20 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "dcbbbcf8b1f63beca7c9d1921bf3ce9d1e873a89e2fa53e8b586c02465eb23ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dcbbbcf8b1f63beca7c9d1921bf3ce9d1e873a89e2fa53e8b586c02465eb23ea", kill_on_drop: false }`
[INFO] [stdout] dcbbbcf8b1f63beca7c9d1921bf3ce9d1e873a89e2fa53e8b586c02465eb23ea
