[INFO] cloning repository https://github.com/ericrobolson/realtime-cpu-raytracer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ericrobolson/realtime-cpu-raytracer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fericrobolson%2Frealtime-cpu-raytracer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fericrobolson%2Frealtime-cpu-raytracer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3d759f2b8a00bf876ab24d2375716c63f5ed0134
[INFO] checking ericrobolson/realtime-cpu-raytracer against try#b1f2594eac607c1f051534800237eeedb5590a49 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fericrobolson%2Frealtime-cpu-raytracer" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ericrobolson/realtime-cpu-raytracer
[INFO] finished tweaking git repo https://github.com/ericrobolson/realtime-cpu-raytracer
[INFO] tweaked toml for git repo https://github.com/ericrobolson/realtime-cpu-raytracer written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ericrobolson/realtime-cpu-raytracer on toolchain b1f2594eac607c1f051534800237eeedb5590a49
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ericrobolson/realtime-cpu-raytracer 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" "+b1f2594eac607c1f051534800237eeedb5590a49" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a9b3e4bd9e8c89424218ffe09ce44aee91eae8e01a78062377913165628c3ead
[INFO] running `Command { std: "docker" "start" "-a" "a9b3e4bd9e8c89424218ffe09ce44aee91eae8e01a78062377913165628c3ead", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a9b3e4bd9e8c89424218ffe09ce44aee91eae8e01a78062377913165628c3ead", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a9b3e4bd9e8c89424218ffe09ce44aee91eae8e01a78062377913165628c3ead", kill_on_drop: false }`
[INFO] [stdout] a9b3e4bd9e8c89424218ffe09ce44aee91eae8e01a78062377913165628c3ead
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d300f3d1134584633819868a83c9cea0f1019a36552dbf3e385a73c2b3f1fd12
[INFO] running `Command { std: "docker" "start" "-a" "d300f3d1134584633819868a83c9cea0f1019a36552dbf3e385a73c2b3f1fd12", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.89
[INFO] [stderr]    Compiling xml-rs v0.8.3
[INFO] [stderr]    Compiling rayon-core v1.9.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.24
[INFO] [stderr]    Compiling pkg-config v0.3.19
[INFO] [stderr]    Compiling unicode-xid v0.2.1
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.3
[INFO] [stderr]    Compiling memoffset v0.6.1
[INFO] [stderr]    Compiling rayon v1.5.0
[INFO] [stderr]     Checking libloading v0.7.0
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling miniz_oxide v0.4.4
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]     Checking adler32 v1.2.0
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]     Checking cfg-if v0.1.10
[INFO] [stderr]    Compiling nom v6.1.2
[INFO] [stderr]    Compiling num-iter v0.1.42
[INFO] [stderr]     Checking dlib v0.5.0
[INFO] [stderr]    Compiling num-rational v0.3.2
[INFO] [stderr]     Checking scoped-tls v1.0.0
[INFO] [stderr]     Checking downcast-rs v1.2.0
[INFO] [stderr]     Checking ttf-parser v0.6.2
[INFO] [stderr]     Checking weezl v0.1.4
[INFO] [stderr]     Checking deflate v0.8.6
[INFO] [stderr]     Checking miniz_oxide v0.3.7
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.4
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling nix v0.18.0
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]    Compiling scopeguard v1.1.0
[INFO] [stderr]     Checking bytemuck v1.5.1
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]    Compiling wayland-sys v0.28.5
[INFO] [stderr]     Checking gif v0.11.1
[INFO] [stderr]    Compiling x11-dl v2.18.5
[INFO] [stderr]     Checking walkdir v2.3.1
[INFO] [stderr]     Checking crossbeam-epoch v0.9.3
[INFO] [stderr]     Checking crossbeam-channel v0.5.0
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]     Checking png v0.16.8
[INFO] [stderr]     Checking libloading v0.6.7
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]     Checking crossbeam-deque v0.8.0
[INFO] [stderr]     Checking xdg v2.2.0
[INFO] [stderr]     Checking owned_ttf_parser v0.6.0
[INFO] [stderr]    Compiling getrandom v0.2.2
[INFO] [stderr]     Checking rusttype v0.9.2
[INFO] [stderr]     Checking dlib v0.4.2
[INFO] [stderr]     Checking lock_api v0.4.2
[INFO] [stderr]    Compiling wayland-scanner v0.28.5
[INFO] [stderr]     Checking lazycell v1.3.0
[INFO] [stderr]    Compiling anyhow v1.0.38
[INFO] [stderr]     Checking percent-encoding v2.1.0
[INFO] [stderr]     Checking core_data_structures v0.1.0 (/opt/rustwide/workdir/crates/core_data_structures)
[INFO] [stderr]    Compiling either v1.6.1
[INFO] [stderr]    Compiling fs_extra v1.2.0
[INFO] [stderr]    Compiling glob v0.3.0
[INFO] [stderr]     Checking core_timing v0.1.0 (/opt/rustwide/workdir/crates/core_timing)
[INFO] [stderr]     Checking core_fs v0.1.0 (/opt/rustwide/workdir/crates/core_fs)
[INFO] [stderr]     Checking core_conversions v0.1.0 (/opt/rustwide/workdir/crates/core_conversions)
[INFO] [stderr]     Checking glow v0.8.1
[INFO] [stderr]     Checking andrew v0.3.1
[INFO] [stderr]     Checking core_time v0.1.0 (/opt/rustwide/workdir/crates/core_time)
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.7
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.5
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking nix v0.20.0
[INFO] [stderr]     Checking net2 v0.2.37
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking parking_lot_core v0.8.3
[INFO] [stderr]     Checking memmap2 v0.1.0
[INFO] [stderr]     Checking parking_lot v0.11.1
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking raw-window-handle v0.3.3
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking rand_core v0.6.2
[INFO] [stderr]     Checking rand_chacha v0.3.0
[INFO] [stderr]     Checking xcursor v0.3.3
[INFO] [stderr]     Checking rand v0.8.3
[INFO] [stderr]    Compiling wayland-client v0.28.5
[INFO] [stderr]    Compiling wayland-protocols v0.28.5
[INFO] [stderr]     Checking mio-extras v2.0.6
[INFO] [stderr]     Checking jpeg-decoder v0.1.22
[INFO] [stderr]     Checking tiff v0.6.1
[INFO] [stderr]     Checking image v0.23.14
[INFO] [stderr]     Checking calloop v0.6.5
[INFO] [stderr]    Compiling rt_cputracer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking wayland-commons v0.28.5
[INFO] [stderr]     Checking core_img v0.1.0 (/opt/rustwide/workdir/crates/core_img)
[INFO] [stderr]     Checking core_renderer v0.1.0 (/opt/rustwide/workdir/crates/core_renderer)
[INFO] [stderr]     Checking core_text v0.1.0 (/opt/rustwide/workdir/crates/core_text)
[INFO] [stderr]     Checking core_simulation v0.1.0 (/opt/rustwide/workdir/crates/core_simulation)
[INFO] [stdout] warning: unused import: `core_fs::load`
[INFO] [stdout]  --> crates/core_text/src/rasterizer.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use core_fs::load;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `borrow::Borrow`
[INFO] [stdout]  --> crates/core_text/src/rasterizer.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{borrow::Borrow, collections::HashMap};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bb`
[INFO] [stdout]   --> crates/core_text/src/rasterizer.rs:89:22
[INFO] [stdout]    |
[INFO] [stdout] 89 |                 Some(bb) => false,
[INFO] [stdout]    |                      ^^ help: if this is intentional, prefix it with an underscore: `_bb`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `font_size` is never read
[INFO] [stdout]   --> crates/core_text/src/rasterizer.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct FontRecord<'a> {
[INFO] [stdout]    |        ---------- field in this struct
[INFO] [stdout] 14 |     font: Font<'a>,
[INFO] [stdout] 15 |     font_size: u32,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> crates/core_text/src/rasterizer.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 39 |             panic!(format!("error constructing a Font from data at {:?}", font));
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 39 -             panic!(format!("error constructing a Font from data at {:?}", font));
[INFO] [stdout] 39 +             panic!("error constructing a Font from data at {:?}", font);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking wayland-cursor v0.28.5
[INFO] [stderr]     Checking wayland-egl v0.28.5
[INFO] [stderr]     Checking smithay-client-toolkit v0.12.3
[INFO] [stderr]     Checking winit v0.24.0
[INFO] [stderr]     Checking glutin v0.26.0
[INFO] [stderr]     Checking core_wingfx v0.1.0 (/opt/rustwide/workdir/crates/core_wingfx)
[INFO] [stdout] warning: unused imports: `Receiver`, `Sender`, and `channel`
[INFO] [stdout]  --> crates/core_wingfx/src/lib.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::mpsc::{channel, Receiver, Sender};
[INFO] [stdout]   |                       ^^^^^^^  ^^^^^^^^  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core_renderer::Renderer`
[INFO] [stdout]  --> crates/core_wingfx/src/glow_gfx/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core_renderer::Renderer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ControlMessage`
[INFO] [stdout]  --> crates/core_wingfx/src/glow_gfx/mod.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use core_simulation::{ControlMessage, Input, Simulation, SimulationExecutor, WindowMsg};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EventLoop`
[INFO] [stdout]  --> crates/core_wingfx/src/glow_gfx/mod.rs:4:39
[INFO] [stdout]   |
[INFO] [stdout] 4 | use glutin::event_loop::{ControlFlow, EventLoop};
[INFO] [stdout]   |                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `glutin::window::WindowBuilder`
[INFO] [stdout]  --> crates/core_wingfx/src/glow_gfx/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use glutin::window::WindowBuilder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContextBuilder` and `ContextWrapper`
[INFO] [stdout]  --> crates/core_wingfx/src/glow_gfx/mod.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use glutin::{ContextBuilder, ContextWrapper};
[INFO] [stdout]   |              ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]   --> crates/core_wingfx/src/glow_gfx/glow_render.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     w: u32,
[INFO] [stdout]    |     ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]   --> crates/core_wingfx/src/glow_gfx/glow_render.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     h: u32,
[INFO] [stdout]    |     ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tex`
[INFO] [stdout]    --> crates/core_wingfx/src/glow_gfx/glow_render.rs:177:18
[INFO] [stdout]     |
[INFO] [stdout] 177 |             Some(tex) => {
[INFO] [stdout]     |                  ^^^ help: if this is intentional, prefix it with an underscore: `_tex`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `texture_id`
[INFO] [stdout]    --> crates/core_wingfx/src/glow_gfx/glow_render.rs:190:32
[INFO] [stdout]     |
[INFO] [stdout] 190 |     fn drop_texture(&mut self, texture_id: &TextureId) {
[INFO] [stdout]     |                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_texture_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_verts`
[INFO] [stdout]    --> crates/core_wingfx/src/glow_gfx/glow_render.rs:397:9
[INFO] [stdout]     |
[INFO] [stdout] 397 |     let num_verts = vertices.len() / vertice_attributes;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_verts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value captured by `shutdown` is never read
[INFO] [stdout]    --> crates/core_wingfx/src/glow_gfx/mod.rs:117:29
[INFO] [stdout]     |
[INFO] [stdout] 117 | ...                   shutdown = true;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: did you mean to capture by reference instead?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `shutdown` is never read
[INFO] [stdout]    --> crates/core_wingfx/src/glow_gfx/mod.rs:117:29
[INFO] [stdout]     |
[INFO] [stdout] 117 | ...                   shutdown = true;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shutdown`
[INFO] [stdout]    --> crates/core_wingfx/src/glow_gfx/mod.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let mut shutdown = false;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shutdown`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UNIFORM_VIEW_EYE` is never used
[INFO] [stdout]   --> crates/core_wingfx/src/glow_gfx/glow_render.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const UNIFORM_VIEW_EYE: &'static str = "u_view_eye";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UNIFORM_VIEW_TARGET` is never used
[INFO] [stdout]   --> crates/core_wingfx/src/glow_gfx/glow_render.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const UNIFORM_VIEW_TARGET: &'static str = "u_view_target";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UNIFORM_VIEW_UP` is never used
[INFO] [stdout]   --> crates/core_wingfx/src/glow_gfx/glow_render.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const UNIFORM_VIEW_UP: &'static str = "u_view_up";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UNIFORM_VIEW_MATRIX` is never used
[INFO] [stdout]   --> crates/core_wingfx/src/glow_gfx/glow_render.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const UNIFORM_VIEW_MATRIX: &'static str = "u_view_matrix";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UNIFORM_VIEW_FOV_DEGREES` is never used
[INFO] [stdout]   --> crates/core_wingfx/src/glow_gfx/glow_render.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const UNIFORM_VIEW_FOV_DEGREES: &'static str = "u_view_fov_degrees";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `texture_id` is never read
[INFO] [stdout]   --> crates/core_wingfx/src/glow_gfx/glow_render.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct Texture {
[INFO] [stdout]    |        ------- field in this struct
[INFO] [stdout] 20 |     texture_id: TextureId,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Texture` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `state_commands` is never read
[INFO] [stdout]    --> crates/core_wingfx/src/glow_gfx/glow_render.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 108 | struct GlowRenderer {
[INFO] [stdout]     |        ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 112 |     state_commands: Queue<RenderCommand>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> crates/core_wingfx/src/glow_gfx/glow_render.rs:66:24
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 panic!(gl.get_shader_info_log(shader));
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 panic!("{}", gl.get_shader_info_log(shader));
[INFO] [stdout]    |                        +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> crates/core_wingfx/src/glow_gfx/glow_render.rs:74:20
[INFO] [stdout]    |
[INFO] [stdout] 74 |             panic!(gl.get_program_info_log(program));
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 74 |             panic!("{}", gl.get_program_info_log(program));
[INFO] [stdout]    |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ray::Ray`
[INFO] [stdout]  --> src/core_raytracer/vec3.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::{ray::Ray, rng};
[INFO] [stdout]   |             ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ray::Ray`
[INFO] [stdout]  --> src/core_raytracer/vec3.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::{ray::Ray, rng};
[INFO] [stdout]   |             ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/core_raytracer/mod.rs:372:13
[INFO] [stdout]     |
[INFO] [stdout] 366 |                   return attenuation * ray_color(&scattered, world, bounces - 1, debug_normals);
[INFO] [stdout]     |                   ----------------------------------------------------------------------------- any code following this expression is unreachable
[INFO] [stdout] ...
[INFO] [stdout] 372 | /             return 0.5
[INFO] [stdout] 373 | |                 * ray_color(
[INFO] [stdout] 374 | |                     &Ray::new(rec.point, target - rec.point),
[INFO] [stdout] 375 | |                     world,
[INFO] [stdout] 376 | |                     bounces - 1,
[INFO] [stdout] 377 | |                     debug_normals,
[INFO] [stdout] 378 | |                 );
[INFO] [stdout]     | |__________________^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rng`
[INFO] [stdout]  --> src/core_raytracer/rng.rs:1:59
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rand::{distributions::Uniform, prelude::Distribution, Rng};
[INFO] [stdout]   |                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/core_raytracer/mod.rs:372:13
[INFO] [stdout]     |
[INFO] [stdout] 366 |                   return attenuation * ray_color(&scattered, world, bounces - 1, debug_normals);
[INFO] [stdout]     |                   ----------------------------------------------------------------------------- any code following this expression is unreachable
[INFO] [stdout] ...
[INFO] [stdout] 372 | /             return 0.5
[INFO] [stdout] 373 | |                 * ray_color(
[INFO] [stdout] 374 | |                     &Ray::new(rec.point, target - rec.point),
[INFO] [stdout] 375 | |                     world,
[INFO] [stdout] 376 | |                     bounces - 1,
[INFO] [stdout] 377 | |                     debug_normals,
[INFO] [stdout] 378 | |                 );
[INFO] [stdout]     | |__________________^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]   --> src/profiling.rs:35:29
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn track(&mut self, target: &'static str, duration: std::time::Duration) {
[INFO] [stdout]    |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `duration`
[INFO] [stdout]   --> src/profiling.rs:35:51
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn track(&mut self, target: &'static str, duration: std::time::Duration) {
[INFO] [stdout]    |                                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rng`
[INFO] [stdout]  --> src/core_raytracer/rng.rs:1:59
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rand::{distributions::Uniform, prelude::Distribution, Rng};
[INFO] [stdout]   |                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]   --> src/profiling.rs:35:29
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn track(&mut self, target: &'static str, duration: std::time::Duration) {
[INFO] [stdout]    |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `duration`
[INFO] [stdout]   --> src/profiling.rs:35:51
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn track(&mut self, target: &'static str, duration: std::time::Duration) {
[INFO] [stdout]    |                                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/core_raytracer/mod.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         for i in 0..100 {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `timer`
[INFO] [stdout]    --> src/core_raytracer/mod.rs:202:17
[INFO] [stdout]     |
[INFO] [stdout] 202 |             let timer = Timer::new();
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_timer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cmd` is never read
[INFO] [stdout]    --> src/core_raytracer/mod.rs:319:21
[INFO] [stdout]     |
[INFO] [stdout] 319 |                     cmd.color = avg_color;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u_offset`
[INFO] [stdout]    --> src/core_raytracer/mod.rs:340:52
[INFO] [stdout]     |
[INFO] [stdout] 340 | fn make_uv(x: u32, y: u32, max_x: u32, max_y: u32, u_offset: f32, v_offset: f32) -> (f32, f32) {
[INFO] [stdout]     |                                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_u_offset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v_offset`
[INFO] [stdout]    --> src/core_raytracer/mod.rs:340:67
[INFO] [stdout]     |
[INFO] [stdout] 340 | fn make_uv(x: u32, y: u32, max_x: u32, max_y: u32, u_offset: f32, v_offset: f32) -> (f32, f32) {
[INFO] [stdout]     |                                                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_v_offset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/core_raytracer/mod.rs:358:17
[INFO] [stdout]     |
[INFO] [stdout] 358 |             let target = rec.point + Vec3::random_in_hemisphere(rec.normal);
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/renderer.rs:163:38
[INFO] [stdout]     |
[INFO] [stdout] 163 |                         let (record, mut image) =
[INFO] [stdout]     |                                      ----^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `character_record`
[INFO] [stdout]    --> src/renderer.rs:158:30
[INFO] [stdout]     |
[INFO] [stdout] 158 |             let (texture_id, character_record) = {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_character_record`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/core_raytracer/mod.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         for i in 0..100 {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut y = 0.1;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `delta_t`
[INFO] [stdout]    --> src/main.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |         delta_t: core_simulation::Duration,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PERF_DUMP_OCCURENCE` is never used
[INFO] [stdout]   --> src/main.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const PERF_DUMP_OCCURENCE: u64 = 100;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Record` is never constructed
[INFO] [stdout]   --> src/profiling.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct Record {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProfilingManager` is never constructed
[INFO] [stdout]   --> src/profiling.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct ProfilingManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `track`, and `flush` are never used
[INFO] [stdout]   --> src/profiling.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl ProfilingManager {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 30 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn track(&mut self, target: &'static str, duration: std::time::Duration) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub fn flush(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Tracker` is never constructed
[INFO] [stdout]   --> src/profiling.rs:94:12
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub struct Tracker {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/profiling.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout]  99 | impl Tracker {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 100 |     pub fn new(target: &'static str) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `aspect_ratio` is never read
[INFO] [stdout]    --> src/core_raytracer/mod.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub struct Raytracer {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] 119 |     // image specs
[INFO] [stdout] 120 |     aspect_ratio: f32,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hit_sphere` is never used
[INFO] [stdout]   --> src/core_raytracer/hittable/sphere.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn hit_sphere(center: &Point3, radius: f32, ray: &Ray) -> f32 {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `reset` is never used
[INFO] [stdout]   --> src/renderer.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | impl Command {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn reset(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clear` is never used
[INFO] [stdout]    --> src/renderer.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl<'a> RtcrRenderer<'a> {
[INFO] [stdout]     | ------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `timer`
[INFO] [stdout]    --> src/core_raytracer/mod.rs:202:17
[INFO] [stdout]     |
[INFO] [stdout] 202 |             let timer = Timer::new();
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_timer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cmd` is never read
[INFO] [stdout]    --> src/core_raytracer/mod.rs:319:21
[INFO] [stdout]     |
[INFO] [stdout] 319 |                     cmd.color = avg_color;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u_offset`
[INFO] [stdout]    --> src/core_raytracer/mod.rs:340:52
[INFO] [stdout]     |
[INFO] [stdout] 340 | fn make_uv(x: u32, y: u32, max_x: u32, max_y: u32, u_offset: f32, v_offset: f32) -> (f32, f32) {
[INFO] [stdout]     |                                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_u_offset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v_offset`
[INFO] [stdout]    --> src/core_raytracer/mod.rs:340:67
[INFO] [stdout]     |
[INFO] [stdout] 340 | fn make_uv(x: u32, y: u32, max_x: u32, max_y: u32, u_offset: f32, v_offset: f32) -> (f32, f32) {
[INFO] [stdout]     |                                                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_v_offset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/core_raytracer/mod.rs:358:17
[INFO] [stdout]     |
[INFO] [stdout] 358 |             let target = rec.point + Vec3::random_in_hemisphere(rec.normal);
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/renderer.rs:163:38
[INFO] [stdout]     |
[INFO] [stdout] 163 |                         let (record, mut image) =
[INFO] [stdout]     |                                      ----^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `character_record`
[INFO] [stdout]    --> src/renderer.rs:158:30
[INFO] [stdout]     |
[INFO] [stdout] 158 |             let (texture_id, character_record) = {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_character_record`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut y = 0.1;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `delta_t`
[INFO] [stdout]    --> src/main.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |         delta_t: core_simulation::Duration,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PERF_DUMP_OCCURENCE` is never used
[INFO] [stdout]   --> src/main.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const PERF_DUMP_OCCURENCE: u64 = 100;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Record` is never constructed
[INFO] [stdout]   --> src/profiling.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct Record {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProfilingManager` is never constructed
[INFO] [stdout]   --> src/profiling.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct ProfilingManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `track`, and `flush` are never used
[INFO] [stdout]   --> src/profiling.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl ProfilingManager {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 30 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn track(&mut self, target: &'static str, duration: std::time::Duration) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub fn flush(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Tracker` is never constructed
[INFO] [stdout]   --> src/profiling.rs:94:12
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub struct Tracker {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/profiling.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout]  99 | impl Tracker {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 100 |     pub fn new(target: &'static str) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `aspect_ratio` is never read
[INFO] [stdout]    --> src/core_raytracer/mod.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub struct Raytracer {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] 119 |     // image specs
[INFO] [stdout] 120 |     aspect_ratio: f32,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hit_sphere` is never used
[INFO] [stdout]   --> src/core_raytracer/hittable/sphere.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn hit_sphere(center: &Point3, radius: f32, ray: &Ray) -> f32 {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `reset` is never used
[INFO] [stdout]   --> src/renderer.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | impl Command {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn reset(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clear` is never used
[INFO] [stdout]    --> src/renderer.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl<'a> RtcrRenderer<'a> {
[INFO] [stdout]     | ------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 57.95s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: fs_extra v1.2.0, nom v6.1.2
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "d300f3d1134584633819868a83c9cea0f1019a36552dbf3e385a73c2b3f1fd12", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d300f3d1134584633819868a83c9cea0f1019a36552dbf3e385a73c2b3f1fd12", kill_on_drop: false }`
[INFO] [stdout] d300f3d1134584633819868a83c9cea0f1019a36552dbf3e385a73c2b3f1fd12
