[INFO] cloning repository https://github.com/blukai/bscreen
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/blukai/bscreen" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fblukai%2Fbscreen", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fblukai%2Fbscreen'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7fae7f1e917de6ecc2eb2eef5870e050afbe323f
[INFO] checking blukai/bscreen against master#3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0 for pr-143164
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fblukai%2Fbscreen" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/blukai/bscreen
[INFO] finished tweaking git repo https://github.com/blukai/bscreen
[INFO] tweaked toml for git repo https://github.com/blukai/bscreen written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/blukai/bscreen on toolchain 3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/blukai/bscreen 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" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking blukai/bscreen against master#3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0 for pr-143164
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fblukai%2Fbscreen" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/blukai/bscreen
[INFO] finished tweaking git repo https://github.com/blukai/bscreen
[INFO] tweaked toml for git repo https://github.com/blukai/bscreen written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/blukai/bscreen on toolchain 3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/blukai/bscreen 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" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded quick-xml v0.37.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 30e1eea637ebd723d792e20ab860d41ae4f44ca105045357d6a22a9c4e1d5631
[INFO] running `Command { std: "docker" "start" "-a" "30e1eea637ebd723d792e20ab860d41ae4f44ca105045357d6a22a9c4e1d5631", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "30e1eea637ebd723d792e20ab860d41ae4f44ca105045357d6a22a9c4e1d5631", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "30e1eea637ebd723d792e20ab860d41ae4f44ca105045357d6a22a9c4e1d5631", kill_on_drop: false }`
[INFO] [stdout] 30e1eea637ebd723d792e20ab860d41ae4f44ca105045357d6a22a9c4e1d5631
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 04935fcfba225fe37b660ed62f080c1f0a84592d656b7e0f2f4bf535875baacd
[INFO] running `Command { std: "docker" "start" "-a" "04935fcfba225fe37b660ed62f080c1f0a84592d656b7e0f2f4bf535875baacd", kill_on_drop: false }`
[INFO] [stderr]    Compiling anyhow v1.0.94
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]     Checking adler2 v2.0.0
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling xml-rs v0.8.24
[INFO] [stderr]     Checking anstyle-parse v0.2.6
[INFO] [stderr]     Checking crc32fast v1.4.2
[INFO] [stderr]     Checking miniz_oxide v0.8.0
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]    Compiling libc v0.2.168
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.1
[INFO] [stderr]     Checking colorchoice v1.0.3
[INFO] [stderr]     Checking anstyle v1.0.10
[INFO] [stderr]     Checking anstyle-query v1.1.2
[INFO] [stderr]     Checking allocator-api2 v0.2.21
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]     Checking anstream v0.6.18
[INFO] [stderr]    Compiling quick-xml v0.37.1
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]     Checking env_filter v0.1.2
[INFO] [stderr]     Checking flate2 v1.0.35
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking hashbrown v0.15.2
[INFO] [stderr]     Checking ttf-parser v0.21.1
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking env_logger v0.11.5
[INFO] [stderr]     Checking png v0.17.15
[INFO] [stderr]     Checking wayland-scanner v0.0.0 (/opt/rustwide/workdir/wayland-scanner)
[INFO] [stderr]    Compiling bscreen v0.0.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking fontdue v0.9.3
[INFO] [stdout] warning: unused variable: `interface`
[INFO] [stdout]   --> examples/wayland-scanner.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     for interface in protocol.interfaces.iter().take(5) {
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interface`
[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]  --> examples/wayland-scanner.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let mut buf: Vec<u8> = Vec::new();
[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: multiple associated items are never used
[INFO] [stdout]    --> src/genvec.rs:199:12
[INFO] [stdout]     |
[INFO] [stdout] 198 | impl<T> GenVec<T> {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 199 |     pub fn with_capacity(capacity: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 257 |     fn get_entry_by_handle_mut(&mut self, handle: Handle<T>) -> &mut Entry<T> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 322 |     pub fn remove(&mut self, handle: Handle<T>) -> T {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 |     pub fn iter(&self) -> impl Iterator<Item = (Handle<T>, &T)> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 383 |     pub fn iter_mut(&mut self) -> impl Iterator<Item = (Handle<T>, &mut T)> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 393 |     pub fn iter_values_mut(&mut self) -> impl Iterator<Item = &mut T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 399 |     pub fn len(&self) -> u32 {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 404 |     pub fn handle_from_index(&self, index: u32) -> Handle<T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `min` and `max` are never used
[INFO] [stdout]    --> src/gfx.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 91  | impl Vec2 {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn min(self, rhs: Self) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn max(self, rhs: Self) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_logical` is never used
[INFO] [stdout]    --> src/gfx.rs:177:12
[INFO] [stdout]     |
[INFO] [stdout] 163 | impl Size {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub fn to_logical(&self, scale_factor: f64) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constants `BLACK` and `RED` are never used
[INFO] [stdout]    --> src/gfx.rs:201:15
[INFO] [stdout]     |
[INFO] [stdout] 199 | impl Rgba8 {
[INFO] [stdout]     | ---------- associated constants in this implementation
[INFO] [stdout] 200 |     pub const WHITE: Self = Self::new(u8::MAX, u8::MAX, u8::MAX, u8::MAX);
[INFO] [stdout] 201 |     pub const BLACK: Self = Self::new(u8::MIN, u8::MIN, u8::MIN, u8::MAX);
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 202 |     pub const RED: Self = Self::new(u8::MAX, u8::MIN, u8::MIN, u8::MAX);
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `surface_id` is never read
[INFO] [stdout]   --> src/input.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct KeyboardEvent {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 48 |     pub kind: KeyboardEventKind,
[INFO] [stdout] 49 |     pub surface_id: u64,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `KeyboardEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `surface_id` and `buttons` are never read
[INFO] [stdout]   --> src/input.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub struct PointerEvent {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 85 |     pub kind: PointerEventKind,
[INFO] [stdout] 86 |     pub surface_id: u64,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 87 |     pub position: Vec2,
[INFO] [stdout] 88 |     pub buttons: PointerButtons,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PointerEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Default` is never constructed
[INFO] [stdout]   --> src/input.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub enum CursorShape {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] 93 |     Default,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CursorShape` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove`, `link_child_before`, `insert_child_before`, `try_get`, and `try_get_mut` are never used
[INFO] [stdout]    --> src/ntree.rs:73:12
[INFO] [stdout]     |
[INFO] [stdout] 32  | impl<T> NTree<T> {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 73  |     pub fn remove(&mut self, handle: Handle<NTreeNode<T>>) -> T {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     fn link_child_before(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     pub fn insert_child_before(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn try_get(&self, handle: Handle<NTreeNode<T>>) -> Option<&NTreeNode<T>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn try_get_mut(&mut self, handle: Handle<NTreeNode<T>>) -> Option<&mut NTreeNode<T>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `w` and `h` are never read
[INFO] [stdout]   --> src/texturepacker.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct TexturePacker {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 25 |     w: u32,
[INFO] [stdout]    |     ^
[INFO] [stdout] 26 |     h: u32,
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TexturePacker` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/texturepacker.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 49 | impl TexturePacker {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] 50 |     pub fn new(texture_width: u32, texture_height: u32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `keyboard` is never read
[INFO] [stdout]   --> src/wayland_input.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Input {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     keyboard: NonNull<wayland::wl_keyboard>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `output` is never read
[INFO] [stdout]   --> src/wayland_overlay.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Overlay {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 14 |     conn: Rc<Connection>,
[INFO] [stdout] 15 |     output: NonNull<wayland::wl_output>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_capacity`, `iter`, `iter_mut`, `iter_values_mut`, `len`, and `handle_from_index` are never used
[INFO] [stdout]    --> src/genvec.rs:199:12
[INFO] [stdout]     |
[INFO] [stdout] 198 | impl<T> GenVec<T> {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 199 |     pub fn with_capacity(capacity: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 |     pub fn iter(&self) -> impl Iterator<Item = (Handle<T>, &T)> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 383 |     pub fn iter_mut(&mut self) -> impl Iterator<Item = (Handle<T>, &mut T)> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 393 |     pub fn iter_values_mut(&mut self) -> impl Iterator<Item = &mut T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 399 |     pub fn len(&self) -> u32 {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 404 |     pub fn handle_from_index(&self, index: u32) -> Handle<T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `min` and `max` are never used
[INFO] [stdout]    --> src/gfx.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 91  | impl Vec2 {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn min(self, rhs: Self) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn max(self, rhs: Self) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_logical` is never used
[INFO] [stdout]    --> src/gfx.rs:177:12
[INFO] [stdout]     |
[INFO] [stdout] 163 | impl Size {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub fn to_logical(&self, scale_factor: f64) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constants `BLACK` and `RED` are never used
[INFO] [stdout]    --> src/gfx.rs:201:15
[INFO] [stdout]     |
[INFO] [stdout] 199 | impl Rgba8 {
[INFO] [stdout]     | ---------- associated constants in this implementation
[INFO] [stdout] 200 |     pub const WHITE: Self = Self::new(u8::MAX, u8::MAX, u8::MAX, u8::MAX);
[INFO] [stdout] 201 |     pub const BLACK: Self = Self::new(u8::MIN, u8::MIN, u8::MIN, u8::MAX);
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 202 |     pub const RED: Self = Self::new(u8::MAX, u8::MIN, u8::MIN, u8::MAX);
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `surface_id` is never read
[INFO] [stdout]   --> src/input.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct KeyboardEvent {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 48 |     pub kind: KeyboardEventKind,
[INFO] [stdout] 49 |     pub surface_id: u64,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `KeyboardEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `surface_id` and `buttons` are never read
[INFO] [stdout]   --> src/input.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub struct PointerEvent {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 85 |     pub kind: PointerEventKind,
[INFO] [stdout] 86 |     pub surface_id: u64,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 87 |     pub position: Vec2,
[INFO] [stdout] 88 |     pub buttons: PointerButtons,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PointerEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Default` is never constructed
[INFO] [stdout]   --> src/input.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub enum CursorShape {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] 93 |     Default,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CursorShape` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove`, `try_get`, and `try_get_mut` are never used
[INFO] [stdout]    --> src/ntree.rs:73:12
[INFO] [stdout]     |
[INFO] [stdout] 32  | impl<T> NTree<T> {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 73  |     pub fn remove(&mut self, handle: Handle<NTreeNode<T>>) -> T {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn try_get(&self, handle: Handle<NTreeNode<T>>) -> Option<&NTreeNode<T>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn try_get_mut(&mut self, handle: Handle<NTreeNode<T>>) -> Option<&mut NTreeNode<T>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `w` and `h` are never read
[INFO] [stdout]   --> src/texturepacker.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct TexturePacker {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 25 |     w: u32,
[INFO] [stdout]    |     ^
[INFO] [stdout] 26 |     h: u32,
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TexturePacker` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/texturepacker.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 49 | impl TexturePacker {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] 50 |     pub fn new(texture_width: u32, texture_height: u32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `keyboard` is never read
[INFO] [stdout]   --> src/wayland_input.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Input {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     keyboard: NonNull<wayland::wl_keyboard>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `output` is never read
[INFO] [stdout]   --> src/wayland_overlay.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Overlay {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 14 |     conn: Rc<Connection>,
[INFO] [stdout] 15 |     output: NonNull<wayland::wl_output>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.72s
[INFO] running `Command { std: "docker" "inspect" "04935fcfba225fe37b660ed62f080c1f0a84592d656b7e0f2f4bf535875baacd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "04935fcfba225fe37b660ed62f080c1f0a84592d656b7e0f2f4bf535875baacd", kill_on_drop: false }`
[INFO] [stdout] 04935fcfba225fe37b660ed62f080c1f0a84592d656b7e0f2f4bf535875baacd
