[INFO] cloning repository https://github.com/nesquikcode/tuicore
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nesquikcode/tuicore" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnesquikcode%2Ftuicore", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnesquikcode%2Ftuicore'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 58cd752871b5721afeb241cf9f64f8b444e1614c
[INFO] checking nesquikcode/tuicore against try#0611f7de057c584b8771102fde7aed6c70c71d3b for pr-146440
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnesquikcode%2Ftuicore" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/nesquikcode/tuicore
[INFO] finished tweaking git repo https://github.com/nesquikcode/tuicore
[INFO] tweaked toml for git repo https://github.com/nesquikcode/tuicore written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/nesquikcode/tuicore on toolchain 0611f7de057c584b8771102fde7aed6c70c71d3b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/nesquikcode/tuicore 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" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b7e581c3040daaf51419e2d494f02a598c3f929f9647271ecc754242be43475b
[INFO] running `Command { std: "docker" "start" "-a" "b7e581c3040daaf51419e2d494f02a598c3f929f9647271ecc754242be43475b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b7e581c3040daaf51419e2d494f02a598c3f929f9647271ecc754242be43475b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b7e581c3040daaf51419e2d494f02a598c3f929f9647271ecc754242be43475b", kill_on_drop: false }`
[INFO] [stdout] b7e581c3040daaf51419e2d494f02a598c3f929f9647271ecc754242be43475b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8aeae1dd3e47d2189dde1be03cb918205934ef70898390d4de7a17c9c62500d0
[INFO] running `Command { std: "docker" "start" "-a" "8aeae1dd3e47d2189dde1be03cb918205934ef70898390d4de7a17c9c62500d0", kill_on_drop: false }`
[INFO] [stderr]     Checking core2 v0.4.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking pxfm v0.1.28
[INFO] [stderr]     Checking png v0.18.1
[INFO] [stderr]     Checking av1-grain v0.2.5
[INFO] [stderr]     Checking av-scenechange v0.14.1
[INFO] [stderr]     Checking gif v0.14.1
[INFO] [stderr]     Checking sysinfo v0.38.4
[INFO] [stderr]     Checking bitstream-io v4.9.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]     Checking rav1e v0.8.1
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]     Checking moxcms v0.8.1
[INFO] [stderr]     Checking ravif v0.13.0
[INFO] [stderr]     Checking image v0.25.10
[INFO] [stderr]     Checking tuicore v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `ClearType`, `Clear`, `Color as TermColor`, `MoveTo`, `ResetColor`, `SetBackgroundColor`, `SetForegroundColor`, and `SetSize`
[INFO] [stdout]  --> src/core.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 |     terminal::{size, SetSize, Clear, ClearType},
[INFO] [stdout]   |                      ^^^^^^^  ^^^^^  ^^^^^^^^^
[INFO] [stdout] 4 |     style::{Print, SetBackgroundColor, SetForegroundColor, ResetColor, Color as TermColor},
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     event::{self, Event, KeyCode, KeyEvent},
[INFO] [stdout] 6 |     cursor::{MoveTo, Hide}
[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: `array`, `hash::Hash`, and `ops::DerefMut`
[INFO] [stdout]  --> src/core.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::{array, collections::HashMap, hash::Hash, ops::DerefMut, thread::sleep, time::{Duration, Instant}};
[INFO] [stdout]   |           ^^^^^                        ^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Position`, `RelPosition`, `RelSize`, and `elements::Label`
[INFO] [stdout]   --> src/core.rs:11:41
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Color, Element, FrameBuffer, Pixel, Position, RelPosition, RelSize, Size
[INFO] [stdout]    |                                         ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 12 | }, elements::Label};
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]    --> src/base.rs:183:19
[INFO] [stdout]     |
[INFO] [stdout] 183 |             while ((self.buffer.len() as u16) < screensize) {
[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] 183 -             while ((self.buffer.len() as u16) < screensize) {
[INFO] [stdout] 183 +             while (self.buffer.len() as u16) < screensize  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Position`, `RelPosition`, `RelSize`, and `Size`
[INFO] [stdout]  --> src/elements.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     Position, RelPosition, Positions,
[INFO] [stdout]   |     ^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 4 |     Size, RelSize, Sizes,
[INFO] [stdout]   |     ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ImageResult`
[INFO] [stdout]  --> src/elements.rs:8:45
[INFO] [stdout]   |
[INFO] [stdout] 8 | use image::{DynamicImage, GenericImageView, ImageResult, open, imageops::{FilterType}};
[INFO] [stdout]   |                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/core.rs:128:17
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let mut ev = self.events.get_mut(i);
[INFO] [stdout]     |                 ----^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/base.rs:109:32
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn blend_up(&mut self, mut with: Color, opacity: f32) {
[INFO] [stdout]     |                                ----^^^^
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bg_opacity`
[INFO] [stdout]   --> src/elements.rs:24:136
[INFO] [stdout]    |
[INFO] [stdout] 24 | ...opacity: Option<f32>, bg_opacity: Option<f32>) -> Label {
[INFO] [stdout]    |                          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bg_opacity`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/elements.rs:143:14
[INFO] [stdout]     |
[INFO] [stdout] 143 |         for (x, y, c) in img.pixels() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]    --> src/elements.rs:143:17
[INFO] [stdout]     |
[INFO] [stdout] 143 |         for (x, y, c) in img.pixels() {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `ComposedLayer` is never constructed
[INFO] [stdout]    --> src/elements.rs:207:12
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub struct ComposedLayer {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout]     = note: `#[deny(unused_unconstructable_pub_struct)]` (part of `#[deny(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `renderers` is never read
[INFO] [stdout]    --> src/elements.rs:208:5
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub struct ComposedLayer {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] 208 |     renderers: Vec<Box<dyn Element>>
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `lastColor` should have a snake case name
[INFO] [stdout]    --> src/core.rs:193:17
[INFO] [stdout]     |
[INFO] [stdout] 193 |         let mut lastColor = self.default_color;
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `last_color`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `lastColorBg` should have a snake case name
[INFO] [stdout]    --> src/core.rs:194:17
[INFO] [stdout]     |
[INFO] [stdout] 194 |         let mut lastColorBg = self.default_color_bg;
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `last_color_bg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `firstPixel` should have a snake case name
[INFO] [stdout]    --> src/core.rs:195:13
[INFO] [stdout]     |
[INFO] [stdout] 195 | ...   let firstPixel = match self.buffer.buffer.get(0) {Some(x) => x, None => {&Pixel { foreground_color: self.default_color, backg...
[INFO] [stdout]     |           ^^^^^^^^^^ help: convert the identifier to snake case: `first_pixel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `firstPixelFg` should have a snake case name
[INFO] [stdout]    --> src/core.rs:196:13
[INFO] [stdout]     |
[INFO] [stdout] 196 |         let firstPixelFg = firstPixel.foreground_color.maskmax(self.color_mask_max).maskmin(self.color_mask_min);
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: convert the identifier to snake case: `first_pixel_fg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `firstPixelBg` should have a snake case name
[INFO] [stdout]    --> src/core.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let firstPixelBg = firstPixel.background_color.maskmax(self.color_mask_max).maskmin(self.color_mask_min);
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: convert the identifier to snake case: `first_pixel_bg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/core.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         execute!(stdout(), Hide);
[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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 251 |         let _ = execute!(stdout(), Hide);;
[INFO] [stdout]     |         +++++++                         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixelFg` should have a snake case name
[INFO] [stdout]   --> src/elements.rs:56:21
[INFO] [stdout]    |
[INFO] [stdout] 56 |             let mut pixelFg = pixel.foreground_color;
[INFO] [stdout]    |                     ^^^^^^^ help: convert the identifier to snake case: `pixel_fg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixelBg` should have a snake case name
[INFO] [stdout]   --> src/elements.rs:57:21
[INFO] [stdout]    |
[INFO] [stdout] 57 |             let mut pixelBg = pixel.background_color;
[INFO] [stdout]    |                     ^^^^^^^ help: convert the identifier to snake case: `pixel_bg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixelFg` should have a snake case name
[INFO] [stdout]    --> src/elements.rs:113:25
[INFO] [stdout]     |
[INFO] [stdout] 113 |                 let mut pixelFg = pixel.foreground_color;
[INFO] [stdout]     |                         ^^^^^^^ help: convert the identifier to snake case: `pixel_fg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixelBg` should have a snake case name
[INFO] [stdout]    --> src/elements.rs:114:25
[INFO] [stdout]     |
[INFO] [stdout] 114 |                 let mut pixelBg = pixel.background_color;
[INFO] [stdout]     |                         ^^^^^^^ help: convert the identifier to snake case: `pixel_bg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `canvasPixel` should have a snake case name
[INFO] [stdout]    --> src/elements.rs:192:21
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 let canvasPixel = match buff.buffer.get(idx) {Some(x) => x, None => {continue;}};
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: convert the identifier to snake case: `canvas_pixel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `imagePixel` should have a snake case name
[INFO] [stdout]    --> src/elements.rs:193:21
[INFO] [stdout]     |
[INFO] [stdout] 193 |                 let imagePixel = match pixels.get((y * size.width + x) as usize) {Some(x) => x, None => {continue;}};
[INFO] [stdout]     |                     ^^^^^^^^^^ help: convert the identifier to snake case: `image_pixel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixelFg` should have a snake case name
[INFO] [stdout]    --> src/elements.rs:194:25
[INFO] [stdout]     |
[INFO] [stdout] 194 |                 let mut pixelFg = canvasPixel.foreground_color;
[INFO] [stdout]     |                         ^^^^^^^ help: convert the identifier to snake case: `pixel_fg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixelBg` should have a snake case name
[INFO] [stdout]    --> src/elements.rs:195:25
[INFO] [stdout]     |
[INFO] [stdout] 195 |                 let mut pixelBg = canvasPixel.background_color;
[INFO] [stdout]     |                         ^^^^^^^ help: convert the identifier to snake case: `pixel_bg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `tuicore` (lib) due to 1 previous error; 26 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused imports: `ClearType`, `Clear`, `Color as TermColor`, `MoveTo`, `ResetColor`, `SetBackgroundColor`, `SetForegroundColor`, and `SetSize`
[INFO] [stdout]  --> src/core.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 |     terminal::{size, SetSize, Clear, ClearType},
[INFO] [stdout]   |                      ^^^^^^^  ^^^^^  ^^^^^^^^^
[INFO] [stdout] 4 |     style::{Print, SetBackgroundColor, SetForegroundColor, ResetColor, Color as TermColor},
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     event::{self, Event, KeyCode, KeyEvent},
[INFO] [stdout] 6 |     cursor::{MoveTo, Hide}
[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: `array`, `hash::Hash`, and `ops::DerefMut`
[INFO] [stdout]  --> src/core.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::{array, collections::HashMap, hash::Hash, ops::DerefMut, thread::sleep, time::{Duration, Instant}};
[INFO] [stdout]   |           ^^^^^                        ^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Position`, `RelPosition`, `RelSize`, and `elements::Label`
[INFO] [stdout]   --> src/core.rs:11:41
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Color, Element, FrameBuffer, Pixel, Position, RelPosition, RelSize, Size
[INFO] [stdout]    |                                         ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 12 | }, elements::Label};
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]    --> src/base.rs:183:19
[INFO] [stdout]     |
[INFO] [stdout] 183 |             while ((self.buffer.len() as u16) < screensize) {
[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] 183 -             while ((self.buffer.len() as u16) < screensize) {
[INFO] [stdout] 183 +             while (self.buffer.len() as u16) < screensize  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Position`, `RelPosition`, `RelSize`, and `Size`
[INFO] [stdout]  --> src/elements.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     Position, RelPosition, Positions,
[INFO] [stdout]   |     ^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 4 |     Size, RelSize, Sizes,
[INFO] [stdout]   |     ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ImageResult`
[INFO] [stdout]  --> src/elements.rs:8:45
[INFO] [stdout]   |
[INFO] [stdout] 8 | use image::{DynamicImage, GenericImageView, ImageResult, open, imageops::{FilterType}};
[INFO] [stdout]   |                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/lib.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     use std::collections::HashMap;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]   --> src/lib.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 |         use std::cell::Cell;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]   --> src/lib.rs:15:32
[INFO] [stdout]    |
[INFO] [stdout] 15 |         use std::collections::{HashMap};
[INFO] [stdout]    |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Color`
[INFO] [stdout]   --> src/lib.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 16 |         use crate::base::{Color, Positions, RelPosition};
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ComposedLayer` and `Rectangle`
[INFO] [stdout]   --> src/lib.rs:18:38
[INFO] [stdout]    |
[INFO] [stdout] 18 |         use crate::elements::{Label, ComposedLayer, Rectangle, Image};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/core.rs:128:17
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let mut ev = self.events.get_mut(i);
[INFO] [stdout]     |                 ----^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/base.rs:109:32
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn blend_up(&mut self, mut with: Color, opacity: f32) {
[INFO] [stdout]     |                                ----^^^^
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bg_opacity`
[INFO] [stdout]   --> src/elements.rs:24:136
[INFO] [stdout]    |
[INFO] [stdout] 24 | ...opacity: Option<f32>, bg_opacity: Option<f32>) -> Label {
[INFO] [stdout]    |                          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bg_opacity`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/elements.rs:143:14
[INFO] [stdout]     |
[INFO] [stdout] 143 |         for (x, y, c) in img.pixels() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]    --> src/elements.rs:143:17
[INFO] [stdout]     |
[INFO] [stdout] 143 |         for (x, y, c) in img.pixels() {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:73:38
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 exec: Box::new(move |mut renderers, mut buff, mut context| {
[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/lib.rs:73:53
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 exec: Box::new(move |mut renderers, mut buff, mut context| {
[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/lib.rs:73:63
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 exec: Box::new(move |mut renderers, mut buff, mut context| {
[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/lib.rs:81:38
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 exec: Box::new(move |mut renderers, mut buff, mut context| {
[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/lib.rs:81:53
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 exec: Box::new(move |mut renderers, mut buff, mut context| {
[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/lib.rs:81:63
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 exec: Box::new(move |mut renderers, mut buff, mut context| {
[INFO] [stdout]    |                                                               ----^^^^^^^
[INFO] [stdout]    |                                                               |
[INFO] [stdout]    |                                                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buff`
[INFO] [stdout]   --> src/lib.rs:81:53
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 exec: Box::new(move |mut renderers, mut buff, mut context| {
[INFO] [stdout]    |                                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buff`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `renderers`
[INFO] [stdout]   --> src/lib.rs:73:38
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 exec: Box::new(move |mut renderers, mut buff, mut context| {
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_renderers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buff`
[INFO] [stdout]   --> src/lib.rs:73:53
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 exec: Box::new(move |mut renderers, mut buff, mut context| {
[INFO] [stdout]    |                                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buff`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `redid`
[INFO] [stdout]   --> src/lib.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let redid: u32 = app.register_renderer(Box::new(img));
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_redid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `authorid`
[INFO] [stdout]   --> src/lib.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let authorid: u32 = app.register_renderer(Box::new(author));
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_authorid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `partid`
[INFO] [stdout]   --> src/lib.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |         let partid: u32 = app.register_renderer(Box::new(part));
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_partid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `langif`
[INFO] [stdout]   --> src/lib.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let langif: u32 = app.register_renderer(Box::new(lang));
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_langif`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `ComposedLayer` is never constructed
[INFO] [stdout]    --> src/elements.rs:207:12
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub struct ComposedLayer {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout]     = note: `#[deny(unused_unconstructable_pub_struct)]` (part of `#[deny(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `renderers` is never read
[INFO] [stdout]    --> src/elements.rs:208:5
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub struct ComposedLayer {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] 208 |     renderers: Vec<Box<dyn Element>>
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `lastColor` should have a snake case name
[INFO] [stdout]    --> src/core.rs:193:17
[INFO] [stdout]     |
[INFO] [stdout] 193 |         let mut lastColor = self.default_color;
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `last_color`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `lastColorBg` should have a snake case name
[INFO] [stdout]    --> src/core.rs:194:17
[INFO] [stdout]     |
[INFO] [stdout] 194 |         let mut lastColorBg = self.default_color_bg;
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `last_color_bg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `firstPixel` should have a snake case name
[INFO] [stdout]    --> src/core.rs:195:13
[INFO] [stdout]     |
[INFO] [stdout] 195 | ...   let firstPixel = match self.buffer.buffer.get(0) {Some(x) => x, None => {&Pixel { foreground_color: self.default_color, backg...
[INFO] [stdout]     |           ^^^^^^^^^^ help: convert the identifier to snake case: `first_pixel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `firstPixelFg` should have a snake case name
[INFO] [stdout]    --> src/core.rs:196:13
[INFO] [stdout]     |
[INFO] [stdout] 196 |         let firstPixelFg = firstPixel.foreground_color.maskmax(self.color_mask_max).maskmin(self.color_mask_min);
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: convert the identifier to snake case: `first_pixel_fg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `firstPixelBg` should have a snake case name
[INFO] [stdout]    --> src/core.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let firstPixelBg = firstPixel.background_color.maskmax(self.color_mask_max).maskmin(self.color_mask_min);
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: convert the identifier to snake case: `first_pixel_bg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/core.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         execute!(stdout(), Hide);
[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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 251 |         let _ = execute!(stdout(), Hide);;
[INFO] [stdout]     |         +++++++                         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixelFg` should have a snake case name
[INFO] [stdout]   --> src/elements.rs:56:21
[INFO] [stdout]    |
[INFO] [stdout] 56 |             let mut pixelFg = pixel.foreground_color;
[INFO] [stdout]    |                     ^^^^^^^ help: convert the identifier to snake case: `pixel_fg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixelBg` should have a snake case name
[INFO] [stdout]   --> src/elements.rs:57:21
[INFO] [stdout]    |
[INFO] [stdout] 57 |             let mut pixelBg = pixel.background_color;
[INFO] [stdout]    |                     ^^^^^^^ help: convert the identifier to snake case: `pixel_bg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixelFg` should have a snake case name
[INFO] [stdout]    --> src/elements.rs:113:25
[INFO] [stdout]     |
[INFO] [stdout] 113 |                 let mut pixelFg = pixel.foreground_color;
[INFO] [stdout]     |                         ^^^^^^^ help: convert the identifier to snake case: `pixel_fg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixelBg` should have a snake case name
[INFO] [stdout]    --> src/elements.rs:114:25
[INFO] [stdout]     |
[INFO] [stdout] 114 |                 let mut pixelBg = pixel.background_color;
[INFO] [stdout]     |                         ^^^^^^^ help: convert the identifier to snake case: `pixel_bg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `canvasPixel` should have a snake case name
[INFO] [stdout]    --> src/elements.rs:192:21
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 let canvasPixel = match buff.buffer.get(idx) {Some(x) => x, None => {continue;}};
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: convert the identifier to snake case: `canvas_pixel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `imagePixel` should have a snake case name
[INFO] [stdout]    --> src/elements.rs:193:21
[INFO] [stdout]     |
[INFO] [stdout] 193 |                 let imagePixel = match pixels.get((y * size.width + x) as usize) {Some(x) => x, None => {continue;}};
[INFO] [stdout]     |                     ^^^^^^^^^^ help: convert the identifier to snake case: `image_pixel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixelFg` should have a snake case name
[INFO] [stdout]    --> src/elements.rs:194:25
[INFO] [stdout]     |
[INFO] [stdout] 194 |                 let mut pixelFg = canvasPixel.foreground_color;
[INFO] [stdout]     |                         ^^^^^^^ help: convert the identifier to snake case: `pixel_fg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixelBg` should have a snake case name
[INFO] [stdout]    --> src/elements.rs:195:25
[INFO] [stdout]     |
[INFO] [stdout] 195 |                 let mut pixelBg = canvasPixel.background_color;
[INFO] [stdout]     |                         ^^^^^^^ help: convert the identifier to snake case: `pixel_bg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fpsLabel` should have a snake case name
[INFO] [stdout]   --> src/lib.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         let fpsLabel = Label::new(
[INFO] [stdout]    |             ^^^^^^^^ help: convert the identifier to snake case: `fps_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `tuicore` (lib test) due to 1 previous error; 45 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "8aeae1dd3e47d2189dde1be03cb918205934ef70898390d4de7a17c9c62500d0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8aeae1dd3e47d2189dde1be03cb918205934ef70898390d4de7a17c9c62500d0", kill_on_drop: false }`
[INFO] [stdout] 8aeae1dd3e47d2189dde1be03cb918205934ef70898390d4de7a17c9c62500d0
