[INFO] cloning repository https://github.com/neomoth/funfriend-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/neomoth/funfriend-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fneomoth%2Ffunfriend-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fneomoth%2Ffunfriend-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] eaae75bdcaaf89aed0844cc18c24bb8fa430a8cb [INFO] testing neomoth/funfriend-rust against 1.85.0 for beta-1.86-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fneomoth%2Ffunfriend-rust" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/neomoth/funfriend-rust on toolchain 1.85.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.85.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/neomoth/funfriend-rust [INFO] finished tweaking git repo https://github.com/neomoth/funfriend-rust [INFO] tweaked toml for git repo https://github.com/neomoth/funfriend-rust written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/neomoth/funfriend-rust 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" "+1.85.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded ini v1.3.0 [INFO] [stderr] Downloaded glfw v0.59.0 [INFO] [stderr] Downloaded configparser v1.0.0 [INFO] [stderr] Downloaded glfw-sys v5.0.0+3.3.9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b5033d3fc17504bd95ed64e1507b0449a05f84491f2b73840b77c902dbea8078 [INFO] running `Command { std: "docker" "start" "-a" "b5033d3fc17504bd95ed64e1507b0449a05f84491f2b73840b77c902dbea8078", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b5033d3fc17504bd95ed64e1507b0449a05f84491f2b73840b77c902dbea8078", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b5033d3fc17504bd95ed64e1507b0449a05f84491f2b73840b77c902dbea8078", kill_on_drop: false }` [INFO] [stdout] b5033d3fc17504bd95ed64e1507b0449a05f84491f2b73840b77c902dbea8078 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 31b95150726cc5e8295f3f5789e485f2d443f541aec3e518d88dbbcf826a7c0d [INFO] running `Command { std: "docker" "start" "-a" "31b95150726cc5e8295f3f5789e485f2d443f541aec3e518d88dbbcf826a7c0d", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.93 [INFO] [stderr] Compiling unicode-ident v1.0.14 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling once_cell v1.20.2 [INFO] [stderr] Compiling log v0.4.25 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling pkg-config v0.3.31 [INFO] [stderr] Compiling rustix v0.38.43 [INFO] [stderr] Compiling bitflags v2.8.0 [INFO] [stderr] Compiling cc v1.2.9 [INFO] [stderr] Compiling libc v0.2.169 [INFO] [stderr] Compiling libloading v0.8.6 [INFO] [stderr] Compiling linux-raw-sys v0.4.15 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling dlib v0.5.2 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling wayland-sys v0.31.5 [INFO] [stderr] Compiling scoped-tls v1.0.1 [INFO] [stderr] Compiling downcast-rs v1.2.1 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling quote v1.0.38 [INFO] [stderr] Compiling quick-xml v0.36.2 [INFO] [stderr] Compiling syn v2.0.96 [INFO] [stderr] Compiling bytemuck v1.21.0 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling wayland-client v0.31.7 [INFO] [stderr] Compiling wayland-backend v0.3.7 [INFO] [stderr] Compiling tracing-core v0.1.33 [INFO] [stderr] Compiling pin-project-lite v0.2.16 [INFO] [stderr] Compiling simd-adler32 v0.3.7 [INFO] [stderr] Compiling wayland-scanner v0.31.5 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling adler2 v2.0.0 [INFO] [stderr] Compiling khronos_api v3.1.0 [INFO] [stderr] Compiling anyhow v1.0.95 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling either v1.13.0 [INFO] [stderr] Compiling miniz_oxide v0.8.3 [INFO] [stderr] Compiling getrandom v0.2.15 [INFO] [stderr] Compiling built v0.7.5 [INFO] [stderr] Compiling aligned-vec v0.5.0 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling v_frame v0.3.8 [INFO] [stderr] Compiling rayon v1.10.0 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling rav1e v0.7.1 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling cmake v0.1.52 [INFO] [stderr] Compiling crc32fast v1.4.2 [INFO] [stderr] Compiling xml-rs v0.8.25 [INFO] [stderr] Compiling cursor-icon v1.1.0 [INFO] [stderr] Compiling xkeysym v0.2.1 [INFO] [stderr] Compiling arrayref v0.3.9 [INFO] [stderr] Compiling ttf-parser v0.25.1 [INFO] [stderr] Compiling xcursor v0.3.8 [INFO] [stderr] Compiling smithay-client-toolkit v0.19.2 [INFO] [stderr] Compiling strict-num v0.1.1 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Compiling tiny-skia-path v0.11.4 [INFO] [stderr] Compiling gl_generator v0.14.0 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling av1-grain v0.2.3 [INFO] [stderr] Compiling flate2 v1.0.35 [INFO] [stderr] Compiling maybe-rayon v0.1.1 [INFO] [stderr] Compiling glfw-sys v5.0.0+3.3.9 [INFO] [stderr] Compiling itertools v0.12.1 [INFO] [stderr] Compiling safe_arch v0.7.4 [INFO] [stderr] Compiling memmap2 v0.9.5 [INFO] [stderr] Compiling simd_helpers v0.1.0 [INFO] [stderr] Compiling x11-dl v2.21.0 [INFO] [stderr] Compiling matrixmultiply v0.3.9 [INFO] [stderr] Compiling quick-error v2.0.1 [INFO] [stderr] Compiling cfg_aliases v0.2.1 [INFO] [stderr] Compiling regex-syntax v0.6.29 [INFO] [stderr] Compiling owned_ttf_parser v0.25.0 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling profiling-procmacros v1.0.16 [INFO] [stderr] Compiling wayland-csd-frame v0.3.0 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling arg_enum_proc_macro v0.3.4 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling imgref v1.11.0 [INFO] [stderr] Compiling new_debug_unreachable v1.0.6 [INFO] [stderr] Compiling profiling v1.0.16 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling noop_proc_macro v0.3.0 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling serde v1.0.217 [INFO] [stderr] Compiling polling v3.7.4 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling wayland-protocols v0.32.5 [INFO] [stderr] Compiling wayland-cursor v0.31.7 [INFO] [stderr] Compiling ab_glyph_rasterizer v0.1.8 [INFO] [stderr] Compiling calloop v0.13.0 [INFO] [stderr] Compiling weezl v0.1.8 [INFO] [stderr] Compiling bitstream-io v2.6.0 [INFO] [stderr] Compiling ab_glyph v0.2.29 [INFO] [stderr] Compiling calloop-wayland-source v0.3.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.20 [INFO] [stderr] Compiling regex-automata v0.1.10 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling loop9 v0.1.5 [INFO] [stderr] Compiling serde_derive v1.0.217 [INFO] [stderr] Compiling winit v0.30.8 [INFO] [stderr] Compiling wide v0.7.32 [INFO] [stderr] Compiling gl v0.14.0 [INFO] [stderr] Compiling tiny-skia v0.11.4 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling avif-serialize v0.8.2 [INFO] [stderr] Compiling fdeflate v0.3.7 [INFO] [stderr] Compiling zune-inflate v0.2.54 [INFO] [stderr] Compiling approx v0.5.1 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling half v2.4.1 [INFO] [stderr] Compiling jpeg-decoder v0.3.1 [INFO] [stderr] Compiling overload v0.1.1 [INFO] [stderr] Compiling byteorder-lite v0.1.0 [INFO] [stderr] Compiling serde_json v1.0.137 [INFO] [stderr] Compiling zune-core v0.4.12 [INFO] [stderr] Compiling color_quant v1.1.0 [INFO] [stderr] Compiling raw-window-handle v0.6.2 [INFO] [stderr] Compiling bit_field v0.10.2 [INFO] [stderr] Compiling wayland-protocols-wlr v0.3.5 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling as-raw-xcb-connection v1.0.1 [INFO] [stderr] Compiling lebe v0.5.2 [INFO] [stderr] Compiling rgb v0.8.50 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling x11rb-protocol v0.13.1 [INFO] [stderr] Compiling sharded-slab v0.1.7 [INFO] [stderr] Compiling exr v1.73.0 [INFO] [stderr] Compiling wayland-protocols-plasma v0.3.5 [INFO] [stderr] Compiling tiff v0.9.1 [INFO] [stderr] Compiling ravif v0.11.11 [INFO] [stderr] Compiling gif v0.13.1 [INFO] [stderr] Compiling zune-jpeg v0.4.14 [INFO] [stderr] Compiling image-webp v0.2.1 [INFO] [stderr] Compiling sctk-adwaita v0.10.1 [INFO] [stderr] Compiling nu-ansi-term v0.46.0 [INFO] [stderr] Compiling simba v0.9.0 [INFO] [stderr] Compiling png v0.17.16 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling matchers v0.1.0 [INFO] [stderr] Compiling nalgebra-macros v0.2.2 [INFO] [stderr] Compiling xkbcommon-dl v0.4.2 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling qoi v0.4.1 [INFO] [stderr] Compiling thread_local v1.1.8 [INFO] [stderr] Compiling ryu v1.0.18 [INFO] [stderr] Compiling configparser v1.0.0 [INFO] [stderr] Compiling iana-time-zone v0.1.61 [INFO] [stderr] Compiling smol_str v0.2.2 [INFO] [stderr] Compiling itoa v1.0.14 [INFO] [stderr] Compiling dpi v0.1.1 [INFO] [stderr] Compiling percent-encoding v2.3.1 [INFO] [stderr] Compiling chrono v0.4.39 [INFO] [stderr] Compiling ini v1.3.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.19 [INFO] [stderr] Compiling image v0.25.5 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling glfw v0.59.0 [INFO] [stderr] Compiling nalgebra v0.33.2 [INFO] [stderr] Compiling ansi_term v0.12.1 [INFO] [stderr] Compiling x11rb v0.13.1 [INFO] [stderr] Compiling funfriend-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/graphics/dialog.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | (parent_window_pos + parent_window_size / 2.0 + self.parent_relative_pos.x [INFO] [stdout] | ^ [INFO] [stdout] 90 | - self.window_size / 2.0); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 89 ~ parent_window_pos + parent_window_size / 2.0 + self.parent_relative_pos.x [INFO] [stdout] 90 ~ - self.window_size / 2.0; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `buddy::Buddy` [INFO] [stdout] --> src/graphics/render/mod.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub use buddy::Buddy; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `monitor` [INFO] [stdout] --> src/buddy/context.rs:148:8 [INFO] [stdout] | [INFO] [stdout] 148 | let (monitor, x, y, w, h, _mx, _my, _mw, _mh) = [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_monitor` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `mw` is never read [INFO] [stdout] --> src/buddy/context.rs:167:11 [INFO] [stdout] | [INFO] [stdout] 167 | let mut mw: std::ffi::c_int = 0; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `mh` is never read [INFO] [stdout] --> src/buddy/context.rs:168:11 [INFO] [stdout] | [INFO] [stdout] 168 | let mut mh: std::ffi::c_int = 0; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/buddy/context.rs:175:7 [INFO] [stdout] | [INFO] [stdout] 175 | let mut monitors: *mut *mut GLFWmonitor; [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: unused variable: `dialog` [INFO] [stdout] --> src/buddy/context.rs:302:12 [INFO] [stdout] | [INFO] [stdout] 302 | ... let dialog = buddy.dialog(DialogKind::Moved); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_dialog` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dialog` [INFO] [stdout] --> src/buddy/context.rs:307:12 [INFO] [stdout] | [INFO] [stdout] 307 | ... let dialog = buddy.dialog(DialogKind::Touched); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_dialog` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `text` [INFO] [stdout] --> src/buddy/context.rs:377:24 [INFO] [stdout] | [INFO] [stdout] 377 | pub fn say(&mut self, text: String) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_text` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `width` [INFO] [stdout] --> src/buddy/renderer.rs:144:8 [INFO] [stdout] | [INFO] [stdout] 144 | let (width, height) = (frame.width, frame.height); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `height` [INFO] [stdout] --> src/buddy/renderer.rs:144:15 [INFO] [stdout] | [INFO] [stdout] 144 | let (width, height) = (frame.width, frame.height); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `is_value` is assigned to, but never used [INFO] [stdout] --> src/font_manager.rs:100:11 [INFO] [stdout] | [INFO] [stdout] 100 | let mut is_value = false; // To track when we're parsing values after '=' [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_is_value` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `is_value` is never read [INFO] [stdout] --> src/font_manager.rs:108:6 [INFO] [stdout] | [INFO] [stdout] 108 | is_value = true; // Now we will be capturing the value [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `text_width` [INFO] [stdout] --> src/font_manager.rs:198:8 [INFO] [stdout] | [INFO] [stdout] 198 | let (text_width, text_height, positions) = Self::position_text(&text, sheet); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_text_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `text_height` [INFO] [stdout] --> src/font_manager.rs:198:20 [INFO] [stdout] | [INFO] [stdout] 198 | let (text_width, text_height, positions) = Self::position_text(&text, sheet); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_text_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dt` [INFO] [stdout] --> src/graphics/dialog.rs:97:27 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn render(&mut self, dt: f64) { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_dt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `width` [INFO] [stdout] --> src/graphics/render/buddy.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | let (width, height) = (frame.width, frame.height); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `height` [INFO] [stdout] --> src/graphics/render/buddy.rs:136:15 [INFO] [stdout] | [INFO] [stdout] 136 | let (width, height) = (frame.width, frame.height); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `position` [INFO] [stdout] --> src/window.rs:10:25 [INFO] [stdout] | [INFO] [stdout] 10 | fn on_click(&mut self, position: Vec2) {} [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `position` [INFO] [stdout] --> src/window.rs:11:27 [INFO] [stdout] | [INFO] [stdout] 11 | fn on_release(&mut self, position: Vec2) {} [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `buddy` and `config` are never read [INFO] [stdout] --> src/main.rs:31:2 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct App { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] 30 | contexts: Vec>>, [INFO] [stdout] 31 | buddy: Rc>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 32 | config: config::Config, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `play_talk_sound` and `font` are never used [INFO] [stdout] --> src/buddy/mod.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub trait BuddyDefinition { [INFO] [stdout] | --------------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 23 | fn play_talk_sound(&self) {} [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 24 | fn font(&self) -> &str; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `owned_contexts` is never read [INFO] [stdout] --> src/buddy/context.rs:26:6 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct Context { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 25 | pub buddy: Rc>, [INFO] [stdout] 26 | pub owned_contexts: Vec>>, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `random_pos` is never used [INFO] [stdout] --> src/buddy/context.rs:126:5 [INFO] [stdout] | [INFO] [stdout] 49 | impl Context { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 126 | fn random_pos(&self) -> Vec2 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Stay` is never constructed [INFO] [stdout] --> src/buddy/context.rs:504:2 [INFO] [stdout] | [INFO] [stdout] 501 | pub enum Behavior { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 504 | Stay, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Behavior` 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: function `in_sine` is never used [INFO] [stdout] --> src/ease.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn in_sine(x: f64) -> f64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `out_sine` is never used [INFO] [stdout] --> src/ease.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn out_sine(x: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `line_height`, `base`, `scale_w`, and `scale_h` are never read [INFO] [stdout] --> src/font_manager.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct BMCommon { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 5 | pub line_height: i32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 6 | pub base: i32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 7 | pub scale_w: i32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 8 | pub scale_h: i32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BMCommon` 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: multiple fields are never read [INFO] [stdout] --> src/font_manager.rs:13:6 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct BMChar { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 13 | pub id: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 14 | pub x: i32, [INFO] [stdout] | ^ [INFO] [stdout] 15 | pub y: i32, [INFO] [stdout] | ^ [INFO] [stdout] 16 | pub width: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 17 | pub height: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 18 | pub x_offset: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 19 | pub y_offset: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 20 | pub x_advance: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 21 | pub letter: char, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BMChar` 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: fields `first`, `second`, and `amount` are never read [INFO] [stdout] --> src/font_manager.rs:26:6 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct BMKerning { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 26 | pub first: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 27 | pub second: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 28 | pub amount: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BMKerning` 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: fields `common`, `chars`, and `kernings` are never read [INFO] [stdout] --> src/font_manager.rs:33:6 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct BMSheet { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 33 | pub common: BMCommon, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 34 | pub chars: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 35 | pub kernings: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BMSheet` 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: struct `FontMan` is never constructed [INFO] [stdout] --> src/font_manager.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct FontMan; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_bm`, `parse_args`, `text_width`, `position_text`, `get_letter_crop`, and `get_text_mesh` are never used [INFO] [stdout] --> src/font_manager.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 40 | impl FontMan { [INFO] [stdout] | ------------ associated functions in this implementation [INFO] [stdout] 41 | pub fn parse_bm(data: &str) -> BMSheet { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | fn parse_args(data: &String) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn text_width(text: &str, sheet: &BMSheet) -> i32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn position_text(text: &str, sheet: &BMSheet) -> (i32, i32, Vec<(i32, i32, BMChar)>) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 178 | pub fn get_letter_crop(char: &BMChar, sheet: &BMSheet) -> (f32, f32, f32, f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub fn get_text_mesh( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `buffer_data_array` is never used [INFO] [stdout] --> src/glfn.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn buffer_data_array(target: GLenum, data: &[u8], usage_hint: GLenum) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_shader_file` is never used [INFO] [stdout] --> src/glfn.rs:57:4 [INFO] [stdout] | [INFO] [stdout] 57 | fn load_shader_file(vertex_filename: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Drawable` is never used [INFO] [stdout] --> src/graphics/mod.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub trait Drawable { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `DEFAULT_DURATION`, `PADDING`, `new`, and `bump` are never used [INFO] [stdout] --> src/graphics/dialog.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Dialog { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 21 | pub const DEFAULT_DURATION: f64 = 6.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 22 | const PADDING: f64 = 10.0; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 23 | [INFO] [stdout] 24 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn bump(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Buddy` is never constructed [INFO] [stdout] --> src/graphics/render/buddy.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct Buddy { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `funfriend_size`, `init_buffers`, `init_shaders`, `render`, and `clean_up` are never used [INFO] [stdout] --> src/graphics/render/buddy.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 26 | impl Buddy { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 27 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn funfriend_size(&self) -> (i32, i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | fn init_buffers() -> (u32, u32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | fn init_shaders() -> (GLuint, GLuint) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 126 | pub fn render(&mut self, dt: f64, window_width: i32, window_height: i32, window: &Window) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn clean_up(&self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `font`, `sheet`, `width`, and `height` are never read [INFO] [stdout] --> src/graphics/render/text.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Text { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 7 | pub text: String, [INFO] [stdout] 8 | pub font: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 9 | pub sheet: BMSheet, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 10 | pub width: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 11 | pub height: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new`, `init_textures`, and `init_buffers` are never used [INFO] [stdout] --> src/graphics/render/text.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 19 | impl Text { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 20 | pub fn new(text: String, font: String, sheet: BMSheet, width: i32, height: i32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | fn init_textures(font: &str) -> GLuint { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn init_buffers(text: &str, sheet: &BMSheet, width: i32, height: i32) -> (GLuint, GLuint) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/buddy/context.rs:110:3 [INFO] [stdout] | [INFO] [stdout] 110 | drop(config); [INFO] [stdout] | ^^^^^------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&Config` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 110 - drop(config); [INFO] [stdout] 110 + let _ = config; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 52s [INFO] running `Command { std: "docker" "inspect" "31b95150726cc5e8295f3f5789e485f2d443f541aec3e518d88dbbcf826a7c0d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "31b95150726cc5e8295f3f5789e485f2d443f541aec3e518d88dbbcf826a7c0d", kill_on_drop: false }` [INFO] [stdout] 31b95150726cc5e8295f3f5789e485f2d443f541aec3e518d88dbbcf826a7c0d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b272c0f80e2b9efd12dc34d6cf4f9156714582d3f7a3adc33204a01606281ad6 [INFO] running `Command { std: "docker" "start" "-a" "b272c0f80e2b9efd12dc34d6cf4f9156714582d3f7a3adc33204a01606281ad6", kill_on_drop: false }` [INFO] [stderr] Compiling funfriend-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/graphics/dialog.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | (parent_window_pos + parent_window_size / 2.0 + self.parent_relative_pos.x [INFO] [stdout] | ^ [INFO] [stdout] 90 | - self.window_size / 2.0); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 89 ~ parent_window_pos + parent_window_size / 2.0 + self.parent_relative_pos.x [INFO] [stdout] 90 ~ - self.window_size / 2.0; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `buddy::Buddy` [INFO] [stdout] --> src/graphics/render/mod.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub use buddy::Buddy; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `monitor` [INFO] [stdout] --> src/buddy/context.rs:148:8 [INFO] [stdout] | [INFO] [stdout] 148 | let (monitor, x, y, w, h, _mx, _my, _mw, _mh) = [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_monitor` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `mw` is never read [INFO] [stdout] --> src/buddy/context.rs:167:11 [INFO] [stdout] | [INFO] [stdout] 167 | let mut mw: std::ffi::c_int = 0; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `mh` is never read [INFO] [stdout] --> src/buddy/context.rs:168:11 [INFO] [stdout] | [INFO] [stdout] 168 | let mut mh: std::ffi::c_int = 0; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/buddy/context.rs:175:7 [INFO] [stdout] | [INFO] [stdout] 175 | let mut monitors: *mut *mut GLFWmonitor; [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: unused variable: `dialog` [INFO] [stdout] --> src/buddy/context.rs:302:12 [INFO] [stdout] | [INFO] [stdout] 302 | ... let dialog = buddy.dialog(DialogKind::Moved); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_dialog` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dialog` [INFO] [stdout] --> src/buddy/context.rs:307:12 [INFO] [stdout] | [INFO] [stdout] 307 | ... let dialog = buddy.dialog(DialogKind::Touched); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_dialog` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `text` [INFO] [stdout] --> src/buddy/context.rs:377:24 [INFO] [stdout] | [INFO] [stdout] 377 | pub fn say(&mut self, text: String) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_text` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `width` [INFO] [stdout] --> src/buddy/renderer.rs:144:8 [INFO] [stdout] | [INFO] [stdout] 144 | let (width, height) = (frame.width, frame.height); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `height` [INFO] [stdout] --> src/buddy/renderer.rs:144:15 [INFO] [stdout] | [INFO] [stdout] 144 | let (width, height) = (frame.width, frame.height); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `is_value` is assigned to, but never used [INFO] [stdout] --> src/font_manager.rs:100:11 [INFO] [stdout] | [INFO] [stdout] 100 | let mut is_value = false; // To track when we're parsing values after '=' [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_is_value` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `is_value` is never read [INFO] [stdout] --> src/font_manager.rs:108:6 [INFO] [stdout] | [INFO] [stdout] 108 | is_value = true; // Now we will be capturing the value [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `text_width` [INFO] [stdout] --> src/font_manager.rs:198:8 [INFO] [stdout] | [INFO] [stdout] 198 | let (text_width, text_height, positions) = Self::position_text(&text, sheet); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_text_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `text_height` [INFO] [stdout] --> src/font_manager.rs:198:20 [INFO] [stdout] | [INFO] [stdout] 198 | let (text_width, text_height, positions) = Self::position_text(&text, sheet); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_text_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dt` [INFO] [stdout] --> src/graphics/dialog.rs:97:27 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn render(&mut self, dt: f64) { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_dt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `width` [INFO] [stdout] --> src/graphics/render/buddy.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | let (width, height) = (frame.width, frame.height); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `height` [INFO] [stdout] --> src/graphics/render/buddy.rs:136:15 [INFO] [stdout] | [INFO] [stdout] 136 | let (width, height) = (frame.width, frame.height); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `position` [INFO] [stdout] --> src/window.rs:10:25 [INFO] [stdout] | [INFO] [stdout] 10 | fn on_click(&mut self, position: Vec2) {} [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `position` [INFO] [stdout] --> src/window.rs:11:27 [INFO] [stdout] | [INFO] [stdout] 11 | fn on_release(&mut self, position: Vec2) {} [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `buddy` and `config` are never read [INFO] [stdout] --> src/main.rs:31:2 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct App { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] 30 | contexts: Vec>>, [INFO] [stdout] 31 | buddy: Rc>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 32 | config: config::Config, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `play_talk_sound` and `font` are never used [INFO] [stdout] --> src/buddy/mod.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub trait BuddyDefinition { [INFO] [stdout] | --------------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 23 | fn play_talk_sound(&self) {} [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 24 | fn font(&self) -> &str; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `owned_contexts` is never read [INFO] [stdout] --> src/buddy/context.rs:26:6 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct Context { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 25 | pub buddy: Rc>, [INFO] [stdout] 26 | pub owned_contexts: Vec>>, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `random_pos` is never used [INFO] [stdout] --> src/buddy/context.rs:126:5 [INFO] [stdout] | [INFO] [stdout] 49 | impl Context { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 126 | fn random_pos(&self) -> Vec2 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Stay` is never constructed [INFO] [stdout] --> src/buddy/context.rs:504:2 [INFO] [stdout] | [INFO] [stdout] 501 | pub enum Behavior { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 504 | Stay, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Behavior` 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: function `in_sine` is never used [INFO] [stdout] --> src/ease.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn in_sine(x: f64) -> f64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `out_sine` is never used [INFO] [stdout] --> src/ease.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn out_sine(x: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `line_height`, `base`, `scale_w`, and `scale_h` are never read [INFO] [stdout] --> src/font_manager.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct BMCommon { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 5 | pub line_height: i32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 6 | pub base: i32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 7 | pub scale_w: i32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 8 | pub scale_h: i32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BMCommon` 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: multiple fields are never read [INFO] [stdout] --> src/font_manager.rs:13:6 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct BMChar { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 13 | pub id: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 14 | pub x: i32, [INFO] [stdout] | ^ [INFO] [stdout] 15 | pub y: i32, [INFO] [stdout] | ^ [INFO] [stdout] 16 | pub width: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 17 | pub height: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 18 | pub x_offset: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 19 | pub y_offset: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 20 | pub x_advance: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 21 | pub letter: char, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BMChar` 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: fields `first`, `second`, and `amount` are never read [INFO] [stdout] --> src/font_manager.rs:26:6 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct BMKerning { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 26 | pub first: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 27 | pub second: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 28 | pub amount: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BMKerning` 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: fields `common`, `chars`, and `kernings` are never read [INFO] [stdout] --> src/font_manager.rs:33:6 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct BMSheet { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 33 | pub common: BMCommon, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 34 | pub chars: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 35 | pub kernings: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BMSheet` 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: struct `FontMan` is never constructed [INFO] [stdout] --> src/font_manager.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct FontMan; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse_bm`, `parse_args`, `text_width`, `position_text`, `get_letter_crop`, and `get_text_mesh` are never used [INFO] [stdout] --> src/font_manager.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 40 | impl FontMan { [INFO] [stdout] | ------------ associated functions in this implementation [INFO] [stdout] 41 | pub fn parse_bm(data: &str) -> BMSheet { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | fn parse_args(data: &String) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn text_width(text: &str, sheet: &BMSheet) -> i32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn position_text(text: &str, sheet: &BMSheet) -> (i32, i32, Vec<(i32, i32, BMChar)>) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 178 | pub fn get_letter_crop(char: &BMChar, sheet: &BMSheet) -> (f32, f32, f32, f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub fn get_text_mesh( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `buffer_data_array` is never used [INFO] [stdout] --> src/glfn.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn buffer_data_array(target: GLenum, data: &[u8], usage_hint: GLenum) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_shader_file` is never used [INFO] [stdout] --> src/glfn.rs:57:4 [INFO] [stdout] | [INFO] [stdout] 57 | fn load_shader_file(vertex_filename: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Drawable` is never used [INFO] [stdout] --> src/graphics/mod.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub trait Drawable { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `DEFAULT_DURATION`, `PADDING`, `new`, and `bump` are never used [INFO] [stdout] --> src/graphics/dialog.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Dialog { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 21 | pub const DEFAULT_DURATION: f64 = 6.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 22 | const PADDING: f64 = 10.0; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 23 | [INFO] [stdout] 24 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn bump(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Buddy` is never constructed [INFO] [stdout] --> src/graphics/render/buddy.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct Buddy { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `funfriend_size`, `init_buffers`, `init_shaders`, `render`, and `clean_up` are never used [INFO] [stdout] --> src/graphics/render/buddy.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 26 | impl Buddy { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 27 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn funfriend_size(&self) -> (i32, i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | fn init_buffers() -> (u32, u32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | fn init_shaders() -> (GLuint, GLuint) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 126 | pub fn render(&mut self, dt: f64, window_width: i32, window_height: i32, window: &Window) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn clean_up(&self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `font`, `sheet`, `width`, and `height` are never read [INFO] [stdout] --> src/graphics/render/text.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Text { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 7 | pub text: String, [INFO] [stdout] 8 | pub font: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 9 | pub sheet: BMSheet, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 10 | pub width: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 11 | pub height: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new`, `init_textures`, and `init_buffers` are never used [INFO] [stdout] --> src/graphics/render/text.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 19 | impl Text { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 20 | pub fn new(text: String, font: String, sheet: BMSheet, width: i32, height: i32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | fn init_textures(font: &str) -> GLuint { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn init_buffers(text: &str, sheet: &BMSheet, width: i32, height: i32) -> (GLuint, GLuint) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/buddy/context.rs:110:3 [INFO] [stdout] | [INFO] [stdout] 110 | drop(config); [INFO] [stdout] | ^^^^^------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&Config` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 110 - drop(config); [INFO] [stdout] 110 + let _ = config; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.70s [INFO] running `Command { std: "docker" "inspect" "b272c0f80e2b9efd12dc34d6cf4f9156714582d3f7a3adc33204a01606281ad6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b272c0f80e2b9efd12dc34d6cf4f9156714582d3f7a3adc33204a01606281ad6", kill_on_drop: false }` [INFO] [stdout] b272c0f80e2b9efd12dc34d6cf4f9156714582d3f7a3adc33204a01606281ad6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 1d769ad95a2f7b4c77b4e0fd90d180ede5dd9cb3381b9b5340b6997f67303f04 [INFO] running `Command { std: "docker" "start" "-a" "1d769ad95a2f7b4c77b4e0fd90d180ede5dd9cb3381b9b5340b6997f67303f04", kill_on_drop: false }` [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/graphics/dialog.rs:89:5 [INFO] [stderr] | [INFO] [stderr] 89 | (parent_window_pos + parent_window_size / 2.0 + self.parent_relative_pos.x [INFO] [stderr] | ^ [INFO] [stderr] 90 | - self.window_size / 2.0); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 89 ~ parent_window_pos + parent_window_size / 2.0 + self.parent_relative_pos.x [INFO] [stderr] 90 ~ - self.window_size / 2.0; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `buddy::Buddy` [INFO] [stderr] --> src/graphics/render/mod.rs:4:9 [INFO] [stderr] | [INFO] [stderr] 4 | pub use buddy::Buddy; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `monitor` [INFO] [stderr] --> src/buddy/context.rs:148:8 [INFO] [stderr] | [INFO] [stderr] 148 | let (monitor, x, y, w, h, _mx, _my, _mw, _mh) = [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_monitor` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `mw` is never read [INFO] [stderr] --> src/buddy/context.rs:167:11 [INFO] [stderr] | [INFO] [stderr] 167 | let mut mw: std::ffi::c_int = 0; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `mh` is never read [INFO] [stderr] --> src/buddy/context.rs:168:11 [INFO] [stderr] | [INFO] [stderr] 168 | let mut mh: std::ffi::c_int = 0; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/buddy/context.rs:175:7 [INFO] [stderr] | [INFO] [stderr] 175 | let mut monitors: *mut *mut GLFWmonitor; [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `dialog` [INFO] [stderr] --> src/buddy/context.rs:302:12 [INFO] [stderr] | [INFO] [stderr] 302 | ... let dialog = buddy.dialog(DialogKind::Moved); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_dialog` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `dialog` [INFO] [stderr] --> src/buddy/context.rs:307:12 [INFO] [stderr] | [INFO] [stderr] 307 | ... let dialog = buddy.dialog(DialogKind::Touched); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_dialog` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `text` [INFO] [stderr] --> src/buddy/context.rs:377:24 [INFO] [stderr] | [INFO] [stderr] 377 | pub fn say(&mut self, text: String) { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_text` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `width` [INFO] [stderr] --> src/buddy/renderer.rs:144:8 [INFO] [stderr] | [INFO] [stderr] 144 | let (width, height) = (frame.width, frame.height); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_width` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `height` [INFO] [stderr] --> src/buddy/renderer.rs:144:15 [INFO] [stderr] | [INFO] [stderr] 144 | let (width, height) = (frame.width, frame.height); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height` [INFO] [stderr] [INFO] [stderr] warning: variable `is_value` is assigned to, but never used [INFO] [stderr] --> src/font_manager.rs:100:11 [INFO] [stderr] | [INFO] [stderr] 100 | let mut is_value = false; // To track when we're parsing values after '=' [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_is_value` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `is_value` is never read [INFO] [stderr] --> src/font_manager.rs:108:6 [INFO] [stderr] | [INFO] [stderr] 108 | is_value = true; // Now we will be capturing the value [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `text_width` [INFO] [stderr] --> src/font_manager.rs:198:8 [INFO] [stderr] | [INFO] [stderr] 198 | let (text_width, text_height, positions) = Self::position_text(&text, sheet); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_text_width` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `text_height` [INFO] [stderr] --> src/font_manager.rs:198:20 [INFO] [stderr] | [INFO] [stderr] 198 | let (text_width, text_height, positions) = Self::position_text(&text, sheet); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_text_height` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `dt` [INFO] [stderr] --> src/graphics/dialog.rs:97:27 [INFO] [stderr] | [INFO] [stderr] 97 | pub fn render(&mut self, dt: f64) { [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_dt` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `width` [INFO] [stderr] --> src/graphics/render/buddy.rs:136:8 [INFO] [stderr] | [INFO] [stderr] 136 | let (width, height) = (frame.width, frame.height); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_width` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `height` [INFO] [stderr] --> src/graphics/render/buddy.rs:136:15 [INFO] [stderr] | [INFO] [stderr] 136 | let (width, height) = (frame.width, frame.height); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `position` [INFO] [stderr] --> src/window.rs:10:25 [INFO] [stderr] | [INFO] [stderr] 10 | fn on_click(&mut self, position: Vec2) {} [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `position` [INFO] [stderr] --> src/window.rs:11:27 [INFO] [stderr] | [INFO] [stderr] 11 | fn on_release(&mut self, position: Vec2) {} [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position` [INFO] [stderr] [INFO] [stderr] warning: fields `buddy` and `config` are never read [INFO] [stderr] --> src/main.rs:31:2 [INFO] [stderr] | [INFO] [stderr] 29 | pub struct App { [INFO] [stderr] | --- fields in this struct [INFO] [stderr] 30 | contexts: Vec>>, [INFO] [stderr] 31 | buddy: Rc>, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 32 | config: config::Config, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: methods `play_talk_sound` and `font` are never used [INFO] [stderr] --> src/buddy/mod.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 16 | pub trait BuddyDefinition { [INFO] [stderr] | --------------- methods in this trait [INFO] [stderr] ... [INFO] [stderr] 23 | fn play_talk_sound(&self) {} [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 24 | fn font(&self) -> &str; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `owned_contexts` is never read [INFO] [stderr] --> src/buddy/context.rs:26:6 [INFO] [stderr] | [INFO] [stderr] 24 | pub struct Context { [INFO] [stderr] | ------- field in this struct [INFO] [stderr] 25 | pub buddy: Rc>, [INFO] [stderr] 26 | pub owned_contexts: Vec>>, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `random_pos` is never used [INFO] [stderr] --> src/buddy/context.rs:126:5 [INFO] [stderr] | [INFO] [stderr] 49 | impl Context { [INFO] [stderr] | ------------ method in this implementation [INFO] [stderr] ... [INFO] [stderr] 126 | fn random_pos(&self) -> Vec2 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `Stay` is never constructed [INFO] [stderr] --> src/buddy/context.rs:504:2 [INFO] [stderr] | [INFO] [stderr] 501 | pub enum Behavior { [INFO] [stderr] | -------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 504 | Stay, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Behavior` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `in_sine` is never used [INFO] [stderr] --> src/ease.rs:3:8 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn in_sine(x: f64) -> f64 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `out_sine` is never used [INFO] [stderr] --> src/ease.rs:7:8 [INFO] [stderr] | [INFO] [stderr] 7 | pub fn out_sine(x: f64) -> f64 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `line_height`, `base`, `scale_w`, and `scale_h` are never read [INFO] [stderr] --> src/font_manager.rs:5:6 [INFO] [stderr] | [INFO] [stderr] 4 | pub struct BMCommon { [INFO] [stderr] | -------- fields in this struct [INFO] [stderr] 5 | pub line_height: i32, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 6 | pub base: i32, [INFO] [stderr] | ^^^^ [INFO] [stderr] 7 | pub scale_w: i32, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 8 | pub scale_h: i32, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `BMCommon` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/font_manager.rs:13:6 [INFO] [stderr] | [INFO] [stderr] 12 | pub struct BMChar { [INFO] [stderr] | ------ fields in this struct [INFO] [stderr] 13 | pub id: i32, [INFO] [stderr] | ^^ [INFO] [stderr] 14 | pub x: i32, [INFO] [stderr] | ^ [INFO] [stderr] 15 | pub y: i32, [INFO] [stderr] | ^ [INFO] [stderr] 16 | pub width: i32, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 17 | pub height: i32, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 18 | pub x_offset: i32, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 19 | pub y_offset: i32, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 20 | pub x_advance: i32, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 21 | pub letter: char, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `BMChar` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `first`, `second`, and `amount` are never read [INFO] [stderr] --> src/font_manager.rs:26:6 [INFO] [stderr] | [INFO] [stderr] 25 | pub struct BMKerning { [INFO] [stderr] | --------- fields in this struct [INFO] [stderr] 26 | pub first: i32, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 27 | pub second: i32, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 28 | pub amount: i32, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `BMKerning` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `common`, `chars`, and `kernings` are never read [INFO] [stderr] --> src/font_manager.rs:33:6 [INFO] [stderr] | [INFO] [stderr] 32 | pub struct BMSheet { [INFO] [stderr] | ------- fields in this struct [INFO] [stderr] 33 | pub common: BMCommon, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 34 | pub chars: Vec, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 35 | pub kernings: Vec, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `BMSheet` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: struct `FontMan` is never constructed [INFO] [stderr] --> src/font_manager.rs:38:12 [INFO] [stderr] | [INFO] [stderr] 38 | pub struct FontMan; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `parse_bm`, `parse_args`, `text_width`, `position_text`, `get_letter_crop`, and `get_text_mesh` are never used [INFO] [stderr] --> src/font_manager.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 40 | impl FontMan { [INFO] [stderr] | ------------ associated functions in this implementation [INFO] [stderr] 41 | pub fn parse_bm(data: &str) -> BMSheet { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 91 | fn parse_args(data: &String) -> HashMap { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 155 | pub fn text_width(text: &str, sheet: &BMSheet) -> i32 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 162 | pub fn position_text(text: &str, sheet: &BMSheet) -> (i32, i32, Vec<(i32, i32, BMChar)>) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 178 | pub fn get_letter_crop(char: &BMChar, sheet: &BMSheet) -> (f32, f32, f32, f32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 187 | pub fn get_text_mesh( [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `buffer_data_array` is never used [INFO] [stderr] --> src/glfn.rs:7:8 [INFO] [stderr] | [INFO] [stderr] 7 | pub fn buffer_data_array(target: GLenum, data: &[u8], usage_hint: GLenum) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `load_shader_file` is never used [INFO] [stderr] --> src/glfn.rs:57:4 [INFO] [stderr] | [INFO] [stderr] 57 | fn load_shader_file(vertex_filename: &str) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `Drawable` is never used [INFO] [stderr] --> src/graphics/mod.rs:4:11 [INFO] [stderr] | [INFO] [stderr] 4 | pub trait Drawable { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `DEFAULT_DURATION`, `PADDING`, `new`, and `bump` are never used [INFO] [stderr] --> src/graphics/dialog.rs:21:12 [INFO] [stderr] | [INFO] [stderr] 20 | impl Dialog { [INFO] [stderr] | ----------- associated items in this implementation [INFO] [stderr] 21 | pub const DEFAULT_DURATION: f64 = 6.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 22 | const PADDING: f64 = 10.0; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 23 | [INFO] [stderr] 24 | pub fn new( [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 107 | pub fn bump(&mut self) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Buddy` is never constructed [INFO] [stderr] --> src/graphics/render/buddy.rs:16:12 [INFO] [stderr] | [INFO] [stderr] 16 | pub struct Buddy { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `funfriend_size`, `init_buffers`, `init_shaders`, `render`, and `clean_up` are never used [INFO] [stderr] --> src/graphics/render/buddy.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 26 | impl Buddy { [INFO] [stderr] | ---------- associated items in this implementation [INFO] [stderr] 27 | pub fn new( [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 52 | pub fn funfriend_size(&self) -> (i32, i32) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 56 | fn init_buffers() -> (u32, u32) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 115 | fn init_shaders() -> (GLuint, GLuint) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 126 | pub fn render(&mut self, dt: f64, window_width: i32, window_height: i32, window: &Window) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 194 | pub fn clean_up(&self) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `font`, `sheet`, `width`, and `height` are never read [INFO] [stderr] --> src/graphics/render/text.rs:8:6 [INFO] [stderr] | [INFO] [stderr] 6 | pub struct Text { [INFO] [stderr] | ---- fields in this struct [INFO] [stderr] 7 | pub text: String, [INFO] [stderr] 8 | pub font: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 9 | pub sheet: BMSheet, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 10 | pub width: i32, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 11 | pub height: i32, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `new`, `init_textures`, and `init_buffers` are never used [INFO] [stderr] --> src/graphics/render/text.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 19 | impl Text { [INFO] [stderr] | --------- associated functions in this implementation [INFO] [stderr] 20 | pub fn new(text: String, font: String, sheet: BMSheet, width: i32, height: i32) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 67 | fn init_textures(font: &str) -> GLuint { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 80 | fn init_buffers(text: &str, sheet: &BMSheet, width: i32, height: i32) -> (GLuint, GLuint) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stderr] --> src/buddy/context.rs:110:3 [INFO] [stderr] | [INFO] [stderr] 110 | drop(config); [INFO] [stderr] | ^^^^^------^ [INFO] [stderr] | | [INFO] [stderr] | argument has type `&Config` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dropping_references)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the expression or result [INFO] [stderr] | [INFO] [stderr] 110 - drop(config); [INFO] [stderr] 110 + let _ = config; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `funfriend-rust` (bin "funfriend-rust" test) generated 42 warnings (run `cargo fix --bin "funfriend-rust" --tests` to apply 3 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.24s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/funfriend_rust-c970a434d6431a1e) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "1d769ad95a2f7b4c77b4e0fd90d180ede5dd9cb3381b9b5340b6997f67303f04", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1d769ad95a2f7b4c77b4e0fd90d180ede5dd9cb3381b9b5340b6997f67303f04", kill_on_drop: false }` [INFO] [stdout] 1d769ad95a2f7b4c77b4e0fd90d180ede5dd9cb3381b9b5340b6997f67303f04