[INFO] cloning repository https://github.com/loknopf/LED_Ring_Controller
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/loknopf/LED_Ring_Controller" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Floknopf%2FLED_Ring_Controller", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Floknopf%2FLED_Ring_Controller'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 281ef987dd890c7d2d9a17de65038b94f0bd4561
[INFO] checking loknopf/LED_Ring_Controller against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Floknopf%2FLED_Ring_Controller" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/loknopf/LED_Ring_Controller
[INFO] finished tweaking git repo https://github.com/loknopf/LED_Ring_Controller
[INFO] tweaked toml for git repo https://github.com/loknopf/LED_Ring_Controller written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/loknopf/LED_Ring_Controller 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 git repo https://github.com/loknopf/LED_Ring_Controller 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] warning: binary `rgb_ring` should have a kebab-case name
[INFO] [stderr]    |
[INFO] [stderr]  1 | /workspace/builds/worker-7-tc1/source/target/.../rgb_ring
[INFO] [stderr]    |                                                  ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::non_kebab_case_bins` is set to `warn` by default
[INFO] [stderr] help: to change the binary name to `rgb-ring`, convert `package.name`
[INFO] [stderr]   --> Cargo.toml:10:8
[INFO] [stderr]    |
[INFO] [stderr] 10 - name = "rgb_ring"
[INFO] [stderr] 10 + name = "rgb-ring"
[INFO] [stderr]    |
[INFO] [stderr] help: to change the binary name to `rgb-ring`, specify `bin.name`
[INFO] [stderr]   --> Cargo.toml:11:19
[INFO] [stderr]    |
[INFO] [stderr] 11 ~ version = "0.1.0"
[INFO] [stderr] 12 + [[bin]]
[INFO] [stderr] 13 + name = "rgb-ring"
[INFO] [stderr] 14 + path = "src/main.rs"
[INFO] [stderr]    |
[INFO] [stderr] warning: `rgb_ring` (manifest) generated 1 warning
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rppal v0.22.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] 9b29d766e063390c55d1d8c2b035d315b4983f1d8b0f3dedad94f5b0aa621cd5
[INFO] running `Command { std: "docker" "start" "9b29d766e063390c55d1d8c2b035d315b4983f1d8b0f3dedad94f5b0aa621cd5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9b29d766e063390c55d1d8c2b035d315b4983f1d8b0f3dedad94f5b0aa621cd5", 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" "9b29d766e063390c55d1d8c2b035d315b4983f1d8b0f3dedad94f5b0aa621cd5" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9b29d766e063390c55d1d8c2b035d315b4983f1d8b0f3dedad94f5b0aa621cd5", 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" "9b29d766e063390c55d1d8c2b035d315b4983f1d8b0f3dedad94f5b0aa621cd5" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: binary `rgb_ring` should have a kebab-case name
[INFO] [stderr]    |
[INFO] [stderr]  1 | /opt/rustwide/target/.../rgb_ring
[INFO] [stderr]    |                          ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::non_kebab_case_bins` is set to `warn` by default
[INFO] [stderr] help: to change the binary name to `rgb-ring`, convert `package.name`
[INFO] [stderr]   --> Cargo.toml:10:8
[INFO] [stderr]    |
[INFO] [stderr] 10 - name = "rgb_ring"
[INFO] [stderr] 10 + name = "rgb-ring"
[INFO] [stderr]    |
[INFO] [stderr] help: to change the binary name to `rgb-ring`, specify `bin.name`
[INFO] [stderr]   --> Cargo.toml:11:19
[INFO] [stderr]    |
[INFO] [stderr] 11 ~ version = "0.1.0"
[INFO] [stderr] 12 + [[bin]]
[INFO] [stderr] 13 + name = "rgb-ring"
[INFO] [stderr] 14 + path = "src/main.rs"
[INFO] [stderr]    |
[INFO] [stderr] warning: `rgb_ring` (manifest) generated 1 warning
[INFO] [stderr]    Compiling unicode-ident v1.0.16
[INFO] [stderr]     Checking anstyle-query v1.1.2
[INFO] [stderr]     Checking colorchoice v1.0.3
[INFO] [stderr]     Checking clap_lex v0.7.4
[INFO] [stderr]     Checking anstyle-parse v0.2.6
[INFO] [stderr]     Checking rppal v0.22.1
[INFO] [stderr]    Compiling proc-macro2 v1.0.93
[INFO] [stderr]     Checking anstream v0.6.18
[INFO] [stderr]     Checking clap_builder v4.5.27
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]    Compiling syn v2.0.96
[INFO] [stderr]    Compiling clap_derive v4.5.24
[INFO] [stderr]     Checking clap v4.5.27
[INFO] [stderr]     Checking rgb_ring v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `fmt::format`
[INFO] [stdout]  --> src/lib.rs:2:25
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{error::Error, fmt::format, path::PathBuf};
[INFO] [stdout]   |                         ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `builder::Str`
[INFO] [stdout]  --> src/lib.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use clap::{builder::Str, Parser, Subcommand};
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:149:11
[INFO] [stdout]     |
[INFO] [stdout] 149 |         if(brightness > 0.0 && brightness < 1.0){
[INFO] [stdout]     |           ^                                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 149 -         if(brightness > 0.0 && brightness < 1.0){
[INFO] [stdout] 149 +         if brightness > 0.0 && brightness < 1.0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:162:11
[INFO] [stdout]     |
[INFO] [stdout] 162 |         if(values.len() != 3){
[INFO] [stdout]     |           ^                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 162 -         if(values.len() != 3){
[INFO] [stdout] 162 +         if values.len() != 3 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fmt::format`
[INFO] [stdout]  --> src/lib.rs:2:25
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{error::Error, fmt::format, path::PathBuf};
[INFO] [stdout]   |                         ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `builder::Str`
[INFO] [stdout]  --> src/lib.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use clap::{builder::Str, Parser, Subcommand};
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:149:11
[INFO] [stdout]     |
[INFO] [stdout] 149 |         if(brightness > 0.0 && brightness < 1.0){
[INFO] [stdout]     |           ^                                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 149 -         if(brightness > 0.0 && brightness < 1.0){
[INFO] [stdout] 149 +         if brightness > 0.0 && brightness < 1.0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:162:11
[INFO] [stdout]     |
[INFO] [stdout] 162 |         if(values.len() != 3){
[INFO] [stdout]     |           ^                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 162 -         if(values.len() != 3){
[INFO] [stdout] 162 +         if values.len() != 3 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:174:11
[INFO] [stdout]     |
[INFO] [stdout] 174 |         if(idx > self.num_leds){
[INFO] [stdout]     |           ^                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 174 -         if(idx > self.num_leds){
[INFO] [stdout] 174 +         if idx > self.num_leds {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:219:7
[INFO] [stdout]     |
[INFO] [stdout] 219 |     if(*hex_value >= 0 && *hex_value <= 0xFFFFFF){
[INFO] [stdout]     |       ^                                         ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 219 -     if(*hex_value >= 0 && *hex_value <= 0xFFFFFF){
[INFO] [stdout] 219 +     if *hex_value >= 0 && *hex_value <= 0xFFFFFF {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:230:7
[INFO] [stdout]     |
[INFO] [stdout] 230 |     if(rgb.len() != 3){
[INFO] [stdout]     |       ^              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 230 -     if(rgb.len() != 3){
[INFO] [stdout] 230 +     if rgb.len() != 3 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:241:7
[INFO] [stdout]     |
[INFO] [stdout] 241 |     if(!hex_string.starts_with("#")){
[INFO] [stdout]     |       ^                            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 241 -     if(!hex_string.starts_with("#")){
[INFO] [stdout] 241 +     if !hex_string.starts_with("#") {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rppal::spi::Spi`
[INFO] [stdout]    --> src/lib.rs:254:9
[INFO] [stdout]     |
[INFO] [stdout] 254 |     use rppal::spi::Spi;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LEDRing`
[INFO] [stdout]    --> src/lib.rs:256:57
[INFO] [stdout]     |
[INFO] [stdout] 256 |     use crate::{convert_rgb_to_grb, convert_hex_to_rgb, LEDRing};
[INFO] [stdout]     |                                                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:262:11
[INFO] [stdout]     |
[INFO] [stdout] 262 |         if(rgb[0] == 17 && rgb[1] == 34 && rgb[2] == 51){
[INFO] [stdout]     |           ^                                            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 262 -         if(rgb[0] == 17 && rgb[1] == 34 && rgb[2] == 51){
[INFO] [stdout] 262 +         if rgb[0] == 17 && rgb[1] == 34 && rgb[2] == 51 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:273:11
[INFO] [stdout]     |
[INFO] [stdout] 273 |         if(rgb[0] != 17 && rgb[1] != 34 && rgb[2] != 51){
[INFO] [stdout]     |           ^                                            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 273 -         if(rgb[0] != 17 && rgb[1] != 34 && rgb[2] != 51){
[INFO] [stdout] 273 +         if rgb[0] != 17 && rgb[1] != 34 && rgb[2] != 51 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:174:11
[INFO] [stdout]     |
[INFO] [stdout] 174 |         if(idx > self.num_leds){
[INFO] [stdout]     |           ^                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 174 -         if(idx > self.num_leds){
[INFO] [stdout] 174 +         if idx > self.num_leds {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:219:7
[INFO] [stdout]     |
[INFO] [stdout] 219 |     if(*hex_value >= 0 && *hex_value <= 0xFFFFFF){
[INFO] [stdout]     |       ^                                         ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 219 -     if(*hex_value >= 0 && *hex_value <= 0xFFFFFF){
[INFO] [stdout] 219 +     if *hex_value >= 0 && *hex_value <= 0xFFFFFF {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:230:7
[INFO] [stdout]     |
[INFO] [stdout] 230 |     if(rgb.len() != 3){
[INFO] [stdout]     |       ^              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 230 -     if(rgb.len() != 3){
[INFO] [stdout] 230 +     if rgb.len() != 3 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:241:7
[INFO] [stdout]     |
[INFO] [stdout] 241 |     if(!hex_string.starts_with("#")){
[INFO] [stdout]     |       ^                            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 241 -     if(!hex_string.starts_with("#")){
[INFO] [stdout] 241 +     if !hex_string.starts_with("#") {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/lib.rs:279:11
[INFO] [stdout]     |
[INFO] [stdout] 279 |         if(grb[1] == 17 && grb[0] == 34 && grb[2] == 51){
[INFO] [stdout]     |           ^                                            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 279 -         if(grb[1] == 17 && grb[0] == 34 && grb[2] == 51){
[INFO] [stdout] 279 +         if grb[1] == 17 && grb[0] == 34 && grb[2] == 51 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/lib.rs:109:35
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(e) => Self::from("I/O error: {e}"),
[INFO] [stdout]     |                                   ^                ---------------- you might have meant to use string interpolation in this string literal
[INFO] [stdout] 110 |             LEDRingError::ParseError(e) => Self::from("Error while parsind: {e}"),
[INFO] [stdout]     |                                                       -------------------------- you might have meant to use string interpolation in this string literal
[INFO] [stdout] 111 |             LEDRingError::ValueError(e) => Self::from("Value error: {e}")
[INFO] [stdout]     |                                                       ------------------ you might have meant to use string interpolation in this string literal
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 111 |             LEDRingError::ValueError(e) => Self::from(format!("Value error: {e}"))
[INFO] [stdout]     |                                                       ++++++++                  +
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 110 |             LEDRingError::ParseError(e) => Self::from(format!("Error while parsind: {e}")),
[INFO] [stdout]     |                                                       ++++++++                          +
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(e) => Self::from(format!("I/O error: {e}")),
[INFO] [stdout]     |                                                    ++++++++                +
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(_e) => Self::from("I/O error: {e}"),
[INFO] [stdout]     |                                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/lib.rs:110:38
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(e) => Self::from("I/O error: {e}"),
[INFO] [stdout]     |                                                    ---------------- you might have meant to use string interpolation in this string literal
[INFO] [stdout] 110 |             LEDRingError::ParseError(e) => Self::from("Error while parsind: {e}"),
[INFO] [stdout]     |                                      ^                -------------------------- you might have meant to use string interpolation in this string literal
[INFO] [stdout] 111 |             LEDRingError::ValueError(e) => Self::from("Value error: {e}")
[INFO] [stdout]     |                                                       ------------------ you might have meant to use string interpolation in this string literal
[INFO] [stdout]     |
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 111 |             LEDRingError::ValueError(e) => Self::from(format!("Value error: {e}"))
[INFO] [stdout]     |                                                       ++++++++                  +
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 110 |             LEDRingError::ParseError(e) => Self::from(format!("Error while parsind: {e}")),
[INFO] [stdout]     |                                                       ++++++++                          +
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(e) => Self::from(format!("I/O error: {e}")),
[INFO] [stdout]     |                                                    ++++++++                +
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 110 |             LEDRingError::ParseError(_e) => Self::from("Error while parsind: {e}"),
[INFO] [stdout]     |                                      +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/lib.rs:111:38
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(e) => Self::from("I/O error: {e}"),
[INFO] [stdout]     |                                                    ---------------- you might have meant to use string interpolation in this string literal
[INFO] [stdout] 110 |             LEDRingError::ParseError(e) => Self::from("Error while parsind: {e}"),
[INFO] [stdout]     |                                                       -------------------------- you might have meant to use string interpolation in this string literal
[INFO] [stdout] 111 |             LEDRingError::ValueError(e) => Self::from("Value error: {e}")
[INFO] [stdout]     |                                      ^                ------------------ you might have meant to use string interpolation in this string literal
[INFO] [stdout]     |
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 111 |             LEDRingError::ValueError(e) => Self::from(format!("Value error: {e}"))
[INFO] [stdout]     |                                                       ++++++++                  +
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 110 |             LEDRingError::ParseError(e) => Self::from(format!("Error while parsind: {e}")),
[INFO] [stdout]     |                                                       ++++++++                          +
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(e) => Self::from(format!("I/O error: {e}")),
[INFO] [stdout]     |                                                    ++++++++                +
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 111 |             LEDRingError::ValueError(_e) => Self::from("Value error: {e}")
[INFO] [stdout]     |                                      +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/lib.rs:219:8
[INFO] [stdout]     |
[INFO] [stdout] 219 |     if(*hex_value >= 0 && *hex_value <= 0xFFFFFF){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/lib.rs:109:35
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(e) => Self::from("I/O error: {e}"),
[INFO] [stdout]     |                                   ^                ---------------- you might have meant to use string interpolation in this string literal
[INFO] [stdout] 110 |             LEDRingError::ParseError(e) => Self::from("Error while parsind: {e}"),
[INFO] [stdout]     |                                                       -------------------------- you might have meant to use string interpolation in this string literal
[INFO] [stdout] 111 |             LEDRingError::ValueError(e) => Self::from("Value error: {e}")
[INFO] [stdout]     |                                                       ------------------ you might have meant to use string interpolation in this string literal
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 111 |             LEDRingError::ValueError(e) => Self::from(format!("Value error: {e}"))
[INFO] [stdout]     |                                                       ++++++++                  +
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 110 |             LEDRingError::ParseError(e) => Self::from(format!("Error while parsind: {e}")),
[INFO] [stdout]     |                                                       ++++++++                          +
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(e) => Self::from(format!("I/O error: {e}")),
[INFO] [stdout]     |                                                    ++++++++                +
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(_e) => Self::from("I/O error: {e}"),
[INFO] [stdout]     |                                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/lib.rs:110:38
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(e) => Self::from("I/O error: {e}"),
[INFO] [stdout]     |                                                    ---------------- you might have meant to use string interpolation in this string literal
[INFO] [stdout] 110 |             LEDRingError::ParseError(e) => Self::from("Error while parsind: {e}"),
[INFO] [stdout]     |                                      ^                -------------------------- you might have meant to use string interpolation in this string literal
[INFO] [stdout] 111 |             LEDRingError::ValueError(e) => Self::from("Value error: {e}")
[INFO] [stdout]     |                                                       ------------------ you might have meant to use string interpolation in this string literal
[INFO] [stdout]     |
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 111 |             LEDRingError::ValueError(e) => Self::from(format!("Value error: {e}"))
[INFO] [stdout]     |                                                       ++++++++                  +
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 110 |             LEDRingError::ParseError(e) => Self::from(format!("Error while parsind: {e}")),
[INFO] [stdout]     |                                                       ++++++++                          +
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(e) => Self::from(format!("I/O error: {e}")),
[INFO] [stdout]     |                                                    ++++++++                +
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 110 |             LEDRingError::ParseError(_e) => Self::from("Error while parsind: {e}"),
[INFO] [stdout]     |                                      +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/lib.rs:111:38
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(e) => Self::from("I/O error: {e}"),
[INFO] [stdout]     |                                                    ---------------- you might have meant to use string interpolation in this string literal
[INFO] [stdout] 110 |             LEDRingError::ParseError(e) => Self::from("Error while parsind: {e}"),
[INFO] [stdout]     |                                                       -------------------------- you might have meant to use string interpolation in this string literal
[INFO] [stdout] 111 |             LEDRingError::ValueError(e) => Self::from("Value error: {e}")
[INFO] [stdout]     |                                      ^                ------------------ you might have meant to use string interpolation in this string literal
[INFO] [stdout]     |
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 111 |             LEDRingError::ValueError(e) => Self::from(format!("Value error: {e}"))
[INFO] [stdout]     |                                                       ++++++++                  +
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 110 |             LEDRingError::ParseError(e) => Self::from(format!("Error while parsind: {e}")),
[INFO] [stdout]     |                                                       ++++++++                          +
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 109 |             LEDRingError::IoError(e) => Self::from(format!("I/O error: {e}")),
[INFO] [stdout]     |                                                    ++++++++                +
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 111 |             LEDRingError::ValueError(_e) => Self::from("Value error: {e}")
[INFO] [stdout]     |                                      +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `convert_rgb_to_grb` is never used
[INFO] [stdout]    --> src/lib.rs:229:4
[INFO] [stdout]     |
[INFO] [stdout] 229 | fn convert_rgb_to_grb(rgb:Vec<u8>) -> Result<Vec<u8>, LEDRingError>{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/lib.rs:219:8
[INFO] [stdout]     |
[INFO] [stdout] 219 |     if(*hex_value >= 0 && *hex_value <= 0xFFFFFF){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `f32::consts::E`, `thread`, and `time::Duration`
[INFO] [stdout]  --> src/main.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{f32::consts::E, thread, time::Duration, vec};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^  ^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error` and `self`
[INFO] [stdout]  --> src/main.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rppal::spi::{self, Bus, Error, Spi};
[INFO] [stdout]   |                  ^^^^       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `f32::consts::E`, `thread`, and `time::Duration`
[INFO] [stdout]  --> src/main.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{f32::consts::E, thread, time::Duration, vec};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^  ^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error` and `self`
[INFO] [stdout]  --> src/main.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rppal::spi::{self, Bus, Error, Spi};
[INFO] [stdout]   |                  ^^^^       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vec`
[INFO] [stdout]  --> src/main.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let vec = vec![255,0,0];
[INFO] [stdout]   |         ^^^ help: if this is intentional, prefix it with an underscore: `_vec`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]   --> src/main.rs:43:17
[INFO] [stdout]    |
[INFO] [stdout] 43 |     if let Some(config) = args.config{
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.18s
[INFO] [stdout] warning: function `get_spi_data` is never used
[INFO] [stdout]    --> src/main.rs:103:4
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn get_spi_data(vec: &Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vec`
[INFO] [stdout]  --> src/main.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let vec = vec![255,0,0];
[INFO] [stdout]   |         ^^^ help: if this is intentional, prefix it with an underscore: `_vec`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]   --> src/main.rs:43:17
[INFO] [stdout]    |
[INFO] [stdout] 43 |     if let Some(config) = args.config{
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_spi_data` is never used
[INFO] [stdout]    --> src/main.rs:103:4
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn get_spi_data(vec: &Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "9b29d766e063390c55d1d8c2b035d315b4983f1d8b0f3dedad94f5b0aa621cd5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9b29d766e063390c55d1d8c2b035d315b4983f1d8b0f3dedad94f5b0aa621cd5", kill_on_drop: false }`
[INFO] [stdout] 9b29d766e063390c55d1d8c2b035d315b4983f1d8b0f3dedad94f5b0aa621cd5
